virtua 0.53.3 → 0.53.4

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 (49) hide show
  1. package/README.md +37 -32
  2. package/lib/angular/VGrid.d.ts +1 -1
  3. package/lib/angular/VList.d.ts +1 -1
  4. package/lib/angular/VMasonry.d.ts +1 -1
  5. package/lib/angular/Virtualizer.d.ts +1 -1
  6. package/lib/angular/WindowVirtualizer.d.ts +1 -1
  7. package/lib/angular/index.js +586 -586
  8. package/lib/angular/index.js.map +1 -1
  9. package/lib/core/index.cjs +405 -404
  10. package/lib/core/index.cjs.map +1 -1
  11. package/lib/core/index.d.ts +1 -1
  12. package/lib/core/index.js +416 -415
  13. package/lib/core/index.js.map +1 -1
  14. package/lib/index.cjs +645 -645
  15. package/lib/index.cjs.map +1 -1
  16. package/lib/index.js +639 -639
  17. package/lib/index.js.map +1 -1
  18. package/lib/react/VGrid.d.ts +1 -1
  19. package/lib/react/VMasonry.d.ts +1 -1
  20. package/lib/react/Virtualizer.d.ts +1 -1
  21. package/lib/react/WindowVirtualizer.d.ts +1 -1
  22. package/lib/solid/VGrid.d.ts +1 -1
  23. package/lib/solid/VMasonry.d.ts +1 -1
  24. package/lib/solid/Virtualizer.d.ts +1 -1
  25. package/lib/solid/WindowVirtualizer.d.ts +1 -1
  26. package/lib/solid/index.cjs +672 -671
  27. package/lib/solid/index.cjs.map +1 -1
  28. package/lib/solid/index.js +671 -671
  29. package/lib/solid/index.js.map +1 -1
  30. package/lib/solid/index.jsx +165 -214
  31. package/lib/solid/index.jsx.map +1 -1
  32. package/lib/svelte/VGrid.svelte +15 -20
  33. package/lib/svelte/VGrid.type.d.ts +1 -1
  34. package/lib/svelte/VMasonry.svelte +10 -13
  35. package/lib/svelte/VMasonry.type.d.ts +1 -1
  36. package/lib/svelte/Virtualizer.svelte +8 -8
  37. package/lib/svelte/Virtualizer.type.d.ts +1 -1
  38. package/lib/svelte/WindowVirtualizer.svelte +5 -7
  39. package/lib/svelte/WindowVirtualizer.type.d.ts +1 -1
  40. package/lib/vue/VGrid.d.ts +1 -1
  41. package/lib/vue/VMasonry.d.ts +1 -1
  42. package/lib/vue/Virtualizer.d.ts +1 -1
  43. package/lib/vue/WindowVirtualizer.d.ts +1 -1
  44. package/lib/vue/index.cjs +800 -797
  45. package/lib/vue/index.cjs.map +1 -1
  46. package/lib/vue/index.js +771 -768
  47. package/lib/vue/index.js.map +1 -1
  48. package/package.json +1 -1
  49. package/lib/core/observer.d.ts +0 -1
package/lib/core/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var t, e = [], {min: n, max: o, abs: r, floor: s} = Math, l = (t, e, r) => n(r, o(e, t)), c = t => t.sort((t, e) => t - e), i = setTimeout, f = clearTimeout, u = "function" == typeof queueMicrotask ? queueMicrotask : t => {
1
+ var t, e = [], {min: n, max: o, abs: s, floor: r} = Math, l = (t, e, s) => n(s, o(e, t)), c = t => t.sort((t, e) => t - e), i = setTimeout, f = clearTimeout, u = "function" == typeof queueMicrotask ? queueMicrotask : t => {
2
2
  Promise.resolve().then(t);
3
3
  }, a = () => {
4
4
  let t;
@@ -6,15 +6,25 @@ var t, e = [], {min: n, max: o, abs: r, floor: s} = Math, l = (t, e, r) => n(r,
6
6
  t = e;
7
7
  }), t ];
