@wyxos/vibe 3.1.24 → 3.1.26

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/lib/index.js CHANGED
@@ -1,12 +1,12 @@
1
- import { Comment as e, Fragment as t, Text as n, Transition as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createSlots as l, createVNode as u, defineComponent as d, getCurrentScope as f, guardReactiveProps as p, h as m, isVNode as h, mergeProps as g, nextTick as _, normalizeClass as v, normalizeProps as y, normalizeStyle as b, onBeforeUnmount as x, onMounted as S, onScopeDispose as C, openBlock as w, reactive as T, readonly as E, ref as D, renderList as O, renderSlot as k, resolveDynamicComponent as A, toDisplayString as j, toRef as M, unref as N, useAttrs as P, useSlots as F, vShow as I, watch as L, watchEffect as R, withCtx as z, withDirectives as ee, withModifiers as te } from "vue";
1
+ import { Comment as e, Fragment as t, Text as n, Transition as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createSlots as l, createVNode as u, defineComponent as d, getCurrentScope as f, guardReactiveProps as p, h as m, isVNode as h, mergeProps as g, nextTick as _, normalizeClass as v, normalizeProps as y, normalizeStyle as b, onBeforeUnmount as x, onMounted as S, onScopeDispose as C, openBlock as w, reactive as T, readonly as E, ref as D, renderList as O, renderSlot as k, resolveDynamicComponent as A, shallowRef as j, toDisplayString as M, toRef as N, triggerRef as P, unref as F, useAttrs as I, useSlots as L, vShow as R, watch as z, watchEffect as ee, withCtx as B, withDirectives as V, withModifiers as H } from "vue";
2
2
  //#region node_modules/lucide-vue-next/dist/esm/shared/src/utils/hasA11yProp.js
3
- var B = (e) => {
3
+ var U = (e) => {
4
4
  for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
5
5
  return !1;
6
- }, V = (e) => e === "", H = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), U = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), W = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), ne = (e) => {
7
- let t = W(e);
6
+ }, te = (e) => e === "", W = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), G = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), K = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), q = (e) => {
7
+ let t = K(e);
8
8
  return t.charAt(0).toUpperCase() + t.slice(1);
9
- }, G = {
9
+ }, J = {
10
10
  xmlns: "http://www.w3.org/2000/svg",
11
11
  width: 24,
12
12
  height: 24,
@@ -16,27 +16,27 @@ var B = (e) => {
16
16
  "stroke-width": 2,
17
17
  "stroke-linecap": "round",
18
18
  "stroke-linejoin": "round"
19
- }, K = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width": r, strokeWidth: i, "stroke-width": a, size: o = G.width, color: s = G.stroke, ...c }, { slots: l }) => m("svg", {
20
- ...G,
19
+ }, ne = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width": r, strokeWidth: i, "stroke-width": a, size: o = J.width, color: s = J.stroke, ...c }, { slots: l }) => m("svg", {
20
+ ...J,
21
21
  ...c,
22
22
  width: o,
23
23
  height: o,
24
24
  stroke: s,
