virtua 0.51.1 → 0.51.3
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/angular/index.js +50 -55
- package/lib/angular/index.js.map +1 -1
- package/lib/core/index.cjs +189 -194
- package/lib/core/index.cjs.map +1 -1
- package/lib/core/index.js +129 -134
- package/lib/core/index.js.map +1 -1
- package/lib/index.cjs +27 -32
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +59 -64
- package/lib/index.js.map +1 -1
- package/lib/solid/Virtualizer.d.ts +1 -1
- package/lib/solid/WindowVirtualizer.d.ts +1 -1
- package/lib/solid/index.cjs +81 -86
- package/lib/solid/index.cjs.map +1 -1
- package/lib/solid/index.js +212 -217
- package/lib/solid/index.js.map +1 -1
- package/lib/solid/index.jsx +65 -67
- package/lib/solid/index.jsx.map +1 -1
- package/lib/svelte/Virtualizer.svelte +2 -1
- package/lib/svelte/WindowVirtualizer.svelte +2 -1
- package/lib/vue/index.cjs +118 -123
- package/lib/vue/index.cjs.map +1 -1
- package/lib/vue/index.js +28 -33
- package/lib/vue/index.js.map +1 -1
- package/package.json +1 -1
package/lib/angular/index.js
CHANGED
|
@@ -4,16 +4,16 @@ import { ApplicationRef as t, ChangeDetectionStrategy as i, DestroyRef as s, Ele
|
|
|
4
4
|
|
|
5
5
|
import { NgTemplateOutlet as y } from "@angular/common";
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var z, {min: v, max: b, abs: N, floor: P} = Math, R = (e, t, i) => v(i, b(t, e)), I = e => [ ...e ].sort((e, t) => e - t), $ = setTimeout, q = clearTimeout, x = "function" == typeof queueMicrotask ? queueMicrotask : e => {
|
|
8
8
|
Promise.resolve().then(e);
|
|
9
9
|
}, k = () => {
|
|
10
10
|
let e;
|
|
11
11
|
return [ new Promise(t => {
|
|
12
12
|
e = t;
|
|
13
13
|
}), e ];
|
|
14
|
-
}, F = e => e.ownerDocument, w = e => e.defaultView, O = () => (null ==
|
|
15
|
-
|
|
16
|
-
let m = !!c, h = !!u, p = 1, f = 0, d = 0, g = 0, S = 0, y = 0,
|
|
14
|
+
}, F = e => e.ownerDocument, w = e => e.defaultView, O = () => (null == z && (z = /iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0),
|
|
15
|
+
z), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setItemSize: n, $isSizeEqual: r, $getTotalSize: o, $getLength: a, $setLength: l, $estimateDefaultSize: c}, u = 0) => {
|
|
16
|
+
let m = !!c, h = !!u, p = 1, f = 0, d = 0, g = 0, S = 0, y = 0, z = 0, P = 0, R = 0, I = null, $ = [ 0, h ? b(u - 1, 0) : -1 ], q = 0, x = !1;
|
|
17
17
|
const k = /* @__PURE__ */ new Set, F = () => g - d, w = () => F() + y + S, T = e => i(e) - y, C = e => {
|
|
18
18
|
e && (O() && 0 !== P || I && 1 === R ? y += e : S += e);
|
|
19
19
|
};
|
|
@@ -25,12 +25,12 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
25
25
|
$getRange: (t = 200) => {
|
|
26
26
|
if (!x || h) return $;
|
|
27
27
|
let i, s;
|
|
28
|
-
if (
|
|
28
|
+
if (z) [i, s] = $; else {
|
|
29
29
|
let n = b(0, w()), r = n + f;
|
|
30
30
|
m || (t = b(0, t), 1 !== P && (n -= t), 2 !== P && (r += t)), [i, s] = $ = e(b(0, n), b(0, r)),
|
|
31
|
-
I && (i =
|
|
31
|
+
I && (i = v(i, I[0]), s = b(s, I[1]));
|
|
32
32
|
}
|
|
33
|
-
return [ b(i, 0),
|
|
33
|
+
return [ b(i, 0), v(s, a() - 1) ];
|
|
34
34
|
},
|
|
35
35
|
$findItemIndex: e => t(e - d),
|
|
36
36
|
$isUnmeasuredItem: r,
|
|
@@ -42,7 +42,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
42
42
|
$getViewportSize: () => f,
|
|
43
43
|
$getStartSpacerSize: () => d,
|
|
44
44
|
$getTotalSize: o,
|
|
45
|
-
t: () => (
|
|
45
|
+
t: () => (z = S, S = 0, [ z, 2 === R ]),
|
|
46
46
|
$subscribe: (e, t) => {
|
|
47
47
|
const i = [ e, t ];
|
|
48
48
|
return k.add(i), () => {
|
|
@@ -50,17 +50,17 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
50
50
|
};
|
|
51
51
|
},
|
|
52
52
|
$update: (i, a) => {
|
|
53
|
-
let u,
|
|
53
|
+
let u, v, b = 0;
|
|
54
54
|
switch (i) {
|
|
55
55
|
case 1:
|
|
56
56
|
{
|
|
57
57
|
if (a === g && 0 === R) break;
|
|
58
|
-
const e =
|
|
59
|
-
|
|
58
|
+
const e = z;
|
|
59
|
+
z = 0;
|
|
60
60
|
const t = a - g, i = N(t);
|
|
61
61
|
e && i < N(e) + 1 || 0 !== R || (P = t < 0 ? 2 : 1), h && (h = !1), g = a, b = 4;
|
|
62
62
|
const s = F();
|
|
63
|
-
s >= -f && s <= o() && (b += 1,
|
|
63
|
+
s >= -f && s <= o() && (b += 1, v = i > f);
|
|
64
64
|
break;
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -84,12 +84,12 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
84
84
|
const e = s(t), r = n(t, i);
|
|
85
85
|
m && (q += r ? i : i - e);
|
|
86
86
|
}
|
|
87
|
-
m && f && q > f && (C(c(t(w()))), m = !1), b = 3,
|
|
87
|
+
m && f && q > f && (C(c(t(w()))), m = !1), b = 3, v = !0;
|
|
88
88
|
break;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
case 4:
|
|
92
|
-
f !== a && (f || (x =
|
|
92
|
+
f !== a && (f || (x = v = !0), f = a, b = 3);
|
|
93
93
|
break;
|
|
94
94
|
|
|
95
95
|
case 5:
|
|
@@ -108,7 +108,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
108
108
|
I = e(a, a + f), b = 1;
|
|
109
109
|
}
|
|
110
110
|
b && (p = 1 + (2147483647 & p), u && y && (S += y, y = 0), k.forEach(([e, t]) => {
|
|
111
|
-
b & e && t(
|
|
111
|
+
b & e && t(v);
|
|
112
112
|
}));
|
|
113
113
|
}
|
|
114
114
|
};
|
|
@@ -125,7 +125,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
125
125
|
return e;
|
|
126
126
|
}, _ = (e, t, i) => {
|
|
127
127
|
let s = i && i[1] || t || 40, n = -1, r = 0;
|
|
128
|
-
const o = i && i[0], a = o ? M(o.slice(0,
|
|
128
|
+
const o = i && i[0], a = o ? M(o.slice(0, v(e, o.length)), b(0, e - o.length)) : M([], e), l = M([], e + 1), c = e => {
|
|
129
129
|
const t = a[e];
|
|
130
130
|
return -1 === t ? s : t;
|
|
131
131
|
}, u = t => {
|
|
@@ -139,7 +139,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
139
139
|
return {
|
|
140
140
|
$getRange: (t, i) => {
|
|
141
141
|
let s, n;
|
|
142
|
-
return r =
|
|
142
|
+
return r = v(r, e - 1), u(r) <= t ? (n = C(u, e, i, r), s = C(u, e, t, r, n)) : (s = C(u, e, t, void 0, r),
|
|
143
143
|
n = C(u, e, i, s)), r = s, [ s, n ];
|
|
144
144
|
},
|
|
145
145
|
$findIndex: t => C(u, e, t),
|
|
@@ -147,14 +147,14 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
147
147
|
$getItemSize: c,
|
|
148
148
|
$setItemSize: (e, t) => {
|
|
149
149
|
const i = -1 === a[e];
|
|
150
|
-
return a[e] = t, n =
|
|
150
|
+
return a[e] = t, n = v(e, n), i;
|
|
151
151
|
},
|
|
152
152
|
$isSizeEqual: (e, t = -1) => a[e] === t,
|
|
153
153
|
$getTotalSize: () => u(e),
|
|
154
154
|
$getLength: () => e,
|
|
155
155
|
$setLength: (t, i) => {
|
|
156
156
|
const r = t - e;
|
|
157
|
-
return n = i ? -1 :
|
|
157
|
+
return n = i ? -1 : v(t - 1, n), e = t, r > 0 ? (M(l, r), M(a, r, i), s * r) : (l.splice(r),
|
|
158
158
|
(i ? a.splice(0, -r) : a.splice(r)).reduce((e, t) => e - (-1 === t ? s : t), 0));
|
|
159
159
|
},
|
|
160
160
|
$estimateDefaultSize: t ? void 0 : e => {
|
|
@@ -183,16 +183,16 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
183
183
|
};
|
|
184
184
|
}, V = (e, t, i, s, n, r, o) => {
|
|
185
185
|
let a, l, c = 0, u = !1, m = !1, h = !1, p = !1;
|
|
186
|
-
const f = Date.now, d = s ? "scrollLeft" : "scrollTop", g = s ? "left" : "top", S = e => n ? -e : e, y = () => S(i[d]),
|
|
186
|
+
const f = Date.now, d = s ? "scrollLeft" : "scrollTop", g = s ? "left" : "top", S = e => n ? -e : e, y = () => S(i[d]), z = (e, t) => {
|
|
187
187
|
i.scrollTo({
|
|
188
188
|
[g]: S(e),
|
|
189
189
|
behavior: t ? "smooth" : "instant"
|
|
190
190
|
});
|
|
191
|
-
},
|
|
191
|
+
}, v = () => {
|
|
192
192
|
if (u || m) return u = !1, void b();
|
|
193
193
|
h = !1, e.$update(2);
|
|
194
194
|
}, b = () => {
|
|
195
|
-
q(l), l = $(
|
|
195
|
+
q(l), l = $(v, 150);
|
|
196
196
|
}, N = () => {
|
|
197
197
|
c = f(), h && (p = !0), o && e.$update(6, o()), e.$update(1, y()), b();
|
|
198
198
|
}, P = t => {
|
|
@@ -220,7 +220,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
220
220
|
if (!t) return;
|
|
221
221
|
p && r && r(), p = !1;
|
|
222
222
|
const n = e.$getScrollOffset() + t;
|
|
223
|
-
n <= 0 || n >= e.$getStartSpacerSize() + e.$getTotalSize() - e.$getViewportSize() ?
|
|
223
|
+
n <= 0 || n >= e.$getStartSpacerSize() + e.$getTotalSize() - e.$getViewportSize() ? z(n) : i.scrollBy({
|
|
224
224
|
[g]: S(t),
|
|
225
225
|
behavior: "instant"
|
|
226
226
|
}), s && (a && a(), e.$getViewportSize() > e.$getTotalSize() && e.$update(1, y()));
|
|
@@ -236,7 +236,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
236
236
|
for (let [t, i] = e.$getRange(0); t <= i; t++) if (e.$isUnmeasuredItem(t)) return;
|
|
237
237
|
o();
|
|
238
238
|
}
|
|
239
|
-
e.$update(7),
|
|
239
|
+
e.$update(7), z(t(), i);
|
|
240
240
|
}
|
|
241
241
|
}, c = () => {
|
|
242
242
|
if (s) return;
|
|
@@ -409,7 +409,7 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
409
409
|
const r = new Set(s);
|
|
410
410
|
for (let e = t; e <= i; e++) r.add(e);
|
|
411
411
|
for (const t of I([ ...r ])) t < e && n.push(t);
|
|
412
|
-
} else for (let
|
|
412
|
+
} else for (let e = t; e <= i; e++) n.push(e);
|
|
413
413
|
return n;
|
|
414
414
|
});
|
|
415
415
|
items=c(() => {
|
|
@@ -469,28 +469,28 @@ v), T = ({$getRange: e, $findIndex: t, $getItemOffset: i, $getItemSize: s, $setI
|
|
|
469
469
|
const i = this.S = _(this.data().length, e, this.cacheProp()), s = this.p = T(i, t);
|
|
470
470
|
this.driver = ((e, t) => {
|
|
471
471
|
let i, s, n = k();
|
|
472
|
-
const r =
|
|
473
|
-
const
|
|
474
|
-
for (const {target:
|
|
475
|
-
const e =
|
|
476
|
-
null != e &&
|
|
472
|
+
const r = /* @__PURE__ */ new WeakMap, o = K(s => {
|
|
473
|
+
const n = [];
|
|
474
|
+
for (const {target: o, contentRect: {width: a, height: l}} of s) if (o === i) (a || l) && e.$update(4, t ? a : l); else if (o.offsetParent) {
|
|
475
|
+
const e = r.get(o);
|
|
476
|
+
null != e && n.push([ e, t ? a : l ]);
|
|
477
477
|
}
|
|
478
|
-
|
|
478
|
+
n.length && e.$update(3, n);
|
|
479
479
|
});
|
|
480
480
|
return {
|
|
481
|
-
$observe(r,
|
|
482
|
-
|
|
483
|
-
const e = t ? "overflowX" : "overflowY", i =
|
|
481
|
+
$observe(r, a = r.parentElement) {
|
|
482
|
+
o.i(i = a), s = V(e, a, a, t, t && "rtl" === getComputedStyle(a).direction, () => {
|
|
483
|
+
const e = t ? "overflowX" : "overflowY", i = a.style, s = i[e];
|
|
484
484
|
i[e] = "hidden", $(() => {
|
|
485
485
|
i[e] = s;
|
|
486
486
|
});
|
|
487
487
|
}), n[1](!0);
|
|
488
488
|
},
|
|
489
489
|
$dispose() {
|
|
490
|
-
|
|
490
|
+
o.l(), s && s.l(), n[1](!1), n = k();
|
|
491
491
|
},
|
|
492
|
-
$observeItem: (e, t) => (
|
|
493
|
-
|
|
492
|
+
$observeItem: (e, t) => (r.set(e, t), o.i(e), () => {
|
|
493
|
+
r.delete(e), o.o(e);
|
|
494
494
|
}),
|
|
495
495
|
async $scroll(e, t) {
|
|
496
496
|
await n[0] && s.m(e, t);
|
|
@@ -880,7 +880,7 @@ var Q = class i {
|
|
|
880
880
|
items=c(() => {
|
|
881
881
|
this.P();
|
|
882
882
|
const e = this.p, t = this.data(), i = this.getKey(), [s, n] = e.$getRange(this.bufferSize()), r = [];
|
|
883
|
-
for (let o = s; o <= n
|
|
883
|
+
for (let o = s; o <= n; o++) {
|
|
884
884
|
const s = t[o];
|
|
885
885
|
r.push({
|
|
886
886
|
key: i(s, o),
|
|
@@ -928,36 +928,31 @@ var Q = class i {
|
|
|
928
928
|
const i = this.S = _(this.data().length, e, this.cacheProp()), s = this.p = T(i, t);
|
|
929
929
|
this.driver = ((e, t) => {
|
|
930
930
|
let i, s, n, r, o, a = k();
|
|
931
|
-
const l =
|
|
932
|
-
const
|
|
933
|
-
for (const {target: e, contentRect:
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
continue;
|
|
937
|
-
}
|
|
938
|
-
if (!e.offsetParent) continue;
|
|
939
|
-
const t = c.get(e);
|
|
940
|
-
null != t && s.push([ t, n[l] ]);
|
|
931
|
+
const l = /* @__PURE__ */ new WeakMap, c = K(s => {
|
|
932
|
+
const n = [];
|
|
933
|
+
for (const {target: e, contentRect: {width: r, height: a}} of s) if (e === i) o && o(); else if (e.offsetParent) {
|
|
934
|
+
const i = l.get(e);
|
|
935
|
+
null != i && n.push([ i, t ? r : a ]);
|
|
941
936
|
}
|
|
942
|
-
|
|
937
|
+
n.length && e.$update(3, n);
|
|
943
938
|
});
|
|
944
939
|
return {
|
|
945
940
|
$observe(l) {
|
|
946
|
-
const
|
|
941
|
+
const u = F(l), m = w(u), h = i = u.scrollingElement, p = t && "rtl" === getComputedStyle(h).direction, f = (e, t, i, s, n = 0) => {
|
|
947
942
|
const r = s ? "offsetLeft" : "offsetTop", o = n + (p ? t.clientWidth - e[r] - e.offsetWidth : e[r]), a = e.offsetParent;
|
|
948
943
|
return e !== i && a ? f(a, t, i, s, o) : o;
|
|
949
|
-
}, d = r = () => f(l, h,
|
|
944
|
+
}, d = r = () => f(l, h, u.body, t), g = o = () => {
|
|
950
945
|
e.$update(4, h[t ? "clientWidth" : "clientHeight"]);
|
|
951
946
|
};
|
|
952
|
-
m.addEventListener("resize", g),
|
|
947
|
+
m.addEventListener("resize", g), c.i(h), n = () => {
|
|
953
948
|
m.removeEventListener("resize", g);
|
|
954
949
|
}, s = V(e, m, h, t, p, null, d), a[1](!0);
|
|
955
950
|
},
|
|
956
951
|
$dispose() {
|
|
957
|
-
n && n(),
|
|
952
|
+
n && n(), c.l(), s && s.l(), a[1](!1), a = k();
|
|
958
953
|
},
|
|
959
|
-
$observeItem: (e, t) => (
|
|
960
|
-
|
|
954
|
+
$observeItem: (e, t) => (l.set(e, t), c.i(e), () => {
|
|
955
|
+
l.delete(e), c.o(e);
|
|
961
956
|
}),
|
|
962
957
|
async $scroll(e, t) {
|
|
963
958
|
await a[0] && s.m(e, t);
|