@wyxos/vibe 1.6.23 → 1.6.25
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 +731 -705
- package/lib/vibe.css +1 -1
- package/package.json +1 -1
- package/src/Masonry.vue +1037 -973
- package/src/useMasonryScroll.ts +3 -2
package/lib/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { nextTick as q, ref as
|
|
2
|
-
let
|
|
3
|
-
function
|
|
4
|
-
if (
|
|
1
|
+
import { nextTick as q, ref as B, computed as Z, defineComponent as et, onMounted as tt, onUnmounted as at, watch as te, createElementBlock as R, openBlock as O, createCommentVNode as ae, createElementVNode as V, normalizeStyle as ge, renderSlot as X, normalizeClass as re, withModifiers as Ye, toDisplayString as Be, unref as U, Fragment as Ue, renderList as _e, createVNode as He, withCtx as fe, mergeProps as de, TransitionGroup as Tt } from "vue";
|
|
2
|
+
let $e = null;
|
|
3
|
+
function It() {
|
|
4
|
+
if ($e != null) return $e;
|
|
5
5
|
const e = document.createElement("div");
|
|
6
6
|
e.style.visibility = "hidden", e.style.overflow = "scroll", e.style.msOverflowStyle = "scrollbar", e.style.width = "100px", e.style.height = "100px", document.body.appendChild(e);
|
|
7
7
|
const l = document.createElement("div");
|
|
8
8
|
l.style.width = "100%", e.appendChild(l);
|
|
9
9
|
const r = e.offsetWidth - l.offsetWidth;
|
|
10
|
-
return document.body.removeChild(e),
|
|
10
|
+
return document.body.removeChild(e), $e = r, r;
|
|
11
11
|
}
|
|
12
|
-
function
|
|
12
|
+
function Xe(e, l, r, t = {}) {
|
|
13
13
|
const {
|
|
14
14
|
gutterX: y = 0,
|
|
15
|
-
gutterY:
|
|
16
|
-
header:
|
|
15
|
+
gutterY: g = 0,
|
|
16
|
+
header: h = 0,
|
|
17
17
|
footer: i = 0,
|
|
18
18
|
paddingLeft: w = 0,
|
|
19
19
|
paddingRight: b = 0,
|
|
20
|
-
sizes:
|
|
20
|
+
sizes: n = {
|
|
21
21
|
base: 1,
|
|
22
22
|
sm: 2,
|
|
23
23
|
md: 3,
|
|
@@ -26,63 +26,63 @@ function qe(e, l, r, n = {}) {
|
|
|
26
26
|
"2xl": 6
|
|
27
27
|
},
|
|
28
28
|
placement: p = "masonry"
|
|
29
|
-
} =
|
|
30
|
-
let x = 0,
|
|
29
|
+
} = t;
|
|
30
|
+
let x = 0, T = 0;
|
|
31
31
|
try {
|
|
32
32
|
if (l && l.nodeType === 1 && typeof window < "u" && window.getComputedStyle) {
|
|
33
33
|
const L = window.getComputedStyle(l);
|
|
34
|
-
x = parseFloat(L.paddingLeft) || 0,
|
|
34
|
+
x = parseFloat(L.paddingLeft) || 0, T = parseFloat(L.paddingRight) || 0;
|
|
35
35
|
}
|
|
36
36
|
} catch {
|
|
37
37
|
}
|
|
38
|
-
const s = (w || 0) + x,
|
|
38
|
+
const s = (w || 0) + x, m = (b || 0) + T, a = l.offsetWidth - l.clientWidth, d = a > 0 ? a + 2 : It() + 2, v = l.offsetWidth - d - s - m, M = y * (r - 1), P = Math.floor((v - M) / r), I = e.map((L) => {
|
|
39
39
|
const k = L.width, W = L.height;
|
|
40
|
-
return Math.round(
|
|
40
|
+
return Math.round(P * W / k) + i + h;
|
|
41
41
|
});
|
|
42
42
|
if (p === "sequential-balanced") {
|
|
43
|
-
const L =
|
|
43
|
+
const L = I.length;
|
|
44
44
|
if (L === 0) return [];
|
|
45
|
-
const k = (
|
|
46
|
-
let W = Math.max(...
|
|
47
|
-
const u = (
|
|
48
|
-
let Y = 1,
|
|
49
|
-
for (let
|
|
50
|
-
const ie =
|
|
51
|
-
if (
|
|
52
|
-
|
|
53
|
-
else if (Y++,
|
|
45
|
+
const k = (D, Y, J) => D + (Y > 0 ? g : 0) + J;
|
|
46
|
+
let W = Math.max(...I), o = I.reduce((D, Y) => D + Y, 0) + g * Math.max(0, L - 1);
|
|
47
|
+
const u = (D) => {
|
|
48
|
+
let Y = 1, J = 0, ne = 0;
|
|
49
|
+
for (let K = 0; K < L; K++) {
|
|
50
|
+
const ie = I[K], ee = k(J, ne, ie);
|
|
51
|
+
if (ee <= D)
|
|
52
|
+
J = ee, ne++;
|
|
53
|
+
else if (Y++, J = ie, ne = 1, ie > D || Y > r) return !1;
|
|
54
54
|
}
|
|
55
55
|
return Y <= r;
|
|
56
56
|
};
|
|
57
57
|
for (; W < o; ) {
|
|
58
|
-
const
|
|
59
|
-
u(
|
|
58
|
+
const D = Math.floor((W + o) / 2);
|
|
59
|
+
u(D) ? o = D : W = D + 1;
|
|
60
60
|
}
|
|
61
|
-
const
|
|
62
|
-
let C = r - 1,
|
|
63
|
-
for (let
|
|
64
|
-
const Y =
|
|
65
|
-
!(k(
|
|
61
|
+
const E = o, $ = new Array(r).fill(0);
|
|
62
|
+
let C = r - 1, A = 0, N = 0;
|
|
63
|
+
for (let D = L - 1; D >= 0; D--) {
|
|
64
|
+
const Y = I[D], J = D < C;
|
|
65
|
+
!(k(A, N, Y) <= E) || J ? ($[C] = D + 1, C--, A = Y, N = 1) : (A = k(A, N, Y), N++);
|
|
66
66
|
}
|
|
67
67
|
$[0] = 0;
|
|
68
|
-
const j = [],
|
|
69
|
-
for (let
|
|
70
|
-
const Y = $[
|
|
71
|
-
for (let
|
|
72
|
-
const
|
|
73
|
-
...e[
|
|
74
|
-
columnWidth:
|
|
68
|
+
const j = [], G = new Array(r).fill(0);
|
|
69
|
+
for (let D = 0; D < r; D++) {
|
|
70
|
+
const Y = $[D], J = D + 1 < r ? $[D + 1] : L, ne = D * (P + y);
|
|
71
|
+
for (let K = Y; K < J; K++) {
|
|
72
|
+
const ee = {
|
|
73
|
+
...e[K],
|
|
74
|
+
columnWidth: P,
|
|
75
75
|
imageHeight: 0,
|
|
76
76
|
columnHeight: 0,
|
|
77
77
|
left: 0,
|
|
78
78
|
top: 0
|
|
79
79
|
};
|
|
80
|
-
|
|
80
|
+
ee.imageHeight = I[K] - (i + h), ee.columnHeight = I[K], ee.left = ne, ee.top = G[D], G[D] += ee.columnHeight + (K + 1 < J ? g : 0), j.push(ee);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
return j;
|
|
84
84
|
}
|
|
85
|
-
const f = new Array(r).fill(0),
|
|
85
|
+
const f = new Array(r).fill(0), H = [];
|
|
86
86
|
for (let L = 0; L < e.length; L++) {
|
|
87
87
|
const k = e[L], W = {
|
|
88
88
|
...k,
|
|
@@ -91,129 +91,129 @@ function qe(e, l, r, n = {}) {
|
|
|
91
91
|
columnHeight: 0,
|
|
92
92
|
left: 0,
|
|
93
93
|
top: 0
|
|
94
|
-
}, o = f.indexOf(Math.min(...f)), u = k.width,
|
|
95
|
-
W.columnWidth =
|
|
94
|
+
}, o = f.indexOf(Math.min(...f)), u = k.width, E = k.height;
|
|
95
|
+
W.columnWidth = P, W.left = o * (P + y), W.imageHeight = Math.round(P * E / u), W.columnHeight = W.imageHeight + i + h, W.top = f[o], f[o] += W.columnHeight + g, H.push(W);
|
|
96
96
|
}
|
|
97
|
-
return
|
|
97
|
+
return H;
|
|
98
98
|
}
|
|
99
|
-
var
|
|
100
|
-
function
|
|
101
|
-
var l =
|
|
99
|
+
var Et = typeof global == "object" && global && global.Object === Object && global, kt = typeof self == "object" && self && self.Object === Object && self, nt = Et || kt || Function("return this")(), xe = nt.Symbol, lt = Object.prototype, Pt = lt.hasOwnProperty, Lt = lt.toString, he = xe ? xe.toStringTag : void 0;
|
|
100
|
+
function St(e) {
|
|
101
|
+
var l = Pt.call(e, he), r = e[he];
|
|
102
102
|
try {
|
|
103
|
-
e[
|
|
104
|
-
var
|
|
103
|
+
e[he] = void 0;
|
|
104
|
+
var t = !0;
|
|
105
105
|
} catch {
|
|
106
106
|
}
|
|
107
|
-
var y =
|
|
108
|
-
return
|
|
107
|
+
var y = Lt.call(e);
|
|
108
|
+
return t && (l ? e[he] = r : delete e[he]), y;
|
|
109
109
|
}
|
|
110
|
-
var
|
|
111
|
-
function
|
|
112
|
-
return
|
|
110
|
+
var Ht = Object.prototype, $t = Ht.toString;
|
|
111
|
+
function Nt(e) {
|
|
112
|
+
return $t.call(e);
|
|
113
113
|
}
|
|
114
|
-
var
|
|
115
|
-
function
|
|
116
|
-
return e == null ? e === void 0 ?
|
|
114
|
+
var Bt = "[object Null]", Dt = "[object Undefined]", Ge = xe ? xe.toStringTag : void 0;
|
|
115
|
+
function zt(e) {
|
|
116
|
+
return e == null ? e === void 0 ? Dt : Bt : Ge && Ge in Object(e) ? St(e) : Nt(e);
|
|
117
117
|
}
|
|
118
|
-
function
|
|
118
|
+
function Ft(e) {
|
|
119
119
|
return e != null && typeof e == "object";
|
|
120
120
|
}
|
|
121
|
-
var
|
|
122
|
-
function
|
|
123
|
-
return typeof e == "symbol" ||
|
|
121
|
+
var At = "[object Symbol]";
|
|
122
|
+
function Wt(e) {
|
|
123
|
+
return typeof e == "symbol" || Ft(e) && zt(e) == At;
|
|
124
124
|
}
|
|
125
|
-
var
|
|
126
|
-
function
|
|
127
|
-
for (var l = e.length; l-- &&
|
|
125
|
+
var Rt = /\s/;
|
|
126
|
+
function Ot(e) {
|
|
127
|
+
for (var l = e.length; l-- && Rt.test(e.charAt(l)); )
|
|
128
128
|
;
|
|
129
129
|
return l;
|
|
130
130
|
}
|
|
131
|
-
var
|
|
132
|
-
function
|
|
133
|
-
return e && e.slice(0,
|
|
131
|
+
var Ct = /^\s+/;
|
|
132
|
+
function jt(e) {
|
|
133
|
+
return e && e.slice(0, Ot(e) + 1).replace(Ct, "");
|
|
134
134
|
}
|
|
135
|
-
function
|
|
135
|
+
function De(e) {
|
|
136
136
|
var l = typeof e;
|
|
137
137
|
return e != null && (l == "object" || l == "function");
|
|
138
138
|
}
|
|
139
|
-
var
|
|
140
|
-
function
|
|
139
|
+
var Je = NaN, Vt = /^[-+]0x[0-9a-f]+$/i, qt = /^0b[01]+$/i, Yt = /^0o[0-7]+$/i, Ut = parseInt;
|
|
140
|
+
function Ke(e) {
|
|
141
141
|
if (typeof e == "number")
|
|
142
142
|
return e;
|
|
143
|
-
if (
|
|
144
|
-
return
|
|
145
|
-
if (
|
|
143
|
+
if (Wt(e))
|
|
144
|
+
return Je;
|
|
145
|
+
if (De(e)) {
|
|
146
146
|
var l = typeof e.valueOf == "function" ? e.valueOf() : e;
|
|
147
|
-
e =
|
|
147
|
+
e = De(l) ? l + "" : l;
|
|
148
148
|
}
|
|
149
149
|
if (typeof e != "string")
|
|
150
150
|
return e === 0 ? e : +e;
|
|
151
|
-
e =
|
|
152
|
-
var r =
|
|
153
|
-
return r ||
|
|
151
|
+
e = jt(e);
|
|
152
|
+
var r = qt.test(e);
|
|
153
|
+
return r || Yt.test(e) ? Ut(e.slice(2), r ? 2 : 8) : Vt.test(e) ? Je : +e;
|
|
154
154
|
}
|
|
155
|
-
var
|
|
156
|
-
return
|
|
157
|
-
},
|
|
158
|
-
function
|
|
159
|
-
var
|
|
155
|
+
var Ne = function() {
|
|
156
|
+
return nt.Date.now();
|
|
157
|
+
}, _t = "Expected a function", Xt = Math.max, Gt = Math.min;
|
|
158
|
+
function Qe(e, l, r) {
|
|
159
|
+
var t, y, g, h, i, w, b = 0, n = !1, p = !1, x = !0;
|
|
160
160
|
if (typeof e != "function")
|
|
161
|
-
throw new TypeError(
|
|
162
|
-
l =
|
|
163
|
-
function
|
|
164
|
-
var
|
|
165
|
-
return
|
|
161
|
+
throw new TypeError(_t);
|
|
162
|
+
l = Ke(l) || 0, De(r) && (n = !!r.leading, p = "maxWait" in r, g = p ? Xt(Ke(r.maxWait) || 0, l) : g, x = "trailing" in r ? !!r.trailing : x);
|
|
163
|
+
function T(f) {
|
|
164
|
+
var H = t, L = y;
|
|
165
|
+
return t = y = void 0, b = f, h = e.apply(L, H), h;
|
|
166
166
|
}
|
|
167
167
|
function s(f) {
|
|
168
|
-
return b = f, i = setTimeout(d, l),
|
|
168
|
+
return b = f, i = setTimeout(d, l), n ? T(f) : h;
|
|
169
169
|
}
|
|
170
|
-
function
|
|
171
|
-
var
|
|
172
|
-
return p ?
|
|
170
|
+
function m(f) {
|
|
171
|
+
var H = f - w, L = f - b, k = l - H;
|
|
172
|
+
return p ? Gt(k, g - L) : k;
|
|
173
173
|
}
|
|
174
|
-
function
|
|
175
|
-
var
|
|
176
|
-
return w === void 0 ||
|
|
174
|
+
function a(f) {
|
|
175
|
+
var H = f - w, L = f - b;
|
|
176
|
+
return w === void 0 || H >= l || H < 0 || p && L >= g;
|
|
177
177
|
}
|
|
178
178
|
function d() {
|
|
179
|
-
var f =
|
|
180
|
-
if (
|
|
179
|
+
var f = Ne();
|
|
180
|
+
if (a(f))
|
|
181
181
|
return v(f);
|
|
182
|
-
i = setTimeout(d,
|
|
182
|
+
i = setTimeout(d, m(f));
|
|
183
183
|
}
|
|
184
184
|
function v(f) {
|
|
185
|
-
return i = void 0, x &&
|
|
185
|
+
return i = void 0, x && t ? T(f) : (t = y = void 0, h);
|
|
186
186
|
}
|
|
187
|
-
function
|
|
188
|
-
i !== void 0 && clearTimeout(i), b = 0,
|
|
187
|
+
function M() {
|
|
188
|
+
i !== void 0 && clearTimeout(i), b = 0, t = w = y = i = void 0;
|
|
189
189
|
}
|
|
190
|
-
function
|
|
191
|
-
return i === void 0 ?
|
|
190
|
+
function P() {
|
|
191
|
+
return i === void 0 ? h : v(Ne());
|
|
192
192
|
}
|
|
193
|
-
function
|
|
194
|
-
var f =
|
|
195
|
-
if (
|
|
193
|
+
function I() {
|
|
194
|
+
var f = Ne(), H = a(f);
|
|
195
|
+
if (t = arguments, y = this, w = f, H) {
|
|
196
196
|
if (i === void 0)
|
|
197
197
|
return s(w);
|
|
198
198
|
if (p)
|
|
199
|
-
return clearTimeout(i), i = setTimeout(d, l),
|
|
199
|
+
return clearTimeout(i), i = setTimeout(d, l), T(w);
|
|
200
200
|
}
|
|
201
|
-
return i === void 0 && (i = setTimeout(d, l)),
|
|
201
|
+
return i === void 0 && (i = setTimeout(d, l)), h;
|
|
202
202
|
}
|
|
203
|
-
return
|
|
203
|
+
return I.cancel = M, I.flush = P, I;
|
|
204
204
|
}
|
|
205
205
|
function ue(e, l) {
|
|
206
|
-
const r = l ?? (typeof window < "u" ? window.innerWidth : 1024),
|
|
207
|
-
return r >= 1536 &&
|
|
206
|
+
const r = l ?? (typeof window < "u" ? window.innerWidth : 1024), t = e.sizes;
|
|
207
|
+
return r >= 1536 && t["2xl"] ? t["2xl"] : r >= 1280 && t.xl ? t.xl : r >= 1024 && t.lg ? t.lg : r >= 768 && t.md ? t.md : r >= 640 && t.sm ? t.sm : t.base;
|
|
208
208
|
}
|
|
209
|
-
function
|
|
209
|
+
function Jt(e) {
|
|
210
210
|
const l = e ?? (typeof window < "u" ? window.innerWidth : 1024);
|
|
211
211
|
return l >= 1536 ? "2xl" : l >= 1280 ? "xl" : l >= 1024 ? "lg" : l >= 768 ? "md" : l >= 640 ? "sm" : "base";
|
|
212
212
|
}
|
|
213
|
-
function
|
|
214
|
-
return e.reduce((r,
|
|
213
|
+
function Kt(e) {
|
|
214
|
+
return e.reduce((r, t) => Math.max(r, t.top + t.columnHeight), 0) + 500;
|
|
215
215
|
}
|
|
216
|
-
function
|
|
216
|
+
function Qt(e) {
|
|
217
217
|
return {
|
|
218
218
|
transform: `translate3d(${e.left}px, ${e.top}px, 0)`,
|
|
219
219
|
top: "0px",
|
|
@@ -222,138 +222,138 @@ function Xt(e) {
|
|
|
222
222
|
height: `${e.columnHeight}px`
|
|
223
223
|
};
|
|
224
224
|
}
|
|
225
|
-
function
|
|
225
|
+
function Zt(e, l = 0) {
|
|
226
226
|
return {
|
|
227
|
-
style:
|
|
227
|
+
style: Qt(e),
|
|
228
228
|
"data-top": e.top,
|
|
229
229
|
"data-left": e.left,
|
|
230
230
|
"data-id": `${e.page}-${e.id}`,
|
|
231
231
|
"data-index": l
|
|
232
232
|
};
|
|
233
233
|
}
|
|
234
|
-
function
|
|
234
|
+
function be(e, l) {
|
|
235
235
|
if (!e.length || l <= 0)
|
|
236
236
|
return new Array(Math.max(1, l)).fill(0);
|
|
237
|
-
const
|
|
238
|
-
for (let
|
|
239
|
-
const
|
|
240
|
-
for (const
|
|
241
|
-
const i = y.get(
|
|
242
|
-
i != null && (
|
|
237
|
+
const t = Array.from(new Set(e.map((h) => h.left))).sort((h, i) => h - i).slice(0, l), y = /* @__PURE__ */ new Map();
|
|
238
|
+
for (let h = 0; h < t.length; h++) y.set(t[h], h);
|
|
239
|
+
const g = new Array(t.length).fill(0);
|
|
240
|
+
for (const h of e) {
|
|
241
|
+
const i = y.get(h.left);
|
|
242
|
+
i != null && (g[i] = Math.max(g[i], h.top + h.columnHeight));
|
|
243
243
|
}
|
|
244
|
-
for (;
|
|
245
|
-
return
|
|
244
|
+
for (; g.length < l; ) g.push(0);
|
|
245
|
+
return g;
|
|
246
246
|
}
|
|
247
|
-
function
|
|
248
|
-
let r = 0,
|
|
247
|
+
function ea(e, l) {
|
|
248
|
+
let r = 0, t = 0;
|
|
249
249
|
const y = 1e3;
|
|
250
|
-
function
|
|
250
|
+
function g(n, p) {
|
|
251
251
|
var s;
|
|
252
252
|
const x = (s = e.container) == null ? void 0 : s.value;
|
|
253
253
|
if (x) {
|
|
254
|
-
const
|
|
255
|
-
r =
|
|
254
|
+
const m = x.scrollTop, a = x.clientHeight;
|
|
255
|
+
r = m - y, t = m + a + y;
|
|
256
256
|
}
|
|
257
|
-
return
|
|
257
|
+
return n + p >= r && n <= t;
|
|
258
258
|
}
|
|
259
|
-
function
|
|
259
|
+
function h(n, p) {
|
|
260
260
|
var v;
|
|
261
|
-
const x = parseInt(
|
|
261
|
+
const x = parseInt(n.dataset.left || "0", 10), T = parseInt(n.dataset.top || "0", 10), s = parseInt(n.dataset.index || "0", 10), m = n.offsetHeight || parseInt(getComputedStyle(n).height || "200", 10) || 200;
|
|
262
262
|
if ((v = l == null ? void 0 : l.virtualizing) != null && v.value) {
|
|
263
|
-
|
|
264
|
-
|
|
263
|
+
n.style.transition = "none", n.style.opacity = "1", n.style.transform = `translate3d(${x}px, ${T}px, 0) scale(1)`, n.style.removeProperty("--masonry-opacity-delay"), requestAnimationFrame(() => {
|
|
264
|
+
n.style.transition = "", p();
|
|
265
265
|
});
|
|
266
266
|
return;
|
|
267
267
|
}
|
|
268
|
-
if (!
|
|
269
|
-
|
|
268
|
+
if (!g(T, m)) {
|
|
269
|
+
n.style.opacity = "1", n.style.transform = `translate3d(${x}px, ${T}px, 0) scale(1)`, n.style.transition = "none", p();
|
|
270
270
|
return;
|
|
271
271
|
}
|
|
272
|
-
const
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
const
|
|
276
|
-
d ?
|
|
272
|
+
const a = Math.min(s * 20, 160), d = n.style.getPropertyValue("--masonry-opacity-delay");
|
|
273
|
+
n.style.setProperty("--masonry-opacity-delay", `${a}ms`), requestAnimationFrame(() => {
|
|
274
|
+
n.style.opacity = "1", n.style.transform = `translate3d(${x}px, ${T}px, 0) scale(1)`;
|
|
275
|
+
const M = () => {
|
|
276
|
+
d ? n.style.setProperty("--masonry-opacity-delay", d) : n.style.removeProperty("--masonry-opacity-delay"), n.removeEventListener("transitionend", M), p();
|
|
277
277
|
};
|
|
278
|
-
|
|
278
|
+
n.addEventListener("transitionend", M);
|
|
279
279
|
});
|
|
280
280
|
}
|
|
281
|
-
function i(
|
|
282
|
-
var
|
|
283
|
-
const p = parseInt(
|
|
284
|
-
if ((
|
|
285
|
-
|
|
281
|
+
function i(n) {
|
|
282
|
+
var T;
|
|
283
|
+
const p = parseInt(n.dataset.left || "0", 10), x = parseInt(n.dataset.top || "0", 10);
|
|
284
|
+
if ((T = l == null ? void 0 : l.virtualizing) != null && T.value) {
|
|
285
|
+
n.style.transition = "none", n.style.opacity = "1", n.style.transform = `translate3d(${p}px, ${x}px, 0) scale(1)`, n.style.removeProperty("--masonry-opacity-delay");
|
|
286
286
|
return;
|
|
287
287
|
}
|
|
288
|
-
|
|
288
|
+
n.style.opacity = "0", n.style.transform = `translate3d(${p}px, ${x + 10}px, 0) scale(0.985)`;
|
|
289
289
|
}
|
|
290
|
-
function w(
|
|
290
|
+
function w(n) {
|
|
291
291
|
var s;
|
|
292
|
-
const p = parseInt(
|
|
292
|
+
const p = parseInt(n.dataset.left || "0", 10), x = parseInt(n.dataset.top || "0", 10), T = n.offsetHeight || parseInt(getComputedStyle(n).height || "200", 10) || 200;
|
|
293
293
|
if (!((s = l == null ? void 0 : l.virtualizing) != null && s.value)) {
|
|
294
|
-
if (!
|
|
295
|
-
|
|
294
|
+
if (!g(x, T)) {
|
|
295
|
+
n.style.transition = "none";
|
|
296
296
|
return;
|
|
297
297
|
}
|
|
298
|
-
|
|
299
|
-
|
|
298
|
+
n.style.transition = "none", n.style.opacity = "1", n.style.transform = `translate3d(${p}px, ${x}px, 0) scale(1)`, n.style.removeProperty("--masonry-opacity-delay"), requestAnimationFrame(() => {
|
|
299
|
+
n.style.transition = "";
|
|
300
300
|
});
|
|
301
301
|
}
|
|
302
302
|
}
|
|
303
|
-
function b(
|
|
304
|
-
var
|
|
305
|
-
const x = parseInt(
|
|
306
|
-
if ((
|
|
303
|
+
function b(n, p) {
|
|
304
|
+
var I;
|
|
305
|
+
const x = parseInt(n.dataset.left || "0", 10), T = parseInt(n.dataset.top || "0", 10), s = n.offsetHeight || parseInt(getComputedStyle(n).height || "200", 10) || 200;
|
|
306
|
+
if ((I = l == null ? void 0 : l.virtualizing) != null && I.value) {
|
|
307
307
|
p();
|
|
308
308
|
return;
|
|
309
309
|
}
|
|
310
|
-
if (!
|
|
311
|
-
|
|
310
|
+
if (!g(T, s)) {
|
|
311
|
+
n.style.transition = "none", n.style.opacity = "0", p();
|
|
312
312
|
return;
|
|
313
313
|
}
|
|
314
|
-
const
|
|
315
|
-
let
|
|
316
|
-
if (!Number.isFinite(
|
|
317
|
-
const
|
|
318
|
-
|
|
314
|
+
const m = typeof (l == null ? void 0 : l.leaveDurationMs) == "number" ? l.leaveDurationMs : NaN;
|
|
315
|
+
let a = Number.isFinite(m) && m > 0 ? m : NaN;
|
|
316
|
+
if (!Number.isFinite(a)) {
|
|
317
|
+
const H = getComputedStyle(n).getPropertyValue("--masonry-leave-duration") || "", L = parseFloat(H);
|
|
318
|
+
a = Number.isFinite(L) && L > 0 ? L : 200;
|
|
319
319
|
}
|
|
320
|
-
const d =
|
|
321
|
-
|
|
322
|
-
},
|
|
323
|
-
(!f || f.target ===
|
|
324
|
-
},
|
|
320
|
+
const d = n.style.transitionDuration, v = () => {
|
|
321
|
+
n.removeEventListener("transitionend", M), clearTimeout(P), n.style.transitionDuration = d || "";
|
|
322
|
+
}, M = (f) => {
|
|
323
|
+
(!f || f.target === n) && (v(), p());
|
|
324
|
+
}, P = setTimeout(() => {
|
|
325
325
|
v(), p();
|
|
326
|
-
},
|
|
326
|
+
}, a + 100);
|
|
327
327
|
requestAnimationFrame(() => {
|
|
328
|
-
|
|
328
|
+
n.style.transitionDuration = `${a}ms`, n.style.opacity = "0", n.style.transform = `translate3d(${x}px, ${T + 10}px, 0) scale(0.985)`, n.addEventListener("transitionend", M);
|
|
329
329
|
});
|
|
330
330
|
}
|
|
331
331
|
return {
|
|
332
|
-
onEnter:
|
|
332
|
+
onEnter: h,
|
|
333
333
|
onBeforeEnter: i,
|
|
334
334
|
onBeforeLeave: w,
|
|
335
335
|
onLeave: b
|
|
336
336
|
};
|
|
337
337
|
}
|
|
338
|
-
function
|
|
338
|
+
function ta({
|
|
339
339
|
container: e,
|
|
340
340
|
masonry: l,
|
|
341
341
|
columns: r,
|
|
342
|
-
containerHeight:
|
|
342
|
+
containerHeight: t,
|
|
343
343
|
isLoading: y,
|
|
344
|
-
pageSize:
|
|
345
|
-
refreshLayout:
|
|
344
|
+
pageSize: g,
|
|
345
|
+
refreshLayout: h,
|
|
346
346
|
setItemsRaw: i,
|
|
347
347
|
loadNext: w,
|
|
348
348
|
loadThresholdPx: b
|
|
349
349
|
}) {
|
|
350
|
-
let
|
|
351
|
-
async function p(x) {
|
|
350
|
+
let n = 0;
|
|
351
|
+
async function p(x, T = !1) {
|
|
352
352
|
if (!e.value) return;
|
|
353
|
-
const
|
|
354
|
-
|
|
355
|
-
const
|
|
356
|
-
if (
|
|
353
|
+
const s = x ?? be(l.value, r.value), m = s.length ? Math.max(...s) : 0, a = e.value.scrollTop + e.value.clientHeight, d = e.value.scrollTop > n + 1;
|
|
354
|
+
n = e.value.scrollTop;
|
|
355
|
+
const v = typeof b == "number" ? b : 200, M = v >= 0 ? Math.max(0, m - v) : Math.max(0, m + v);
|
|
356
|
+
if (a >= M && (d || T) && !y.value) {
|
|
357
357
|
await w(), await q();
|
|
358
358
|
return;
|
|
359
359
|
}
|
|
@@ -362,21 +362,21 @@ function Kt({
|
|
|
362
362
|
handleScroll: p
|
|
363
363
|
};
|
|
364
364
|
}
|
|
365
|
-
function
|
|
366
|
-
const { useSwipeMode: l, masonry: r, isLoading:
|
|
365
|
+
function aa(e) {
|
|
366
|
+
const { useSwipeMode: l, masonry: r, isLoading: t, loadNext: y, loadPage: g, paginationHistory: h } = e, i = B(0), w = B(0), b = B(!1), n = B(0), p = B(0), x = B(null), T = Z(() => {
|
|
367
367
|
if (!l.value || r.value.length === 0) return null;
|
|
368
368
|
const o = Math.max(0, Math.min(i.value, r.value.length - 1));
|
|
369
369
|
return r.value[o] || null;
|
|
370
|
-
}), s =
|
|
371
|
-
if (!l.value || !
|
|
370
|
+
}), s = Z(() => {
|
|
371
|
+
if (!l.value || !T.value) return null;
|
|
372
372
|
const o = i.value + 1;
|
|
373
373
|
return o >= r.value.length ? null : r.value[o] || null;
|
|
374
|
-
}),
|
|
375
|
-
if (!l.value || !
|
|
374
|
+
}), m = Z(() => {
|
|
375
|
+
if (!l.value || !T.value) return null;
|
|
376
376
|
const o = i.value - 1;
|
|
377
377
|
return o < 0 ? null : r.value[o] || null;
|
|
378
378
|
});
|
|
379
|
-
function
|
|
379
|
+
function a() {
|
|
380
380
|
if (!x.value) return;
|
|
381
381
|
const o = x.value.clientHeight;
|
|
382
382
|
w.value = -i.value * o;
|
|
@@ -386,41 +386,41 @@ function Qt(e) {
|
|
|
386
386
|
y();
|
|
387
387
|
return;
|
|
388
388
|
}
|
|
389
|
-
i.value++,
|
|
389
|
+
i.value++, a(), i.value >= r.value.length - 5 && y();
|
|
390
390
|
}
|
|
391
391
|
function v() {
|
|
392
|
-
|
|
392
|
+
m.value && (i.value--, a());
|
|
393
393
|
}
|
|
394
|
-
function
|
|
395
|
-
l.value && (b.value = !0,
|
|
394
|
+
function M(o) {
|
|
395
|
+
l.value && (b.value = !0, n.value = o.touches[0].clientY, p.value = w.value, o.preventDefault());
|
|
396
396
|
}
|
|
397
|
-
function
|
|
397
|
+
function P(o) {
|
|
398
398
|
if (!l.value || !b.value) return;
|
|
399
|
-
const u = o.touches[0].clientY -
|
|
399
|
+
const u = o.touches[0].clientY - n.value;
|
|
400
400
|
w.value = p.value + u, o.preventDefault();
|
|
401
401
|
}
|
|
402
|
-
function
|
|
402
|
+
function I(o) {
|
|
403
403
|
if (!l.value || !b.value) return;
|
|
404
404
|
b.value = !1;
|
|
405
405
|
const u = w.value - p.value;
|
|
406
|
-
Math.abs(u) > 100 ? u > 0 &&
|
|
406
|
+
Math.abs(u) > 100 ? u > 0 && m.value ? v() : u < 0 && s.value ? d() : a() : a(), o.preventDefault();
|
|
407
407
|
}
|
|
408
408
|
function f(o) {
|
|
409
|
-
l.value && (b.value = !0,
|
|
409
|
+
l.value && (b.value = !0, n.value = o.clientY, p.value = w.value, o.preventDefault());
|
|
410
410
|
}
|
|
411
|
-
function
|
|
411
|
+
function H(o) {
|
|
412
412
|
if (!l.value || !b.value) return;
|
|
413
|
-
const u = o.clientY -
|
|
413
|
+
const u = o.clientY - n.value;
|
|
414
414
|
w.value = p.value + u, o.preventDefault();
|
|
415
415
|
}
|
|
416
416
|
function L(o) {
|
|
417
417
|
if (!l.value || !b.value) return;
|
|
418
418
|
b.value = !1;
|
|
419
419
|
const u = w.value - p.value;
|
|
420
|
-
Math.abs(u) > 100 ? u > 0 &&
|
|
420
|
+
Math.abs(u) > 100 ? u > 0 && m.value ? v() : u < 0 && s.value ? d() : a() : a(), o.preventDefault();
|
|
421
421
|
}
|
|
422
422
|
function k() {
|
|
423
|
-
!l.value && i.value > 0 && (i.value = 0, w.value = 0), l.value && r.value.length === 0 && !
|
|
423
|
+
!l.value && i.value > 0 && (i.value = 0, w.value = 0), l.value && r.value.length === 0 && !t.value && g(h.value[0]), l.value && a();
|
|
424
424
|
}
|
|
425
425
|
function W() {
|
|
426
426
|
i.value = 0, w.value = 0, b.value = !1;
|
|
@@ -432,382 +432,382 @@ function Qt(e) {
|
|
|
432
432
|
isDragging: b,
|
|
433
433
|
swipeContainer: x,
|
|
434
434
|
// Computed
|
|
435
|
-
currentItem:
|
|
435
|
+
currentItem: T,
|
|
436
436
|
nextItem: s,
|
|
437
|
-
previousItem:
|
|
437
|
+
previousItem: m,
|
|
438
438
|
// Functions
|
|
439
|
-
handleTouchStart:
|
|
440
|
-
handleTouchMove:
|
|
441
|
-
handleTouchEnd:
|
|
439
|
+
handleTouchStart: M,
|
|
440
|
+
handleTouchMove: P,
|
|
441
|
+
handleTouchEnd: I,
|
|
442
442
|
handleMouseDown: f,
|
|
443
|
-
handleMouseMove:
|
|
443
|
+
handleMouseMove: H,
|
|
444
444
|
handleMouseUp: L,
|
|
445
445
|
goToNextItem: d,
|
|
446
446
|
goToPreviousItem: v,
|
|
447
|
-
snapToCurrentItem:
|
|
447
|
+
snapToCurrentItem: a,
|
|
448
448
|
handleWindowResize: k,
|
|
449
449
|
reset: W
|
|
450
450
|
};
|
|
451
451
|
}
|
|
452
|
-
function
|
|
452
|
+
function me(e) {
|
|
453
453
|
return e instanceof Error ? e : new Error(String(e));
|
|
454
454
|
}
|
|
455
|
-
function
|
|
455
|
+
function na(e) {
|
|
456
456
|
const {
|
|
457
457
|
getNextPage: l,
|
|
458
458
|
masonry: r,
|
|
459
|
-
isLoading:
|
|
459
|
+
isLoading: t,
|
|
460
460
|
hasReachedEnd: y,
|
|
461
|
-
loadError:
|
|
462
|
-
currentPage:
|
|
461
|
+
loadError: g,
|
|
462
|
+
currentPage: h,
|
|
463
463
|
paginationHistory: i,
|
|
464
464
|
refreshLayout: w,
|
|
465
465
|
retryMaxAttempts: b,
|
|
466
|
-
retryInitialDelayMs:
|
|
466
|
+
retryInitialDelayMs: n,
|
|
467
467
|
retryBackoffStepMs: p,
|
|
468
468
|
backfillEnabled: x,
|
|
469
|
-
backfillDelayMs:
|
|
469
|
+
backfillDelayMs: T,
|
|
470
470
|
backfillMaxCalls: s,
|
|
471
|
-
pageSize:
|
|
472
|
-
autoRefreshOnEmpty:
|
|
471
|
+
pageSize: m,
|
|
472
|
+
autoRefreshOnEmpty: a,
|
|
473
473
|
emits: d
|
|
474
|
-
} = e, v =
|
|
475
|
-
let
|
|
476
|
-
function
|
|
474
|
+
} = e, v = B(!1);
|
|
475
|
+
let M = !1;
|
|
476
|
+
function P(u, E) {
|
|
477
477
|
return new Promise(($) => {
|
|
478
|
-
const C = Math.max(0, u | 0),
|
|
479
|
-
|
|
480
|
-
const
|
|
478
|
+
const C = Math.max(0, u | 0), A = Date.now();
|
|
479
|
+
E(C, C);
|
|
480
|
+
const N = setInterval(() => {
|
|
481
481
|
if (v.value) {
|
|
482
|
-
clearInterval(
|
|
482
|
+
clearInterval(N), $();
|
|
483
483
|
return;
|
|
484
484
|
}
|
|
485
|
-
const j = Date.now() -
|
|
486
|
-
|
|
485
|
+
const j = Date.now() - A, G = Math.max(0, C - j);
|
|
486
|
+
E(G, C), G <= 0 && (clearInterval(N), $());
|
|
487
487
|
}, 100);
|
|
488
488
|
});
|
|
489
489
|
}
|
|
490
|
-
async function
|
|
491
|
-
let
|
|
490
|
+
async function I(u) {
|
|
491
|
+
let E = 0;
|
|
492
492
|
const $ = b;
|
|
493
|
-
let C =
|
|
493
|
+
let C = n;
|
|
494
494
|
for (; ; )
|
|
495
495
|
try {
|
|
496
|
-
const
|
|
497
|
-
return
|
|
498
|
-
} catch (
|
|
499
|
-
if (
|
|
500
|
-
throw d("retry:stop", { attempt:
|
|
501
|
-
d("retry:start", { attempt:
|
|
502
|
-
d("retry:tick", { attempt:
|
|
496
|
+
const A = await u();
|
|
497
|
+
return E > 0 && d("retry:stop", { attempt: E, success: !0 }), A;
|
|
498
|
+
} catch (A) {
|
|
499
|
+
if (E++, E > $)
|
|
500
|
+
throw d("retry:stop", { attempt: E - 1, success: !1 }), A;
|
|
501
|
+
d("retry:start", { attempt: E, max: $, totalMs: C }), await P(C, (N, j) => {
|
|
502
|
+
d("retry:tick", { attempt: E, remainingMs: N, totalMs: j });
|
|
503
503
|
}), C += p;
|
|
504
504
|
}
|
|
505
505
|
}
|
|
506
506
|
async function f(u) {
|
|
507
507
|
try {
|
|
508
|
-
const
|
|
509
|
-
return w([...r.value, ...
|
|
510
|
-
} catch (
|
|
511
|
-
throw
|
|
508
|
+
const E = await I(() => l(u));
|
|
509
|
+
return w([...r.value, ...E.items]), E;
|
|
510
|
+
} catch (E) {
|
|
511
|
+
throw E;
|
|
512
512
|
}
|
|
513
513
|
}
|
|
514
|
-
async function
|
|
515
|
-
if (!
|
|
516
|
-
const $ = (u || 0) + (
|
|
517
|
-
if (!
|
|
514
|
+
async function H(u, E = !1) {
|
|
515
|
+
if (!E && !x || M || v.value || y.value) return;
|
|
516
|
+
const $ = (u || 0) + (m || 0);
|
|
517
|
+
if (!m || m <= 0) return;
|
|
518
518
|
if (i.value[i.value.length - 1] == null) {
|
|
519
519
|
y.value = !0;
|
|
520
520
|
return;
|
|
521
521
|
}
|
|
522
522
|
if (!(r.value.length >= $)) {
|
|
523
|
-
|
|
523
|
+
M = !0, t.value = !0;
|
|
524
524
|
try {
|
|
525
|
-
let
|
|
526
|
-
for (d("backfill:start", { target: $, fetched: r.value.length, calls:
|
|
525
|
+
let A = 0;
|
|
526
|
+
for (d("backfill:start", { target: $, fetched: r.value.length, calls: A }); r.value.length < $ && A < s && i.value[i.value.length - 1] != null && !v.value && !y.value && M && (await P(T, (j, G) => {
|
|
527
527
|
d("backfill:tick", {
|
|
528
528
|
fetched: r.value.length,
|
|
529
529
|
target: $,
|
|
530
|
-
calls:
|
|
530
|
+
calls: A,
|
|
531
531
|
remainingMs: j,
|
|
532
|
-
totalMs:
|
|
532
|
+
totalMs: G
|
|
533
533
|
});
|
|
534
|
-
}), !(v.value || !
|
|
535
|
-
const
|
|
536
|
-
if (
|
|
534
|
+
}), !(v.value || !M)); ) {
|
|
535
|
+
const N = i.value[i.value.length - 1];
|
|
536
|
+
if (N == null) {
|
|
537
537
|
y.value = !0;
|
|
538
538
|
break;
|
|
539
539
|
}
|
|
540
540
|
try {
|
|
541
|
-
if (v.value || !
|
|
542
|
-
const j = await f(
|
|
543
|
-
if (v.value || !
|
|
544
|
-
|
|
541
|
+
if (v.value || !M) break;
|
|
542
|
+
const j = await f(N);
|
|
543
|
+
if (v.value || !M) break;
|
|
544
|
+
g.value = null, i.value.push(j.nextPage), j.nextPage == null && (y.value = !0);
|
|
545
545
|
} catch (j) {
|
|
546
|
-
if (v.value || !
|
|
547
|
-
|
|
546
|
+
if (v.value || !M) break;
|
|
547
|
+
g.value = me(j);
|
|
548
548
|
}
|
|
549
|
-
|
|
549
|
+
A++;
|
|
550
550
|
}
|
|
551
|
-
d("backfill:stop", { fetched: r.value.length, calls:
|
|
551
|
+
d("backfill:stop", { fetched: r.value.length, calls: A });
|
|
552
552
|
} finally {
|
|
553
|
-
|
|
553
|
+
M = !1, t.value = !1;
|
|
554
554
|
}
|
|
555
555
|
}
|
|
556
556
|
}
|
|
557
557
|
async function L(u) {
|
|
558
|
-
if (!
|
|
559
|
-
v.value = !1,
|
|
558
|
+
if (!t.value) {
|
|
559
|
+
v.value = !1, t.value = !0, y.value = !1, g.value = null;
|
|
560
560
|
try {
|
|
561
|
-
const
|
|
561
|
+
const E = r.value.length;
|
|
562
562
|
if (v.value) return;
|
|
563
563
|
const $ = await f(u);
|
|
564
|
-
return v.value ? void 0 : (
|
|
565
|
-
} catch (
|
|
566
|
-
throw
|
|
564
|
+
return v.value ? void 0 : (g.value = null, h.value = u, i.value.push($.nextPage), $.nextPage == null && (y.value = !0), await H(E), $);
|
|
565
|
+
} catch (E) {
|
|
566
|
+
throw g.value = me(E), E;
|
|
567
567
|
} finally {
|
|
568
|
-
|
|
568
|
+
t.value = !1;
|
|
569
569
|
}
|
|
570
570
|
}
|
|
571
571
|
}
|
|
572
572
|
async function k() {
|
|
573
|
-
if (!
|
|
574
|
-
v.value = !1,
|
|
573
|
+
if (!t.value && !y.value) {
|
|
574
|
+
v.value = !1, t.value = !0, g.value = null;
|
|
575
575
|
try {
|
|
576
576
|
const u = r.value.length;
|
|
577
577
|
if (v.value) return;
|
|
578
|
-
const
|
|
579
|
-
if (
|
|
580
|
-
y.value = !0,
|
|
578
|
+
const E = i.value[i.value.length - 1];
|
|
579
|
+
if (E == null) {
|
|
580
|
+
y.value = !0, t.value = !1;
|
|
581
581
|
return;
|
|
582
582
|
}
|
|
583
|
-
const $ = await f(
|
|
584
|
-
return v.value ? void 0 : (
|
|
583
|
+
const $ = await f(E);
|
|
584
|
+
return v.value ? void 0 : (g.value = null, h.value = E, i.value.push($.nextPage), $.nextPage == null && (y.value = !0), await H(u), $);
|
|
585
585
|
} catch (u) {
|
|
586
|
-
throw
|
|
586
|
+
throw g.value = me(u), u;
|
|
587
587
|
} finally {
|
|
588
|
-
|
|
588
|
+
t.value = !1;
|
|
589
589
|
}
|
|
590
590
|
}
|
|
591
591
|
}
|
|
592
592
|
async function W() {
|
|
593
|
-
if (!
|
|
594
|
-
v.value = !1,
|
|
593
|
+
if (!t.value) {
|
|
594
|
+
v.value = !1, t.value = !0;
|
|
595
595
|
try {
|
|
596
|
-
const u =
|
|
596
|
+
const u = h.value;
|
|
597
597
|
if (u == null) {
|
|
598
|
-
console.warn("[Masonry] No current page to refresh - currentPage:",
|
|
598
|
+
console.warn("[Masonry] No current page to refresh - currentPage:", h.value, "paginationHistory:", i.value);
|
|
599
599
|
return;
|
|
600
600
|
}
|
|
601
|
-
r.value = [], y.value = !1,
|
|
602
|
-
const
|
|
601
|
+
r.value = [], y.value = !1, g.value = null, i.value = [u];
|
|
602
|
+
const E = await f(u);
|
|
603
603
|
if (v.value) return;
|
|
604
|
-
|
|
604
|
+
g.value = null, h.value = u, i.value.push(E.nextPage), E.nextPage == null && (y.value = !0);
|
|
605
605
|
const $ = r.value.length;
|
|
606
|
-
return await
|
|
606
|
+
return await H($), E;
|
|
607
607
|
} catch (u) {
|
|
608
|
-
throw
|
|
608
|
+
throw g.value = me(u), u;
|
|
609
609
|
} finally {
|
|
610
|
-
|
|
610
|
+
t.value = !1;
|
|
611
611
|
}
|
|
612
612
|
}
|
|
613
613
|
}
|
|
614
614
|
function o() {
|
|
615
|
-
const u =
|
|
616
|
-
v.value = !0,
|
|
615
|
+
const u = M;
|
|
616
|
+
v.value = !0, t.value = !1, M = !1, u && d("backfill:stop", { fetched: r.value.length, calls: 0, cancelled: !0 });
|
|
617
617
|
}
|
|
618
618
|
return {
|
|
619
619
|
loadPage: L,
|
|
620
620
|
loadNext: k,
|
|
621
621
|
refreshCurrentPage: W,
|
|
622
622
|
cancelLoad: o,
|
|
623
|
-
maybeBackfillToTarget:
|
|
623
|
+
maybeBackfillToTarget: H,
|
|
624
624
|
getContent: f
|
|
625
625
|
};
|
|
626
626
|
}
|
|
627
|
-
function
|
|
627
|
+
function la(e) {
|
|
628
628
|
const {
|
|
629
629
|
masonry: l,
|
|
630
630
|
useSwipeMode: r,
|
|
631
|
-
refreshLayout:
|
|
631
|
+
refreshLayout: t,
|
|
632
632
|
refreshCurrentPage: y,
|
|
633
|
-
loadNext:
|
|
634
|
-
maybeBackfillToTarget:
|
|
633
|
+
loadNext: g,
|
|
634
|
+
maybeBackfillToTarget: h,
|
|
635
635
|
autoRefreshOnEmpty: i,
|
|
636
636
|
paginationHistory: w
|
|
637
637
|
} = e;
|
|
638
638
|
async function b(s) {
|
|
639
|
-
const
|
|
640
|
-
if (l.value =
|
|
639
|
+
const m = l.value.filter((a) => a.id !== s.id);
|
|
640
|
+
if (l.value = m, await q(), m.length === 0 && w.value.length > 0) {
|
|
641
641
|
if (i)
|
|
642
642
|
await y();
|
|
643
643
|
else
|
|
644
644
|
try {
|
|
645
|
-
await
|
|
645
|
+
await g(), await h(0, !0);
|
|
646
646
|
} catch {
|
|
647
647
|
}
|
|
648
648
|
return;
|
|
649
649
|
}
|
|
650
|
-
await new Promise((
|
|
651
|
-
|
|
650
|
+
await new Promise((a) => requestAnimationFrame(() => a())), requestAnimationFrame(() => {
|
|
651
|
+
t(m);
|
|
652
652
|
});
|
|
653
653
|
}
|
|
654
|
-
async function
|
|
654
|
+
async function n(s) {
|
|
655
655
|
if (!s || s.length === 0) return;
|
|
656
|
-
const
|
|
657
|
-
if (l.value =
|
|
656
|
+
const m = new Set(s.map((d) => d.id)), a = l.value.filter((d) => !m.has(d.id));
|
|
657
|
+
if (l.value = a, await q(), a.length === 0 && w.value.length > 0) {
|
|
658
658
|
if (i)
|
|
659
659
|
await y();
|
|
660
660
|
else
|
|
661
661
|
try {
|
|
662
|
-
await
|
|
662
|
+
await g(), await h(0, !0);
|
|
663
663
|
} catch {
|
|
664
664
|
}
|
|
665
665
|
return;
|
|
666
666
|
}
|
|
667
667
|
await new Promise((d) => requestAnimationFrame(() => d())), requestAnimationFrame(() => {
|
|
668
|
-
|
|
668
|
+
t(a);
|
|
669
669
|
});
|
|
670
670
|
}
|
|
671
|
-
async function p(s,
|
|
671
|
+
async function p(s, m) {
|
|
672
672
|
if (!s) return;
|
|
673
|
-
const
|
|
674
|
-
if (
|
|
675
|
-
const v = [...
|
|
676
|
-
v.splice(
|
|
677
|
-
|
|
673
|
+
const a = l.value;
|
|
674
|
+
if (a.findIndex((P) => P.id === s.id) !== -1) return;
|
|
675
|
+
const v = [...a], M = Math.min(m, v.length);
|
|
676
|
+
v.splice(M, 0, s), l.value = v, await q(), r.value || (await new Promise((P) => requestAnimationFrame(() => P())), requestAnimationFrame(() => {
|
|
677
|
+
t(v);
|
|
678
678
|
}));
|
|
679
679
|
}
|
|
680
|
-
async function x(s,
|
|
680
|
+
async function x(s, m) {
|
|
681
681
|
var L;
|
|
682
682
|
if (!s || s.length === 0) return;
|
|
683
|
-
if (!
|
|
683
|
+
if (!m || m.length !== s.length) {
|
|
684
684
|
console.warn("[Masonry] restoreMany: items and indices arrays must have the same length");
|
|
685
685
|
return;
|
|
686
686
|
}
|
|
687
|
-
const
|
|
687
|
+
const a = l.value, d = new Set(a.map((k) => k.id)), v = [];
|
|
688
688
|
for (let k = 0; k < s.length; k++)
|
|
689
|
-
d.has((L = s[k]) == null ? void 0 : L.id) || v.push({ item: s[k], index:
|
|
689
|
+
d.has((L = s[k]) == null ? void 0 : L.id) || v.push({ item: s[k], index: m[k] });
|
|
690
690
|
if (v.length === 0) return;
|
|
691
|
-
const
|
|
691
|
+
const M = /* @__PURE__ */ new Map();
|
|
692
692
|
for (const { item: k, index: W } of v)
|
|
693
|
-
|
|
694
|
-
const
|
|
695
|
-
let
|
|
696
|
-
for (let k = 0; k <=
|
|
697
|
-
|
|
698
|
-
for (;
|
|
699
|
-
f.push(
|
|
693
|
+
M.set(W, k);
|
|
694
|
+
const P = v.length > 0 ? Math.max(...v.map(({ index: k }) => k)) : -1, I = Math.max(a.length - 1, P), f = [];
|
|
695
|
+
let H = 0;
|
|
696
|
+
for (let k = 0; k <= I; k++)
|
|
697
|
+
M.has(k) ? f.push(M.get(k)) : H < a.length && (f.push(a[H]), H++);
|
|
698
|
+
for (; H < a.length; )
|
|
699
|
+
f.push(a[H]), H++;
|
|
700
700
|
l.value = f, await q(), r.value || (await new Promise((k) => requestAnimationFrame(() => k())), requestAnimationFrame(() => {
|
|
701
|
-
|
|
701
|
+
t(f);
|
|
702
702
|
}));
|
|
703
703
|
}
|
|
704
|
-
async function
|
|
704
|
+
async function T() {
|
|
705
705
|
l.value = [];
|
|
706
706
|
}
|
|
707
707
|
return {
|
|
708
708
|
remove: b,
|
|
709
|
-
removeMany:
|
|
709
|
+
removeMany: n,
|
|
710
710
|
restore: p,
|
|
711
711
|
restoreMany: x,
|
|
712
|
-
removeAll:
|
|
712
|
+
removeAll: T
|
|
713
713
|
};
|
|
714
714
|
}
|
|
715
|
-
function
|
|
715
|
+
function oa(e) {
|
|
716
716
|
const {
|
|
717
717
|
masonry: l,
|
|
718
718
|
useSwipeMode: r,
|
|
719
|
-
container:
|
|
719
|
+
container: t,
|
|
720
720
|
columns: y,
|
|
721
|
-
containerWidth:
|
|
722
|
-
masonryContentHeight:
|
|
721
|
+
containerWidth: g,
|
|
722
|
+
masonryContentHeight: h,
|
|
723
723
|
layout: i,
|
|
724
724
|
fixedDimensions: w,
|
|
725
725
|
checkItemDimensions: b
|
|
726
726
|
} = e;
|
|
727
|
-
let
|
|
728
|
-
function p(
|
|
729
|
-
const
|
|
727
|
+
let n = [];
|
|
728
|
+
function p(m) {
|
|
729
|
+
const a = Kt(m);
|
|
730
730
|
let d = 0;
|
|
731
|
-
if (
|
|
732
|
-
const { scrollTop: v, clientHeight:
|
|
733
|
-
d = v +
|
|
731
|
+
if (t.value) {
|
|
732
|
+
const { scrollTop: v, clientHeight: M } = t.value;
|
|
733
|
+
d = v + M + 100;
|
|
734
734
|
}
|
|
735
|
-
|
|
735
|
+
h.value = Math.max(a, d);
|
|
736
736
|
}
|
|
737
|
-
function x(
|
|
738
|
-
var
|
|
737
|
+
function x(m) {
|
|
738
|
+
var M, P;
|
|
739
739
|
if (r.value) {
|
|
740
|
-
l.value =
|
|
740
|
+
l.value = m;
|
|
741
741
|
return;
|
|
742
742
|
}
|
|
743
|
-
if (!
|
|
744
|
-
if (b(
|
|
745
|
-
let
|
|
746
|
-
for (let f = 0; f <
|
|
747
|
-
if (((
|
|
748
|
-
|
|
743
|
+
if (!t.value) return;
|
|
744
|
+
if (b(m, "refreshLayout"), m.length > 1e3 && n.length > m.length && n.length - m.length < 100) {
|
|
745
|
+
let I = !0;
|
|
746
|
+
for (let f = 0; f < m.length; f++)
|
|
747
|
+
if (((M = m[f]) == null ? void 0 : M.id) !== ((P = n[f]) == null ? void 0 : P.id)) {
|
|
748
|
+
I = !1;
|
|
749
749
|
break;
|
|
750
750
|
}
|
|
751
|
-
if (
|
|
752
|
-
const f =
|
|
753
|
-
...
|
|
751
|
+
if (I) {
|
|
752
|
+
const f = m.map((H, L) => ({
|
|
753
|
+
...n[L],
|
|
754
754
|
originalIndex: L
|
|
755
755
|
}));
|
|
756
|
-
p(f), l.value = f,
|
|
756
|
+
p(f), l.value = f, n = f;
|
|
757
757
|
return;
|
|
758
758
|
}
|
|
759
759
|
}
|
|
760
|
-
const d =
|
|
761
|
-
...
|
|
760
|
+
const d = m.map((I, f) => ({
|
|
761
|
+
...I,
|
|
762
762
|
originalIndex: f
|
|
763
|
-
})), v =
|
|
763
|
+
})), v = t.value;
|
|
764
764
|
if (w.value && w.value.width !== void 0) {
|
|
765
|
-
const
|
|
765
|
+
const I = v.style.width, f = v.style.boxSizing;
|
|
766
766
|
v.style.boxSizing = "border-box", v.style.width = `${w.value.width}px`, v.offsetWidth;
|
|
767
|
-
const
|
|
768
|
-
v.style.width =
|
|
767
|
+
const H = Xe(d, v, y.value, i.value);
|
|
768
|
+
v.style.width = I, v.style.boxSizing = f, p(H), l.value = H, n = H;
|
|
769
769
|
} else {
|
|
770
|
-
const
|
|
771
|
-
p(
|
|
770
|
+
const I = Xe(d, v, y.value, i.value);
|
|
771
|
+
p(I), l.value = I, n = I;
|
|
772
772
|
}
|
|
773
773
|
}
|
|
774
|
-
function
|
|
775
|
-
w.value =
|
|
776
|
-
y.value = ue(i.value,
|
|
774
|
+
function T(m, a) {
|
|
775
|
+
w.value = m, m && (m.width !== void 0 && (g.value = m.width), !r.value && t.value && l.value.length > 0 && q(() => {
|
|
776
|
+
y.value = ue(i.value, g.value), x(l.value), a && a();
|
|
777
777
|
}));
|
|
778
778
|
}
|
|
779
779
|
function s() {
|
|
780
|
-
y.value = ue(i.value,
|
|
780
|
+
y.value = ue(i.value, g.value), x(l.value);
|
|
781
781
|
}
|
|
782
782
|
return {
|
|
783
783
|
refreshLayout: x,
|
|
784
|
-
setFixedDimensions:
|
|
784
|
+
setFixedDimensions: T,
|
|
785
785
|
onResize: s,
|
|
786
786
|
calculateHeight: p
|
|
787
787
|
};
|
|
788
788
|
}
|
|
789
|
-
function
|
|
789
|
+
function ra(e) {
|
|
790
790
|
const {
|
|
791
791
|
masonry: l,
|
|
792
792
|
container: r,
|
|
793
|
-
columns:
|
|
793
|
+
columns: t,
|
|
794
794
|
virtualBufferPx: y,
|
|
795
|
-
loadThresholdPx:
|
|
796
|
-
} = e,
|
|
795
|
+
loadThresholdPx: g
|
|
796
|
+
} = e, h = B(e.handleScroll), i = B(0), w = B(0), b = y, n = B(!1), p = B({
|
|
797
797
|
distanceToTrigger: 0,
|
|
798
798
|
isNearTrigger: !1
|
|
799
|
-
}), x =
|
|
800
|
-
const
|
|
801
|
-
return !v || v.length === 0 ? [] : v.filter((
|
|
802
|
-
if (typeof
|
|
799
|
+
}), x = Z(() => {
|
|
800
|
+
const a = i.value - b, d = i.value + w.value + b, v = l.value;
|
|
801
|
+
return !v || v.length === 0 ? [] : v.filter((P) => {
|
|
802
|
+
if (typeof P.top != "number" || typeof P.columnHeight != "number")
|
|
803
803
|
return !0;
|
|
804
|
-
const
|
|
805
|
-
return
|
|
804
|
+
const I = P.top;
|
|
805
|
+
return P.top + P.columnHeight >= a && I <= d;
|
|
806
806
|
});
|
|
807
807
|
});
|
|
808
|
-
function
|
|
808
|
+
function T(a) {
|
|
809
809
|
if (!r.value) return;
|
|
810
|
-
const { scrollTop: d, clientHeight: v } = r.value,
|
|
810
|
+
const { scrollTop: d, clientHeight: v } = r.value, M = d + v, P = a ?? be(l.value, t.value), I = P.length ? Math.max(...P) : 0, f = typeof g == "number" ? g : 200, H = f >= 0 ? Math.max(0, I - f) : Math.max(0, I + f), L = Math.max(0, H - M), k = L <= 100;
|
|
811
811
|
p.value = {
|
|
812
812
|
distanceToTrigger: Math.round(L),
|
|
813
813
|
isNearTrigger: k
|
|
@@ -815,15 +815,15 @@ function aa(e) {
|
|
|
815
815
|
}
|
|
816
816
|
async function s() {
|
|
817
817
|
if (r.value) {
|
|
818
|
-
const d = r.value.scrollTop, v = r.value.clientHeight || window.innerHeight,
|
|
819
|
-
i.value = d, w.value =
|
|
818
|
+
const d = r.value.scrollTop, v = r.value.clientHeight || window.innerHeight, M = v > 0 ? v : window.innerHeight;
|
|
819
|
+
i.value = d, w.value = M;
|
|
820
820
|
}
|
|
821
|
-
|
|
822
|
-
const
|
|
823
|
-
|
|
821
|
+
n.value = !0, await q(), await new Promise((d) => requestAnimationFrame(() => d())), n.value = !1;
|
|
822
|
+
const a = be(l.value, t.value);
|
|
823
|
+
h.value(a), T(a);
|
|
824
824
|
}
|
|
825
|
-
function
|
|
826
|
-
i.value = 0, w.value = 0,
|
|
825
|
+
function m() {
|
|
826
|
+
i.value = 0, w.value = 0, n.value = !1, p.value = {
|
|
827
827
|
distanceToTrigger: 0,
|
|
828
828
|
isNearTrigger: !1
|
|
829
829
|
};
|
|
@@ -831,38 +831,38 @@ function aa(e) {
|
|
|
831
831
|
return {
|
|
832
832
|
viewportTop: i,
|
|
833
833
|
viewportHeight: w,
|
|
834
|
-
virtualizing:
|
|
834
|
+
virtualizing: n,
|
|
835
835
|
scrollProgress: p,
|
|
836
836
|
visibleMasonry: x,
|
|
837
|
-
updateScrollProgress:
|
|
837
|
+
updateScrollProgress: T,
|
|
838
838
|
updateViewport: s,
|
|
839
|
-
reset:
|
|
840
|
-
handleScroll:
|
|
839
|
+
reset: m,
|
|
840
|
+
handleScroll: h
|
|
841
841
|
};
|
|
842
842
|
}
|
|
843
|
-
function
|
|
844
|
-
const { masonry: l } = e, r =
|
|
845
|
-
function
|
|
846
|
-
return typeof
|
|
843
|
+
function ia(e) {
|
|
844
|
+
const { masonry: l } = e, r = B(/* @__PURE__ */ new Set());
|
|
845
|
+
function t(h) {
|
|
846
|
+
return typeof h == "number" && h > 0 && Number.isFinite(h);
|
|
847
847
|
}
|
|
848
|
-
function y(
|
|
848
|
+
function y(h, i) {
|
|
849
849
|
try {
|
|
850
|
-
if (!Array.isArray(
|
|
851
|
-
const w =
|
|
850
|
+
if (!Array.isArray(h) || h.length === 0) return;
|
|
851
|
+
const w = h.filter((n) => !t(n == null ? void 0 : n.width) || !t(n == null ? void 0 : n.height));
|
|
852
852
|
if (w.length === 0) return;
|
|
853
853
|
const b = [];
|
|
854
|
-
for (const
|
|
855
|
-
const p = (
|
|
854
|
+
for (const n of w) {
|
|
855
|
+
const p = (n == null ? void 0 : n.id) ?? `idx:${l.value.indexOf(n)}`;
|
|
856
856
|
r.value.has(p) || (r.value.add(p), b.push(p));
|
|
857
857
|
}
|
|
858
858
|
if (b.length > 0) {
|
|
859
|
-
const
|
|
859
|
+
const n = b.slice(0, 10);
|
|
860
860
|
console.warn(
|
|
861
861
|
"[Masonry] Items missing width/height detected:",
|
|
862
862
|
{
|
|
863
863
|
context: i,
|
|
864
864
|
count: b.length,
|
|
865
|
-
sampleIds:
|
|
865
|
+
sampleIds: n,
|
|
866
866
|
hint: "Ensure each item has positive width and height. Consider providing fallbacks (e.g., 512x512) at the data layer."
|
|
867
867
|
}
|
|
868
868
|
);
|
|
@@ -870,28 +870,28 @@ function na(e) {
|
|
|
870
870
|
} catch {
|
|
871
871
|
}
|
|
872
872
|
}
|
|
873
|
-
function
|
|
873
|
+
function g() {
|
|
874
874
|
r.value.clear();
|
|
875
875
|
}
|
|
876
876
|
return {
|
|
877
877
|
checkItemDimensions: y,
|
|
878
878
|
invalidDimensionIds: r,
|
|
879
|
-
reset:
|
|
879
|
+
reset: g
|
|
880
880
|
};
|
|
881
881
|
}
|
|
882
|
-
const
|
|
882
|
+
const sa = { class: "flex-1 relative min-h-0" }, ua = { class: "w-full h-full rounded-xl overflow-hidden shadow-sm transition-all duration-300 bg-white relative" }, ca = {
|
|
883
883
|
key: 0,
|
|
884
884
|
class: "absolute inset-0 flex flex-col items-center justify-center bg-slate-100 text-slate-400 text-sm p-4 text-center"
|
|
885
|
-
},
|
|
885
|
+
}, va = {
|
|
886
886
|
key: 1,
|
|
887
887
|
class: "relative w-full h-full"
|
|
888
|
-
},
|
|
888
|
+
}, fa = ["src"], da = ["src", "autoplay", "controls"], ha = { class: "w-12 h-12 rounded-full bg-white/80 backdrop-blur-sm flex items-center justify-center shadow-sm" }, ma = {
|
|
889
889
|
key: 3,
|
|
890
890
|
class: "absolute bottom-2 left-1/2 transform -translate-x-1/2 flex items-center justify-center z-10"
|
|
891
|
-
},
|
|
891
|
+
}, ga = {
|
|
892
892
|
key: 4,
|
|
893
893
|
class: "absolute inset-0 flex flex-col items-center justify-center bg-slate-50 text-slate-400 text-sm p-4 text-center"
|
|
894
|
-
},
|
|
894
|
+
}, Me = /* @__PURE__ */ et({
|
|
895
895
|
__name: "MasonryItem",
|
|
896
896
|
props: {
|
|
897
897
|
item: {},
|
|
@@ -905,108 +905,108 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
905
905
|
},
|
|
906
906
|
emits: ["preload:success", "preload:error", "mouse-enter", "mouse-leave"],
|
|
907
907
|
setup(e, { emit: l }) {
|
|
908
|
-
const r = e,
|
|
909
|
-
let
|
|
910
|
-
const
|
|
908
|
+
const r = e, t = l, y = B(!1), g = B(!1), h = B(null), i = B(!1), w = B(!1), b = B(null), n = B(!1), p = B(!1), x = B(!1), T = B(null), s = B(null);
|
|
909
|
+
let m = null;
|
|
910
|
+
const a = Z(() => {
|
|
911
911
|
var o;
|
|
912
912
|
return r.type ?? ((o = r.item) == null ? void 0 : o.type) ?? "image";
|
|
913
|
-
}), d =
|
|
913
|
+
}), d = Z(() => {
|
|
914
914
|
var o;
|
|
915
915
|
return r.notFound ?? ((o = r.item) == null ? void 0 : o.notFound) ?? !1;
|
|
916
|
-
}), v =
|
|
917
|
-
function
|
|
918
|
-
|
|
916
|
+
}), v = Z(() => !!r.inSwipeMode);
|
|
917
|
+
function M(o) {
|
|
918
|
+
t("mouse-enter", { item: r.item, type: o });
|
|
919
919
|
}
|
|
920
|
-
function
|
|
921
|
-
|
|
920
|
+
function P(o) {
|
|
921
|
+
t("mouse-leave", { item: r.item, type: o });
|
|
922
922
|
}
|
|
923
|
-
function
|
|
923
|
+
function I(o) {
|
|
924
924
|
if (v.value) return;
|
|
925
925
|
const u = o.target;
|
|
926
926
|
u && (u.paused ? u.play() : u.pause());
|
|
927
927
|
}
|
|
928
928
|
function f(o) {
|
|
929
929
|
const u = o.target;
|
|
930
|
-
u && (v.value || u.play(),
|
|
930
|
+
u && (v.value || u.play(), M("video"));
|
|
931
931
|
}
|
|
932
|
-
function
|
|
932
|
+
function H(o) {
|
|
933
933
|
const u = o.target;
|
|
934
|
-
u && (v.value || u.pause(),
|
|
934
|
+
u && (v.value || u.pause(), P("video"));
|
|
935
935
|
}
|
|
936
936
|
function L(o) {
|
|
937
|
-
return new Promise((u,
|
|
937
|
+
return new Promise((u, E) => {
|
|
938
938
|
if (!o) {
|
|
939
|
-
const
|
|
940
|
-
|
|
939
|
+
const N = new Error("No image source provided");
|
|
940
|
+
t("preload:error", { item: r.item, type: "image", src: o, error: N }), E(N);
|
|
941
941
|
return;
|
|
942
942
|
}
|
|
943
|
-
const $ = new Image(), C = Date.now(),
|
|
943
|
+
const $ = new Image(), C = Date.now(), A = 300;
|
|
944
944
|
$.onload = () => {
|
|
945
|
-
const
|
|
945
|
+
const N = Date.now() - C, j = Math.max(0, A - N);
|
|
946
946
|
setTimeout(async () => {
|
|
947
|
-
y.value = !0,
|
|
947
|
+
y.value = !0, g.value = !1, p.value = !1, await q(), await new Promise((G) => setTimeout(G, 100)), x.value = !0, t("preload:success", { item: r.item, type: "image", src: o }), u();
|
|
948
948
|
}, j);
|
|
949
949
|
}, $.onerror = () => {
|
|
950
|
-
|
|
951
|
-
const
|
|
952
|
-
|
|
950
|
+
g.value = !0, y.value = !1, p.value = !1;
|
|
951
|
+
const N = new Error("Failed to load image");
|
|
952
|
+
t("preload:error", { item: r.item, type: "image", src: o, error: N }), E(N);
|
|
953
953
|
}, $.src = o;
|
|
954
954
|
});
|
|
955
955
|
}
|
|
956
956
|
function k(o) {
|
|
957
|
-
return new Promise((u,
|
|
957
|
+
return new Promise((u, E) => {
|
|
958
958
|
if (!o) {
|
|
959
|
-
const
|
|
960
|
-
|
|
959
|
+
const N = new Error("No video source provided");
|
|
960
|
+
t("preload:error", { item: r.item, type: "video", src: o, error: N }), E(N);
|
|
961
961
|
return;
|
|
962
962
|
}
|
|
963
|
-
const $ = document.createElement("video"), C = Date.now(),
|
|
963
|
+
const $ = document.createElement("video"), C = Date.now(), A = 300;
|
|
964
964
|
$.preload = "metadata", $.muted = !0, $.onloadedmetadata = () => {
|
|
965
|
-
const
|
|
965
|
+
const N = Date.now() - C, j = Math.max(0, A - N);
|
|
966
966
|
setTimeout(async () => {
|
|
967
|
-
i.value = !0, w.value = !1, p.value = !1, await q(), await new Promise((
|
|
967
|
+
i.value = !0, w.value = !1, p.value = !1, await q(), await new Promise((G) => setTimeout(G, 100)), x.value = !0, t("preload:success", { item: r.item, type: "video", src: o }), u();
|
|
968
968
|
}, j);
|
|
969
969
|
}, $.onerror = () => {
|
|
970
970
|
w.value = !0, i.value = !1, p.value = !1;
|
|
971
|
-
const
|
|
972
|
-
|
|
971
|
+
const N = new Error("Failed to load video");
|
|
972
|
+
t("preload:error", { item: r.item, type: "video", src: o, error: N }), E(N);
|
|
973
973
|
}, $.src = o;
|
|
974
974
|
});
|
|
975
975
|
}
|
|
976
976
|
async function W() {
|
|
977
977
|
var u;
|
|
978
|
-
if (!
|
|
978
|
+
if (!n.value || p.value || d.value || a.value === "video" && i.value || a.value === "image" && y.value)
|
|
979
979
|
return;
|
|
980
980
|
const o = (u = r.item) == null ? void 0 : u.src;
|
|
981
981
|
if (o)
|
|
982
|
-
if (p.value = !0, x.value = !1,
|
|
982
|
+
if (p.value = !0, x.value = !1, a.value === "video") {
|
|
983
983
|
b.value = o, i.value = !1, w.value = !1;
|
|
984
984
|
try {
|
|
985
985
|
await k(o);
|
|
986
986
|
} catch {
|
|
987
987
|
}
|
|
988
988
|
} else {
|
|
989
|
-
|
|
989
|
+
h.value = o, y.value = !1, g.value = !1;
|
|
990
990
|
try {
|
|
991
991
|
await L(o);
|
|
992
992
|
} catch {
|
|
993
993
|
}
|
|
994
994
|
}
|
|
995
995
|
}
|
|
996
|
-
return
|
|
997
|
-
|
|
996
|
+
return tt(() => {
|
|
997
|
+
T.value && (m = new IntersectionObserver(
|
|
998
998
|
(o) => {
|
|
999
999
|
o.forEach((u) => {
|
|
1000
|
-
u.isIntersecting && u.intersectionRatio >= 1 ?
|
|
1000
|
+
u.isIntersecting && u.intersectionRatio >= 1 ? n.value || (n.value = !0, W()) : u.isIntersecting;
|
|
1001
1001
|
});
|
|
1002
1002
|
},
|
|
1003
1003
|
{
|
|
1004
1004
|
// Only trigger when item is 100% visible (full height in view)
|
|
1005
1005
|
threshold: [1]
|
|
1006
1006
|
}
|
|
1007
|
-
),
|
|
1008
|
-
}),
|
|
1009
|
-
|
|
1007
|
+
), m.observe(T.value));
|
|
1008
|
+
}), at(() => {
|
|
1009
|
+
m && (m.disconnect(), m = null);
|
|
1010
1010
|
}), te(
|
|
1011
1011
|
() => {
|
|
1012
1012
|
var o;
|
|
@@ -1014,15 +1014,15 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1014
1014
|
},
|
|
1015
1015
|
async (o) => {
|
|
1016
1016
|
if (!(!o || d.value)) {
|
|
1017
|
-
if (
|
|
1018
|
-
if (o !== b.value && (i.value = !1, w.value = !1, b.value = o,
|
|
1017
|
+
if (a.value === "video") {
|
|
1018
|
+
if (o !== b.value && (i.value = !1, w.value = !1, b.value = o, n.value)) {
|
|
1019
1019
|
p.value = !0;
|
|
1020
1020
|
try {
|
|
1021
1021
|
await k(o);
|
|
1022
1022
|
} catch {
|
|
1023
1023
|
}
|
|
1024
1024
|
}
|
|
1025
|
-
} else if (o !==
|
|
1025
|
+
} else if (o !== h.value && (y.value = !1, g.value = !1, h.value = o, n.value)) {
|
|
1026
1026
|
p.value = !0;
|
|
1027
1027
|
try {
|
|
1028
1028
|
await L(o);
|
|
@@ -1038,7 +1038,7 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1038
1038
|
}
|
|
1039
1039
|
), (o, u) => (O(), R("div", {
|
|
1040
1040
|
ref_key: "containerRef",
|
|
1041
|
-
ref:
|
|
1041
|
+
ref: T,
|
|
1042
1042
|
class: "relative w-full h-full flex flex-col"
|
|
1043
1043
|
}, [
|
|
1044
1044
|
o.headerHeight > 0 ? (O(), R("div", {
|
|
@@ -1046,42 +1046,42 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1046
1046
|
class: "relative z-10",
|
|
1047
1047
|
style: ge({ height: `${o.headerHeight}px` })
|
|
1048
1048
|
}, [
|
|
1049
|
-
|
|
1049
|
+
X(o.$slots, "header", {
|
|
1050
1050
|
item: o.item,
|
|
1051
1051
|
remove: o.remove,
|
|
1052
1052
|
imageLoaded: y.value,
|
|
1053
|
-
imageError:
|
|
1053
|
+
imageError: g.value,
|
|
1054
1054
|
videoLoaded: i.value,
|
|
1055
1055
|
videoError: w.value,
|
|
1056
1056
|
showNotFound: d.value,
|
|
1057
1057
|
isLoading: p.value,
|
|
1058
|
-
mediaType:
|
|
1058
|
+
mediaType: a.value
|
|
1059
1059
|
})
|
|
1060
|
-
], 4)) :
|
|
1061
|
-
V("div",
|
|
1062
|
-
|
|
1060
|
+
], 4)) : ae("", !0),
|
|
1061
|
+
V("div", sa, [
|
|
1062
|
+
X(o.$slots, "default", {
|
|
1063
1063
|
item: o.item,
|
|
1064
1064
|
remove: o.remove,
|
|
1065
1065
|
imageLoaded: y.value,
|
|
1066
|
-
imageError:
|
|
1066
|
+
imageError: g.value,
|
|
1067
1067
|
videoLoaded: i.value,
|
|
1068
1068
|
videoError: w.value,
|
|
1069
1069
|
showNotFound: d.value,
|
|
1070
1070
|
isLoading: p.value,
|
|
1071
|
-
mediaType:
|
|
1072
|
-
imageSrc:
|
|
1071
|
+
mediaType: a.value,
|
|
1072
|
+
imageSrc: h.value,
|
|
1073
1073
|
videoSrc: b.value,
|
|
1074
1074
|
showMedia: x.value
|
|
1075
1075
|
}, () => [
|
|
1076
|
-
V("div",
|
|
1077
|
-
d.value ? (O(), R("div",
|
|
1076
|
+
V("div", ua, [
|
|
1077
|
+
d.value ? (O(), R("div", ca, u[3] || (u[3] = [
|
|
1078
1078
|
V("i", { class: "fas fa-search text-3xl mb-3 opacity-50" }, null, -1),
|
|
1079
1079
|
V("span", { class: "font-medium" }, "Not Found", -1),
|
|
1080
1080
|
V("span", { class: "text-xs mt-1 opacity-75" }, "This item could not be located", -1)
|
|
1081
|
-
]))) : (O(), R("div",
|
|
1082
|
-
|
|
1081
|
+
]))) : (O(), R("div", va, [
|
|
1082
|
+
a.value === "image" && h.value ? (O(), R("img", {
|
|
1083
1083
|
key: 0,
|
|
1084
|
-
src:
|
|
1084
|
+
src: h.value,
|
|
1085
1085
|
class: re([
|
|
1086
1086
|
"w-full h-full object-cover transition-opacity duration-700 ease-in-out",
|
|
1087
1087
|
y.value && x.value ? "opacity-100" : "opacity-0"
|
|
@@ -1090,10 +1090,10 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1090
1090
|
loading: "lazy",
|
|
1091
1091
|
decoding: "async",
|
|
1092
1092
|
alt: "",
|
|
1093
|
-
onMouseenter: u[0] || (u[0] = (
|
|
1094
|
-
onMouseleave: u[1] || (u[1] = (
|
|
1095
|
-
}, null, 42,
|
|
1096
|
-
|
|
1093
|
+
onMouseenter: u[0] || (u[0] = (E) => M("image")),
|
|
1094
|
+
onMouseleave: u[1] || (u[1] = (E) => P("image"))
|
|
1095
|
+
}, null, 42, fa)) : ae("", !0),
|
|
1096
|
+
a.value === "video" && b.value ? (O(), R("video", {
|
|
1097
1097
|
key: 1,
|
|
1098
1098
|
ref_key: "videoEl",
|
|
1099
1099
|
ref: s,
|
|
@@ -1108,38 +1108,38 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1108
1108
|
playsinline: "",
|
|
1109
1109
|
autoplay: v.value && r.isActive,
|
|
1110
1110
|
controls: v.value,
|
|
1111
|
-
onClick:
|
|
1112
|
-
onTouchend:
|
|
1111
|
+
onClick: Ye(I, ["stop"]),
|
|
1112
|
+
onTouchend: Ye(I, ["stop", "prevent"]),
|
|
1113
1113
|
onMouseenter: f,
|
|
1114
|
-
onMouseleave:
|
|
1115
|
-
onError: u[2] || (u[2] = (
|
|
1116
|
-
}, null, 42,
|
|
1117
|
-
!y.value && !i.value && !
|
|
1114
|
+
onMouseleave: H,
|
|
1115
|
+
onError: u[2] || (u[2] = (E) => w.value = !0)
|
|
1116
|
+
}, null, 42, da)) : ae("", !0),
|
|
1117
|
+
!y.value && !i.value && !g.value && !w.value ? (O(), R("div", {
|
|
1118
1118
|
key: 2,
|
|
1119
1119
|
class: re([
|
|
1120
1120
|
"absolute inset-0 bg-slate-100 flex items-center justify-center transition-opacity duration-500",
|
|
1121
1121
|
x.value ? "opacity-0 pointer-events-none" : "opacity-100"
|
|
1122
1122
|
])
|
|
1123
1123
|
}, [
|
|
1124
|
-
V("div",
|
|
1125
|
-
|
|
1124
|
+
V("div", ha, [
|
|
1125
|
+
X(o.$slots, "placeholder-icon", { mediaType: a.value }, () => [
|
|
1126
1126
|
V("i", {
|
|
1127
|
-
class: re(
|
|
1127
|
+
class: re(a.value === "video" ? "fas fa-video text-xl text-slate-400" : "fas fa-image text-xl text-slate-400")
|
|
1128
1128
|
}, null, 2)
|
|
1129
1129
|
])
|
|
1130
1130
|
])
|
|
1131
|
-
], 2)) :
|
|
1132
|
-
p.value ? (O(), R("div",
|
|
1131
|
+
], 2)) : ae("", !0),
|
|
1132
|
+
p.value ? (O(), R("div", ma, u[4] || (u[4] = [
|
|
1133
1133
|
V("div", { class: "bg-white/90 backdrop-blur-sm rounded-full px-3 py-1.5 shadow-sm" }, [
|
|
1134
1134
|
V("div", { class: "animate-spin rounded-full h-4 w-4 border-b-2 border-blue-500" })
|
|
1135
1135
|
], -1)
|
|
1136
|
-
]))) :
|
|
1137
|
-
|
|
1136
|
+
]))) : ae("", !0),
|
|
1137
|
+
a.value === "image" && g.value || a.value === "video" && w.value ? (O(), R("div", ga, [
|
|
1138
1138
|
V("i", {
|
|
1139
|
-
class: re(
|
|
1139
|
+
class: re(a.value === "video" ? "fas fa-video text-2xl mb-2 opacity-50" : "fas fa-image text-2xl mb-2 opacity-50")
|
|
1140
1140
|
}, null, 2),
|
|
1141
|
-
V("span", null, "Failed to load " +
|
|
1142
|
-
])) :
|
|
1141
|
+
V("span", null, "Failed to load " + Be(a.value), 1)
|
|
1142
|
+
])) : ae("", !0)
|
|
1143
1143
|
]))
|
|
1144
1144
|
])
|
|
1145
1145
|
])
|
|
@@ -1149,33 +1149,33 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1149
1149
|
class: "relative z-10",
|
|
1150
1150
|
style: ge({ height: `${o.footerHeight}px` })
|
|
1151
1151
|
}, [
|
|
1152
|
-
|
|
1152
|
+
X(o.$slots, "footer", {
|
|
1153
1153
|
item: o.item,
|
|
1154
1154
|
remove: o.remove,
|
|
1155
1155
|
imageLoaded: y.value,
|
|
1156
|
-
imageError:
|
|
1156
|
+
imageError: g.value,
|
|
1157
1157
|
videoLoaded: i.value,
|
|
1158
1158
|
videoError: w.value,
|
|
1159
1159
|
showNotFound: d.value,
|
|
1160
1160
|
isLoading: p.value,
|
|
1161
|
-
mediaType:
|
|
1161
|
+
mediaType: a.value
|
|
1162
1162
|
})
|
|
1163
|
-
], 4)) :
|
|
1163
|
+
], 4)) : ae("", !0)
|
|
1164
1164
|
], 512));
|
|
1165
1165
|
}
|
|
1166
|
-
}),
|
|
1166
|
+
}), pa = { class: "w-full h-full flex items-center justify-center p-4" }, ya = { class: "w-full h-full max-w-full max-h-full relative" }, wa = {
|
|
1167
1167
|
key: 0,
|
|
1168
1168
|
class: "w-full py-8 text-center"
|
|
1169
|
-
},
|
|
1169
|
+
}, xa = {
|
|
1170
1170
|
key: 1,
|
|
1171
1171
|
class: "w-full py-8 text-center"
|
|
1172
|
-
},
|
|
1172
|
+
}, ba = { class: "text-red-500 dark:text-red-400" }, Ma = {
|
|
1173
1173
|
key: 0,
|
|
1174
1174
|
class: "w-full py-8 text-center"
|
|
1175
|
-
},
|
|
1175
|
+
}, Ta = {
|
|
1176
1176
|
key: 1,
|
|
1177
1177
|
class: "w-full py-8 text-center"
|
|
1178
|
-
},
|
|
1178
|
+
}, Ia = { class: "text-red-500 dark:text-red-400" }, Ea = /* @__PURE__ */ et({
|
|
1179
1179
|
__name: "Masonry",
|
|
1180
1180
|
props: {
|
|
1181
1181
|
getNextPage: {
|
|
@@ -1204,6 +1204,15 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1204
1204
|
type: Boolean,
|
|
1205
1205
|
default: !1
|
|
1206
1206
|
},
|
|
1207
|
+
// Initial pagination state when skipInitialLoad is true and items are provided
|
|
1208
|
+
initialPage: {
|
|
1209
|
+
type: [Number, String],
|
|
1210
|
+
default: null
|
|
1211
|
+
},
|
|
1212
|
+
initialNextPage: {
|
|
1213
|
+
type: [Number, String],
|
|
1214
|
+
default: null
|
|
1215
|
+
},
|
|
1207
1216
|
pageSize: {
|
|
1208
1217
|
type: Number,
|
|
1209
1218
|
default: 40
|
|
@@ -1294,7 +1303,7 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1294
1303
|
"item:mouse-leave"
|
|
1295
1304
|
],
|
|
1296
1305
|
setup(e, { expose: l, emit: r }) {
|
|
1297
|
-
const
|
|
1306
|
+
const t = e, y = {
|
|
1298
1307
|
sizes: { base: 1, sm: 2, md: 3, lg: 4, xl: 5, "2xl": 6 },
|
|
1299
1308
|
gutterX: 10,
|
|
1300
1309
|
gutterY: 10,
|
|
@@ -1303,18 +1312,18 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1303
1312
|
paddingLeft: 0,
|
|
1304
1313
|
paddingRight: 0,
|
|
1305
1314
|
placement: "masonry"
|
|
1306
|
-
},
|
|
1315
|
+
}, g = Z(() => {
|
|
1307
1316
|
var c;
|
|
1308
1317
|
return {
|
|
1309
1318
|
...y,
|
|
1310
|
-
...
|
|
1319
|
+
...t.layout,
|
|
1311
1320
|
sizes: {
|
|
1312
1321
|
...y.sizes,
|
|
1313
|
-
...((c =
|
|
1322
|
+
...((c = t.layout) == null ? void 0 : c.sizes) || {}
|
|
1314
1323
|
}
|
|
1315
1324
|
};
|
|
1316
|
-
}),
|
|
1317
|
-
let
|
|
1325
|
+
}), h = B(null), i = B(typeof window < "u" ? window.innerWidth : 1024), w = B(typeof window < "u" ? window.innerHeight : 768), b = B(null);
|
|
1326
|
+
let n = null;
|
|
1318
1327
|
function p(c) {
|
|
1319
1328
|
return {
|
|
1320
1329
|
sm: 640,
|
|
@@ -1324,232 +1333,249 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1324
1333
|
"2xl": 1536
|
|
1325
1334
|
}[c] || 768;
|
|
1326
1335
|
}
|
|
1327
|
-
const x =
|
|
1328
|
-
if (
|
|
1329
|
-
if (
|
|
1330
|
-
const c = typeof
|
|
1336
|
+
const x = Z(() => {
|
|
1337
|
+
if (t.layoutMode === "masonry") return !1;
|
|
1338
|
+
if (t.layoutMode === "swipe") return !0;
|
|
1339
|
+
const c = typeof t.mobileBreakpoint == "string" ? p(t.mobileBreakpoint) : t.mobileBreakpoint;
|
|
1331
1340
|
return i.value < c;
|
|
1332
|
-
}),
|
|
1333
|
-
get: () =>
|
|
1334
|
-
set: (c) =>
|
|
1335
|
-
}),
|
|
1341
|
+
}), T = r, s = Z({
|
|
1342
|
+
get: () => t.items,
|
|
1343
|
+
set: (c) => T("update:items", c)
|
|
1344
|
+
}), m = B(7), a = B(null), d = B([]), v = B(null), M = B(!1), P = B(0), I = B(!1), f = B(null), H = Z(() => Jt(i.value)), L = ia({
|
|
1336
1345
|
masonry: s
|
|
1337
|
-
}), { checkItemDimensions: k, reset: W } = L, o =
|
|
1346
|
+
}), { checkItemDimensions: k, reset: W } = L, o = oa({
|
|
1338
1347
|
masonry: s,
|
|
1339
1348
|
useSwipeMode: x,
|
|
1340
|
-
container:
|
|
1341
|
-
columns:
|
|
1349
|
+
container: a,
|
|
1350
|
+
columns: m,
|
|
1342
1351
|
containerWidth: i,
|
|
1343
|
-
masonryContentHeight:
|
|
1344
|
-
layout:
|
|
1352
|
+
masonryContentHeight: P,
|
|
1353
|
+
layout: g,
|
|
1345
1354
|
fixedDimensions: b,
|
|
1346
1355
|
checkItemDimensions: k
|
|
1347
|
-
}), { refreshLayout: u, setFixedDimensions:
|
|
1356
|
+
}), { refreshLayout: u, setFixedDimensions: E, onResize: $ } = o, C = ra({
|
|
1348
1357
|
masonry: s,
|
|
1349
|
-
container:
|
|
1350
|
-
columns:
|
|
1351
|
-
virtualBufferPx:
|
|
1352
|
-
loadThresholdPx:
|
|
1358
|
+
container: a,
|
|
1359
|
+
columns: m,
|
|
1360
|
+
virtualBufferPx: t.virtualBufferPx,
|
|
1361
|
+
loadThresholdPx: t.loadThresholdPx,
|
|
1353
1362
|
handleScroll: () => {
|
|
1354
1363
|
}
|
|
1355
1364
|
// Will be set after pagination is initialized
|
|
1356
|
-
}), { viewportTop:
|
|
1357
|
-
{ container:
|
|
1358
|
-
{ leaveDurationMs:
|
|
1359
|
-
),
|
|
1360
|
-
getNextPage:
|
|
1365
|
+
}), { viewportTop: A, viewportHeight: N, virtualizing: j, visibleMasonry: G, updateScrollProgress: D, updateViewport: Y, reset: J } = C, { onEnter: ne, onBeforeEnter: K, onBeforeLeave: ie, onLeave: ee } = ea(
|
|
1366
|
+
{ container: a },
|
|
1367
|
+
{ leaveDurationMs: t.leaveDurationMs, virtualizing: j }
|
|
1368
|
+
), ot = ne, rt = K, it = ie, st = ee, ut = na({
|
|
1369
|
+
getNextPage: t.getNextPage,
|
|
1361
1370
|
masonry: s,
|
|
1362
|
-
isLoading:
|
|
1363
|
-
hasReachedEnd:
|
|
1371
|
+
isLoading: M,
|
|
1372
|
+
hasReachedEnd: I,
|
|
1364
1373
|
loadError: f,
|
|
1365
1374
|
currentPage: v,
|
|
1366
1375
|
paginationHistory: d,
|
|
1367
1376
|
refreshLayout: u,
|
|
1368
|
-
retryMaxAttempts:
|
|
1369
|
-
retryInitialDelayMs:
|
|
1370
|
-
retryBackoffStepMs:
|
|
1371
|
-
backfillEnabled:
|
|
1372
|
-
backfillDelayMs:
|
|
1373
|
-
backfillMaxCalls:
|
|
1374
|
-
pageSize:
|
|
1375
|
-
autoRefreshOnEmpty:
|
|
1376
|
-
emits:
|
|
1377
|
-
}), { loadPage:
|
|
1377
|
+
retryMaxAttempts: t.retryMaxAttempts,
|
|
1378
|
+
retryInitialDelayMs: t.retryInitialDelayMs,
|
|
1379
|
+
retryBackoffStepMs: t.retryBackoffStepMs,
|
|
1380
|
+
backfillEnabled: t.backfillEnabled,
|
|
1381
|
+
backfillDelayMs: t.backfillDelayMs,
|
|
1382
|
+
backfillMaxCalls: t.backfillMaxCalls,
|
|
1383
|
+
pageSize: t.pageSize,
|
|
1384
|
+
autoRefreshOnEmpty: t.autoRefreshOnEmpty,
|
|
1385
|
+
emits: T
|
|
1386
|
+
}), { loadPage: Te, loadNext: pe, refreshCurrentPage: ze, cancelLoad: Ie, maybeBackfillToTarget: ct } = ut, Q = aa({
|
|
1378
1387
|
useSwipeMode: x,
|
|
1379
1388
|
masonry: s,
|
|
1380
|
-
isLoading:
|
|
1389
|
+
isLoading: M,
|
|
1381
1390
|
loadNext: pe,
|
|
1382
|
-
loadPage:
|
|
1391
|
+
loadPage: Te,
|
|
1383
1392
|
paginationHistory: d
|
|
1384
|
-
}), { handleScroll:
|
|
1385
|
-
container:
|
|
1393
|
+
}), { handleScroll: Fe } = ta({
|
|
1394
|
+
container: a,
|
|
1386
1395
|
masonry: s,
|
|
1387
|
-
columns:
|
|
1388
|
-
containerHeight:
|
|
1389
|
-
isLoading:
|
|
1390
|
-
pageSize:
|
|
1396
|
+
columns: m,
|
|
1397
|
+
containerHeight: P,
|
|
1398
|
+
isLoading: M,
|
|
1399
|
+
pageSize: t.pageSize,
|
|
1391
1400
|
refreshLayout: u,
|
|
1392
1401
|
setItemsRaw: (c) => {
|
|
1393
1402
|
s.value = c;
|
|
1394
1403
|
},
|
|
1395
1404
|
loadNext: pe,
|
|
1396
|
-
loadThresholdPx:
|
|
1405
|
+
loadThresholdPx: t.loadThresholdPx
|
|
1397
1406
|
});
|
|
1398
|
-
C.handleScroll.value =
|
|
1399
|
-
const
|
|
1407
|
+
C.handleScroll.value = Fe;
|
|
1408
|
+
const vt = la({
|
|
1400
1409
|
masonry: s,
|
|
1401
1410
|
useSwipeMode: x,
|
|
1402
1411
|
refreshLayout: u,
|
|
1403
|
-
refreshCurrentPage:
|
|
1412
|
+
refreshCurrentPage: ze,
|
|
1404
1413
|
loadNext: pe,
|
|
1405
|
-
maybeBackfillToTarget:
|
|
1406
|
-
autoRefreshOnEmpty:
|
|
1414
|
+
maybeBackfillToTarget: ct,
|
|
1415
|
+
autoRefreshOnEmpty: t.autoRefreshOnEmpty,
|
|
1407
1416
|
paginationHistory: d
|
|
1408
|
-
}), { remove: ce, removeMany:
|
|
1409
|
-
function
|
|
1410
|
-
|
|
1417
|
+
}), { remove: ce, removeMany: ft, restore: dt, restoreMany: ht, removeAll: mt } = vt;
|
|
1418
|
+
function gt(c) {
|
|
1419
|
+
E(c, D), !c && h.value && (i.value = h.value.clientWidth, w.value = h.value.clientHeight);
|
|
1411
1420
|
}
|
|
1412
1421
|
l({
|
|
1413
|
-
isLoading:
|
|
1422
|
+
isLoading: M,
|
|
1414
1423
|
refreshLayout: u,
|
|
1415
1424
|
// Container dimensions (wrapper element)
|
|
1416
1425
|
containerWidth: i,
|
|
1417
1426
|
containerHeight: w,
|
|
1418
1427
|
// Masonry content height (for backward compatibility, old containerHeight)
|
|
1419
|
-
contentHeight:
|
|
1428
|
+
contentHeight: P,
|
|
1420
1429
|
// Current page
|
|
1421
1430
|
currentPage: v,
|
|
1422
1431
|
// End of list tracking
|
|
1423
|
-
hasReachedEnd:
|
|
1432
|
+
hasReachedEnd: I,
|
|
1424
1433
|
// Load error tracking
|
|
1425
1434
|
loadError: f,
|
|
1426
1435
|
// Set fixed dimensions (overrides ResizeObserver)
|
|
1427
|
-
setFixedDimensions:
|
|
1436
|
+
setFixedDimensions: gt,
|
|
1428
1437
|
remove: ce,
|
|
1429
|
-
removeMany:
|
|
1430
|
-
removeAll:
|
|
1431
|
-
restore:
|
|
1432
|
-
restoreMany:
|
|
1438
|
+
removeMany: ft,
|
|
1439
|
+
removeAll: mt,
|
|
1440
|
+
restore: dt,
|
|
1441
|
+
restoreMany: ht,
|
|
1433
1442
|
loadNext: pe,
|
|
1434
|
-
loadPage:
|
|
1435
|
-
refreshCurrentPage:
|
|
1436
|
-
reset:
|
|
1437
|
-
destroy:
|
|
1438
|
-
init:
|
|
1439
|
-
restoreItems:
|
|
1443
|
+
loadPage: Te,
|
|
1444
|
+
refreshCurrentPage: ze,
|
|
1445
|
+
reset: xt,
|
|
1446
|
+
destroy: bt,
|
|
1447
|
+
init: Ve,
|
|
1448
|
+
restoreItems: Le,
|
|
1440
1449
|
paginationHistory: d,
|
|
1441
|
-
cancelLoad:
|
|
1442
|
-
scrollToTop:
|
|
1443
|
-
scrollTo:
|
|
1444
|
-
totalItems:
|
|
1445
|
-
currentBreakpoint:
|
|
1450
|
+
cancelLoad: Ie,
|
|
1451
|
+
scrollToTop: pt,
|
|
1452
|
+
scrollTo: yt,
|
|
1453
|
+
totalItems: Z(() => s.value.length),
|
|
1454
|
+
currentBreakpoint: H
|
|
1446
1455
|
});
|
|
1447
|
-
const se =
|
|
1448
|
-
function
|
|
1449
|
-
|
|
1456
|
+
const se = Q.currentSwipeIndex, ve = Q.swipeOffset, ye = Q.isDragging, le = Q.swipeContainer, Ae = Q.handleTouchStart, We = Q.handleTouchMove, Re = Q.handleTouchEnd, Oe = Q.handleMouseDown, Ee = Q.handleMouseMove, ke = Q.handleMouseUp, Pe = Q.snapToCurrentItem;
|
|
1457
|
+
function pt(c) {
|
|
1458
|
+
a.value && a.value.scrollTo({
|
|
1450
1459
|
top: 0,
|
|
1451
1460
|
behavior: (c == null ? void 0 : c.behavior) ?? "smooth",
|
|
1452
1461
|
...c
|
|
1453
1462
|
});
|
|
1454
1463
|
}
|
|
1455
|
-
function
|
|
1456
|
-
|
|
1457
|
-
top: c.top ??
|
|
1458
|
-
left: c.left ??
|
|
1464
|
+
function yt(c) {
|
|
1465
|
+
a.value && (a.value.scrollTo({
|
|
1466
|
+
top: c.top ?? a.value.scrollTop,
|
|
1467
|
+
left: c.left ?? a.value.scrollLeft,
|
|
1459
1468
|
behavior: c.behavior ?? "auto"
|
|
1460
|
-
}),
|
|
1469
|
+
}), a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight || window.innerHeight));
|
|
1461
1470
|
}
|
|
1462
|
-
function
|
|
1463
|
-
$(),
|
|
1471
|
+
function wt() {
|
|
1472
|
+
$(), a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight);
|
|
1464
1473
|
}
|
|
1465
|
-
function
|
|
1466
|
-
|
|
1474
|
+
function xt() {
|
|
1475
|
+
Ie(), a.value && a.value.scrollTo({
|
|
1467
1476
|
top: 0,
|
|
1468
1477
|
behavior: "smooth"
|
|
1469
|
-
}), s.value = [], w.value = 0, v.value =
|
|
1478
|
+
}), s.value = [], w.value = 0, v.value = t.loadAtPage, d.value = [t.loadAtPage], I.value = !1, f.value = null, J(), we = !1;
|
|
1470
1479
|
}
|
|
1471
|
-
function
|
|
1472
|
-
|
|
1480
|
+
function bt() {
|
|
1481
|
+
Ie(), s.value = [], P.value = 0, v.value = null, d.value = [], I.value = !1, f.value = null, M.value = !1, se.value = 0, ve.value = 0, ye.value = !1, J(), W(), a.value && a.value.scrollTo({
|
|
1473
1482
|
top: 0,
|
|
1474
1483
|
behavior: "auto"
|
|
1475
1484
|
// Instant scroll for destroy
|
|
1476
1485
|
});
|
|
1477
1486
|
}
|
|
1478
|
-
const oe =
|
|
1487
|
+
const oe = Qe(async () => {
|
|
1479
1488
|
x.value || await Y();
|
|
1480
|
-
}, 200),
|
|
1481
|
-
function
|
|
1482
|
-
|
|
1489
|
+
}, 200), Ce = Qe(wt, 200);
|
|
1490
|
+
function je() {
|
|
1491
|
+
Q.handleWindowResize();
|
|
1483
1492
|
}
|
|
1484
|
-
function
|
|
1485
|
-
v.value =
|
|
1486
|
-
|
|
1493
|
+
function Ve(c, S, z) {
|
|
1494
|
+
v.value = S, d.value = [S], d.value.push(z), I.value = z == null, k(c, "init"), x.value ? (s.value = [...s.value, ...c], se.value === 0 && s.value.length > 0 && (ve.value = 0)) : (u([...s.value, ...c]), a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight || window.innerHeight), q(() => {
|
|
1495
|
+
a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight || window.innerHeight, D());
|
|
1487
1496
|
}));
|
|
1488
1497
|
}
|
|
1489
|
-
async function
|
|
1490
|
-
if (!
|
|
1491
|
-
|
|
1498
|
+
async function Le(c, S, z) {
|
|
1499
|
+
if (!t.skipInitialLoad) {
|
|
1500
|
+
Ve(c, S, z);
|
|
1492
1501
|
return;
|
|
1493
1502
|
}
|
|
1494
|
-
v.value =
|
|
1503
|
+
if (v.value = S, d.value = [S], z != null && d.value.push(z), I.value = z === null, f.value = null, k(c, "restoreItems"), x.value)
|
|
1504
|
+
s.value = c, se.value === 0 && s.value.length > 0 && (ve.value = 0);
|
|
1505
|
+
else if (u(c), a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight || window.innerHeight), await q(), a.value) {
|
|
1506
|
+
A.value = a.value.scrollTop, N.value = a.value.clientHeight || window.innerHeight, D(), await q();
|
|
1507
|
+
const _ = be(s.value, m.value), F = _.length ? Math.max(..._) : 0, qe = a.value.scrollTop + a.value.clientHeight, Se = typeof t.loadThresholdPx == "number" ? t.loadThresholdPx : 200, Mt = Se >= 0 ? Math.max(0, F - Se) : Math.max(0, F + Se);
|
|
1508
|
+
qe >= Mt && !I.value && !M.value && d.value.length > 0 && d.value[d.value.length - 1] != null && await Fe(_, !0);
|
|
1509
|
+
}
|
|
1495
1510
|
}
|
|
1496
|
-
|
|
1497
|
-
|
|
1511
|
+
te(
|
|
1512
|
+
g,
|
|
1498
1513
|
() => {
|
|
1499
|
-
x.value ||
|
|
1514
|
+
x.value || a.value && (m.value = ue(g.value, i.value), u(s.value));
|
|
1500
1515
|
},
|
|
1501
1516
|
{ deep: !0 }
|
|
1502
|
-
), te(() =>
|
|
1503
|
-
b.value && b.value.width !== void 0 ? i.value = b.value.width :
|
|
1504
|
-
}), te(
|
|
1517
|
+
), te(() => t.layoutMode, () => {
|
|
1518
|
+
b.value && b.value.width !== void 0 ? i.value = b.value.width : h.value && (i.value = h.value.clientWidth);
|
|
1519
|
+
}), te(a, (c) => {
|
|
1505
1520
|
c && !x.value ? (c.removeEventListener("scroll", oe), c.addEventListener("scroll", oe, { passive: !0 })) : c && c.removeEventListener("scroll", oe);
|
|
1506
|
-
}, { immediate: !0 })
|
|
1507
|
-
|
|
1508
|
-
|
|
1521
|
+
}, { immediate: !0 });
|
|
1522
|
+
let we = !1;
|
|
1523
|
+
return te(
|
|
1524
|
+
() => [t.items, t.skipInitialLoad, t.initialPage, t.initialNextPage],
|
|
1525
|
+
([c, S, z, _]) => {
|
|
1526
|
+
if (S && c && c.length > 0 && !we) {
|
|
1527
|
+
we = !0;
|
|
1528
|
+
const F = z ?? t.loadAtPage;
|
|
1529
|
+
Le(c, F, _ !== void 0 ? _ : void 0);
|
|
1530
|
+
}
|
|
1531
|
+
},
|
|
1532
|
+
{ immediate: !1 }
|
|
1533
|
+
), te(x, (c, S) => {
|
|
1534
|
+
S === void 0 && c === !1 || q(() => {
|
|
1535
|
+
c ? (document.addEventListener("mousemove", Ee), document.addEventListener("mouseup", ke), a.value && a.value.removeEventListener("scroll", oe), se.value = 0, ve.value = 0, s.value.length > 0 && Pe()) : (document.removeEventListener("mousemove", Ee), document.removeEventListener("mouseup", ke), a.value && h.value && (b.value && b.value.width !== void 0 ? i.value = b.value.width : i.value = h.value.clientWidth, a.value.removeEventListener("scroll", oe), a.value.addEventListener("scroll", oe, { passive: !0 }), s.value.length > 0 && (m.value = ue(g.value, i.value), u(s.value), A.value = a.value.scrollTop, N.value = a.value.clientHeight, D())));
|
|
1509
1536
|
});
|
|
1510
1537
|
}, { immediate: !0 }), te(le, (c) => {
|
|
1511
|
-
c && (c.addEventListener("touchstart",
|
|
1512
|
-
}), te(() => s.value.length, (c,
|
|
1513
|
-
x.value && c > 0 &&
|
|
1514
|
-
}), te(
|
|
1515
|
-
|
|
1538
|
+
c && (c.addEventListener("touchstart", Ae, { passive: !1 }), c.addEventListener("touchmove", We, { passive: !1 }), c.addEventListener("touchend", Re), c.addEventListener("mousedown", Oe));
|
|
1539
|
+
}), te(() => s.value.length, (c, S) => {
|
|
1540
|
+
x.value && c > 0 && S === 0 && (se.value = 0, q(() => Pe()));
|
|
1541
|
+
}), te(h, (c) => {
|
|
1542
|
+
n && (n.disconnect(), n = null), c && typeof ResizeObserver < "u" ? (n = new ResizeObserver((S) => {
|
|
1516
1543
|
if (!b.value)
|
|
1517
|
-
for (const
|
|
1518
|
-
const
|
|
1519
|
-
i.value !==
|
|
1544
|
+
for (const z of S) {
|
|
1545
|
+
const _ = z.contentRect.width, F = z.contentRect.height;
|
|
1546
|
+
i.value !== _ && (i.value = _), w.value !== F && (w.value = F);
|
|
1520
1547
|
}
|
|
1521
|
-
}),
|
|
1522
|
-
}, { immediate: !0 }), te(i, (c,
|
|
1523
|
-
c !==
|
|
1524
|
-
|
|
1548
|
+
}), n.observe(c), b.value || (i.value = c.clientWidth, w.value = c.clientHeight)) : c && (b.value || (i.value = c.clientWidth, w.value = c.clientHeight));
|
|
1549
|
+
}, { immediate: !0 }), te(i, (c, S) => {
|
|
1550
|
+
c !== S && c > 0 && !x.value && a.value && s.value.length > 0 && q(() => {
|
|
1551
|
+
m.value = ue(g.value, c), u(s.value), D();
|
|
1525
1552
|
});
|
|
1526
|
-
}),
|
|
1553
|
+
}), tt(async () => {
|
|
1527
1554
|
try {
|
|
1528
|
-
await q(),
|
|
1529
|
-
const c =
|
|
1530
|
-
if (d.value = [c], !
|
|
1531
|
-
await
|
|
1532
|
-
else if (
|
|
1533
|
-
const
|
|
1534
|
-
await
|
|
1535
|
-
}
|
|
1536
|
-
|
|
1537
|
-
x.value ? q(() => Ie()) : B();
|
|
1555
|
+
await q(), h.value && !n && (i.value = h.value.clientWidth, w.value = h.value.clientHeight), x.value || (m.value = ue(g.value, i.value), a.value && (A.value = a.value.scrollTop, N.value = a.value.clientHeight));
|
|
1556
|
+
const c = t.loadAtPage;
|
|
1557
|
+
if (d.value = [c], !t.skipInitialLoad)
|
|
1558
|
+
await Te(d.value[0]);
|
|
1559
|
+
else if (t.items && t.items.length > 0) {
|
|
1560
|
+
const S = t.initialPage !== null && t.initialPage !== void 0 ? t.initialPage : t.loadAtPage, z = t.initialNextPage !== void 0 ? t.initialNextPage : void 0;
|
|
1561
|
+
await Le(t.items, S, z), we = !0;
|
|
1562
|
+
}
|
|
1563
|
+
x.value ? q(() => Pe()) : D();
|
|
1538
1564
|
} catch (c) {
|
|
1539
|
-
f.value || (console.error("Error during component initialization:", c), f.value =
|
|
1565
|
+
f.value || (console.error("Error during component initialization:", c), f.value = me(c)), M.value = !1;
|
|
1540
1566
|
}
|
|
1541
|
-
window.addEventListener("resize",
|
|
1542
|
-
}),
|
|
1567
|
+
window.addEventListener("resize", Ce), window.addEventListener("resize", je);
|
|
1568
|
+
}), at(() => {
|
|
1543
1569
|
var c;
|
|
1544
|
-
|
|
1545
|
-
}), (c,
|
|
1570
|
+
n && (n.disconnect(), n = null), (c = a.value) == null || c.removeEventListener("scroll", oe), window.removeEventListener("resize", Ce), window.removeEventListener("resize", je), le.value && (le.value.removeEventListener("touchstart", Ae), le.value.removeEventListener("touchmove", We), le.value.removeEventListener("touchend", Re), le.value.removeEventListener("mousedown", Oe)), document.removeEventListener("mousemove", Ee), document.removeEventListener("mouseup", ke);
|
|
1571
|
+
}), (c, S) => (O(), R("div", {
|
|
1546
1572
|
ref_key: "wrapper",
|
|
1547
|
-
ref:
|
|
1573
|
+
ref: h,
|
|
1548
1574
|
class: "w-full h-full flex flex-col relative"
|
|
1549
1575
|
}, [
|
|
1550
1576
|
x.value ? (O(), R("div", {
|
|
1551
1577
|
key: 0,
|
|
1552
|
-
class: re(["overflow-hidden w-full flex-1 swipe-container touch-none select-none", { "force-motion":
|
|
1578
|
+
class: re(["overflow-hidden w-full flex-1 swipe-container touch-none select-none", { "force-motion": t.forceMotion, "cursor-grab": !U(ye), "cursor-grabbing": U(ye) }]),
|
|
1553
1579
|
ref_key: "swipeContainer",
|
|
1554
1580
|
ref: le,
|
|
1555
1581
|
style: { height: "100%", "max-height": "100%", position: "relative" }
|
|
@@ -1562,38 +1588,38 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1562
1588
|
height: `${s.value.length * 100}%`
|
|
1563
1589
|
})
|
|
1564
1590
|
}, [
|
|
1565
|
-
(O(!0), R(
|
|
1566
|
-
key: `${
|
|
1591
|
+
(O(!0), R(Ue, null, _e(s.value, (z, _) => (O(), R("div", {
|
|
1592
|
+
key: `${z.page}-${z.id}`,
|
|
1567
1593
|
class: "absolute top-0 left-0 w-full",
|
|
1568
1594
|
style: ge({
|
|
1569
|
-
top: `${
|
|
1595
|
+
top: `${_ * (100 / s.value.length)}%`,
|
|
1570
1596
|
height: `${100 / s.value.length}%`
|
|
1571
1597
|
})
|
|
1572
1598
|
}, [
|
|
1573
|
-
V("div",
|
|
1574
|
-
V("div",
|
|
1575
|
-
|
|
1576
|
-
item:
|
|
1599
|
+
V("div", pa, [
|
|
1600
|
+
V("div", ya, [
|
|
1601
|
+
X(c.$slots, "default", {
|
|
1602
|
+
item: z,
|
|
1577
1603
|
remove: U(ce),
|
|
1578
|
-
index:
|
|
1604
|
+
index: z.originalIndex ?? s.value.indexOf(z)
|
|
1579
1605
|
}, () => [
|
|
1580
|
-
|
|
1581
|
-
item:
|
|
1606
|
+
He(Me, {
|
|
1607
|
+
item: z,
|
|
1582
1608
|
remove: U(ce),
|
|
1583
|
-
"header-height":
|
|
1584
|
-
"footer-height":
|
|
1609
|
+
"header-height": g.value.header,
|
|
1610
|
+
"footer-height": g.value.footer,
|
|
1585
1611
|
"in-swipe-mode": !0,
|
|
1586
|
-
"is-active":
|
|
1587
|
-
"onPreload:success":
|
|
1588
|
-
"onPreload:error":
|
|
1589
|
-
onMouseEnter:
|
|
1590
|
-
onMouseLeave:
|
|
1612
|
+
"is-active": _ === U(se),
|
|
1613
|
+
"onPreload:success": S[0] || (S[0] = (F) => T("item:preload:success", F)),
|
|
1614
|
+
"onPreload:error": S[1] || (S[1] = (F) => T("item:preload:error", F)),
|
|
1615
|
+
onMouseEnter: S[2] || (S[2] = (F) => T("item:mouse-enter", F)),
|
|
1616
|
+
onMouseLeave: S[3] || (S[3] = (F) => T("item:mouse-leave", F))
|
|
1591
1617
|
}, {
|
|
1592
|
-
header: fe((
|
|
1593
|
-
|
|
1618
|
+
header: fe((F) => [
|
|
1619
|
+
X(c.$slots, "item-header", de({ ref_for: !0 }, F), void 0, !0)
|
|
1594
1620
|
]),
|
|
1595
|
-
footer: fe((
|
|
1596
|
-
|
|
1621
|
+
footer: fe((F) => [
|
|
1622
|
+
X(c.$slots, "item-footer", de({ ref_for: !0 }, F), void 0, !0)
|
|
1597
1623
|
]),
|
|
1598
1624
|
_: 2
|
|
1599
1625
|
}, 1032, ["item", "remove", "header-height", "footer-height", "is-active"])
|
|
@@ -1602,62 +1628,62 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1602
1628
|
])
|
|
1603
1629
|
], 4))), 128))
|
|
1604
1630
|
], 4),
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1631
|
+
I.value && s.value.length > 0 ? (O(), R("div", wa, [
|
|
1632
|
+
X(c.$slots, "end-message", {}, () => [
|
|
1633
|
+
S[8] || (S[8] = V("p", { class: "text-gray-500 dark:text-gray-400" }, "You've reached the end", -1))
|
|
1608
1634
|
], !0)
|
|
1609
|
-
])) :
|
|
1610
|
-
f.value && s.value.length > 0 ? (O(), R("div",
|
|
1611
|
-
|
|
1612
|
-
V("p",
|
|
1635
|
+
])) : ae("", !0),
|
|
1636
|
+
f.value && s.value.length > 0 ? (O(), R("div", xa, [
|
|
1637
|
+
X(c.$slots, "error-message", { error: f.value }, () => [
|
|
1638
|
+
V("p", ba, "Failed to load content: " + Be(f.value.message), 1)
|
|
1613
1639
|
], !0)
|
|
1614
|
-
])) :
|
|
1640
|
+
])) : ae("", !0)
|
|
1615
1641
|
], 2)) : (O(), R("div", {
|
|
1616
1642
|
key: 1,
|
|
1617
|
-
class: re(["overflow-auto w-full flex-1 masonry-container", { "force-motion":
|
|
1643
|
+
class: re(["overflow-auto w-full flex-1 masonry-container", { "force-motion": t.forceMotion }]),
|
|
1618
1644
|
ref_key: "container",
|
|
1619
|
-
ref:
|
|
1645
|
+
ref: a
|
|
1620
1646
|
}, [
|
|
1621
1647
|
V("div", {
|
|
1622
1648
|
class: "relative",
|
|
1623
|
-
style: ge({ height: `${
|
|
1649
|
+
style: ge({ height: `${P.value}px`, "--masonry-duration": `${e.transitionDurationMs}ms`, "--masonry-leave-duration": `${e.leaveDurationMs}ms`, "--masonry-ease": e.transitionEasing })
|
|
1624
1650
|
}, [
|
|
1625
|
-
|
|
1651
|
+
He(Tt, {
|
|
1626
1652
|
name: "masonry",
|
|
1627
1653
|
css: !1,
|
|
1628
|
-
onEnter: U(
|
|
1629
|
-
onBeforeEnter: U(
|
|
1630
|
-
onLeave: U(
|
|
1631
|
-
onBeforeLeave: U(
|
|
1654
|
+
onEnter: U(ot),
|
|
1655
|
+
onBeforeEnter: U(rt),
|
|
1656
|
+
onLeave: U(st),
|
|
1657
|
+
onBeforeLeave: U(it)
|
|
1632
1658
|
}, {
|
|
1633
1659
|
default: fe(() => [
|
|
1634
|
-
(O(!0), R(
|
|
1635
|
-
key: `${
|
|
1660
|
+
(O(!0), R(Ue, null, _e(U(G), (z, _) => (O(), R("div", de({
|
|
1661
|
+
key: `${z.page}-${z.id}`,
|
|
1636
1662
|
class: "absolute masonry-item",
|
|
1637
1663
|
ref_for: !0
|
|
1638
|
-
}, U(
|
|
1639
|
-
|
|
1640
|
-
item:
|
|
1664
|
+
}, U(Zt)(z, _)), [
|
|
1665
|
+
X(c.$slots, "default", {
|
|
1666
|
+
item: z,
|
|
1641
1667
|
remove: U(ce),
|
|
1642
|
-
index:
|
|
1668
|
+
index: z.originalIndex ?? s.value.indexOf(z)
|
|
1643
1669
|
}, () => [
|
|
1644
|
-
|
|
1645
|
-
item:
|
|
1670
|
+
He(Me, {
|
|
1671
|
+
item: z,
|
|
1646
1672
|
remove: U(ce),
|
|
1647
|
-
"header-height":
|
|
1648
|
-
"footer-height":
|
|
1673
|
+
"header-height": g.value.header,
|
|
1674
|
+
"footer-height": g.value.footer,
|
|
1649
1675
|
"in-swipe-mode": !1,
|
|
1650
1676
|
"is-active": !1,
|
|
1651
|
-
"onPreload:success":
|
|
1652
|
-
"onPreload:error":
|
|
1653
|
-
onMouseEnter:
|
|
1654
|
-
onMouseLeave:
|
|
1677
|
+
"onPreload:success": S[4] || (S[4] = (F) => T("item:preload:success", F)),
|
|
1678
|
+
"onPreload:error": S[5] || (S[5] = (F) => T("item:preload:error", F)),
|
|
1679
|
+
onMouseEnter: S[6] || (S[6] = (F) => T("item:mouse-enter", F)),
|
|
1680
|
+
onMouseLeave: S[7] || (S[7] = (F) => T("item:mouse-leave", F))
|
|
1655
1681
|
}, {
|
|
1656
|
-
header: fe((
|
|
1657
|
-
|
|
1682
|
+
header: fe((F) => [
|
|
1683
|
+
X(c.$slots, "item-header", de({ ref_for: !0 }, F), void 0, !0)
|
|
1658
1684
|
]),
|
|
1659
|
-
footer: fe((
|
|
1660
|
-
|
|
1685
|
+
footer: fe((F) => [
|
|
1686
|
+
X(c.$slots, "item-footer", de({ ref_for: !0 }, F), void 0, !0)
|
|
1661
1687
|
]),
|
|
1662
1688
|
_: 2
|
|
1663
1689
|
}, 1032, ["item", "remove", "header-height", "footer-height"])
|
|
@@ -1667,31 +1693,31 @@ const la = { class: "flex-1 relative min-h-0" }, oa = { class: "w-full h-full ro
|
|
|
1667
1693
|
_: 3
|
|
1668
1694
|
}, 8, ["onEnter", "onBeforeEnter", "onLeave", "onBeforeLeave"])
|
|
1669
1695
|
], 4),
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1696
|
+
I.value && s.value.length > 0 ? (O(), R("div", Ma, [
|
|
1697
|
+
X(c.$slots, "end-message", {}, () => [
|
|
1698
|
+
S[9] || (S[9] = V("p", { class: "text-gray-500 dark:text-gray-400" }, "You've reached the end", -1))
|
|
1673
1699
|
], !0)
|
|
1674
|
-
])) :
|
|
1675
|
-
f.value && s.value.length > 0 ? (O(), R("div",
|
|
1676
|
-
|
|
1677
|
-
V("p",
|
|
1700
|
+
])) : ae("", !0),
|
|
1701
|
+
f.value && s.value.length > 0 ? (O(), R("div", Ta, [
|
|
1702
|
+
X(c.$slots, "error-message", { error: f.value }, () => [
|
|
1703
|
+
V("p", Ia, "Failed to load content: " + Be(f.value.message), 1)
|
|
1678
1704
|
], !0)
|
|
1679
|
-
])) :
|
|
1705
|
+
])) : ae("", !0)
|
|
1680
1706
|
], 2))
|
|
1681
1707
|
], 512));
|
|
1682
1708
|
}
|
|
1683
|
-
}),
|
|
1709
|
+
}), ka = (e, l) => {
|
|
1684
1710
|
const r = e.__vccOpts || e;
|
|
1685
|
-
for (const [
|
|
1686
|
-
r[
|
|
1711
|
+
for (const [t, y] of l)
|
|
1712
|
+
r[t] = y;
|
|
1687
1713
|
return r;
|
|
1688
|
-
},
|
|
1714
|
+
}, Ze = /* @__PURE__ */ ka(Ea, [["__scopeId", "data-v-2c2a4c76"]]), Ha = {
|
|
1689
1715
|
install(e) {
|
|
1690
|
-
e.component("WyxosMasonry",
|
|
1716
|
+
e.component("WyxosMasonry", Ze), e.component("WMasonry", Ze), e.component("WyxosMasonryItem", Me), e.component("WMasonryItem", Me);
|
|
1691
1717
|
}
|
|
1692
1718
|
};
|
|
1693
1719
|
export {
|
|
1694
|
-
|
|
1695
|
-
|
|
1696
|
-
|
|
1720
|
+
Ze as Masonry,
|
|
1721
|
+
Me as MasonryItem,
|
|
1722
|
+
Ha as default
|
|
1697
1723
|
};
|