8
8
  }, $ = "undefined" != typeof window, g = t => t.ownerDocument, d = t => t.defaultView, p = () => (null == t && (t = /iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0),
9
- t), m = 5, w = 6, h = 9, b = 1, S = 2, v = 4, y = 8, I = t => o(t.$getTotalSize(), t.$getViewportSize()), x = ({$getRange: t, $getItemOffset: e, $getItemSize: s, $isSizeEqual: l, $getTotalSize: c, $getLength: i, $setLength: f, $isEstimating: u, $resize: a}, $ = 0) => {
10
- let g = !!$, d = 1, m = 0, w = 0, h = 0, b = 0, S = 0, v = 0, y = 0, I = 0, x = null, z = [ 0, g ? o($ - 1, 0) : -1 ], k = !1;
11
- const T = /* @__PURE__ */ new Set, L = () => h - w, M = () => L() + S + b, R = t => e(t) - S, O = t => {
12
- if (2 === I) return !0;
13
- if (x && 1 === I) return t < x[0];
14
- const e = L(), n = R(t), o = s(t);
15
- return 1 !== y && 0 === I ? n + o <= e : n < e && n + o < e + m;
16
- }, E = t => {
17
- t && (p() && 0 !== y || x && 1 === I ? S += t : b += t);
9
+ t), m = 5, w = 7, h = 1, S = 2, b = 4, v = 8, I = t => o(t.$getTotalSize(), t.$getViewportSize()), y = (t, e, n, o) => {
10
+ const s = t.t(), r = e.$getItemOffset(s);
11
+ e.$relayout(n, o) && t.$update(6, e.$getItemOffset(s) - r);
12
+ }, x = ({$getRange: t, $findIndex: e, $getItemOffset: r, $getItemSize: l, $setItemSizes: c, $getTotalSize: i, $getLength: f, $setLength: u, $isEstimating: a}, $ = 0) => {
13
+ let g = !!$, d = 1, m = 0, w = 0, h = 0, S = 0, b = 0, v = 0, I = 0, y = 0, x = null, z = [ 0, g ? o($ - 1, 0) : -1 ], k = !1;
14
+ const T = /* @__PURE__ */ new Set, M = () => h - w, L = () => M() + b + S, R = (t, e) => {
15
+ const n = r(t), o = l(t);
16
+ return 1 !== I && 0 === y ? n + o <= e : n < e && n + o < e + m;
17
+ }, _ = t => {
18
+ t && (p() && 0 !== I || x && 1 === y ? b += t : S += t);
19
+ }, O = () => {
20
+ const t = f();
21
+ if (2 === y) return t;
22
+ if (x && 1 === y) return n(x[0], t);
23
+ const o = L();
24
+ let s = e(o);
25
+ for (;s > 0 && !R(s - 1, o); ) s--;
26
+ for (;s < t && R(s, o); ) s++;
27
+ return s;
18
28
  };
19
29
  return {
20
30
  $dispose: () => {
@@ -23,83 +33,85 @@ t), m = 5, w = 6, h = 9, b = 1, S = 2, v = 4, y = 8, I = t => o(t.$getTotalSize(
23
33
  $getStateVersion: () => d,
24
34
  $getRange: (e = 200) => {
25
35
  if (!k || g) return z;
26
- let r, s;
27
- if (v) [r, s] = z; else {
28
- let l = o(0, M()), c = l + m;
29
- u() || (e = o(0, e), 1 !== y && (l -= e), 2 !== y && (c += e)), [r, s] = z = t(o(0, l), o(0, c)),
30
- x && (r = n(r, x[0]), s = o(s, x[1]));
36
+ let s, r;
37
+ if (v) [s, r] = z; else {
38
+ let l = o(0, L()), c = l + m;
39
+ a() || (e = o(0, e), 1 !== I && (l -= e), 2 !== I && (c += e)), [s, r] = z = t(o(0, l), o(0, c)),
40
+ x && (s = n(s, x[0]), r = o(r, x[1]));
31
41
  }
32
- return [ o(r, 0), n(s, i() - 1) ];
42
+ return [ o(s, 0), n(r, f() - 1) ];
33
43
  },
34
- $isUnmeasuredItem: l,
35
- $getItemOffset: R,
36
- $getItemSize: s,
37
- $getItemsLength: i,
44
+ t: O,
45
+ $getItemOffset: t => r(t) - b,
38
46
  $getScrollOffset: () => h,
39
- $getVisibleOffset: M,
40
- $isScrolling: () => 0 !== y,
47
+ $isScrolling: () => 0 !== I,
41
48
  $getViewportSize: () => m,
42
49
  $getStartSpacerSize: () => w,
43
- $getTotalSize: c,
44
- t: () => (v = b, b = 0, [ v, 2 === I ]),
50
+ $getTotalSize: i,
51
+ o: () => (v = S, S = 0, [ v, 2 === y ]),
45
52
  $subscribe: (t, e) => {
46
53
  const n = [ t, e ];
47
54
  return T.add(n), () => {
48
55
  T.delete(n);
49
56
  };
50
57
  },
51
- $update: (e, n) => {
52
- let o, s, i = 0;
58
+ $update: (e, n, o) => {
59
+ let l, a, $ = 0;
53
60
  switch (e) {
54
61
  case 1:
55
62
  {
56
- if (n === h && 0 === I) break;
63
+ if (n === h && 0 === y) break;
57
64
  const t = v;
58
65
  v = 0;
59
- const e = n - h, o = r(e);
60
- t && o < r(t) + 1 || 0 !== I || (y = e < 0 ? 2 : 1), g && (g = !1), h = n, i = 4;
61
- const l = L();
62
- l >= -m && l <= c() && (i += 1, s = o > m);
66
+ const e = n - h, o = s(e);
67
+ t && o < s(t) + 1 || 0 !== y || (I = e < 0 ? 2 : 1), g && (g = !1), h = n, $ = 4;
68
+ const r = M();
69
+ r >= -m && r <= i() && ($ += 1, a = o > m);
63
70
  break;
64
71
  }
65
72
 
66
73
  case 2:
67
- i = 8, 0 !== y && (o = !0, i += 1), y = 0, I = 0, x = null;
74
+ $ = 8, 0 !== I && (l = !0, $ += 1), I = 0, y = 0, x = null;
68
75
  break;
69
76
 
70
77
  case 3:
71
- {
72
- const t = n.filter(([t, e]) => !l(t, e));
73
- if (!t.length) break;
74
- E(a(t, O, M(), m)), i = 3, s = !0;
75
- break;
78
+ if (n.length) {
79
+ const t = O(), e = r(t);
80
+ c(n, m), _(r(t) - e), $ = 3, a = !0;
76
81
  }
82
+ break;
77
83
 
78
84
  case 4:
79
- m !== n && (m || (k = s = !0), m = n, i = 3);
85
+ m !== n && (m || (k = a = !0), m = n, $ = 3);
80
86
  break;
81
87
 
82
88
  case 5:
83
- n[1] ? (E(f(n[0], !0)), I = 2, i = 1) : (f(n[0]), i = 1);
89
+ if (n !== f()) {
90
+ if (o) {
91
+ const t = i();
92
+ u(n, !0), _(i() - t), y = 2;
93
+ } else u(n);
94
+ $ = 1;
95
+ }
84
96
  break;
85
97
 
86
98
  case 6:
87
- w = n;
99
+ _(n), $ = 1;
88
100
  break;
89
101
 
90
102
  case 7:
91
- I = 1;
103
+ w = n;
92
104
  break;
93
105
 
94
- case 9:
95
- null != n && (E(n), i = 1);
106
+ case 8:
107
+ y = 1;
96
108
  break;
97
109
 
98
- case 8:
99
- x = t(n, n + m), i = 1;
110
+ case 9:
111
+ x = t(n, n + m), $ = 1;
100
112
  }
101
- i && (d = 1 + (2147483647 & d), o && S && (b += S, S = 0), T.forEach(([t, e]) => {
102
- i & t && e(s);
113
+ $ && (d = 1 + (2147483647 & d), l && b && (S += b, b = 0), T.forEach(([t, e]) => {
114
+ $ & t && e(a);
103
115
  }));
104
116
  }
105
117
  };
@@ -107,111 +119,106 @@ t), m = 5, w = 6, h = 9, b = 1, S = 2, v = 4, y = 8, I = t => o(t.$getTotalSize(
107
119
  const o = n ? "unshift" : "push";
108
120
  for (let n = 0; n < e; n++) t[o](-1);
109
121
  return t;
110
- }, k = (t, e, n, o = 0, r = e - 1) => {
122
+ }, k = (t, e, n, o = 0, s = e - 1) => {
111
123
  let c = o;
112
- for (;o <= r; ) {
113
- const e = s((o + r) / 2);
114
- t(e) <= n ? (c = e, o = e + 1) : r = e - 1;
124
+ for (;o <= s; ) {
125
+ const e = r((o + s) / 2);
126
+ t(e) <= n ? (c = e, o = e + 1) : s = e - 1;
115
127
  }
116
128
  return l(c, 0, e - 1);
117
- }, T = (t, e, r) => {
118
- let s = r && r[1] || e || 40, l = -1, i = 0, f = !e, u = 0;
119
- const a = r && r[0], $ = a ? z(a.slice(0, n(t, a.length)), o(0, t - a.length)) : z([], t), g = z([], t + 1), d = t => {
120
- const e = $[t];
129
+ }, T = (t, e, o) => {
130
+ let s = o && o[1] || e || 40, r = -1, l = 0, i = !e, f = 0;
131
+ const u = o ? o[0].slice(0, t) : [];
132
+ z(u, t - u.length);
133
+ const a = z([], t + 1), $ = t => {
134
+ const e = u[t];
121
135
  return -1 === e ? s : e;
122
- }, p = e => {
136
+ }, g = e => {
123
137
  if (!t) return 0;
124
- if (l >= e) return g[e];
125
- l < 0 && (g[0] = 0, l = 0);
126
- let n = l, o = g[n];
127
- for (;n < e; ) o += d(n), g[++n] = o;
128
- return l = e, o;
138
+ if (r >= e) return a[e];
139
+ r < 0 && (a[0] = 0, r = 0);
140
+ let n = r, o = a[n];
141
+ for (;n < e; ) o += $(n), a[++n] = o;
142
+ return r = e, o;
129
143
  };
130
144
  return {
131
145
  $getRange: (e, o) => {
132
- let r, s;
133
- return u = n(u, t - 1), p(u) <= e ? (s = k(p, t, o, u), r = k(p, t, e, u, s)) : (r = k(p, t, e, void 0, u),
134
- s = k(p, t, o, r)), u = r, [ r, s ];
146
+ let s, r;
147
+ return f = n(f, t - 1), g(f) <= e ? (r = k(g, t, o, f), s = k(g, t, e, f, r)) : (s = k(g, t, e, void 0, f),
148
+ r = k(g, t, o, s)), f = s, [ s, r ];
135
149
  },
136
- $findIndex: e => k(p, t, e),
137
- $getItemOffset: p,
138
- $getItemSize: d,
139
- $isSizeEqual: (t, e = -1) => $[t] === e,
140
- $resize: (e, r, u, a) => {
141
- let g = e.reduce((t, [e, n]) => r(e) ? t + (n - d(e)) : t, 0);
142
- for (const [t, o] of e) i += -1 === $[t] ? o : o - d(t), $[t] = o, l = n(t, l);
143
- if (f && a && i > a) {
144
- let e = 0;
145
- const n = k(p, t, u + g), r = [];
146
- $.forEach((t, o) => {
147
- -1 !== t && (t && r.push(t), o < n && e++);
148
- }), l = -1, c(r);
149
- const i = r.length, a = i / 2 | 0, d = i % 2 == 0 ? (r[a - 1] + r[a]) / 2 : r[a], m = s;
150
- g += ((s = d) - m) * o(n - e, 0), f = !1;
150
+ $findIndex: e => k(g, t, e),
151
+ $getItemOffset: g,
152
+ $getItemSize: $,
153
+ $isSizeEqual: (t, e = -1) => u[t] === e,
154
+ $setItemSizes: (t, e) => {
155
+ for (const [e, o] of t) l += -1 === u[e] ? o : o - $(e), u[e] = o, r = n(e, r);
156
+ if (i && e && l > e) {
157
+ const t = [];
158
+ u.forEach(e => {
159
+ -1 !== e && e && t.push(e);
160
+ }), r = -1, c(t);
161
+ const e = t.length, n = e / 2 | 0;
162
+ s = e % 2 == 0 ? (t[n - 1] + t[n]) / 2 : t[n], i = !1;
151
163
  }
152
- return g;
153
164
  },
154
- $getTotalSize: () => p(t),
165
+ $getTotalSize: () => g(t),
155
166
  $getLength: () => t,
156
167
  $setLength: (e, o) => {
157
- const r = e - t;
158
- return l = o ? -1 : n(e - 1, l), t = e, r > 0 ? (z(g, r), z($, r, o), s * r) : (g.splice(r),
159
- (o ? $.splice(0, -r) : $.splice(r)).reduce((t, e) => t - (-1 === e ? s : e), 0));
168
+ const s = e - t;
169
+ r = o ? -1 : n(e - 1, r), t = e, s > 0 ? (z(a, s), z(u, s, o)) : (a.splice(s), o ? u.splice(0, -s) : u.splice(s));
160
170
  },
161
- $isEstimating: () => f,
162
- $snapshot: () => [ $.slice(), s ]
171
+ $isEstimating: () => i,
172
+ $snapshot: () => [ u.slice(), s ]
163
173
  };
164
- }, L = t => "number" == typeof t ? t : t.length, M = (t, e) => "number" == typeof t ? e : t[e], R = (t, e, r = 0) => {
165
- let i = L(t);
174
+ }, M = t => "number" == typeof t ? t : t.length, L = (t, e) => "number" == typeof t ? e : t[e], R = (t, e, s = 0) => {
175
+ let i = M(t);
166
176
  const f = "number" == typeof e, u = "auto" === e;
167
- let a = (f ? e : 40) + r, $ = -1, g = 0, d = u, p = 0, m = 0, w = null;
168
- const h = [], b = [], S = [], v = t => u || !!S[t], y = () => {
177
+ let a = (f ? e : 40) + s, $ = -1, g = 0, d = u, p = 0, m = 0, w = null;
178
+ const h = [], S = [], b = [], v = t => u || !!b[t], I = () => {
169
179
  h.length || z(h, i);
170
- }, I = t => {
180
+ }, y = t => {
171
181
  const e = h[t];
172
182
  return -1 === e ? a : e;
173
183
  }, x = t => {
174
184
  if (!i) return 0;
175
185
  if (!h.length) return t * a;
176
- if ($ >= t) return b[t];
177
- $ < 0 && (b[0] = 0, $ = 0);
178
- let e = $, n = b[e];
179
- for (;e < t; ) n += I(e), b[++e] = n;
186
+ if ($ >= t) return S[t];
187
+ $ < 0 && (S[0] = 0, $ = 0);
188
+ let e = $, n = S[e];
189
+ for (;e < t; ) n += y(e), S[++e] = n;
180
190
  return $ = t, n;
181
191
  }, T = (t, e) => {
182
192
  h[t] = e, $ = n(t, $);
183
- }, M = t => h.length ? k(x, i, t) : a ? l(s(t / a), 0, i - 1) : 0, R = () => n(p, i), O = () => o(i - m, R()), E = t => (h.length ? I(t) : a) - r;
193
+ }, L = t => h.length ? k(x, i, t) : a ? l(r(t / a), 0, i - 1) : 0, R = () => n(p, i), _ = () => o(i - m, R()), O = t => (h.length ? y(t) : a) - s;
184
194
  return {
185
195
  $getRange: (t, e) => {
186
- const n = x(R()), s = x(i) - x(O()), l = t + (n ? n - r : 0);
187
- return [ M(l), M(o(l, e - (s ? s - r : 0))) ];
196
+ const n = x(R()), r = x(i) - x(_()), l = t + (n ? n - s : 0);
197
+ return [ L(l), L(o(l, e - (r ? r - s : 0))) ];
188
198
  },
189
- $findIndex: M,
199
+ $findIndex: L,
190
200
  $getItemOffset: x,
191
- $getItemSize: E,
192
- $resize: (t, e, n, s) => {
193
- let l = t.reduce((t, [n, o]) => v(n) && e(n) ? t + (o - E(n)) : t, 0);
194
- for (const [e, n] of t) v(e) && (y(), g += -1 === h[e] ? n : n - E(e), T(e, n + r));
195
- if (d && s && g > s) {
196
- let t = 0;
197
- const e = M(n + l), r = [];
198
- h.forEach((n, o) => {
199
- -1 !== n && (n && r.push(n), o < e && t++);
200
- }), $ = -1, c(r);
201
- const s = r.length, i = s / 2 | 0, f = s % 2 == 0 ? (r[i - 1] + r[i]) / 2 : r[i], u = a;
202
- l += ((a = f) - u) * o(e - t, 0), d = !1;
201
+ $getItemSize: O,
202
+ $setItemSizes: (t, e) => {
203
+ for (const [e, n] of t) v(e) && (I(), g += -1 === h[e] ? n : n - O(e), T(e, n + s));
204
+ if (d && e && g > e) {
205
+ const t = [];
206
+ h.forEach(e => {
207
+ -1 !== e && e && t.push(e);
208
+ }), $ = -1, c(t);
209
+ const e = t.length, n = e / 2 | 0;
210
+ a = e % 2 == 0 ? (t[n - 1] + t[n]) / 2 : t[n], d = !1;
203
211
  }
204
- return l;
205
212
  },
206
213
  $isSizeEqual: (t, e = -1) => {
207
214
  const n = h.length ? h[t] : -1;
208
- return -1 === e ? v(t) && -1 === n : n === e + r;
215
+ return -1 === e ? v(t) && -1 === n : n === e + s;
209
216
  },
210
- $getTotalSize: () => i ? x(i) - r : 0,
217
+ $getTotalSize: () => i ? x(i) - s : 0,
211
218
  $getLength: () => i,
212
219
  $setLength: t => {
213
220
  const e = t - i;
214
- return $ = n(t - 1, $), i = t, h.length && (e > 0 ? z(h, e) : h.splice(e)), 0;
221
+ $ = n(t - 1, $), i = t, h.length && (e > 0 ? z(h, e) : h.splice(e));
215
222
  },
216
223
  $isEstimating: () => d,
217
224
  $isMeasurable: v,
@@ -219,32 +226,29 @@ t), m = 5, w = 6, h = 9, b = 1, S = 2, v = 4, y = 8, I = t => o(t.$getTotalSize(
219
226
  p = t, m = e;
220
227
  },
221
228
  $getPinnedStart: R,
222
- $getTrailStart: O,
229
+ $getTrailStart: _,
223
230
  $getSizes: (t, e) => "number" == typeof e ? f ? e : null : f || u || "auto" === e ? null : t.map(t => null != t ? t[e] : null),
224
- $relayout: (t, e) => {
225
- if (null == t) return;
231
+ $relayout: t => {
232
+ if (null == t) return !1;
226
233
  if ("number" == typeof t) {
227
- const n = t + r;
228
- if (n === a) return;
229
- const o = M(e) * (n - a);
230
- return a = n, o;
234
+ const e = t + s;
235
+ return e !== a && (a = e, !0);
231
236
  }
232
- if (t === w && i === S.length) return;
233
- w = t, S.length = i, y();
234
- const n = M(e), o = x(n);
235
- let s;
236
- for (let e = 0; e < i; e++) {
237
- const n = t[e], o = "number" != typeof n;
238
- if (!o || !S[e]) {
239
- S[e] = o;
240
- const t = o ? -1 : n + r;
241
- h[e] !== t && (T(e, t), s = !0);
237
+ if (t === w && i === b.length) return !1;
238
+ w = t, b.length = i, I();
239
+ let e = !1;
240
+ for (let n = 0; n < i; n++) {
241
+ const o = t[n], r = "number" != typeof o;
242
+ if (!r || !b[n]) {
243
+ b[n] = r;
244
+ const t = r ? -1 : o + s;
245
+ h[n] !== t && (T(n, t), e = !0);
242
246
  }
243
247
  }
244
- return s ? x(n) - o : void 0;
248
+ return e;
245
249
  }
246
250
  };
247
- }, O = /*#__PURE__*/ new WeakMap, E = (t = e) => {
251
+ }, _ = /*#__PURE__*/ new WeakMap, O = (t = e) => {
248
252
  const n = /* @__PURE__ */ new Map;
249
253
  for (const e of t) {
250
254
  const t = e.rowIndex + (e.rowSpan || 1);
@@ -254,481 +258,478 @@ t), m = 5, w = 6, h = 9, b = 1, S = 2, v = 4, y = 8, I = t => o(t.$getTotalSize(
254
258
  }
255
259
  }
256
260
  return n;
257
- }, _ = (t, e, n) => {
261
+ }, E = (t, e, n) => {
258
262
  const o = [];
259
- for (const r of t) r >= e && r < n && o.push(r);
263
+ for (const s of t) s >= e && s < n && o.push(s);
260
264
  return c(o);
261
- }, q = (t, e, n) => {
265
+ }, C = (t, e, n) => {
262
266
  if (e >= n) return -1;
263
- let o = 0, r = t.length;
264
- for (;o < r; ) {
265
- const n = o + r >> 1;
266
- t[n] <= e ? o = n + 1 : r = n;
267
+ let o = 0, s = t.length;
268
+ for (;o < s; ) {
269
+ const n = o + s >> 1;
270
+ t[n] <= e ? o = n + 1 : s = n;
267
271
  }
268
272
  return o - 1;
269
- }, C = (t, e, n, o, r) => {
270
- const s = e.length;
271
- for (;n < s && e[n] < o; n++) {
273
+ }, q = (t, e, n, o, s) => {
274
+ const r = e.length;
275
+ for (;n < r && e[n] < o; n++) {
272
276
  const o = e[n];
273
- o > r && (t.push(o), r = o);
277
+ o > s && (t.push(o), s = o);
274
278
  }
275
279
  return n;
276
- }, P = (t, e, n, o, r, s) => {
280
+ }, A = (t, e, n, o, s, r) => {
277
281
  const l = [];
278
282
  for (let t = 0; t < n; t++) l.push(t);
279
- const c = C(l, t, 0, o, n - 1);
280
- for (let t = o; t <= r; t++) l.push(t);
281
- C(l, t, c, s, r);
282
- for (let t = s; t < e; t++) l.push(t);
283
+ const c = q(l, t, 0, o, n - 1);
284
+ for (let t = o; t <= s; t++) l.push(t);
285
+ q(l, t, c, r, s);
286
+ for (let t = r; t < e; t++) l.push(t);
283
287
  return l;
284
- }, W = (t, e) => n(t.rowIndex + (t.rowSpan || 1), e), A = (t, e) => n(t.colIndex + (t.colSpan || 1), e), V = (t, e, o, r, s, l) => {
285
- const c = e.length, i = r.length;
288
+ }, P = (t, e) => n(t.rowIndex + (t.rowSpan || 1), e), W = (t, e) => n(t.colIndex + (t.colSpan || 1), e), B = (t, e, o, s, r, l) => {
289
+ const c = e.length, i = s.length;
286
290
  let f = "[l0]", u = 0, a = 0, $ = 0;
287
291
  for (;u < l; ) {
288
- for (;$ < i && r[$] <= u; ) $++;
292
+ for (;$ < i && s[$] <= u; ) $++;
289
293
  const g = a < c ? e[a] : l;
290
294
  let d, p;
291
295
  if (g === u) {
292
296
  d = u + 1;
293
297
  const e = o[a];
294
- p = null == e ? t.$getItemSize(u) + "px" : e ? s : "minmax(" + t.$getItemSize(u) + "px,auto)",
298
+ p = null == e ? t.$getItemSize(u) + "px" : e ? r : "minmax(" + t.$getItemSize(u) + "px,auto)",
295
299
  a++;
296
- } else d = n(g, $ < i ? r[$] : l), p = "minmax(" + (t.$getItemOffset(d - 1) + t.$getItemSize(d - 1) - t.$getItemOffset(u)) + "px,auto)";
300
+ } else d = n(g, $ < i ? s[$] : l), p = "minmax(" + (t.$getItemOffset(d - 1) + t.$getItemSize(d - 1) - t.$getItemOffset(u)) + "px,auto)";
297
301
  f += " " + p + " [l" + d + "]", u = d;
298
302
  }
299
303
  return f;
300
- }, B = t => {
304
+ }, J = t => {
301
305
  let e = "";
302
306
  for (const n in t) e += n.replace(/[A-Z]/g, t => "-" + t.toLowerCase()) + ":" + t[n] + ";";
303
307
  return e;
304
- }, J = (t, r, [s, i], [f, u], a, $ = e, g = e, d) => {
305
- const p = t.$getLength(), m = r.$getLength(), w = t.$getPinnedStart(), h = t.$getTrailStart(), b = r.$getPinnedStart(), S = r.$getTrailStart();
306
- s = l(s, w, h), i = n(i, h - 1), f = l(f, b, S), u = n(u, S - 1);
307
- const v = _($, w, h), y = o(b - 1, 0), I = [], x = [], z = [];
308
- for (const t of g) t.rowIndex < p && t.colIndex < m && (z.push(t), I.push(t.rowIndex));
309
- const k = z.length, T = q(v, s, h), L = T < 0 ? -1 : v[T];
310
- L >= 0 && I.push(L);
311
- const M = P(c(I), p, w, s, i, h);
312
- for (let t = 0; t < M.length; t++) for (const r of a.get(M[t]) || e) {
313
- const {rowIndex: e, colIndex: l} = r, c = W(r, p), a = A(r, m);
314
- if ((t < 1 || M[t - 1] < e) && l < m && (c - e > 1 || a - l > 1)) {
315
- let t = (e < w || o(e, s) < n(c, i + 1) || h < c || L >= e && L < c) && (l < b || o(l, f) < n(a, u + 1) || S < a);
308
+ }, V = (t, s, [r, i], [f, u], a, $ = e, g = e, d) => {
309
+ const p = t.$getLength(), m = s.$getLength(), w = t.$getPinnedStart(), h = t.$getTrailStart(), S = s.$getPinnedStart(), b = s.$getTrailStart();
310
+ r = l(r, w, h), i = n(i, h - 1), f = l(f, S, b), u = n(u, b - 1);
311
+ const v = E($, w, h), I = o(S - 1, 0), y = [], x = [], z = [];
312
+ for (const t of g) t.rowIndex < p && t.colIndex < m && (z.push(t), y.push(t.rowIndex));
313
+ const k = z.length, T = C(v, r, h), M = T < 0 ? -1 : v[T];
314
+ M >= 0 && y.push(M);
315
+ const L = A(c(y), p, w, r, i, h);
316
+ for (let t = 0; t < L.length; t++) for (const s of a.get(L[t]) || e) {
317
+ const {rowIndex: e, colIndex: l} = s, c = P(s, p), a = W(s, m);
318
+ if ((t < 1 || L[t - 1] < e) && l < m && (c - e > 1 || a - l > 1)) {
319
+ let t = (e < w || o(e, r) < n(c, i + 1) || h < c || M >= e && M < c) && (l < S || o(l, f) < n(a, u + 1) || b < a);
316
320
  for (let n = 0; !t && n < k; n++) {
317
321
  const o = z[n];
318
322
  t = o.rowIndex >= e && o.rowIndex < c && o.colIndex >= l && o.colIndex < a;
319
323
  }
320
- t && z.push(r);
324
+ t && z.push(s);
321
325
  }
322
326
  }
323
327
  for (const {rowIndex: t, colIndex: e} of z) {
324
- const n = q(v, t, h);
325
- I.push(t), n >= 0 && I.push(v[n]), x.push(e);
328
+ const n = C(v, t, h);
329
+ y.push(t), n >= 0 && y.push(v[n]), x.push(e);
326
330
  }
327
- c(I), c(x);
328
- const R = P(I, p, w, s, i, h), E = P(x, m, b, f, u, S), C = R.length, B = E.length, J = /* @__PURE__ */ new Map, Y = [], D = [];
331
+ c(y), c(x);
332
+ const R = A(y, p, w, r, i, h), O = A(x, m, S, f, u, b), q = R.length, J = O.length, V = /* @__PURE__ */ new Map, Y = [], D = [];
329
333
  for (const t of z) {
330
- const e = W(t, p), n = A(t, m);
334
+ const e = P(t, p), n = W(t, m);
331
335
  Y.push(e), D.push(n);
332
- const o = E.indexOf(t.colIndex);
333
- for (let r = R.indexOf(t.rowIndex); r < C && R[r] < e; r++) {
334
- const e = R[r] * m;
335
- for (let r = o; r < B && E[r] < n; r++) J.set(e + E[r], t);
336
+ const o = O.indexOf(t.colIndex);
337
+ for (let s = R.indexOf(t.rowIndex); s < q && R[s] < e; s++) {
338
+ const e = R[s] * m;
339
+ for (let s = o; s < J && O[s] < n; s++) V.set(e + O[s], t);
336
340
  }
337
341
  }
338
342
  const G = [];
339
- for (const t of E) G.push(!r.$isMeasurable(t) && null);
340
- const U = [], Z = t.$getItemOffset(w), j = [];
341
- let F = j;
342
- const H = O.get(t), K = /* @__PURE__ */ new Map;
343
+ for (const t of O) G.push(!s.$isMeasurable(t) && null);
344
+ const Z = [], j = t.$getItemOffset(w), F = [];
345
+ let H = F;
346
+ const K = _.get(t), N = /* @__PURE__ */ new Map;
343
347
  for (const e of R) {
344
- const n = e < w, l = e >= h, c = q(v, e, h), a = n ? 0 : l ? h : c < 0 ? -1 : v[c];
348
+ const n = e < w, l = e >= h, c = C(v, e, h), a = n ? 0 : l ? h : c < 0 ? -1 : v[c];
345
349
  if (e === a) {
346
350
  const t = n ? w : l ? p : c + 1 < v.length ? v[c + 1] : h;
347
351
  Y.push(t);
348
352
  const e = [];
349
- j.push({
353
+ F.push({
350
354
  $key: n ? -1 : l ? -2 : -3 - a,
351
355
  $rows: e,
352
356
  $style: X(a, t, n || l ? 0 : null, l ? "bottom" : "top", 4)
353
- }), F = e;
354
- } else a < 0 && (F = j);
355
- const $ = c >= 0 && e === a, g = n || l || e === L || e >= s && e <= i, I = $ ? Z : null, x = e * m, z = H && H.get(e), k = z && z.$cells, T = [];
356
- let M = 0, R = !t.$isMeasurable(e) && null, O = e + 1, _ = !1;
357
- for (let t = 0; t < B; t++) {
358
- const s = E[t], l = s < b, c = s >= S, i = l || c || s >= f && s <= u, a = J.get(x + s);
359
- if (a ? a.rowIndex === e && a.colIndex === s : g && i) {
360
- const i = a ? W(a, p) : e + 1, f = a ? A(a, m) : s + 1, u = i - e, g = f - s, w = u > 1, h = g > 1, b = w || h;
361
- let S, v;
362
- O = o(O, i);
363
- const I = l ? r.$getItemOffset(s) : null, x = c ? r.$getItemOffset(m) - r.$getItemOffset(f) : null;
364
- !1 !== R || w || (S = e, R = !0), !1 !== G[t] || h || (v = s, G[t] = !0);
365
- const z = n ? "columnheader" : s === y && (l || $) ? "rowheader" : "cell", L = b ? u : void 0, E = b ? g : void 0, q = "cell" !== z && d && d.rowIndex === e && d.colIndex === s ? d.order : void 0;
366
- let C;
357
+ }), H = e;
358
+ } else a < 0 && (H = F);
359
+ const $ = c >= 0 && e === a, g = n || l || e === M || e >= r && e <= i, y = $ ? j : null, x = e * m, z = K && K.get(e), k = z && z.$cells, T = [];
360
+ let L = 0, R = !t.$isMeasurable(e) && null, _ = e + 1, E = !1;
361
+ for (let t = 0; t < J; t++) {
362
+ const r = O[t], l = r < S, c = r >= b, i = l || c || r >= f && r <= u, a = V.get(x + r);
363
+ if (a ? a.rowIndex === e && a.colIndex === r : g && i) {
364
+ const i = a ? P(a, p) : e + 1, f = a ? W(a, m) : r + 1, u = i - e, g = f - r, w = u > 1, h = g > 1, S = w || h;
365
+ let b, v;
366
+ _ = o(_, i);
367
+ const y = l ? s.$getItemOffset(r) : null, x = c ? s.$getItemOffset(m) - s.$getItemOffset(f) : null;
368
+ !1 !== R || w || (b = e, R = !0), !1 !== G[t] || h || (v = r, G[t] = !0);
369
+ const z = n ? "columnheader" : r === I && (l || $) ? "rowheader" : "cell", M = S ? u : void 0, O = S ? g : void 0, C = "cell" !== z && d && d.rowIndex === e && d.colIndex === r ? d.order : void 0;
370
+ let q;
367
371
  if (k) {
368
372
  const t = k.length;
369
- for (;M < t && k[M].$col < s; ) M++;
370
- M < t && k[M].$col === s && (C = k[M]);
373
+ for (;L < t && k[L].$col < r; ) L++;
374
+ L < t && k[L].$col === r && (q = k[L]);
371
375
  }
372
- if (!C || C.$rowSpan !== L || C.$colSpan !== E || C.$start !== I || C.$end !== x || C.$measureRow !== S || C.$measureCol !== v || C.$role !== z || C.$sort !== q) {
373
- let t = "1/l" + s;
374
- b && (t += "/l" + i + "/l" + f);
376
+ if (!q || q.$rowSpan !== M || q.$colSpan !== O || q.$start !== y || q.$end !== x || q.$measureRow !== b || q.$measureCol !== v || q.$role !== z || q.$sort !== C) {
377
+ let t = "1/l" + r;
378
+ S && (t += "/l" + i + "/l" + f);
375
379
  const e = {
376
380
  contain: "layout style",
377
381
  display: "grid",
378
382
  gridArea: t
379
383
  };
380
384
  w && (e.height = "0px", e.minHeight = "100%", e.zIndex = 1), h && (e.width = "0px",
381
- e.minWidth = "100%"), (l || c) && (e[l ? "insetInlineStart" : "insetInlineEnd"] = (l ? I : x) + "px",
382
- e.position = "sticky", e.zIndex = 2), C = {
383
- $col: s,
384
- $rowSpan: L,
385
- $colSpan: E,
386
- $measureRow: S,
385
+ e.minWidth = "100%"), (l || c) && (e[l ? "insetInlineStart" : "insetInlineEnd"] = (l ? y : x) + "px",
386
+ e.position = "sticky", e.zIndex = 2), q = {
387
+ $col: r,
388
+ $rowSpan: M,
389
+ $colSpan: O,
390
+ $measureRow: b,
387
391
  $measureCol: v,
388
392
  $role: z,
389
- $sort: q,
393
+ $sort: C,
390
394
  $style: e,
391
- $start: I,
395
+ $start: y,
392
396
  $end: x
393
- }, _ = !0;
397
+ }, E = !0;
394
398
  }
395
- T.push(C);
399
+ T.push(q);
396
400
  }
397
401
  }
398
- if (U.push(R), T.length) {
399
- const t = z && !_ && z.$cells.length === T.length && z.$top === I ? z : {
402
+ if (Z.push(R), T.length) {
403
+ const t = z && !E && z.$cells.length === T.length && z.$top === y ? z : {
400
404
  $row: e,
401
405
  $cells: T,
402
- $style: X(e, O, I, "top", 3),
403
- $top: I
406
+ $style: X(e, _, y, "top", 3),
407
+ $top: y
404
408
  };
405
- K.set(e, t), F.push(t);
409
+ N.set(e, t), H.push(t);
406
410
  }
407
411
  }
408
- return O.set(t, K), {
409
- $rowTemplate: V(t, R, U, c(Y), "max-content", p),
410
- $colTemplate: V(r, E, G, c(D), "minmax(max-content,auto)", m),
411
- $groups: j
412
+ return _.set(t, N), {
413
+ $rowTemplate: B(t, R, Z, c(Y), "max-content", p),
414
+ $colTemplate: B(s, O, G, c(D), "minmax(max-content,auto)", m),
415
+ $groups: F
412
416
  };
413
- }, X = (t, e, n, o, r) => {
414
- const s = {
417
+ }, X = (t, e, n, o, s) => {
418
+ const r = {
415
419
  display: "grid",
416
420
  gridTemplateRows: "subgrid",
417
421
  gridTemplateColumns: "subgrid",
418
422
  gridColumn: "1/-1",
419
423
  gridRow: "l" + t + "/l" + e
420
424
  };
421
- return null != n && (s.position = "sticky", s[o] = n + "px", s.zIndex = r), s;
422
- }, Y = (t, e, r = 0, s, l) => {
423
- let i = o(e, 1), f = l && l[1] || s || 40, u = -1, a = s ? void 0 : /* @__PURE__ */ new Set, $ = !s;
424
- const g = l && l[0], d = g ? z(g.slice(0, n(t, g.length)), o(0, t - g.length)) : z([], t), p = [], m = [], w = [], h = t => {
425
- const e = d[t];
425
+ return null != n && (r.position = "sticky", r[o] = n + "px", r.zIndex = s), r;
426
+ }, Y = (t, e, s = 0, r, l) => {
427
+ let i = o(e, 1), f = l && l[1] || r || 40, u = -1, a = r ? void 0 : /* @__PURE__ */ new Set, $ = !r;
428
+ const g = l ? l[0].slice(0, t) : [];
429
+ z(g, t - g.length);
430
+ const d = [], p = [], m = [ 0 ], w = t => {
431
+ const e = g[t];
426
432
  return -1 === e ? f : e;
427
- }, b = e => {
428
- if (e = n(e, t - 1), u >= e) return;
429
- const s = [], l = [];
430
- for (let t = 0; t < i; t++) s.push(0), l.push(-1);
431
- for (let t = u, e = i; t >= 0 && e; t--) {
432
- const n = m[t];
433
- -1 === l[n] && (l[n] = t, s[n] = p[t] + h(t), e--);
433
+ }, h = () => {
434
+ if (u >= t - 1) return;
435
+ const e = [], n = [];
436
+ for (let t = 0; t < i; t++) e.push(0), n.push(-1);
437
+ for (let t = u, o = i; t >= 0 && o; t--) {
438
+ const r = p[t];
439
+ -1 === n[r] && (n[r] = t, e[r] = d[t] + w(t) + s, o--);
434
440
  }
435
- for (;u < e; ) {
441
+ for (;u < t - 1; ) {
436
442
  const t = ++u;
437
- let e = 0, n = 1 / 0, c = 1 / 0;
443
+ let r = 0, l = 1 / 0, c = 1 / 0;
438
444
  for (let t = 0; t < i; t++) {
439
- const o = s[t] + (l[t] >= 0 ? r : 0);
440
- (o < n || o === n && l[t] < c) && (e = t, n = o, c = l[t]);
445
+ const o = e[t];
446
+ (o < l || o === l && n[t] < c) && (r = t, l = o, c = n[t]);
441
447
  }
442
- p[t] = n, m[t] = e, s[e] = n + h(t), l[e] = t, w[t] = o(t ? w[t - 1] : 0, s[e]);
448
+ const f = l + w(t);
449
+ d[t] = l, p[t] = r, e[r] = f + s, n[r] = t, m[t + 1] = o(m[t], f);
443
450
  }
444
- }, S = e => e >= t ? y() : (b(e), p[e]), v = t => (b(t), w[t]), y = () => t ? v(t - 1) : 0, I = e => {
445
- if (!t) return 0;
446
- const n = k(v, t, e);
447
- return v(n) <= e ? n + 1 : n;
448
- };
451
+ }, S = e => e >= t ? v() : (h(), d[e]), b = t => (h(), m[t]), v = () => b(t), I = e => k(b, t + 1, e);
449
452
  return {
450
453
  $getRange: (e, o) => {
451
- const r = k(S, t, o);
452
- return [ n(I(e), r), r ];
454
+ const s = k(S, t, o);
455
+ return [ n(I(e), s), s ];
453
456
  },
457
+ $findIndex: I,
454
458
  $getItemOffset: S,
455
- $getItemSize: h,
456
- $isSizeEqual: (t, e = -1) => d[t] === e,
457
- $resize: (e, o, s, l) => {
458
- let g = I(s);
459
- for (;g > 0 && !o(g - 1); ) g--;
460
- for (;g < t && o(g); ) g++;
461
- const p = S(g);
462
- for (const [t, o] of e) d[t] = o, a && a.add(t), u = n(t - 1, u);
463
- let m = S(g) - p;
464
- if (a && l) {
459
+ $getItemSize: w,
460
+ $isSizeEqual: (t, e = -1) => g[t] === e,
461
+ $setItemSizes: (t, e) => {
462
+ for (const [e, o] of t) g[e] = o, a && a.add(e), u = n(e - 1, u);
463
+ if (a && e) {
465
464
  const t = [];
466
- let e = 0;
467
- if (a.forEach(n => {
468
- const o = d[n];
469
- o > 0 && (t.push(o), e += o + r);
470
- }), e > l * i) {
465
+ let n = 0;
466
+ if (a.forEach(e => {
467
+ const o = g[e];
468
+ -1 !== o && o && (t.push(o), n += o + s);
469
+ }), n > e * i) {
471
470
  c(t);
472
- const e = t.length, n = e / 2 | 0, o = e % 2 == 0 ? (t[n - 1] + t[n]) / 2 : t[n], r = I(s + m), l = S(r);
473
- f = o, u = -1, m += S(r) - l, a = void 0, $ = !1;
471
+ const e = t.length, n = e / 2 | 0;
472
+ f = e % 2 == 0 ? (t[n - 1] + t[n]) / 2 : t[n], u = -1, a = void 0, $ = !1;
474
473
  }
475
474
  }
476
- return m;
477
475
  },
478
- $getTotalSize: y,
476
+ $getTotalSize: v,
479
477
  $getLength: () => t,
480
478
  $setLength: e => {
481
479
  const o = e - t;
482
- return u = n(e - 1, u), t = e, o > 0 ? z(d, o) : d.splice(o), 0;
483
- },
484
- $relayout: (t, e = 0, n) => {
485
- if ((t = o(t, 1)) === i && e === r) return;
486
- const l = I(n), c = S(l);
487
- return i = t, r = e, u = -1, a = s ? void 0 : /* @__PURE__ */ new Set, S(l) - c;
480
+ u = n(e - 1, u), t = e, o > 0 ? z(g, o) : g.splice(o);
488
481
  },
482
+ $relayout: (t, e = 0) => ((t = o(t, 1)) !== i || e !== s) && (i = t, s = e, u = -1,
483
+ a = r ? void 0 : /* @__PURE__ */ new Set, !0),
489
484
  $isEstimating: () => $,
490
- $snapshot: () => [ d.slice(), f ],
485
+ $snapshot: () => [ g.slice(), f ],
491
486
  $getLanes: () => i,
492
- $getGap: () => r,
493
- $getItemLane: t => (b(t), m[t])
487
+ $getGap: () => s,
488
+ $getItemLane: t => (h(), p[t])
494
489
  };
495
490
  }, D = t => {
496
491
  let e;
497
492
  return {
498
- o(n) {
493
+ l(n) {
499
494
  (e || (e = new (d(g(n)).ResizeObserver)(t))).observe(n);
500
495
  },
501
- l(t) {
496
+ i(t) {
502
497
  e.unobserve(t);
503
498
  },
504
- i() {
499
+ u() {
505
500
  e && e.disconnect();
506
501
  }
507
502
  };
508
- }, G = (t, e, n, o, r, s, l) => {
509
- let c, a, $ = 0, g = !1, d = !1, m = !1, w = !1;
510
- const h = Date.now, b = o ? "scrollLeft" : "scrollTop", S = o ? "left" : "top", v = t => r ? -t : t, y = () => v(n[b]), I = (t, e) => {
511
- n.scrollTo({
512
- [S]: v(t),
503
+ }, G = (t, e, n, o, s, r, l, c) => {
504
+ let a, $, g = 0, d = !1, m = !1, w = !1, h = !1;
505
+ const S = Date.now, b = s ? "scrollLeft" : "scrollTop", v = s ? "left" : "top", I = t => r ? -t : t, y = () => I(o[b]), x = (t, e) => {
506
+ o.scrollTo({
507
+ [v]: I(t),
513
508
  behavior: e ? "smooth" : "instant"
514
509
  });
515
- }, x = () => {
516
- if (g || d) return g = !1, void z();
517
- m = !1, t.$update(2);
518
510
  }, z = () => {
519
- f(a), a = i(x, 150);
511
+ if (d || m) return d = !1, void k();
512
+ w = !1, t.$update(2);
520
513
  }, k = () => {
521
- $ = h(), m && (w = !0), l && t.$update(6, l()), t.$update(1, y()), z();
522
- }, T = e => {
523
- if (g || !t.$isScrolling() || e.ctrlKey) return;
524
- const n = h() - $;
525
- 150 > n && 50 < n && (o ? e.deltaX : e.deltaY) && (g = !0);
514
+ f($), $ = i(z, 150);
515
+ }, T = () => {
516
+ g = S(), w && (h = !0), c && t.$update(7, c()), t.$update(1, y()), k();
517
+ }, M = e => {
518
+ if (d || !t.$isScrolling() || e.ctrlKey) return;
519
+ const n = S() - g;
520
+ 150 > n && 50 < n && (s ? e.deltaX : e.deltaY) && (d = !0);
526
521
  }, L = () => {
527
- d = !0, m = w = !1;
528
- }, M = () => {
529
- d = !1, p() && (m = !0);
522
+ m = !0, w = h = !1;
523
+ }, R = () => {
524
+ m = !1, p() && (w = !0);
530
525
  };
531
- return e.addEventListener("scroll", k), e.addEventListener("wheel", T, {
526
+ return n.addEventListener("scroll", T), n.addEventListener("wheel", M, {
532
527
  passive: !0
533
- }), e.addEventListener("touchstart", L, {
528
+ }), n.addEventListener("touchstart", L, {
534
529
  passive: !0
535
- }), e.addEventListener("touchend", M, {
530
+ }), n.addEventListener("touchend", R, {
536
531
  passive: !0
537
532
  }), {
538
- u: k,
539
- i: () => {
540
- e.removeEventListener("scroll", k), e.removeEventListener("wheel", T), e.removeEventListener("touchstart", L),
541
- e.removeEventListener("touchend", M), f(a);
533
+ $: T,
534
+ u: () => {
535
+ n.removeEventListener("scroll", T), n.removeEventListener("wheel", M), n.removeEventListener("touchstart", L),
536
+ n.removeEventListener("touchend", R), f($);
542
537
  },
543
- $: () => {
544
- const [e, o] = t.t();
538
+ p: () => {
539
+ const [e, n] = t.o();
545
540
  if (!e) return;
546
- w && s && s(), w = !1;
547
- const r = t.$getScrollOffset(), l = r + e, i = t.$getStartSpacerSize() + t.$getTotalSize() - t.$getViewportSize();
548
- l <= 0 || l >= i || r >= i ? I(l) : n.scrollBy({
549
- [S]: v(e),
541
+ h && l && l(), h = !1;
542
+ const s = t.$getScrollOffset(), r = s + e, c = t.$getStartSpacerSize() + t.$getTotalSize() - t.$getViewportSize();
543
+ r <= 0 || r >= c || s >= c ? x(r) : o.scrollBy({
544
+ [v]: I(e),
550
545
  behavior: "instant"
551
- }), o && (c && c(), t.$getViewportSize() > t.$getTotalSize() && t.$update(1, y()));
546
+ }), n && (a && a(), t.$getViewportSize() > t.$getTotalSize() && t.$update(1, y()));
552
547
  },
553
- p: (e, n) => {
554
- let o, r, s;
555
- c && c();
556
- const l = c = () => {
557
- o = !0, f(r), s && s();
558
- }, a = () => {
559
- if (!o) {
560
- if (t.$getViewportSize() && (f(r), r = i(l, 150)), n) {
561
- for (let [e, n] = t.$getRange(0); e <= n; e++) if (t.$isUnmeasuredItem(e)) return;
562
- l();
548
+ m: (n, o) => {
549
+ let s, r, l;
550
+ a && a();
551
+ const c = a = () => {
552
+ s = !0, f(r), l && l();
553
+ }, $ = () => {
554
+ if (!s) {
555
+ if (t.$getViewportSize() && (f(r), r = i(c, 150)), o) {
556
+ for (let [n, o] = t.$getRange(0); n <= o; n++) if (e.$isSizeEqual(n)) return;
557
+ c();
563
558
  }
564
- t.$update(7), I(e(), n);
559
+ t.$update(8), x(n(), o);
565
560
  }
566
561
  };
567
- n && t.$update(8, e()), (() => {
568
- if (o) return;
562
+ o && t.$update(9, n()), (() => {
563
+ if (s) return;
569
564
  let e;
570
- s = t.$subscribe(2, () => {
565
+ l = t.$subscribe(2, () => {
571
566
  e || (e = !0, u(() => {
572
- e = !1, a();
567
+ e = !1, $();
573
568
  }));
574
- }), a();
569
+ }), $();
575
570
  })();
576
571
  }
577
572
  };
578
- }, U = (t, e) => {
579
- let n, o, r = a(), s = !0;
580
- const l = /* @__PURE__ */ new WeakMap, c = D(r => {
581
- const c = [];
582
- for (const {target: i, contentRect: {width: f, height: u}} of r) if (i === n) f || u ? (s || o.u(),
583
- s = !0, t.$update(4, e ? f : u)) : s = !1; else if (i.offsetParent) {
584
- const t = l.get(i);
585
- null != t && c.push([ t, e ? f : u ]);
573
+ }, Z = (t, e, n) => {
574
+ let o, s, r = a(), l = !0;
575
+ const c = /* @__PURE__ */ new WeakMap, f = D(r => {
576
+ const i = [];
577
+ for (const {target: f, contentRect: {width: u, height: a}} of r) if (f === o) u || a ? (l || s.$(),
578
+ l = !0, t.$update(4, n ? u : a)) : l = !1; else if (f.offsetParent) {
579
+ const t = c.get(f);
580
+ if (null != t) {
581
+ const o = n ? u : a;
582
+ e.$isSizeEqual(t, o) || i.push([ t, o ]);
583
+ }
586
584
  }
587
- c.length && t.$update(3, c);
585
+ t.$update(3, i);
588
586
  });
589
587
  return {
590
- $observe(s, l = s.parentElement) {
591
- c.o(n = l), o = G(t, l, l, e, e && "rtl" === getComputedStyle(l).direction, () => {
592
- const t = e ? "overflowX" : "overflowY", n = l.style, o = n[t];
593
- n[t] = "hidden", i(() => {
594
- n[t] = o;
588
+ $observe(l, c = l.parentElement) {
589
+ f.l(o = c), s = G(t, e, c, c, n, n && "rtl" === getComputedStyle(c).direction, () => {
590
+ const t = n ? "overflowX" : "overflowY", e = c.style, o = e[t];
591
+ e[t] = "hidden", i(() => {
592
+ e[t] = o;
595
593
  });
596
594
  }), r[1](!0);
597
595
  },
598
596
  $dispose() {
599
- c.i(), o && o.i(), r[1](!1), r = a();
597
+ f.u(), s && s.u(), r[1](!1), r = a();
600
598
  },
601
- $observeItem: (t, e) => (l.set(t, e), c.o(t), () => {
602
- l.delete(t), c.l(t);
599
+ $observeItem: (t, e) => (c.set(t, e), f.l(t), () => {
600
+ c.delete(t), f.i(t);
603
601
  }),
604
602
  async $scroll(t, e) {
605
- await r[0] && o.p(t, e);
603
+ await r[0] && s.m(t, e);
606
604
  },
607
605
  $effect() {
608
- o && o.$();
606
+ s && s.p();
609
607
  },
610
608
  $getBaseOffset: t.$getStartSpacerSize
611
609
  };
612
- }, Z = (t, e) => {
613
- let n, o, r, s, l, c = a();
614
- const i = /* @__PURE__ */ new WeakMap, f = D(o => {
610
+ }, j = (t, e, n) => {
611
+ let o, s, r, l, c, i = a();
612
+ const f = /* @__PURE__ */ new WeakMap, u = D(s => {
615
613
  const r = [];
616
- for (const {target: t, contentRect: {width: s, height: c}} of o) if (t === n) l && l(); else if (t.offsetParent) {
617
- const n = i.get(t);
618
- null != n && r.push([ n, e ? s : c ]);
614
+ for (const {target: t, contentRect: {width: l, height: i}} of s) if (t === o) c && c(); else if (t.offsetParent) {
615
+ const o = f.get(t);
616
+ if (null != o) {
617
+ const t = n ? l : i;
618
+ e.$isSizeEqual(o, t) || r.push([ o, t ]);
619
+ }
619
620
  }
620
- r.length && t.$update(3, r);
621
+ t.$update(3, r);
621
622
  });
622
623
  return {
623
- $observe(i) {
624
- const u = g(i), a = d(u), $ = n = u.scrollingElement, p = e && "rtl" === getComputedStyle($).direction, m = (t, e, n, o, r = 0) => {
625
- const s = o ? "offsetLeft" : "offsetTop", l = r + (p ? e.clientWidth - t[s] - t.offsetWidth : t[s]), c = t.offsetParent;
626
- return t !== n && c ? m(c, e, n, o, l) : l;
627
- }, w = s = () => m(i, $, u.body, e), h = l = () => {
628
- t.$update(4, $[e ? "clientWidth" : "clientHeight"]);
624
+ $observe(f) {
625
+ const a = g(f), $ = d(a), p = o = a.scrollingElement, m = n && "rtl" === getComputedStyle(p).direction, w = (t, e, n, o, s = 0) => {
626
+ const r = o ? "offsetLeft" : "offsetTop", l = s + (m ? e.clientWidth - t[r] - t.offsetWidth : t[r]), c = t.offsetParent;
627
+ return t !== n && c ? w(c, e, n, o, l) : l;
628
+ }, h = l = () => w(f, p, a.body, n), S = c = () => {
629
+ t.$update(4, p[n ? "clientWidth" : "clientHeight"]);
629
630
  };
630
- a.addEventListener("resize", h), f.o($), r = () => {
631
- a.removeEventListener("resize", h);
632
- }, o = G(t, a, $, e, p, null, w), c[1](!0);
631
+ $.addEventListener("resize", S), u.l(p), r = () => {
632
+ $.removeEventListener("resize", S);
633
+ }, s = G(t, e, $, p, n, m, null, h), i[1](!0);
633
634
  },
634
635
  $dispose() {
635
- r && r(), f.i(), o && o.i(), c[1](!1), c = a();
636
+ r && r(), u.u(), s && s.u(), i[1](!1), i = a();
636
637
  },
637
- $observeItem: (t, e) => (i.set(t, e), f.o(t), () => {
638
- i.delete(t), f.l(t);
638
+ $observeItem: (t, e) => (f.set(t, e), u.l(t), () => {
639
+ f.delete(t), u.i(t);
639
640
  }),
640
641
  async $scroll(t, e) {
641
- await c[0] && o.p(t, e);
642
+ await i[0] && s.m(t, e);
642
643
  },
643
644
  $effect() {
644
- o && o.$();
645
+ s && s.p();
645
646
  },
646
- $getBaseOffset: () => s()
647
+ $getBaseOffset: () => l()
647
648
  };
648
- }, j = (t, e) => {
649
- let n, o, r, s = a(), l = !0;
650
- const c = /* @__PURE__ */ new WeakMap, f = /* @__PURE__ */ new WeakMap, u = D(s => {
651
- const i = [], u = [];
652
- for (const {target: a, contentRect: {width: $, height: g}} of s) if (a === n) $ || g ? (l || (o.u(),
653
- r.u()), l = !0, t.$update(4, g), e.$update(4, $)) : l = !1; else if (a.offsetParent) {
654
- const t = c.get(a), e = f.get(a);
655
- null != t && i.push([ t, g ]), null != e && u.push([ e, $ ]);
649
+ }, F = (t, e, n, o) => {
650
+ let s, r, l, c = a(), f = !0;
651
+ const u = /* @__PURE__ */ new WeakMap, $ = /* @__PURE__ */ new WeakMap, g = D(c => {
652
+ const i = [], a = [];
653
+ for (const {target: g, contentRect: {width: d, height: p}} of c) if (g === s) d || p ? (f || (r.$(),
654
+ l.$()), f = !0, t.$update(4, p), e.$update(4, d)) : f = !1; else if (g.offsetParent) {
655
+ const t = u.get(g), e = $.get(g);
656
+ null == t || n.$isSizeEqual(t, p) || i.push([ t, p ]), null == e || o.$isSizeEqual(e, d) || a.push([ e, d ]);
656
657
  }
657
- i.length && t.$update(3, i), u.length && e.$update(3, u);
658
+ t.$update(3, i), e.$update(3, a);
658
659
  });
659
660
  return {
660
661
  async $scroll(t, e) {
661
- await s[0] && (t ? r : o).p(e);
662
+ await c[0] && (t ? l : r).m(e);
662
663
  },
663
- $observe(l, c = l.parentElement) {
664
- u.o(n = c);
665
- const f = (t, e) => G(t, c, c, e, e && "rtl" === getComputedStyle(c).direction, () => {
666
- const t = e ? "overflowX" : "overflowY", n = c.style, o = n[t];
667
- n[t] = "hidden", i(() => {
668
- n[t] = o;
664
+ $observe(f, u = f.parentElement) {
665
+ g.l(s = u);
666
+ const a = (t, e, n) => G(t, e, u, u, n, n && "rtl" === getComputedStyle(u).direction, () => {
667
+ const t = n ? "overflowX" : "overflowY", e = u.style, o = e[t];
668
+ e[t] = "hidden", i(() => {
669
+ e[t] = o;
669
670
  });
670
671
  });
671
- o = f(t, !1), r = f(e, !0), s[1](!0);
672
+ r = a(t, n, !1), l = a(e, o, !0), c[1](!0);
672
673
  },
673
674
  $dispose() {
674
- u.i(), o && o.i(), r && r.i(), s[1](!1), s = a();
675
+ g.u(), r && r.u(), l && l.u(), c[1](!1), c = a();
675
676
  },
676
- $observeItem: (t, e, n) => (null != e && c.set(t, e), null != n && f.set(t, n),
677
- u.o(t), () => {
678
- c.delete(t), f.delete(t), u.l(t);
677
+ $observeItem: (t, e, n) => (null != e && u.set(t, e), null != n && $.set(t, n),
678
+ g.l(t), () => {
679
+ u.delete(t), $.delete(t), g.i(t);
679
680
  }),
680
681
  $effect() {
681
- o && o.$(), r && r.$();
682
+ r && r.p(), l && l.p();
682
683
  }
683
684
  };
684
- }, F = (t, e) => {
685
+ }, H = (t, e) => {
685
686
  t.$scroll(() => e);
686
- }, H = (t, e, n) => {
687
- F(t, n + e.$getScrollOffset());
688
- }, K = (t, e, n, {align: o, smooth: r, offset: s = 0} = {}) => {
689
- if (n = l(n, 0, e.$getItemsLength() - 1), "nearest" === o) {
690
- const t = e.$getItemOffset(n), r = e.$getScrollOffset();
691
- if (t < r) o = "start"; else {
692
- if (!(t + e.$getItemSize(n) > r + e.$getViewportSize())) return;
693
- o = "end";
687
+ }, K = (t, e, n) => {
688
+ H(t, n + e.$getScrollOffset());
689
+ }, N = (t, e, n, o, {align: s, smooth: r, offset: c = 0} = {}) => {
690
+ if (o = l(o, 0, n.$getLength() - 1), "nearest" === s) {
691
+ const t = e.$getItemOffset(o), r = e.$getScrollOffset();
692
+ if (t < r) s = "start"; else {
693
+ if (!(t + n.$getItemSize(o) > r + e.$getViewportSize())) return;
694
+ s = "end";
694
695
  }
695
696
  }
696
- t.$scroll(() => s + t.$getBaseOffset() + e.$getItemOffset(n) + ("end" === o ? e.$getItemSize(n) - e.$getViewportSize() : "center" === o ? (e.$getItemSize(n) - e.$getViewportSize()) / 2 : 0), r);
697
- }, N = (t, e, n) => {
697
+ t.$scroll(() => c + t.$getBaseOffset() + e.$getItemOffset(o) + ("end" === s ? n.$getItemSize(o) - e.$getViewportSize() : "center" === s ? (n.$getItemSize(o) - e.$getViewportSize()) / 2 : 0), r);
698
+ }, Q = (t, e, n) => {
698
699
  null != e && t.$scroll(!1, () => e), null != n && t.$scroll(!0, () => n);
699
- }, Q = (t, e, n, o, r) => {
700
+ }, U = (t, e, n, o, s) => {
700
701
  if (null != o) {
701
702
  const n = o + e.$getScrollOffset();
702
703
  t.$scroll(!1, () => n);
703
704
  }
704
- if (null != r) {
705
- const e = r + n.$getScrollOffset();
705
+ if (null != s) {
706
+ const e = s + n.$getScrollOffset();
706
707
  t.$scroll(!0, () => e);
707
708
  }
708
- }, tt = (t, e, r, s, c, i, f) => {
709
- const u = e.$getItemsLength(), a = r.$getPinnedStart(), $ = r.$getTrailStart();
709
+ }, tt = (t, e, s, r, c, i, f) => {
710
+ const u = s.$getLength(), a = s.$getPinnedStart(), $ = s.$getTrailStart();
710
711
  c = l(c, 0, u - 1);
711
- const g = _(s, a, $), d = q(g, c, $), p = d < 0 ? -1 : g[d], m = () => r.$getItemOffset(a) + (p < 0 || p === c ? 0 : r.$getItemOffset(p + 1) - r.$getItemOffset(p)), w = () => r.$getItemOffset(u) - r.$getItemOffset($);
712
+ const g = E(r, a, $), d = C(g, c, $), p = d < 0 ? -1 : g[d], m = () => s.$getItemOffset(a) + (p < 0 || p === c ? 0 : s.$getItemOffset(p + 1) - s.$getItemOffset(p)), w = () => s.$getItemOffset(u) - s.$getItemOffset($);
712
713
  if ("nearest" === i) {
713
714
  if (c < a || c >= $) return;
714
- const t = m(), r = e.$getScrollOffset() + t, s = e.$getViewportSize() - t - w(), l = e.$getItemSize(c);
715
- let f = e.$getItemOffset(c);
715
+ const t = m(), r = e.$getScrollOffset() + t, l = e.$getViewportSize() - t - w(), f = s.$getItemSize(c);
716
+ let u = e.$getItemOffset(c);
716
717
  if (p === c) {
717
718
  const t = (d + 1 < g.length ? g[d + 1] : $) - 1;
718
- f = o(f, n(r, e.$getItemOffset(t) + e.$getItemSize(t) - l));
719
+ u = o(u, n(r, e.$getItemOffset(t) + s.$getItemSize(t) - f));
719
720
  }
720
- if (f < r) i = "start"; else {
721
- if (!(f + l > r + s)) return;
721
+ if (u < r) i = "start"; else {
722
+ if (!(u + f > r + l)) return;
722
723
  i = "end";
723
724
  }
724
725
  }
725
726
  t.$scroll(f, () => {
726
- const t = m(), n = e.$getItemSize(c) - (e.$getViewportSize() - t - w());
727
+ const t = m(), n = s.$getItemSize(c) - (e.$getViewportSize() - t - w());
727
728
  return e.$getItemOffset(c) - t + ("end" === i ? n : "center" === i ? n / 2 : 0);
728
729
  });
729
- }, et = (t, n, o, r, s, l = e, {rowIndex: c, colIndex: i, rowAlign: f, colAlign: u}) => {
730
- null != c && tt(t, n, r, l, c, f, !1), null != i && tt(t, o, s, e, i, u, !0);
730
+ }, et = (t, n, o, s, r, l = e, {rowIndex: c, colIndex: i, rowAlign: f, colAlign: u}) => {
731
+ null != c && tt(t, n, s, l, c, f, !1), null != i && tt(t, o, r, e, i, u, !0);
731
732
  };
732
733
 
733
- export { m as ACTION_ITEMS_LENGTH_CHANGE, h as ACTION_RELAYOUT, w as ACTION_START_OFFSET_CHANGE, y as UPDATE_SCROLL_END_EVENT, v as UPDATE_SCROLL_EVENT, S as UPDATE_SIZE_EVENT, b as UPDATE_VIRTUAL_STATE, U as createContainerDriver, j as createContainerGridDriver, R as createGridLayout, J as createGridPlan, E as createGridSpanIndex, T as createListLayout, Y as createMasonryLayout, x as createVirtualStore, Z as createWindowDriver, M as getAxisItem, L as getAxisLength, I as getScrollSize, Q as gridScrollBy, N as gridScrollTo, et as gridScrollToIndex, B as gridStyleToString, $ as isBrowser, u as microtask, H as scrollBy, F as scrollTo, K as scrollToIndex, c as sort };
734
+ export { m as ACTION_ITEMS_LENGTH_CHANGE, w as ACTION_START_OFFSET_CHANGE, v as UPDATE_SCROLL_END_EVENT, b as UPDATE_SCROLL_EVENT, S as UPDATE_SIZE_EVENT, h as UPDATE_VIRTUAL_STATE, Z as createContainerDriver, F as createContainerGridDriver, R as createGridLayout, V as createGridPlan, O as createGridSpanIndex, T as createListLayout, Y as createMasonryLayout, x as createVirtualStore, j as createWindowDriver, L as getAxisItem, M as getAxisLength, I as getScrollSize, U as gridScrollBy, Q as gridScrollTo, et as gridScrollToIndex, J as gridStyleToString, $ as isBrowser, u as microtask, y as relayout, K as scrollBy, H as scrollTo, N as scrollToIndex, c as sort };
734
735
  //# sourceMappingURL=index.js.map