virtua 0.50.4 → 0.50.6
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 +163 -183
- package/lib/angular/index.js.map +1 -1
- package/lib/core/index.cjs +160 -181
- package/lib/core/index.cjs.map +1 -1
- package/lib/core/index.js +264 -285
- package/lib/core/index.js.map +1 -1
- package/lib/index.cjs +320 -341
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +293 -314
- package/lib/index.js.map +1 -1
- package/lib/solid/index.cjs +226 -246
- package/lib/solid/index.cjs.map +1 -1
- package/lib/solid/index.js +264 -284
- package/lib/solid/index.js.map +1 -1
- package/lib/solid/index.jsx +77 -88
- package/lib/solid/index.jsx.map +1 -1
- package/lib/svelte/Virtualizer.svelte +1 -1
- package/lib/svelte/WindowVirtualizer.svelte +1 -1
- package/lib/vue/index.cjs +251 -271
- package/lib/vue/index.cjs.map +1 -1
- package/lib/vue/index.js +190 -210
- package/lib/vue/index.js.map +1 -1
- package/package.json +1 -1
package/lib/core/index.cjs
CHANGED
|
@@ -2,17 +2,17 @@ Object.defineProperty(exports, Symbol.toStringTag, {
|
|
|
2
2
|
value: "Module"
|
|
3
3
|
});
|
|
4
4
|
|
|
5
|
-
var {min: e, max: t, abs: o, floor: s} = Math, r = (o, s, r) => e(r, t(s, o)), n = e => [ ...e ].sort((e, t) => e - t), l = setTimeout, i = "function" == typeof queueMicrotask ? queueMicrotask : e => {
|
|
5
|
+
var {min: e, max: t, abs: o, floor: s} = Math, r = (o, s, r) => e(r, t(s, o)), n = e => [ ...e ].sort((e, t) => e - t), l = setTimeout, i = clearTimeout, c = "function" == typeof queueMicrotask ? queueMicrotask : e => {
|
|
6
6
|
Promise.resolve().then(e);
|
|
7
|
-
},
|
|
7
|
+
}, f = () => {
|
|
8
8
|
let e;
|
|
9
9
|
return [ new Promise(t => {
|
|
10
10
|
e = t;
|
|
11
11
|
}), e ];
|
|
12
|
-
},
|
|
12
|
+
}, a = e => {
|
|
13
13
|
let t;
|
|
14
14
|
return () => (e && (t = e(), e = void 0), t);
|
|
15
|
-
},
|
|
15
|
+
}, u = "undefined" != typeof window, $ = e => e.documentElement, p = e => e.ownerDocument, g = e => e.defaultView, d = /*#__PURE__*/ a(() => !!/iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0), h = /*#__PURE__*/ a(() => "scrollBehavior" in $(document).style), m = (e, t, o, n = 0, l = t - 1) => {
|
|
16
16
|
let i = n;
|
|
17
17
|
for (;n <= l; ) {
|
|
18
18
|
const t = s((n + l) / 2);
|
|
@@ -23,11 +23,11 @@ var {min: e, max: t, abs: o, floor: s} = Math, r = (o, s, r) => e(r, t(s, o)), n
|
|
|
23
23
|
const s = o ? "unshift" : "push";
|
|
24
24
|
for (let o = 0; o < t; o++) e[s](-1);
|
|
25
25
|
return e;
|
|
26
|
-
},
|
|
26
|
+
}, v = e => {
|
|
27
27
|
let t;
|
|
28
28
|
return {
|
|
29
29
|
t(o) {
|
|
30
|
-
(t || (t = new (p(
|
|
30
|
+
(t || (t = new (g(p(o)).ResizeObserver)(e))).observe(o);
|
|
31
31
|
},
|
|
32
32
|
o(e) {
|
|
33
33
|
t.unobserve(e);
|
|
@@ -36,103 +36,83 @@ var {min: e, max: t, abs: o, floor: s} = Math, r = (o, s, r) => e(r, t(s, o)), n
|
|
|
36
36
|
t && t.disconnect();
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
|
-
},
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const o = () => {
|
|
45
|
-
null != t && clearTimeout(t);
|
|
46
|
-
}, s = () => {
|
|
47
|
-
o(), t = l(() => {
|
|
48
|
-
t = null, (() => {
|
|
49
|
-
if (f || a) return f = !1, void p();
|
|
50
|
-
u = !1, e.$update(2);
|
|
51
|
-
})();
|
|
52
|
-
}, 150);
|
|
53
|
-
};
|
|
54
|
-
return s.i = o, s;
|
|
55
|
-
})(), d = () => {
|
|
56
|
-
c = i(), u && ($ = !0), n && e.$update(6, n()), e.$update(1, s()), p();
|
|
57
|
-
}, h = t => {
|
|
58
|
-
if (f || !e.$isScrolling() || t.ctrlKey) return;
|
|
59
|
-
const s = i() - c;
|
|
60
|
-
150 > s && 50 < s && (o ? t.deltaX : t.deltaY) && (f = !0);
|
|
61
|
-
}, S = () => {
|
|
62
|
-
a = !0, u = $ = !1;
|
|
39
|
+
}, b = (e, t) => t ? -e : e, w = (e, t, o, s, r, n) => {
|
|
40
|
+
let c, f = 0, a = !1, u = !1, $ = !1, p = !1;
|
|
41
|
+
const g = Date.now, h = () => {
|
|
42
|
+
if (a || u) return a = !1, void m();
|
|
43
|
+
$ = !1, e.$update(2);
|
|
63
44
|
}, m = () => {
|
|
64
|
-
|
|
45
|
+
i(c), c = l(h, 150);
|
|
46
|
+
}, S = () => {
|
|
47
|
+
f = g(), $ && (p = !0), n && e.$update(6, n()), e.$update(1, s()), m();
|
|
48
|
+
}, v = t => {
|
|
49
|
+
if (a || !e.$isScrolling() || t.ctrlKey) return;
|
|
50
|
+
const s = g() - f;
|
|
51
|
+
150 > s && 50 < s && (o ? t.deltaX : t.deltaY) && (a = !0);
|
|
52
|
+
}, b = () => {
|
|
53
|
+
u = !0, $ = p = !1;
|
|
54
|
+
}, w = () => {
|
|
55
|
+
u = !1, d() && ($ = !0);
|
|
65
56
|
};
|
|
66
|
-
return t.addEventListener("scroll",
|
|
57
|
+
return t.addEventListener("scroll", S), t.addEventListener("wheel", v, {
|
|
67
58
|
passive: !0
|
|
68
|
-
}), t.addEventListener("touchstart",
|
|
59
|
+
}), t.addEventListener("touchstart", b, {
|
|
69
60
|
passive: !0
|
|
70
|
-
}), t.addEventListener("touchend",
|
|
61
|
+
}), t.addEventListener("touchend", w, {
|
|
71
62
|
passive: !0
|
|
72
63
|
}), {
|
|
73
64
|
l: () => {
|
|
74
|
-
t.removeEventListener("scroll",
|
|
75
|
-
t.removeEventListener("touchend",
|
|
65
|
+
t.removeEventListener("scroll", S), t.removeEventListener("wheel", v), t.removeEventListener("touchstart", b),
|
|
66
|
+
t.removeEventListener("touchend", w), i(c);
|
|
76
67
|
},
|
|
77
|
-
|
|
78
|
-
const [t, o] = e
|
|
79
|
-
t && (r(t, o,
|
|
68
|
+
i: () => {
|
|
69
|
+
const [t, o] = e.u();
|
|
70
|
+
t && (r(t, o, p), p = !1, o && e.$getViewportSize() > e.$getTotalSize() && e.$update(1, s()));
|
|
80
71
|
}
|
|
81
72
|
};
|
|
82
|
-
},
|
|
73
|
+
}, x = (e, t, o) => {
|
|
83
74
|
let s;
|
|
84
75
|
return [ async (r, n) => {
|
|
85
76
|
if (!await t()) return;
|
|
77
|
+
let f, a, u;
|
|
86
78
|
s && s();
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
};
|
|
95
|
-
if (n && d()) e.$update(8, r()), i(async () => {
|
|
96
|
-
for (;;) {
|
|
97
|
-
let t = !0;
|
|
98
|
-
for (let [o, s] = e.$getRange(); o <= s; o++) if (e.$isUnmeasuredItem(o)) {
|
|
99
|
-
t = !1;
|
|
100
|
-
break;
|
|
101
|
-
}
|
|
102
|
-
if (t) break;
|
|
103
|
-
const [o, s] = f();
|
|
104
|
-
try {
|
|
105
|
-
if (!await o) return;
|
|
106
|
-
} finally {
|
|
107
|
-
s();
|
|
79
|
+
const $ = n && h(), p = s = () => {
|
|
80
|
+
f = !0, i(a), u && u();
|
|
81
|
+
}, g = () => {
|
|
82
|
+
if (!f) {
|
|
83
|
+
if (e.$getViewportSize() && (i(a), a = l(p, 150)), $) {
|
|
84
|
+
for (let [t, o] = e.$getRange(0); t <= o; t++) if (e.$isUnmeasuredItem(t)) return;
|
|
85
|
+
p();
|
|
108
86
|
}
|
|
87
|
+
e.$update(7), o(r(), $);
|
|
109
88
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
}
|
|
89
|
+
}, d = () => {
|
|
90
|
+
if (f) return;
|
|
91
|
+
let t;
|
|
92
|
+
u = e.$subscribe(2, () => {
|
|
93
|
+
t || (t = !0, c(() => {
|
|
94
|
+
t = !1, g();
|
|
95
|
+
}));
|
|
96
|
+
}), g();
|
|
97
|
+
};
|
|
98
|
+
$ ? (e.$update(8, r()), c(d)) : d();
|
|
119
99
|
}, () => {
|
|
120
100
|
s && s();
|
|
121
101
|
} ];
|
|
122
|
-
},
|
|
123
|
-
e.$
|
|
102
|
+
}, z = (e, t) => {
|
|
103
|
+
e.$scroll(() => t);
|
|
124
104
|
};
|
|
125
105
|
|
|
126
106
|
exports.ACTION_ITEMS_LENGTH_CHANGE = 5, exports.ACTION_START_OFFSET_CHANGE = 6,
|
|
127
107
|
exports.UPDATE_SCROLL_END_EVENT = 8, exports.UPDATE_SCROLL_EVENT = 4, exports.UPDATE_VIRTUAL_STATE = 1,
|
|
128
108
|
exports.createContainerDriver = (e, t) => {
|
|
129
|
-
let o, s, r =
|
|
130
|
-
const i = t ? "scrollLeft" : "scrollTop",
|
|
131
|
-
e =
|
|
109
|
+
let o, s, r = f(), n = !1;
|
|
110
|
+
const i = t ? "scrollLeft" : "scrollTop", c = t ? "overflowX" : "overflowY", [a, u] = x(e, () => r[0], (e, s) => {
|
|
111
|
+
e = b(e, n), s ? o.scrollTo({
|
|
132
112
|
[t ? "left" : "top"]: e,
|
|
133
113
|
behavior: "smooth"
|
|
134
114
|
}) : o[i] = e;
|
|
135
|
-
}), $ = t ? "width" : "height", p = /* @__PURE__ */ new WeakMap, g =
|
|
115
|
+
}), $ = t ? "width" : "height", p = /* @__PURE__ */ new WeakMap, g = v(t => {
|
|
136
116
|
const s = [];
|
|
137
117
|
for (const {target: r, contentRect: n} of t) if (r.offsetParent) if (r === o) e.$update(4, n[$]); else {
|
|
138
118
|
const e = p.get(r);
|
|
@@ -141,53 +121,53 @@ exports.createContainerDriver = (e, t) => {
|
|
|
141
121
|
s.length && e.$update(3, s);
|
|
142
122
|
});
|
|
143
123
|
return {
|
|
144
|
-
$observe(
|
|
145
|
-
g.t(o = a), t && (n = "rtl" === getComputedStyle(a).direction), s =
|
|
124
|
+
$observe(f, a = f.parentElement) {
|
|
125
|
+
g.t(o = a), t && (n = "rtl" === getComputedStyle(a).direction), s = w(e, a, t, () => b(a[i], n), (t, o, s) => {
|
|
146
126
|
if (s) {
|
|
147
|
-
const e = a.style, t = e[
|
|
148
|
-
e[
|
|
149
|
-
e[
|
|
127
|
+
const e = a.style, t = e[c];
|
|
128
|
+
e[c] = "hidden", l(() => {
|
|
129
|
+
e[c] = t;
|
|
150
130
|
});
|
|
151
131
|
}
|
|
152
|
-
a[i] =
|
|
132
|
+
a[i] = b(e.$getScrollOffset() + t, n), o && u();
|
|
153
133
|
}), r[1](!0);
|
|
154
134
|
},
|
|
155
135
|
$dispose() {
|
|
156
|
-
g.l(), s && s.l(), r[1](!1), r =
|
|
136
|
+
g.l(), s && s.l(), r[1](!1), r = f();
|
|
157
137
|
},
|
|
158
138
|
$observeItem: (e, t) => (p.set(e, t), g.t(e), () => {
|
|
159
139
|
p.delete(e), g.o(e);
|
|
160
140
|
}),
|
|
161
141
|
$isNegative: () => n,
|
|
162
|
-
$
|
|
163
|
-
$
|
|
164
|
-
s && s.
|
|
142
|
+
$scroll: a,
|
|
143
|
+
$effect() {
|
|
144
|
+
s && s.i();
|
|
165
145
|
},
|
|
166
146
|
$getBaseOffset: e.$getStartSpacerSize,
|
|
167
147
|
$getScrollbarSize: () => 0
|
|
168
148
|
};
|
|
169
149
|
}, exports.createContainerGridDriver = (e, o) => {
|
|
170
|
-
let s, r, n, i =
|
|
171
|
-
const [a, u] =
|
|
150
|
+
let s, r, n, i = f(), c = !1;
|
|
151
|
+
const [a, u] = x(o, () => i[0], (e, t) => {
|
|
172
152
|
const o = {
|
|
173
|
-
left:
|
|
153
|
+
left: b(e, c)
|
|
174
154
|
};
|
|
175
155
|
t && (o.behavior = "smooth"), s.scrollTo(o);
|
|
176
|
-
}), [$, p] =
|
|
156
|
+
}), [$, p] = x(e, () => i[0], (e, t) => {
|
|
177
157
|
const o = {
|
|
178
158
|
top: e
|
|
179
159
|
};
|
|
180
160
|
t && (o.behavior = "smooth"), s.scrollTo(o);
|
|
181
|
-
}), g = /* @__PURE__ */ new WeakMap, d = /* @__PURE__ */ new Set, h = /* @__PURE__ */ new Set,
|
|
161
|
+
}), g = /* @__PURE__ */ new WeakMap, d = /* @__PURE__ */ new Set, h = /* @__PURE__ */ new Set, m = /* @__PURE__ */ new Map, S = (e, t) => `${e}-${t}`, z = v(r => {
|
|
182
162
|
const n = /* @__PURE__ */ new Set, l = /* @__PURE__ */ new Set;
|
|
183
163
|
for (const {target: t, contentRect: {width: i, height: c}} of r) if (t.offsetParent) if (t === s) e.$update(4, c),
|
|
184
164
|
o.$update(4, i); else {
|
|
185
165
|
const e = g.get(t);
|
|
186
166
|
if (e) {
|
|
187
|
-
const [t, o] = e, s =
|
|
167
|
+
const [t, o] = e, s = S(t, o), r = m.get(s);
|
|
188
168
|
let f, a;
|
|
189
169
|
r ? (r[0] !== c && (f = !0), r[1] !== i && (a = !0)) : f = a = !0, f && n.add(t),
|
|
190
|
-
a && l.add(o), (f || a) &&
|
|
170
|
+
a && l.add(o), (f || a) && m.set(s, [ c, i ]);
|
|
191
171
|
}
|
|
192
172
|
}
|
|
193
173
|
if (n.size) {
|
|
@@ -195,7 +175,7 @@ exports.createContainerDriver = (e, t) => {
|
|
|
195
175
|
n.forEach(e => {
|
|
196
176
|
let s = 0;
|
|
197
177
|
h.forEach(o => {
|
|
198
|
-
const r =
|
|
178
|
+
const r = m.get(S(e, o));
|
|
199
179
|
r && (s = t(s, r[0]));
|
|
200
180
|
}), s && o.push([ e, s ]);
|
|
201
181
|
}), e.$update(3, o);
|
|
@@ -205,49 +185,48 @@ exports.createContainerDriver = (e, t) => {
|
|
|
205
185
|
l.forEach(o => {
|
|
206
186
|
let s = 0;
|
|
207
187
|
d.forEach(e => {
|
|
208
|
-
const r =
|
|
188
|
+
const r = m.get(S(e, o));
|
|
209
189
|
r && (s = t(s, r[1]));
|
|
210
190
|
}), s && e.push([ o, s ]);
|
|
211
191
|
}), o.$update(3, e);
|
|
212
192
|
}
|
|
213
193
|
}), I = (e, t, o) => {
|
|
214
|
-
const r = s, n = t ? "scrollLeft" : "scrollTop", i = t ? "overflowX" : "overflowY",
|
|
215
|
-
return
|
|
216
|
-
if (
|
|
194
|
+
const r = s, n = t ? "scrollLeft" : "scrollTop", i = t ? "overflowX" : "overflowY", f = t && c;
|
|
195
|
+
return w(e, r, t, () => b(r[n], f), (t, s, c) => {
|
|
196
|
+
if (c) {
|
|
217
197
|
const e = r.style, t = e[i];
|
|
218
198
|
e[i] = "hidden", l(() => {
|
|
219
199
|
e[i] = t;
|
|
220
200
|
});
|
|
221
201
|
}
|
|
222
|
-
r[n] =
|
|
202
|
+
r[n] = b(e.$getScrollOffset() + t, f), s && o();
|
|
223
203
|
});
|
|
224
204
|
};
|
|
225
205
|
return {
|
|
226
206
|
$observe(t, l = t.parentElement) {
|
|
227
|
-
z.t(s = l),
|
|
207
|
+
z.t(s = l), c = "rtl" === getComputedStyle(l).direction, r = I(e, !1, p), n = I(o, !0, u),
|
|
228
208
|
i[1](!0);
|
|
229
209
|
},
|
|
230
210
|
$dispose() {
|
|
231
|
-
z.l(), r && r.l(), n && n.l(), i[1](!1), i =
|
|
211
|
+
z.l(), r && r.l(), n && n.l(), i[1](!1), i = f();
|
|
232
212
|
},
|
|
233
213
|
$observeItem: (e, t, o) => (g.set(e, [ t, o ]), d.add(t), h.add(o), z.t(e), () => {
|
|
234
214
|
g.delete(e), z.o(e);
|
|
235
215
|
}),
|
|
236
216
|
$resizeRows(t) {
|
|
237
|
-
for (const [e] of t) for (let t = 0; t < o.$getItemsLength(); t++)
|
|
217
|
+
for (const [e] of t) for (let t = 0; t < o.$getItemsLength(); t++) m.delete(S(e, t));
|
|
238
218
|
e.$update(3, t);
|
|
239
219
|
},
|
|
240
220
|
$resizeCols(t) {
|
|
241
|
-
for (const [o] of t) for (let t = 0; t < e.$getItemsLength(); t++)
|
|
221
|
+
for (const [o] of t) for (let t = 0; t < e.$getItemsLength(); t++) m.delete(S(t, o));
|
|
242
222
|
o.$update(3, t);
|
|
243
223
|
},
|
|
244
|
-
$isNegative: () =>
|
|
245
|
-
$
|
|
246
|
-
$
|
|
247
|
-
$
|
|
248
|
-
r && r.
|
|
249
|
-
}
|
|
250
|
-
$getBaseOffset: t => (t ? o : e).$getStartSpacerSize()
|
|
224
|
+
$isNegative: () => c,
|
|
225
|
+
$scrollX: a,
|
|
226
|
+
$scrollY: $,
|
|
227
|
+
$effect() {
|
|
228
|
+
r && r.i(), n && n.i();
|
|
229
|
+
}
|
|
251
230
|
};
|
|
252
231
|
}, exports.createListLayout = (o, s, r) => {
|
|
253
232
|
let l = r && r[1] || s || 40, i = -1, c = 0;
|
|
@@ -265,10 +244,10 @@ exports.createContainerDriver = (e, t) => {
|
|
|
265
244
|
return {
|
|
266
245
|
$getRange: (t, s) => {
|
|
267
246
|
let r, n;
|
|
268
|
-
return c = e(c, o - 1), p(c) <= t ? (n =
|
|
269
|
-
n =
|
|
247
|
+
return c = e(c, o - 1), p(c) <= t ? (n = m(p, o, s, c), r = m(p, o, t, c, n)) : (r = m(p, o, t, void 0, c),
|
|
248
|
+
n = m(p, o, s, r)), c = r, [ r, n ];
|
|
270
249
|
},
|
|
271
|
-
$findIndex: e =>
|
|
250
|
+
$findIndex: e => m(p, o, e),
|
|
272
251
|
$getItemOffset: p,
|
|
273
252
|
$getItemSize: $,
|
|
274
253
|
$setItemSize: (t, o) => {
|
|
@@ -287,7 +266,7 @@ exports.createContainerDriver = (e, t) => {
|
|
|
287
266
|
let o = 0;
|
|
288
267
|
const s = [];
|
|
289
268
|
a.forEach((t, r) => {
|
|
290
|
-
-1 !== t && (s.push(t), r < e && o++);
|
|
269
|
+
-1 !== t && (t && s.push(t), r < e && o++);
|
|
291
270
|
}), i = -1;
|
|
292
271
|
const r = n(s), c = r.length, f = c / 2 | 0, u = c % 2 == 0 ? (r[f - 1] + r[f]) / 2 : r[f], $ = l;
|
|
293
272
|
return ((l = u) - $) * t(e - o, 0);
|
|
@@ -295,43 +274,43 @@ exports.createContainerDriver = (e, t) => {
|
|
|
295
274
|
$snapshot: () => [ a.slice(), l ]
|
|
296
275
|
};
|
|
297
276
|
}, exports.createVirtualStore = ({$getRange: s, $findIndex: r, $getItemOffset: n, $getItemSize: l, $setItemSize: i, $isSizeEqual: c, $getTotalSize: f, $getLength: a, $setLength: u, $estimateDefaultSize: $}, p = 0) => {
|
|
298
|
-
let
|
|
299
|
-
const
|
|
300
|
-
const o = n(e) -
|
|
277
|
+
let g = !!$, h = !!p, m = 1, S = 0, v = 0, b = 0, w = 0, x = 0, z = 0, I = 0, k = 0, M = null, L = [ 0, h ? t(p - 1, 0) : -1 ], T = 0, y = !1;
|
|
278
|
+
const O = /* @__PURE__ */ new Set, R = () => b - v, _ = () => R() + x + w, q = (e, t) => {
|
|
279
|
+
const o = n(e) - x;
|
|
301
280
|
return t ? f() - o - l(e) : o;
|
|
302
|
-
},
|
|
303
|
-
e && (
|
|
281
|
+
}, C = e => {
|
|
282
|
+
e && (d() && 0 !== I || M && 1 === k ? x += e : w += e);
|
|
304
283
|
};
|
|
305
284
|
return {
|
|
306
285
|
$dispose: () => {
|
|
307
|
-
|
|
286
|
+
O.clear();
|
|
308
287
|
},
|
|
309
|
-
$getStateVersion: () =>
|
|
288
|
+
$getStateVersion: () => m,
|
|
310
289
|
$getRange: (o = 200) => {
|
|
311
|
-
if (!
|
|
290
|
+
if (!y || h) return L;
|
|
312
291
|
let r, n;
|
|
313
|
-
if (z) [r, n] =
|
|
314
|
-
let l = t(0, _()), i = l +
|
|
315
|
-
|
|
316
|
-
|
|
292
|
+
if (z) [r, n] = L; else {
|
|
293
|
+
let l = t(0, _()), i = l + S;
|
|
294
|
+
g || (o = t(0, o), 1 !== I && (l -= o), 2 !== I && (i += o)), [r, n] = L = s(t(0, l), t(0, i)),
|
|
295
|
+
M && (r = e(r, M[0]), n = t(n, M[1]));
|
|
317
296
|
}
|
|
318
297
|
return [ t(r, 0), e(n, a() - 1) ];
|
|
319
298
|
},
|
|
320
299
|
$findItemIndex: e => r(e - v),
|
|
321
300
|
$isUnmeasuredItem: c,
|
|
322
|
-
$getItemOffset:
|
|
301
|
+
$getItemOffset: q,
|
|
323
302
|
$getItemSize: l,
|
|
324
303
|
$getItemsLength: a,
|
|
325
|
-
$getScrollOffset: () =>
|
|
304
|
+
$getScrollOffset: () => b,
|
|
326
305
|
$isScrolling: () => 0 !== I,
|
|
327
|
-
$getViewportSize: () =>
|
|
306
|
+
$getViewportSize: () => S,
|
|
328
307
|
$getStartSpacerSize: () => v,
|
|
329
308
|
$getTotalSize: f,
|
|
330
|
-
|
|
309
|
+
u: () => (z = w, w = 0, [ z, 2 === k ]),
|
|
331
310
|
$subscribe: (e, t) => {
|
|
332
311
|
const o = [ e, t ];
|
|
333
|
-
return
|
|
334
|
-
|
|
312
|
+
return O.add(o), () => {
|
|
313
|
+
O.delete(o);
|
|
335
314
|
};
|
|
336
315
|
},
|
|
337
316
|
$update: (e, t) => {
|
|
@@ -339,46 +318,46 @@ exports.createContainerDriver = (e, t) => {
|
|
|
339
318
|
switch (e) {
|
|
340
319
|
case 1:
|
|
341
320
|
{
|
|
342
|
-
if (t ===
|
|
321
|
+
if (t === b && 0 === k) break;
|
|
343
322
|
const e = z;
|
|
344
323
|
z = 0;
|
|
345
|
-
const s = t -
|
|
346
|
-
e && r < o(e) + 1 || 0 !== k || (I = s < 0 ? 2 : 1), h && (h = !1),
|
|
324
|
+
const s = t - b, r = o(s);
|
|
325
|
+
e && r < o(e) + 1 || 0 !== k || (I = s < 0 ? 2 : 1), h && (h = !1), b = t, p = 4;
|
|
347
326
|
const n = R();
|
|
348
|
-
n >= -
|
|
327
|
+
n >= -S && n <= f() && (p += 1, a = r > S);
|
|
349
328
|
break;
|
|
350
329
|
}
|
|
351
330
|
|
|
352
331
|
case 2:
|
|
353
|
-
p = 8, 0 !== I && (n = !0, p += 1), I = 0, k = 0,
|
|
332
|
+
p = 8, 0 !== I && (n = !0, p += 1), I = 0, k = 0, M = null;
|
|
354
333
|
break;
|
|
355
334
|
|
|
356
335
|
case 3:
|
|
357
336
|
{
|
|
358
337
|
const e = t.filter(([e, t]) => !c(e, t));
|
|
359
338
|
if (!e.length) break;
|
|
360
|
-
|
|
339
|
+
C(e.reduce((e, [t, o]) => {
|
|
361
340
|
let s;
|
|
362
|
-
if (2 === k) s = !0; else if (
|
|
363
|
-
const e = R(), o =
|
|
364
|
-
s = 1 !== I && 0 === k ? o + r <= e : o < e && o + r < e +
|
|
341
|
+
if (2 === k) s = !0; else if (M && 1 === k) s = t < M[0]; else {
|
|
342
|
+
const e = R(), o = q(t), r = l(t);
|
|
343
|
+
s = 1 !== I && 0 === k ? o + r <= e : o < e && o + r < e + S;
|
|
365
344
|
}
|
|
366
345
|
return s && (e += o - l(t)), e;
|
|
367
346
|
}, 0));
|
|
368
347
|
for (const [t, o] of e) {
|
|
369
348
|
const e = l(t), s = i(t, o);
|
|
370
|
-
|
|
349
|
+
g && (T += s ? o : o - e);
|
|
371
350
|
}
|
|
372
|
-
|
|
351
|
+
g && S && T > S && (C($(r(_()))), g = !1), p = 3, a = !0;
|
|
373
352
|
break;
|
|
374
353
|
}
|
|
375
354
|
|
|
376
355
|
case 4:
|
|
377
|
-
|
|
356
|
+
S !== t && (S || (y = a = !0), S = t, p = 3);
|
|
378
357
|
break;
|
|
379
358
|
|
|
380
359
|
case 5:
|
|
381
|
-
t[1] ? (
|
|
360
|
+
t[1] ? (C(u(t[0], !0)), k = 2, p = 1) : (u(t[0]), p = 1);
|
|
382
361
|
break;
|
|
383
362
|
|
|
384
363
|
case 6:
|
|
@@ -390,95 +369,95 @@ exports.createContainerDriver = (e, t) => {
|
|
|
390
369
|
break;
|
|
391
370
|
|
|
392
371
|
case 8:
|
|
393
|
-
|
|
372
|
+
M = s(t, t + S), p = 1;
|
|
394
373
|
}
|
|
395
|
-
p && (
|
|
374
|
+
p && (m = 1 + (2147483647 & m), n && x && (w += x, x = 0), O.forEach(([e, t]) => {
|
|
396
375
|
p & e && t(a);
|
|
397
376
|
}));
|
|
398
377
|
}
|
|
399
378
|
};
|
|
400
379
|
}, exports.createWindowDriver = (e, t) => {
|
|
401
|
-
let o, s, r, n =
|
|
402
|
-
const
|
|
403
|
-
e =
|
|
404
|
-
const s = p(
|
|
380
|
+
let o, s, r, n = f(), l = !1;
|
|
381
|
+
const i = t ? "left" : "top", [a] = x(e, () => n[0], (e, t) => {
|
|
382
|
+
e = b(e, l);
|
|
383
|
+
const s = g(p(o));
|
|
405
384
|
t ? s.scroll({
|
|
406
|
-
[
|
|
385
|
+
[i]: e,
|
|
407
386
|
behavior: "smooth"
|
|
408
387
|
}) : s.scroll({
|
|
409
|
-
[
|
|
388
|
+
[i]: e
|
|
410
389
|
});
|
|
411
|
-
}),
|
|
390
|
+
}), u = t ? "width" : "height", d = /* @__PURE__ */ new WeakMap, h = v(t => {
|
|
412
391
|
const o = [];
|
|
413
392
|
for (const {target: e, contentRect: s} of t) {
|
|
414
393
|
if (!e.offsetParent) continue;
|
|
415
394
|
const t = d.get(e);
|
|
416
|
-
null != t && o.push([ t, s[
|
|
395
|
+
null != t && o.push([ t, s[u] ]);
|
|
417
396
|
}
|
|
418
397
|
o.length && e.$update(3, o);
|
|
419
|
-
}),
|
|
398
|
+
}), m = (e, t, o, s, r = 0) => {
|
|
420
399
|
const n = s ? "offsetLeft" : "offsetTop", i = r + (s && l ? o.innerWidth - e[n] - e.offsetWidth : e[n]), c = e.offsetParent;
|
|
421
|
-
return e !== t && c ?
|
|
400
|
+
return e !== t && c ? m(c, t, o, s, i) : i;
|
|
422
401
|
};
|
|
423
402
|
return {
|
|
424
|
-
$observe(
|
|
425
|
-
o =
|
|
426
|
-
const a = t ? "scrollX" : "scrollY",
|
|
403
|
+
$observe(f) {
|
|
404
|
+
o = f;
|
|
405
|
+
const a = t ? "scrollX" : "scrollY", u = p(f), d = g(u), h = () => {
|
|
427
406
|
e.$update(4, d[t ? "innerWidth" : "innerHeight"]);
|
|
428
407
|
};
|
|
429
|
-
d.addEventListener("resize", h),
|
|
408
|
+
d.addEventListener("resize", h), c(h), r = () => {
|
|
430
409
|
d.removeEventListener("resize", h);
|
|
431
|
-
}, t && (l = "rtl" === getComputedStyle(u
|
|
410
|
+
}, t && (l = "rtl" === getComputedStyle($(u)).direction), s = w(e, d, t, () => b(d[a], l), (t, o) => {
|
|
432
411
|
o ? d.scroll({
|
|
433
|
-
[
|
|
412
|
+
[i]: b(e.$getScrollOffset() + t, l)
|
|
434
413
|
}) : d.scrollBy({
|
|
435
|
-
[
|
|
414
|
+
[i]: b(t, l)
|
|
436
415
|
});
|
|
437
|
-
}, () =>
|
|
416
|
+
}, () => m(f, u.body, d, t)), n[1](!0);
|
|
438
417
|
},
|
|
439
418
|
$dispose() {
|
|
440
|
-
r && r(), h.l(), s && s.l(), o = void 0, n[1](!1), n =
|
|
419
|
+
r && r(), h.l(), s && s.l(), o = void 0, n[1](!1), n = f();
|
|
441
420
|
},
|
|
442
421
|
$observeItem: (e, t) => (d.set(e, t), h.t(e), () => {
|
|
443
422
|
d.delete(e), h.o(e);
|
|
444
423
|
}),
|
|
445
424
|
$isNegative: () => l,
|
|
446
|
-
$
|
|
447
|
-
$
|
|
448
|
-
s && s.
|
|
425
|
+
$scroll: a,
|
|
426
|
+
$effect() {
|
|
427
|
+
s && s.i();
|
|
449
428
|
},
|
|
450
429
|
$getBaseOffset() {
|
|
451
|
-
const e =
|
|
452
|
-
return
|
|
430
|
+
const e = p(o);
|
|
431
|
+
return m(o, e.body, g(e), t);
|
|
453
432
|
},
|
|
454
433
|
$getScrollbarSize() {
|
|
455
|
-
const s =
|
|
434
|
+
const s = $(p(o));
|
|
456
435
|
return e.$getViewportSize() - (t ? s.clientWidth : s.clientHeight);
|
|
457
436
|
}
|
|
458
437
|
};
|
|
459
438
|
}, exports.getScrollSize = e => t(e.$getTotalSize(), e.$getViewportSize()), exports.gridScrollBy = (e, t, o, s, r) => {
|
|
460
439
|
if (null != s) {
|
|
461
440
|
const o = s + t.$getScrollOffset();
|
|
462
|
-
e.$
|
|
441
|
+
e.$scrollY(() => o);
|
|
463
442
|
}
|
|
464
443
|
if (null != r) {
|
|
465
444
|
const t = r + o.$getScrollOffset();
|
|
466
|
-
e.$
|
|
445
|
+
e.$scrollX(() => t);
|
|
467
446
|
}
|
|
468
447
|
}, exports.gridScrollTo = (e, t, o) => {
|
|
469
|
-
null != t && e.$
|
|
448
|
+
null != t && e.$scrollY(() => t), null != o && e.$scrollX(() => o);
|
|
470
449
|
}, exports.gridScrollToIndex = (e, t, o, s, n) => {
|
|
471
450
|
if (null != s) {
|
|
472
451
|
const o = r(s, 0, t.$getItemsLength() - 1);
|
|
473
|
-
e.$
|
|
452
|
+
e.$scrollY(() => t.$getItemOffset(o));
|
|
474
453
|
}
|
|
475
454
|
if (null != n) {
|
|
476
455
|
const t = r(n, 0, o.$getItemsLength() - 1);
|
|
477
|
-
e.$
|
|
456
|
+
e.$scrollX(() => o.$getItemOffset(t));
|
|
478
457
|
}
|
|
479
|
-
}, exports.isBrowser =
|
|
480
|
-
|
|
481
|
-
}, exports.scrollTo =
|
|
458
|
+
}, exports.isBrowser = u, exports.microtask = c, exports.scrollBy = (e, t, o) => {
|
|
459
|
+
z(e, o + t.$getScrollOffset());
|
|
460
|
+
}, exports.scrollTo = z, exports.scrollToIndex = (e, t, o, {align: s, smooth: n, offset: l = 0} = {}) => {
|
|
482
461
|
if (o = r(o, 0, t.$getItemsLength() - 1), "nearest" === s) {
|
|
483
462
|
const e = t.$getItemOffset(o), r = t.$getScrollOffset();
|
|
484
463
|
if (e < r) s = "start"; else {
|
|
@@ -486,6 +465,6 @@ exports.createContainerDriver = (e, t) => {
|
|
|
486
465
|
s = "end";
|
|
487
466
|
}
|
|
488
467
|
}
|
|
489
|
-
e.$
|
|
468
|
+
e.$scroll(() => l + e.$getBaseOffset() + t.$getItemOffset(o) + ("end" === s ? t.$getItemSize(o) - (t.$getViewportSize() - e.$getScrollbarSize()) : "center" === s ? (t.$getItemSize(o) - (t.$getViewportSize() - e.$getScrollbarSize())) / 2 : 0), n);
|
|
490
469
|
}, exports.sort = n;
|
|
491
470
|
//# sourceMappingURL=index.cjs.map
|