virtua 0.51.2 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +37 -13
  2. package/lib/angular/VGrid.d.ts +249 -0
  3. package/lib/angular/VList.d.ts +3 -3
  4. package/lib/angular/Virtualizer.d.ts +3 -3
  5. package/lib/angular/WindowVirtualizer.d.ts +3 -3
  6. package/lib/angular/index.d.ts +2 -0
  7. package/lib/angular/index.js +1150 -332
  8. package/lib/angular/index.js.map +1 -1
  9. package/lib/core/grid.d.ts +30 -0
  10. package/lib/core/index.cjs +480 -271
  11. package/lib/core/index.cjs.map +1 -1
  12. package/lib/core/index.d.ts +5 -3
  13. package/lib/core/index.js +436 -228
  14. package/lib/core/index.js.map +1 -1
  15. package/lib/core/layouts/grid.d.ts +21 -0
  16. package/lib/core/scroll-to.d.ts +50 -1
  17. package/lib/core/types.d.ts +0 -25
  18. package/lib/index.cjs +763 -565
  19. package/lib/index.cjs.map +1 -1
  20. package/lib/index.d.ts +2 -1
  21. package/lib/index.js +734 -518
  22. package/lib/index.js.map +1 -1
  23. package/lib/react/VGrid.d.ts +105 -80
  24. package/lib/react/index.d.ts +3 -2
  25. package/lib/solid/VGrid.d.ts +193 -0
  26. package/lib/solid/index.cjs +825 -301
  27. package/lib/solid/index.cjs.map +1 -1
  28. package/lib/solid/index.d.ts +3 -0
  29. package/lib/solid/index.js +797 -286
  30. package/lib/solid/index.js.map +1 -1
  31. package/lib/solid/index.jsx +760 -142
  32. package/lib/solid/index.jsx.map +1 -1
  33. package/lib/svelte/GridCell.svelte +44 -0
  34. package/lib/svelte/GridRow.svelte +42 -0
  35. package/lib/svelte/GridRowGroup.svelte +42 -0
  36. package/lib/svelte/VGrid.svelte +238 -0
  37. package/lib/svelte/VGrid.type.d.ts +185 -0
  38. package/lib/svelte/index.d.ts +3 -0
  39. package/lib/svelte/index.js +2 -1
  40. package/lib/vue/VGrid.d.ts +194 -0
  41. package/lib/vue/index.cjs +873 -368
  42. package/lib/vue/index.cjs.map +1 -1
  43. package/lib/vue/index.d.ts +3 -0
  44. package/lib/vue/index.js +861 -357
  45. package/lib/vue/index.js.map +1 -1
  46. package/package.json +4 -3