25
- "stroke-width": V(n) || V(r) || n === !0 || r === !0 ? Number(i || a || G["stroke-width"]) * 24 / Number(o) : i || a || G["stroke-width"],
26
- class: H("lucide", c.class, ...e ? [`lucide-${U(ne(e))}-icon`, `lucide-${U(e)}`] : ["lucide-icon"]),
27
- ...!l.default && !B(c) && { "aria-hidden": "true" }
28
- }, [...t.map((e) => m(...e)), ...l.default ? [l.default()] : []]), q = (e, t) => (n, { slots: r, attrs: i }) => m(K, {
25
+ "stroke-width": te(n) || te(r) || n === !0 || r === !0 ? Number(i || a || J["stroke-width"]) * 24 / Number(o) : i || a || J["stroke-width"],
26
+ class: W("lucide", c.class, ...e ? [`lucide-${G(q(e))}-icon`, `lucide-${G(e)}`] : ["lucide-icon"]),
27
+ ...!l.default && !U(c) && { "aria-hidden": "true" }
28
+ }, [...t.map((e) => m(...e)), ...l.default ? [l.default()] : []]), Y = (e, t) => (n, { slots: r, attrs: i }) => m(ne, {
29
29
  ...i,
30
30
  ...n,
31
31
  iconNode: t,
32
32
  name: e
33
- }, r), J = q("arrow-left", [["path", {
33
+ }, r), X = Y("arrow-left", [["path", {
34
34
  d: "m12 19-7-7 7-7",
35
35
  key: "1l729n"
36
36
  }], ["path", {
37
37
  d: "M19 12H5",
38
38
  key: "x3x0zl"
39
- }]]), Y = q("audio-lines", [
39
+ }]]), re = Y("audio-lines", [
40
40
  ["path", {
41
41
  d: "M2 10v3",
42
42
  key: "1fnikh"
@@ -61,7 +61,7 @@ var B = (e) => {
61
61
  d: "M22 10v3",
62
62
  key: "154ddg"
63
63
  }]
64
- ]), re = q("clapperboard", [
64
+ ]), ie = Y("clapperboard", [
65
65
  ["path", {
66
66
  d: "m12.296 3.464 3.02 3.956",
67
67
  key: "qash78"
@@ -78,13 +78,13 @@ var B = (e) => {
78
78
  d: "m6.18 5.276 3.1 3.899",
79
79
  key: "zjj9t3"
80
80
  }]
81
- ]), ie = q("file", [["path", {
81
+ ]), ae = Y("file", [["path", {
82
82
  d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",
83
83
  key: "1oefj6"
84
84
  }], ["path", {
85
85
  d: "M14 2v5a1 1 0 0 0 1 1h5",
86
86
  key: "wfsgrz"
87
- }]]), ae = q("image-plus", [
87
+ }]]), Z = Y("image-plus", [
88
88
  ["path", {
89
89
  d: "M16 5h6",
90
90
  key: "1vod17"
@@ -107,10 +107,10 @@ var B = (e) => {
107
107
  r: "2",
108
108
  key: "af1f0g"
109
109
  }]
110
- ]), oe = q("loader-circle", [["path", {
110
+ ]), oe = Y("loader-circle", [["path", {
111
111
  d: "M21 12a9 9 0 1 1-6.219-8.56",
112
112
  key: "13zald"
113
- }]]), se = q("pause", [["rect", {
113
+ }]]), se = Y("pause", [["rect", {
114
114
  x: "14",
115
115
  y: "3",
116
116
  width: "5",
@@ -124,10 +124,10 @@ var B = (e) => {
124
124
  height: "18",
125
125
  rx: "1",
126
126
  key: "1wsw3u"
127
- }]]), ce = q("play", [["path", {
127
+ }]]), ce = Y("play", [["path", {
128
128
  d: "M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",
129
129
  key: "10ikf1"
130
- }]]), le = q("triangle-alert", [
130
+ }]]), le = Y("triangle-alert", [
131
131
  ["path", {
132
132
  d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",
133
133
  key: "wmoenq"
@@ -140,13 +140,13 @@ var B = (e) => {
140
140
  d: "M12 17h.01",
141
141
  key: "p32p05"
142
142
  }]
143
- ]), ue = q("volume-1", [["path", {
143
+ ]), ue = Y("volume-1", [["path", {
144
144
  d: "M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",
145
145
  key: "uqj9uw"
146
146
  }], ["path", {
147
147
  d: "M16 9a5 5 0 0 1 0 6",
148
148
  key: "1q6k2b"
149
- }]]), X = q("volume-2", [
149
+ }]]), de = Y("volume-2", [
150
150
  ["path", {
151
151
  d: "M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",
152
152
  key: "uqj9uw"
@@ -159,7 +159,7 @@ var B = (e) => {
159
159
  d: "M19.364 18.364a9 9 0 0 0 0-12.728",
160
160
  key: "ijwkga"
161
161
  }]
162
- ]), de = q("volume-x", [
162
+ ]), fe = Y("volume-x", [
163
163
  ["path", {
164
164
  d: "M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",
165
165
  key: "uqj9uw"
@@ -179,13 +179,13 @@ var B = (e) => {
179
179
  key: "5ykzw1"
180
180
  }]
181
181
  ]);
182
- function fe(e, t = 150) {
183
- return me(e, (e) => `${e.surface}|${e.occurrenceKey}|${e.url}|${e.kind}`, t);
184
- }
185
182
  function pe(e, t = 150) {
186
- return me(e, (e) => `${e.surface}|${e.occurrenceKey}|${e.url}`, t);
183
+ return he(e, (e) => `${e.surface}|${e.occurrenceKey}|${e.url}|${e.kind}`, t);
184
+ }
185
+ function me(e, t = 150) {
186
+ return he(e, (e) => `${e.surface}|${e.occurrenceKey}|${e.url}`, t);
187
187
  }
188
- function me(e, t, n) {
188
+ function he(e, t, n) {
189
189
  let r = [], i = /* @__PURE__ */ new Set(), a = null;
190
190
  function o(e) {
191
191
  let o = t(e);
@@ -209,69 +209,69 @@ function me(e, t, n) {
209
209
  }
210
210
  //#endregion
211
211
  //#region src/components/viewer-core/dom.ts
212
- function he(e) {
212
+ function ge(e) {
213
213
  return e instanceof HTMLElement && [
214
214
  "INPUT",
215
215
  "TEXTAREA",
216
216
  "SELECT"
217
217
  ].includes(e.tagName);
218
218
  }
219
- function ge(e) {
219
+ function Q(e) {
220
220
  return e instanceof HTMLElement && !!e.closest("[data-swipe-lock], input, textarea, select, a");
221
221
  }
222
222
  function _e(e) {
223
223
  return e === "filling" || e === "initializing" || e === "loading" || e === "refreshing";
224
224
  }
225
- function Z(e) {
225
+ function ve(e) {
226
226
  return !e || !Number.isFinite(e) || e < 1 ? 25 : Math.floor(e);
227
227
  }
228
- function ve(e) {
228
+ function ye(e) {
229
229
  return e ?? "__vibe_initial_cursor__";
230
230
  }
231
- function ye(e, t, n) {
231
+ function be(e, t, n) {
232
232
  return Math.min(Math.max(e, t), n);
233
233
  }
234
234
  //#endregion
235
235
  //#region src/components/viewer-core/itemIdentity.ts
236
- var be = "__vibeOccurrenceKey";
237
- function Q(e) {
238
- let t = e[be];
236
+ var xe = "__vibeOccurrenceKey";
237
+ function $(e) {
238
+ let t = e[xe];
239
239
  return typeof t == "string" && t.length > 0 ? t : e.id;
240
240
  }
241
- function xe(e, t, n) {
241
+ function Se(e, t, n) {
242
242
  let r = /* @__PURE__ */ new Map(), i = [], a = n;
243
243
  for (let e of t) {
244
- let t = r.get(e.id), n = Q(e);
244
+ let t = r.get(e.id), n = $(e);
245
245
  t ? t.push(n) : r.set(e.id, [n]);
246
246
  }
247
247
  for (let t of e) {
248
248
  let e = r.get(t.id)?.shift() ?? `vibe-occurrence-${a += 1}`;
249
- i.push(Se(t, e));
249
+ i.push(Ce(t, e));
250
250
  }
251
251
  return {
252
252
  items: i,
253
253
  nextSequence: a
254
254
  };
255
255
  }
256
- function Se(e, t) {
257
- return Q(e) === t ? e : {
256
+ function Ce(e, t) {
257
+ return $(e) === t ? e : {
258
258
  ...e,
259
- [be]: t
259
+ [xe]: t
260
260
  };
261
261
  }
262
262
  //#endregion
263
263
  //#region src/components/viewer-core/removalState.ts
264
- function $() {
264
+ function we() {
265
265
  let e = D(/* @__PURE__ */ new Set()), t = D([]);
266
266
  function n(n) {
267
- let r = Ce(n).filter((t) => !e.value.has(t));
267
+ let r = Te(n).filter((t) => !e.value.has(t));
268
268
  if (!r.length) return { ids: [] };
269
269
  let i = new Set(e.value);
270
270
  for (let e of r) i.add(e);
271
271
  return e.value = i, t.value = [...t.value, r], { ids: r };
272
272
  }
273
273
  function r(t) {
274
- let n = Ce(t).filter((t) => e.value.has(t));
274
+ let n = Te(t).filter((t) => e.value.has(t));
275
275
  if (!n.length) return { ids: [] };
276
276
  let r = new Set(e.value);
277
277
  for (let e of n) r.delete(e);
@@ -302,46 +302,46 @@ function $() {
302
302
  undo: i
303
303
  };
304
304
  }
305
- function Ce(e) {
305
+ function Te(e) {
306
306
  let t = Array.isArray(e) ? e : [e];
307
307
  return Array.from(new Set(t.filter((e) => typeof e == "string" && e.length > 0)));
308
308
  }
309
309
  //#endregion
310
310
  //#region src/components/viewer-core/autoBuckets.ts
311
- function we(e) {
311
+ function Ee(e) {
312
312
  return e.flatMap((e) => e.items);
313
313
  }
314
- function Te(e, t) {
314
+ function De(e, t) {
315
315
  return t.size ? e.filter((e) => !t.has(e.id)) : e;
316
316
  }
317
- function Ee(e, t) {
318
- return Te(e.items, t);
317
+ function Oe(e, t) {
318
+ return De(e.items, t);
319
319
  }
320
- function De(e, t) {
321
- return Ee(e, t).length;
320
+ function ke(e, t) {
321
+ return Oe(e, t).length;
322
322
  }
323
- function Oe(e, t, n) {
323
+ function Ae(e, t, n) {
324
324
  if (n < 0) return null;
325
325
  let r = 0;
326
326
  for (let i of e) {
327
- let e = Ee(i, t), a = r + e.length;
327
+ let e = Oe(i, t), a = r + e.length;
328
328
  if (n < a) return i.cursor;
329
329
  r = a;
330
330
  }
331
331
  return null;
332
332
  }
333
- function ke(e, t, n) {
333
+ function je(e, t, n) {
334
334
  let r = [...e], i = r.findIndex((e) => e.cursor === t);
335
335
  return i >= 0 && r.splice(i, 1, n), r;
336
336
  }
337
- function Ae(e, t, n) {
338
- let r = xe(e, t, n);
337
+ function Me(e, t, n) {
338
+ let r = Se(e, t, n);
339
339
  return {
340
340
  items: r.items,
341
341
  nextSequence: r.nextSequence
342
342
  };
343
343
  }
344
- function je(e, t, n) {
344
+ function Ne(e, t, n) {
345
345
  let r = /* @__PURE__ */ new Map(), i = e.map((e) => ({
346
346
  item: e,
347
347
  matchIndex: null,
@@ -350,7 +350,7 @@ function je(e, t, n) {
350
350
  for (let [e, n] of t.entries()) {
351
351
  let t = r.get(n.id), i = {
352
352
  index: e,
353
- occurrenceKey: Q(n)
353
+ occurrenceKey: $(n)
354
354
  };
355
355
  t ? t.push(i) : r.set(n.id, [i]);
356
356
  }
@@ -360,10 +360,10 @@ function je(e, t, n) {
360
360
  }
361
361
  for (let e of i) {
362
362
  if (e.matchIndex !== null && e.occurrenceKey) {
363
- a.set(e.matchIndex, Me(e.item, e.occurrenceKey));
363
+ a.set(e.matchIndex, Pe(e.item, e.occurrenceKey));
364
364
  continue;
365
365
  }
366
- let t = Me(e.item, `vibe-occurrence-${s += 1}`);
366
+ let t = Pe(e.item, `vibe-occurrence-${s += 1}`);
367
367
  o.push(t);
368
368
  }
369
369
  let c = t.map((e, t) => a.get(t) ?? e);
@@ -373,19 +373,19 @@ function je(e, t, n) {
373
373
  nextSequence: s
374
374
  };
375
375
  }
376
- function Me(e, t) {
377
- return Q(e) === t ? e : {
376
+ function Pe(e, t) {
377
+ return $(e) === t ? e : {
378
378
  ...e,
379
379
  __vibeOccurrenceKey: t
380
380
  };
381
381
  }
382
382
  //#endregion
383
383
  //#region src/components/viewer-core/autoResolveState.ts
384
- function Ne(e) {
384
+ function Fe(e) {
385
385
  return e instanceof DOMException && e.name === "AbortError" || e instanceof Error && (e.name === "AbortError" || e.name === "CanceledError") ? !0 : typeof e == "object" && !!e && "code" in e && e.code === "ERR_CANCELED";
386
386
  }
387
- function Pe(e) {
388
- let t = Ae(e.nextItems, e.previousItems, e.sequence);
387
+ function Ie(e) {
388
+ let t = Me(e.nextItems, e.previousItems, e.sequence);
389
389
  return {
390
390
  bucket: {
391
391
  cursor: e.cursor,
@@ -397,8 +397,8 @@ function Pe(e) {
397
397
  nextSequence: t.nextSequence
398
398
  };
399
399
  }
400
- function Fe(e) {
401
- let t = je(e.nextItems, e.previousItems, e.sequence);
400
+ function Le(e) {
401
+ let t = Ne(e.nextItems, e.previousItems, e.sequence);
402
402
  return {
403
403
  bucket: {
404
404
  cursor: e.cursor,
@@ -411,7 +411,7 @@ function Fe(e) {
411
411
  nextSequence: t.nextSequence
412
412
  };
413
413
  }
414
- function Ie(e, t, n, r) {
414
+ function Re(e, t, n, r) {
415
415
  if (!e.length) return r ? null : {
416
416
  buckets: [],
417
417
  canceled: r,
@@ -421,11 +421,11 @@ function Ie(e, t, n, r) {
421
421
  return {
422
422
  buckets: i,
423
423
  canceled: r,
424
- visibleCount: i.reduce((e, t) => e + De(t, n), 0)
424
+ visibleCount: i.reduce((e, t) => e + ke(t, n), 0)
425
425
  };
426
426
  }
427
- function Le(e) {
428
- let t = Pe({
427
+ function ze(e) {
428
+ let t = Ie({
429
429
  cursor: e.initialState.cursor,
430
430
  nextCursor: e.initialState.nextCursor ?? null,
431
431
  nextCursorExhausted: !1,
@@ -433,30 +433,30 @@ function Le(e) {
433
433
  previousCursor: e.initialState.previousCursor ?? null,
434
434
  previousItems: [],
435
435
  sequence: e.sequence
436
- }), n = Te(t.bucket.items, e.removedIds);
436
+ }), n = De(t.bucket.items, e.removedIds);
437
437
  return {
438
- activeIndex: ye(e.initialState.activeIndex ?? 0, 0, Math.max(0, n.length - 1)),
438
+ activeIndex: be(e.initialState.activeIndex ?? 0, 0, Math.max(0, n.length - 1)),
439
439
  buckets: [t.bucket],
440
440
  nextSequence: t.nextSequence
441
441
  };
442
442
  }
443
- function Re(e, t) {
444
- let n = e[ye(t, 0, Math.max(0, e.length - 1))];
445
- return n ? Q(n) : null;
443
+ function Be(e, t) {
444
+ let n = e[be(t, 0, Math.max(0, e.length - 1))];
445
+ return n ? $(n) : null;
446
446
  }
447
- function ze(e, t, n = null) {
447
+ function Ve(e, t, n = null) {
448
448
  if (!e.length) return 0;
449
- let r = n ? e.findIndex((e) => Q(e) === n) : -1;
450
- return r >= 0 ? r : ye(t, 0, e.length - 1);
449
+ let r = n ? e.findIndex((e) => $(e) === n) : -1;
450
+ return r >= 0 ? r : be(t, 0, e.length - 1);
451
451
  }
452
- function Be(e, t, n) {
453
- return e ? De(e, t) < n : !1;
452
+ function He(e, t, n) {
453
+ return e ? ke(e, t) < n : !1;
454
454
  }
455
455
  //#endregion
456
456
  //#region src/components/viewer-core/autoResolveBucketFactory.ts
457
- function Ve(e) {
457
+ function Ue(e) {
458
458
  return (t) => {
459
- let n = Pe({
459
+ let n = Ie({
460
460
  cursor: t.cursor,
461
461
  nextCursor: t.nextCursor,
462
462
  nextCursorExhausted: t.nextCursorExhausted ?? !1,
@@ -470,26 +470,26 @@ function Ve(e) {
470
470
  }
471
471
  //#endregion
472
472
  //#region src/components/viewer-core/autoResolveCursors.ts
473
- function He(e, t) {
474
- return e.find((e) => De(e, t) > 0) ?? e[0] ?? null;
473
+ function We(e, t) {
474
+ return e.find((e) => ke(e, t) > 0) ?? e[0] ?? null;
475
475
  }
476
- function Ue(e, t) {
476
+ function Ge(e, t) {
477
477
  for (let n = e.length - 1; n >= 0; --n) {
478
478
  let r = e[n];
479
- if (De(r, t) > 0) return r;
479
+ if (ke(r, t) > 0) return r;
480
480
  }
481
481
  return e[e.length - 1] ?? null;
482
482
  }
483
- function We(e) {
483
+ function Ke(e) {
484
484
  return !e?.nextCursor || !e.nextCursorExhausted ? null : e.nextCursor;
485
485
  }
486
- function Ge(e, t, n, r) {
486
+ function qe(e, t, n, r) {
487
487
  return t === void 0 || n === null ? e : e.map((e) => e.cursor !== t || e.nextCursor !== n ? e : {
488
488
  ...e,
489
489
  nextCursorExhausted: r
490
490
  });
491
491
  }
492
- function Ke(e, t, n) {
492
+ function Je(e, t, n) {
493
493
  return n || e !== "forward" || t === null ? {
494
494
  cursor: n,
495
495
  exhausted: !1
@@ -498,7 +498,7 @@ function Ke(e, t, n) {
498
498
  exhausted: !0
499
499
  };
500
500
  }
501
- function qe(e, t) {
501
+ function Ye(e, t) {
502
502
  if (t) return {
503
503
  cursor: t,
504
504
  exhausted: !1
@@ -509,11 +509,11 @@ function qe(e, t) {
509
509
  exhausted: !!n
510
510
  };
511
511
  }
512
- function Je(e, t) {
513
- let n = e.findIndex((e) => De(e, t) > 0);
512
+ function Xe(e, t) {
513
+ let n = e.findIndex((e) => ke(e, t) > 0);
514
514
  if (n < 0) return e;
515
515
  let r = n;
516
- for (let i = e.length - 1; i >= n; --i) if (De(e[i], t) > 0) {
516
+ for (let i = e.length - 1; i >= n; --i) if (ke(e[i], t) > 0) {
517
517
  r = i;
518
518
  break;
519
519
  }
@@ -521,7 +521,7 @@ function Je(e, t) {
521
521
  }
522
522
  //#endregion
523
523
  //#region src/components/viewer-core/autoResolveFillUntil.ts
524
- function Ye(e) {
524
+ function Ze(e) {
525
525
  async function t(t) {
526
526
  if (typeof t == "number") {
527
527
  await i(t);
@@ -536,7 +536,7 @@ function Ye(e) {
536
536
  e.isFillUntilActive.value = !1, e.fillMode.value = "idle";
537
537
  }
538
538
  async function i(t) {
539
- let n = Xe(t);
539
+ let n = Qe(t);
540
540
  n <= 0 || await a("count", () => e.getHasNextPage() && n > 0, () => {
541
541
  --n;
542
542
  }, n);
@@ -562,7 +562,7 @@ function Ye(e) {
562
562
  });
563
563
  let r = e.getResolve();
564
564
  if (!r) return !1;
565
- let i = ve(t);
565
+ let i = ye(t);
566
566
  if (e.inFlightCursors.has(i)) return !1;
567
567
  let a = e.nextOperationId(), s = typeof AbortController > "u" ? null : new AbortController();
568
568
  e.inFlightCursors.add(i), e.setActiveResolveController(s), e.errorMessage.value = null, e.operationPhase.value = "filling", e.fillCollectedCount.value = e.getVisibleItemCount(), e.fillCursor.value = t, e.fillTargetCount.value = null, e.pendingAppendBuckets.value = [], e.isAwaitingAppendCommit.value = !1;
@@ -573,8 +573,8 @@ function Ye(e) {
573
573
  signal: s?.signal
574
574
  });
575
575
  if (!e.getOperationIsCurrent(a)) return e.finishLoadPhase(), !1;
576
- if (u(i.total), !i.items.length) return e.autoBuckets.value = i.nextPage ? Qe(e.autoBuckets.value, n, t, i.nextPage) : Ge(e.autoBuckets.value, n, t, !0), c(), e.finishLoadPhase(), !0;
577
- let o = Ke("forward", t, i.nextPage);
576
+ if (u(i.total), !i.items.length) return e.autoBuckets.value = i.nextPage ? et(e.autoBuckets.value, n, t, i.nextPage) : qe(e.autoBuckets.value, n, t, !0), c(), e.finishLoadPhase(), !0;
577
+ let o = Je("forward", t, i.nextPage);
578
578
  return e.autoBuckets.value = [...e.autoBuckets.value, e.createBucket({
579
579
  cursor: t,
580
580
  nextCursor: o.cursor,
@@ -584,7 +584,7 @@ function Ye(e) {
584
584
  previousItems: []
585
585
  })], c(), e.finishLoadPhase(), !0;
586
586
  } catch (t) {
587
- return Ne(t) || !e.getOperationIsCurrent(a) ? (e.finishLoadPhase(), !1) : (e.errorMessage.value = t instanceof Error ? t.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.fillCollectedCount.value = null, e.fillCursor.value = null, e.fillTargetCount.value = null, !1);
587
+ return Fe(t) || !e.getOperationIsCurrent(a) ? (e.finishLoadPhase(), !1) : (e.errorMessage.value = t instanceof Error ? t.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.fillCollectedCount.value = null, e.fillCursor.value = null, e.fillTargetCount.value = null, !1);
588
588
  } finally {
589
589
  e.clearActiveResolveController(s), e.inFlightCursors.delete(i);
590
590
  }
@@ -598,7 +598,7 @@ function Ye(e) {
598
598
  function l() {
599
599
  if (e.fillMode.value === "count") {
600
600
  let t = e.fillTargetCalls.value;
601
- e.fillProgress.value = t && t > 0 ? Ze(e.fillCompletedCalls.value / t) : null;
601
+ e.fillProgress.value = t && t > 0 ? $e(e.fillCompletedCalls.value / t) : null;
602
602
  return;
603
603
  }
604
604
  if (e.fillMode.value === "end") {
@@ -607,7 +607,7 @@ function Ye(e) {
607
607
  e.fillProgress.value = null;
608
608
  return;
609
609
  }
610
- e.fillProgress.value = t <= 0 ? 1 : Ze(e.fillLoadedCount.value / t);
610
+ e.fillProgress.value = t <= 0 ? 1 : $e(e.fillLoadedCount.value / t);
611
611
  return;
612
612
  }
613
613
  e.fillProgress.value = null;
@@ -621,13 +621,13 @@ function Ye(e) {
621
621
  fillUntilEnd: n
622
622
  };
623
623
  }
624
- function Xe(e) {
624
+ function Qe(e) {
625
625
  return Number.isFinite(e) && e > 0 ? Math.floor(e) : 0;
626
626
  }
627
- function Ze(e) {
627
+ function $e(e) {
628
628
  return Math.min(Math.max(e, 0), 1);
629
629
  }
630
- function Qe(e, t, n, r) {
630
+ function et(e, t, n, r) {
631
631
  return t === void 0 ? e : e.map((e) => e.cursor === t && e.nextCursor === n ? {
632
632
  ...e,
633
633
  nextCursor: r,
@@ -636,11 +636,11 @@ function Qe(e, t, n, r) {
636
636
  }
637
637
  //#endregion
638
638
  //#region src/components/viewer-core/autoResolveLoading.ts
639
- function $e(e) {
639
+ function tt(e) {
640
640
  async function t(t) {
641
641
  let n = e.getResolve(), r = e.getBoundaryBucket(t);
642
642
  if (!n || !r) return null;
643
- let i = ve(r.cursor);
643
+ let i = ye(r.cursor);
644
644
  if (e.inFlightCursors.has(i)) return null;
645
645
  e.inFlightCursors.add(i), e.errorMessage.value = null, e.operationPhase.value = "refreshing", e.clearFillState();
646
646
  let a = e.nextOperationId(), o = typeof AbortController > "u" ? null : new AbortController();
@@ -652,7 +652,7 @@ function $e(e) {
652
652
  signal: o?.signal
653
653
  });
654
654
  if (!e.getOperationIsCurrent(a)) return e.finishLoadPhase(), null;
655
- let s = qe(r, i.nextPage), c = Fe({
655
+ let s = Ye(r, i.nextPage), c = Le({
656
656
  cursor: r.cursor,
657
657
  nextCursor: s.cursor,
658
658
  nextCursorExhausted: s.exhausted,
@@ -663,12 +663,12 @@ function $e(e) {
663
663
  });
664
664
  e.setSequence(c.nextSequence);
665
665
  let l = e.getActiveOccurrenceKey();
666
- return e.autoBuckets.value = ke(e.autoBuckets.value, r.cursor, c.bucket), e.syncActiveIndexAfterVisibilityChange(l), e.finishLoadPhase(), {
666
+ return e.autoBuckets.value = je(e.autoBuckets.value, r.cursor, c.bucket), e.syncActiveIndexAfterVisibilityChange(l), e.finishLoadPhase(), {
667
667
  followCursor: t === "leading" ? i.previousPage ?? null : i.nextPage,
668
668
  itemsInserted: c.insertedCount
669
669
  };
670
670
  } catch (t) {
671
- return Ne(t) || !e.getOperationIsCurrent(a) ? (e.finishLoadPhase(), null) : (e.errorMessage.value = t instanceof Error ? t.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.clearFillState(), null);
671
+ return Fe(t) || !e.getOperationIsCurrent(a) ? (e.finishLoadPhase(), null) : (e.errorMessage.value = t instanceof Error ? t.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.clearFillState(), null);
672
672
  } finally {
673
673
  e.clearActiveResolveController(o), e.inFlightCursors.delete(i);
674
674
  }
@@ -678,9 +678,9 @@ function $e(e) {
678
678
  if (!n) return null;
679
679
  let r = e.nextOperationId(), i = /* @__PURE__ */ new Set(), a = [], o = t.cursor, s = 0;
680
680
  for (e.errorMessage.value = null, e.operationPhase.value = t.phase, e.clearFillState();;) {
681
- if (!e.getOperationIsCurrent(r)) return Ie(a, t.direction, e.removedIds.value, !0);
682
- if (a.length > 0 && e.isManualPageLoadingLocked.value) return Ie(a, t.direction, e.removedIds.value, !1);
683
- let c = ve(o);
681
+ if (!e.getOperationIsCurrent(r)) return Re(a, t.direction, e.removedIds.value, !0);
682
+ if (a.length > 0 && e.isManualPageLoadingLocked.value) return Re(a, t.direction, e.removedIds.value, !1);
683
+ let c = ye(o);
684
684
  if (i.has(c) || e.inFlightCursors.has(c)) break;
685
685
  i.add(c), e.inFlightCursors.add(c);
686
686
  let l = typeof AbortController > "u" ? null : new AbortController();
@@ -691,8 +691,8 @@ function $e(e) {
691
691
  pageSize: e.getPageSize(),
692
692
  signal: l?.signal
693
693
  });
694
- if (!e.getOperationIsCurrent(r)) return Ie(a, t.direction, e.removedIds.value, !0);
695
- let c = Ke(t.direction, o, i.nextPage), u = e.createBucket({
694
+ if (!e.getOperationIsCurrent(r)) return Re(a, t.direction, e.removedIds.value, !0);
695
+ let c = Je(t.direction, o, i.nextPage), u = e.createBucket({
696
696
  cursor: o,
697
697
  nextCursor: c.cursor,
698
698
  nextCursorExhausted: c.exhausted,
@@ -701,18 +701,18 @@ function $e(e) {
701
701
  previousItems: []
702
702
  });
703
703
  a.push(u);
704
- let d = a.reduce((t, n) => t + De(n, e.removedIds.value), 0), f = t.direction === "forward" ? u.nextCursorExhausted ? null : u.nextCursor : u.previousCursor;
705
- if (!t.continueUntilFilled || d >= e.getPageSize() || !f) return e.fillCursor.value = null, Ie(a, t.direction, e.removedIds.value, !1);
706
- if (e.isManualPageLoadingLocked.value) return Ie(a, t.direction, e.removedIds.value, !1);
707
- if (e.operationPhase.value = "filling", e.fillCollectedCount.value = d, e.fillCursor.value = f, e.fillTargetCount.value = e.getPageSize(), s += 1, await e.waitFillDelay(e.getFillDelayMs(s)), !e.getOperationIsCurrent(r)) return Ie(a, t.direction, e.removedIds.value, !0);
704
+ let d = a.reduce((t, n) => t + ke(n, e.removedIds.value), 0), f = t.direction === "forward" ? u.nextCursorExhausted ? null : u.nextCursor : u.previousCursor;
705
+ if (!t.continueUntilFilled || d >= e.getPageSize() || !f) return e.fillCursor.value = null, Re(a, t.direction, e.removedIds.value, !1);
706
+ if (e.isManualPageLoadingLocked.value) return Re(a, t.direction, e.removedIds.value, !1);
707
+ if (e.operationPhase.value = "filling", e.fillCollectedCount.value = d, e.fillCursor.value = f, e.fillTargetCount.value = e.getPageSize(), s += 1, await e.waitFillDelay(e.getFillDelayMs(s)), !e.getOperationIsCurrent(r)) return Re(a, t.direction, e.removedIds.value, !0);
708
708
  o = f;
709
709
  } catch (n) {
710
- return Ne(n) || !e.getOperationIsCurrent(r) ? Ie(a, t.direction, e.removedIds.value, !0) : (e.errorMessage.value = n instanceof Error ? n.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.clearFillState(), null);
710
+ return Fe(n) || !e.getOperationIsCurrent(r) ? Re(a, t.direction, e.removedIds.value, !0) : (e.errorMessage.value = n instanceof Error ? n.message : "The viewer could not load items.", e.operationPhase.value = "failed", e.clearFillState(), null);
711
711
  } finally {
712
712
  e.clearActiveResolveController(l), e.inFlightCursors.delete(c);
713
713
  }
714
714
  }
715
- return Ie(a, t.direction, e.removedIds.value, !1);
715
+ return Re(a, t.direction, e.removedIds.value, !1);
716
716
  }
717
717
  return {
718
718
  collectBuckets: n,
@@ -721,7 +721,7 @@ function $e(e) {
721
721
  }
722
722
  //#endregion
723
723
  //#region src/components/viewer-core/fillProgress.ts
724
- function et(e) {
724
+ function nt(e) {
725
725
  let t = {
726
726
  fillCompletedCalls: D(0),
727
727
  fillLoadedCount: D(0),
@@ -740,7 +740,7 @@ function et(e) {
740
740
  }
741
741
  //#endregion
742
742
  //#region src/components/viewer-core/emptyVisiblePrefetch.ts
743
- function tt(e) {
743
+ function rt(e) {
744
744
  let t = null, n = !1, r = !1;
745
745
  function i() {
746
746
  t = null;
@@ -782,14 +782,14 @@ function tt(e) {
782
782
  }
783
783
  //#endregion
784
784
  //#region src/components/viewer-core/fillDelay.ts
785
- var nt = 2e3, rt = 1e3, it = 100;
786
- function at(e, t = nt, n = rt) {
785
+ var it = 2e3, at = 1e3, ot = 100;
786
+ function st(e, t = it, n = at) {
787
787
  return t + Math.max(0, e - 1) * n;
788
788
  }
789
- function ot(e, t) {
789
+ function ct(e, t) {
790
790
  return !Number.isFinite(e) || e == null || e < 0 ? t : Math.floor(e);
791
791
  }
792
- function st() {
792
+ function lt() {
793
793
  let e = D(null), t = null, n = null, r = null;
794
794
  function i(i = !1) {
795
795
  if (t &&= (clearInterval(t), null), n &&= (clearTimeout(n), null), e.value = null, i && r) {
@@ -807,7 +807,7 @@ function st() {
807
807
  let t = Math.max(0, a - (Date.now() - s));
808
808
  e.value = t, t <= 0 && l();
809
809
  };
810
- t = setInterval(u, it), n = setTimeout(l, a), u();
810
+ t = setInterval(u, ot), n = setTimeout(l, a), u();
811
811
  }));
812
812
  }
813
813
  return {
@@ -818,13 +818,13 @@ function st() {
818
818
  }
819
819
  //#endregion
820
820
  //#region src/components/viewer-core/useAutoResolveSource.ts
821
- function ct(e) {
822
- let t = !!e.initialState?.items.length, n = D([]), r = D(0), a = D([]), o = D(!1), s = D(null), c = D(!t && typeof e.resolve == "function" ? "initializing" : "idle"), l = D(null), u = D(null), d = st(), f = d.remainingMs, p = D(null), m = D(!1), h = D(!0), g = D(!1), _ = D(!1), v = /* @__PURE__ */ new Set(), y = null, b = null, C = 0, w = 0, T = Ve({
821
+ function ut(e) {
822
+ let t = !!e.initialState?.items.length, n = D([]), r = D(0), a = D([]), o = D(!1), s = D(null), c = D(!t && typeof e.resolve == "function" ? "initializing" : "idle"), l = D(null), u = D(null), d = lt(), f = d.remainingMs, p = D(null), m = D(!1), h = D(!0), g = D(!1), _ = D(!1), v = /* @__PURE__ */ new Set(), y = null, b = null, C = 0, w = 0, T = Ue({
823
823
  getSequence: () => w,
824
824
  setSequence: (e) => {
825
825
  w = e;
826
826
  }
827
- }), E = i(() => ot(e.fillDelayMs, nt)), O = i(() => ot(e.fillDelayStepMs, rt)), k = i(() => typeof e.resolve == "function"), A = i(() => Z(e.pageSize)), j = i(() => we(n.value)), M = et(() => j.value.length), N = i(() => Te(j.value, e.removedIds.value)), P = i(() => r.value), F = i(() => _e(c.value) || m.value), I = i(() => He(n.value, e.removedIds.value)), R = i(() => Ue(n.value, e.removedIds.value)), z = i(() => R.value?.nextCursor ?? null), ee = i(() => o.value ? null : I.value?.previousCursor ?? null), te = i(() => !!z.value && R.value?.nextCursorExhausted !== !0), B = i(() => !!ee.value), V = i(() => _.value || g.value), H = i(() => k.value && !!R.value?.items.length), U = i(() => Te(we(a.value), e.removedIds.value)), W = i(() => Oe(n.value, e.removedIds.value, P.value)), ne = i(() => !N.value.length && !F.value && !!s.value), G = Ye({
827
+ }), E = i(() => ct(e.fillDelayMs, it)), O = i(() => ct(e.fillDelayStepMs, at)), k = i(() => typeof e.resolve == "function"), A = i(() => ve(e.pageSize)), j = i(() => Ee(n.value)), M = nt(() => j.value.length), N = i(() => De(j.value, e.removedIds.value)), P = i(() => r.value), F = i(() => _e(c.value) || m.value), I = i(() => We(n.value, e.removedIds.value)), L = i(() => Ge(n.value, e.removedIds.value)), R = i(() => L.value?.nextCursor ?? null), ee = i(() => o.value ? null : I.value?.previousCursor ?? null), B = i(() => !!R.value && L.value?.nextCursorExhausted !== !0), V = i(() => !!ee.value), H = i(() => _.value || g.value), U = i(() => k.value && !!L.value?.items.length), te = i(() => De(Ee(a.value), e.removedIds.value)), W = i(() => Ae(n.value, e.removedIds.value, P.value)), G = i(() => !N.value.length && !F.value && !!s.value), K = Ze({
828
828
  autoBuckets: n,
829
829
  clearActiveResolveController(e) {
830
830
  y === e && (y = null);
@@ -836,17 +836,17 @@ function ct(e) {
836
836
  fillCursor: u,
837
837
  fillTargetCount: p,
838
838
  ...M.refs,
839
- finishLoadPhase: $,
840
- getFillDelayMs: (e) => at(e, E.value, O.value),
841
- getHasNextPage: () => te.value,
839
+ finishLoadPhase: Se,
840
+ getFillDelayMs: (e) => st(e, E.value, O.value),
841
+ getHasNextPage: () => B.value,
842
842
  getIsLoading: () => F.value,
843
843
  getIsManualPageLoadingLocked: () => _.value,
844
844
  getLoadedItemCount: () => j.value.length,
845
- getNextCursor: () => z.value,
845
+ getNextCursor: () => R.value,
846
846
  getOperationIsCurrent: (e) => e === C,
847
847
  getPageSize: () => A.value,
848
848
  getResolve: () => e.resolve,
849
- getTrailingBoundaryBucket: () => R.value,
849
+ getTrailingBoundaryBucket: () => L.value,
850
850
  getVisibleItemCount: () => N.value.length,
851
851
  inFlightCursors: v,
852
852
  isAwaitingAppendCommit: m,
@@ -861,17 +861,17 @@ function ct(e) {
861
861
  b = e;
862
862
  },
863
863
  waitFillDelay: (e) => d.wait(e)
864
- }), K = tt({
865
- canRefreshTrailingBoundary: H,
866
- hasNextPage: te,
867
- isInitialLoading: De,
868
- isPageLoadingLocked: V,
864
+ }), q = rt({
865
+ canRefreshTrailingBoundary: U,
866
+ hasNextPage: B,
867
+ isInitialLoading: Te,
868
+ isPageLoadingLocked: H,
869
869
  items: N,
870
870
  loading: F,
871
871
  prefetchNextPage: Y,
872
872
  removedIds: e.removedIds,
873
- trailingBoundaryBucket: R
874
- }), q = $e({
873
+ trailingBoundaryBucket: L
874
+ }), J = tt({
875
875
  autoBuckets: n,
876
876
  clearActiveResolveController(e) {
877
877
  y === e && (y = null);
@@ -882,10 +882,10 @@ function ct(e) {
882
882
  fillCollectedCount: l,
883
883
  fillCursor: u,
884
884
  fillTargetCount: p,
885
- finishLoadPhase: $,
886
- getActiveOccurrenceKey: pe,
887
- getBoundaryBucket: (e) => e === "leading" ? I.value : R.value,
888
- getFillDelayMs: (e) => at(e, E.value, O.value),
885
+ finishLoadPhase: Se,
886
+ getActiveOccurrenceKey: fe,
887
+ getBoundaryBucket: (e) => e === "leading" ? I.value : L.value,
888
+ getFillDelayMs: (e) => st(e, E.value, O.value),
889
889
  getOperationIsCurrent: (e) => e === C,
890
890
  getPageSize: () => A.value,
891
891
  getResolve: () => e.resolve,
@@ -901,121 +901,121 @@ function ct(e) {
901
901
  setSequence: (e) => {
902
902
  w = e;
903
903
  },
904
- syncActiveIndexAfterVisibilityChange: me,
904
+ syncActiveIndexAfterVisibilityChange: pe,
905
905
  waitFillDelay: (e) => d.wait(e)
906
906
  });
907
- L(() => N.value.length, (e) => {
907
+ z(() => N.value.length, (e) => {
908
908
  if (e === 0) {
909
- r.value = 0, K.schedule();
909
+ r.value = 0, q.schedule();
910
910
  return;
911
911
  }
912
- K.resetRefreshAttempt(), o.value &&= (Ae(), !1), r.value > e - 1 && (r.value = e - 1);
913
- }), L(() => r.value, () => {
914
- h.value && ge();
912
+ q.resetRefreshAttempt(), o.value &&= (ke(), !1), r.value > e - 1 && (r.value = e - 1);
913
+ }), z(() => r.value, () => {
914
+ h.value && he();
915
915
  }), S(() => {
916
- Ee() || e.resolve && J();
916
+ we() || e.resolve && ne();
917
917
  }), x(() => {
918
918
  y?.abort(), y = null, d.clear(!0);
919
919
  });
920
- async function J() {
921
- b = J;
922
- let t = await Se({
920
+ async function ne() {
921
+ b = ne;
922
+ let t = await xe({
923
923
  continueUntilFilled: !0,
924
924
  cursor: e.initialCursor ?? null,
925
925
  direction: "forward",
926
926
  phase: "initializing"
927
927
  });
928
- t && (n.value = t.buckets, r.value = 0, $());
928
+ t && (n.value = t.buckets, r.value = 0, Se());
929
929
  }
930
930
  async function Y() {
931
- if (V.value || F.value) return;
932
- let e = !N.value.length, t = R.value, n = {
931
+ if (H.value || F.value) return;
932
+ let e = !N.value.length, t = L.value, n = {
933
933
  commitImmediately: e,
934
934
  originCursor: t?.cursor ?? null
935
- }, r = We(t);
936
- if (ke("trailing")) {
937
- if (!H.value) return;
938
- let e = await xe("trailing");
939
- e?.followCursor && (e.itemsInserted === 0 || ke("trailing")) && await ve(e.followCursor, n);
935
+ }, r = Ke(t);
936
+ if (Oe("trailing")) {
937
+ if (!U.value) return;
938
+ let e = await ye("trailing");
939
+ e?.followCursor && (e.itemsInserted === 0 || Oe("trailing")) && await ge(e.followCursor, n);
940
940
  return;
941
941
  }
942
942
  if (r) {
943
943
  if (t?.cursor === r) {
944
- let e = await xe("trailing");
945
- e?.followCursor && e.itemsInserted === 0 && await ve(e.followCursor, n);
944
+ let e = await ye("trailing");
945
+ e?.followCursor && e.itemsInserted === 0 && await ge(e.followCursor, n);
946
946
  return;
947
947
  }
948
- await ve(r, n);
948
+ await ge(r, n);
949
949
  return;
950
950
  }
951
- if (!te.value) {
952
- let e = H.value ? await xe("trailing") : null;
953
- e?.followCursor && e.itemsInserted === 0 && await ve(e.followCursor, n);
951
+ if (!B.value) {
952
+ let e = U.value ? await ye("trailing") : null;
953
+ e?.followCursor && e.itemsInserted === 0 && await ge(e.followCursor, n);
954
954
  return;
955
955
  }
956
- await ve(z.value, n);
956
+ await ge(R.value, n);
957
957
  }
958
- async function re() {
959
- if (!(V.value || !B.value || F.value)) {
960
- if (ke("leading")) {
961
- let e = await xe("leading");
962
- e?.itemsInserted === 0 && e.followCursor && await be(e.followCursor);
958
+ async function X() {
959
+ if (!(H.value || !V.value || F.value)) {
960
+ if (Oe("leading")) {
961
+ let e = await ye("leading");
962
+ e?.itemsInserted === 0 && e.followCursor && await Q(e.followCursor);
963
963
  return;
964
964
  }
965
- await be(ee.value);
965
+ await Q(ee.value);
966
966
  }
967
967
  }
968
- async function ie() {
969
- if (ne.value) {
970
- if (n.value = [], r.value = 0, a.value = [], o.value = !1, s.value = null, c.value = k.value ? "initializing" : "idle", Ce(), M.reset(), m.value = !1, v.clear(), y?.abort(), y = null, d.clear(!0), Ee()) {
971
- $();
968
+ async function re() {
969
+ if (G.value) {
970
+ if (n.value = [], r.value = 0, a.value = [], o.value = !1, s.value = null, c.value = k.value ? "initializing" : "idle", Ce(), M.reset(), m.value = !1, v.clear(), y?.abort(), y = null, d.clear(!0), we()) {
971
+ Se();
972
972
  return;
973
973
  }
974
- await J();
974
+ await ne();
975
975
  }
976
976
  }
977
- async function ae() {
978
- if (ne.value) return ie();
979
- V.value || c.value !== "failed" || !b || (s.value = null, await b());
977
+ async function ie() {
978
+ if (G.value) return re();
979
+ H.value || c.value !== "failed" || !b || (s.value = null, await b());
980
980
  }
981
- async function oe() {
982
- if (!a.value.length) return m.value = !1, $();
983
- n.value = [...n.value, ...a.value], a.value = [], m.value = !1, $();
981
+ async function ae() {
982
+ if (!a.value.length) return m.value = !1, Se();
983
+ n.value = [...n.value, ...a.value], a.value = [], m.value = !1, Se();
984
984
  }
985
- function se(t) {
985
+ function Z(t) {
986
986
  let n = N.value;
987
987
  if (!n.length) return;
988
- let i = ye(t, 0, n.length - 1);
988
+ let i = be(t, 0, n.length - 1);
989
989
  i !== r.value && (r.value = i, e.emit("update:activeIndex", i));
990
990
  }
991
- function ce(e) {
992
- h.value = e, K.schedule();
991
+ function oe(e) {
992
+ h.value = e, q.schedule();
993
993
  }
994
- function le() {
994
+ function se() {
995
995
  _.value = !0, d.clear(!0);
996
996
  }
997
- function ue() {
998
- _.value = !1, K.schedule();
997
+ function ce() {
998
+ _.value = !1, q.schedule();
999
999
  }
1000
- function X() {
1001
- fe(), s.value = null, Ce(), G.cancel(), a.value.length > 0 && (n.value = [...n.value, ...a.value], a.value = []), m.value = !1, o.value = !1, $();
1000
+ function le() {
1001
+ de(), s.value = null, Ce(), K.cancel(), a.value.length > 0 && (n.value = [...n.value, ...a.value], a.value = []), m.value = !1, o.value = !1, Se();
1002
1002
  }
1003
- function de() {
1004
- g.value && (fe(), Ce(), G.cancel(), m.value = !1, $());
1003
+ function ue() {
1004
+ g.value && (de(), Ce(), K.cancel(), m.value = !1, Se());
1005
1005
  }
1006
- function fe() {
1006
+ function de() {
1007
1007
  C += 1, y?.abort(), y = null, d.clear(!0), v.clear();
1008
1008
  }
1009
- function pe() {
1010
- return Re(N.value, P.value);
1009
+ function fe() {
1010
+ return Be(N.value, P.value);
1011
1011
  }
1012
- function me(e = null, t = {}) {
1012
+ function pe(e = null, t = {}) {
1013
1013
  if (N.value.length === 0) {
1014
1014
  r.value = 0, !t.preserveTrailingPlaceholder && n.value.length > 0 && (o.value = !0);
1015
1015
  return;
1016
1016
  }
1017
1017
  if (e) {
1018
- let t = N.value.findIndex((t) => Q(t) === e);
1018
+ let t = N.value.findIndex((t) => $(t) === e);
1019
1019
  if (t >= 0) {
1020
1020
  r.value = t;
1021
1021
  return;
@@ -1025,90 +1025,90 @@ function ct(e) {
1025
1025
  r.value = N.value.length;
1026
1026
  return;
1027
1027
  }
1028
- r.value = ze(N.value, P.value, e);
1028
+ r.value = Ve(N.value, P.value, e);
1029
1029
  }
1030
- function he() {
1031
- a.value.length > 0 && (!U.value.length || !N.value.length) && oe();
1030
+ function me() {
1031
+ a.value.length > 0 && (!te.value.length || !N.value.length) && ae();
1032
1032
  }
1033
- async function ge() {
1034
- if (!(!h.value || De())) {
1033
+ async function he() {
1034
+ if (!(!h.value || Te())) {
1035
1035
  if (!N.value.length) {
1036
- (te.value || H.value) && await Y();
1036
+ (B.value || U.value) && await Y();
1037
1037
  return;
1038
1038
  }
1039
- B.value && r.value < 3 && await re(), te.value && r.value >= N.value.length - 3 && await Y();
1039
+ V.value && r.value < 3 && await X(), B.value && r.value >= N.value.length - 3 && await Y();
1040
1040
  }
1041
1041
  }
1042
- async function ve(e, t = {}) {
1042
+ async function ge(e, t = {}) {
1043
1043
  b = async () => {
1044
- await ve(e, t);
1044
+ await ge(e, t);
1045
1045
  };
1046
- let r = await Se({
1046
+ let r = await xe({
1047
1047
  continueUntilFilled: !0,
1048
1048
  cursor: e,
1049
1049
  direction: "forward",
1050
1050
  phase: "loading"
1051
1051
  });
1052
1052
  if (r) {
1053
- if (!r.visibleCount) return n.value = Ge(n.value, t.originCursor, e, !0), a.value = [], m.value = !1, $();
1054
- if (r.canceled) return n.value = [...n.value, ...r.buckets], a.value = [], m.value = !1, $();
1055
- if (a.value = r.buckets, t.commitImmediately || !N.value.length || !U.value.length) return n.value = [...n.value, ...a.value], a.value = [], m.value = !1, $();
1053
+ if (!r.visibleCount) return n.value = qe(n.value, t.originCursor, e, !0), a.value = [], m.value = !1, Se();
1054
+ if (r.canceled) return n.value = [...n.value, ...r.buckets], a.value = [], m.value = !1, Se();
1055
+ if (a.value = r.buckets, t.commitImmediately || !N.value.length || !te.value.length) return n.value = [...n.value, ...a.value], a.value = [], m.value = !1, Se();
1056
1056
  m.value = !0;
1057
1057
  }
1058
1058
  }
1059
- async function be(e) {
1059
+ async function Q(e) {
1060
1060
  b = async () => {
1061
- await be(e);
1061
+ await Q(e);
1062
1062
  };
1063
- let t = await Se({
1063
+ let t = await xe({
1064
1064
  continueUntilFilled: !0,
1065
1065
  cursor: e,
1066
1066
  direction: "backward",
1067
1067
  phase: "loading"
1068
1068
  });
1069
1069
  if (!t) return;
1070
- let r = pe();
1071
- n.value = [...t.buckets, ...n.value], me(r), $();
1070
+ let r = fe();
1071
+ n.value = [...t.buckets, ...n.value], pe(r), Se();
1072
1072
  }
1073
- async function xe(e) {
1073
+ async function ye(e) {
1074
1074
  return b = async () => {
1075
- await xe(e);
1076
- }, q.reloadBoundaryBucket(e);
1075
+ await ye(e);
1076
+ }, J.reloadBoundaryBucket(e);
1077
1077
  }
1078
- function Se(e) {
1079
- return q.collectBuckets(e);
1078
+ function xe(e) {
1079
+ return J.collectBuckets(e);
1080
1080
  }
1081
- function $() {
1082
- c.value = "idle", Ce(), d.clear(), K.schedule();
1081
+ function Se() {
1082
+ c.value = "idle", Ce(), d.clear(), q.schedule();
1083
1083
  }
1084
1084
  function Ce() {
1085
1085
  l.value = null, u.value = null, p.value = null;
1086
1086
  }
1087
- function Ee() {
1087
+ function we() {
1088
1088
  if (!e.initialState || !e.initialState.items.length) return !1;
1089
- let t = Le({
1089
+ let t = ze({
1090
1090
  initialState: e.initialState,
1091
1091
  removedIds: e.removedIds.value,
1092
1092
  sequence: w
1093
1093
  });
1094
1094
  return n.value = t.buckets, r.value = t.activeIndex, w = t.nextSequence, o.value = !1, s.value = null, a.value = [], m.value = !1, !0;
1095
1095
  }
1096
- function De() {
1096
+ function Te() {
1097
1097
  return c.value === "initializing";
1098
1098
  }
1099
- function ke(t) {
1100
- return Be(t === "leading" ? I.value : R.value, e.removedIds.value, A.value);
1099
+ function Oe(t) {
1100
+ return He(t === "leading" ? I.value : L.value, e.removedIds.value, A.value);
1101
1101
  }
1102
- function Ae() {
1103
- n.value = Je(n.value, e.removedIds.value);
1102
+ function ke() {
1103
+ n.value = Xe(n.value, e.removedIds.value);
1104
1104
  }
1105
1105
  return {
1106
1106
  activeIndex: P,
1107
- canRetryInitialLoad: ne,
1108
- cancel: X,
1109
- cancelFill: de,
1110
- canRefreshTrailingBoundary: H,
1111
- commitPendingAppend: oe,
1107
+ canRetryInitialLoad: G,
1108
+ cancel: le,
1109
+ cancelFill: ue,
1110
+ canRefreshTrailingBoundary: U,
1111
+ commitPendingAppend: ae,
1112
1112
  currentCursor: W,
1113
1113
  errorMessage: s,
1114
1114
  fillCollectedCount: l,
@@ -1116,36 +1116,36 @@ function ct(e) {
1116
1116
  fillDelayRemainingMs: f,
1117
1117
  fillTargetCount: p,
1118
1118
  ...M.refs,
1119
- fillUntil: G.fillUntil,
1120
- fillUntilEnd: G.fillUntilEnd,
1121
- hasNextPage: te,
1122
- hasPreviousPage: B,
1119
+ fillUntil: K.fillUntil,
1120
+ fillUntilEnd: K.fillUntilEnd,
1121
+ hasNextPage: B,
1122
+ hasPreviousPage: V,
1123
1123
  isAutoPrefetchEnabled: h,
1124
- isPageLoadingLocked: V,
1124
+ isPageLoadingLocked: H,
1125
1125
  items: N,
1126
- lockPageLoading: le,
1126
+ lockPageLoading: se,
1127
1127
  loading: F,
1128
- maybePrefetchAround: ge,
1129
- nextCursor: z,
1130
- pendingAppendItems: U,
1128
+ maybePrefetchAround: he,
1129
+ nextCursor: R,
1130
+ pendingAppendItems: te,
1131
1131
  phase: c,
1132
1132
  prefetchNextPage: Y,
1133
- prefetchPreviousPage: re,
1133
+ prefetchPreviousPage: X,
1134
1134
  previousCursor: ee,
1135
- retryInitialLoad: ie,
1136
- retry: ae,
1137
- setActiveIndex: se,
1138
- setAutoPrefetchEnabled: ce,
1139
- syncActiveIndexAfterVisibilityChange: me,
1140
- unlockPageLoading: ue,
1141
- getActiveOccurrenceKey: pe,
1142
- maybeCommitPendingAppendWhenFilteredOut: he
1135
+ retryInitialLoad: re,
1136
+ retry: ie,
1137
+ setActiveIndex: Z,
1138
+ setAutoPrefetchEnabled: oe,
1139
+ syncActiveIndexAfterVisibilityChange: pe,
1140
+ unlockPageLoading: ce,
1141
+ getActiveOccurrenceKey: fe,
1142
+ maybeCommitPendingAppendWhenFilteredOut: me
1143
1143
  };
1144
1144
  }
1145
1145
  //#endregion
1146
1146
  //#region src/components/viewer-core/useDataSource.ts
1147
- function lt(e, t) {
1148
- let { clearRemoved: n, getRemovedIds: r, remove: a, removedIds: o, restore: s, undo: c } = $(), l = ct({
1147
+ function dt(e, t) {
1148
+ let { clearRemoved: n, getRemovedIds: r, remove: a, removedIds: o, restore: s, undo: c } = we(), l = ut({
1149
1149
  emit: t,
1150
1150
  fillDelayMs: e.fillDelayMs,
1151
1151
  fillDelayStepMs: e.fillDelayStepMs,
@@ -1182,7 +1182,7 @@ function lt(e, t) {
1182
1182
  return [...u.value];
1183
1183
  }
1184
1184
  function E(e) {
1185
- return u.value.find((t) => Q(t) === e) ?? null;
1185
+ return u.value.find((t) => $(t) === e) ?? null;
1186
1186
  }
1187
1187
  function D(e, t, n) {
1188
1188
  return Math.min(Math.max(e, t), n);
@@ -1252,9 +1252,9 @@ function lt(e, t) {
1252
1252
  }
1253
1253
  //#endregion
1254
1254
  //#region src/components/viewer-core/useController.ts
1255
- var ut = 1024;
1256
- function dt(e, t) {
1257
- let n = lt(e, t), r = T({
1255
+ var ft = 1024;
1256
+ function pt(e, t) {
1257
+ let n = dt(e, t), r = T({
1258
1258
  nextBoundaryLoadProgress: 0,
1259
1259
  previousBoundaryLoadProgress: 0
1260
1260
  }), a = D(0), o = D("list"), s = T({
@@ -1284,23 +1284,23 @@ function dt(e, t) {
1284
1284
  removedCount: 0,
1285
1285
  removedIds: [],
1286
1286
  surfaceMode: "list"
1287
- }), c = i(() => a.value >= ut), l = i(() => c.value ? o.value : "fullscreen"), u = i(() => c.value && l.value === "fullscreen");
1288
- L(c, (e) => {
1287
+ }), c = i(() => a.value >= ft), l = i(() => c.value ? o.value : "fullscreen"), u = i(() => c.value && l.value === "fullscreen");
1288
+ z(c, (e) => {
1289
1289
  e && h();
1290
- }), L(() => e.surfaceMode, () => {
1290
+ }), z(() => e.surfaceMode, () => {
1291
1291
  h();
1292
- }), L([l, () => n.pendingAppendItems.value.length], ([e, t]) => {
1292
+ }), z([l, () => n.pendingAppendItems.value.length], ([e, t]) => {
1293
1293
  e === "list" || t <= 0 || n.commitPendingAppend();
1294
- }), L([
1294
+ }), z([
1295
1295
  () => n.items.value.length,
1296
1296
  () => n.loading.value,
1297
1297
  () => n.hasNextPage.value,
1298
1298
  () => n.pendingAppendItems.value.length
1299
1299
  ], ([e, n, r, i]) => {
1300
1300
  !c.value || e > 0 || o.value === "list" || n || r || i > 0 || (o.value = "list", t("update:surfaceMode", "list"));
1301
- }), L(l, (e) => {
1301
+ }), z(l, (e) => {
1302
1302
  n.setAutoPrefetchEnabled(e === "fullscreen");
1303
- }, { immediate: !0 }), R(() => {
1303
+ }, { immediate: !0 }), ee(() => {
1304
1304
  s.activeIndex = n.activeIndex.value, s.currentCursor = n.currentCursor.value, s.errorMessage = n.errorMessage.value, s.fillCollectedCount = n.fillCollectedCount.value, s.fillCompletedCalls = n.fillCompletedCalls.value, s.fillCursor = n.fillCursor.value, s.fillDelayRemainingMs = n.fillDelayRemainingMs.value, s.fillLoadedCount = n.fillLoadedCount.value, s.fillMode = n.fillMode.value, s.fillProgress = n.fillProgress.value, s.fillTargetCalls = n.fillTargetCalls.value, s.fillTargetCount = n.fillTargetCount.value, s.fillTotalCount = n.fillTotalCount.value, s.hasNextPage = n.hasNextPage.value, s.hasPreviousPage = n.hasPreviousPage.value, s.itemCount = n.items.value.length, s.loadState = n.loading.value ? "loading" : n.errorMessage.value ? "failed" : "loaded", s.nextBoundaryLoadProgress = r.nextBoundaryLoadProgress, s.nextCursor = n.nextCursor.value, s.pageLoadingLocked = n.isPageLoadingLocked.value, s.phase = n.phase.value, s.previousBoundaryLoadProgress = r.previousBoundaryLoadProgress, s.previousCursor = n.previousCursor.value, s.removedCount = n.removedCount.value, s.removedIds = n.getRemovedIds(), s.surfaceMode = l.value;
1305
1305
  }), S(() => {
1306
1306
  m(), h(), window.addEventListener("keydown", p), window.addEventListener("resize", m);
@@ -1314,7 +1314,7 @@ function dt(e, t) {
1314
1314
  !c.value || o.value === "list" || (o.value = "list", t("update:surfaceMode", "list"));
1315
1315
  }
1316
1316
  function p(e) {
1317
- e.defaultPrevented || e.key !== "Escape" || !c.value || l.value !== "fullscreen" || he(e.target) || (e.preventDefault(), f());
1317
+ e.defaultPrevented || e.key !== "Escape" || !c.value || l.value !== "fullscreen" || ge(e.target) || (e.preventDefault(), f());
1318
1318
  }
1319
1319
  function m() {
1320
1320
  a.value = window.innerWidth || 0;
@@ -1323,7 +1323,7 @@ function dt(e, t) {
1323
1323
  !c.value || !e.surfaceMode || e.surfaceMode === o.value || (o.value = e.surfaceMode);
1324
1324
  }
1325
1325
  function g(e) {
1326
- r.nextBoundaryLoadProgress = ft(e.nextBoundaryLoadProgress), r.previousBoundaryLoadProgress = ft(e.previousBoundaryLoadProgress);
1326
+ r.nextBoundaryLoadProgress = mt(e.nextBoundaryLoadProgress), r.previousBoundaryLoadProgress = mt(e.previousBoundaryLoadProgress);
1327
1327
  }
1328
1328
  return {
1329
1329
  ...n,
@@ -1342,26 +1342,26 @@ function dt(e, t) {
1342
1342
  unlockPageLoading: n.unlockPageLoading
1343
1343
  };
1344
1344
  }
1345
- function ft(e) {
1345
+ function mt(e) {
1346
1346
  return Math.min(Math.max(e, 0), 1);
1347
1347
  }
1348
1348
  //#endregion
1349
1349
  //#region src/components/FullscreenMediaBar.vue?vue&type=script&setup=true&lang.ts
1350
- var pt = {
1350
+ var ht = {
1351
1351
  "data-testid": "vibe-media-bar",
1352
1352
  class: "absolute inset-x-0 bottom-0 z-[5] bg-[linear-gradient(180deg,transparent,rgba(0,0,0,0.42)_24%,rgba(0,0,0,0.78))] px-[clamp(1rem,2.6vw,2.25rem)] pt-4 pb-[1.15rem]"
1353
- }, mt = { class: "grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-3 border-t border-white/12 bg-black/70 px-4 py-3 backdrop-blur-[18px]" }, ht = { class: "text-[0.76rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74" }, gt = { class: "relative h-4 w-full" }, _t = [
1353
+ }, gt = { class: "grid grid-cols-[auto_minmax(0,1fr)_auto_auto] items-center gap-3 border-t border-white/12 bg-black/70 px-4 py-3 backdrop-blur-[18px]" }, _t = { class: "text-[0.76rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74" }, vt = { class: "relative h-4 w-full" }, yt = [
1354
1354
  "max",
1355
1355
  "value",
1356
1356
  "disabled"
1357
- ], vt = { class: "text-[0.76rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74" }, yt = ["data-layout"], bt = {
1357
+ ], bt = { class: "text-[0.76rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74" }, xt = ["data-layout"], St = {
1358
1358
  key: 0,
1359
1359
  "data-testid": "vibe-media-volume-popover",
1360
1360
  class: "absolute bottom-[calc(100%+0.8rem)] right-0 grid justify-items-center gap-3 border border-white/12 bg-black/82 px-3 py-4 shadow-[0_20px_50px_-20px_rgba(0,0,0,0.85)] backdrop-blur-[18px]"
1361
- }, xt = { class: "relative flex h-28 w-4 items-center justify-center" }, St = ["value"], Ct = { class: "flex items-center gap-3" }, wt = ["aria-label"], Tt = {
1361
+ }, Ct = { class: "relative flex h-28 w-4 items-center justify-center" }, wt = ["value"], Tt = { class: "flex items-center gap-3" }, Et = ["aria-label"], Dt = {
1362
1362
  key: 0,
1363
1363
  class: "relative h-4 w-24"
1364
- }, Et = ["value"], Dt = /* @__PURE__ */ d({
1364
+ }, Ot = ["value"], kt = /* @__PURE__ */ d({
1365
1365
  __name: "FullscreenMediaBar",
1366
1366
  props: {
1367
1367
  currentTime: {},
@@ -1379,8 +1379,8 @@ var pt = {
1379
1379
  "volume-toggle"
1380
1380
  ],
1381
1381
  setup(e, { emit: t }) {
1382
- let n = e, r = t, l = D(null), u = D(!1), d = i(() => n.volumeControlLayout === "vertical"), f = i(() => C(n.volume, 0, 1)), p = i(() => Math.round(f.value * 100)), m = i(() => n.muted || f.value <= 0 ? de : f.value < .5 ? ue : X), h = i(() => n.muted || f.value <= 0 ? "Unmute active media" : "Mute active media"), g = i(() => d.value && !u.value ? "Show volume controls" : h.value), _ = i(() => n.volumeControlLayout === "vertical" ? { height: `${p.value}%` } : { width: `${p.value}%` });
1383
- L(d, (e) => {
1382
+ let n = e, r = t, l = D(null), u = D(!1), d = i(() => n.volumeControlLayout === "vertical"), f = i(() => C(n.volume, 0, 1)), p = i(() => Math.round(f.value * 100)), m = i(() => n.muted || f.value <= 0 ? fe : f.value < .5 ? ue : de), h = i(() => n.muted || f.value <= 0 ? "Unmute active media" : "Mute active media"), g = i(() => d.value && !u.value ? "Show volume controls" : h.value), _ = i(() => n.volumeControlLayout === "vertical" ? { height: `${p.value}%` } : { width: `${p.value}%` });
1383
+ z(d, (e) => {
1384
1384
  e || (u.value = !1);
1385
1385
  }), S(() => {
1386
1386
  document.addEventListener("pointerdown", v);
@@ -1404,9 +1404,9 @@ var pt = {
1404
1404
  function C(e, t, n) {
1405
1405
  return Math.min(Math.max(e, t), n);
1406
1406
  }
1407
- return (e, t) => (w(), s("div", pt, [c("div", mt, [
1408
- c("span", ht, j(n.currentTimeLabel), 1),
1409
- c("div", gt, [
1407
+ return (e, t) => (w(), s("div", ht, [c("div", gt, [
1408
+ c("span", _t, M(n.currentTimeLabel), 1),
1409
+ c("div", vt, [
1410
1410
  t[3] ||= c("div", { class: "absolute inset-x-0 top-1/2 h-px -translate-y-1/2 bg-white/12" }, null, -1),
1411
1411
  c("div", {
1412
1412
  class: "absolute left-0 top-1/2 h-px -translate-y-1/2 bg-[#f7f1ea]",
@@ -1423,16 +1423,16 @@ var pt = {
1423
1423
  disabled: n.duration <= 0,
1424
1424
  class: "vibe-media-slider absolute inset-0 z-10 h-4 w-full cursor-pointer bg-transparent disabled:cursor-default disabled:opacity-50",
1425
1425
  onInput: t[0] ||= (e) => r("seek-input", e)
1426
- }, null, 40, _t)
1426
+ }, null, 40, yt)
1427
1427
  ]),
1428
- c("span", vt, j(n.durationLabel), 1),
1428
+ c("span", bt, M(n.durationLabel), 1),
1429
1429
  c("div", {
1430
1430
  ref_key: "rootRef",
1431
1431
  ref: l,
1432
1432
  "data-testid": "vibe-media-volume",
1433
1433
  "data-layout": n.volumeControlLayout,
1434
1434
  class: "relative flex items-center justify-end"
1435
- }, [d.value && u.value ? (w(), s("div", bt, [c("div", xt, [
1435
+ }, [d.value && u.value ? (w(), s("div", St, [c("div", Ct, [
1436
1436
  t[4] ||= c("div", { class: "absolute bottom-0 left-1/2 h-full w-px -translate-x-1/2 bg-white/12" }, null, -1),
1437
1437
  c("div", {
1438
1438
  class: "absolute bottom-0 left-1/2 w-px -translate-x-1/2 bg-[#f7f1ea]",
@@ -1449,8 +1449,8 @@ var pt = {
1449
1449
  value: f.value,
1450
1450
  class: "vibe-media-slider absolute left-1/2 top-1/2 h-4 w-28 -translate-x-1/2 -translate-y-1/2 -rotate-90 bg-transparent",
1451
1451
  onInput: t[1] ||= (e) => r("volume-input", e)
1452
- }, null, 40, St)
1453
- ])])) : o("", !0), c("div", Ct, [c("button", {
1452
+ }, null, 40, wt)
1453
+ ])])) : o("", !0), c("div", Tt, [c("button", {
1454
1454
  type: "button",
1455
1455
  "data-testid": "vibe-media-volume-button",
1456
1456
  "aria-label": g.value,
@@ -1459,7 +1459,7 @@ var pt = {
1459
1459
  }, [(w(), a(A(m.value), {
1460
1460
  class: "h-4 w-4 stroke-[1.9]",
1461
1461
  "aria-hidden": "true"
1462
- }))], 8, wt), n.volumeControlLayout === "horizontal" ? (w(), s("div", Tt, [
1462
+ }))], 8, Et), n.volumeControlLayout === "horizontal" ? (w(), s("div", Dt, [
1463
1463
  t[5] ||= c("div", { class: "absolute inset-x-0 top-1/2 h-px -translate-y-1/2 bg-white/12" }, null, -1),
1464
1464
  c("div", {
1465
1465
  class: "absolute left-0 top-1/2 h-px -translate-y-1/2 bg-[#f7f1ea]",
@@ -1476,24 +1476,24 @@ var pt = {
1476
1476
  value: f.value,
1477
1477
  class: "vibe-media-slider absolute inset-0 z-10 h-4 w-full cursor-pointer bg-transparent",
1478
1478
  onInput: t[2] ||= (e) => r("volume-input", e)
1479
- }, null, 40, Et)
1480
- ])) : o("", !0)])], 8, yt)
1479
+ }, null, 40, Ot)
1480
+ ])) : o("", !0)])], 8, xt)
1481
1481
  ])]));
1482
1482
  }
1483
- }), Ot = { class: "pointer-events-none absolute inset-0 z-[3] flex flex-col justify-between p-[clamp(1.25rem,2.6vw,2.25rem)]" }, kt = { class: "grid gap-4" }, At = { class: "flex min-h-11 items-center justify-between gap-4" }, jt = { class: "min-w-0 flex flex-1 items-center gap-3" }, Mt = {
1483
+ }), At = { class: "pointer-events-none absolute inset-0 z-[3] flex flex-col justify-between p-[clamp(1.25rem,2.6vw,2.25rem)]" }, jt = { class: "grid gap-4" }, Mt = { class: "flex min-h-11 items-center justify-between gap-4" }, Nt = { class: "min-w-0 flex flex-1 items-center gap-3" }, Pt = {
1484
1484
  key: 1,
1485
1485
  "data-testid": "vibe-title",
1486
1486
  class: "m-0 truncate text-left text-[0.82rem] leading-none tracking-[-0.04em] min-[721px]:text-[1.2rem]"
1487
- }, Nt = { class: "pointer-events-auto flex shrink-0 items-center gap-2" }, Pt = {
1487
+ }, Ft = { class: "pointer-events-auto flex shrink-0 items-center gap-2" }, It = {
1488
1488
  "data-testid": "vibe-pagination",
1489
1489
  class: "inline-flex shrink-0 items-center gap-2 whitespace-nowrap border border-white/14 bg-black/40 px-3 py-2 text-[0.63rem] font-bold uppercase tracking-[0.12em] text-[#f7f1ea]/72 backdrop-blur-[18px] min-[721px]:gap-3 min-[721px]:px-4 min-[721px]:py-3 min-[721px]:text-[0.74rem] min-[721px]:tracking-[0.2em]"
1490
- }, Ft = { class: "whitespace-nowrap" }, It = {
1490
+ }, Lt = { class: "whitespace-nowrap" }, Rt = {
1491
1491
  key: 1,
1492
1492
  class: "whitespace-nowrap border-l border-white/12 pl-2 text-[#f7f1ea]/56 min-[721px]:pl-3"
1493
- }, Lt = {
1493
+ }, zt = {
1494
1494
  key: 0,
1495
1495
  class: "grid gap-2 max-[720px]:justify-items-start"
1496
- }, Rt = /* @__PURE__ */ d({
1496
+ }, Bt = /* @__PURE__ */ d({
1497
1497
  __name: "FullscreenHeader",
1498
1498
  props: {
1499
1499
  currentIndex: {},
@@ -1507,47 +1507,47 @@ var pt = {
1507
1507
  emits: ["back-to-list"],
1508
1508
  setup(e, { emit: t }) {
1509
1509
  let n = e, r = t;
1510
- return (e, t) => (w(), s("div", Ot, [c("div", kt, [c("div", At, [c("div", jt, [n.showBackToList ? (w(), s("button", {
1510
+ return (e, t) => (w(), s("div", At, [c("div", jt, [c("div", Mt, [c("div", Nt, [n.showBackToList ? (w(), s("button", {
1511
1511
  key: 0,
1512
1512
  type: "button",
1513
1513
  "data-testid": "vibe-back-to-list",
1514
1514
  class: "pointer-events-auto inline-flex h-11 w-11 shrink-0 items-center justify-center border border-white/14 bg-black/40 text-[#f7f1ea]/78 backdrop-blur-[18px] transition hover:border-white/28 hover:bg-black/55",
1515
1515
  "aria-label": "Back to list",
1516
1516
  onClick: t[0] ||= (e) => r("back-to-list")
1517
- }, [u(N(J), {
1517
+ }, [u(F(X), {
1518
1518
  class: "h-4 w-4 stroke-[2.2]",
1519
1519
  "aria-hidden": "true"
1520
- })])) : o("", !0), n.title ? (w(), s("h2", Mt, j(n.title), 1)) : o("", !0)]), c("div", Nt, [c("span", Pt, [
1521
- n.loading ? (w(), a(N(oe), {
1520
+ })])) : o("", !0), n.title ? (w(), s("h2", Pt, M(n.title), 1)) : o("", !0)]), c("div", Ft, [c("span", It, [
1521
+ n.loading ? (w(), a(F(oe), {
1522
1522
  key: 0,
1523
1523
  "data-testid": "vibe-pagination-spinner",
1524
1524
  class: "h-3.5 w-3.5 animate-spin stroke-[1.9]",
1525
1525
  "aria-hidden": "true"
1526
1526
  })) : o("", !0),
1527
- c("span", Ft, j(n.currentIndex + 1) + " / " + j(n.total), 1),
1528
- n.paginationDetail ? (w(), s("span", It, j(n.paginationDetail), 1)) : o("", !0)
1529
- ]), k(e.$slots, "actions")])])]), n.showEndBadge ? (w(), s("div", Lt, [...t[1] ||= [c("span", { class: "inline-flex items-center border border-amber-300/35 bg-black/40 px-4 py-3 text-[0.74rem] font-bold uppercase tracking-[0.2em] text-amber-200 backdrop-blur-[18px]" }, " End reached ", -1)]])) : o("", !0)]));
1530
- }
1531
- }), zt = {
1532
- image: ae,
1533
- video: re,
1534
- audio: Y,
1535
- other: ie
1536
- }, Bt = {
1527
+ c("span", Lt, M(n.currentIndex + 1) + " / " + M(n.total), 1),
1528
+ n.paginationDetail ? (w(), s("span", Rt, M(n.paginationDetail), 1)) : o("", !0)
1529
+ ]), k(e.$slots, "actions")])])]), n.showEndBadge ? (w(), s("div", zt, [...t[1] ||= [c("span", { class: "inline-flex items-center border border-amber-300/35 bg-black/40 px-4 py-3 text-[0.74rem] font-bold uppercase tracking-[0.2em] text-amber-200 backdrop-blur-[18px]" }, " End reached ", -1)]])) : o("", !0)]));
1530
+ }
1531
+ }), Vt = {
1532
+ image: Z,
1533
+ video: ie,
1534
+ audio: re,
1535
+ other: ae
1536
+ }, Ht = {
1537
1537
  image: "Image",
1538
1538
  video: "Video",
1539
1539
  audio: "Audio",
1540
1540
  other: "File"
1541
1541
  };
1542
- function Vt(e) {
1543
- return zt[e];
1542
+ function Ut(e) {
1543
+ return Vt[e];
1544
1544
  }
1545
- function Ht(e) {
1546
- return Bt[e];
1545
+ function Wt(e) {
1546
+ return Ht[e];
1547
1547
  }
1548
1548
  //#endregion
1549
1549
  //#region src/components/viewer-core/useAssetLoadQueue.ts
1550
- function Ut() {
1550
+ function Gt() {
1551
1551
  let e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map(), n = 0;
1552
1552
  function r(r) {
1553
1553
  let a = {
@@ -1570,7 +1570,7 @@ function Ut() {
1570
1570
  function i() {
1571
1571
  if (t.size === 0) return;
1572
1572
  let n = [...t.values()].sort((e, t) => {
1573
- let n = Gt(e) - Gt(t);
1573
+ let n = qt(e) - qt(t);
1574
1574
  return n === 0 ? e.enqueuedAt - t.enqueuedAt : n;
1575
1575
  });
1576
1576
  for (let r of n) {
@@ -1584,8 +1584,8 @@ function Ut() {
1584
1584
  }
1585
1585
  return { request: r };
1586
1586
  }
1587
- var Wt = Ut();
1588
- function Gt(e) {
1587
+ var Kt = Gt();
1588
+ function qt(e) {
1589
1589
  try {
1590
1590
  let t = e.getPriority();
1591
1591
  return Number.isFinite(t) ? t : Infinity;
@@ -1595,20 +1595,20 @@ function Gt(e) {
1595
1595
  }
1596
1596
  //#endregion
1597
1597
  //#region src/components/viewer-core/useFullscreenPreloadController.ts
1598
- var Kt = [
1598
+ var Jt = [
1599
1599
  0,
1600
1600
  1,
1601
1601
  2,
1602
1602
  3
1603
- ], qt = {
1603
+ ], Yt = {
1604
1604
  0: 0,
1605
1605
  1: 1,
1606
1606
  2: 2,
1607
1607
  3: 3
1608
1608
  };
1609
- function Jt(e) {
1610
- let t = D({}), n = Ut(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Set();
1611
- L([
1609
+ function Xt(e) {
1610
+ let t = D({}), n = Gt(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Set();
1611
+ z([
1612
1612
  e.active,
1613
1613
  e.items,
1614
1614
  e.resolvedActiveIndex
@@ -1628,14 +1628,14 @@ function Jt(e) {
1628
1628
  }
1629
1629
  function l(e, t) {
1630
1630
  if (t instanceof HTMLImageElement) {
1631
- i.set(e, t), Xt(t) && d(e);
1631
+ i.set(e, t), Qt(t) && d(e);
1632
1632
  return;
1633
1633
  }
1634
1634
  i.delete(e);
1635
1635
  }
1636
1636
  function u(e, t) {
1637
1637
  if (t instanceof HTMLMediaElement) {
1638
- a.set(e, t), Zt(t) && d(e);
1638
+ a.set(e, t), $t(t) && d(e);
1639
1639
  return;
1640
1640
  }
1641
1641
  a.delete(e);
@@ -1676,7 +1676,7 @@ function Jt(e) {
1676
1676
  assetType: s.item.type === "image" ? "image" : "video",
1677
1677
  getPriority: () => g(o.index),
1678
1678
  onGrant: () => {
1679
- y(s.key, !0), (e.isAssetReady(s.key, s.item) || Yt(s.key, i, a)) && d(s.key);
1679
+ y(s.key, !0), (e.isAssetReady(s.key, s.item) || Zt(s.key, i, a)) && d(s.key);
1680
1680
  },
1681
1681
  url: s.item.url
1682
1682
  })
@@ -1687,14 +1687,14 @@ function Jt(e) {
1687
1687
  }
1688
1688
  function h() {
1689
1689
  let t = e.resolvedActiveIndex.value;
1690
- return Kt.map((e) => _(t + e)).filter((e) => !!e);
1690
+ return Jt.map((e) => _(t + e)).filter((e) => !!e);
1691
1691
  }
1692
1692
  function g(t) {
1693
- return e.active.value ? qt[t - e.resolvedActiveIndex.value] ?? Infinity : Infinity;
1693
+ return e.active.value ? Yt[t - e.resolvedActiveIndex.value] ?? Infinity : Infinity;
1694
1694
  }
1695
1695
  function _(t) {
1696
1696
  let n = e.items.value[t];
1697
- return !n || !Qt(n) ? null : {
1697
+ return !n || !en(n) ? null : {
1698
1698
  index: t,
1699
1699
  item: n,
1700
1700
  key: e.getItemKey(n)
@@ -1743,26 +1743,26 @@ function Jt(e) {
1743
1743
  shouldAttachSlideAsset: s
1744
1744
  };
1745
1745
  }
1746
- function Yt(e, t, n) {
1746
+ function Zt(e, t, n) {
1747
1747
  let r = t.get(e);
1748
- if (r) return Xt(r);
1748
+ if (r) return Qt(r);
1749
1749
  let i = n.get(e);
1750
- return i ? Zt(i) : !1;
1750
+ return i ? $t(i) : !1;
1751
1751
  }
1752
- function Xt(e) {
1752
+ function Qt(e) {
1753
1753
  return e.complete && !!(e.currentSrc || e.getAttribute("src"));
1754
1754
  }
1755
- function Zt(e) {
1755
+ function $t(e) {
1756
1756
  let t = typeof HTMLMediaElement > "u" ? 1 : HTMLMediaElement.HAVE_METADATA;
1757
1757
  return e.readyState >= t;
1758
1758
  }
1759
- function Qt(e) {
1759
+ function en(e) {
1760
1760
  return e.type === "image" || e.type === "video" || e.type === "audio";
1761
1761
  }
1762
1762
  //#endregion
1763
1763
  //#region src/components/viewer-core/useFullscreenSurfaceMedia.ts
1764
- function $t(e) {
1765
- let t = Jt({
1764
+ function tn(e) {
1765
+ let t = Xt({
1766
1766
  active: e.active,
1767
1767
  getItemKey: r,
1768
1768
  isAssetReady: m,
@@ -1772,10 +1772,10 @@ function $t(e) {
1772
1772
  });
1773
1773
  function n(e, t) {
1774
1774
  let n = t.title?.trim();
1775
- return n ? `${e} ${n}` : `${e} ${Ht(t.type).toLowerCase()}`;
1775
+ return n ? `${e} ${n}` : `${e} ${Wt(t.type).toLowerCase()}`;
1776
1776
  }
1777
1777
  function r(e) {
1778
- return Q(e);
1778
+ return $(e);
1779
1779
  }
1780
1780
  function i(e) {
1781
1781
  return t.shouldAttachSlideAsset(e);
@@ -1835,11 +1835,11 @@ function $t(e) {
1835
1835
  }
1836
1836
  //#endregion
1837
1837
  //#region src/components/viewer-core/slotContent.ts
1838
- function en(e) {
1838
+ function nn(e) {
1839
1839
  if (!Array.isArray(e)) return !1;
1840
1840
  for (let t of e) {
1841
1841
  if (Array.isArray(t)) {
1842
- if (en(t)) return !0;
1842
+ if (nn(t)) return !0;
1843
1843
  continue;
1844
1844
  }
1845
1845
  if (!h(t)) {
@@ -1850,20 +1850,20 @@ function en(e) {
1850
1850
  if (t != null && t !== !1) return !0;
1851
1851
  continue;
1852
1852
  }
1853
- if (!tn(t)) return !0;
1853
+ if (!rn(t)) return !0;
1854
1854
  }
1855
1855
  return !1;
1856
1856
  }
1857
- function tn(r) {
1858
- return r.type === e ? !0 : r.type === n ? typeof r.children == "string" ? r.children.trim().length === 0 : !0 : r.type === t ? !en(r.children) : !1;
1857
+ function rn(r) {
1858
+ return r.type === e ? !0 : r.type === n ? typeof r.children == "string" ? r.children.trim().length === 0 : !0 : r.type === t ? !nn(r.children) : !1;
1859
1859
  }
1860
1860
  //#endregion
1861
1861
  //#region src/components/viewer-core/useSurfaceEmptyState.ts
1862
- var nn = "no items available";
1863
- function rn(e) {
1862
+ var an = "no items available";
1863
+ function on(e) {
1864
1864
  let t = i(() => e.loading.value || e.itemCount.value > 0 || e.emptyStateMode.value === "hidden" ? null : {
1865
1865
  loading: !!e.loading.value,
1866
- message: nn,
1866
+ message: an,
1867
1867
  mode: e.emptyStateMode.value === "badge" ? "badge" : "inline",
1868
1868
  surface: e.surface,
1869
1869
  total: e.itemCount.value
@@ -1871,23 +1871,23 @@ function rn(e) {
1871
1871
  return {
1872
1872
  emptyStateProps: t,
1873
1873
  showBadgeEmptyState: i(() => t.value?.mode === "badge"),
1874
- showCustomEmptyState: i(() => en(n.value)),
1874
+ showCustomEmptyState: i(() => nn(n.value)),
1875
1875
  showInlineEmptyState: i(() => t.value?.mode === "inline")
1876
1876
  };
1877
1877
  }
1878
1878
  //#endregion
1879
1879
  //#region src/components/viewer-core/format.ts
1880
- function an(e) {
1880
+ function sn(e) {
1881
1881
  if (!Number.isFinite(e) || e <= 0) return "0:00";
1882
1882
  let t = Math.floor(e), n = Math.floor(t / 3600), r = Math.floor(t % 3600 / 60), i = t % 60;
1883
1883
  return n > 0 ? `${n}:${String(r).padStart(2, "0")}:${String(i).padStart(2, "0")}` : `${r}:${String(i).padStart(2, "0")}`;
1884
1884
  }
1885
1885
  //#endregion
1886
1886
  //#region src/components/viewer-core/surfaceStatus.ts
1887
- function on(e) {
1887
+ function cn(e) {
1888
1888
  return e.phase ? e.phase : e.loading ? e.itemCount > 0 ? "loading" : "initializing" : "idle";
1889
1889
  }
1890
- function sn(e) {
1890
+ function ln(e) {
1891
1891
  return e.phase === "failed" ? {
1892
1892
  kind: "failed",
1893
1893
  message: e.errorMessage ?? (e.hasItems ? "The viewer could not load more items." : "The viewer could not load items.")
@@ -1910,9 +1910,9 @@ function sn(e) {
1910
1910
  }
1911
1911
  //#endregion
1912
1912
  //#region src/components/viewer-core/useActivation.ts
1913
- function cn(e) {
1913
+ function un(e) {
1914
1914
  let t = !1;
1915
- L(e.enabled, async (t) => {
1915
+ z(e.enabled, async (t) => {
1916
1916
  if (n(t), t) {
1917
1917
  e.onResize(), await e.onEnable();
1918
1918
  return;
@@ -1933,7 +1933,7 @@ function cn(e) {
1933
1933
  }
1934
1934
  //#endregion
1935
1935
  //#region src/components/viewer-core/assetState.ts
1936
- var ln = {
1936
+ var dn = {
1937
1937
  currentTime: 0,
1938
1938
  duration: 0,
1939
1939
  errorKind: null,
@@ -1942,38 +1942,38 @@ var ln = {
1942
1942
  ready: !1,
1943
1943
  volume: 1
1944
1944
  };
1945
- function un() {
1946
- return { ...ln };
1945
+ function fn() {
1946
+ return { ...dn };
1947
1947
  }
1948
- function dn(e) {
1948
+ function pn(e) {
1949
1949
  return e.complete && !!(e.currentSrc || e.getAttribute("src"));
1950
1950
  }
1951
- function fn(e, t, n) {
1952
- e.currentTime = Number.isFinite(t.currentTime) ? t.currentTime : 0, e.duration = Number.isFinite(t.duration) ? t.duration : 0, e.muted = t.muted, e.paused = t.paused, e.volume = Number.isFinite(t.volume) ? t.volume : e.volume, n && n !== "error" && (e.errorKind = null), e.ready = pn(t, n);
1951
+ function mn(e, t, n) {
1952
+ e.currentTime = Number.isFinite(t.currentTime) ? t.currentTime : 0, e.duration = Number.isFinite(t.duration) ? t.duration : 0, e.muted = t.muted, e.paused = t.paused, e.volume = Number.isFinite(t.volume) ? t.volume : e.volume, n && n !== "error" && (e.errorKind = null), e.ready = hn(t, n);
1953
1953
  }
1954
- function pn(e, t) {
1954
+ function hn(e, t) {
1955
1955
  return t === "error" || t === "loadstart" || t === "waiting" || t === "stalled" ? !1 : t === "canplay" || t === "canplaythrough" || t === "playing" ? !0 : e.readyState >= HTMLMediaElement.HAVE_CURRENT_DATA;
1956
1956
  }
1957
1957
  //#endregion
1958
1958
  //#region src/components/viewer-core/loadError.ts
1959
- var mn = /* @__PURE__ */ new Map();
1960
- function hn(e) {
1959
+ var gn = /* @__PURE__ */ new Map();
1960
+ function _n(e) {
1961
1961
  return e === "not-found" ? "404" : "Load error";
1962
1962
  }
1963
- function gn(e) {
1963
+ function vn(e) {
1964
1964
  return e === "generic";
1965
1965
  }
1966
- function _n(e) {
1967
- return vn(e).then((e) => e ?? "generic");
1966
+ function yn(e) {
1967
+ return bn(e).then((e) => e ?? "generic");
1968
1968
  }
1969
- function vn(e) {
1970
- let t = mn.get(e);
1969
+ function bn(e) {
1970
+ let t = gn.get(e);
1971
1971
  if (t) return t;
1972
- let n = yn(e);
1973
- return mn.set(e, n), n;
1972
+ let n = xn(e);
1973
+ return gn.set(e, n), n;
1974
1974
  }
1975
- async function yn(e) {
1976
- if (!bn(e)) return null;
1975
+ async function xn(e) {
1976
+ if (!Sn(e)) return null;
1977
1977
  try {
1978
1978
  let t = await fetch(e, { method: "HEAD" });
1979
1979
  return t.ok ? null : t.status === 404 ? "not-found" : "generic";
@@ -1981,12 +1981,12 @@ async function yn(e) {
1981
1981
  return "generic";
1982
1982
  }
1983
1983
  }
1984
- function bn(e) {
1984
+ function Sn(e) {
1985
1985
  return /^(https?:\/\/|\/)/i.test(e);
1986
1986
  }
1987
1987
  //#endregion
1988
1988
  //#region src/components/viewer-core/mediaPlayback.ts
1989
- function xn(e) {
1989
+ function Cn(e) {
1990
1990
  try {
1991
1991
  let t = e.play();
1992
1992
  t && typeof t.catch == "function" && t.catch(() => {});
@@ -1994,17 +1994,17 @@ function xn(e) {
1994
1994
  }
1995
1995
  //#endregion
1996
1996
  //#region src/components/viewer-core/useMedia.ts
1997
- function Sn(e) {
1998
- let t = D({}), n = D({}), r = D({}), a = D({}), o = D({}), s = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Set(), u = i(() => e.activeItem.value ? Q(e.activeItem.value) : null), d = i(() => e.activeMediaItem.value ? Q(e.activeMediaItem.value) : null), f = i(() => {
1997
+ function wn(e) {
1998
+ let t = D({}), n = D({}), r = D({}), a = D({}), o = D({}), s = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Set(), u = i(() => e.activeItem.value ? $(e.activeItem.value) : null), d = i(() => e.activeMediaItem.value ? $(e.activeMediaItem.value) : null), f = i(() => {
1999
1999
  let t = /* @__PURE__ */ new Map();
2000
- for (let n of e.items.value) t.set(Q(n), n);
2000
+ for (let n of e.items.value) t.set($(n), n);
2001
2001
  return t;
2002
- }), p = i(() => d.value ? r.value[d.value] ?? ln : ln), m = i(() => d.value ? p.value.duration : 0), h = i(() => m.value <= 0 ? 0 : Cn(p.value.currentTime / m.value * 100, 0, 100)), g = i(() => u.value ? R(u.value) : null);
2003
- L(() => u.value, async () => {
2002
+ }), p = i(() => d.value ? r.value[d.value] ?? dn : dn), m = i(() => d.value ? p.value.duration : 0), h = i(() => m.value <= 0 ? 0 : Tn(p.value.currentTime / m.value * 100, 0, 100)), g = i(() => u.value ? L(u.value) : null);
2003
+ z(() => u.value, async () => {
2004
2004
  await C();
2005
- }), L(() => e.itemCount.value, async () => {
2005
+ }), z(() => e.itemCount.value, async () => {
2006
2006
  await C();
2007
- }), L(() => e.loopFullscreenVideo.value, async () => {
2007
+ }), z(() => e.loopFullscreenVideo.value, async () => {
2008
2008
  await C();
2009
2009
  });
2010
2010
  function v(e, t) {
@@ -2022,10 +2022,10 @@ function Sn(e) {
2022
2022
  c.delete(e);
2023
2023
  }
2024
2024
  function b(e, r) {
2025
- r instanceof HTMLImageElement && dn(r) && (t.value[e] = !0, n.value[e] = null, Y(e, r.currentSrc || r.src || ie(e)));
2025
+ r instanceof HTMLImageElement && pn(r) && (t.value[e] = !0, n.value[e] = null, Y(e, r.currentSrc || r.src || re(e)));
2026
2026
  }
2027
2027
  function x() {
2028
- H(), a.value = {}, n.value = {}, t.value = {}, o.value = {}, r.value = {}, l.clear();
2028
+ U(), a.value = {}, n.value = {}, t.value = {}, o.value = {}, r.value = {}, l.clear();
2029
2029
  }
2030
2030
  function S(e) {
2031
2031
  delete t.value[e], delete n.value[e], delete o.value[e], delete r.value[e], l.forEach((t) => {
@@ -2034,24 +2034,24 @@ function Sn(e) {
2034
2034
  }
2035
2035
  async function C() {
2036
2036
  if (!e.isEnabled.value) {
2037
- H();
2037
+ U();
2038
2038
  return;
2039
2039
  }
2040
2040
  await _();
2041
2041
  let t = u.value;
2042
2042
  for (let [n, i] of s.entries()) {
2043
2043
  if (n !== t || r.value[n]?.errorKind) {
2044
- V(i, n);
2044
+ H(i, n);
2045
2045
  continue;
2046
2046
  }
2047
- i.muted = !1, i.loop = e.loopFullscreenVideo.value, i.playsInline = !0, xn(i), W(n, i);
2047
+ i.muted = !1, i.loop = e.loopFullscreenVideo.value, i.playsInline = !0, Cn(i), W(n, i);
2048
2048
  }
2049
2049
  for (let [e, n] of c.entries()) {
2050
2050
  if (e !== t || r.value[e]?.errorKind) {
2051
- V(n, e);
2051
+ H(n, e);
2052
2052
  continue;
2053
2053
  }
2054
- xn(n), W(e, n);
2054
+ Cn(n), W(e, n);
2055
2055
  }
2056
2056
  }
2057
2057
  function w(e, t) {
@@ -2060,16 +2060,16 @@ function Sn(e) {
2060
2060
  let i = r.value[e]?.ready ?? !1;
2061
2061
  W(e, n, t.type);
2062
2062
  let a = r.value[e]?.ready ?? !1;
2063
- !i && a && Y(e, n.currentSrc || n.src || ie(e));
2063
+ !i && a && Y(e, n.currentSrc || n.src || re(e));
2064
2064
  }
2065
2065
  }
2066
2066
  function T(e, r) {
2067
2067
  t.value[e] = !0, n.value[e] = null, Y(e, r);
2068
2068
  }
2069
2069
  async function E(r, i) {
2070
- let a = re(r) ?? e.activeItem.value;
2070
+ let a = X(r) ?? e.activeItem.value;
2071
2071
  t.value[r] = !1, n.value[r] = "generic";
2072
- let o = await _n(i);
2072
+ let o = await yn(i);
2073
2073
  n.value[r] = o, a && e.onAssetError?.({
2074
2074
  item: a,
2075
2075
  occurrenceKey: r,
@@ -2079,7 +2079,7 @@ function Sn(e) {
2079
2079
  });
2080
2080
  }
2081
2081
  async function O(t, n) {
2082
- let r = K(t), i = U(t), a = re(t) ?? e.activeMediaItem.value ?? e.activeItem.value;
2082
+ let r = q(t), i = te(t), a = X(t) ?? e.activeMediaItem.value ?? e.activeItem.value;
2083
2083
  if (r) {
2084
2084
  r.pause();
2085
2085
  try {
@@ -2087,7 +2087,7 @@ function Sn(e) {
2087
2087
  } catch {}
2088
2088
  }
2089
2089
  i.currentTime = 0, i.duration = 0, i.paused = !0, i.ready = !1, i.errorKind = "generic";
2090
- let o = await _n(n);
2090
+ let o = await yn(n);
2091
2091
  i.errorKind = o, a && e.onAssetError?.({
2092
2092
  item: a,
2093
2093
  occurrenceKey: t,
@@ -2097,28 +2097,28 @@ function Sn(e) {
2097
2097
  });
2098
2098
  }
2099
2099
  function k(e, t, n) {
2100
- e.button !== 0 || Date.now() < n || J(s.get(t) ?? null);
2100
+ e.button !== 0 || Date.now() < n || ne(s.get(t) ?? null);
2101
2101
  }
2102
2102
  function A(e, t, n) {
2103
- e.button !== 0 || Date.now() < n || J(K(t));
2103
+ e.button !== 0 || Date.now() < n || ne(q(t));
2104
2104
  }
2105
2105
  function j(e) {
2106
- let t = q(), n = d.value;
2106
+ let t = J(), n = d.value;
2107
2107
  if (!t || !n || !(e.target instanceof HTMLInputElement)) return;
2108
2108
  let r = Number.parseFloat(e.target.value);
2109
2109
  if (!Number.isFinite(r)) return;
2110
- let i = Cn(r, 0, m.value || 0);
2111
- ne(n, i, t), t.currentTime = i;
2110
+ let i = Tn(r, 0, m.value || 0);
2111
+ G(n, i, t), t.currentTime = i;
2112
2112
  }
2113
2113
  function M(e) {
2114
- let t = q(), n = d.value;
2114
+ let t = J(), n = d.value;
2115
2115
  if (!t || !n || !(e.target instanceof HTMLInputElement)) return;
2116
- let r = Cn(Number.parseFloat(e.target.value), 0, 1);
2116
+ let r = Tn(Number.parseFloat(e.target.value), 0, 1);
2117
2117
  t.volume = r, t.muted = r <= 0, r > 0 && (o.value[n] = r), W(n, t);
2118
2118
  }
2119
2119
  function N() {
2120
- let e = q(), t = d.value;
2121
- !e || !t || (e.muted || e.volume <= 0 ? (e.volume = G(t), e.muted = !1, o.value[t] = e.volume) : (o.value[t] = e.volume, e.muted = !0), W(t, e));
2120
+ let e = J(), t = d.value;
2121
+ !e || !t || (e.muted || e.volume <= 0 ? (e.volume = K(t), e.muted = !1, o.value[t] = e.volume) : (o.value[t] = e.volume, e.muted = !0), W(t, e));
2122
2122
  }
2123
2123
  function P(e) {
2124
2124
  return !!t.value[e] && !n.value[e];
@@ -2129,70 +2129,70 @@ function Sn(e) {
2129
2129
  function I(e) {
2130
2130
  return e.url;
2131
2131
  }
2132
- function R(e) {
2132
+ function L(e) {
2133
2133
  return n.value[e] ?? r.value[e]?.errorKind ?? null;
2134
2134
  }
2135
- function z(e) {
2136
- let t = R(e);
2137
- return t ? hn(t) : null;
2135
+ function R(e) {
2136
+ let t = L(e);
2137
+ return t ? _n(t) : null;
2138
2138
  }
2139
2139
  function ee(e) {
2140
- return gn(R(e));
2140
+ return vn(L(e));
2141
2141
  }
2142
- function te(e) {
2142
+ function B(e) {
2143
2143
  return `${e}:${a.value[e] ?? 0}`;
2144
2144
  }
2145
- async function B(e) {
2145
+ async function V(e) {
2146
2146
  if (!ee(e)) return;
2147
2147
  t.value[e] = !1, n.value[e] = null;
2148
- let r = U(e);
2148
+ let r = te(e);
2149
2149
  r.currentTime = 0, r.duration = 0, r.paused = !0, r.ready = !1, r.errorKind = null;
2150
- let i = K(e);
2151
- i && V(i, e), l.forEach((t) => {
2150
+ let i = q(e);
2151
+ i && H(i, e), l.forEach((t) => {
2152
2152
  t.startsWith(`${e}|`) && l.delete(t);
2153
2153
  }), a.value[e] = (a.value[e] ?? 0) + 1, await _(), await C();
2154
2154
  }
2155
- function V(e, t) {
2155
+ function H(e, t) {
2156
2156
  e.pause();
2157
2157
  try {
2158
2158
  e.currentTime = 0;
2159
2159
  } catch {}
2160
2160
  W(t, e);
2161
2161
  }
2162
- function H() {
2163
- for (let [e, t] of s.entries()) V(t, e);
2164
- for (let [e, t] of c.entries()) V(t, e);
2162
+ function U() {
2163
+ for (let [e, t] of s.entries()) H(t, e);
2164
+ for (let [e, t] of c.entries()) H(t, e);
2165
2165
  }
2166
- function U(e) {
2167
- return r.value[e] || (r.value[e] = un()), r.value[e];
2166
+ function te(e) {
2167
+ return r.value[e] || (r.value[e] = fn()), r.value[e];
2168
2168
  }
2169
2169
  function W(e, t, n) {
2170
- fn(U(e), t, n), !t.muted && t.volume > 0 && (o.value[e] = t.volume);
2170
+ mn(te(e), t, n), !t.muted && t.volume > 0 && (o.value[e] = t.volume);
2171
2171
  }
2172
- function ne(e, t, n) {
2173
- let r = U(e);
2172
+ function G(e, t, n) {
2173
+ let r = te(e);
2174
2174
  r.currentTime = t, r.duration = Number.isFinite(n.duration) ? n.duration : r.duration, r.muted = n.muted, r.paused = n.paused, r.volume = Number.isFinite(n.volume) ? n.volume : r.volume;
2175
2175
  }
2176
- function G(e) {
2177
- return Cn(o.value[e] ?? 1, 0, 1);
2178
- }
2179
2176
  function K(e) {
2177
+ return Tn(o.value[e] ?? 1, 0, 1);
2178
+ }
2179
+ function q(e) {
2180
2180
  return s.get(e) ?? c.get(e) ?? null;
2181
2181
  }
2182
- function q() {
2183
- return d.value ? K(d.value) : null;
2182
+ function J() {
2183
+ return d.value ? q(d.value) : null;
2184
2184
  }
2185
- function J(e) {
2185
+ function ne(e) {
2186
2186
  if (e) {
2187
2187
  if (e.paused) {
2188
- xn(e);
2188
+ Cn(e);
2189
2189
  return;
2190
2190
  }
2191
2191
  e.pause();
2192
2192
  }
2193
2193
  }
2194
2194
  function Y(t, n) {
2195
- let r = re(t) ?? e.activeMediaItem.value ?? e.activeItem.value;
2195
+ let r = X(t) ?? e.activeMediaItem.value ?? e.activeItem.value;
2196
2196
  if (!r || !n) return;
2197
2197
  let i = `${t}|${n}`;
2198
2198
  l.has(i) || (l.add(i), e.onAssetLoad?.({
@@ -2202,20 +2202,20 @@ function Sn(e) {
2202
2202
  url: n
2203
2203
  }));
2204
2204
  }
2205
- function re(e) {
2205
+ function X(e) {
2206
2206
  return f.value.get(e) ?? null;
2207
2207
  }
2208
- function ie(e) {
2209
- return re(e)?.url ?? null;
2208
+ function re(e) {
2209
+ return X(e)?.url ?? null;
2210
2210
  }
2211
2211
  return {
2212
2212
  activeAssetErrorKind: g,
2213
2213
  activeMediaDuration: m,
2214
2214
  activeMediaProgress: h,
2215
2215
  activeMediaState: p,
2216
- getAssetErrorKind: R,
2217
- getAssetErrorLabel: z,
2218
- getAssetRenderKey: te,
2216
+ getAssetErrorKind: L,
2217
+ getAssetErrorLabel: R,
2218
+ getAssetRenderKey: B,
2219
2219
  getImageSource: I,
2220
2220
  isImageReady: P,
2221
2221
  isMediaReady: F,
@@ -2235,20 +2235,20 @@ function Sn(e) {
2235
2235
  registerVideoElement: v,
2236
2236
  resetAssetState: S,
2237
2237
  resetMediaState: x,
2238
- retryAsset: B,
2238
+ retryAsset: V,
2239
2239
  syncMediaPlayback: C
2240
2240
  };
2241
2241
  }
2242
- function Cn(e, t, n) {
2242
+ function Tn(e, t, n) {
2243
2243
  return Math.min(Math.max(e, t), n);
2244
2244
  }
2245
2245
  //#endregion
2246
2246
  //#region src/components/viewer-core/virtualization.ts
2247
- var wn = {
2247
+ var En = {
2248
2248
  backward: 1,
2249
2249
  forward: 3
2250
2250
  };
2251
- function Tn(e, t, n = wn) {
2251
+ function Dn(e, t, n = En) {
2252
2252
  return t <= 0 ? {
2253
2253
  start: 0,
2254
2254
  end: -1
@@ -2257,14 +2257,14 @@ function Tn(e, t, n = wn) {
2257
2257
  end: Math.min(t - 1, e + n.forward)
2258
2258
  };
2259
2259
  }
2260
- function En(e, t, n = wn) {
2261
- let r = Tn(t, e.length, n);
2260
+ function On(e, t, n = En) {
2261
+ let r = Dn(t, e.length, n);
2262
2262
  return r.end < r.start ? [] : e.slice(r.start, r.end + 1).map((e, t) => ({
2263
2263
  item: e,
2264
2264
  index: r.start + t
2265
2265
  }));
2266
2266
  }
2267
- function Dn(e, t, n, r, i) {
2267
+ function kn(e, t, n, r, i) {
2268
2268
  return {
2269
2269
  transform: `translate3d(0, ${(e - t) * n + r}px, 0)`,
2270
2270
  transition: i ? "none" : "transform 320ms cubic-bezier(0.22, 1, 0.36, 1)"
@@ -2272,12 +2272,12 @@ function Dn(e, t, n, r, i) {
2272
2272
  }
2273
2273
  //#endregion
2274
2274
  //#region src/components/viewer-core/useViewer.ts
2275
- function On(e, t, n = {}) {
2276
- let r = i(() => e.items), a = i(() => e.activeIndex ?? 0), o = i(() => e.errorMessage ?? null), s = i(() => e.loading ?? !1), c = i(() => e.hasNextPage ?? !1), l = i(() => e.loopFullscreenVideo ?? !0), u = i(() => e.paginationDetail ?? null), d = i(() => on({
2275
+ function An(e, t, n = {}) {
2276
+ let r = i(() => e.items), a = i(() => e.activeIndex ?? 0), o = i(() => e.errorMessage ?? null), s = i(() => e.loading ?? !1), c = i(() => e.hasNextPage ?? !1), l = i(() => e.loopFullscreenVideo ?? !0), u = i(() => e.paginationDetail ?? null), d = i(() => cn({
2277
2277
  itemCount: r.value.length,
2278
2278
  loading: s.value,
2279
2279
  phase: e.phase
2280
- })), f = i(() => !1), p = D(null), m = D(0), h = D(!1), g = D(1), _ = n.enabled ?? i(() => !0), v = null, y = 0, b = 0, x = 0, S = i(() => r.value.length === 0 ? 0 : P(a.value, 0, r.value.length - 1)), C = i(() => r.value[S.value] ?? null), w = i(() => C.value?.type === "audio" || C.value?.type === "video" ? C.value : null), T = Sn({
2280
+ })), f = i(() => !1), p = D(null), m = D(0), h = D(!1), g = D(1), _ = n.enabled ?? i(() => !0), v = null, y = 0, b = 0, x = 0, S = i(() => r.value.length === 0 ? 0 : P(a.value, 0, r.value.length - 1)), C = i(() => r.value[S.value] ?? null), w = i(() => C.value?.type === "audio" || C.value?.type === "video" ? C.value : null), T = wn({
2281
2281
  items: r,
2282
2282
  activeItem: C,
2283
2283
  activeMediaItem: w,
@@ -2286,17 +2286,17 @@ function On(e, t, n = {}) {
2286
2286
  loopFullscreenVideo: l,
2287
2287
  onAssetError: n.onAssetError,
2288
2288
  onAssetLoad: n.onAssetLoad
2289
- }), E = i(() => r.value.length > 0 && S.value === r.value.length - 1), O = i(() => sn({
2289
+ }), E = i(() => r.value.length > 0 && S.value === r.value.length - 1), O = i(() => ln({
2290
2290
  errorMessage: o.value,
2291
2291
  hasItems: r.value.length > 0,
2292
2292
  hasNextPage: c.value,
2293
2293
  phase: d.value,
2294
2294
  surface: "fullscreen"
2295
- })), k = i(() => O.value?.kind ?? null), A = i(() => O.value?.message ?? null), j = i(() => Math.min(96, g.value * .15 || 96)), M = i(() => Tn(S.value, r.value.length)), N = i(() => En(r.value, S.value));
2296
- cn({
2295
+ })), k = i(() => O.value?.kind ?? null), A = i(() => O.value?.message ?? null), j = i(() => Math.min(96, g.value * .15 || 96)), M = i(() => Dn(S.value, r.value.length)), N = i(() => On(r.value, S.value));
2296
+ un({
2297
2297
  enabled: _,
2298
2298
  onDisable() {
2299
- H(), T.resetMediaState();
2299
+ U(), T.resetMediaState();
2300
2300
  },
2301
2301
  onEnable() {
2302
2302
  return T.syncMediaPlayback();
@@ -2323,55 +2323,55 @@ function On(e, t, n = {}) {
2323
2323
  return t && !I(-1) || n && !I(1) ? e * .24 : e;
2324
2324
  }
2325
2325
  function z(e) {
2326
- !_.value || r.value.length === 0 || e.pointerType === "mouse" || ge(e.target) || (v = e.pointerId, y = e.clientY, m.value = 0, h.value = !0, p.value?.setPointerCapture?.(e.pointerId));
2326
+ !_.value || r.value.length === 0 || e.pointerType === "mouse" || Q(e.target) || (v = e.pointerId, y = e.clientY, m.value = 0, h.value = !0, p.value?.setPointerCapture?.(e.pointerId));
2327
2327
  }
2328
2328
  function ee(e) {
2329
2329
  !_.value || !h.value || v !== e.pointerId || (m.value = R(e.clientY - y));
2330
2330
  }
2331
- function te(e) {
2332
- !_.value || v !== e.pointerId || (p.value?.releasePointerCapture?.(e.pointerId), V());
2333
- }
2334
2331
  function B(e) {
2335
2332
  !_.value || v !== e.pointerId || (p.value?.releasePointerCapture?.(e.pointerId), H());
2336
2333
  }
2337
- function V() {
2338
- Math.abs(m.value) >= j.value && (x = Date.now() + 250, L(m.value < 0 ? 1 : -1)), H();
2334
+ function V(e) {
2335
+ !_.value || v !== e.pointerId || (p.value?.releasePointerCapture?.(e.pointerId), U());
2339
2336
  }
2340
2337
  function H() {
2338
+ Math.abs(m.value) >= j.value && (x = Date.now() + 250, L(m.value < 0 ? 1 : -1)), U();
2339
+ }
2340
+ function U() {
2341
2341
  m.value = 0, h.value = !1, v = null;
2342
2342
  }
2343
- function U(e) {
2344
- if (!_.value || r.value.length === 0 || h.value || ge(e.target) || Math.abs(e.deltaY) < Math.max(Math.abs(e.deltaX), 24)) return;
2343
+ function te(e) {
2344
+ if (!_.value || r.value.length === 0 || h.value || Q(e.target) || Math.abs(e.deltaY) < Math.max(Math.abs(e.deltaX), 24)) return;
2345
2345
  e.preventDefault();
2346
2346
  let t = Date.now();
2347
2347
  t < b || (b = t + 400, L(e.deltaY > 0 ? 1 : -1));
2348
2348
  }
2349
2349
  function W(e) {
2350
- !_.value || r.value.length === 0 || he(e.target) || ((e.key === "ArrowDown" || e.key === "PageDown") && (e.preventDefault(), L(1)), (e.key === "ArrowUp" || e.key === "PageUp") && (e.preventDefault(), L(-1)));
2350
+ !_.value || r.value.length === 0 || ge(e.target) || ((e.key === "ArrowDown" || e.key === "PageDown") && (e.preventDefault(), L(1)), (e.key === "ArrowUp" || e.key === "PageUp") && (e.preventDefault(), L(-1)));
2351
2351
  }
2352
- function ne(e, t) {
2352
+ function G(e, t) {
2353
2353
  T.onVideoClick(e, t, x);
2354
2354
  }
2355
- function G(e, t) {
2355
+ function K(e, t) {
2356
2356
  T.onAudioCoverClick(e, t, x);
2357
2357
  }
2358
- function K(e) {
2358
+ function q(e) {
2359
2359
  T.onMediaSeekInput(e);
2360
2360
  }
2361
- function q(e) {
2361
+ function J(e) {
2362
2362
  T.onMediaVolumeInput(e);
2363
2363
  }
2364
- function J() {
2364
+ function ne() {
2365
2365
  T.onMediaVolumeToggle();
2366
2366
  }
2367
2367
  function Y(e) {
2368
2368
  return e.type === "image" || e.type === "video";
2369
2369
  }
2370
- function re(e) {
2370
+ function X(e) {
2371
2371
  return e.type === "audio";
2372
2372
  }
2373
- function ie(e) {
2374
- return Dn(e, S.value, g.value, m.value, h.value);
2373
+ function re(e) {
2374
+ return kn(e, S.value, g.value, m.value, h.value);
2375
2375
  }
2376
2376
  return {
2377
2377
  activeItem: C,
@@ -2386,32 +2386,32 @@ function On(e, t, n = {}) {
2386
2386
  getAssetErrorKind: T.getAssetErrorKind,
2387
2387
  getAssetErrorLabel: T.getAssetErrorLabel,
2388
2388
  getAssetRenderKey: T.getAssetRenderKey,
2389
- formatPlaybackTime: an,
2389
+ formatPlaybackTime: sn,
2390
2390
  getImageSource: T.getImageSource,
2391
- getSlideStyle: ie,
2391
+ getSlideStyle: re,
2392
2392
  hasNextPage: c,
2393
2393
  isAtEnd: E,
2394
- isAudio: re,
2394
+ isAudio: X,
2395
2395
  isVisual: Y,
2396
2396
  items: r,
2397
2397
  loading: s,
2398
2398
  mediaStates: T.mediaStates,
2399
2399
  isImageReady: T.isImageReady,
2400
2400
  isMediaReady: T.isMediaReady,
2401
- onAudioCoverClick: G,
2401
+ onAudioCoverClick: K,
2402
2402
  onImageError: T.onImageError,
2403
2403
  onImageLoad: T.onImageLoad,
2404
2404
  onMediaEvent: T.onMediaEvent,
2405
2405
  onMediaError: T.onMediaError,
2406
- onMediaSeekInput: K,
2407
- onMediaVolumeInput: q,
2408
- onMediaVolumeToggle: J,
2409
- onPointerCancel: B,
2406
+ onMediaSeekInput: q,
2407
+ onMediaVolumeInput: J,
2408
+ onMediaVolumeToggle: ne,
2409
+ onPointerCancel: V,
2410
2410
  onPointerDown: z,
2411
2411
  onPointerMove: ee,
2412
- onPointerUp: te,
2413
- onVideoClick: ne,
2414
- onWheel: U,
2412
+ onPointerUp: B,
2413
+ onVideoClick: G,
2414
+ onWheel: te,
2415
2415
  registerAudioElement: T.registerAudioElement,
2416
2416
  registerImageElement: T.registerImageElement,
2417
2417
  registerVideoElement: T.registerVideoElement,
@@ -2430,21 +2430,21 @@ function On(e, t, n = {}) {
2430
2430
  }
2431
2431
  //#endregion
2432
2432
  //#region src/components/viewer-core/theme.ts
2433
- var kn = "bg-[linear-gradient(180deg,#0a0b10,#05060a)]", An = "bg-[linear-gradient(180deg,#0b0c11,#06070b)]", jn = {
2433
+ var jn = "bg-[linear-gradient(180deg,#0a0b10,#05060a)]", Mn = "bg-[linear-gradient(180deg,#0b0c11,#06070b)]", Nn = {
2434
2434
  image: !0,
2435
2435
  video: !0,
2436
2436
  audio: !0,
2437
2437
  other: !0
2438
2438
  };
2439
- function Mn(e) {
2440
- return jn[e], kn;
2439
+ function Pn(e) {
2440
+ return Nn[e], jn;
2441
2441
  }
2442
- function Nn(e) {
2443
- return jn[e], An;
2442
+ function Fn(e) {
2443
+ return Nn[e], Mn;
2444
2444
  }
2445
2445
  //#endregion
2446
2446
  //#region src/components/viewer-core/useFullscreenAssetEvents.ts
2447
- function Pn(e) {
2447
+ function In(e) {
2448
2448
  function t(t, n) {
2449
2449
  return e.fullscreenMedia.shouldHandleSlideAssetEvent(t, n) ? e.fullscreenMedia.getItemKey(n) : null;
2450
2450
  }
@@ -2477,7 +2477,7 @@ function Pn(e) {
2477
2477
  }
2478
2478
  //#endregion
2479
2479
  //#region src/components/viewer-core/dominantImageTone.ts
2480
- function Fn(e) {
2480
+ function Ln(e) {
2481
2481
  if (e.naturalWidth <= 0 || e.naturalHeight <= 0) return null;
2482
2482
  let t = document.createElement("canvas"), n = t.getContext("2d", { willReadFrequently: !0 });
2483
2483
  if (!n) return null;
@@ -2492,20 +2492,20 @@ function Fn(e) {
2492
2492
  r += d, i += s * d, a += c * d, o += l * d;
2493
2493
  }
2494
2494
  return r <= 0 ? null : {
2495
- r: In(Math.round(i / r)),
2496
- g: In(Math.round(a / r)),
2497
- b: In(Math.round(o / r))
2495
+ r: Rn(Math.round(i / r)),
2496
+ g: Rn(Math.round(a / r)),
2497
+ b: Rn(Math.round(o / r))
2498
2498
  };
2499
2499
  } catch {
2500
2500
  return null;
2501
2501
  }
2502
2502
  }
2503
- function In(e) {
2503
+ function Rn(e) {
2504
2504
  return Math.min(235, Math.max(26, e));
2505
2505
  }
2506
2506
  //#endregion
2507
2507
  //#region src/components/viewer-core/useFullscreenDominantTone.ts
2508
- function Ln(e) {
2508
+ function zn(e) {
2509
2509
  let t = D({}), n = i(() => e.activeItem.value ? e.getItemKey(e.activeItem.value) : null), r = i(() => !e.showDominantImageTone.value || e.activeItem.value?.type !== "image" || !n.value || !e.isImageReady(n.value) ? null : t.value[n.value] ?? null), a = i(() => {
2510
2510
  if (!r.value) return;
2511
2511
  let { r: e, g: t, b: n } = r.value;
@@ -2515,12 +2515,12 @@ function Ln(e) {
2515
2515
  let { r: e, g: t, b: n } = r.value;
2516
2516
  return { background: `radial-gradient(circle at center, rgba(${e},${t},${n},0.42) 0%, transparent 44%), linear-gradient(180deg,#0b0c11,#06070b)` };
2517
2517
  });
2518
- L(() => e.showDominantImageTone.value, (e) => {
2518
+ z(() => e.showDominantImageTone.value, (e) => {
2519
2519
  e || (t.value = {});
2520
2520
  });
2521
2521
  function s(n, r) {
2522
2522
  if (!e.showDominantImageTone.value) return;
2523
- let i = Fn(r);
2523
+ let i = Ln(r);
2524
2524
  i && (t.value[n] = i);
2525
2525
  }
2526
2526
  return {
@@ -2531,7 +2531,7 @@ function Ln(e) {
2531
2531
  }
2532
2532
  //#endregion
2533
2533
  //#region src/components/SurfaceEmptyState.vue?vue&type=script&setup=true&lang.ts
2534
- var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2534
+ var Bn = ["data-surface"], Vn = ["data-surface"], Hn = /* @__PURE__ */ d({
2535
2535
  inheritAttrs: !1,
2536
2536
  __name: "SurfaceEmptyState",
2537
2537
  props: {
@@ -2540,36 +2540,36 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2540
2540
  surface: {}
2541
2541
  },
2542
2542
  setup(e) {
2543
- let t = P();
2544
- return (n, r) => e.mode === "inline" ? (w(), s("div", g({ key: 0 }, N(t), {
2543
+ let t = I();
2544
+ return (n, r) => e.mode === "inline" ? (w(), s("div", g({ key: 0 }, F(t), {
2545
2545
  "data-testid": "vibe-empty-state-inline",
2546
2546
  "data-surface": e.surface,
2547
2547
  class: ["pointer-events-none absolute z-[4] text-center", e.surface === "grid" ? "inset-x-0 top-[clamp(6rem,22vh,11rem)] flex justify-center px-6" : "inset-0 grid place-items-center px-[clamp(2rem,4vw,3rem)] py-[clamp(2rem,4vw,3rem)]"]
2548
- }), [k(n.$slots, "default", {}, () => [c("p", { class: v(["m-0 text-[0.82rem] font-medium tracking-[0.08em]", e.surface === "grid" ? "text-[#f7f1ea]/58" : "text-[#f7f1ea]/64"]) }, j(e.message), 3)])], 16, Rn)) : (w(), s("div", g({ key: 1 }, N(t), { class: ["pointer-events-none absolute z-[4]", e.surface === "grid" ? "inset-x-0 bottom-0 flex justify-center px-6" : "bottom-[1.8rem] left-1/2 -translate-x-1/2 max-[720px]:bottom-[1.3rem]"] }), [k(n.$slots, "default", {}, () => [c("span", {
2548
+ }), [k(n.$slots, "default", {}, () => [c("p", { class: v(["m-0 text-[0.82rem] font-medium tracking-[0.08em]", e.surface === "grid" ? "text-[#f7f1ea]/58" : "text-[#f7f1ea]/64"]) }, M(e.message), 3)])], 16, Bn)) : (w(), s("div", g({ key: 1 }, F(t), { class: ["pointer-events-none absolute z-[4]", e.surface === "grid" ? "inset-x-0 bottom-0 flex justify-center px-6" : "bottom-[1.8rem] left-1/2 -translate-x-1/2 max-[720px]:bottom-[1.3rem]"] }), [k(n.$slots, "default", {}, () => [c("span", {
2549
2549
  "data-testid": "vibe-empty-state-badge",
2550
2550
  "data-surface": e.surface,
2551
2551
  class: v(["inline-flex items-center border border-white/14 backdrop-blur-[18px]", e.surface === "grid" ? "bg-black/55 px-4 py-3 text-[0.82rem] font-medium tracking-[0.08em] text-[#f7f1ea]/72" : "w-auto bg-black/40 px-5 py-3 text-[0.82rem] font-medium tracking-[0.08em] text-[#f7f1ea]/74 max-[720px]:w-[calc(100%-2.5rem)] max-[720px]:justify-center"])
2552
- }, j(e.message), 11, zn)])], 16));
2552
+ }, M(e.message), 11, Vn)])], 16));
2553
2553
  }
2554
- }), Vn = { class: "relative h-full min-h-0 overflow-hidden bg-[#05060a] text-[#f7f1ea]" }, Hn = {
2554
+ }), Un = { class: "relative h-full min-h-0 overflow-hidden bg-[#05060a] text-[#f7f1ea]" }, Wn = {
2555
2555
  key: 0,
2556
2556
  class: "relative h-full min-h-0"
2557
- }, Un = [
2557
+ }, Gn = [
2558
2558
  "data-item-id",
2559
2559
  "data-occurrence-key",
2560
2560
  "data-index",
2561
2561
  "data-active",
2562
2562
  "aria-hidden"
2563
- ], Wn = {
2563
+ ], Kn = {
2564
2564
  key: 0,
2565
2565
  "data-testid": "vibe-asset-spinner",
2566
2566
  class: "pointer-events-none absolute inset-0 z-[2] grid place-items-center"
2567
- }, Gn = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, Kn = ["data-kind"], qn = { class: "grid justify-items-center gap-4 border border-white/14 bg-black/45 px-8 py-7 text-center backdrop-blur-[18px]" }, Jn = { class: "m-0 text-[0.82rem] font-bold uppercase tracking-[0.28em] text-[#f7f1ea]/70" }, Yn = ["onClick"], Xn = [
2567
+ }, qn = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, Jn = ["data-kind"], Yn = { class: "grid justify-items-center gap-4 border border-white/14 bg-black/45 px-8 py-7 text-center backdrop-blur-[18px]" }, Xn = { class: "m-0 text-[0.82rem] font-bold uppercase tracking-[0.28em] text-[#f7f1ea]/70" }, Zn = ["onClick"], Qn = [
2568
2568
  "src",
2569
2569
  "alt",
2570
2570
  "onLoad",
2571
2571
  "onError"
2572
- ], Zn = [
2572
+ ], $n = [
2573
2573
  "loop",
2574
2574
  "src",
2575
2575
  "preload",
@@ -2588,15 +2588,15 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2588
2588
  "onStalled",
2589
2589
  "onTimeupdate",
2590
2590
  "onWaiting"
2591
- ], Qn = { class: "relative grid aspect-square w-[clamp(320px,46vw,560px)] max-w-[calc(100vw-2.5rem)] place-items-center" }, $n = [
2591
+ ], er = { class: "relative grid aspect-square w-[clamp(320px,46vw,560px)] max-w-[calc(100vw-2.5rem)] place-items-center" }, tr = [
2592
2592
  "aria-label",
2593
2593
  "disabled",
2594
2594
  "onClick"
2595
- ], er = { class: "relative z-[1] inline-flex min-h-[4.25rem] min-w-[4.25rem] items-center justify-center border border-white/18 bg-emerald-500/12 p-4 backdrop-blur-[20px]" }, tr = { class: "pointer-events-none absolute bottom-4 right-4 inline-flex h-10 w-10 items-center justify-center border border-white/14 bg-black/50 backdrop-blur-[18px]" }, nr = {
2595
+ ], nr = { class: "relative z-[1] inline-flex min-h-[4.25rem] min-w-[4.25rem] items-center justify-center border border-white/18 bg-emerald-500/12 p-4 backdrop-blur-[20px]" }, rr = { class: "pointer-events-none absolute bottom-4 right-4 inline-flex h-10 w-10 items-center justify-center border border-white/14 bg-black/50 backdrop-blur-[18px]" }, ir = {
2596
2596
  key: 0,
2597
2597
  "data-testid": "vibe-asset-spinner",
2598
2598
  class: "pointer-events-none absolute inset-0 z-[3] grid place-items-center"
2599
- }, rr = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, ir = ["data-kind"], ar = { class: "m-0 text-[0.82rem] font-bold uppercase tracking-[0.28em] text-[#f7f1ea]/70" }, or = ["onClick"], sr = [
2599
+ }, ar = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, or = ["data-kind"], sr = { class: "m-0 text-[0.82rem] font-bold uppercase tracking-[0.28em] text-[#f7f1ea]/70" }, cr = ["onClick"], lr = [
2600
2600
  "src",
2601
2601
  "preload",
2602
2602
  "onCanplay",
@@ -2612,26 +2612,26 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2612
2612
  "onStalled",
2613
2613
  "onTimeupdate",
2614
2614
  "onWaiting"
2615
- ], cr = {
2615
+ ], ur = {
2616
2616
  key: 2,
2617
2617
  class: "relative z-[1] grid w-full max-w-[1100px] justify-items-center gap-6 px-[clamp(2rem,4vw,3rem)] py-[clamp(2rem,4vw,3rem)] text-center"
2618
- }, lr = { class: "inline-flex min-h-[4.25rem] min-w-[4.25rem] items-center justify-center border border-white/18 bg-white/8 p-4 backdrop-blur-[20px]" }, ur = {
2618
+ }, dr = { class: "inline-flex min-h-[4.25rem] min-w-[4.25rem] items-center justify-center border border-white/18 bg-white/8 p-4 backdrop-blur-[20px]" }, fr = {
2619
2619
  key: 0,
2620
2620
  "data-testid": "vibe-fullscreen-overlay",
2621
2621
  class: "pointer-events-none absolute inset-0 z-[6]"
2622
- }, dr = { class: "h-full w-full" }, fr = {
2622
+ }, pr = { class: "h-full w-full" }, mr = {
2623
2623
  key: 1,
2624
2624
  "data-testid": "vibe-forward-fill-placeholder",
2625
2625
  class: "grid h-full min-h-0 place-items-center px-6 text-center"
2626
- }, pr = { class: "grid justify-items-center gap-4 border border-white/14 bg-black/40 px-8 py-7 backdrop-blur-[18px]" }, mr = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)]" }, hr = { class: "m-0 text-[0.78rem] font-bold uppercase tracking-[0.24em] text-[#f7f1ea]/72" }, gr = {
2626
+ }, hr = { class: "grid justify-items-center gap-4 border border-white/14 bg-black/40 px-8 py-7 backdrop-blur-[18px]" }, gr = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)]" }, _r = { class: "m-0 text-[0.78rem] font-bold uppercase tracking-[0.24em] text-[#f7f1ea]/72" }, vr = {
2627
2627
  key: 0,
2628
2628
  "data-testid": "vibe-fullscreen-aside",
2629
2629
  class: "h-full min-h-0 overflow-hidden border-l border-white/10 bg-black/45 backdrop-blur-[18px]"
2630
- }, _r = { class: "h-full min-h-0 overflow-y-auto overscroll-y-contain" }, vr = {
2630
+ }, yr = { class: "h-full min-h-0 overflow-y-auto overscroll-y-contain" }, br = {
2631
2631
  key: 0,
2632
2632
  "data-testid": "vibe-fullscreen-aside",
2633
2633
  class: "absolute inset-y-0 right-0 z-[6] w-full max-w-[22rem] overflow-hidden border-l border-white/10 bg-black/82 backdrop-blur-[18px]"
2634
- }, yr = { class: "h-full min-h-0 overflow-y-auto overscroll-y-contain" }, br = 1280, xr = 768, Sr = /* @__PURE__ */ d({
2634
+ }, xr = { class: "h-full min-h-0 overflow-y-auto overscroll-y-contain" }, Sr = 1280, Cr = 768, wr = /* @__PURE__ */ d({
2635
2635
  __name: "FullscreenSurface",
2636
2636
  props: {
2637
2637
  active: {
@@ -2683,27 +2683,27 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2683
2683
  },
2684
2684
  emits: ["back-to-list", "update:activeIndex"],
2685
2685
  setup(e, { emit: n }) {
2686
- let d = e, f = F(), m = n, h = On(d, (e, t) => {
2686
+ let d = e, f = L(), m = n, h = An(d, (e, t) => {
2687
2687
  m("update:activeIndex", t);
2688
2688
  }, {
2689
- enabled: M(d, "active"),
2689
+ enabled: N(d, "active"),
2690
2690
  onAssetError: d.reportAssetError ?? void 0,
2691
2691
  onAssetLoad: d.reportAssetLoad ?? void 0
2692
- }), _ = D(typeof window > "u" ? br : window.innerWidth || br), C = $t({
2693
- active: M(d, "active"),
2692
+ }), _ = D(typeof window > "u" ? Sr : window.innerWidth || Sr), C = tn({
2693
+ active: N(d, "active"),
2694
2694
  items: h.items,
2695
2695
  resolvedActiveIndex: h.resolvedActiveIndex,
2696
2696
  viewer: h
2697
- }), T = i(() => Mn(h.activeItem.value?.type ?? "image")), { activeSlideToneStyle: E, activeStageToneStyle: P, updateFromImageElement: I } = Ln({
2697
+ }), T = i(() => Pn(h.activeItem.value?.type ?? "image")), { activeSlideToneStyle: E, activeStageToneStyle: j, updateFromImageElement: P } = zn({
2698
2698
  activeItem: h.activeItem,
2699
2699
  getItemKey: C.getItemKey,
2700
2700
  isImageReady: h.isImageReady,
2701
- showDominantImageTone: M(d, "showDominantImageTone")
2702
- }), L = Pn({
2701
+ showDominantImageTone: N(d, "showDominantImageTone")
2702
+ }), I = In({
2703
2703
  fullscreenMedia: C,
2704
- updateDominantToneFromImageElement: ve,
2704
+ updateDominantToneFromImageElement: _e,
2705
2705
  viewer: h
2706
- }), R = i(() => h.activeMediaItem.value && !h.activeAssetErrorKind.value ? "bottom-[5.8rem] max-[720px]:bottom-[7.4rem]" : "bottom-[1.8rem] max-[720px]:bottom-[1.3rem]"), ee = i(() => !!h.activeMediaItem.value && !h.activeAssetErrorKind.value), B = i(() => _.value < xr ? "vertical" : "horizontal"), V = i(() => ee.value ? "pb-[5.75rem] max-[720px]:pb-[7rem]" : ""), H = i(() => d.activeIndex >= d.items.length && (d.loading || d.hasNextPage)), U = i(() => d.hasNextPage ? "Loading more items" : h.statusMessage.value ?? "Loading more items"), W = i(() => {
2706
+ }), R = i(() => h.activeMediaItem.value && !h.activeAssetErrorKind.value ? "bottom-[5.8rem] max-[720px]:bottom-[7.4rem]" : "bottom-[1.8rem] max-[720px]:bottom-[1.3rem]"), z = i(() => !!h.activeMediaItem.value && !h.activeAssetErrorKind.value), ee = i(() => _.value < Cr ? "vertical" : "horizontal"), V = i(() => z.value ? "pb-[5.75rem] max-[720px]:pb-[7rem]" : ""), U = i(() => d.activeIndex >= d.items.length && (d.loading || d.hasNextPage)), te = i(() => d.hasNextPage ? "Loading more items" : h.statusMessage.value ?? "Loading more items"), W = i(() => {
2707
2707
  let e = h.activeItem.value;
2708
2708
  return e ? {
2709
2709
  hasNextPage: d.hasNextPage,
@@ -2713,46 +2713,46 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2713
2713
  paginationDetail: d.paginationDetail,
2714
2714
  total: d.items.length
2715
2715
  } : null;
2716
- }), ne = i(() => !W.value || !f["fullscreen-header-actions"] ? [] : f["fullscreen-header-actions"](W.value)), G = i(() => !W.value || !f["fullscreen-aside"] ? [] : f["fullscreen-aside"](W.value)), K = i(() => !d.showStatusBadges || !W.value || !h.statusKind.value || !h.statusMessage.value ? null : {
2716
+ }), G = i(() => !W.value || !f["fullscreen-header-actions"] ? [] : f["fullscreen-header-actions"](W.value)), K = i(() => !W.value || !f["fullscreen-aside"] ? [] : f["fullscreen-aside"](W.value)), q = i(() => !d.showStatusBadges || !W.value || !h.statusKind.value || !h.statusMessage.value ? null : {
2717
2717
  ...W.value,
2718
2718
  kind: h.statusKind.value,
2719
2719
  message: h.statusMessage.value
2720
- }), q = i(() => !K.value || !f["fullscreen-status"] ? [] : f["fullscreen-status"](K.value)), J = i(() => ({
2721
- gridTemplateColumns: ie.value ? "minmax(0, 1fr) 22rem" : "minmax(0, 1fr) 0rem",
2720
+ }), J = i(() => !q.value || !f["fullscreen-status"] ? [] : f["fullscreen-status"](q.value)), ne = i(() => ({
2721
+ gridTemplateColumns: re.value ? "minmax(0, 1fr) 22rem" : "minmax(0, 1fr) 0rem",
2722
2722
  transition: "grid-template-columns 320ms cubic-bezier(0.22, 1, 0.36, 1)"
2723
- })), Y = i(() => en(ne.value)), re = i(() => en(G.value)), ie = i(() => re.value && _.value >= br), ae = i(() => re.value && !ie.value), ue = i(() => en(q.value)), { emptyStateProps: X, showBadgeEmptyState: de, showCustomEmptyState: fe, showInlineEmptyState: pe } = rn({
2724
- emptyStateMode: M(d, "emptyStateMode"),
2723
+ })), Y = i(() => nn(G.value)), X = i(() => nn(K.value)), re = i(() => X.value && _.value >= Sr), ie = i(() => X.value && !re.value), ae = i(() => nn(J.value)), { emptyStateProps: Z, showBadgeEmptyState: ue, showCustomEmptyState: de, showInlineEmptyState: fe } = on({
2724
+ emptyStateMode: N(d, "emptyStateMode"),
2725
2725
  itemCount: i(() => d.items.length),
2726
- loading: M(d, "loading"),
2726
+ loading: N(d, "loading"),
2727
2727
  renderSlot: f["empty-state"],
2728
2728
  surface: "fullscreen"
2729
2729
  });
2730
2730
  S(() => {
2731
- window.addEventListener("resize", me);
2731
+ window.addEventListener("resize", pe);
2732
2732
  }), x(() => {
2733
- window.removeEventListener("resize", me);
2733
+ window.removeEventListener("resize", pe);
2734
2734
  });
2735
- function me() {
2736
- _.value = window.innerWidth || br;
2735
+ function pe() {
2736
+ _.value = window.innerWidth || Sr;
2737
2737
  }
2738
- function he(e, t) {
2739
- C.registerImageElement(e, t), h.registerImageElement(e, t), t instanceof HTMLImageElement && ve(e, t);
2738
+ function me(e, t) {
2739
+ C.registerImageElement(e, t), h.registerImageElement(e, t), t instanceof HTMLImageElement && _e(e, t);
2740
2740
  }
2741
- function ge(e, t) {
2741
+ function he(e, t) {
2742
2742
  C.registerMediaElement(e, t), h.registerVideoElement(e, t);
2743
2743
  }
2744
- function _e(e, t) {
2744
+ function ge(e, t) {
2745
2745
  C.registerMediaElement(e, t), h.registerAudioElement(e, t);
2746
2746
  }
2747
- function Z(e, t, n) {
2748
- let r = L.onFullscreenMediaEvent(e, t, n), i = n.currentTarget, a = typeof HTMLMediaElement > "u" ? 1 : HTMLMediaElement.HAVE_METADATA;
2747
+ function Q(e, t, n) {
2748
+ let r = I.onFullscreenMediaEvent(e, t, n), i = n.currentTarget, a = typeof HTMLMediaElement > "u" ? 1 : HTMLMediaElement.HAVE_METADATA;
2749
2749
  r && i instanceof HTMLMediaElement && i.readyState >= a && C.settleAssetPreload(r);
2750
2750
  }
2751
- function ve(e, t) {
2752
- I(e, t);
2751
+ function _e(e, t) {
2752
+ P(e, t);
2753
2753
  }
2754
- function ye(e, t, n) {
2755
- let r = L.getHandledItemKey(t, n);
2754
+ function ve(e, t, n) {
2755
+ let r = I.getHandledItemKey(t, n);
2756
2756
  if (!r || (h.onMediaEvent(r, e), !d.loopFullscreenVideo)) return;
2757
2757
  let i = e.currentTarget;
2758
2758
  if (!(i instanceof HTMLVideoElement)) return;
@@ -2762,182 +2762,182 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2762
2762
  let a = i.play();
2763
2763
  a && typeof a.catch == "function" && a.catch(() => {});
2764
2764
  }
2765
- return (e, n) => (w(), s("div", Vn, [
2765
+ return (e, n) => (w(), s("div", Un, [
2766
2766
  c("div", {
2767
2767
  class: v(["absolute inset-0 transition-[background] duration-200", T.value]),
2768
- style: b(N(P))
2768
+ style: b(F(j))
2769
2769
  }, null, 6),
2770
2770
  c("div", {
2771
2771
  class: "relative z-[1] grid h-full min-h-0",
2772
- style: b(J.value)
2772
+ style: b(ne.value)
2773
2773
  }, [c("div", {
2774
2774
  ref: "viewer.stageRef",
2775
2775
  "data-testid": "vibe-stage",
2776
2776
  class: "relative h-full min-h-0 touch-none overflow-hidden",
2777
- onPointerdown: n[1] ||= (...e) => N(h).onPointerDown && N(h).onPointerDown(...e),
2778
- onPointermove: n[2] ||= (...e) => N(h).onPointerMove && N(h).onPointerMove(...e),
2779
- onPointerup: n[3] ||= (...e) => N(h).onPointerUp && N(h).onPointerUp(...e),
2780
- onPointercancel: n[4] ||= (...e) => N(h).onPointerCancel && N(h).onPointerCancel(...e),
2781
- onWheel: n[5] ||= (...e) => N(h).onWheel && N(h).onWheel(...e)
2782
- }, [N(h).activeItem.value ? (w(), s("div", Hn, [
2783
- (w(!0), s(t, null, O(N(h).renderedItems.value, ({ item: r, index: i }) => (w(), s("article", {
2784
- key: N(C).getItemKey(r),
2777
+ onPointerdown: n[1] ||= (...e) => F(h).onPointerDown && F(h).onPointerDown(...e),
2778
+ onPointermove: n[2] ||= (...e) => F(h).onPointerMove && F(h).onPointerMove(...e),
2779
+ onPointerup: n[3] ||= (...e) => F(h).onPointerUp && F(h).onPointerUp(...e),
2780
+ onPointercancel: n[4] ||= (...e) => F(h).onPointerCancel && F(h).onPointerCancel(...e),
2781
+ onWheel: n[5] ||= (...e) => F(h).onWheel && F(h).onWheel(...e)
2782
+ }, [F(h).activeItem.value ? (w(), s("div", Wn, [
2783
+ (w(!0), s(t, null, O(F(h).renderedItems.value, ({ item: r, index: i }) => (w(), s("article", {
2784
+ key: F(C).getItemKey(r),
2785
2785
  "data-testid": "vibe-slide",
2786
2786
  "data-item-id": r.id,
2787
- "data-occurrence-key": N(C).getItemKey(r),
2787
+ "data-occurrence-key": F(C).getItemKey(r),
2788
2788
  "data-index": i,
2789
- "data-active": i === N(h).resolvedActiveIndex.value,
2790
- "aria-hidden": i === N(h).resolvedActiveIndex.value ? "false" : "true",
2791
- class: v(["absolute inset-0 flex h-full min-h-full items-center justify-center will-change-transform", i === N(h).resolvedActiveIndex.value ? "pointer-events-auto" : "pointer-events-none"]),
2792
- style: b(N(h).getSlideStyle(i))
2789
+ "data-active": i === F(h).resolvedActiveIndex.value,
2790
+ "aria-hidden": i === F(h).resolvedActiveIndex.value ? "false" : "true",
2791
+ class: v(["absolute inset-0 flex h-full min-h-full items-center justify-center will-change-transform", i === F(h).resolvedActiveIndex.value ? "pointer-events-auto" : "pointer-events-none"]),
2792
+ style: b(F(h).getSlideStyle(i))
2793
2793
  }, [c("div", {
2794
- class: v(["absolute inset-0 opacity-85", N(Nn)(r.type)]),
2795
- style: b(i === N(h).resolvedActiveIndex.value && r.type === "image" ? N(E) : void 0)
2796
- }, null, 6), N(h).isVisual(r) ? (w(), s("div", {
2794
+ class: v(["absolute inset-0 opacity-85", F(Fn)(r.type)]),
2795
+ style: b(i === F(h).resolvedActiveIndex.value && r.type === "image" ? F(E) : void 0)
2796
+ }, null, 6), F(h).isVisual(r) ? (w(), s("div", {
2797
2797
  key: 0,
2798
- class: v(["relative z-[1] flex h-full w-full items-center justify-center overflow-hidden", i === N(h).resolvedActiveIndex.value ? V.value : ""])
2799
- }, [N(C).isAssetLoading(i, r) ? (w(), s("div", Wn, [c("span", Gn, [u(N(oe), {
2798
+ class: v(["relative z-[1] flex h-full w-full items-center justify-center overflow-hidden", i === F(h).resolvedActiveIndex.value ? V.value : ""])
2799
+ }, [F(C).isAssetLoading(i, r) ? (w(), s("div", Kn, [c("span", qn, [u(F(oe), {
2800
2800
  class: "h-5 w-5 animate-spin stroke-[1.9] text-[#f7f1ea]/78",
2801
2801
  "aria-hidden": "true"
2802
- })])])) : o("", !0), N(C).isAssetErrored(i, r) ? (w(), s("div", {
2802
+ })])])) : o("", !0), F(C).isAssetErrored(i, r) ? (w(), s("div", {
2803
2803
  key: 1,
2804
2804
  "data-testid": "vibe-asset-error",
2805
- "data-kind": N(C).getAssetErrorKind(r),
2805
+ "data-kind": F(C).getAssetErrorKind(r),
2806
2806
  class: "grid h-full w-full place-items-center"
2807
- }, [c("div", qn, [
2808
- u(N(le), {
2807
+ }, [c("div", Yn, [
2808
+ u(F(le), {
2809
2809
  class: "h-7 w-7 stroke-[1.9] text-[#f7f1ea]/72",
2810
2810
  "aria-hidden": "true"
2811
2811
  }),
2812
- c("p", Jn, j(N(C).getAssetErrorLabel(r)), 1),
2813
- N(h).canRetryAsset(N(C).getItemKey(r)) ? (w(), s("button", {
2812
+ c("p", Xn, M(F(C).getAssetErrorLabel(r)), 1),
2813
+ F(h).canRetryAsset(F(C).getItemKey(r)) ? (w(), s("button", {
2814
2814
  key: 0,
2815
2815
  type: "button",
2816
2816
  class: "inline-flex items-center justify-center border border-white/14 bg-black/35 px-4 py-2 text-[0.64rem] font-bold uppercase tracking-[0.22em] text-[#f7f1ea]/82 backdrop-blur-[18px] transition hover:border-white/28 hover:bg-black/50",
2817
- onClick: te((e) => N(h).retryAsset(N(C).getItemKey(r)), ["stop"])
2818
- }, " Retry ", 8, Yn)) : o("", !0)
2819
- ])], 8, Kn)) : r.type === "image" ? (w(), s("img", {
2820
- key: N(h).getAssetRenderKey(N(C).getItemKey(r)),
2821
- src: N(C).getFullscreenImageSource(i, r),
2817
+ onClick: H((e) => F(h).retryAsset(F(C).getItemKey(r)), ["stop"])
2818
+ }, " Retry ", 8, Zn)) : o("", !0)
2819
+ ])], 8, Jn)) : r.type === "image" ? (w(), s("img", {
2820
+ key: F(h).getAssetRenderKey(F(C).getItemKey(r)),
2821
+ src: F(C).getFullscreenImageSource(i, r),
2822
2822
  alt: r.title ?? "",
2823
2823
  crossorigin: "anonymous",
2824
2824
  draggable: "false",
2825
- class: v(["block h-auto max-h-full w-auto max-w-full object-contain shadow-[0_40px_120px_-60px_rgba(0,0,0,0.9)] transition-opacity duration-300", N(h).isImageReady(N(C).getItemKey(r)) ? "opacity-100" : "opacity-0"]),
2825
+ class: v(["block h-auto max-h-full w-auto max-w-full object-contain shadow-[0_40px_120px_-60px_rgba(0,0,0,0.9)] transition-opacity duration-300", F(h).isImageReady(F(C).getItemKey(r)) ? "opacity-100" : "opacity-0"]),
2826
2826
  ref_for: !0,
2827
- ref: (e) => he(N(C).getItemKey(r), e),
2828
- onLoad: (e) => N(L).onFullscreenImageLoad(e, i, r),
2829
- onError: (e) => N(L).onFullscreenImageError(i, r)
2830
- }, null, 42, Xn)) : (w(), s("video", {
2831
- key: N(h).getAssetRenderKey(N(C).getItemKey(r)),
2832
- class: v(["block h-auto max-h-full w-auto max-w-full cursor-pointer object-contain shadow-[0_40px_120px_-60px_rgba(0,0,0,0.9)] transition-opacity duration-300", N(h).isMediaReady(N(C).getItemKey(r)) ? "opacity-100" : "opacity-0"]),
2827
+ ref: (e) => me(F(C).getItemKey(r), e),
2828
+ onLoad: (e) => F(I).onFullscreenImageLoad(e, i, r),
2829
+ onError: (e) => F(I).onFullscreenImageError(i, r)
2830
+ }, null, 42, Qn)) : (w(), s("video", {
2831
+ key: F(h).getAssetRenderKey(F(C).getItemKey(r)),
2832
+ class: v(["block h-auto max-h-full w-auto max-w-full cursor-pointer object-contain shadow-[0_40px_120px_-60px_rgba(0,0,0,0.9)] transition-opacity duration-300", F(h).isMediaReady(F(C).getItemKey(r)) ? "opacity-100" : "opacity-0"]),
2833
2833
  playsinline: "",
2834
2834
  loop: d.loopFullscreenVideo,
2835
- src: N(C).getFullscreenMediaSource(i, r),
2836
- preload: N(C).getFullscreenMediaPreload(i),
2835
+ src: F(C).getFullscreenMediaSource(i, r),
2836
+ preload: F(C).getFullscreenMediaPreload(i),
2837
2837
  ref_for: !0,
2838
- ref: (e) => ge(N(C).getItemKey(r), e),
2839
- onClick: te((e) => N(h).onVideoClick(e, N(C).getItemKey(r)), ["stop"]),
2840
- onCanplay: (e) => Z(i, r, e),
2841
- onDurationchange: (e) => Z(i, r, e),
2842
- onEnded: (e) => ye(e, i, r),
2843
- onError: (e) => N(L).onFullscreenMediaError(i, r),
2844
- onLoadstart: (e) => Z(i, r, e),
2845
- onLoadedmetadata: (e) => Z(i, r, e),
2846
- onPause: (e) => Z(i, r, e),
2847
- onPlay: (e) => Z(i, r, e),
2848
- onPlaying: (e) => Z(i, r, e),
2849
- onSeeking: (e) => Z(i, r, e),
2850
- onSeeked: (e) => Z(i, r, e),
2851
- onStalled: (e) => Z(i, r, e),
2852
- onTimeupdate: (e) => Z(i, r, e),
2853
- onWaiting: (e) => Z(i, r, e)
2854
- }, null, 42, Zn))], 2)) : N(h).isAudio(r) ? (w(), s("div", {
2838
+ ref: (e) => he(F(C).getItemKey(r), e),
2839
+ onClick: H((e) => F(h).onVideoClick(e, F(C).getItemKey(r)), ["stop"]),
2840
+ onCanplay: (e) => Q(i, r, e),
2841
+ onDurationchange: (e) => Q(i, r, e),
2842
+ onEnded: (e) => ve(e, i, r),
2843
+ onError: (e) => F(I).onFullscreenMediaError(i, r),
2844
+ onLoadstart: (e) => Q(i, r, e),
2845
+ onLoadedmetadata: (e) => Q(i, r, e),
2846
+ onPause: (e) => Q(i, r, e),
2847
+ onPlay: (e) => Q(i, r, e),
2848
+ onPlaying: (e) => Q(i, r, e),
2849
+ onSeeking: (e) => Q(i, r, e),
2850
+ onSeeked: (e) => Q(i, r, e),
2851
+ onStalled: (e) => Q(i, r, e),
2852
+ onTimeupdate: (e) => Q(i, r, e),
2853
+ onWaiting: (e) => Q(i, r, e)
2854
+ }, null, 42, $n))], 2)) : F(h).isAudio(r) ? (w(), s("div", {
2855
2855
  key: 1,
2856
- class: v(["relative z-[1] grid w-full max-w-[1100px] justify-items-center gap-6 px-[clamp(2rem,4vw,3rem)] py-[clamp(2rem,4vw,3rem)] text-center", i === N(h).resolvedActiveIndex.value ? V.value : ""])
2857
- }, [c("div", Qn, [
2856
+ class: v(["relative z-[1] grid w-full max-w-[1100px] justify-items-center gap-6 px-[clamp(2rem,4vw,3rem)] py-[clamp(2rem,4vw,3rem)] text-center", i === F(h).resolvedActiveIndex.value ? V.value : ""])
2857
+ }, [c("div", er, [
2858
2858
  c("button", {
2859
2859
  type: "button",
2860
2860
  class: "relative grid h-full w-full place-items-center border border-white/12 bg-[linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02)),radial-gradient(circle_at_center,rgba(16,185,129,0.14),transparent_58%)] text-[#f7f1ea] transition-[border-color,background] duration-200 hover:border-white/30 hover:bg-[linear-gradient(180deg,rgba(255,255,255,0.07),rgba(255,255,255,0.03)),radial-gradient(circle_at_center,rgba(16,185,129,0.18),transparent_58%)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-[#f7f1ea]",
2861
- "aria-label": N(h).mediaStates.value[N(C).getItemKey(r)]?.paused ?? !0 ? N(C).getMediaActionLabel("Play", r) : N(C).getMediaActionLabel("Pause", r),
2862
- disabled: !!N(C).getAssetErrorKind(r),
2863
- onClick: (e) => N(h).onAudioCoverClick(e, N(C).getItemKey(r))
2861
+ "aria-label": F(h).mediaStates.value[F(C).getItemKey(r)]?.paused ?? !0 ? F(C).getMediaActionLabel("Play", r) : F(C).getMediaActionLabel("Pause", r),
2862
+ disabled: !!F(C).getAssetErrorKind(r),
2863
+ onClick: (e) => F(h).onAudioCoverClick(e, F(C).getItemKey(r))
2864
2864
  }, [
2865
2865
  n[6] ||= c("span", { class: "pointer-events-none absolute inset-0 border border-white/8 bg-[radial-gradient(circle,rgba(16,185,129,0.16),transparent_66%)]" }, null, -1),
2866
2866
  n[7] ||= c("span", { class: "pointer-events-none absolute h-[clamp(220px,30vw,360px)] w-[clamp(220px,30vw,360px)] border border-white/8 bg-[radial-gradient(circle,rgba(255,255,255,0.08),transparent_62%)]" }, null, -1),
2867
- c("span", er, [k(e.$slots, "item-icon", {
2868
- icon: N(Vt)(r.type),
2867
+ c("span", nr, [k(e.$slots, "item-icon", {
2868
+ icon: F(Ut)(r.type),
2869
2869
  item: r
2870
- }, () => [(w(), a(A(N(Vt)(r.type)), {
2870
+ }, () => [(w(), a(A(F(Ut)(r.type)), {
2871
2871
  class: "h-6 w-6 stroke-[1.9]",
2872
2872
  "aria-hidden": "true"
2873
2873
  }))])]),
2874
- c("span", tr, [(w(), a(A(N(h).mediaStates.value[N(C).getItemKey(r)]?.paused ?? !0 ? N(ce) : N(se)), {
2874
+ c("span", rr, [(w(), a(A(F(h).mediaStates.value[F(C).getItemKey(r)]?.paused ?? !0 ? F(ce) : F(se)), {
2875
2875
  class: "h-4 w-4 stroke-2",
2876
2876
  "aria-hidden": "true"
2877
2877
  }))])
2878
- ], 8, $n),
2879
- N(C).isAssetLoading(i, r) ? (w(), s("div", nr, [c("span", rr, [u(N(oe), {
2878
+ ], 8, tr),
2879
+ F(C).isAssetLoading(i, r) ? (w(), s("div", ir, [c("span", ar, [u(F(oe), {
2880
2880
  class: "h-5 w-5 animate-spin stroke-[1.9] text-[#f7f1ea]/78",
2881
2881
  "aria-hidden": "true"
2882
2882
  })])])) : o("", !0),
2883
- N(C).getAssetErrorKind(r) ? (w(), s(t, { key: 1 }, [n[8] ||= c("div", { class: "pointer-events-none absolute inset-0 border border-white/8 bg-[radial-gradient(circle,rgba(239,68,68,0.12),transparent_66%)]" }, null, -1), c("div", {
2883
+ F(C).getAssetErrorKind(r) ? (w(), s(t, { key: 1 }, [n[8] ||= c("div", { class: "pointer-events-none absolute inset-0 border border-white/8 bg-[radial-gradient(circle,rgba(239,68,68,0.12),transparent_66%)]" }, null, -1), c("div", {
2884
2884
  "data-testid": "vibe-asset-error",
2885
- "data-kind": N(C).getAssetErrorKind(r),
2885
+ "data-kind": F(C).getAssetErrorKind(r),
2886
2886
  class: "relative z-[1] grid justify-items-center gap-4"
2887
2887
  }, [
2888
- u(N(le), {
2888
+ u(F(le), {
2889
2889
  class: "h-7 w-7 stroke-[1.9] text-[#f7f1ea]/72",
2890
2890
  "aria-hidden": "true"
2891
2891
  }),
2892
- c("p", ar, j(N(C).getAssetErrorLabel(r)), 1),
2893
- N(h).canRetryAsset(N(C).getItemKey(r)) ? (w(), s("button", {
2892
+ c("p", sr, M(F(C).getAssetErrorLabel(r)), 1),
2893
+ F(h).canRetryAsset(F(C).getItemKey(r)) ? (w(), s("button", {
2894
2894
  key: 0,
2895
2895
  type: "button",
2896
2896
  class: "pointer-events-auto inline-flex items-center justify-center border border-white/14 bg-black/35 px-4 py-2 text-[0.64rem] font-bold uppercase tracking-[0.22em] text-[#f7f1ea]/82 backdrop-blur-[18px] transition hover:border-white/28 hover:bg-black/50",
2897
- onClick: te((e) => N(h).retryAsset(N(C).getItemKey(r)), ["stop"])
2898
- }, " Retry ", 8, or)) : o("", !0)
2899
- ], 8, ir)], 64)) : o("", !0)
2897
+ onClick: H((e) => F(h).retryAsset(F(C).getItemKey(r)), ["stop"])
2898
+ }, " Retry ", 8, cr)) : o("", !0)
2899
+ ], 8, or)], 64)) : o("", !0)
2900
2900
  ]), (w(), s("audio", {
2901
- key: N(h).getAssetRenderKey(N(C).getItemKey(r)),
2902
- src: N(C).getFullscreenMediaSource(i, r),
2903
- preload: N(C).getFullscreenMediaPreload(i),
2901
+ key: F(h).getAssetRenderKey(F(C).getItemKey(r)),
2902
+ src: F(C).getFullscreenMediaSource(i, r),
2903
+ preload: F(C).getFullscreenMediaPreload(i),
2904
2904
  class: "pointer-events-none absolute h-px w-px opacity-0",
2905
2905
  ref_for: !0,
2906
- ref: (e) => _e(N(C).getItemKey(r), e),
2907
- onCanplay: (e) => Z(i, r, e),
2908
- onDurationchange: (e) => Z(i, r, e),
2909
- onError: (e) => N(L).onFullscreenMediaError(i, r),
2910
- onLoadstart: (e) => Z(i, r, e),
2911
- onLoadedmetadata: (e) => Z(i, r, e),
2912
- onPause: (e) => Z(i, r, e),
2913
- onPlay: (e) => Z(i, r, e),
2914
- onPlaying: (e) => Z(i, r, e),
2915
- onSeeking: (e) => Z(i, r, e),
2916
- onSeeked: (e) => Z(i, r, e),
2917
- onStalled: (e) => Z(i, r, e),
2918
- onTimeupdate: (e) => Z(i, r, e),
2919
- onWaiting: (e) => Z(i, r, e)
2920
- }, null, 40, sr))], 2)) : (w(), s("div", cr, [c("div", lr, [k(e.$slots, "item-icon", {
2921
- icon: N(Vt)(r.type),
2906
+ ref: (e) => ge(F(C).getItemKey(r), e),
2907
+ onCanplay: (e) => Q(i, r, e),
2908
+ onDurationchange: (e) => Q(i, r, e),
2909
+ onError: (e) => F(I).onFullscreenMediaError(i, r),
2910
+ onLoadstart: (e) => Q(i, r, e),
2911
+ onLoadedmetadata: (e) => Q(i, r, e),
2912
+ onPause: (e) => Q(i, r, e),
2913
+ onPlay: (e) => Q(i, r, e),
2914
+ onPlaying: (e) => Q(i, r, e),
2915
+ onSeeking: (e) => Q(i, r, e),
2916
+ onSeeked: (e) => Q(i, r, e),
2917
+ onStalled: (e) => Q(i, r, e),
2918
+ onTimeupdate: (e) => Q(i, r, e),
2919
+ onWaiting: (e) => Q(i, r, e)
2920
+ }, null, 40, lr))], 2)) : (w(), s("div", ur, [c("div", dr, [k(e.$slots, "item-icon", {
2921
+ icon: F(Ut)(r.type),
2922
2922
  item: r
2923
- }, () => [(w(), a(A(N(Vt)(r.type)), {
2923
+ }, () => [(w(), a(A(F(Ut)(r.type)), {
2924
2924
  class: "h-6 w-6 stroke-[1.9]",
2925
2925
  "aria-hidden": "true"
2926
- }))])])]))], 14, Un))), 128)),
2927
- W.value && f["fullscreen-overlay"] ? (w(), s("div", ur, [c("div", dr, [k(e.$slots, "fullscreen-overlay", y(p(W.value)))])])) : o("", !0),
2928
- N(h).activeItem.value ? (w(), a(Rt, {
2926
+ }))])])]))], 14, Gn))), 128)),
2927
+ W.value && f["fullscreen-overlay"] ? (w(), s("div", fr, [c("div", pr, [k(e.$slots, "fullscreen-overlay", y(p(W.value)))])])) : o("", !0),
2928
+ F(h).activeItem.value ? (w(), a(Bt, {
2929
2929
  key: 1,
2930
- "current-index": N(h).resolvedActiveIndex.value,
2930
+ "current-index": F(h).resolvedActiveIndex.value,
2931
2931
  loading: d.loading,
2932
- "pagination-detail": N(h).paginationDetail.value,
2932
+ "pagination-detail": F(h).paginationDetail.value,
2933
2933
  "show-back-to-list": d.showBackToList,
2934
- "show-end-badge": d.showEndBadge && N(h).isAtEnd.value && !N(h).hasNextPage.value && !N(h).loading.value,
2935
- title: N(h).activeItem.value.title ?? null,
2936
- total: N(h).items.value.length,
2934
+ "show-end-badge": d.showEndBadge && F(h).isAtEnd.value && !F(h).hasNextPage.value && !F(h).loading.value,
2935
+ title: F(h).activeItem.value.title ?? null,
2936
+ total: F(h).items.value.length,
2937
2937
  onBackToList: n[0] ||= (e) => m("back-to-list")
2938
2938
  }, l({ _: 2 }, [Y.value && W.value ? {
2939
2939
  name: "actions",
2940
- fn: z(() => [k(e.$slots, "fullscreen-header-actions", y(p(W.value)))]),
2940
+ fn: B(() => [k(e.$slots, "fullscreen-header-actions", y(p(W.value)))]),
2941
2941
  key: "0"
2942
2942
  } : void 0]), 1032, [
2943
2943
  "current-index",
@@ -2948,19 +2948,19 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2948
2948
  "title",
2949
2949
  "total"
2950
2950
  ])) : o("", !0),
2951
- ee.value ? (w(), a(Dt, {
2951
+ z.value ? (w(), a(kt, {
2952
2952
  key: 2,
2953
- "current-time": N(h).activeMediaState.value.currentTime,
2954
- "current-time-label": N(h).formatPlaybackTime(N(h).activeMediaState.value.currentTime),
2955
- duration: N(h).activeMediaDuration.value,
2956
- "duration-label": N(h).formatPlaybackTime(N(h).activeMediaDuration.value),
2957
- muted: N(h).activeMediaState.value.muted,
2958
- progress: N(h).activeMediaProgress.value,
2959
- volume: N(h).activeMediaState.value.volume,
2960
- "volume-control-layout": B.value,
2961
- onSeekInput: N(h).onMediaSeekInput,
2962
- onVolumeInput: N(h).onMediaVolumeInput,
2963
- onVolumeToggle: N(h).onMediaVolumeToggle
2953
+ "current-time": F(h).activeMediaState.value.currentTime,
2954
+ "current-time-label": F(h).formatPlaybackTime(F(h).activeMediaState.value.currentTime),
2955
+ duration: F(h).activeMediaDuration.value,
2956
+ "duration-label": F(h).formatPlaybackTime(F(h).activeMediaDuration.value),
2957
+ muted: F(h).activeMediaState.value.muted,
2958
+ progress: F(h).activeMediaProgress.value,
2959
+ volume: F(h).activeMediaState.value.volume,
2960
+ "volume-control-layout": ee.value,
2961
+ onSeekInput: F(h).onMediaSeekInput,
2962
+ onVolumeInput: F(h).onMediaVolumeInput,
2963
+ onVolumeToggle: F(h).onMediaVolumeToggle
2964
2964
  }, null, 8, [
2965
2965
  "current-time",
2966
2966
  "current-time-label",
@@ -2974,36 +2974,36 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
2974
2974
  "onVolumeInput",
2975
2975
  "onVolumeToggle"
2976
2976
  ])) : o("", !0),
2977
- K.value ? (w(), s("div", {
2977
+ q.value ? (w(), s("div", {
2978
2978
  key: 3,
2979
2979
  class: v(["absolute left-1/2 z-[4] -translate-x-1/2", R.value])
2980
- }, [ue.value ? k(e.$slots, "fullscreen-status", y(g({ key: 0 }, K.value))) : (w(), s("div", {
2980
+ }, [ae.value ? k(e.$slots, "fullscreen-status", y(g({ key: 0 }, q.value))) : (w(), s("div", {
2981
2981
  key: 1,
2982
2982
  "data-testid": "vibe-fullscreen-status-badge",
2983
- class: v(["inline-flex w-auto items-center border border-white/14 bg-black/40 px-5 py-3 text-[0.75rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74 backdrop-blur-[18px] max-[720px]:w-[calc(100%-2.5rem)] max-[720px]:justify-center", K.value.kind === "end" ? "border-amber-300/35 text-amber-200" : K.value.kind === "failed" ? "border-rose-400/45 text-rose-100" : ""])
2984
- }, j(K.value.message), 3))], 2)) : o("", !0)
2985
- ])) : H.value ? (w(), s("div", fr, [c("div", pr, [c("span", mr, [u(N(oe), {
2983
+ class: v(["inline-flex w-auto items-center border border-white/14 bg-black/40 px-5 py-3 text-[0.75rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/74 backdrop-blur-[18px] max-[720px]:w-[calc(100%-2.5rem)] max-[720px]:justify-center", q.value.kind === "end" ? "border-amber-300/35 text-amber-200" : q.value.kind === "failed" ? "border-rose-400/45 text-rose-100" : ""])
2984
+ }, M(q.value.message), 3))], 2)) : o("", !0)
2985
+ ])) : U.value ? (w(), s("div", mr, [c("div", hr, [c("span", gr, [u(F(oe), {
2986
2986
  class: "h-5 w-5 animate-spin stroke-[1.9] text-[#f7f1ea]/78",
2987
2987
  "aria-hidden": "true"
2988
- })]), c("p", hr, j(U.value), 1)])])) : N(pe) && N(X) ? (w(), a(Bn, {
2988
+ })]), c("p", _r, M(te.value), 1)])])) : F(fe) && F(Z) ? (w(), a(Hn, {
2989
2989
  key: 2,
2990
- message: N(X).message,
2991
- mode: N(X).mode,
2992
- surface: N(X).surface
2990
+ message: F(Z).message,
2991
+ mode: F(Z).mode,
2992
+ surface: F(Z).surface
2993
2993
  }, {
2994
- default: z(() => [N(fe) ? k(e.$slots, "empty-state", y(g({ key: 0 }, N(X)))) : o("", !0)]),
2994
+ default: B(() => [F(de) ? k(e.$slots, "empty-state", y(g({ key: 0 }, F(Z)))) : o("", !0)]),
2995
2995
  _: 3
2996
2996
  }, 8, [
2997
2997
  "message",
2998
2998
  "mode",
2999
2999
  "surface"
3000
- ])) : o("", !0), N(de) && N(X) ? (w(), a(Bn, {
3000
+ ])) : o("", !0), F(ue) && F(Z) ? (w(), a(Hn, {
3001
3001
  key: 3,
3002
- message: N(X).message,
3003
- mode: N(X).mode,
3004
- surface: N(X).surface
3002
+ message: F(Z).message,
3003
+ mode: F(Z).mode,
3004
+ surface: F(Z).surface
3005
3005
  }, {
3006
- default: z(() => [N(fe) ? k(e.$slots, "empty-state", y(g({ key: 0 }, N(X)))) : o("", !0)]),
3006
+ default: B(() => [F(de) ? k(e.$slots, "empty-state", y(g({ key: 0 }, F(Z)))) : o("", !0)]),
3007
3007
  _: 3
3008
3008
  }, 8, [
3009
3009
  "message",
@@ -3017,7 +3017,7 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
3017
3017
  "leave-from-class": "translate-x-0 opacity-100",
3018
3018
  "leave-to-class": "translate-x-full opacity-0"
3019
3019
  }, {
3020
- default: z(() => [ie.value && W.value ? (w(), s("aside", gr, [c("div", _r, [k(e.$slots, "fullscreen-aside", y(p(W.value)))])])) : o("", !0)]),
3020
+ default: B(() => [re.value && W.value ? (w(), s("aside", vr, [c("div", yr, [k(e.$slots, "fullscreen-aside", y(p(W.value)))])])) : o("", !0)]),
3021
3021
  _: 3
3022
3022
  })], 4),
3023
3023
  u(r, {
@@ -3028,29 +3028,29 @@ var Rn = ["data-surface"], zn = ["data-surface"], Bn = /* @__PURE__ */ d({
3028
3028
  "leave-from-class": "translate-x-0 opacity-100",
3029
3029
  "leave-to-class": "translate-x-full opacity-0"
3030
3030
  }, {
3031
- default: z(() => [ae.value && W.value ? (w(), s("aside", vr, [c("div", yr, [k(e.$slots, "fullscreen-aside", y(p(W.value)))])])) : o("", !0)]),
3031
+ default: B(() => [ie.value && W.value ? (w(), s("aside", br, [c("div", xr, [k(e.$slots, "fullscreen-aside", y(p(W.value)))])])) : o("", !0)]),
3032
3032
  _: 3
3033
3033
  })
3034
3034
  ]));
3035
3035
  }
3036
- }), Cr = 1, wr = .5;
3037
- function Tr(e) {
3036
+ }), Tr = 1, Er = .5;
3037
+ function Dr(e) {
3038
3038
  if (e.type !== "image" && e.type !== "video") return {
3039
- width: Cr,
3040
- height: Cr,
3039
+ width: Tr,
3040
+ height: Tr,
3041
3041
  source: "fallback"
3042
3042
  };
3043
3043
  let t = e.preview?.width, n = e.preview?.height;
3044
- if (jr(t) && jr(n)) {
3045
- let r = Mr(e, t, n);
3044
+ if (Ir(t) && Ir(n)) {
3045
+ let r = Lr(e, t, n);
3046
3046
  return {
3047
3047
  width: r.width,
3048
3048
  height: r.height,
3049
3049
  source: "preview"
3050
3050
  };
3051
3051
  }
3052
- if (jr(e.width) && jr(e.height)) {
3053
- let t = Mr(e, e.width, e.height);
3052
+ if (Ir(e.width) && Ir(e.height)) {
3053
+ let t = Lr(e, e.width, e.height);
3054
3054
  return {
3055
3055
  width: t.width,
3056
3056
  height: t.height,
@@ -3058,50 +3058,70 @@ function Tr(e) {
3058
3058
  };
3059
3059
  }
3060
3060
  return {
3061
- width: Cr,
3062
- height: Cr,
3061
+ width: Tr,
3062
+ height: Tr,
3063
3063
  source: "fallback"
3064
3064
  };
3065
3065
  }
3066
- function Er(e, t) {
3066
+ function Or(e, t) {
3067
3067
  return !e || e <= 0 || !t || t <= 0 ? 1 : Math.max(1, Math.floor(e / t));
3068
3068
  }
3069
- function Dr(e, t, n, r = 0) {
3069
+ function kr(e, t, n, r = 0) {
3070
3070
  if (!e || e <= 0 || !t || t <= 0) return n;
3071
3071
  let i = typeof r == "number" && r > 0 ? r : 0, a = e - Math.max(0, t - 1) * i;
3072
3072
  return !a || a <= 0 ? n : a / t;
3073
3073
  }
3074
- function Or(e, t) {
3075
- let n = Tr(e);
3074
+ function Ar(e, t) {
3075
+ let n = Dr(e);
3076
3076
  return n.height / n.width * t;
3077
3077
  }
3078
- function kr(e, t) {
3079
- let n = Array.from({ length: t.columnCount }, () => 0), r = Array(e.length), i = Array(e.length), a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Map(), s = 0;
3080
- for (let c = 0; c < e.length; c += 1) {
3081
- let l = e[c];
3082
- o.set(Q(l), c);
3083
- let u = 0;
3084
- for (let e = 1; e < n.length; e += 1) n[e] < n[u] && (u = e);
3085
- let d = u * (t.columnWidth + t.gapX), f = n[u], p = Or(l, t.columnWidth);
3086
- r[c] = {
3087
- x: d,
3088
- y: f
3089
- }, i[c] = p, n[u] = f + p + t.gapY, s = Math.max(s, f + p);
3090
- let m = Math.floor(f / t.bucketPx), h = Math.floor((f + p) / t.bucketPx);
3091
- for (let e = m; e <= h; e += 1) {
3092
- let t = a.get(e);
3093
- t ? t.push(c) : a.set(e, [c]);
3078
+ function jr(e, t) {
3079
+ let n = Array.from({ length: t.columnCount }, () => 0), r = {
3080
+ positions: Array(e.length),
3081
+ heights: Array(e.length),
3082
+ buckets: /* @__PURE__ */ new Map(),
3083
+ contentHeight: 0,
3084
+ indexById: /* @__PURE__ */ new Map(),
3085
+ columnHeights: n
3086
+ };
3087
+ return Mr(r, e, {
3088
+ ...t,
3089
+ startIndex: 0
3090
+ }), r;
3091
+ }
3092
+ function Mr(e, t, n) {
3093
+ for (let r = 0; r < t.length; r += 1) {
3094
+ let i = t[r], a = n.startIndex + r;
3095
+ e.indexById.set($(i), a);
3096
+ let o = 0;
3097
+ for (let t = 1; t < e.columnHeights.length; t += 1) e.columnHeights[t] < e.columnHeights[o] && (o = t);
3098
+ let s = o * (n.columnWidth + n.gapX), c = e.columnHeights[o], l = Ar(i, n.columnWidth);
3099
+ e.positions[a] = {
3100
+ x: s + (n.positionOffsetX ?? 0),
3101
+ y: c + (n.positionOffsetY ?? 0)
3102
+ }, e.heights[a] = l, e.columnHeights[o] = c + l + n.gapY, e.contentHeight = Math.max(e.contentHeight, c + l);
3103
+ let u = Math.floor(c / n.bucketPx), d = Math.floor((c + l) / n.bucketPx);
3104
+ for (let t = u; t <= d; t += 1) {
3105
+ let n = e.buckets.get(t);
3106
+ n ? e.buckets.set(t, [...n, a]) : e.buckets.set(t, [a]);
3094
3107
  }
3095
3108
  }
3096
- return {
3097
- positions: r,
3098
- heights: i,
3099
- buckets: a,
3100
- contentHeight: s,
3101
- indexById: o
3102
- };
3109
+ return e;
3103
3110
  }
3104
- function Ar(e) {
3111
+ function Nr(e, t) {
3112
+ let n = [...t.columnHeights], r = t.contentHeight;
3113
+ for (let i of e) {
3114
+ let e = 0;
3115
+ for (let t = 1; t < n.length; t += 1) n[t] < n[e] && (e = t);
3116
+ let a = n[e], o = Ar(i, t.columnWidth);
3117
+ n[e] = a + o + t.gapY, r = Math.max(r, a + o);
3118
+ }
3119
+ return r;
3120
+ }
3121
+ function Pr(e) {
3122
+ return e.addedItems.length === 0 || e.removedItemCount > 0 || e.isPrepend || e.previousItems.length === 0 || e.layoutItemCount !== e.previousItems.length || e.columnHeights.length !== e.columnCount || e.currentItems.length !== e.previousItems.length + e.addedItems.length ? !1 : e.previousItems.every((t, n) => $(t) === $(e.currentItems[n]));
3123
+ }
3124
+ function Fr(e) {
3105
3125
  if (e.itemCount <= 0) return [];
3106
3126
  if (e.viewportHeight <= 0) return Array.from({ length: e.itemCount }, (e, t) => t);
3107
3127
  let t = Math.max(0, e.scrollTop - e.overscanPx), n = e.scrollTop + e.viewportHeight + e.overscanPx, r = Math.floor(t / e.bucketPx), i = Math.floor(n / e.bucketPx), a = /* @__PURE__ */ new Set();
@@ -3111,11 +3131,11 @@ function Ar(e) {
3111
3131
  }
3112
3132
  return Array.from(a).sort((e, t) => e - t);
3113
3133
  }
3114
- function jr(e) {
3134
+ function Ir(e) {
3115
3135
  return typeof e == "number" && Number.isFinite(e) && e > 0;
3116
3136
  }
3117
- function Mr(e, t, n) {
3118
- return e.type !== "image" || n / t >= wr ? {
3137
+ function Lr(e, t, n) {
3138
+ return e.type !== "image" || n / t >= Er ? {
3119
3139
  width: t,
3120
3140
  height: n
3121
3141
  } : {
@@ -3124,47 +3144,113 @@ function Mr(e, t, n) {
3124
3144
  };
3125
3145
  }
3126
3146
  //#endregion
3147
+ //#region src/components/viewer-core/masonryLayoutState.ts
3148
+ function Rr(e) {
3149
+ let t = j([]), n = j([]), r = j(/* @__PURE__ */ new Map()), i = j(0), a = j(/* @__PURE__ */ new Map()), o = j([]);
3150
+ function s(s, c, l) {
3151
+ let u = jr(s, {
3152
+ columnCount: c,
3153
+ columnWidth: l,
3154
+ gapX: e.gapPx,
3155
+ gapY: e.gapPx,
3156
+ bucketPx: e.bucketPx
3157
+ });
3158
+ t.value = u.positions.map(d), n.value = u.heights, r.value = u.buckets, i.value = u.contentHeight, a.value = u.indexById, o.value = u.columnHeights;
3159
+ }
3160
+ function c(s, c, l, d) {
3161
+ i.value = Mr(u(), s, {
3162
+ columnCount: l,
3163
+ columnWidth: d,
3164
+ gapX: e.gapPx,
3165
+ gapY: e.gapPx,
3166
+ bucketPx: e.bucketPx,
3167
+ startIndex: c,
3168
+ positionOffsetX: e.contentInsetPx,
3169
+ positionOffsetY: e.contentInsetPx
3170
+ }).contentHeight, P(t), P(n), P(r), P(a), P(o);
3171
+ }
3172
+ function l(e, n, r, i) {
3173
+ return Pr({
3174
+ addedItems: r.addedItems,
3175
+ columnCount: i,
3176
+ columnHeights: o.value,
3177
+ currentItems: e,
3178
+ isPrepend: r.isPrepend,
3179
+ layoutItemCount: t.value.length,
3180
+ previousItems: n,
3181
+ removedItemCount: r.removedItems.length
3182
+ });
3183
+ }
3184
+ function u() {
3185
+ return {
3186
+ positions: t.value,
3187
+ heights: n.value,
3188
+ buckets: r.value,
3189
+ contentHeight: i.value,
3190
+ indexById: a.value,
3191
+ columnHeights: o.value
3192
+ };
3193
+ }
3194
+ function d(t) {
3195
+ return {
3196
+ x: t.x + e.contentInsetPx,
3197
+ y: t.y + e.contentInsetPx
3198
+ };
3199
+ }
3200
+ return {
3201
+ append: c,
3202
+ buckets: r,
3203
+ canAppend: l,
3204
+ columnHeights: o,
3205
+ contentHeight: i,
3206
+ heights: n,
3207
+ indexById: a,
3208
+ positions: t,
3209
+ rebuild: s
3210
+ };
3211
+ }
3212
+ //#endregion
3127
3213
  //#region src/components/viewer-core/useMasonryMotion.ts
3128
- var Nr = 300, Pr = 600, Fr = 40, Ir = 300, Lr = 400;
3129
- function Rr(e, t) {
3214
+ var zr = 300, Br = 600, Vr = 40, Hr = 300, Ur = 400;
3215
+ function Wr(e, t) {
3130
3216
  return t === "top" ? [...e].reverse() : e;
3131
3217
  }
3132
- function zr(e) {
3133
- return e <= 0 ? Pr : Pr + Math.min((e - 1) * Fr, Lr);
3218
+ function Gr(e) {
3219
+ return e <= 0 ? Br : Br + Math.min((e - 1) * Vr, Ur);
3134
3220
  }
3135
- function Br() {
3136
- return Ir;
3221
+ function Kr() {
3222
+ return Hr;
3137
3223
  }
3138
- function Vr(e) {
3224
+ function qr(e) {
3139
3225
  let t = e.itemHeight > 0 ? e.itemHeight : e.columnWidth;
3140
3226
  return e.direction === "top" ? e.scrollTop - t : e.scrollTop + e.viewportHeight + t;
3141
3227
  }
3142
- function Hr(e) {
3228
+ function Jr(e) {
3143
3229
  let t = D(/* @__PURE__ */ new Set()), n = D(/* @__PURE__ */ new Set()), r = D(/* @__PURE__ */ new Map()), a = D(/* @__PURE__ */ new Map()), o = D(/* @__PURE__ */ new Map()), s = D(/* @__PURE__ */ new Set()), c = D(/* @__PURE__ */ new Map()), l = D(/* @__PURE__ */ new Map()), u = D(/* @__PURE__ */ new Set()), d = /* @__PURE__ */ new Set(), f = /* @__PURE__ */ new Set(), p = i(() => Array.from(o.value.values()));
3144
- L(e.visibleIndices, (i) => {
3230
+ z(e.visibleIndices, (i) => {
3145
3231
  if (!i.length) return;
3146
3232
  let o = [];
3147
3233
  for (let n of i) {
3148
- let r = e.items.value[n] ? Q(e.items.value[n]) : null;
3234
+ let r = e.items.value[n] ? $(e.items.value[n]) : null;
3149
3235
  !r || !t.value.has(r) || d.has(r) || (d.add(r), o.push(r));
3150
3236
  }
3151
3237
  if (!o.length) return;
3152
- let s = Rr(o, a.value.get(o[0]) ?? "bottom"), c = new Map(r.value);
3153
- for (let e = 0; e < s.length; e += 1) c.set(s[e], Math.min(e * Fr, Lr));
3154
- r.value = c, Ur(() => {
3238
+ let s = Wr(o, a.value.get(o[0]) ?? "bottom"), c = new Map(r.value);
3239
+ for (let e = 0; e < s.length; e += 1) c.set(s[e], Math.min(e * Vr, Ur));
3240
+ r.value = c, Yr(() => {
3155
3241
  let e = new Set(n.value);
3156
3242
  for (let t of o) e.add(t);
3157
3243
  n.value = e;
3158
- }), Wr(() => {
3244
+ }), Xr(() => {
3159
3245
  let e = new Set(t.value);
3160
3246
  for (let t of o) e.delete(t);
3161
3247
  t.value = e, S(() => {
3162
3248
  let e = new Set(n.value), t = new Map(r.value), i = new Map(a.value);
3163
3249
  for (let n of o) e.delete(n), t.delete(n), i.delete(n), d.delete(n);
3164
3250
  n.value = e, r.value = t, a.value = i;
3165
- }, zr(o.length));
3251
+ }, Gr(o.length));
3166
3252
  });
3167
- }, { flush: "post" }), L(() => e.items.value.map((e) => Q(e)), (e) => {
3253
+ }, { flush: "post" }), z(() => e.items.value.map((e) => $(e)), (e) => {
3168
3254
  if (!e.length || !o.value.size) return;
3169
3255
  let t = new Set(e), n = null, r = null;
3170
3256
  for (let e of o.value.keys()) t.has(e) && (n ||= new Map(o.value), r ||= new Set(s.value), n.delete(e), r.delete(e));
@@ -3177,7 +3263,7 @@ function Hr(e) {
3177
3263
  if (!e.length) return;
3178
3264
  let r = new Set(t.value), i = new Map(a.value);
3179
3265
  for (let t of e) {
3180
- let e = Q(t);
3266
+ let e = $(t);
3181
3267
  r.add(e), i.set(e, n);
3182
3268
  }
3183
3269
  t.value = r, a.value = i;
@@ -3186,10 +3272,10 @@ function Hr(e) {
3186
3272
  if (!e.length) return;
3187
3273
  let i = new Map(o.value), c = new Set(t.value), l = new Set(n.value), u = new Map(r.value), f = new Map(a.value), p = [];
3188
3274
  for (let t of e) {
3189
- let e = Q(t.item);
3275
+ let e = $(t.item);
3190
3276
  p.push(e), i.set(e, t), c.delete(e), l.delete(e), u.delete(e), f.delete(e), d.delete(e);
3191
3277
  }
3192
- o.value = i, t.value = c, n.value = l, r.value = u, a.value = f, Ur(() => {
3278
+ o.value = i, t.value = c, n.value = l, r.value = u, a.value = f, Yr(() => {
3193
3279
  let e = new Set(s.value);
3194
3280
  for (let t of p) e.add(t);
3195
3281
  s.value = e;
@@ -3197,9 +3283,9 @@ function Hr(e) {
3197
3283
  let e = new Map(o.value), t = new Set(s.value);
3198
3284
  for (let n of p) e.delete(n), t.delete(n);
3199
3285
  o.value = e, s.value = t;
3200
- }, Ir);
3286
+ }, Hr);
3201
3287
  }
3202
- function g(t, n, r = Nr) {
3288
+ function g(t, n, r = zr) {
3203
3289
  if (!t.size) return;
3204
3290
  let i = /* @__PURE__ */ new Map(), a = [];
3205
3291
  for (let [r, o] of t.entries()) {
@@ -3218,8 +3304,8 @@ function Hr(e) {
3218
3304
  c.value = i, u.value = /* @__PURE__ */ new Set();
3219
3305
  let o = new Map(l.value);
3220
3306
  for (let e of a) o.set(e, r);
3221
- l.value = o, Ur(() => {
3222
- u.value = new Set(a), Ur(() => {
3307
+ l.value = o, Yr(() => {
3308
+ u.value = new Set(a), Yr(() => {
3223
3309
  c.value = /* @__PURE__ */ new Map();
3224
3310
  });
3225
3311
  }), S(() => {
@@ -3230,8 +3316,8 @@ function Hr(e) {
3230
3316
  }, r);
3231
3317
  }
3232
3318
  function _(e) {
3233
- if (n.value.has(e)) return `transform ${Pr}ms ease-out`;
3234
- if (u.value.has(e)) return `transform ${l.value.get(e) ?? Nr}ms ease-out`;
3319
+ if (n.value.has(e)) return `transform ${Br}ms ease-out`;
3320
+ if (u.value.has(e)) return `transform ${l.value.get(e) ?? zr}ms ease-out`;
3235
3321
  }
3236
3322
  function v(e) {
3237
3323
  if (!n.value.has(e)) return;
@@ -3242,13 +3328,13 @@ function Hr(e) {
3242
3328
  let r = e.items.value[n], i = e.positions.value[n] ?? {
3243
3329
  x: 0,
3244
3330
  y: 0
3245
- }, o = e.heights.value[n] ?? e.columnWidth.value, s = r ? Q(r) : null, l = s ? c.value.get(s) ?? {
3331
+ }, o = e.heights.value[n] ?? e.columnWidth.value, s = r ? $(r) : null, l = s ? c.value.get(s) ?? {
3246
3332
  dx: 0,
3247
3333
  dy: 0
3248
3334
  } : {
3249
3335
  dx: 0,
3250
3336
  dy: 0
3251
- }, u = s ? a.value.get(s) ?? "bottom" : "bottom", d = s && t.value.has(s) ? Vr({
3337
+ }, u = s ? a.value.get(s) ?? "bottom" : "bottom", d = s && t.value.has(s) ? qr({
3252
3338
  columnWidth: e.columnWidth.value,
3253
3339
  direction: u,
3254
3340
  itemHeight: o,
@@ -3258,18 +3344,18 @@ function Hr(e) {
3258
3344
  return `translate3d(${i.x + l.dx}px, ${d + l.dy}px, 0)`;
3259
3345
  }
3260
3346
  function b(t) {
3261
- let n = Q(t), r = o.value.get(n);
3347
+ let n = $(t), r = o.value.get(n);
3262
3348
  if (!r) return {
3263
3349
  opacity: "0",
3264
3350
  transform: "translate3d(0, 0, 0) scale(0.96)",
3265
- transition: `opacity ${Ir}ms ease-out, transform ${Ir}ms ease-out`
3351
+ transition: `opacity ${Hr}ms ease-out, transform ${Hr}ms ease-out`
3266
3352
  };
3267
3353
  let i = s.value.has(n);
3268
3354
  return {
3269
3355
  height: `${r.height}px`,
3270
3356
  opacity: i ? "0" : "1",
3271
3357
  transform: `translate3d(${r.position.x}px, ${r.position.y}px, 0) scale(${i ? "0.96" : "1"})`,
3272
- transition: `opacity ${Ir}ms ease-out, transform ${Ir}ms ease-out`,
3358
+ transition: `opacity ${Hr}ms ease-out, transform ${Hr}ms ease-out`,
3273
3359
  width: `${e.columnWidth.value}px`
3274
3360
  };
3275
3361
  }
@@ -3290,28 +3376,28 @@ function Hr(e) {
3290
3376
  playFlipMoveAnimation: g
3291
3377
  };
3292
3378
  }
3293
- function Ur(e) {
3379
+ function Yr(e) {
3294
3380
  if (typeof requestAnimationFrame == "function") {
3295
3381
  requestAnimationFrame(() => e());
3296
3382
  return;
3297
3383
  }
3298
3384
  setTimeout(e, 0);
3299
3385
  }
3300
- function Wr(e) {
3301
- Ur(() => Ur(e));
3386
+ function Xr(e) {
3387
+ Yr(() => Yr(e));
3302
3388
  }
3303
3389
  //#endregion
3304
3390
  //#region src/components/viewer-core/masonryViewport.ts
3305
- function Gr(e, t) {
3391
+ function Zr(e, t) {
3306
3392
  return e?.clientHeight || Math.round(e?.getBoundingClientRect().height ?? 0) || t || window.innerHeight || 1;
3307
3393
  }
3308
- function Kr(e, t, n) {
3394
+ function Qr(e, t, n) {
3309
3395
  return e?.clientWidth || Math.round(e?.getBoundingClientRect().width ?? 0) || t || window.innerWidth || n;
3310
3396
  }
3311
- function qr(e, t, n, r) {
3397
+ function $r(e, t, n, r) {
3312
3398
  return Math.max(e?.scrollHeight ?? 0, r) - (t + n);
3313
3399
  }
3314
- function Jr(e, t) {
3400
+ function ei(e, t) {
3315
3401
  return {
3316
3402
  height: `${e}px`,
3317
3403
  transform: `translate3d(0, ${t}px, 0)`
@@ -3319,11 +3405,11 @@ function Jr(e, t) {
3319
3405
  }
3320
3406
  //#endregion
3321
3407
  //#region src/components/viewer-core/masonryScrollBehavior.ts
3322
- var Yr = 24, Xr = 48;
3323
- function Zr(e) {
3408
+ var ti = 24, ni = 48;
3409
+ function ri(e) {
3324
3410
  let t = D(0), n = 0, r = 0;
3325
3411
  function i(e) {
3326
- if (t.value = ni(e), t.value <= 0) {
3412
+ if (t.value = ci(e), t.value <= 0) {
3327
3413
  o();
3328
3414
  return;
3329
3415
  }
@@ -3343,7 +3429,7 @@ function Zr(e) {
3343
3429
  let s = e.getViewport();
3344
3430
  if (s && r > 0) {
3345
3431
  let n = Math.min(Math.max(0, i - r), 250), a = t.value * n / 1e3;
3346
- s.scrollTop = ri(s.scrollTop + a, 0, e.getMaxScrollTop()), e.onScroll();
3432
+ s.scrollTop = li(s.scrollTop + a, 0, e.getMaxScrollTop()), e.onScroll();
3347
3433
  }
3348
3434
  r = i, a();
3349
3435
  }
@@ -3353,44 +3439,44 @@ function Zr(e) {
3353
3439
  stop: o
3354
3440
  };
3355
3441
  }
3356
- function Qr(e) {
3442
+ function ii(e) {
3357
3443
  if (!e.active || !e.triggerEnabled) return 0;
3358
3444
  let t = Math.max(0, e.maxScrollTop - e.thresholdPx);
3359
- return t <= 0 ? 1 : ri(1 - (e.progressDistancePx - e.thresholdPx) / t, 0, 1);
3445
+ return t <= 0 ? 1 : li(1 - (e.progressDistancePx - e.thresholdPx) / t, 0, 1);
3360
3446
  }
3361
- function $r(e) {
3447
+ function ai(e) {
3362
3448
  if (!e.active || !e.triggerEnabled) return 0;
3363
3449
  let t = Math.max(0, e.maxScrollTop - e.thresholdPx);
3364
- return t <= 0 ? 1 : ri(e.progressDistancePx / t, 0, 1);
3450
+ return t <= 0 ? 1 : li(e.progressDistancePx / t, 0, 1);
3365
3451
  }
3366
- function ei(e) {
3367
- let t = i(() => Math.max(0, e.viewportHeight.value - Yr * 2)), n = i(() => e.containerHeight.value > e.viewportHeight.value + 1 && t.value > 0), r = i(() => {
3452
+ function oi(e) {
3453
+ let t = i(() => Math.max(0, e.viewportHeight.value - ti * 2)), n = i(() => e.containerHeight.value > e.viewportHeight.value + 1 && t.value > 0), r = i(() => {
3368
3454
  if (!n.value) return 0;
3369
3455
  let r = e.viewportHeight.value / e.containerHeight.value * t.value;
3370
- return Math.min(t.value, Math.max(Xr, r));
3456
+ return Math.min(t.value, Math.max(ni, r));
3371
3457
  }), a = i(() => {
3372
- if (!n.value) return Yr;
3458
+ if (!n.value) return ti;
3373
3459
  let i = Math.max(0, e.containerHeight.value - e.viewportHeight.value);
3374
- return Yr + Math.max(0, t.value - r.value) * (i > 0 ? ri(e.scrollTop.value / i, 0, 1) : 0);
3460
+ return ti + Math.max(0, t.value - r.value) * (i > 0 ? li(e.scrollTop.value / i, 0, 1) : 0);
3375
3461
  });
3376
3462
  return {
3377
- getScrollbarThumbStyle: () => Jr(r.value, a.value),
3463
+ getScrollbarThumbStyle: () => ei(r.value, a.value),
3378
3464
  showScrollbar: n
3379
3465
  };
3380
3466
  }
3381
- function ti(e) {
3467
+ function si(e) {
3382
3468
  return typeof e == "number" && Number.isFinite(e) ? Math.max(0, e) : 0;
3383
3469
  }
3384
- function ni(e) {
3470
+ function ci(e) {
3385
3471
  return Number.isFinite(e) ? Math.max(0, e) : 0;
3386
3472
  }
3387
- function ri(e, t, n) {
3473
+ function li(e, t, n) {
3388
3474
  return Math.min(Math.max(e, t), n);
3389
3475
  }
3390
3476
  //#endregion
3391
3477
  //#region src/components/viewer-core/useEdgeBoundary.ts
3392
- var ii = 250, ai = 1e3;
3393
- function oi(e) {
3478
+ var ui = 250, di = 1e3;
3479
+ function fi(e) {
3394
3480
  let t = D(!1), n = D(!1), r = D(0), i = D(0), a = D(!1), o = D(!1), s = D(!1), c = 0, l = null;
3395
3481
  x(() => {
3396
3482
  S();
@@ -3413,7 +3499,7 @@ function oi(e) {
3413
3499
  if (!C(t) || !e.isAtBoundary()) return;
3414
3500
  let n = Date.now();
3415
3501
  if (!(n < c)) {
3416
- if (c = n + ii, a.value) {
3502
+ if (c = n + ui, a.value) {
3417
3503
  s.value = !0;
3418
3504
  return;
3419
3505
  }
@@ -3452,7 +3538,7 @@ function oi(e) {
3452
3538
  return e.hasPage.value && t.value && r.value > i.value && !e.interactionLocked?.value && !e.loading.value && !a.value && typeof e.requestPage.value == "function";
3453
3539
  }
3454
3540
  function v() {
3455
- o.value = !1, y(ai);
3541
+ o.value = !1, y(di);
3456
3542
  }
3457
3543
  function y(e) {
3458
3544
  S(), a.value = !0, l = setTimeout(() => {
@@ -3484,7 +3570,7 @@ function oi(e) {
3484
3570
  }
3485
3571
  //#endregion
3486
3572
  //#region src/components/viewer-core/masonryBoundaryLock.ts
3487
- function si() {
3573
+ function pi() {
3488
3574
  let e = D(!1), t = null;
3489
3575
  x(() => {
3490
3576
  r();
@@ -3505,11 +3591,11 @@ function si() {
3505
3591
  }
3506
3592
  //#endregion
3507
3593
  //#region src/components/viewer-core/masonryItemMutation.ts
3508
- function ci(e) {
3509
- let t = e.currentItems.map((e) => Q(e)), n = e.previousItems.map((e) => Q(e)), r = ui(e.previousItems, e.layoutIndexById, e.layoutHeights), i = di(e.previousItems, e.layoutIndexById, e.layoutPositions), a = new Set(n), o = new Set(t), s = e.currentItems.filter((e) => !a.has(Q(e))), c = li(e.previousItems, o, r, i), l = t.length > n.length && n.length > 0 && t[0] !== n[0], u = e.scrollTop > e.contentInsetPx + e.gapPx, d = l && u ? e.currentItems[e.activeIndex] : null;
3594
+ function mi(e) {
3595
+ let t = e.currentItems.map((e) => $(e)), n = e.previousItems.map((e) => $(e)), r = gi(e.previousItems, e.layoutIndexById, e.layoutHeights), i = _i(e.previousItems, e.layoutIndexById, e.layoutPositions), a = new Set(n), o = new Set(t), s = e.currentItems.filter((e) => !a.has($(e))), c = hi(e.previousItems, o, r, i), l = t.length > n.length && n.length > 0 && t[0] !== n[0], u = e.scrollTop > e.contentInsetPx + e.gapPx, d = l && u ? e.currentItems[e.activeIndex] : null;
3510
3596
  return {
3511
3597
  addedItems: s,
3512
- anchorId: d ? Q(d) : null,
3598
+ anchorId: d ? $(d) : null,
3513
3599
  isPrepend: l,
3514
3600
  oldPositionsById: i,
3515
3601
  previousIds: n,
@@ -3518,9 +3604,9 @@ function ci(e) {
3518
3604
  shouldResetScrollForEmptyRemoval: e.currentItems.length === 0 && e.previousItems.length > 0 && c.length > 0 && e.scrollTop > 0
3519
3605
  };
3520
3606
  }
3521
- function li(e, t, n, r) {
3607
+ function hi(e, t, n, r) {
3522
3608
  return e.flatMap((e) => {
3523
- let i = Q(e);
3609
+ let i = $(e);
3524
3610
  if (t.has(i)) return [];
3525
3611
  let a = r.get(i), o = n.get(i);
3526
3612
  return a && o != null ? [{
@@ -3530,25 +3616,25 @@ function li(e, t, n, r) {
3530
3616
  }] : [];
3531
3617
  });
3532
3618
  }
3533
- function ui(e, t, n) {
3619
+ function gi(e, t, n) {
3534
3620
  let r = /* @__PURE__ */ new Map();
3535
3621
  for (let i of e) {
3536
- let e = Q(i), a = t.get(e), o = a == null ? void 0 : n[a];
3622
+ let e = $(i), a = t.get(e), o = a == null ? void 0 : n[a];
3537
3623
  o != null && r.set(e, o);
3538
3624
  }
3539
3625
  return r;
3540
3626
  }
3541
- function di(e, t, n) {
3627
+ function _i(e, t, n) {
3542
3628
  let r = /* @__PURE__ */ new Map();
3543
3629
  for (let i of e) {
3544
- let e = Q(i), a = t.get(e), o = a == null ? void 0 : n[a];
3630
+ let e = $(i), a = t.get(e), o = a == null ? void 0 : n[a];
3545
3631
  o && r.set(e, o);
3546
3632
  }
3547
3633
  return r;
3548
3634
  }
3549
3635
  //#endregion
3550
3636
  //#region src/components/viewer-core/masonryPendingAppend.ts
3551
- function fi(e) {
3637
+ function vi(e) {
3552
3638
  let t = D(null), n = D(!1), r = null;
3553
3639
  function i() {
3554
3640
  o(), e.pendingAppendItems.value.length && (t.value = c([...e.items.value, ...e.pendingAppendItems.value]), s());
@@ -3571,7 +3657,12 @@ function fi(e) {
3571
3657
  }, 300));
3572
3658
  }
3573
3659
  function c(t) {
3574
- return t.length ? kr(t, {
3660
+ return t.length ? e.pendingAppendItems.value.length && e.columnHeights.value.length === e.columnCount.value ? Nr(e.pendingAppendItems.value, {
3661
+ columnHeights: e.columnHeights.value,
3662
+ columnWidth: e.columnWidth.value,
3663
+ contentHeight: e.contentHeight.value,
3664
+ gapY: e.gapPx
3665
+ }) + e.contentInsetPx * 2 : jr(t, {
3575
3666
  bucketPx: e.bucketPx,
3576
3667
  columnCount: e.columnCount.value,
3577
3668
  columnWidth: e.columnWidth.value,
@@ -3588,242 +3679,237 @@ function fi(e) {
3588
3679
  }
3589
3680
  //#endregion
3590
3681
  //#region src/components/viewer-core/useMasonryList.ts
3591
- var pi = 600, mi = 24, hi = 16, gi = 300, _i = 200, vi = 0, yi = 1, bi = mi + hi, xi = 200, Si = 500, Ci = 1e3;
3592
- function wi(e) {
3593
- let t = D(null), n = D(0), r = D(typeof window > "u" ? 0 : window.innerHeight || 0), a = D(typeof window > "u" ? 0 : window.innerWidth || gi), o = D([]), s = D([]), c = D(/* @__PURE__ */ new Map()), l = D(0), u = D(/* @__PURE__ */ new Map()), d = D(null), f = si(), p = i(() => Math.max(gi, a.value - mi * 2)), m = i(() => Er(p.value, gi)), h = i(() => Dr(p.value, m.value, gi, hi)), g = i(() => ti(e.bottomLoadBufferPx.value)), v = i(() => Ti(e.activeIndex.value, 0, Math.max(0, e.items.value.length - 1))), y = i(() => Ar({
3682
+ var yi = 600, bi = 24, xi = 16, Si = 300, Ci = 200, wi = 0, Ti = 1, Ei = bi + xi, Di = 200, Oi = 500, ki = 1e3;
3683
+ function Ai(e) {
3684
+ let t = D(null), n = D(0), r = D(typeof window > "u" ? 0 : window.innerHeight || 0), a = D(typeof window > "u" ? 0 : window.innerWidth || Si), o = Rr({
3685
+ bucketPx: yi,
3686
+ contentInsetPx: bi,
3687
+ gapPx: xi
3688
+ }), { buckets: s, columnHeights: c, contentHeight: l, heights: u, indexById: d, positions: f } = o, p = D(null), m = pi(), h = i(() => Math.max(Si, a.value - bi * 2)), g = i(() => Or(h.value, Si)), v = i(() => kr(h.value, g.value, Si, xi)), y = i(() => si(e.bottomLoadBufferPx.value)), b = i(() => ji(e.activeIndex.value, 0, Math.max(0, e.items.value.length - 1))), C = i(() => Fr({
3594
3689
  itemCount: e.items.value.length,
3595
3690
  viewportHeight: r.value,
3596
3691
  scrollTop: n.value,
3597
- overscanPx: _i,
3598
- bucketPx: pi,
3599
- buckets: c.value
3600
- })), b = i(() => y.value.map((t) => ({
3692
+ overscanPx: Ci,
3693
+ bucketPx: yi,
3694
+ buckets: s.value
3695
+ })), w = i(() => C.value.map((t) => ({
3601
3696
  item: e.items.value[t],
3602
3697
  index: t
3603
- }))), C = i(() => {
3604
- let e = l.value + mi * 2, t = P.reservedContentHeight.value ?? 0;
3605
- return Math.max(e, t, r.value) + xi + g.value;
3606
- }), w = i(() => e.hasNextPage.value || e.allowExhaustedNextPageRefresh.value), T = i(() => $r({
3698
+ }))), T = i(() => {
3699
+ let e = l.value + bi * 2, t = I.reservedContentHeight.value ?? 0;
3700
+ return Math.max(e, t, r.value) + Di + y.value;
3701
+ }), E = i(() => e.hasNextPage.value || e.allowExhaustedNextPageRefresh.value), O = i(() => ai({
3607
3702
  active: e.active.value,
3608
- maxScrollTop: Y(),
3703
+ maxScrollTop: X(),
3609
3704
  progressDistancePx: n.value,
3610
- thresholdPx: vi,
3611
- triggerEnabled: w.value
3612
- })), E = i(() => e.items.value.length > 0 ? `${v.value + 1} / ${e.items.value.length}` : "0 / 0"), O = i(() => Qr({
3705
+ thresholdPx: wi,
3706
+ triggerEnabled: E.value
3707
+ })), k = i(() => e.items.value.length > 0 ? `${b.value + 1} / ${e.items.value.length}` : "0 / 0"), A = i(() => ii({
3613
3708
  active: e.active.value,
3614
- maxScrollTop: Y(),
3709
+ maxScrollTop: X(),
3615
3710
  progressDistancePx: n.value,
3616
- thresholdPx: bi,
3711
+ thresholdPx: Ei,
3617
3712
  triggerEnabled: e.hasPreviousPage.value
3618
- })), k = ei({
3619
- containerHeight: C,
3713
+ })), j = oi({
3714
+ containerHeight: T,
3620
3715
  scrollTop: n,
3621
3716
  viewportHeight: r
3622
- }), A = Hr({
3717
+ }), M = Jr({
3623
3718
  items: e.items,
3624
- visibleIndices: y,
3625
- positions: o,
3626
- heights: s,
3627
- indexById: u,
3628
- columnWidth: h,
3719
+ visibleIndices: C,
3720
+ positions: f,
3721
+ heights: u,
3722
+ indexById: d,
3723
+ columnWidth: v,
3629
3724
  scrollTop: n,
3630
3725
  viewportHeight: r
3631
- }), j = oi({
3726
+ }), N = fi({
3632
3727
  direction: "top",
3633
3728
  getAnimationLockMs(e) {
3634
- return Math.max(Si, zr(e)) + Ci;
3729
+ return Math.max(Oi, Gr(e)) + ki;
3635
3730
  },
3636
3731
  hasPage: e.hasPreviousPage,
3637
- interactionLocked: f.isBoundaryInteractionLocked,
3732
+ interactionLocked: m.isBoundaryInteractionLocked,
3638
3733
  isAtBoundary() {
3639
- return n.value <= bi;
3734
+ return n.value <= Ei;
3640
3735
  },
3641
3736
  loading: e.loading,
3642
3737
  requestPage: e.requestPreviousPage
3643
- }), M = oi({
3738
+ }), P = fi({
3644
3739
  direction: "bottom",
3645
3740
  getAnimationLockMs(e) {
3646
- return zr(e) + Ci;
3741
+ return Gr(e) + ki;
3647
3742
  },
3648
- hasPage: w,
3649
- interactionLocked: f.isBoundaryInteractionLocked,
3743
+ hasPage: E,
3744
+ interactionLocked: m.isBoundaryInteractionLocked,
3650
3745
  isAtBoundary() {
3651
- return J() <= yi;
3746
+ return Y() <= Ti;
3652
3747
  },
3653
3748
  loading: e.loading,
3654
3749
  requestPage: e.requestNextPage
3655
- }), N = Zr({
3750
+ }), F = ri({
3656
3751
  active: e.active,
3657
- getMaxScrollTop: Y,
3752
+ getMaxScrollTop: X,
3658
3753
  getViewport: () => t.value,
3659
- onScroll: z
3660
- }), P = fi({
3661
- bucketPx: pi,
3662
- columnCount: m,
3663
- columnWidth: h,
3754
+ onScroll: ee
3755
+ }), I = vi({
3756
+ bucketPx: yi,
3757
+ columnHeights: c,
3758
+ columnCount: g,
3759
+ columnWidth: v,
3664
3760
  commitPendingAppend: e.commitPendingAppend,
3665
- contentInsetPx: mi,
3666
- gapPx: hi,
3761
+ contentHeight: l,
3762
+ contentInsetPx: bi,
3763
+ gapPx: xi,
3667
3764
  items: e.items,
3668
3765
  pendingAppendItems: e.pendingAppendItems
3669
- }), F = null, I = 0;
3670
- L([
3766
+ }), L = null, R = 0;
3767
+ z([
3671
3768
  () => e.items.value,
3672
- m,
3673
- h
3769
+ g,
3770
+ v
3674
3771
  ], async ([t], [r = []]) => {
3675
- let i = ci({
3676
- activeIndex: v.value,
3677
- contentInsetPx: mi,
3772
+ let i = mi({
3773
+ activeIndex: b.value,
3774
+ contentInsetPx: bi,
3678
3775
  currentItems: t,
3679
- gapPx: hi,
3680
- layoutHeights: s.value,
3681
- layoutIndexById: u.value,
3682
- layoutPositions: o.value,
3776
+ gapPx: xi,
3777
+ layoutHeights: u.value,
3778
+ layoutIndexById: d.value,
3779
+ layoutPositions: f.value,
3683
3780
  previousItems: r ?? [],
3684
3781
  scrollTop: n.value
3685
3782
  });
3686
- i.shouldLockBoundaryInteractionForRemoval && f.lockBoundaryInteraction(Br() + Ci), i.shouldResetScrollForEmptyRemoval && H(), R(), i.removedItems.length > 0 && A.markLeave(i.removedItems), i.addedItems.length > 0 && (A.markEnter(i.addedItems, i.isPrepend ? "top" : "bottom"), i.isPrepend ? j.onItemsMutated(i.addedItems.length) : M.onItemsMutated(i.addedItems.length)), A.playFlipMoveAnimation(i.oldPositionsById, new Set(i.addedItems.map((e) => Q(e))), i.isPrepend ? Si : void 0), i.anchorId ? (await _(), V(i.anchorId, i.oldPositionsById)) : e.active.value && i.previousIds.length > 0 && W();
3687
- }, { immediate: !0 }), L([
3688
- () => e.pendingAppendItems.value.map((e) => Q(e)),
3689
- m,
3690
- h,
3783
+ i.shouldLockBoundaryInteractionForRemoval && m.lockBoundaryInteraction(Kr() + ki), i.shouldResetScrollForEmptyRemoval && te();
3784
+ let a = r ?? [];
3785
+ o.canAppend(t, a, i, g.value) ? o.append(i.addedItems, a.length, g.value, v.value) : o.rebuild(t, g.value, v.value), i.removedItems.length > 0 && M.markLeave(i.removedItems), i.addedItems.length > 0 && (M.markEnter(i.addedItems, i.isPrepend ? "top" : "bottom"), i.isPrepend ? N.onItemsMutated(i.addedItems.length) : P.onItemsMutated(i.addedItems.length)), M.playFlipMoveAnimation(i.oldPositionsById, new Set(i.addedItems.map((e) => $(e))), i.isPrepend ? Oi : void 0), i.anchorId ? (await _(), U(i.anchorId, i.oldPositionsById)) : e.active.value && i.previousIds.length > 0 && G();
3786
+ }, { immediate: !0 }), z([
3787
+ () => e.pendingAppendItems.value.map((e) => $(e)),
3788
+ g,
3789
+ v,
3691
3790
  r
3692
- ], () => P.refreshReservedContentHeight(), { immediate: !0 }), L(() => e.active.value, async (e, i) => {
3791
+ ], () => I.refreshReservedContentHeight(), { immediate: !0 }), z(() => e.active.value, async (e, i) => {
3693
3792
  let a = t.value;
3694
3793
  if (!e) {
3695
- a && (d.value = a.scrollTop), N.stop();
3794
+ a && (p.value = a.scrollTop), F.stop();
3696
3795
  return;
3697
3796
  }
3698
- if (N.start(), !a || i !== !1 || d.value == null) return;
3797
+ if (F.start(), !a || i !== !1 || p.value == null) return;
3699
3798
  await _();
3700
- let o = Math.max(0, C.value - r.value), s = Ti(d.value, 0, o);
3701
- a.scrollTop = s, n.value = s, j.syncBoundary(), M.syncBoundary();
3702
- }), L(() => e.loading.value, async (e) => {
3703
- P.clearReservedHeightWhenIdle(e), j.onLoadingChange(e), M.onLoadingChange(e), await _();
3799
+ let o = Math.max(0, T.value - r.value), s = ji(p.value, 0, o);
3800
+ a.scrollTop = s, n.value = s, N.syncBoundary(), P.syncBoundary();
3801
+ }), z(() => e.loading.value, async (e) => {
3802
+ I.clearReservedHeightWhenIdle(e), N.onLoadingChange(e), P.onLoadingChange(e), await _();
3704
3803
  }), S(async () => {
3705
- G(), await _(), v.value > 0 ? B(v.value, "center") : U(), j.syncBoundary(), M.syncBoundary(), typeof ResizeObserver < "u" ? (F = new ResizeObserver(() => {
3706
- G();
3707
- }), t.value && F.observe(t.value)) : window.addEventListener("resize", G);
3804
+ q(), await _(), b.value > 0 ? H(b.value, "center") : W(), N.syncBoundary(), P.syncBoundary(), typeof ResizeObserver < "u" ? (L = new ResizeObserver(() => {
3805
+ q();
3806
+ }), t.value && L.observe(t.value)) : window.addEventListener("resize", q);
3708
3807
  }), x(() => {
3709
- F?.disconnect(), F = null, window.removeEventListener("resize", G), P.clearAppendCommitTimer(), f.clearBoundaryInteractionReleaseTimer(), I &&= (cancelAnimationFrame(I), 0), N.stop();
3808
+ L?.disconnect(), L = null, window.removeEventListener("resize", q), I.clearAppendCommitTimer(), m.clearBoundaryInteractionReleaseTimer(), R &&= (cancelAnimationFrame(R), 0), F.stop();
3710
3809
  });
3711
- function R() {
3712
- let t = kr(e.items.value, {
3713
- columnCount: m.value,
3714
- columnWidth: h.value,
3715
- gapX: hi,
3716
- gapY: hi,
3717
- bucketPx: pi
3718
- });
3719
- o.value = t.positions.map((e) => ({
3720
- x: e.x + mi,
3721
- y: e.y + mi
3722
- })), s.value = t.heights, c.value = t.buckets, l.value = t.contentHeight, u.value = t.indexById;
3723
- }
3724
- function z() {
3725
- e.active.value && (n.value = t.value?.scrollTop ?? 0, r.value = K(), j.syncBoundary("scroll"), M.syncBoundary("scroll"), ne(), !W() && (I ||= requestAnimationFrame(() => {
3726
- I = 0, U();
3810
+ function ee() {
3811
+ e.active.value && (n.value = t.value?.scrollTop ?? 0, r.value = J(), N.syncBoundary("scroll"), P.syncBoundary("scroll"), K(), !G() && (R ||= requestAnimationFrame(() => {
3812
+ R = 0, W();
3727
3813
  })));
3728
3814
  }
3729
- function ee(t) {
3730
- e.active.value && (j.onWheel(t), M.onWheel(t), ne());
3815
+ function B(t) {
3816
+ e.active.value && (N.onWheel(t), P.onWheel(t), K());
3731
3817
  }
3732
- function te(t) {
3733
- let n = e.items.value[t], r = n ? Q(n) : "";
3818
+ function V(t) {
3819
+ let n = e.items.value[t], r = n ? $(n) : "";
3734
3820
  return {
3735
- height: `${s.value[t] ?? h.value}px`,
3736
- width: `${h.value}px`,
3737
- transition: r ? A.getCardTransition(r) : void 0,
3738
- transitionDelay: r ? A.getCardTransitionDelay(r) : void 0,
3739
- transform: A.getCardTransform(t)
3821
+ height: `${u.value[t] ?? v.value}px`,
3822
+ width: `${v.value}px`,
3823
+ transition: r ? M.getCardTransition(r) : void 0,
3824
+ transitionDelay: r ? M.getCardTransitionDelay(r) : void 0,
3825
+ transform: M.getCardTransform(t)
3740
3826
  };
3741
3827
  }
3742
- function B(e, i) {
3743
- let a = t.value, c = o.value[e], l = s.value[e];
3744
- if (!a || !c || !l) return;
3745
- let u = a.scrollTop, d = Math.max(0, C.value - r.value);
3746
- i === "center" ? u = c.y - (r.value - l) / 2 : c.y < a.scrollTop ? u = c.y - mi : c.y + l > a.scrollTop + r.value && (u = c.y + l - r.value + mi), a.scrollTop = Ti(u, 0, d), n.value = a.scrollTop, U();
3828
+ function H(e, i) {
3829
+ let a = t.value, o = f.value[e], s = u.value[e];
3830
+ if (!a || !o || !s) return;
3831
+ let c = a.scrollTop, l = Math.max(0, T.value - r.value);
3832
+ i === "center" ? c = o.y - (r.value - s) / 2 : o.y < a.scrollTop ? c = o.y - bi : o.y + s > a.scrollTop + r.value && (c = o.y + s - r.value + bi), a.scrollTop = ji(c, 0, l), n.value = a.scrollTop, W();
3747
3833
  }
3748
- function V(e, r) {
3749
- let i = t.value, a = r.get(e), s = u.value.get(e), c = s == null ? null : o.value[s];
3750
- if (!i || !a || !c) return;
3751
- let l = c.y - a.y;
3752
- i.scrollTop += l, n.value = i.scrollTop;
3834
+ function U(e, r) {
3835
+ let i = t.value, a = r.get(e), o = d.value.get(e), s = o == null ? null : f.value[o];
3836
+ if (!i || !a || !s) return;
3837
+ let c = s.y - a.y;
3838
+ i.scrollTop += c, n.value = i.scrollTop;
3753
3839
  }
3754
- function H() {
3840
+ function te() {
3755
3841
  let e = t.value;
3756
3842
  if (!e) {
3757
3843
  n.value = 0;
3758
3844
  return;
3759
3845
  }
3760
- e.scrollTop = 0, n.value = 0, j.syncBoundary(), M.syncBoundary();
3846
+ e.scrollTop = 0, n.value = 0, N.syncBoundary(), P.syncBoundary();
3761
3847
  }
3762
- function U() {
3763
- if (!y.value.length || W()) return;
3764
- let t = n.value + r.value / 2, i = v.value, a = Infinity;
3765
- for (let e of y.value) {
3766
- let n = o.value[e], r = s.value[e];
3848
+ function W() {
3849
+ if (!C.value.length || G()) return;
3850
+ let t = n.value + r.value / 2, i = b.value, a = Infinity;
3851
+ for (let e of C.value) {
3852
+ let n = f.value[e], r = u.value[e];
3767
3853
  if (!n || !r) continue;
3768
- let c = n.y + r / 2, l = Math.abs(c - t);
3769
- l < a && (a = l, i = e);
3854
+ let o = n.y + r / 2, s = Math.abs(o - t);
3855
+ s < a && (a = s, i = e);
3770
3856
  }
3771
3857
  e.setActiveIndex(i);
3772
3858
  }
3773
- function W() {
3774
- let t = n.value <= bi, r = J() <= yi;
3775
- return t ? (e.setActiveIndex(0), !0) : r ? (e.setActiveIndex(Math.max(0, e.items.value.length - 1)), !0) : !1;
3776
- }
3777
- function ne() {
3778
- j.maybeRequestPage(), M.maybeRequestPage();
3779
- }
3780
3859
  function G() {
3781
- r.value = K(), a.value = q();
3860
+ let t = n.value <= Ei, r = Y() <= Ti;
3861
+ return t ? (e.setActiveIndex(0), !0) : r ? (e.setActiveIndex(Math.max(0, e.items.value.length - 1)), !0) : !1;
3782
3862
  }
3783
3863
  function K() {
3784
- return Gr(t.value, r.value);
3864
+ N.maybeRequestPage(), P.maybeRequestPage();
3785
3865
  }
3786
3866
  function q() {
3787
- return Kr(t.value, a.value, gi);
3867
+ r.value = J(), a.value = ne();
3788
3868
  }
3789
3869
  function J() {
3790
- return qr(t.value, n.value, r.value, C.value);
3870
+ return Zr(t.value, r.value);
3871
+ }
3872
+ function ne() {
3873
+ return Qr(t.value, a.value, Si);
3791
3874
  }
3792
3875
  function Y() {
3793
- let e = Math.max(t.value?.scrollHeight ?? 0, C.value);
3876
+ return $r(t.value, n.value, r.value, T.value);
3877
+ }
3878
+ function X() {
3879
+ let e = Math.max(t.value?.scrollHeight ?? 0, T.value);
3794
3880
  return Math.max(0, e - r.value);
3795
3881
  }
3796
3882
  return {
3797
- autoScroll: N.autoScroll,
3798
- columnWidth: h,
3799
- containerHeight: C,
3800
- getCardStyle: te,
3801
- getLeavingCardStyle: A.getLeavingCardStyle,
3802
- getScrollbarThumbStyle: k.getScrollbarThumbStyle,
3803
- leavingItems: A.leavingItems,
3804
- nextBoundaryLoadProgress: T,
3805
- onScroll: z,
3806
- onWheel: ee,
3807
- paginationLabel: E,
3808
- previousBoundaryLoadProgress: O,
3809
- renderedItems: b,
3810
- resolvedActiveIndex: v,
3811
- scrollToIndex: B,
3812
- showScrollbar: k.showScrollbar,
3883
+ autoScroll: F.autoScroll,
3884
+ columnWidth: v,
3885
+ containerHeight: T,
3886
+ getCardStyle: V,
3887
+ getLeavingCardStyle: M.getLeavingCardStyle,
3888
+ getScrollbarThumbStyle: j.getScrollbarThumbStyle,
3889
+ leavingItems: M.leavingItems,
3890
+ nextBoundaryLoadProgress: O,
3891
+ onScroll: ee,
3892
+ onWheel: B,
3893
+ paginationLabel: k,
3894
+ previousBoundaryLoadProgress: A,
3895
+ renderedItems: w,
3896
+ resolvedActiveIndex: b,
3897
+ scrollToIndex: H,
3898
+ showScrollbar: j.showScrollbar,
3813
3899
  scrollViewportRef: t
3814
3900
  };
3815
3901
  }
3816
- function Ti(e, t, n) {
3902
+ function ji(e, t, n) {
3817
3903
  return Math.min(Math.max(e, t), n);
3818
3904
  }
3819
3905
  //#endregion
3820
3906
  //#region src/components/viewer-core/listCardAsset.ts
3821
- function Ei(e) {
3907
+ function Mi(e) {
3822
3908
  if (e) try {
3823
3909
  e.removeAttribute("src"), e.src = "";
3824
3910
  } catch {}
3825
3911
  }
3826
- function Di(e) {
3912
+ function Ni(e) {
3827
3913
  if (e) {
3828
3914
  try {
3829
3915
  e.currentTime = 0;
@@ -3834,12 +3920,12 @@ function Di(e) {
3834
3920
  } catch {}
3835
3921
  }
3836
3922
  }
3837
- function Oi(e, t) {
3923
+ function Pi(e, t) {
3838
3924
  if (t) return e.bottom > t.top && e.top < t.bottom;
3839
3925
  let n = window.innerHeight || document.documentElement.clientHeight || 0;
3840
3926
  return e.bottom > 0 && e.top < n;
3841
3927
  }
3842
- function ki(e) {
3928
+ function Fi(e) {
3843
3929
  if (!e) return null;
3844
3930
  try {
3845
3931
  return new URL(e, window.location.href).href;
@@ -3849,9 +3935,9 @@ function ki(e) {
3849
3935
  }
3850
3936
  //#endregion
3851
3937
  //#region src/components/viewer-core/listPreview.ts
3852
- var Ai = /\.(avif|gif|jpe?g|png|svg|webp)(\?|#|$)/i, ji = /\.(m4v|mov|mp4|mpeg|ogg|ogv|webm)(\?|#|$)/i, Mi = /^(?:(?:https?:)?\/\/[^/]+)?\/api\/files\/[^/?#]+\/(?:preview|downloaded)(?:\?|#|$)/i;
3853
- function Ni(e) {
3854
- let t = Pi(e), n = t?.url, r = Tr(e), i = e.title?.trim() || Ht(e.type);
3938
+ var Ii = /\.(avif|gif|jpe?g|png|svg|webp)(\?|#|$)/i, Li = /\.(m4v|mov|mp4|mpeg|ogg|ogv|webm)(\?|#|$)/i, Ri = /^(?:(?:https?:)?\/\/[^/]+)?\/api\/files\/[^/?#]+\/(?:preview|downloaded)(?:\?|#|$)/i;
3939
+ function zi(e) {
3940
+ let t = Bi(e), n = t?.url, r = Dr(e), i = e.title?.trim() || Wt(e.type);
3855
3941
  return t?.mediaType === "video" && typeof n == "string" ? {
3856
3942
  kind: "video",
3857
3943
  url: n,
@@ -3870,13 +3956,13 @@ function Ni(e) {
3870
3956
  width: r.width,
3871
3957
  height: r.height,
3872
3958
  label: i
3873
- } : typeof n == "string" && Ii(e, n) ? {
3959
+ } : typeof n == "string" && Hi(e, n) ? {
3874
3960
  kind: "video",
3875
3961
  url: n,
3876
3962
  width: r.width,
3877
3963
  height: r.height,
3878
3964
  label: i
3879
- } : typeof n == "string" && Fi(e, n) ? {
3965
+ } : typeof n == "string" && Vi(e, n) ? {
3880
3966
  kind: "image",
3881
3967
  url: n,
3882
3968
  width: r.width,
@@ -3890,31 +3976,31 @@ function Ni(e) {
3890
3976
  label: i
3891
3977
  };
3892
3978
  }
3893
- function Pi(e) {
3979
+ function Bi(e) {
3894
3980
  return e.preview?.url ? e.preview : typeof e.url != "string" || e.url.trim() === "" ? null : { url: e.url };
3895
3981
  }
3896
- function Fi(e, t) {
3897
- return e.type !== "image" || typeof t != "string" ? !1 : Ai.test(t) || Li(t);
3982
+ function Vi(e, t) {
3983
+ return e.type !== "image" || typeof t != "string" ? !1 : Ii.test(t) || Ui(t);
3898
3984
  }
3899
- function Ii(e, t) {
3900
- return e.type !== "video" || typeof t != "string" ? !1 : ji.test(t) || Ri(t);
3985
+ function Hi(e, t) {
3986
+ return e.type !== "video" || typeof t != "string" ? !1 : Li.test(t) || Wi(t);
3901
3987
  }
3902
- function Li(e) {
3988
+ function Ui(e) {
3903
3989
  return /^(https?:\/\/|\/\/|\/(?!\/)|\.{1,2}\/|blob:|data:)/i.test(e);
3904
3990
  }
3905
- function Ri(e) {
3906
- return Mi.test(e) || /^blob:/i.test(e) || /^data:video\//i.test(e);
3991
+ function Wi(e) {
3992
+ return Ri.test(e) || /^blob:/i.test(e) || /^data:video\//i.test(e);
3907
3993
  }
3908
3994
  //#endregion
3909
3995
  //#region src/components/viewer-core/useListCardHealthCheck.ts
3910
- function zi(e) {
3996
+ function Gi(e) {
3911
3997
  let t = D(null), n = i(() => {
3912
- let t = typeof e.item.value.healthCheck?.url == "string" ? ki(e.item.value.healthCheck.url) : null;
3998
+ let t = typeof e.item.value.healthCheck?.url == "string" ? Fi(e.item.value.healthCheck.url) : null;
3913
3999
  return !t || t === e.attachedAssetUrl.value ? null : t;
3914
4000
  }), r = null, a = 0, o = /* @__PURE__ */ new Map();
3915
- L(n, (e, n) => {
4001
+ z(n, (e, n) => {
3916
4002
  e !== n && (t.value = null, l(), a += 1);
3917
- }), L([
4003
+ }), z([
3918
4004
  n,
3919
4005
  e.surfaceActive,
3920
4006
  e.isInView,
@@ -3941,7 +4027,7 @@ function zi(e) {
3941
4027
  r.refresh();
3942
4028
  return;
3943
4029
  }
3944
- r = Wt.request({
4030
+ r = Kt.request({
3945
4031
  assetType: "probe",
3946
4032
  getPriority: e.getPriority,
3947
4033
  onGrant() {
@@ -3951,7 +4037,7 @@ function zi(e) {
3951
4037
  return;
3952
4038
  }
3953
4039
  let i = ++a;
3954
- vn(r).then((s) => {
4040
+ bn(r).then((s) => {
3955
4041
  if (!(i !== a || n.value !== r)) {
3956
4042
  if (o.set(r, s ?? null), !s) {
3957
4043
  t.value = null;
@@ -3959,7 +4045,7 @@ function zi(e) {
3959
4045
  }
3960
4046
  t.value = s, e.reportAssetError?.({
3961
4047
  item: e.item.value,
3962
- occurrenceKey: Q(e.item.value),
4048
+ occurrenceKey: $(e.item.value),
3963
4049
  url: r,
3964
4050
  kind: s,
3965
4051
  surface: "grid"
@@ -3987,14 +4073,14 @@ function zi(e) {
3987
4073
  }
3988
4074
  //#endregion
3989
4075
  //#region src/components/ListCard.vue?vue&type=script&setup=true&lang.ts
3990
- var Bi = ["aria-label"], Vi = {
4076
+ var Ki = ["aria-label"], qi = {
3991
4077
  key: 0,
3992
4078
  "data-testid": "vibe-list-card-spinner",
3993
4079
  class: "pointer-events-none absolute inset-0 z-[4] grid place-items-center bg-black/18"
3994
- }, Hi = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, Ui = ["src", "alt"], Wi = ["src"], Gi = ["data-kind"], Ki = { class: "grid justify-items-center gap-3 px-4 text-center" }, qi = { class: "text-[0.68rem] font-bold uppercase tracking-[0.22em] text-[#f7f1ea]/72" }, Ji = {
4080
+ }, Ji = { class: "inline-flex h-12 w-12 items-center justify-center rounded-full bg-black/45 shadow-[0_18px_40px_-18px_rgba(0,0,0,0.85)] backdrop-blur-[18px]" }, Yi = ["src", "alt"], Xi = ["src"], Zi = ["data-kind"], Qi = { class: "grid justify-items-center gap-3 px-4 text-center" }, $i = { class: "text-[0.68rem] font-bold uppercase tracking-[0.22em] text-[#f7f1ea]/72" }, ea = {
3995
4081
  key: 4,
3996
4082
  class: "grid h-full w-full place-items-center bg-[radial-gradient(circle_at_center,rgba(255,255,255,0.08),transparent_65%),linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02))]"
3997
- }, Yi = { class: "inline-flex h-14 w-14 items-center justify-center border border-white/16 bg-black/20" }, Xi = { class: "pointer-events-none absolute inset-0 z-[3]" }, Zi = /* @__PURE__ */ d({
4083
+ }, ta = { class: "inline-flex h-14 w-14 items-center justify-center border border-white/16 bg-black/20" }, na = { class: "pointer-events-none absolute inset-0 z-[3]" }, ra = /* @__PURE__ */ d({
3998
4084
  __name: "ListCard",
3999
4085
  props: {
4000
4086
  active: {
@@ -4018,74 +4104,74 @@ var Bi = ["aria-label"], Vi = {
4018
4104
  },
4019
4105
  emits: ["open"],
4020
4106
  setup(e, { emit: t }) {
4021
- let n = e, r = t, l = i(() => Ni(n.item)), d = D(!1), f = D(!1), p = D(!1), m = D(l.value.kind === "fallback"), h = D(!1), g = D(null), _ = D(null), y = D(null), b = D(null), C = D(null), T = D(l.value.kind === "fallback"), E = i(() => T.value ? n.surfaceActive ? d.value ? l.value.url : null : l.value.url : null), O = i(() => n.surfaceActive && d.value && (l.value.kind === "image" || l.value.kind === "video") && !!l.value.url), M = i(() => l.value.kind === "image" && !!E.value), P = i(() => l.value.kind === "video" && !!E.value), F = zi({
4107
+ let n = e, r = t, l = i(() => zi(n.item)), d = D(!1), f = D(!1), p = D(!1), m = D(l.value.kind === "fallback"), h = D(!1), g = D(null), _ = D(null), y = D(null), b = D(null), C = D(null), T = D(l.value.kind === "fallback"), E = i(() => T.value ? n.surfaceActive ? d.value ? l.value.url : null : l.value.url : null), O = i(() => n.surfaceActive && d.value && (l.value.kind === "image" || l.value.kind === "video") && !!l.value.url), j = i(() => l.value.kind === "image" && !!E.value), N = i(() => l.value.kind === "video" && !!E.value), P = Gi({
4022
4108
  attachedAssetUrl: E,
4023
- getPriority: ue,
4109
+ getPriority: se,
4024
4110
  isInView: d,
4025
4111
  isReady: m,
4026
4112
  item: i(() => n.item),
4027
4113
  loadErrorKind: g,
4028
4114
  reportAssetError: n.reportAssetError,
4029
4115
  surfaceActive: i(() => n.surfaceActive)
4030
- }), I = i(() => F.errorKind.value ?? g.value), R = i(() => !!I.value), z = i(() => gn(I.value)), ee = i(() => O.value && !g.value && (!T.value || !m.value)), B = null, V = null, H = /* @__PURE__ */ new Set();
4031
- L([E, () => l.value.kind], () => {
4116
+ }), I = i(() => P.errorKind.value ?? g.value), L = i(() => !!I.value), R = i(() => vn(I.value)), ee = i(() => O.value && !g.value && (!T.value || !m.value)), B = null, V = null, U = /* @__PURE__ */ new Set();
4117
+ z([E, () => l.value.kind], () => {
4032
4118
  let e = l.value.kind === "fallback";
4033
4119
  m.value = e, h.value = !1, g.value = null, e && (T.value = !0);
4034
- }), L(O, () => {
4035
- K();
4036
- }), L([
4120
+ }), z(O, () => {
4121
+ q();
4122
+ }), z([
4037
4123
  d,
4038
4124
  m,
4039
4125
  E
4040
4126
  ], () => {
4041
- q();
4042
- }), L(() => n.surfaceActive, (e) => {
4127
+ J();
4128
+ }), z(() => n.surfaceActive, (e) => {
4043
4129
  if (!e) {
4044
- Y(), q();
4130
+ Y(), J();
4045
4131
  return;
4046
4132
  }
4047
4133
  requestAnimationFrame(() => {
4048
- re(), K(), q();
4134
+ X(), q(), J();
4049
4135
  });
4050
4136
  }), S(() => {
4051
4137
  if (!y.value || typeof IntersectionObserver > "u") {
4052
- b.value = null, d.value = !0, K();
4138
+ b.value = null, d.value = !0, q();
4053
4139
  return;
4054
4140
  }
4055
4141
  b.value = y.value.closest("[data-testid=\"vibe-list-scroll\"]"), B = new IntersectionObserver((e) => {
4056
- for (let t of e) t.target === y.value && (n.surfaceActive && re(t), K(), q());
4142
+ for (let t of e) t.target === y.value && (n.surfaceActive && X(t), q(), J());
4057
4143
  }, {
4058
4144
  root: b.value,
4059
4145
  threshold: [0, 1]
4060
4146
  }), B.observe(y.value);
4061
4147
  }), x(() => {
4062
- J(), F.release(), B?.disconnect(), B = null;
4148
+ ne(), P.release(), B?.disconnect(), B = null;
4063
4149
  });
4064
- function U() {
4065
- X(_.value) && (m.value = !0, g.value = null, ie(E.value ?? n.item.url), Y());
4150
+ function te() {
4151
+ ce(_.value) && (m.value = !0, g.value = null, re(E.value ?? n.item.url), Y());
4066
4152
  }
4067
4153
  async function W() {
4068
- if (!X(_.value)) return;
4154
+ if (!ce(_.value)) return;
4069
4155
  let e = E.value ?? n.item.url;
4070
4156
  m.value = !1, g.value = "generic";
4071
- let t = await _n(e);
4157
+ let t = await yn(e);
4072
4158
  g.value = t, n.reportAssetError?.({
4073
4159
  item: n.item,
4074
- occurrenceKey: Q(n.item),
4160
+ occurrenceKey: $(n.item),
4075
4161
  url: e,
4076
4162
  kind: t,
4077
4163
  surface: "grid"
4078
4164
  }), Y();
4079
4165
  }
4080
- function ne() {
4081
- X(C.value) && (h.value = !0, m.value = !0, g.value = null, ie(E.value ?? n.item.url), Y(), q());
4082
- }
4083
4166
  function G() {
4084
- X(C.value) && (h.value || (m.value = !1));
4167
+ ce(C.value) && (h.value = !0, m.value = !0, g.value = null, re(E.value ?? n.item.url), Y(), J());
4085
4168
  }
4086
4169
  function K() {
4170
+ ce(C.value) && (h.value || (m.value = !1));
4171
+ }
4172
+ function q() {
4087
4173
  if (l.value.kind === "fallback") {
4088
- J(!1);
4174
+ ne(!1);
4089
4175
  return;
4090
4176
  }
4091
4177
  if (!n.surfaceActive) {
@@ -4093,23 +4179,23 @@ var Bi = ["aria-label"], Vi = {
4093
4179
  return;
4094
4180
  }
4095
4181
  if (!O.value) {
4096
- J();
4182
+ ne();
4097
4183
  return;
4098
4184
  }
4099
4185
  if (T.value || V) {
4100
4186
  V?.refresh();
4101
4187
  return;
4102
4188
  }
4103
- V = Wt.request({
4189
+ V = Kt.request({
4104
4190
  assetType: l.value.kind,
4105
- getPriority: ue,
4191
+ getPriority: se,
4106
4192
  onGrant() {
4107
4193
  T.value = !0, m.value = !1, g.value = null;
4108
4194
  },
4109
4195
  url: l.value.url ?? n.item.url
4110
4196
  });
4111
4197
  }
4112
- function q() {
4198
+ function J() {
4113
4199
  let e = C.value;
4114
4200
  if (!(!e || l.value.kind !== "video")) {
4115
4201
  if (I.value) {
@@ -4117,7 +4203,7 @@ var Bi = ["aria-label"], Vi = {
4117
4203
  return;
4118
4204
  }
4119
4205
  if (E.value && d.value && m.value) {
4120
- e.muted = !0, e.loop = !0, e.playsInline = !0, xn(e);
4206
+ e.muted = !0, e.loop = !0, e.playsInline = !0, Cn(e);
4121
4207
  return;
4122
4208
  }
4123
4209
  try {
@@ -4126,44 +4212,44 @@ var Bi = ["aria-label"], Vi = {
4126
4212
  e.pause();
4127
4213
  }
4128
4214
  }
4129
- function J(e = !0) {
4130
- T.value = l.value.kind === "fallback", g.value = null, m.value = l.value.kind === "fallback", e && (se(), ce()), Y();
4215
+ function ne(e = !0) {
4216
+ T.value = l.value.kind === "fallback", g.value = null, m.value = l.value.kind === "fallback", e && (ae(), Z()), Y();
4131
4217
  }
4132
4218
  function Y() {
4133
4219
  V?.release(), V = null;
4134
4220
  }
4135
- function re(e) {
4221
+ function X(e) {
4136
4222
  let t = y.value;
4137
4223
  if (!t) {
4138
4224
  d.value = !0;
4139
4225
  return;
4140
4226
  }
4141
- d.value = Oi(e?.boundingClientRect ?? t.getBoundingClientRect(), e?.rootBounds ?? b.value?.getBoundingClientRect() ?? null);
4227
+ d.value = Pi(e?.boundingClientRect ?? t.getBoundingClientRect(), e?.rootBounds ?? b.value?.getBoundingClientRect() ?? null);
4142
4228
  }
4143
- function ie(e) {
4229
+ function re(e) {
4144
4230
  if (!e) return;
4145
- let t = Q(n.item), r = `${t}|${e}`;
4146
- H.has(r) || (H.add(r), n.reportAssetLoad?.({
4231
+ let t = $(n.item), r = `${t}|${e}`;
4232
+ U.has(r) || (U.add(r), n.reportAssetLoad?.({
4147
4233
  item: n.item,
4148
4234
  occurrenceKey: t,
4149
4235
  surface: "grid",
4150
4236
  url: e
4151
4237
  }));
4152
4238
  }
4153
- function ae() {
4154
- if (!z.value || F.retry()) return;
4155
- let e = Q(n.item);
4156
- H.forEach((t) => {
4157
- t.startsWith(`${e}|`) && H.delete(t);
4158
- }), g.value = null, m.value = !1, T.value = !1, Y(), K();
4239
+ function ie() {
4240
+ if (!R.value || P.retry()) return;
4241
+ let e = $(n.item);
4242
+ U.forEach((t) => {
4243
+ t.startsWith(`${e}|`) && U.delete(t);
4244
+ }), g.value = null, m.value = !1, T.value = !1, Y(), q();
4159
4245
  }
4160
- function se() {
4161
- Ei(_.value);
4246
+ function ae() {
4247
+ Mi(_.value);
4162
4248
  }
4163
- function ce() {
4164
- Di(C.value);
4249
+ function Z() {
4250
+ Ni(C.value);
4165
4251
  }
4166
- function ue() {
4252
+ function se() {
4167
4253
  let e = y.value;
4168
4254
  if (!e) return Infinity;
4169
4255
  let t = e.getBoundingClientRect();
@@ -4174,17 +4260,17 @@ var Bi = ["aria-label"], Vi = {
4174
4260
  let n = window.innerHeight / 2;
4175
4261
  return Math.abs((t.top + t.bottom) / 2 - n);
4176
4262
  }
4177
- function X(e) {
4178
- let t = ki(E.value);
4179
- return !e || !t ? !1 : ki("currentSrc" in e && e.currentSrc || e.getAttribute("src")) === t;
4263
+ function ce(e) {
4264
+ let t = Fi(E.value);
4265
+ return !e || !t ? !1 : Fi("currentSrc" in e && e.currentSrc || e.getAttribute("src")) === t;
4180
4266
  }
4181
- function de() {
4267
+ function ue() {
4182
4268
  r("open");
4183
4269
  }
4184
- function fe() {
4270
+ function de() {
4185
4271
  f.value = !0;
4186
4272
  }
4187
- function pe(e) {
4273
+ function fe(e) {
4188
4274
  let t = e.relatedTarget;
4189
4275
  y.value && t instanceof Node && y.value.contains(t) || (f.value = !1);
4190
4276
  }
@@ -4193,8 +4279,8 @@ var Bi = ["aria-label"], Vi = {
4193
4279
  ref: y,
4194
4280
  "data-testid": "vibe-list-card-inner",
4195
4281
  class: v(["group relative h-full w-full overflow-hidden border bg-[#0a0b0f] text-[#f7f1ea] transition-[border-color,transform] duration-300", n.active ? "border-white/28" : "border-white/12 hover:border-white/24"]),
4196
- onFocusin: fe,
4197
- onFocusout: pe,
4282
+ onFocusin: de,
4283
+ onFocusout: fe,
4198
4284
  onPointerenter: t[0] ||= (e) => p.value = !0,
4199
4285
  onPointerleave: t[1] ||= (e) => p.value = !1
4200
4286
  }, [
@@ -4203,13 +4289,13 @@ var Bi = ["aria-label"], Vi = {
4203
4289
  "data-testid": "vibe-list-card-open",
4204
4290
  class: "absolute inset-0 z-[1] block h-full w-full cursor-pointer text-left focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-[#f7f1ea]",
4205
4291
  "aria-label": n.item.title || `Open item ${n.index + 1}`,
4206
- onClick: de
4207
- }, null, 8, Bi),
4208
- ee.value ? (w(), s("div", Vi, [c("span", Hi, [u(N(oe), {
4292
+ onClick: ue
4293
+ }, null, 8, Ki),
4294
+ ee.value ? (w(), s("div", qi, [c("span", Ji, [u(F(oe), {
4209
4295
  class: "h-5 w-5 animate-spin stroke-[1.9] text-[#f7f1ea]/78",
4210
4296
  "aria-hidden": "true"
4211
4297
  })])])) : o("", !0),
4212
- M.value && E.value && !R.value ? (w(), s("img", {
4298
+ j.value && E.value && !L.value ? (w(), s("img", {
4213
4299
  key: 1,
4214
4300
  ref_key: "imageRef",
4215
4301
  ref: _,
@@ -4217,9 +4303,9 @@ var Bi = ["aria-label"], Vi = {
4217
4303
  alt: l.value.label,
4218
4304
  draggable: "false",
4219
4305
  class: v(["block h-full w-full object-cover transition-opacity duration-300", m.value ? "pointer-events-none opacity-100" : "pointer-events-none opacity-0"]),
4220
- onLoad: U,
4306
+ onLoad: te,
4221
4307
  onError: W
4222
- }, null, 42, Ui)) : P.value && E.value && !R.value ? (w(), s("video", {
4308
+ }, null, 42, Yi)) : N.value && E.value && !L.value ? (w(), s("video", {
4223
4309
  key: 2,
4224
4310
  ref_key: "videoRef",
4225
4311
  ref: C,
@@ -4229,64 +4315,64 @@ var Bi = ["aria-label"], Vi = {
4229
4315
  playsinline: "",
4230
4316
  preload: "metadata",
4231
4317
  class: v(["block h-full w-full object-cover transition-opacity duration-300", m.value ? "pointer-events-none opacity-100" : "pointer-events-none opacity-0"]),
4232
- onCanplay: ne,
4318
+ onCanplay: G,
4233
4319
  onError: W,
4234
- onLoadstart: G,
4235
- onPlaying: ne,
4236
- onStalled: G,
4237
- onWaiting: G
4238
- }, null, 42, Wi)) : R.value ? (w(), s("div", {
4320
+ onLoadstart: K,
4321
+ onPlaying: G,
4322
+ onStalled: K,
4323
+ onWaiting: K
4324
+ }, null, 42, Xi)) : L.value ? (w(), s("div", {
4239
4325
  key: 3,
4240
4326
  "data-testid": "vibe-list-card-error",
4241
4327
  "data-kind": I.value,
4242
4328
  class: "pointer-events-none relative z-[2] grid h-full w-full place-items-center bg-[radial-gradient(circle_at_center,rgba(239,68,68,0.12),transparent_65%),linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02))]"
4243
- }, [c("div", Ki, [
4244
- u(N(le), {
4329
+ }, [c("div", Qi, [
4330
+ u(F(le), {
4245
4331
  class: "h-6 w-6 stroke-[1.8] text-[#f7f1ea]/78",
4246
4332
  "aria-hidden": "true"
4247
4333
  }),
4248
- c("span", qi, j(N(hn)(I.value)), 1),
4249
- z.value ? (w(), s("button", {
4334
+ c("span", $i, M(F(_n)(I.value)), 1),
4335
+ R.value ? (w(), s("button", {
4250
4336
  key: 0,
4251
4337
  type: "button",
4252
4338
  class: "pointer-events-auto inline-flex items-center justify-center border border-white/14 bg-black/35 px-3 py-2 text-[0.62rem] font-bold uppercase tracking-[0.22em] text-[#f7f1ea]/82 backdrop-blur-[18px] transition hover:border-white/28 hover:bg-black/50",
4253
- onClick: te(ae, ["stop"])
4339
+ onClick: H(ie, ["stop"])
4254
4340
  }, " Retry ")) : o("", !0)
4255
- ])], 8, Gi)) : (w(), s("div", Ji, [c("div", Yi, [k(e.$slots, "item-icon", {
4256
- icon: N(Vt)(n.item.type),
4341
+ ])], 8, Zi)) : (w(), s("div", ea, [c("div", ta, [k(e.$slots, "item-icon", {
4342
+ icon: F(Ut)(n.item.type),
4257
4343
  item: n.item
4258
- }, () => [(w(), a(A(N(Vt)(n.item.type)), {
4344
+ }, () => [(w(), a(A(F(Ut)(n.item.type)), {
4259
4345
  class: "h-6 w-6 stroke-[1.8] text-[#f7f1ea]/78",
4260
4346
  "aria-hidden": "true"
4261
4347
  }))])])])),
4262
- c("div", Xi, [k(e.$slots, "grid-item-overlay", {
4348
+ c("div", na, [k(e.$slots, "grid-item-overlay", {
4263
4349
  active: n.active,
4264
4350
  focused: f.value,
4265
4351
  hovered: p.value,
4266
4352
  index: n.index,
4267
4353
  item: n.item,
4268
- openFullscreen: de
4354
+ openFullscreen: ue
4269
4355
  })])
4270
4356
  ], 34));
4271
4357
  }
4272
- }), Qi = { class: "relative h-full min-h-0 bg-[radial-gradient(circle_at_top_center,rgba(255,255,255,0.04),transparent_28%),linear-gradient(180deg,#06070b,#05060a)]" }, $i = { class: "pointer-events-none absolute inset-x-0 top-0 z-[2] flex justify-end p-6" }, ea = {
4358
+ }), ia = { class: "relative h-full min-h-0 bg-[radial-gradient(circle_at_top_center,rgba(255,255,255,0.04),transparent_28%),linear-gradient(180deg,#06070b,#05060a)]" }, aa = { class: "pointer-events-none absolute inset-x-0 top-0 z-[2] flex justify-end p-6" }, oa = {
4273
4359
  "data-testid": "vibe-pagination",
4274
4360
  class: "inline-flex shrink-0 items-center gap-2 whitespace-nowrap border border-white/14 bg-black/40 px-3 py-2 text-[0.63rem] font-bold uppercase tracking-[0.12em] text-[#f7f1ea]/72 backdrop-blur-[18px] min-[721px]:gap-3 min-[721px]:px-4 min-[721px]:py-3 min-[721px]:text-[0.74rem] min-[721px]:tracking-[0.2em]"
4275
- }, ta = { class: "whitespace-nowrap" }, na = {
4361
+ }, sa = { class: "whitespace-nowrap" }, ca = {
4276
4362
  key: 0,
4277
4363
  class: "whitespace-nowrap border-l border-white/12 pl-2 text-[#f7f1ea]/56 min-[721px]:pl-3"
4278
- }, ra = [
4364
+ }, la = [
4279
4365
  "data-active",
4280
4366
  "data-index",
4281
4367
  "data-item-id",
4282
4368
  "data-occurrence-key"
4283
- ], ia = ["data-item-id"], aa = {
4369
+ ], ua = ["data-item-id"], da = {
4284
4370
  key: 0,
4285
4371
  class: "pointer-events-none absolute inset-y-0 right-0 z-[3] hidden w-8 min-[1024px]:block"
4286
- }, oa = {
4372
+ }, fa = {
4287
4373
  key: 1,
4288
4374
  class: "pointer-events-none absolute inset-x-0 bottom-0 z-[2] px-5 pb-5 sm:px-6"
4289
- }, sa = { class: "mx-auto flex w-full justify-center" }, ca = /* @__PURE__ */ d({
4375
+ }, pa = { class: "mx-auto flex w-full justify-center" }, ma = /* @__PURE__ */ d({
4290
4376
  __name: "ListSurface",
4291
4377
  props: {
4292
4378
  active: {
@@ -4348,30 +4434,30 @@ var Bi = ["aria-label"], Vi = {
4348
4434
  "update:activeIndex"
4349
4435
  ],
4350
4436
  setup(e, { expose: n, emit: r }) {
4351
- let d = e, f = F(), p = r, m = wi({
4352
- active: M(d, "active"),
4353
- allowExhaustedNextPageRefresh: M(d, "allowExhaustedNextPageRefresh"),
4354
- bottomLoadBufferPx: M(d, "bottomLoadBufferPx"),
4355
- items: M(d, "items"),
4356
- activeIndex: M(d, "activeIndex"),
4357
- loading: M(d, "loading"),
4358
- hasNextPage: M(d, "hasNextPage"),
4359
- hasPreviousPage: M(d, "hasPreviousPage"),
4360
- paginationDetail: M(d, "paginationDetail"),
4361
- pendingAppendItems: M(d, "pendingAppendItems"),
4362
- commitPendingAppend: M(d, "commitPendingAppend"),
4363
- requestNextPage: M(d, "requestNextPage"),
4364
- requestPreviousPage: M(d, "requestPreviousPage"),
4437
+ let d = e, f = L(), p = r, m = Ai({
4438
+ active: N(d, "active"),
4439
+ allowExhaustedNextPageRefresh: N(d, "allowExhaustedNextPageRefresh"),
4440
+ bottomLoadBufferPx: N(d, "bottomLoadBufferPx"),
4441
+ items: N(d, "items"),
4442
+ activeIndex: N(d, "activeIndex"),
4443
+ loading: N(d, "loading"),
4444
+ hasNextPage: N(d, "hasNextPage"),
4445
+ hasPreviousPage: N(d, "hasPreviousPage"),
4446
+ paginationDetail: N(d, "paginationDetail"),
4447
+ pendingAppendItems: N(d, "pendingAppendItems"),
4448
+ commitPendingAppend: N(d, "commitPendingAppend"),
4449
+ requestNextPage: N(d, "requestNextPage"),
4450
+ requestPreviousPage: N(d, "requestPreviousPage"),
4365
4451
  setActiveIndex(e) {
4366
4452
  p("update:activeIndex", e);
4367
4453
  }
4368
4454
  });
4369
4455
  n({ autoScroll: m.autoScroll });
4370
- let h = i(() => on({
4456
+ let h = i(() => cn({
4371
4457
  itemCount: d.items.length,
4372
4458
  loading: d.loading,
4373
4459
  phase: d.phase
4374
- })), _ = i(() => sn({
4460
+ })), _ = i(() => ln({
4375
4461
  errorMessage: d.errorMessage,
4376
4462
  hasItems: d.items.length > 0,
4377
4463
  hasNextPage: d.hasNextPage,
@@ -4384,42 +4470,42 @@ var Bi = ["aria-label"], Vi = {
4384
4470
  message: _.value.message,
4385
4471
  paginationDetail: d.paginationDetail,
4386
4472
  total: d.items.length
4387
- }), S = i(() => !x.value || !f["grid-status"] ? [] : f["grid-status"](x.value)), C = i(() => en(S.value)), T = i(() => d.items.length + m.leavingItems.value.length), { emptyStateProps: E, showBadgeEmptyState: D, showCustomEmptyState: A, showInlineEmptyState: P } = rn({
4388
- emptyStateMode: M(d, "emptyStateMode"),
4473
+ }), S = i(() => !x.value || !f["grid-status"] ? [] : f["grid-status"](x.value)), C = i(() => nn(S.value)), T = i(() => d.items.length + m.leavingItems.value.length), { emptyStateProps: E, showBadgeEmptyState: D, showCustomEmptyState: A, showInlineEmptyState: j } = on({
4474
+ emptyStateMode: N(d, "emptyStateMode"),
4389
4475
  itemCount: T,
4390
- loading: M(d, "loading"),
4476
+ loading: N(d, "loading"),
4391
4477
  renderSlot: f["empty-state"],
4392
4478
  surface: "grid"
4393
4479
  });
4394
- return L([m.nextBoundaryLoadProgress, m.previousBoundaryLoadProgress], ([e, t]) => {
4480
+ return z([m.nextBoundaryLoadProgress, m.previousBoundaryLoadProgress], ([e, t]) => {
4395
4481
  p("boundary-load-progress", {
4396
4482
  nextBoundaryLoadProgress: e,
4397
4483
  previousBoundaryLoadProgress: t
4398
4484
  });
4399
- }, { immediate: !0 }), (e, n) => (w(), s("div", Qi, [
4400
- c("div", $i, [c("span", ea, [c("span", ta, j(N(m).paginationLabel.value), 1), d.paginationDetail ? (w(), s("span", na, j(d.paginationDetail), 1)) : o("", !0)])]),
4485
+ }, { immediate: !0 }), (e, n) => (w(), s("div", ia, [
4486
+ c("div", aa, [c("span", oa, [c("span", sa, M(F(m).paginationLabel.value), 1), d.paginationDetail ? (w(), s("span", ca, M(d.paginationDetail), 1)) : o("", !0)])]),
4401
4487
  c("div", {
4402
- ref: N(m).scrollViewportRef,
4488
+ ref: F(m).scrollViewportRef,
4403
4489
  "data-testid": "vibe-list-scroll",
4404
4490
  class: "h-full min-h-0 overflow-y-auto overflow-x-hidden [overflow-anchor:none] [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden",
4405
- onScroll: n[0] ||= (...e) => N(m).onScroll && N(m).onScroll(...e),
4406
- onWheel: n[1] ||= (...e) => N(m).onWheel && N(m).onWheel(...e)
4491
+ onScroll: n[0] ||= (...e) => F(m).onScroll && F(m).onScroll(...e),
4492
+ onWheel: n[1] ||= (...e) => F(m).onWheel && F(m).onWheel(...e)
4407
4493
  }, [c("div", {
4408
4494
  "data-testid": "vibe-list-content",
4409
4495
  class: "relative",
4410
- style: b({ height: `${N(m).containerHeight.value}px` })
4496
+ style: b({ height: `${F(m).containerHeight.value}px` })
4411
4497
  }, [
4412
- (w(!0), s(t, null, O(N(m).renderedItems.value, ({ item: t, index: n }) => (w(), s("article", {
4413
- key: N(Q)(t),
4498
+ (w(!0), s(t, null, O(F(m).renderedItems.value, ({ item: t, index: n }) => (w(), s("article", {
4499
+ key: F($)(t),
4414
4500
  "data-testid": "vibe-list-card",
4415
- "data-active": n === N(m).resolvedActiveIndex.value ? "true" : "false",
4501
+ "data-active": n === F(m).resolvedActiveIndex.value ? "true" : "false",
4416
4502
  "data-index": n,
4417
4503
  "data-item-id": t.id,
4418
- "data-occurrence-key": N(Q)(t),
4504
+ "data-occurrence-key": F($)(t),
4419
4505
  class: "absolute will-change-transform",
4420
- style: b(N(m).getCardStyle(n))
4421
- }, [u(Zi, {
4422
- active: n === N(m).resolvedActiveIndex.value,
4506
+ style: b(F(m).getCardStyle(n))
4507
+ }, [u(ra, {
4508
+ active: n === F(m).resolvedActiveIndex.value,
4423
4509
  index: n,
4424
4510
  item: t,
4425
4511
  "report-asset-error": d.reportAssetError,
@@ -4428,11 +4514,11 @@ var Bi = ["aria-label"], Vi = {
4428
4514
  onOpen: (e) => p("open-fullscreen", n)
4429
4515
  }, l({ _: 2 }, [f["grid-item-overlay"] ? {
4430
4516
  name: "grid-item-overlay",
4431
- fn: z((t) => [k(e.$slots, "grid-item-overlay", g({ ref_for: !0 }, t))]),
4517
+ fn: B((t) => [k(e.$slots, "grid-item-overlay", g({ ref_for: !0 }, t))]),
4432
4518
  key: "0"
4433
4519
  } : void 0, f["item-icon"] ? {
4434
4520
  name: "item-icon",
4435
- fn: z((t) => [k(e.$slots, "item-icon", g({ ref_for: !0 }, t))]),
4521
+ fn: B((t) => [k(e.$slots, "item-icon", g({ ref_for: !0 }, t))]),
4436
4522
  key: "1"
4437
4523
  } : void 0]), 1032, [
4438
4524
  "active",
@@ -4442,14 +4528,14 @@ var Bi = ["aria-label"], Vi = {
4442
4528
  "report-asset-load",
4443
4529
  "surface-active",
4444
4530
  "onOpen"
4445
- ])], 12, ra))), 128)),
4446
- (w(!0), s(t, null, O(N(m).leavingItems.value, (t) => (w(), s("article", {
4447
- key: `leaving-${N(Q)(t.item)}`,
4531
+ ])], 12, la))), 128)),
4532
+ (w(!0), s(t, null, O(F(m).leavingItems.value, (t) => (w(), s("article", {
4533
+ key: `leaving-${F($)(t.item)}`,
4448
4534
  "data-testid": "vibe-list-card-leaving",
4449
4535
  "data-item-id": t.item.id,
4450
4536
  class: "pointer-events-none absolute z-[2] will-change-[opacity,transform]",
4451
- style: b(N(m).getLeavingCardStyle(t.item))
4452
- }, [u(Zi, {
4537
+ style: b(F(m).getLeavingCardStyle(t.item))
4538
+ }, [u(ra, {
4453
4539
  active: !1,
4454
4540
  index: -1,
4455
4541
  item: t.item,
@@ -4458,20 +4544,20 @@ var Bi = ["aria-label"], Vi = {
4458
4544
  "surface-active": !1
4459
4545
  }, l({ _: 2 }, [f["item-icon"] ? {
4460
4546
  name: "item-icon",
4461
- fn: z((t) => [k(e.$slots, "item-icon", g({ ref_for: !0 }, t))]),
4547
+ fn: B((t) => [k(e.$slots, "item-icon", g({ ref_for: !0 }, t))]),
4462
4548
  key: "0"
4463
4549
  } : void 0]), 1032, [
4464
4550
  "item",
4465
4551
  "report-asset-error",
4466
4552
  "report-asset-load"
4467
- ])], 12, ia))), 128)),
4468
- N(P) && N(E) ? (w(), a(Bn, {
4553
+ ])], 12, ua))), 128)),
4554
+ F(j) && F(E) ? (w(), a(Hn, {
4469
4555
  key: 0,
4470
- message: N(E).message,
4471
- mode: N(E).mode,
4472
- surface: N(E).surface
4556
+ message: F(E).message,
4557
+ mode: F(E).mode,
4558
+ surface: F(E).surface
4473
4559
  }, {
4474
- default: z(() => [N(A) ? k(e.$slots, "empty-state", y(g({ key: 0 }, N(E)))) : o("", !0)]),
4560
+ default: B(() => [F(A) ? k(e.$slots, "empty-state", y(g({ key: 0 }, F(E)))) : o("", !0)]),
4475
4561
  _: 3
4476
4562
  }, 8, [
4477
4563
  "message",
@@ -4479,12 +4565,12 @@ var Bi = ["aria-label"], Vi = {
4479
4565
  "surface"
4480
4566
  ])) : o("", !0)
4481
4567
  ], 4)], 544),
4482
- N(m).showScrollbar.value ? (w(), s("div", aa, [n[2] ||= c("div", { class: "absolute bottom-6 right-3 top-6 w-px bg-white/8" }, null, -1), c("div", {
4568
+ F(m).showScrollbar.value ? (w(), s("div", da, [n[2] ||= c("div", { class: "absolute bottom-6 right-3 top-6 w-px bg-white/8" }, null, -1), c("div", {
4483
4569
  "data-testid": "vibe-list-scrollbar-thumb",
4484
4570
  class: v(["absolute right-[0.625rem] w-1 bg-white/34 transition-[height,transform,background-color,opacity] duration-300 ease-out", d.loading ? "bg-white/52" : "bg-white/34"]),
4485
- style: b(N(m).getScrollbarThumbStyle())
4571
+ style: b(F(m).getScrollbarThumbStyle())
4486
4572
  }, null, 6)])) : o("", !0),
4487
- f["grid-footer"] ? (w(), s("div", oa, [c("div", sa, [k(e.$slots, "grid-footer")])])) : o("", !0),
4573
+ f["grid-footer"] ? (w(), s("div", fa, [c("div", pa, [k(e.$slots, "grid-footer")])])) : o("", !0),
4488
4574
  x.value ? (w(), s("div", {
4489
4575
  key: 2,
4490
4576
  class: v(["pointer-events-none absolute inset-x-0 bottom-0 z-[3] flex justify-center px-6", f["grid-footer"] ? "pb-24" : "pb-6"])
@@ -4492,15 +4578,15 @@ var Bi = ["aria-label"], Vi = {
4492
4578
  key: 1,
4493
4579
  "data-testid": "vibe-grid-status-badge",
4494
4580
  class: v(["inline-flex items-center border border-white/14 bg-black/55 px-4 py-3 text-[0.7rem] font-bold uppercase tracking-[0.18em] text-[#f7f1ea]/72 backdrop-blur-[18px]", x.value.kind === "end" ? "border-amber-300/35 text-amber-200" : x.value.kind === "failed" ? "border-rose-400/45 text-rose-100" : ""])
4495
- }, j(x.value.message), 3))], 2)) : o("", !0),
4496
- N(D) && N(E) ? (w(), a(Bn, {
4581
+ }, M(x.value.message), 3))], 2)) : o("", !0),
4582
+ F(D) && F(E) ? (w(), a(Hn, {
4497
4583
  key: 3,
4498
4584
  class: v(["z-[3]", f["grid-footer"] ? "pb-24" : "pb-6"]),
4499
- message: N(E).message,
4500
- mode: N(E).mode,
4501
- surface: N(E).surface
4585
+ message: F(E).message,
4586
+ mode: F(E).mode,
4587
+ surface: F(E).surface
4502
4588
  }, {
4503
- default: z(() => [N(A) ? k(e.$slots, "empty-state", y(g({ key: 0 }, N(E)))) : o("", !0)]),
4589
+ default: B(() => [F(A) ? k(e.$slots, "empty-state", y(g({ key: 0 }, F(E)))) : o("", !0)]),
4504
4590
  _: 3
4505
4591
  }, 8, [
4506
4592
  "class",
@@ -4510,13 +4596,13 @@ var Bi = ["aria-label"], Vi = {
4510
4596
  ])) : o("", !0)
4511
4597
  ]));
4512
4598
  }
4513
- }), la = ["data-surface-mode"], ua = {
4599
+ }), ha = ["data-surface-mode"], ga = {
4514
4600
  key: 1,
4515
4601
  class: "absolute left-5 top-5 z-30 border border-amber-400/45 bg-black/35 px-4 py-2 text-xs font-medium uppercase tracking-[0.24em] text-amber-100 backdrop-blur"
4516
- }, da = ["data-visible", "inert"], fa = ["data-visible", "inert"], pa = {
4602
+ }, _a = ["data-visible", "inert"], va = ["data-visible", "inert"], ya = {
4517
4603
  key: 3,
4518
4604
  class: "relative z-[1] grid h-full w-full content-center justify-items-center gap-6 px-[clamp(2rem,4vw,3rem)] py-[clamp(2rem,4vw,3rem)] text-center"
4519
- }, ma = /* @__PURE__ */ d({
4605
+ }, ba = /* @__PURE__ */ d({
4520
4606
  name: "VibeLayout",
4521
4607
  __name: "Layout",
4522
4608
  props: {
@@ -4543,14 +4629,14 @@ var Bi = ["aria-label"], Vi = {
4543
4629
  "update:surfaceMode"
4544
4630
  ],
4545
4631
  setup(e, { expose: n, emit: i }) {
4546
- let d = e, f = F(), m = i, h = dt(d, m), g = D(null), _ = fe((e) => {
4632
+ let d = e, f = L(), m = i, h = pt(d, m), g = D(null), _ = pe((e) => {
4547
4633
  m("asset-errors", e);
4548
- }), v = pe((e) => {
4634
+ }), v = me((e) => {
4549
4635
  m("asset-loads", e);
4550
4636
  });
4551
4637
  x(() => {
4552
4638
  _.stop(), v.stop();
4553
- }), L(() => h.items.value, (e) => {
4639
+ }), z(() => h.items.value, (e) => {
4554
4640
  m("items-change", [...e]);
4555
4641
  });
4556
4642
  function b(e) {
@@ -4577,14 +4663,14 @@ var Bi = ["aria-label"], Vi = {
4577
4663
  unlockPageLoading: h.unlockPageLoading
4578
4664
  }), (e, n) => (w(), s("section", {
4579
4665
  "data-testid": "vibe",
4580
- "data-surface-mode": N(h).surfaceMode.value,
4666
+ "data-surface-mode": F(h).surfaceMode.value,
4581
4667
  class: "relative h-full min-h-0 overflow-hidden bg-[#05060a] text-[#f7f1ea]"
4582
- }, [N(h).canRetryInitialLoad.value ? (w(), s("button", {
4668
+ }, [F(h).canRetryInitialLoad.value ? (w(), s("button", {
4583
4669
  key: 0,
4584
4670
  type: "button",
4585
4671
  class: "absolute left-5 top-5 z-30 inline-flex items-center border border-rose-400/55 bg-rose-500/18 px-4 py-2 text-xs font-medium uppercase tracking-[0.24em] text-white backdrop-blur transition hover:bg-rose-500/28",
4586
- onClick: n[0] ||= (...e) => N(h).retryInitialLoad && N(h).retryInitialLoad(...e)
4587
- }, " Retry ")) : N(h).errorMessage.value && N(h).items.value.length > 0 ? (w(), s("div", ua, j(N(h).errorMessage.value), 1)) : o("", !0), N(h).isDesktop.value ? (w(), s(t, { key: 2 }, [u(r, {
4672
+ onClick: n[0] ||= (...e) => F(h).retryInitialLoad && F(h).retryInitialLoad(...e)
4673
+ }, " Retry ")) : F(h).errorMessage.value && F(h).items.value.length > 0 ? (w(), s("div", ga, M(F(h).errorMessage.value), 1)) : o("", !0), F(h).isDesktop.value ? (w(), s(t, { key: 2 }, [u(r, {
4588
4674
  appear: "",
4589
4675
  "enter-active-class": "transition-[opacity,transform] duration-300 ease-out",
4590
4676
  "enter-from-class": "translate-y-3 opacity-0",
@@ -4593,60 +4679,60 @@ var Bi = ["aria-label"], Vi = {
4593
4679
  "leave-from-class": "translate-y-0 opacity-100",
4594
4680
  "leave-to-class": "translate-y-3 opacity-0"
4595
4681
  }, {
4596
- default: z(() => [ee(c("div", {
4682
+ default: B(() => [V(c("div", {
4597
4683
  "data-testid": "vibe-list-surface",
4598
- "data-visible": N(h).surfaceMode.value === "list" ? "true" : "false",
4599
- inert: N(h).surfaceMode.value !== "list",
4684
+ "data-visible": F(h).surfaceMode.value === "list" ? "true" : "false",
4685
+ inert: F(h).surfaceMode.value !== "list",
4600
4686
  class: "absolute inset-0 z-[2]"
4601
- }, [u(ca, {
4687
+ }, [u(ma, {
4602
4688
  ref_key: "listSurfaceRef",
4603
4689
  ref: g,
4604
- active: N(h).surfaceMode.value === "list",
4605
- "allow-exhausted-next-page-refresh": N(h).canRefreshExhaustedNextPage.value,
4690
+ active: F(h).surfaceMode.value === "list",
4691
+ "allow-exhausted-next-page-refresh": F(h).canRefreshExhaustedNextPage.value,
4606
4692
  "bottom-load-buffer-px": d.bottomLoadBufferPx,
4607
- items: N(h).items.value,
4608
- "active-index": N(h).activeIndex.value,
4609
- "error-message": N(h).errorMessage.value,
4610
- loading: N(h).loading.value,
4611
- "has-next-page": N(h).hasNextPage.value,
4612
- "has-previous-page": N(h).hasPreviousPage.value,
4613
- "pending-append-items": N(h).pendingAppendItems.value,
4614
- phase: N(h).phase.value,
4615
- "commit-pending-append": N(h).commitPendingAppend,
4616
- "pagination-detail": N(h).paginationDetail.value,
4617
- "report-asset-error": N(_).report,
4618
- "report-asset-load": N(v).report,
4619
- "request-next-page": N(h).prefetchNextPage,
4620
- "request-previous-page": N(h).prefetchPreviousPage,
4693
+ items: F(h).items.value,
4694
+ "active-index": F(h).activeIndex.value,
4695
+ "error-message": F(h).errorMessage.value,
4696
+ loading: F(h).loading.value,
4697
+ "has-next-page": F(h).hasNextPage.value,
4698
+ "has-previous-page": F(h).hasPreviousPage.value,
4699
+ "pending-append-items": F(h).pendingAppendItems.value,
4700
+ phase: F(h).phase.value,
4701
+ "commit-pending-append": F(h).commitPendingAppend,
4702
+ "pagination-detail": F(h).paginationDetail.value,
4703
+ "report-asset-error": F(_).report,
4704
+ "report-asset-load": F(v).report,
4705
+ "request-next-page": F(h).prefetchNextPage,
4706
+ "request-previous-page": F(h).prefetchPreviousPage,
4621
4707
  "empty-state-mode": d.emptyStateMode,
4622
4708
  "show-status-badges": d.showStatusBadges ?? !0,
4623
- onBoundaryLoadProgress: N(h).setBoundaryLoadProgress,
4624
- onOpenFullscreen: N(h).openFullscreen,
4625
- "onUpdate:activeIndex": N(h).setActiveIndex
4709
+ onBoundaryLoadProgress: F(h).setBoundaryLoadProgress,
4710
+ onOpenFullscreen: F(h).openFullscreen,
4711
+ "onUpdate:activeIndex": F(h).setActiveIndex
4626
4712
  }, l({ _: 2 }, [
4627
4713
  f["empty-state"] ? {
4628
4714
  name: "empty-state",
4629
- fn: z((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4715
+ fn: B((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4630
4716
  key: "0"
4631
4717
  } : void 0,
4632
4718
  f["grid-footer"] ? {
4633
4719
  name: "grid-footer",
4634
- fn: z(() => [k(e.$slots, "grid-footer")]),
4720
+ fn: B(() => [k(e.$slots, "grid-footer")]),
4635
4721
  key: "1"
4636
4722
  } : void 0,
4637
4723
  f["grid-item-overlay"] ? {
4638
4724
  name: "grid-item-overlay",
4639
- fn: z((t) => [k(e.$slots, "grid-item-overlay", y(p(t)))]),
4725
+ fn: B((t) => [k(e.$slots, "grid-item-overlay", y(p(t)))]),
4640
4726
  key: "2"
4641
4727
  } : void 0,
4642
4728
  f["grid-status"] ? {
4643
4729
  name: "grid-status",
4644
- fn: z((t) => [k(e.$slots, "grid-status", y(p(t)))]),
4730
+ fn: B((t) => [k(e.$slots, "grid-status", y(p(t)))]),
4645
4731
  key: "3"
4646
4732
  } : void 0,
4647
4733
  f["item-icon"] ? {
4648
4734
  name: "item-icon",
4649
- fn: z((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4735
+ fn: B((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4650
4736
  key: "4"
4651
4737
  } : void 0
4652
4738
  ]), 1032, [
@@ -4672,7 +4758,7 @@ var Bi = ["aria-label"], Vi = {
4672
4758
  "onBoundaryLoadProgress",
4673
4759
  "onOpenFullscreen",
4674
4760
  "onUpdate:activeIndex"
4675
- ])], 8, da), [[I, N(h).surfaceMode.value === "list"]])]),
4761
+ ])], 8, _a), [[R, F(h).surfaceMode.value === "list"]])]),
4676
4762
  _: 3
4677
4763
  }), u(r, {
4678
4764
  appear: "",
@@ -4683,59 +4769,59 @@ var Bi = ["aria-label"], Vi = {
4683
4769
  "leave-from-class": "translate-y-0 opacity-100",
4684
4770
  "leave-to-class": "-translate-y-3 opacity-0"
4685
4771
  }, {
4686
- default: z(() => [ee(c("div", {
4772
+ default: B(() => [V(c("div", {
4687
4773
  "data-testid": "vibe-fullscreen-surface",
4688
- "data-visible": N(h).surfaceMode.value === "fullscreen" ? "true" : "false",
4689
- inert: N(h).surfaceMode.value !== "fullscreen",
4774
+ "data-visible": F(h).surfaceMode.value === "fullscreen" ? "true" : "false",
4775
+ inert: F(h).surfaceMode.value !== "fullscreen",
4690
4776
  class: "absolute inset-0 z-[3]"
4691
- }, [u(Sr, {
4692
- items: N(h).items.value,
4693
- active: N(h).surfaceMode.value === "fullscreen",
4694
- "active-index": N(h).activeIndex.value,
4695
- "error-message": N(h).errorMessage.value,
4696
- loading: N(h).loading.value,
4697
- "has-next-page": N(h).hasNextPage.value,
4698
- "pagination-detail": N(h).paginationDetail.value,
4699
- phase: N(h).phase.value,
4700
- "report-asset-error": N(_).report,
4701
- "report-asset-load": N(v).report,
4777
+ }, [u(wr, {
4778
+ items: F(h).items.value,
4779
+ active: F(h).surfaceMode.value === "fullscreen",
4780
+ "active-index": F(h).activeIndex.value,
4781
+ "error-message": F(h).errorMessage.value,
4782
+ loading: F(h).loading.value,
4783
+ "has-next-page": F(h).hasNextPage.value,
4784
+ "pagination-detail": F(h).paginationDetail.value,
4785
+ phase: F(h).phase.value,
4786
+ "report-asset-error": F(_).report,
4787
+ "report-asset-load": F(v).report,
4702
4788
  "empty-state-mode": d.emptyStateMode,
4703
4789
  "loop-fullscreen-video": d.loopFullscreenVideo ?? !0,
4704
4790
  "show-dominant-image-tone": d.showDominantImageTone ?? !0,
4705
4791
  "show-end-badge": d.showEndBadge ?? !0,
4706
4792
  "show-status-badges": d.showStatusBadges ?? !0,
4707
- "show-back-to-list": N(h).showBackToList.value,
4708
- onBackToList: N(h).returnToList,
4709
- "onUpdate:activeIndex": N(h).setActiveIndex
4793
+ "show-back-to-list": F(h).showBackToList.value,
4794
+ onBackToList: F(h).returnToList,
4795
+ "onUpdate:activeIndex": F(h).setActiveIndex
4710
4796
  }, l({ _: 2 }, [
4711
4797
  f["empty-state"] ? {
4712
4798
  name: "empty-state",
4713
- fn: z((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4799
+ fn: B((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4714
4800
  key: "0"
4715
4801
  } : void 0,
4716
4802
  f["fullscreen-overlay"] ? {
4717
4803
  name: "fullscreen-overlay",
4718
- fn: z((t) => [k(e.$slots, "fullscreen-overlay", y(p(t)))]),
4804
+ fn: B((t) => [k(e.$slots, "fullscreen-overlay", y(p(t)))]),
4719
4805
  key: "1"
4720
4806
  } : void 0,
4721
4807
  f["fullscreen-aside"] ? {
4722
4808
  name: "fullscreen-aside",
4723
- fn: z((t) => [k(e.$slots, "fullscreen-aside", y(p(t)))]),
4809
+ fn: B((t) => [k(e.$slots, "fullscreen-aside", y(p(t)))]),
4724
4810
  key: "2"
4725
4811
  } : void 0,
4726
4812
  f["fullscreen-header-actions"] ? {
4727
4813
  name: "fullscreen-header-actions",
4728
- fn: z((t) => [k(e.$slots, "fullscreen-header-actions", y(p(t)))]),
4814
+ fn: B((t) => [k(e.$slots, "fullscreen-header-actions", y(p(t)))]),
4729
4815
  key: "3"
4730
4816
  } : void 0,
4731
4817
  f["fullscreen-status"] ? {
4732
4818
  name: "fullscreen-status",
4733
- fn: z((t) => [k(e.$slots, "fullscreen-status", y(p(t)))]),
4819
+ fn: B((t) => [k(e.$slots, "fullscreen-status", y(p(t)))]),
4734
4820
  key: "4"
4735
4821
  } : void 0,
4736
4822
  f["item-icon"] ? {
4737
4823
  name: "item-icon",
4738
- fn: z((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4824
+ fn: B((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4739
4825
  key: "5"
4740
4826
  } : void 0
4741
4827
  ]), 1032, [
@@ -4757,60 +4843,60 @@ var Bi = ["aria-label"], Vi = {
4757
4843
  "show-back-to-list",
4758
4844
  "onBackToList",
4759
4845
  "onUpdate:activeIndex"
4760
- ])], 8, fa), [[I, N(h).surfaceMode.value === "fullscreen"]])]),
4846
+ ])], 8, va), [[R, F(h).surfaceMode.value === "fullscreen"]])]),
4761
4847
  _: 3
4762
- })], 64)) : N(h).items.value.length === 0 && N(h).loading.value ? (w(), s("div", pa, [u(N(oe), {
4848
+ })], 64)) : F(h).items.value.length === 0 && F(h).loading.value ? (w(), s("div", ya, [u(F(oe), {
4763
4849
  class: "size-10 animate-spin text-[#f7f1ea]/82",
4764
4850
  "aria-hidden": "true"
4765
- }), n[1] ||= c("p", { class: "m-0 text-[0.9rem] font-semibold uppercase tracking-[0.22em] text-[#f7f1ea]/72" }, " Loading... ", -1)])) : (w(), a(Sr, {
4851
+ }), n[1] ||= c("p", { class: "m-0 text-[0.9rem] font-semibold uppercase tracking-[0.22em] text-[#f7f1ea]/72" }, " Loading... ", -1)])) : (w(), a(wr, {
4766
4852
  key: 4,
4767
- items: N(h).items.value,
4853
+ items: F(h).items.value,
4768
4854
  active: !0,
4769
- "active-index": N(h).activeIndex.value,
4770
- "error-message": N(h).errorMessage.value,
4771
- loading: N(h).loading.value,
4772
- "has-next-page": N(h).hasNextPage.value,
4773
- "pagination-detail": N(h).paginationDetail.value,
4774
- phase: N(h).phase.value,
4775
- "report-asset-error": N(_).report,
4776
- "report-asset-load": N(v).report,
4855
+ "active-index": F(h).activeIndex.value,
4856
+ "error-message": F(h).errorMessage.value,
4857
+ loading: F(h).loading.value,
4858
+ "has-next-page": F(h).hasNextPage.value,
4859
+ "pagination-detail": F(h).paginationDetail.value,
4860
+ phase: F(h).phase.value,
4861
+ "report-asset-error": F(_).report,
4862
+ "report-asset-load": F(v).report,
4777
4863
  "empty-state-mode": d.emptyStateMode,
4778
4864
  "loop-fullscreen-video": d.loopFullscreenVideo ?? !0,
4779
4865
  "show-dominant-image-tone": d.showDominantImageTone ?? !0,
4780
4866
  "show-end-badge": d.showEndBadge ?? !0,
4781
4867
  "show-status-badges": d.showStatusBadges ?? !0,
4782
4868
  "show-back-to-list": !1,
4783
- onBackToList: N(h).returnToList,
4784
- "onUpdate:activeIndex": N(h).setActiveIndex
4869
+ onBackToList: F(h).returnToList,
4870
+ "onUpdate:activeIndex": F(h).setActiveIndex
4785
4871
  }, l({ _: 2 }, [
4786
4872
  f["empty-state"] ? {
4787
4873
  name: "empty-state",
4788
- fn: z((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4874
+ fn: B((t) => [k(e.$slots, "empty-state", y(p(t)))]),
4789
4875
  key: "0"
4790
4876
  } : void 0,
4791
4877
  f["fullscreen-overlay"] ? {
4792
4878
  name: "fullscreen-overlay",
4793
- fn: z((t) => [k(e.$slots, "fullscreen-overlay", y(p(t)))]),
4879
+ fn: B((t) => [k(e.$slots, "fullscreen-overlay", y(p(t)))]),
4794
4880
  key: "1"
4795
4881
  } : void 0,
4796
4882
  f["fullscreen-aside"] ? {
4797
4883
  name: "fullscreen-aside",
4798
- fn: z((t) => [k(e.$slots, "fullscreen-aside", y(p(t)))]),
4884
+ fn: B((t) => [k(e.$slots, "fullscreen-aside", y(p(t)))]),
4799
4885
  key: "2"
4800
4886
  } : void 0,
4801
4887
  f["fullscreen-header-actions"] ? {
4802
4888
  name: "fullscreen-header-actions",
4803
- fn: z((t) => [k(e.$slots, "fullscreen-header-actions", y(p(t)))]),
4889
+ fn: B((t) => [k(e.$slots, "fullscreen-header-actions", y(p(t)))]),
4804
4890
  key: "3"
4805
4891
  } : void 0,
4806
4892
  f["fullscreen-status"] ? {
4807
4893
  name: "fullscreen-status",
4808
- fn: z((t) => [k(e.$slots, "fullscreen-status", y(p(t)))]),
4894
+ fn: B((t) => [k(e.$slots, "fullscreen-status", y(p(t)))]),
4809
4895
  key: "4"
4810
4896
  } : void 0,
4811
4897
  f["item-icon"] ? {
4812
4898
  name: "item-icon",
4813
- fn: z((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4899
+ fn: B((t) => [k(e.$slots, "item-icon", y(p(t)))]),
4814
4900
  key: "5"
4815
4901
  } : void 0
4816
4902
  ]), 1032, [
@@ -4830,10 +4916,10 @@ var Bi = ["aria-label"], Vi = {
4830
4916
  "show-status-badges",
4831
4917
  "onBackToList",
4832
4918
  "onUpdate:activeIndex"
4833
- ]))], 8, la));
4919
+ ]))], 8, ha));
4834
4920
  }
4835
- }), ha = { install(e) {
4836
- e.component("VibeLayout", ma);
4921
+ }), xa = { install(e) {
4922
+ e.component("VibeLayout", ba);
4837
4923
  } };
4838
4924
  //#endregion
4839
- export { ma as VibeLayout, ha as VibePlugin, ha as default };
4925
+ export { ba as VibeLayout, xa as VibePlugin, xa as default };