package/lib/vue/index.cjs CHANGED
@@ -4,313 +4,459 @@ Object.defineProperty(exports, Symbol.toStringTag, {
4
4
 
5
5
  let e = require("vue");
6
6
 
7
- var t, {min: r, max: o, abs: n, floor: s} = Math, i = (e, t, n) => r(n, o(t, e)), l = e => [ ...e ].sort((e, t) => e - t), c = setTimeout, a = clearTimeout, u = "function" == typeof queueMicrotask ? queueMicrotask : e => {
7
+ var t, o = [], {min: r, max: n, abs: s, floor: l} = Math, i = (e, t, o) => r(o, n(t, e)), c = e => e.sort((e, t) => e - t), a = setTimeout, u = clearTimeout, f = "function" == typeof queueMicrotask ? queueMicrotask : e => {
8
8
  Promise.resolve().then(e);
9
- }, f = () => {
9
+ }, d = () => {
10
10
  let e;
11
11
  return [ new Promise(t => {
12
12
  e = t;
13
13
  }), e ];
14
- }, d = e => e.ownerDocument, m = e => e.defaultView, p = () => (null == t && (t = /iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0),
15
- t), g = ({t: e, o: t, i: s, l: i, u: l, m: c, p: a, h: u, S: f, v: d}, m = 0) => {
16
- let g = !!d, h = !!m, S = 1, _ = 0, b = 0, z = 0, $ = 0, v = 0, y = 0, x = 0, I = 0, w = null, O = [ 0, h ? o(m - 1, 0) : -1 ], k = 0, j = !1;
17
- const E = /* @__PURE__ */ new Set, M = () => z - b, R = () => M() + v + $, T = e => s(e) - v, B = e => {
18
- e && (p() && 0 !== x || w && 1 === I ? v += e : $ += e);
14
+ }, p = e => e.ownerDocument, m = e => e.defaultView, g = () => (null == t && (t = /iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0),
15
+ t), _ = e => n(e.t(), e.o()), $ = ({l: e, i: t, u: o, p: l, m: i, h: c, t: a, S: u, v: f, I: d}, p = 0) => {
16
+ let m = !!d, _ = !!p, $ = 1, h = 0, w = 0, S = 0, y = 0, b = 0, z = 0, x = 0, v = 0, I = null, k = [ 0, _ ? n(p - 1, 0) : -1 ], O = 0, R = !1;
17
+ const T = /* @__PURE__ */ new Set, A = () => S - w, M = () => A() + b + y, N = e => o(e) - b, C = e => {
18
+ e && (g() && 0 !== x || I && 1 === v ? b += e : y += e);
19
19
  };
20
20
  return {
21
- I: () => {
22
- E.clear();
21
+ k: () => {
22
+ T.clear();
23
23
  },
24
- O: () => S,
25
- t: (t = 200) => {
26
- if (!j || h) return O;
27
- let n, s;
28
- if (y) [n, s] = O; else {
29
- let i = o(0, R()), l = i + _;
30
- g || (t = o(0, t), 1 !== x && (i -= t), 2 !== x && (l += t)), [n, s] = O = e(o(0, i), o(0, l)),
31
- w && (n = r(n, w[0]), s = o(s, w[1]));
24
+ O: () => $,
25
+ l: (t = 200) => {
26
+ if (!R || _) return k;
27
+ let o, s;
28
+ if (z) [o, s] = k; else {
29
+ let l = n(0, M()), i = l + h;
30
+ m || (t = n(0, t), 1 !== x && (l -= t), 2 !== x && (i += t)), [o, s] = k = e(n(0, l), n(0, i)),
31
+ I && (o = r(o, I[0]), s = n(s, I[1]));
32
32
  }
33
- return [ o(n, 0), r(s, u() - 1) ];
33
+ return [ n(o, 0), r(s, u() - 1) ];
34
34
  },
35
- k: e => t(e - b),
36
- j: c,
37
- i: T,
38
- l: i,
39
- M: u,
40
- R: () => z,
41
- T: () => 0 !== x,
42
- B: () => _,
43
- N: () => b,
44
- p: a,
45
- P: () => (y = $, $ = 0, [ y, 2 === I ]),
35
+ R: e => t(e - w),
36
+ T: c,
37
+ u: N,
38
+ p: l,
39
+ A: u,
40
+ M: () => S,
41
+ N: () => 0 !== x,
42
+ o: () => h,
43
+ C: () => w,
44
+ t: a,
45
+ j: () => (z = y, y = 0, [ z, 2 === v ]),
46
46
  q: (e, t) => {
47
- const r = [ e, t ];
48
- return E.add(r), () => {
49
- E.delete(r);
47
+ const o = [ e, t ];
48
+ return T.add(o), () => {
49
+ T.delete(o);
50
50
  };
51
51
  },
52
- A: (r, o) => {
53
- let s, u, m = 0;
54
- switch (r) {
52
+ B: (o, r) => {
53
+ let n, u, p = 0;
54
+ switch (o) {
55
55
  case 1:
56
56
  {
57
- if (o === z && 0 === I) break;
58
- const e = y;
59
- y = 0;
60
- const t = o - z, r = n(t);
61
- e && r < n(e) + 1 || 0 !== I || (x = t < 0 ? 2 : 1), h && (h = !1), z = o, m = 4;
62
- const s = M();
63
- s >= -_ && s <= a() && (m += 1, u = r > _);
57
+ if (r === S && 0 === v) break;
58
+ const e = z;
59
+ z = 0;
60
+ const t = r - S, o = s(t);
61
+ e && o < s(e) + 1 || 0 !== v || (x = t < 0 ? 2 : 1), _ && (_ = !1), S = r, p = 4;
62
+ const n = A();
63
+ n >= -h && n <= a() && (p += 1, u = o > h);
64
64
  break;
65
65
  }
66
66
 
67
67
  case 2:
68
- m = 8, 0 !== x && (s = !0, m += 1), x = 0, I = 0, w = null;
68
+ p = 8, 0 !== x && (n = !0, p += 1), x = 0, v = 0, I = null;
69
69
  break;
70
70
 
71
71
  case 3:
72
72
  {
73
- const e = o.filter(([e, t]) => !c(e, t));
73
+ const e = r.filter(([e, t]) => !c(e, t));
74
74
  if (!e.length) break;
75
- B(e.reduce((e, [t, r]) => {
76
- let o;
77
- if (2 === I) o = !0; else if (w && 1 === I) o = t < w[0]; else {
78
- const e = M(), r = T(t), n = i(t);
79
- o = 1 !== x && 0 === I ? r + n <= e : r < e && r + n < e + _;
75
+ C(e.reduce((e, [t, o]) => {
76
+ let r;
77
+ if (2 === v) r = !0; else if (I && 1 === v) r = t < I[0]; else {
78
+ const e = A(), o = N(t), n = l(t);
79
+ r = 1 !== x && 0 === v ? o + n <= e : o < e && o + n < e + h;
80
80
  }
81
- return o && (e += r - i(t)), e;
81
+ return r && (e += o - l(t)), e;
82
82
  }, 0));
83
- for (const [t, r] of e) {
84
- const e = i(t), o = l(t, r);
85
- g && (k += o ? r : r - e);
83
+ for (const [t, o] of e) {
84
+ const e = l(t), r = i(t, o);
85
+ m && (O += r ? o : o - e);
86
86
  }
87
- g && _ && k > _ && (B(d(t(R()))), g = !1), m = 3, u = !0;
87
+ m && h && O > h && (C(d(t(M()))), m = !1), p = 3, u = !0;
88
88
  break;
89
89
  }
90
90
 
91
91
  case 4:
92
- _ !== o && (_ || (j = u = !0), _ = o, m = 3);
92
+ h !== r && (h || (R = u = !0), h = r, p = 3);
93
93
  break;
94
94
 
95
95
  case 5:
96
- o[1] ? (B(f(o[0], !0)), I = 2, m = 1) : (f(o[0]), m = 1);
96
+ r[1] ? (C(f(r[0], !0)), v = 2, p = 1) : (f(r[0]), p = 1);
97
97
  break;
98
98
 
99
99
  case 6:
100
- b = o;
100
+ w = r;
101
101
  break;
102
102
 
103
103
  case 7:
104
- I = 1;
104
+ v = 1;
105
+ break;
106
+
107
+ case 9:
108
+ C(r), p = 3;
105
109
  break;
106
110
 
107
111
  case 8:
108
- w = e(o, o + _), m = 1;
112
+ I = e(r, r + h), p = 1;
109
113
  }
110
- m && (S = 1 + (2147483647 & S), s && v && ($ += v, v = 0), E.forEach(([e, t]) => {
111
- m & e && t(u);
114
+ p && ($ = 1 + (2147483647 & $), n && b && (y += b, b = 0), T.forEach(([e, t]) => {
115
+ p & e && t(u);
112
116
  }));
113
117
  }
114
118
  };
115
- }, h = (e, t, r, o = 0, n = t - 1) => {
116
- let l = o;
117
- for (;o <= n; ) {
118
- const t = s((o + n) / 2);
119
- e(t) <= r ? (l = t, o = t + 1) : n = t - 1;
119
+ }, h = (e, t, o, r = 0, n = t - 1) => {
120
+ let s = r;
121
+ for (;r <= n; ) {
122
+ const t = l((r + n) / 2);
123
+ e(t) <= o ? (s = t, r = t + 1) : n = t - 1;
120
124
  }
121
- return i(l, 0, t - 1);
122
- }, S = (e, t, r) => {
123
- const o = r ? "unshift" : "push";
124
- for (let r = 0; r < t; r++) e[o](-1);
125
+ return i(s, 0, t - 1);
126
+ }, w = (e, t, o) => {
127
+ const r = o ? "unshift" : "push";
128
+ for (let o = 0; o < t; o++) e[r](-1);
125
129
  return e;
126
- }, _ = (e, t, n) => {
127
- let s = n && n[1] || t || 40, i = -1, c = 0;
128
- const a = n && n[0], u = a ? S(a.slice(0, r(e, a.length)), o(0, e - a.length)) : S([], e), f = S([], e + 1), d = e => {
130
+ }, S = (e, t, o) => {
131
+ let s = o && o[1] || t || 40, l = -1, i = 0;
132
+ const a = o && o[0], u = a ? w(a.slice(0, r(e, a.length)), n(0, e - a.length)) : w([], e), f = w([], e + 1), d = e => {
129
133
  const t = u[e];
130
134
  return -1 === t ? s : t;
131
- }, m = t => {
135
+ }, p = t => {
132
136
  if (!e) return 0;
133
- if (i >= t) return f[t];
134
- i < 0 && (f[0] = 0, i = 0);
135
- let r = i, o = f[r];
136
- for (;r < t; ) o += d(r), f[++r] = o;
137
- return i = t, o;
137
+ if (l >= t) return f[t];
138
+ l < 0 && (f[0] = 0, l = 0);
139
+ let o = l, r = f[o];
140
+ for (;o < t; ) r += d(o), f[++o] = r;
141
+ return l = t, r;
138
142
  };
139
143
  return {
140
- t: (t, o) => {
144
+ l: (t, o) => {
141
145
  let n, s;
142
- return c = r(c, e - 1), m(c) <= t ? (s = h(m, e, o, c), n = h(m, e, t, c, s)) : (n = h(m, e, t, void 0, c),
143
- s = h(m, e, o, n)), c = n, [ n, s ];
146
+ return i = r(i, e - 1), p(i) <= t ? (s = h(p, e, o, i), n = h(p, e, t, i, s)) : (n = h(p, e, t, void 0, i),
147
+ s = h(p, e, o, n)), i = n, [ n, s ];
144
148
  },
145
- o: t => h(m, e, t),
146
- i: m,
147
- l: d,
148
- u: (e, t) => {
149
+ i: t => h(p, e, t),
150
+ u: p,
151
+ p: d,
152
+ m: (e, t) => {
149
153
  const o = -1 === u[e];
150
- return u[e] = t, i = r(e, i), o;
154
+ return u[e] = t, l = r(e, l), o;
151
155
  },
152
- m: (e, t = -1) => u[e] === t,
153
- p: () => m(e),
154
- h: () => e,
155
- S: (t, o) => {
156
+ h: (e, t = -1) => u[e] === t,
157
+ t: () => p(e),
158
+ S: () => e,
159
+ v: (t, o) => {
156
160
  const n = t - e;
157
- return i = o ? -1 : r(t - 1, i), e = t, n > 0 ? (S(f, n), S(u, n, o), s * n) : (f.splice(n),
161
+ return l = o ? -1 : r(t - 1, l), e = t, n > 0 ? (w(f, n), w(u, n, o), s * n) : (f.splice(n),
158
162
  (o ? u.splice(0, -n) : u.splice(n)).reduce((e, t) => e - (-1 === t ? s : t), 0));
159
163
  },
160
- v: t ? void 0 : e => {
164
+ I: t ? void 0 : e => {
161
165
  let t = 0;
162
- const r = [];
163
- u.forEach((o, n) => {
164
- -1 !== o && (o && r.push(o), n < e && t++);
165
- }), i = -1;
166
- const n = l(r), c = n.length, a = c / 2 | 0, f = c % 2 == 0 ? (n[a - 1] + n[a]) / 2 : n[a], d = s;
167
- return ((s = f) - d) * o(e - t, 0);
166
+ const o = [];
167
+ u.forEach((r, n) => {
168
+ -1 !== r && (r && o.push(r), n < e && t++);
169
+ }), l = -1, c(o);
170
+ const r = o.length, i = r / 2 | 0, a = r % 2 == 0 ? (o[i - 1] + o[i]) / 2 : o[i], f = s;
171
+ return ((s = a) - f) * n(e - t, 0);
168
172
  },
169
- C: () => [ u.slice(), s ]
173
+ L: () => [ u.slice(), s ]
174
+ };
175
+ }, y = e => "number" == typeof e ? e : e.length, b = (e, t) => "number" == typeof e ? t : e[t], z = (e, t, o = 0) => {
176
+ if ("number" == typeof t) {
177
+ let r = y(e), n = t;
178
+ const s = e => n + o ? i(l(e / (n + o)), 0, r - 1) : 0;
179
+ return {
180
+ l: (e, t) => [ s(e), s(t) ],
181
+ i: s,
182
+ u: e => e * (n + o),
183
+ p: () => n,
184
+ m: () => !1,
185
+ h: () => !1,
186
+ t: () => r ? r * (n + o) - o : 0,
187
+ S: () => r,
188
+ v: e => (r = e, 0),
189
+ P: () => !1,
190
+ H: (e, t, o) => {
191
+ if ("number" != typeof t || t === n) return;
192
+ const r = s(o) * (t - n);
193
+ return n = t, r;
194
+ }
195
+ };
196
+ }
197
+ const r = "auto" === t;
198
+ let n, s = t;
199
+ const c = y(e), a = [], u = S(c, void 0, [ [], 40 + o ]), f = e => r || !!a[e], d = {
200
+ l: u.l,
201
+ i: u.i,
202
+ u: u.u,
203
+ p: e => u.p(e) - o,
204
+ m: (e, t) => f(e) && u.m(e, t + o),
205
+ h: (e, t) => u.h(e, t + o),
206
+ t: () => u.S() ? u.t() - o : 0,
207
+ S: u.S,
208
+ v: u.v,
209
+ I: r ? u.I : void 0,
210
+ P: f,
211
+ H: (e, t, l, i) => {
212
+ if (r) return;
213
+ const c = "number" == typeof t || "auto" === t ? s : t, f = u.S();
214
+ if (!i && e === n && c === s && f === a.length) return;
215
+ n = e, s = c, a.length = f;
216
+ const d = u.i(l), p = u.u(d);
217
+ let m;
218
+ for (let t = 0; t < f; t++) {
219
+ const r = e[t], n = null !== r && "object" == typeof r ? r[c] : null, s = "number" != typeof n;
220
+ if (!s || !a[t]) {
221
+ a[t] = s;
222
+ const e = s ? -1 : n + o;
223
+ u.h(t, e) || (u.m(t, e), m = !0);
224
+ }
225
+ }
226
+ return m ? u.u(d) - p : void 0;
227
+ }
228
+ };
229
+ return d.H(e, t, 0), d;
230
+ }, x = (e, t, o, r, n) => {
231
+ const s = y(o);
232
+ s !== e.A() && e.B(5, [ s ]);
233
+ const l = t.H(o, r, e.M() - e.u(0), n);
234
+ null != l && e.B(9, l);
235
+ }, v = /*#__PURE__*/ new WeakMap, I = (e, t, o, s, l, i, c) => {
236
+ if (t < s || n(t, l) < r(o, i + 1) || c < o) return !0;
237
+ for (const r of e) if (r >= t && r < o) return !0;
238
+ return !1;
239
+ }, k = (e, t, o) => {
240
+ const r = [];
241
+ for (const n of e) n >= t && n < o && r.push(n);
242
+ return c(r);
243
+ }, O = (e, t, o) => {
244
+ if (t >= o) return -1;
245
+ let r = 0, n = e.length;
246
+ for (;r < n; ) {
247
+ const o = r + n >> 1;
248
+ e[o] <= t ? r = o + 1 : n = o;
249
+ }
250
+ return r - 1;
251
+ }, R = (e, t, o, r) => {
252
+ const n = O(t, o, r);
253
+ n >= 0 && e.push(t[n]);
254
+ }, T = (e, t, o, r, n, s) => {
255
+ const l = [];
256
+ for (let e = 0; e < o; e++) l.push(e);
257
+ const i = e.length;
258
+ let c = 0, a = o - 1;
259
+ for (;c < i && e[c] < r; c++) {
260
+ const t = e[c];
261
+ t > a && (l.push(t), a = t);
262
+ }
263
+ for (let e = r; e <= n; e++) l.push(e);
264
+ for (a = n; c < i && e[c] < s; c++) {
265
+ const t = e[c];
266
+ t > a && (l.push(t), a = t);
267
+ }
268
+ for (let e = s; e < t; e++) l.push(e);
269
+ return l;
270
+ }, A = (e, t) => r(e.rowIndex + (e.rowSpan || 1), t), M = (e, t) => r(e.colIndex + (e.colSpan || 1), t), N = (e, t, o, n, s, l) => {
271
+ const i = t.length, c = n.length;
272
+ let a = "[l0]", u = 0, f = 0, d = 0;
273
+ for (;f < i || d < c; ) {
274
+ const p = f < i ? t[f] : l, m = d < c ? n[d] : l;
275
+ if (m <= u) d++; else {
276
+ let t, n;
277
+ if (p === u) {
278
+ t = u + 1;
279
+ const r = o[f];
280
+ n = null == r ? e.p(u) + "px" : r ? s : "minmax(" + e.p(u) + "px,auto)", f++;
281
+ } else t = r(p, m), n = "minmax(" + (e.u(t - 1) + e.p(t - 1) - e.u(u)) + "px,auto)";
282
+ a += " " + n + " [l" + t + "]", u = t;
283
+ }
284
+ }
285
+ return u < l && (a += " minmax(" + (e.t() - e.u(u)) + "px,auto) [l" + l + "]"),
286
+ a;
287
+ }, C = (e, t, o, r, n) => {
288
+ const s = {
289
+ display: "grid",
290
+ gridTemplateRows: "subgrid",
291
+ gridTemplateColumns: "subgrid",
292
+ gridColumn: "1/-1",
293
+ gridRow: "l" + e + "/l" + t
170
294
  };
171
- }, b = e => {
295
+ return null != o && (s.position = "sticky", s[r] = o + "px", s.zIndex = n), s;
296
+ }, E = e => {
172
297
  let t;
173
298
  return {
174
- L(r) {
175
- (t || (t = new (m(d(r)).ResizeObserver)(e))).observe(r);
299
+ W(o) {
300
+ (t || (t = new (m(p(o)).ResizeObserver)(e))).observe(o);
176
301
  },
177
302
  V(e) {
178
303
  t.unobserve(e);
179
304
  },
180
- H() {
305
+ D() {
181
306
  t && t.disconnect();
182
307
  }
183
308
  };
184
- }, z = (e, t, r, o, n, s, i) => {
185
- let l, f, d = 0, m = !1, g = !1, h = !1, S = !1;
186
- const _ = Date.now, b = o ? "scrollLeft" : "scrollTop", z = o ? "left" : "top", $ = e => n ? -e : e, v = () => $(r[b]), y = (e, t) => {
187
- r.scrollTo({
188
- [z]: $(e),
309
+ }, j = (e, t, o, r, n, s, l) => {
310
+ let i, c, d = 0, p = !1, m = !1, _ = !1, $ = !1;
311
+ const h = Date.now, w = r ? "scrollLeft" : "scrollTop", S = r ? "left" : "top", y = e => n ? -e : e, b = () => y(o[w]), z = (e, t) => {
312
+ o.scrollTo({
313
+ [S]: y(e),
189
314
  behavior: t ? "smooth" : "instant"
190
315
  });
191
316
  }, x = () => {
192
- if (m || g) return m = !1, void I();
193
- h = !1, e.A(2);
317
+ if (p || m) return p = !1, void v();
318
+ _ = !1, e.B(2);
319
+ }, v = () => {
320
+ u(c), c = a(x, 150);
194
321
  }, I = () => {
195
- a(f), f = c(x, 150);
196
- }, w = () => {
197
- d = _(), h && (S = !0), i && e.A(6, i()), e.A(1, v()), I();
198
- }, O = t => {
199
- if (m || !e.T() || t.ctrlKey) return;
200
- const r = _() - d;
201
- 150 > r && 50 < r && (o ? t.deltaX : t.deltaY) && (m = !0);
202
- }, k = () => {
203
- g = !0, h = S = !1;
204
- }, j = () => {
205
- g = !1, p() && (h = !0);
322
+ d = h(), _ && ($ = !0), l && e.B(6, l()), e.B(1, b()), v();
323
+ }, k = t => {
324
+ if (p || !e.N() || t.ctrlKey) return;
325
+ const o = h() - d;
326
+ 150 > o && 50 < o && (r ? t.deltaX : t.deltaY) && (p = !0);
327
+ }, O = () => {
328
+ m = !0, _ = $ = !1;
329
+ }, R = () => {
330
+ m = !1, g() && (_ = !0);
206
331
  };
207
- return t.addEventListener("scroll", w), t.addEventListener("wheel", O, {
332
+ return t.addEventListener("scroll", I), t.addEventListener("wheel", k, {
208
333
  passive: !0
209
- }), t.addEventListener("touchstart", k, {
334
+ }), t.addEventListener("touchstart", O, {
210
335
  passive: !0
211
- }), t.addEventListener("touchend", j, {
336
+ }), t.addEventListener("touchend", R, {
212
337
  passive: !0
213
338
  }), {
214
- H: () => {
215
- t.removeEventListener("scroll", w), t.removeEventListener("wheel", O), t.removeEventListener("touchstart", k),
216
- t.removeEventListener("touchend", j), a(f);
339
+ D: () => {
340
+ t.removeEventListener("scroll", I), t.removeEventListener("wheel", k), t.removeEventListener("touchstart", O),
341
+ t.removeEventListener("touchend", R), u(c);
217
342
  },
218
343
  F: () => {
219
- const [t, o] = e.P();
344
+ const [t, r] = e.j();
220
345
  if (!t) return;
221
- S && s && s(), S = !1;
222
- const n = e.R() + t;
223
- n <= 0 || n >= e.N() + e.p() - e.B() ? y(n) : r.scrollBy({
224
- [z]: $(t),
346
+ $ && s && s(), $ = !1;
347
+ const n = e.M() + t;
348
+ n <= 0 || n >= e.C() + e.t() - e.o() ? z(n) : o.scrollBy({
349
+ [S]: y(t),
225
350
  behavior: "instant"
226
- }), o && (l && l(), e.B() > e.p() && e.A(1, v()));
351
+ }), r && (i && i(), e.o() > e.t() && e.B(1, b()));
227
352
  },
228
- D: (t, r) => {
229
- let o, n, s;
230
- l && l();
231
- const i = l = () => {
232
- o = !0, a(n), s && s();
233
- }, f = () => {
234
- if (!o) {
235
- if (e.B() && (a(n), n = c(i, 150)), r) {
236
- for (let [t, r] = e.t(0); t <= r; t++) if (e.j(t)) return;
237
- i();
353
+ X: (t, o) => {
354
+ let r, n, s;
355
+ i && i();
356
+ const l = i = () => {
357
+ r = !0, u(n), s && s();
358
+ }, c = () => {
359
+ if (!r) {
360
+ if (e.o() && (u(n), n = a(l, 150)), o) {
361
+ for (let [t, o] = e.l(0); t <= o; t++) if (e.T(t)) return;
362
+ l();
238
363
  }
239
- e.A(7), y(t(), r);
364
+ e.B(7), z(t(), o);
240
365
  }
241
366
  }, d = () => {
242
- if (o) return;
367
+ if (r) return;
243
368
  let t;
244
369
  s = e.q(2, () => {
245
- t || (t = !0, u(() => {
246
- t = !1, f();
370
+ t || (t = !0, f(() => {
371
+ t = !1, c();
247
372
  }));
248
- }), f();
373
+ }), c();
249
374
  };
250
- r ? (e.A(8, t()), u(d)) : d();
375
+ o ? (e.B(8, t()), f(d)) : d();
251
376
  }
252
377
  };
253
- }, $ = (e, t) => {
254
- e.J(() => t);
255
- }, v = (e, t, r, {align: o, smooth: n, offset: s = 0} = {}) => {
256
- if (r = i(r, 0, t.M() - 1), "nearest" === o) {
257
- const e = t.i(r), n = t.R();
258
- if (e < n) o = "start"; else {
259
- if (!(e + t.l(r) > n + t.B())) return;
260
- o = "end";
378
+ }, q = (e, t) => {
379
+ e.Y(() => t);
380
+ }, B = (e, t, o, {align: r, smooth: n, offset: s = 0} = {}) => {
381
+ if (o = i(o, 0, t.A() - 1), "nearest" === r) {
382
+ const e = t.u(o), n = t.M();
383
+ if (e < n) r = "start"; else {
384
+ if (!(e + t.p(o) > n + t.o())) return;
385
+ r = "end";
261
386
  }
262
387
  }
263
- e.J(() => s + e.W() + t.i(r) + ("end" === o ? t.l(r) - t.B() : "center" === o ? (t.l(r) - t.B()) / 2 : 0), n);
264
- }, y = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)(t => {
265
- const r = (0, e.ref)(), o = (0, e.computed)(() => t.X.value && t.Y.i(t.U)), n = (0,
266
- e.computed)(() => t.X.value && t.Y.j(t.U)), s = (0, e.computed)(() => t.G({
267
- item: t.K,
268
- index: t.U
388
+ e.Y(() => s + e.J() + t.u(o) + ("end" === r ? t.p(o) - t.o() : "center" === r ? (t.p(o) - t.o()) / 2 : 0), n);
389
+ }, L = (e, t, o, s, l, c, a, u) => {
390
+ const f = t.A(), d = r(o, f), p = n(f - l, d);
391
+ c = i(c, 0, f - 1);
392
+ const m = k(s, d, p), g = O(m, c, p), _ = g < 0 ? -1 : m[g], $ = () => [ t.u(d) - t.u(0) + (_ < 0 || _ === c ? 0 : t.u(_ + 1) - t.u(_)), t.u(f) - t.u(p) ];
393
+ if ("nearest" === a) {
394
+ if (c < d || c >= p) return;
395
+ const [e, o] = $(), s = t.M(), l = t.p(c);
396
+ let i = t.u(c);
397
+ if (_ === c) {
398
+ const o = (g + 1 < m.length ? m[g + 1] : p) - 1;
399
+ i = n(i, r(s + e, t.u(o) + t.p(o) - l));
400
+ }
401
+ if (i < s + e) a = "start"; else {
402
+ if (!(i + l > s + t.o() - o)) return;
403
+ a = "end";
404
+ }
405
+ }
406
+ e.Y(u, () => {
407
+ const [e, o] = $(), r = t.p(c) - t.o();
408
+ return t.u(c) + ("end" === a ? r + o : "center" === a ? (r + o - e) / 2 : -e);
409
+ });
410
+ }, P = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)(t => {
411
+ const o = (0, e.ref)(), r = (0, e.computed)(() => t.U.value && t.G.u(t.K)), n = (0,
412
+ e.computed)(() => t.U.value && t.G.T(t.K)), s = (0, e.computed)(() => t.Z({
413
+ item: t.ee,
414
+ index: t.K
269
415
  }));
270
- return (0, e.watch)(() => r.value && t.U, (e, o, n) => {
271
- n(t.Z(r.value, t.U));
416
+ return (0, e.watch)(() => o.value && t.K, (e, r, n) => {
417
+ n(t.te(o.value, t.K));
272
418
  }, {
273
419
  flush: "post"
274
420
  }), () => {
275
- const {ee: i, te: l, re: c, U: a, K: u} = t, f = n.value, {style: d, ...m} = t.oe?.({
421
+ const {oe: l, re: i, ne: c, K: a, ee: u} = t, f = n.value, {style: d, ...p} = t.se?.({
276
422
  item: u,
277
423
  index: a
278
- }) || {}, p = {
424
+ }) || {}, m = {
279
425
  contain: "layout style",
280
- position: f && l ? void 0 : "absolute",
281
- [i ? "height" : "width"]: "100%",
282
- [i ? "top" : "left"]: "0px",
283
- [i ? "insetInlineStart" : "top"]: o.value + "px",
284
- visibility: !f || l ? void 0 : "hidden",
426
+ position: f && i ? void 0 : "absolute",
427
+ [l ? "height" : "width"]: "100%",
428
+ [l ? "top" : "left"]: "0px",
429
+ [l ? "insetInlineStart" : "top"]: r.value + "px",
430
+ visibility: !f || i ? void 0 : "hidden",
285
431
  ...d
286
432
  };
287
- return i && (p.display = "inline-flex"), (0, e.createVNode)(c, (0, e.mergeProps)({
288
- ref: r,
289
- style: p
290
- }, m), {
433
+ return l && (m.display = "inline-flex"), (0, e.createVNode)(c, (0, e.mergeProps)({
434
+ ref: o,
435
+ style: m
436
+ }, p), {
291
437
  default: () => [ s.value ]
292
438
  }, 16, [ "style" ]);
293
439
  };
294
440
  }, {
295
441
  props: {
296
- X: null,
297
- Y: null,
442
+ U: null,
298
443
  G: null,
299
- K: null,
300
444
  Z: null,
301
- U: null,
302
445
  ee: null,
303
446
  te: null,
447
+ K: null,
448
+ oe: null,
304
449
  re: null,
305
- oe: null
450
+ ne: null,
451
+ se: null
306
452
  }
307
- }), x = (e, t) => {
453
+ }), H = (e, t) => {
308
454
  if (1 === e.length) {
309
455
  const t = e[0].key;
310
456
  if (null != t) return t;
311
457
  }
312
458
  return "_" + t;
313
- }, I = (e, t) => e[0] === t[0] && e[1] === t[1], w = /* @__PURE__ */ /* @__PURE__ */ (0,
459
+ }, W = (e, t) => e[0] === t[0] && e[1] === t[1], V = /* @__PURE__ */ /* @__PURE__ */ (0,
314
460
  e.defineComponent)({
315
461
  props: {
316
462
  data: {
@@ -340,142 +486,142 @@ e.defineComponent)({
340
486
  cache: Object
341
487
  },
342
488
  emits: [ "scroll", "scrollEnd" ],
343
- setup(t, {emit: r, expose: n, slots: s}) {
344
- let i = !!t.ssrCount;
345
- const a = t.horizontal, u = (0, e.ref)(), d = _(t.data.length, t.itemSize, t.cache), m = g(d, t.ssrCount), p = ((e, t) => {
346
- let r, o, n = f();
347
- const s = t ? "width" : "height", i = /* @__PURE__ */ new WeakMap, l = b(t => {
348
- const o = [];
349
- for (const {target: n, contentRect: l} of t) if (n.offsetParent) if (n === r) e.A(4, l[s]); else {
350
- const e = i.get(n);
351
- null != e && o.push([ e, l[s] ]);
489
+ setup(t, {emit: o, expose: r, slots: n}) {
490
+ let s = !!t.ssrCount;
491
+ const l = t.horizontal, i = (0, e.ref)(), u = S(t.data.length, t.itemSize, t.cache), f = $(u, t.ssrCount), p = ((e, t) => {
492
+ let o, r, n = d();
493
+ const s = /* @__PURE__ */ new WeakMap, l = E(r => {
494
+ const n = [];
495
+ for (const {target: l, contentRect: {width: i, height: c}} of r) if (l === o) (i || c) && e.B(4, t ? i : c); else if (l.offsetParent) {
496
+ const e = s.get(l);
497
+ null != e && n.push([ e, t ? i : c ]);
352
498
  }
353
- o.length && e.A(3, o);
499
+ n.length && e.B(3, n);
354
500
  });
355
501
  return {
356
- ne(s, i = s.parentElement) {
357
- l.L(r = i), o = z(e, i, i, t, t && "rtl" === getComputedStyle(i).direction, () => {
358
- const e = t ? "overflowX" : "overflowY", r = i.style, o = r[e];
359
- r[e] = "hidden", c(() => {
360
- r[e] = o;
502
+ le(s, i = s.parentElement) {
503
+ l.W(o = i), r = j(e, i, i, t, t && "rtl" === getComputedStyle(i).direction, () => {
504
+ const e = t ? "overflowX" : "overflowY", o = i.style, r = o[e];
505
+ o[e] = "hidden", a(() => {
506
+ o[e] = r;
361
507
  });
362
508
  }), n[1](!0);
363
509
  },
364
- I() {
365
- l.H(), o && o.H(), n[1](!1), n = f();
510
+ k() {
511
+ l.D(), r && r.D(), n[1](!1), n = d();
366
512
  },
367
- se: (e, t) => (i.set(e, t), l.L(e), () => {
368
- i.delete(e), l.V(e);
513
+ ie: (e, t) => (s.set(e, t), l.W(e), () => {
514
+ s.delete(e), l.V(e);
369
515
  }),
370
- async J(e, t) {
371
- await n[0] && o.D(e, t);
516
+ async Y(e, t) {
517
+ await n[0] && r.X(e, t);
372
518
  },
373
- ie() {
374
- o && o.F();
519
+ ce() {
520
+ r && r.F();
375
521
  },
376
- W: e.N
522
+ J: e.C
377
523
  };
378
- })(m, a), h = (0, e.ref)(m.O());
379
- m.q(1, () => {
380
- h.value = m.O();
381
- }), m.q(4, () => {
382
- r("scroll", m.R());
383
- }), m.q(8, () => {
384
- r("scrollEnd");
524
+ })(f, l), m = (0, e.ref)(f.O());
525
+ f.q(1, () => {
526
+ m.value = f.O();
527
+ }), f.q(4, () => {
528
+ o("scroll", f.M());
529
+ }), f.q(8, () => {
530
+ o("scrollEnd");
385
531
  });
386
- const S = (0, e.computed)(e => {
387
- h.value;
388
- const r = m.t(t.bufferSize);
389
- return e && I(e, r) ? e : r;
390
- }), w = (0, e.computed)(() => h.value && m.T()), O = (0, e.computed)(() => h.value && m.p());
532
+ const g = (0, e.computed)(e => {
533
+ m.value;
534
+ const o = f.l(t.bufferSize);
535
+ return e && W(e, o) ? e : o;
536
+ }), h = (0, e.computed)(() => m.value && f.N()), w = (0, e.computed)(() => m.value && f.t());
391
537
  return (0, e.onMounted)(() => {
392
- i = !1;
393
- const r = u.value, o = requestAnimationFrame(() => {
394
- p.ne(r, t.scrollRef);
538
+ s = !1;
539
+ const o = i.value, r = requestAnimationFrame(() => {
540
+ p.le(o, t.scrollRef);
395
541
  });
396
542
  (0, e.onUnmounted)(() => {
397
- cancelAnimationFrame(o);
543
+ cancelAnimationFrame(r);
398
544
  });
399
545
  }), (0, e.onUnmounted)(() => {
400
- m.I(), p.I();
546
+ f.k(), p.k();
401
547
  }), (0, e.watch)(() => t.data.length, e => {
402
- m.A(5, [ e, t.shift ]);
548
+ f.B(5, [ e, t.shift ]);
403
549
  }), (0, e.watch)(() => t.startMargin, e => {
404
- m.A(6, e);
550
+ f.B(6, e);
405
551
  }, {
406
552
  immediate: !0
407
- }), (0, e.watch)([ h ], () => {
408
- p.ie();
553
+ }), (0, e.watch)([ m ], () => {
554
+ p.ce();
409
555
  }, {
410
556
  flush: "post"
411
- }), n({
557
+ }), r({
412
558
  get cache() {
413
- return d.C();
559
+ return u.L();
414
560
  },
415
561
  get scrollOffset() {
416
- return m.R();
562
+ return f.M();
417
563
  },
418
564
  get scrollSize() {
419
- return (e => o(e.p(), e.B()))(m);
565
+ return _(f);
420
566
  },
421
567
  get viewportSize() {
422
- return m.B();
568
+ return f.o();
423
569
  },
424
- findItemIndex: m.k,
425
- getItemOffset: m.i,
426
- getItemSize: m.l,
427
- scrollToIndex: (e, t) => v(p, m, e, t),
428
- scrollTo: e => $(p, e),
429
- scrollBy: e => ((e, t, r) => {
430
- $(e, r + t.R());
431
- })(p, m, e)
570
+ findItemIndex: f.R,
571
+ getItemOffset: f.u,
572
+ getItemSize: f.p,
573
+ scrollToIndex: (e, t) => B(p, f, e, t),
574
+ scrollTo: e => q(p, e),
575
+ scrollBy: e => ((e, t, o) => {
576
+ q(e, o + t.M());
577
+ })(p, f, e)
432
578
  }), () => {
433
- const r = t.as, o = t.item, n = O.value, c = [], f = r => {
434
- const n = s.default({
435
- item: t.data[r],
436
- index: r
579
+ const o = t.as, r = t.item, a = w.value, u = [], d = o => {
580
+ const i = n.default({
581
+ item: t.data[o],
582
+ index: o
437
583
  });
438
- return (0, e.createVNode)(y, {
439
- key: x(n, r),
440
- X: h,
441
- Y: m,
442
- Z: p.se,
443
- U: r,
444
- G: s.default,
445
- K: t.data[r],
446
- ee: a,
447
- te: i,
448
- re: o,
449
- oe: t.itemProps
450
- }, null, 8, [ "X", "Y", "Z", "U", "G", "K", "ee", "te", "re", "oe" ]);
584
+ return (0, e.createVNode)(P, {
585
+ key: H(i, o),
586
+ U: m,
587
+ G: f,
588
+ te: p.ie,
589
+ K: o,
590
+ Z: n.default,
591
+ ee: t.data[o],
592
+ oe: l,
593
+ re: s,
594
+ ne: r,
595
+ se: t.itemProps
596
+ }, null, 8, [ "U", "G", "te", "K", "Z", "ee", "oe", "re", "ne", "se" ]);
451
597
  };
452
598
  if (t.keepMounted) {
453
- const e = t.data.length, r = new Set(t.keepMounted);
454
- for (let [e, t] = S.value; e <= t; e++) r.add(e);
455
- l([ ...r ]).forEach(t => {
456
- t < e && c.push(f(t));
599
+ const e = t.data.length, o = new Set(t.keepMounted);
600
+ for (let [e, t] = g.value; e <= t; e++) o.add(e);
601
+ c([ ...o ]).forEach(t => {
602
+ t < e && u.push(d(t));
457
603
  });
458
- } else for (let [e, t] = S.value; e <= t; e++) c.push(f(e));
459
- return (0, e.createVNode)(r, {
460
- ref: u,
604
+ } else for (let [e, t] = g.value; e <= t; e++) u.push(d(e));
605
+ return (0, e.createVNode)(o, {
606
+ ref: i,
461
607
  style: {
462
608
  contain: "size style",
463
609
  overflowAnchor: "none",
464
610
  flex: "none",
465
611
  position: "relative",
466
- width: a ? n + "px" : "100%",
467
- height: a ? "100%" : n + "px",
468
- pointerEvents: w.value ? "none" : void 0
612
+ width: l ? a + "px" : "100%",
613
+ height: l ? "100%" : a + "px",
614
+ pointerEvents: h.value ? "none" : void 0
469
615
  }
470
- }, "function" == typeof (d = c) || "[object Object]" === Object.prototype.toString.call(d) && !(0,
471
- e.isVNode)(d) ? c : {
472
- default: () => [ c ],
616
+ }, "function" == typeof (_ = u) || "[object Object]" === Object.prototype.toString.call(_) && !(0,
617
+ e.isVNode)(_) ? u : {
618
+ default: () => [ u ],
473
619
  _: 2
474
620
  }, 8, [ "style" ]);
475
- var d;
621
+ var _;
476
622
  };
477
623
  }
478
- }), O = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)({
624
+ }), D = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)({
479
625
  props: {
480
626
  data: {
481
627
  type: Array,
@@ -491,13 +637,13 @@ e.defineComponent)({
491
637
  cache: Object
492
638
  },
493
639
  emits: [ "scroll", "scrollEnd" ],
494
- setup(t, {emit: r, expose: o, slots: n}) {
495
- const s = t.horizontal, i = e => {
496
- r("scroll", e);
497
- }, l = () => {
498
- r("scrollEnd");
640
+ setup(t, {emit: o, expose: r, slots: n}) {
641
+ const s = t.horizontal, l = e => {
642
+ o("scroll", e);
643
+ }, i = () => {
644
+ o("scrollEnd");
499
645
  }, c = (0, e.ref)();
500
- return o({
646
+ return r({
501
647
  get cache() {
502
648
  return c.value.cache;
503
649
  },
@@ -525,7 +671,7 @@ e.defineComponent)({
525
671
  width: "100%",
526
672
  height: "100%"
527
673
  }
528
- }, [ (0, e.createVNode)(w, {
674
+ }, [ (0, e.createVNode)(V, {
529
675
  ref: c,
530
676
  data: t.data,
531
677
  bufferSize: t.bufferSize,
@@ -536,17 +682,17 @@ e.defineComponent)({
536
682
  horizontal: s,
537
683
  keepMounted: t.keepMounted,
538
684
  cache: t.cache,
539
- onScroll: i,
540
- onScrollEnd: l
541
- }, (r = n, "function" == typeof r || "[object Object]" === Object.prototype.toString.call(r) && !(0,
542
- e.isVNode)(r) ? n : {
685
+ onScroll: l,
686
+ onScrollEnd: i
687
+ }, (o = n, "function" == typeof o || "[object Object]" === Object.prototype.toString.call(o) && !(0,
688
+ e.isVNode)(o) ? n : {
543
689
  default: () => [ n ],
544
690
  _: 2
545
691
  }), 8, [ "data", "bufferSize", "itemSize", "itemProps", "shift", "ssrCount", "horizontal", "keepMounted", "cache", "onScroll", "onScrollEnd" ]) ], 4);
546
- var r;
692
+ var o;
547
693
  };
548
694
  }
549
- }), k = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)({
695
+ }), F = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)({
550
696
  props: {
551
697
  data: {
552
698
  type: Array,
@@ -568,128 +714,487 @@ e.defineComponent)({
568
714
  cache: Object
569
715
  },
570
716
  emits: [ "scroll", "scrollEnd" ],
571
- setup(t, {emit: r, slots: o, expose: n}) {
717
+ setup(t, {emit: o, slots: r, expose: n}) {
572
718
  let s = !!t.ssrCount;
573
- const i = t.horizontal, l = (0, e.ref)(), c = _(t.data.length, t.itemSize, t.cache), a = g(c, t.ssrCount), u = ((e, t) => {
574
- let r, o, n, s, i, l = f();
575
- const c = t ? "width" : "height", a = /* @__PURE__ */ new WeakMap, u = b(t => {
576
- const o = [];
577
- for (const {target: e, contentRect: n} of t) {
578
- if (e === r) {
579
- i && i();
580
- continue;
581
- }
582
- if (!e.offsetParent) continue;
583
- const t = a.get(e);
584
- null != t && o.push([ t, n[c] ]);
719
+ const l = t.horizontal, i = (0, e.ref)(), c = S(t.data.length, t.itemSize, t.cache), a = $(c, t.ssrCount), u = ((e, t) => {
720
+ let o, r, n, s, l, i = d();
721
+ const c = /* @__PURE__ */ new WeakMap, a = E(r => {
722
+ const n = [];
723
+ for (const {target: e, contentRect: {width: s, height: i}} of r) if (e === o) l && l(); else if (e.offsetParent) {
724
+ const o = c.get(e);
725
+ null != o && n.push([ o, t ? s : i ]);
585
726
  }
586
- o.length && e.A(3, o);
727
+ n.length && e.B(3, n);
587
728
  });
588
729
  return {
589
- ne(c) {
590
- const a = d(c), f = m(a), p = r = a.scrollingElement, g = t && "rtl" === getComputedStyle(p).direction, h = (e, t, r, o, n = 0) => {
591
- const s = o ? "offsetLeft" : "offsetTop", i = n + (g ? t.clientWidth - e[s] - e.offsetWidth : e[s]), l = e.offsetParent;
592
- return e !== r && l ? h(l, t, r, o, i) : i;
593
- }, S = s = () => h(c, p, a.body, t), _ = i = () => {
594
- e.A(4, p[t ? "clientWidth" : "clientHeight"]);
730
+ le(c) {
731
+ const u = p(c), f = m(u), d = o = u.scrollingElement, g = t && "rtl" === getComputedStyle(d).direction, _ = (e, t, o, r, n = 0) => {
732
+ const s = r ? "offsetLeft" : "offsetTop", l = n + (g ? t.clientWidth - e[s] - e.offsetWidth : e[s]), i = e.offsetParent;
733
+ return e !== o && i ? _(i, t, o, r, l) : l;
734
+ }, $ = s = () => _(c, d, u.body, t), h = l = () => {
735
+ e.B(4, d[t ? "clientWidth" : "clientHeight"]);
595
736
  };
596
- f.addEventListener("resize", _), u.L(p), n = () => {
597
- f.removeEventListener("resize", _);
598
- }, o = z(e, f, p, t, g, null, S), l[1](!0);
737
+ f.addEventListener("resize", h), a.W(d), n = () => {
738
+ f.removeEventListener("resize", h);
739
+ }, r = j(e, f, d, t, g, null, $), i[1](!0);
599
740
  },
600
- I() {
601
- n && n(), u.H(), o && o.H(), l[1](!1), l = f();
741
+ k() {
742
+ n && n(), a.D(), r && r.D(), i[1](!1), i = d();
602
743
  },
603
- se: (e, t) => (a.set(e, t), u.L(e), () => {
604
- a.delete(e), u.V(e);
744
+ ie: (e, t) => (c.set(e, t), a.W(e), () => {
745
+ c.delete(e), a.V(e);
605
746
  }),
606
- async J(e, t) {
607
- await l[0] && o.D(e, t);
747
+ async Y(e, t) {
748
+ await i[0] && r.X(e, t);
608
749
  },
609
- ie() {
610
- o && o.F();
750
+ ce() {
751
+ r && r.F();
611
752
  },
612
- W: () => s()
753
+ J: () => s()
613
754
  };
614
- })(a, i), p = (0, e.ref)(a.O());
755
+ })(a, l), f = (0, e.ref)(a.O());
615
756
  a.q(1, () => {
616
- p.value = a.O();
757
+ f.value = a.O();
617
758
  }), a.q(4, () => {
618
- r("scroll");
759
+ o("scroll");
619
760
  }), a.q(8, () => {
620
- r("scrollEnd");
761
+ o("scrollEnd");
621
762
  });
622
- const h = (0, e.computed)(e => {
623
- p.value;
624
- const r = a.t(t.bufferSize);
625
- return e && I(e, r) ? e : r;
626
- }), S = (0, e.computed)(() => p.value && a.T()), $ = (0, e.computed)(() => p.value && a.p());
763
+ const g = (0, e.computed)(e => {
764
+ f.value;
765
+ const o = a.l(t.bufferSize);
766
+ return e && W(e, o) ? e : o;
767
+ }), _ = (0, e.computed)(() => f.value && a.N()), h = (0, e.computed)(() => f.value && a.t());
627
768
  return (0, e.onMounted)(() => {
628
769
  s = !1;
629
- const e = l.value;
630
- e && u.ne(e);
770
+ const e = i.value;
771
+ e && u.le(e);
631
772
  }), (0, e.onUnmounted)(() => {
632
- a.I(), u.I();
773
+ a.k(), u.k();
633
774
  }), (0, e.watch)(() => t.data.length, e => {
634
- a.A(5, [ e, t.shift ]);
635
- }), (0, e.watch)([ p ], () => {
636
- u.ie();
775
+ a.B(5, [ e, t.shift ]);
776
+ }), (0, e.watch)([ f ], () => {
777
+ u.ce();
637
778
  }, {
638
779
  flush: "post"
639
780
  }), n({
640
781
  get cache() {
641
- return c.C();
782
+ return c.L();
642
783
  },
643
784
  get scrollOffset() {
644
- return a.R();
785
+ return a.M();
645
786
  },
646
787
  get viewportSize() {
647
- return a.B();
788
+ return a.o();
648
789
  },
649
- findItemIndex: a.k,
650
- getItemOffset: a.i,
651
- getItemSize: a.l,
652
- scrollToIndex: (e, t) => v(u, a, e, t)
790
+ findItemIndex: a.R,
791
+ getItemOffset: a.u,
792
+ getItemSize: a.p,
793
+ scrollToIndex: (e, t) => B(u, a, e, t)
653
794
  }), () => {
654
- const r = t.as, n = t.item, c = $.value, f = [];
655
- for (let [r, l] = h.value; r <= l; r++) {
656
- const l = o.default({
657
- item: t.data[r],
658
- index: r
795
+ const o = t.as, n = t.item, c = h.value, d = [];
796
+ for (let [o, i] = g.value; o <= i; o++) {
797
+ const i = r.default({
798
+ item: t.data[o],
799
+ index: o
659
800
  });
660
- f.push((0, e.createVNode)(y, {
661
- key: x(l, r),
662
- X: p,
663
- Y: a,
664
- Z: u.se,
665
- U: r,
666
- G: o.default,
667
- K: t.data[r],
668
- ee: i,
669
- te: s,
670
- re: n
671
- }, null, 8, [ "X", "Y", "Z", "U", "G", "K", "ee", "te", "re" ]));
801
+ d.push((0, e.createVNode)(P, {
802
+ key: H(i, o),
803
+ U: f,
804
+ G: a,
805
+ te: u.ie,
806
+ K: o,
807
+ Z: r.default,
808
+ ee: t.data[o],
809
+ oe: l,
810
+ re: s,
811
+ ne: n
812
+ }, null, 8, [ "U", "G", "te", "K", "Z", "ee", "oe", "re", "ne" ]));
672
813
  }
673
- return (0, e.createVNode)(r, {
674
- ref: l,
814
+ return (0, e.createVNode)(o, {
815
+ ref: i,
675
816
  style: {
676
817
  contain: "size style",
677
818
  overflowAnchor: "none",
678
819
  flex: "none",
679
820
  position: "relative",
680
- width: i ? c + "px" : "100%",
681
- height: i ? "100%" : c + "px",
682
- pointerEvents: S.value ? "none" : void 0
821
+ width: l ? c + "px" : "100%",
822
+ height: l ? "100%" : c + "px",
823
+ pointerEvents: _.value ? "none" : void 0
683
824
  }
684
- }, "function" == typeof (d = f) || "[object Object]" === Object.prototype.toString.call(d) && !(0,
685
- e.isVNode)(d) ? f : {
686
- default: () => [ f ],
825
+ }, "function" == typeof (p = d) || "[object Object]" === Object.prototype.toString.call(p) && !(0,
826
+ e.isVNode)(p) ? d : {
827
+ default: () => [ d ],
687
828
  _: 2
688
829
  }, 8, [ "style" ]);
689
- var d;
830
+ var p;
831
+ };
832
+ }
833
+ }), X = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)(t => {
834
+ const o = (0, e.ref)();
835
+ return (0, e.watch)([ o, () => t.ue.ae, () => t.ue.fe ], ([e, o, r], n, s) => {
836
+ !e || null == o && null == r || s(t.te(e, o, r));
837
+ }, {
838
+ flush: "post"
839
+ }), () => {
840
+ const {de: r, pe: n, me: s, ge: l, _e: i, $e: c} = t.ue;
841
+ return (0, e.createVNode)("div", {
842
+ ref: o,
843
+ role: l,
844
+ "aria-colindex": r + 1,
845
+ "aria-rowspan": n,
846
+ "aria-colspan": s,
847
+ "aria-sort": i,
848
+ style: c
849
+ }, [ t.Z({
850
+ row: t.he,
851
+ col: t.we,
852
+ cell: {
853
+ rowIndex: t.Se,
854
+ colIndex: r
855
+ }
856
+ }) ], 12, [ "role", "aria-colindex", "aria-rowspan", "aria-colspan", "aria-sort" ]);
857
+ };
858
+ }, {
859
+ props: {
860
+ ue: null,
861
+ Z: null,
862
+ he: null,
863
+ we: null,
864
+ Se: null,
865
+ te: null
866
+ }
867
+ }), Y = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)(t => () => {
868
+ const {ye: o, be: r, $e: n} = t.ue;
869
+ return (0, e.createVNode)("div", {
870
+ role: "row",
871
+ "aria-rowindex": o + 1,
872
+ style: n
873
+ }, [ r.map(r => (0, e.createVNode)(X, {
874
+ key: r.de,
875
+ ue: r,
876
+ Z: t.Z,
877
+ he: t.he,
878
+ we: b(t.ze, r.de),
879
+ Se: o,
880
+ te: t.te
881
+ }, null, 8, [ "ue", "Z", "he", "we", "Se", "te" ])) ], 12, [ "aria-rowindex" ]);
882
+ }, {
883
+ props: {
884
+ ue: null,
885
+ Z: null,
886
+ he: null,
887
+ ze: null,
888
+ te: null
889
+ }
890
+ }), J = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)(t => () => {
891
+ const {xe: o, $e: r} = t.ue;
892
+ return (0, e.createVNode)("div", {
893
+ role: "rowgroup",
894
+ style: r
895
+ }, [ o.map(o => (0, e.createVNode)(Y, {
896
+ key: o.ye,
897
+ ue: o,
898
+ Z: t.Z,
899
+ he: b(t.ve, o.ye),
900
+ ze: t.ze,
901
+ te: t.te
902
+ }, null, 8, [ "ue", "Z", "he", "ze", "te" ])) ], 4);
903
+ }, {
904
+ props: {
905
+ ue: null,
906
+ Z: null,
907
+ ve: null,
908
+ ze: null,
909
+ te: null
910
+ }
911
+ }), U = /* @__PURE__ */ /* @__PURE__ */ (0, e.defineComponent)({
912
+ props: {
913
+ rows: {
914
+ type: [ Number, Array ],
915
+ required: !0
916
+ },
917
+ cols: {
918
+ type: [ Number, Array ],
919
+ required: !0
920
+ },
921
+ rowHeight: {
922
+ type: [ Number, String ],
923
+ required: !0
924
+ },
925
+ colWidth: {
926
+ type: [ Number, String ],
927
+ required: !0
928
+ },
929
+ headerRows: Number,
930
+ sectionRows: Array,
931
+ footerRows: Number,
932
+ headerCols: Number,
933
+ footerCols: Number,
934
+ spans: Array,
935
+ keepMounted: Array,
936
+ bufferSize: Number,
937
+ gap: {
938
+ type: Number,
939
+ default: 0
940
+ },
941
+ ariaSort: Object
942
+ },
943
+ emits: [ "verticalScroll", "horizontalScroll", "scrollEnd" ],
944
+ setup(t, {emit: s, expose: l, slots: u}) {
945
+ const f = (0, e.ref)(), p = z(t.rows, t.rowHeight, t.gap), m = z(t.cols, t.colWidth, t.gap), g = $(p), h = $(m), w = ((e, t) => {
946
+ let o, r, n, s = d();
947
+ const l = /* @__PURE__ */ new WeakMap, i = /* @__PURE__ */ new WeakMap, c = E(r => {
948
+ const n = [], s = [];
949
+ for (const {target: c, contentRect: {width: a, height: u}} of r) if (c === o) (a || u) && (e.B(4, u),
950
+ t.B(4, a)); else if (c.offsetParent) {
951
+ const e = l.get(c), t = i.get(c);
952
+ null != e && n.push([ e, u ]), null != t && s.push([ t, a ]);
953
+ }
954
+ n.length && e.B(3, n), s.length && t.B(3, s);
955
+ });
956
+ return {
957
+ async Y(e, t) {
958
+ await s[0] && (e ? n : r).X(t);
959
+ },
960
+ le(l) {
961
+ const i = o = l.parentElement;
962
+ c.W(i);
963
+ const u = (e, t) => j(e, i, i, t, t && "rtl" === getComputedStyle(i).direction, () => {
964
+ const e = t ? "overflowX" : "overflowY", o = i.style, r = o[e];
965
+ o[e] = "hidden", a(() => {
966
+ o[e] = r;
967
+ });
968
+ });
969
+ r = u(e, !1), n = u(t, !0), s[1](!0);
970
+ },
971
+ k() {
972
+ c.D(), r && r.D(), n && n.D(), s[1](!1), s = d();
973
+ },
974
+ ie: (e, t, o) => (null != t && l.set(e, t), null != o && i.set(e, o), c.W(e), () => {
975
+ l.delete(e), i.delete(e), c.V(e);
976
+ }),
977
+ ce() {
978
+ r && r.F(), n && n.F();
979
+ }
980
+ };
981
+ })(g, h), S = (0, e.ref)(g.O() + h.O()), y = () => {
982
+ S.value = g.O() + h.O();
983
+ };
984
+ g.q(1, y), h.q(1, y);
985
+ let q = !1;
986
+ g.q(4, () => {
987
+ q = !0, s("verticalScroll", g.M());
988
+ }), h.q(4, () => {
989
+ q = !0, s("horizontalScroll", h.M());
990
+ });
991
+ const B = () => {
992
+ !q || g.N() || h.N() || (q = !1, s("scrollEnd"));
993
+ };
994
+ g.q(8, B), h.q(8, B), (0, e.watchEffect)(() => {
995
+ x(g, p, t.rows, t.rowHeight, !0);
996
+ }), (0, e.watchEffect)(() => {
997
+ x(h, m, t.cols, t.colWidth, !0);
998
+ });
999
+ const P = (0, e.computed)(() => S.value && g.A()), H = (0, e.computed)(() => S.value && h.A()), W = (0,
1000
+ e.computed)(() => (S.value, ((e, t, s, l, a = 0, u = o, f = 0, d = 0, p = 0, m = o, g = o, _) => {
1001
+ const $ = e.S(), h = t.S(), w = r(a, $), S = n($ - f, w), y = r(d, h), b = n(h - p, y), z = i(s[0], w, S), x = r(s[1], S - 1), E = i(l[0], y, b), j = r(l[1], b - 1), q = k(u, w, S), B = n(y - 1, 0), L = [], P = [], H = [];
1002
+ for (const e of g) e.rowIndex < $ && e.colIndex < h && H.push(e);
1003
+ const W = q.length;
1004
+ W && (R(L, q, z, S), P.push(B));
1005
+ let V = m, D = 0;
1006
+ do {
1007
+ for (;D < H.length; D++) {
1008
+ const {rowIndex: e, colIndex: t} = H[D];
1009
+ L.push(e), R(L, q, e, S), P.push(t);
1010
+ }
1011
+ const e = [];
1012
+ for (const t of V) {
1013
+ const o = t.rowIndex, r = t.colIndex, n = A(t, $), s = M(t, h);
1014
+ if (o < $ && r < h && (n - o > 1 || s - r > 1)) if (I(L, o, n, w, z, x, S)) if (I(P, r, s, y, E, j, b)) H.push(t); else {
1015
+ const r = O(q, n - 1, S);
1016
+ (o < w || r >= 0 && q[r] >= o) && e.push(t);
1017
+ } else r < y && e.push(t);
1018
+ }
1019
+ V = e;
1020
+ } while (D < H.length);
1021
+ c(L), c(P);
1022
+ const F = T(L, $, w, z, x, S), X = T(P, h, y, E, j, b), Y = F.length, J = X.length, U = /* @__PURE__ */ new Map, G = [], K = [];
1023
+ for (const e of H) {
1024
+ const t = A(e, $), o = M(e, h);
1025
+ G.push(t), K.push(o);
1026
+ const r = X.indexOf(e.colIndex);
1027
+ for (let n = F.indexOf(e.rowIndex); n < Y && F[n] < t; n++) {
1028
+ const t = F[n] * h;
1029
+ for (let n = r; n < J && X[n] < o; n++) U.set(t + X[n], e);
1030
+ }
1031
+ }
1032
+ const Q = [];
1033
+ for (const e of X) Q.push(!t.P(e) && null);
1034
+ const Z = [], ee = e.u(w), te = [];
1035
+ let oe = te;
1036
+ const re = v.get(e), ne = /* @__PURE__ */ new Map;
1037
+ for (const o of F) {
1038
+ const r = o < w, s = o >= S, l = s || o >= z && o <= x, i = O(q, o, S), c = r ? 0 : s ? S : i < 0 ? -1 : q[i];
1039
+ if (o === c) {
1040
+ const e = r ? w : s ? $ : i + 1 < W ? q[i + 1] : S;
1041
+ G.push(e);
1042
+ const t = [];
1043
+ te.push({
1044
+ Ie: r ? -1 : s ? -2 : -3 - c,
1045
+ xe: t,
1046
+ $e: C(c, e, r || s ? 0 : null, s ? "bottom" : "top", 4)
1047
+ }), oe = t;
1048
+ } else c < 0 && (oe = te);
1049
+ const a = i >= 0 && o === c, u = a ? ee : null, f = o * h, d = re && re.get(o), p = d && d.be, m = [];
1050
+ let g = 0, v = !e.P(o) && null, I = o + 1, k = !1;
1051
+ for (let e = 0; e < J; e++) {
1052
+ const s = X[e], i = s < y, c = s >= b, u = c || s >= E && s <= j, d = U.get(f + s);
1053
+ if (d ? d.rowIndex !== o || d.colIndex !== s : !(l && u || r || a || i)) continue;
1054
+ const w = d ? A(d, $) : o + 1, S = d ? M(d, h) : s + 1, z = w - o > 1, x = S - s > 1, O = z || x, R = O ? w - o : void 0, T = O ? S - s : void 0;
1055
+ let N, C;
1056
+ I = n(I, w);
1057
+ const q = i ? t.u(s) : null, L = c ? t.t() - t.u(S - 1) - t.p(S - 1) : null;
1058
+ !1 !== v || z || (N = o, v = !0), !1 !== Q[e] || x || (C = s, Q[e] = !0);
1059
+ const P = r ? "columnheader" : s === B && (i || a) ? "rowheader" : "cell", H = "cell" !== P && _ && _.rowIndex === o && _.colIndex === s ? _.order : void 0;
1060
+ let W;
1061
+ if (p) {
1062
+ for (;g < p.length && p[g].de < s; ) g++;
1063
+ g < p.length && (W = p[g]);
1064
+ }
1065
+ if (!W || W.de !== s || W.pe !== R || W.me !== T || W.ke !== q || W.Oe !== L || W.ae !== N || W.fe !== C || W.ge !== P || W._e !== H) {
1066
+ const e = {
1067
+ contain: "layout style",
1068
+ display: "grid",
1069
+ gridArea: O ? "1/l" + s + "/l" + w + "/l" + S : "1/l" + s
1070
+ };
1071
+ z && (e.height = "0px", e.minHeight = "100%", e.zIndex = 1), x && (e.width = "0px",
1072
+ e.minWidth = "100%"), (i || c) && (i ? e.insetInlineStart = q + "px" : e.insetInlineEnd = L + "px",
1073
+ e.position = "sticky", e.zIndex = 2), W = {
1074
+ de: s,
1075
+ pe: R,
1076
+ me: T,
1077
+ ae: N,
1078
+ fe: C,
1079
+ ge: P,
1080
+ _e: H,
1081
+ $e: e,
1082
+ ke: q,
1083
+ Oe: L
1084
+ }, k = !0;
1085
+ }
1086
+ m.push(W);
1087
+ }
1088
+ if (Z.push(v), !m.length) continue;
1089
+ const R = d && !k && d.be.length === m.length && d.Re === u ? d : {
1090
+ ye: o,
1091
+ be: m,
1092
+ $e: C(o, I, u, "top", 3),
1093
+ Re: u
1094
+ };
1095
+ ne.set(o, R), oe.push(R);
1096
+ }
1097
+ return v.set(e, ne), {
1098
+ Te: N(e, F, Z, c(G), "max-content", $),
1099
+ Ae: N(t, X, Q, c(K), "minmax(max-content,auto)", h),
1100
+ Me: te
1101
+ };
1102
+ })(p, m, g.l(t.bufferSize), h.l(t.bufferSize), t.headerRows, t.sectionRows, t.footerRows, t.headerCols, t.footerCols, t.spans, t.keepMounted, t.ariaSort))), V = (0,
1103
+ e.computed)(() => S.value && (g.N() || h.N()));
1104
+ return (0, e.onMounted)(() => {
1105
+ w.le(f.value);
1106
+ }), (0, e.onUnmounted)(() => {
1107
+ g.k(), h.k(), w.k();
1108
+ }), (0, e.watch)([ S ], () => {
1109
+ w.ce();
1110
+ }, {
1111
+ flush: "post"
1112
+ }), l({
1113
+ get verticalScrollOffset() {
1114
+ return g.M();
1115
+ },
1116
+ get horizontalScrollOffset() {
1117
+ return h.M();
1118
+ },
1119
+ get scrollHeight() {
1120
+ return _(g);
1121
+ },
1122
+ get scrollWidth() {
1123
+ return _(h);
1124
+ },
1125
+ get viewportHeight() {
1126
+ return g.o();
1127
+ },
1128
+ get viewportWidth() {
1129
+ return h.o();
1130
+ },
1131
+ findRowIndex: g.R,
1132
+ findColIndex: h.R,
1133
+ getRowOffset: g.u,
1134
+ getColOffset: h.u,
1135
+ getRowSize: g.p,
1136
+ getColSize: h.p,
1137
+ scrollToIndex: e => ((e, t, r, n = 0, s = o, l = 0, i = 0, c = 0, {rowIndex: a, colIndex: u, rowAlign: f, colAlign: d}) => {
1138
+ null != a && L(e, t, n, s, l, a, f, !1), null != u && L(e, r, i, o, c, u, d, !0);
1139
+ })(w, g, h, t.headerRows, t.sectionRows, t.footerRows, t.headerCols, t.footerCols, e),
1140
+ scrollTo: ({vertical: e, horizontal: t}) => ((e, t, o) => {
1141
+ null != t && e.Y(!1, () => t), null != o && e.Y(!0, () => o);
1142
+ })(w, e, t),
1143
+ scrollBy: ({vertical: e, horizontal: t}) => ((e, t, o, r, n) => {
1144
+ if (null != r) {
1145
+ const o = r + t.M();
1146
+ e.Y(!1, () => o);
1147
+ }
1148
+ if (null != n) {
1149
+ const t = n + o.M();
1150
+ e.Y(!0, () => t);
1151
+ }
1152
+ })(w, g, h, e, t)
1153
+ }), () => {
1154
+ const {Te: o, Ae: r, Me: n} = W.value, s = g.u(0), l = h.u(0), i = {
1155
+ contain: "size style",
1156
+ overflowAnchor: "none",
1157
+ flex: "none",
1158
+ display: "grid",
1159
+ gridTemplateRows: o,
1160
+ gridTemplateColumns: r,
1161
+ gap: t.gap + "px",
1162
+ marginTop: s + "px",
1163
+ marginInlineStart: l + "px",
1164
+ height: _(g) - s + "px",
1165
+ pointerEvents: V.value ? "none" : void 0
1166
+ };
1167
+ return (0, e.createVNode)("div", {
1168
+ role: "table",
1169
+ "aria-rowcount": P.value,
1170
+ "aria-colcount": H.value,
1171
+ style: {
1172
+ overflow: "auto",
1173
+ contain: "strict",
1174
+ width: "100%",
1175
+ height: "100%"
1176
+ }
1177
+ }, [ (0, e.createVNode)("div", {
1178
+ ref: f,
1179
+ style: i
1180
+ }, [ n.map(o => "xe" in o ? (0, e.createVNode)(J, {
1181
+ key: o.Ie,
1182
+ ue: o,
1183
+ Z: u.default,
1184
+ ve: t.rows,
1185
+ ze: t.cols,
1186
+ te: w.ie
1187
+ }, null, 8, [ "ue", "Z", "ve", "ze", "te" ]) : (0, e.createVNode)(Y, {
1188
+ key: o.ye,
1189
+ ue: o,
1190
+ Z: u.default,
1191
+ he: b(t.rows, o.ye),
1192
+ ze: t.cols,
1193
+ te: w.ie
1194
+ }, null, 8, [ "ue", "Z", "he", "ze", "te" ])) ], 4) ], 8, [ "aria-rowcount", "aria-colcount" ]);
690
1195
  };
691
1196
  }
692
1197
  });
693
1198
 
694
- exports.VList = O, exports.Virtualizer = w, exports.WindowVirtualizer = k;
1199
+ exports.VGrid = U, exports.VList = D, exports.Virtualizer = V, exports.WindowVirtualizer = F;
695
1200
  //# sourceMappingURL=index.cjs.map