virtua 0.52.0 → 0.52.1

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.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * A cell position in the grid.
3
3
  */
4
- export interface VGridCell {
4
+ export interface GridCell {
5
5
  /**
6
6
  * The row index of the cell.
7
7
  */
@@ -14,9 +14,9 @@ export interface VGridCell {
14
14
  /**
15
15
  * A cell merged over multiple rows and/or columns in the grid.
16
16
  *
17
- * {@link VGridCell.rowIndex} and {@link VGridCell.colIndex} point to the origin cell (top row, start column) of the merged area.
17
+ * {@link GridCell.rowIndex} and {@link GridCell.colIndex} point to the origin cell (top row, start column) of the merged area.
18
18
  */
19
- export interface VGridSpan extends VGridCell {
19
+ export interface GridSpan extends GridCell {
20
20
  /**
21
21
  * The number of rows the cell spans.
22
22
  * @defaultValue 1
@@ -2,9 +2,9 @@ Object.defineProperty(exports, Symbol.toStringTag, {
2
2
  value: "Module"
3
3
  });
4
4
 
5
- var e, t = [], {min: o, max: n, abs: s, floor: r} = Math, l = (e, t, s) => o(s, n(t, e)), i = e => e.sort((e, t) => e - t), c = setTimeout, f = clearTimeout, u = "function" == typeof queueMicrotask ? queueMicrotask : e => {
5
+ var e, t = [], {min: o, max: n, abs: s, floor: r} = Math, l = (e, t, s) => o(s, n(t, e)), i = e => e.sort((e, t) => e - t), c = setTimeout, f = clearTimeout, a = "function" == typeof queueMicrotask ? queueMicrotask : e => {
6
6
  Promise.resolve().then(e);
7
- }, a = () => {
7
+ }, u = () => {
8
8
  let e;
9
9
  return [ new Promise(t => {
10
10
  e = t;
@@ -23,15 +23,15 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
23
23
  return e;
24
24
  }, h = (e, t, s) => {
25
25
  let r = s && s[1] || t || 40, l = -1, c = 0;
26
- const f = s && s[0], u = f ? x(f.slice(0, o(e, f.length)), n(0, e - f.length)) : x([], e), a = x([], e + 1), $ = e => {
27
- const t = u[e];
26
+ const f = s && s[0], a = f ? x(f.slice(0, o(e, f.length)), n(0, e - f.length)) : x([], e), u = x([], e + 1), $ = e => {
27
+ const t = a[e];
28
28
  return -1 === t ? r : t;
29
29
  }, p = t => {
30
30
  if (!e) return 0;
31
- if (l >= t) return a[t];
32
- l < 0 && (a[0] = 0, l = 0);
33
- let o = l, n = a[o];
34
- for (;o < t; ) n += $(o), a[++o] = n;
31
+ if (l >= t) return u[t];
32
+ l < 0 && (u[0] = 0, l = 0);
33
+ let o = l, n = u[o];
34
+ for (;o < t; ) n += $(o), u[++o] = n;
35
35
  return l = t, n;
36
36
  };
37
37
  return {
@@ -44,27 +44,27 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
44
44
  $getItemOffset: p,
45
45
  $getItemSize: $,
46
46
  $setItemSize: (e, t) => {
47
- const n = -1 === u[e];
48
- return u[e] = t, l = o(e, l), n;
47
+ const n = -1 === a[e];
48
+ return a[e] = t, l = o(e, l), n;
49
49
  },
50
- $isSizeEqual: (e, t = -1) => u[e] === t,
50
+ $isSizeEqual: (e, t = -1) => a[e] === t,
51
51
  $getTotalSize: () => p(e),
52
52
  $getLength: () => e,
53
53
  $setLength: (t, n) => {
54
54
  const s = t - e;
55
- return l = n ? -1 : o(t - 1, l), e = t, s > 0 ? (x(a, s), x(u, s, n), r * s) : (a.splice(s),
56
- (n ? u.splice(0, -s) : u.splice(s)).reduce((e, t) => e - (-1 === t ? r : t), 0));
55
+ return l = n ? -1 : o(t - 1, l), e = t, s > 0 ? (x(u, s), x(a, s, n), r * s) : (u.splice(s),
56
+ (n ? a.splice(0, -s) : a.splice(s)).reduce((e, t) => e - (-1 === t ? r : t), 0));
57
57
  },
58
58
  $estimateDefaultSize: t ? void 0 : e => {
59
59
  let t = 0;
60
60
  const o = [];
61
- u.forEach((n, s) => {
61
+ a.forEach((n, s) => {
62
62
  -1 !== n && (n && o.push(n), s < e && t++);
63
63
  }), l = -1, i(o);
64
- const s = o.length, c = s / 2 | 0, f = s % 2 == 0 ? (o[c - 1] + o[c]) / 2 : o[c], a = r;
65
- return ((r = f) - a) * n(e - t, 0);
64
+ const s = o.length, c = s / 2 | 0, f = s % 2 == 0 ? (o[c - 1] + o[c]) / 2 : o[c], u = r;
65
+ return ((r = f) - u) * n(e - t, 0);
66
66
  },
67
- $snapshot: () => [ u.slice(), r ]
67
+ $snapshot: () => [ a.slice(), r ]
68
68
  };
69
69
  }, w = e => "number" == typeof e ? e : e.length, b = /*#__PURE__*/ new WeakMap, S = (e, t, s, r, l, i, c) => {
70
70
  if (t < r || n(t, l) < o(s, i + 1) || c < s) return !0;
@@ -103,21 +103,21 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
103
103
  return l;
104
104
  }, k = (e, t) => o(e.rowIndex + (e.rowSpan || 1), t), M = (e, t) => o(e.colIndex + (e.colSpan || 1), t), T = (e, t, n, s, r, l) => {
105
105
  const i = t.length, c = s.length;
106
- let f = "[l0]", u = 0, a = 0, $ = 0;
107
- for (;a < i || $ < c; ) {
108
- const p = a < i ? t[a] : l, g = $ < c ? s[$] : l;
109
- if (g <= u) $++; else {
106
+ let f = "[l0]", a = 0, u = 0, $ = 0;
107
+ for (;u < i || $ < c; ) {
108
+ const p = u < i ? t[u] : l, g = $ < c ? s[$] : l;
109
+ if (g <= a) $++; else {
110
110
  let t, s;
111
- if (p === u) {
112
- t = u + 1;
113
- const o = n[a];
114
- s = null == o ? e.$getItemSize(u) + "px" : o ? r : "minmax(" + e.$getItemSize(u) + "px,auto)",
115
- a++;
116
- } else t = o(p, g), s = "minmax(" + (e.$getItemOffset(t - 1) + e.$getItemSize(t - 1) - e.$getItemOffset(u)) + "px,auto)";
117
- f += " " + s + " [l" + t + "]", u = t;
111
+ if (p === a) {
112
+ t = a + 1;
113
+ const o = n[u];
114
+ s = null == o ? e.$getItemSize(a) + "px" : o ? r : "minmax(" + e.$getItemSize(a) + "px,auto)",
115
+ u++;
116
+ } else t = o(p, g), s = "minmax(" + (e.$getItemOffset(t - 1) + e.$getItemSize(t - 1) - e.$getItemOffset(a)) + "px,auto)";
117
+ f += " " + s + " [l" + t + "]", a = t;
118
118
  }
119
119
  }
120
- return u < l && (f += " minmax(" + (e.$getTotalSize() - e.$getItemOffset(u)) + "px,auto) [l" + l + "]"),
120
+ return a < l && (f += " minmax(" + (e.$getTotalSize() - e.$getItemOffset(a)) + "px,auto) [l" + l + "]"),
121
121
  f;
122
122
  }, L = (e, t, o, n, s) => {
123
123
  const r = {
@@ -142,7 +142,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
142
142
  }
143
143
  };
144
144
  }, O = (e, t, o, n, s, r, l) => {
145
- let i, a, $ = 0, p = !1, g = !1, m = !1, x = !1;
145
+ let i, u, $ = 0, p = !1, g = !1, m = !1, x = !1;
146
146
  const h = Date.now, w = n ? "scrollLeft" : "scrollTop", b = n ? "left" : "top", S = e => s ? -e : e, v = () => S(o[w]), I = (e, t) => {
147
147
  o.scrollTo({
148
148
  [b]: S(e),
@@ -152,7 +152,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
152
152
  if (p || g) return p = !1, void z();
153
153
  m = !1, e.$update(2);
154
154
  }, z = () => {
155
- f(a), a = c(y, 150);
155
+ f(u), u = c(y, 150);
156
156
  }, k = () => {
157
157
  $ = h(), m && (x = !0), l && e.$update(6, l()), e.$update(1, v()), z();
158
158
  }, M = t => {
@@ -173,7 +173,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
173
173
  }), {
174
174
  l: () => {
175
175
  t.removeEventListener("scroll", k), t.removeEventListener("wheel", M), t.removeEventListener("touchstart", T),
176
- t.removeEventListener("touchend", L), f(a);
176
+ t.removeEventListener("touchend", L), f(u);
177
177
  },
178
178
  i: () => {
179
179
  const [t, n] = e.u();
@@ -190,7 +190,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
190
190
  i && i();
191
191
  const l = i = () => {
192
192
  n = !0, f(s), r && r();
193
- }, a = () => {
193
+ }, u = () => {
194
194
  if (!n) {
195
195
  if (e.$getViewportSize() && (f(s), s = c(l, 150)), o) {
196
196
  for (let [t, o] = e.$getRange(0); t <= o; t++) if (e.$isUnmeasuredItem(t)) return;
@@ -202,20 +202,20 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
202
202
  if (n) return;
203
203
  let t;
204
204
  r = e.$subscribe(2, () => {
205
- t || (t = !0, u(() => {
206
- t = !1, a();
205
+ t || (t = !0, a(() => {
206
+ t = !1, u();
207
207
  }));
208
- }), a();
208
+ }), u();
209
209
  };
210
- o ? (e.$update(8, t()), u($)) : $();
210
+ o ? (e.$update(8, t()), a($)) : $();
211
211
  }
212
212
  };
213
213
  }, _ = (e, t) => {
214
214
  e.$scroll(() => t);
215
- }, q = (e, t, s, r, i, c, f, u) => {
216
- const a = t.$getItemsLength(), $ = o(s, a), p = n(a - i, $);
217
- c = l(c, 0, a - 1);
218
- const g = v(r, $, p), d = I(g, c, p), m = d < 0 ? -1 : g[d], x = () => [ t.$getItemOffset($) - t.$getItemOffset(0) + (m < 0 || m === c ? 0 : t.$getItemOffset(m + 1) - t.$getItemOffset(m)), t.$getItemOffset(a) - t.$getItemOffset(p) ];
215
+ }, q = (e, t, s, r, i, c, f, a) => {
216
+ const u = t.$getItemsLength(), $ = o(s, u), p = n(u - i, $);
217
+ c = l(c, 0, u - 1);
218
+ const g = v(r, $, p), d = I(g, c, p), m = d < 0 ? -1 : g[d], x = () => [ t.$getItemOffset($) - t.$getItemOffset(0) + (m < 0 || m === c ? 0 : t.$getItemOffset(m + 1) - t.$getItemOffset(m)), t.$getItemOffset(u) - t.$getItemOffset(p) ];
219
219
  if ("nearest" === f) {
220
220
  if (c < $ || c >= p) return;
221
221
  const [e, s] = x(), r = t.$getScrollOffset(), l = t.$getItemSize(c);
@@ -229,7 +229,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
229
229
  f = "end";
230
230
  }
231
231
  }
232
- e.$scroll(u, () => {
232
+ e.$scroll(a, () => {
233
233
  const [e, o] = x(), n = t.$getItemSize(c) - t.$getViewportSize();
234
234
  return t.$getItemOffset(c) + ("end" === f ? n + o : "center" === f ? (n + o - e) / 2 : -e);
235
235
  });
@@ -238,7 +238,7 @@ e), m = (e, t, o, n = 0, s = t - 1) => {
238
238
  exports.ACTION_ITEMS_LENGTH_CHANGE = 5, exports.ACTION_START_OFFSET_CHANGE = 6,
239
239
  exports.UPDATE_SCROLL_END_EVENT = 8, exports.UPDATE_SCROLL_EVENT = 4, exports.UPDATE_VIRTUAL_STATE = 1,
240
240
  exports.createContainerDriver = (e, t) => {
241
- let o, n, s = a();
241
+ let o, n, s = u();
242
242
  const r = /* @__PURE__ */ new WeakMap, l = R(n => {
243
243
  const s = [];
244
244
  for (const {target: l, contentRect: {width: i, height: c}} of n) if (l === o) (i || c) && e.$update(4, t ? i : c); else if (l.offsetParent) {
@@ -257,7 +257,7 @@ exports.createContainerDriver = (e, t) => {
257
257
  }), s[1](!0);
258
258
  },
259
259
  $dispose() {
260
- l.l(), n && n.l(), s[1](!1), s = a();
260
+ l.l(), n && n.l(), s[1](!1), s = u();
261
261
  },
262
262
  $observeItem: (e, t) => (r.set(e, t), l.t(e), () => {
263
263
  r.delete(e), l.o(e);
@@ -271,13 +271,13 @@ exports.createContainerDriver = (e, t) => {
271
271
  $getBaseOffset: e.$getStartSpacerSize
272
272
  };
273
273
  }, exports.createContainerGridDriver = (e, t) => {
274
- let o, n, s, r = a();
274
+ let o, n, s, r = u();
275
275
  const l = /* @__PURE__ */ new WeakMap, i = /* @__PURE__ */ new WeakMap, f = R(n => {
276
276
  const s = [], r = [];
277
- for (const {target: c, contentRect: {width: f, height: u}} of n) if (c === o) (f || u) && (e.$update(4, u),
277
+ for (const {target: c, contentRect: {width: f, height: a}} of n) if (c === o) (f || a) && (e.$update(4, a),
278
278
  t.$update(4, f)); else if (c.offsetParent) {
279
279
  const e = l.get(c), t = i.get(c);
280
- null != e && s.push([ e, u ]), null != t && r.push([ t, f ]);
280
+ null != e && s.push([ e, a ]), null != t && r.push([ t, f ]);
281
281
  }
282
282
  s.length && e.$update(3, s), r.length && t.$update(3, r);
283
283
  });
@@ -288,16 +288,16 @@ exports.createContainerDriver = (e, t) => {
288
288
  $observe(l) {
289
289
  const i = o = l.parentElement;
290
290
  f.t(i);
291
- const u = (e, t) => O(e, i, i, t, t && "rtl" === getComputedStyle(i).direction, () => {
291
+ const a = (e, t) => O(e, i, i, t, t && "rtl" === getComputedStyle(i).direction, () => {
292
292
  const e = t ? "overflowX" : "overflowY", o = i.style, n = o[e];
293
293
  o[e] = "hidden", c(() => {
294
294
  o[e] = n;
295
295
  });
296
296
  });
297
- n = u(e, !1), s = u(t, !0), r[1](!0);
297
+ n = a(e, !1), s = a(t, !0), r[1](!0);
298
298
  },
299
299
  $dispose() {
300
- f.l(), n && n.l(), s && s.l(), r[1](!1), r = a();
300
+ f.l(), n && n.l(), s && s.l(), r[1](!1), r = u();
301
301
  },
302
302
  $observeItem: (e, t, o) => (null != t && l.set(e, t), null != o && i.set(e, o),
303
303
  f.t(e), () => {
@@ -331,39 +331,39 @@ exports.createContainerDriver = (e, t) => {
331
331
  }
332
332
  const n = "auto" === t;
333
333
  let s, i = t;
334
- const c = w(e), f = [], u = h(c, void 0, [ [], 40 + o ]), a = e => n || !!f[e], $ = {
335
- $getRange: u.$getRange,
336
- $findIndex: u.$findIndex,
337
- $getItemOffset: u.$getItemOffset,
338
- $getItemSize: e => u.$getItemSize(e) - o,
339
- $setItemSize: (e, t) => a(e) && u.$setItemSize(e, t + o),
340
- $isSizeEqual: (e, t) => u.$isSizeEqual(e, t + o),
341
- $getTotalSize: () => u.$getLength() ? u.$getTotalSize() - o : 0,
342
- $getLength: u.$getLength,
343
- $setLength: u.$setLength,
344
- $estimateDefaultSize: n ? u.$estimateDefaultSize : void 0,
345
- $isMeasurable: a,
334
+ const c = w(e), f = [], a = h(c, void 0, [ [], 40 + o ]), u = e => n || !!f[e], $ = {
335
+ $getRange: a.$getRange,
336
+ $findIndex: a.$findIndex,
337
+ $getItemOffset: a.$getItemOffset,
338
+ $getItemSize: e => a.$getItemSize(e) - o,
339
+ $setItemSize: (e, t) => u(e) && a.$setItemSize(e, t + o),
340
+ $isSizeEqual: (e, t) => a.$isSizeEqual(e, t + o),
341
+ $getTotalSize: () => a.$getLength() ? a.$getTotalSize() - o : 0,
342
+ $getLength: a.$getLength,
343
+ $setLength: a.$setLength,
344
+ $estimateDefaultSize: n ? a.$estimateDefaultSize : void 0,
345
+ $isMeasurable: u,
346
346
  $setAxis: (e, t, r, l) => {
347
347
  if (n) return;
348
- const c = "number" == typeof t || "auto" === t ? i : t, a = u.$getLength();
349
- if (!l && e === s && c === i && a === f.length) return;
350
- s = e, i = c, f.length = a;
351
- const $ = u.$findIndex(r), p = u.$getItemOffset($);
348
+ const c = "number" == typeof t || "auto" === t ? i : t, u = a.$getLength();
349
+ if (!l && e === s && c === i && u === f.length) return;
350
+ s = e, i = c, f.length = u;
351
+ const $ = a.$findIndex(r), p = a.$getItemOffset($);
352
352
  let g;
353
- for (let t = 0; t < a; t++) {
353
+ for (let t = 0; t < u; t++) {
354
354
  const n = e[t], s = null !== n && "object" == typeof n ? n[c] : null, r = "number" != typeof s;
355
355
  if (!r || !f[t]) {
356
356
  f[t] = r;
357
357
  const e = r ? -1 : s + o;
358
- u.$isSizeEqual(t, e) || (u.$setItemSize(t, e), g = !0);
358
+ a.$isSizeEqual(t, e) || (a.$setItemSize(t, e), g = !0);
359
359
  }
360
360
  }
361
- return g ? u.$getItemOffset($) - p : void 0;
361
+ return g ? a.$getItemOffset($) - p : void 0;
362
362
  }
363
363
  };
364
364
  return $.$setAxis(e, t, 0), $;
365
- }, exports.createGridPlan = (e, s, r, c, f = 0, u = t, a = 0, $ = 0, p = 0, g = t, d = t, m) => {
366
- const x = e.$getLength(), h = s.$getLength(), w = o(f, x), R = n(x - a, w), O = o($, h), _ = n(h - p, O), q = l(r[0], w, R), A = o(r[1], R - 1), C = l(c[0], O, _), W = o(c[1], _ - 1), D = v(u, w, R), E = n(O - 1, 0), P = [], j = [], B = [];
365
+ }, exports.createGridPlan = (e, s, r, c, f = 0, a = t, u = 0, $ = 0, p = 0, g = t, d = t, m) => {
366
+ const x = e.$getLength(), h = s.$getLength(), w = o(f, x), R = n(x - u, w), O = o($, h), _ = n(h - p, O), q = l(r[0], w, R), A = o(r[1], R - 1), C = l(c[0], O, _), W = o(c[1], _ - 1), D = v(a, w, R), E = n(O - 1, 0), P = [], j = [], B = [];
367
367
  for (const e of d) e.rowIndex < x && e.colIndex < h && B.push(e);
368
368
  const J = D.length;
369
369
  J && (y(P, D, q, R), j.push(E));
@@ -411,60 +411,62 @@ exports.createContainerDriver = (e, t) => {
411
411
  $style: L(c, e, o || r ? 0 : null, r ? "bottom" : "top", 4)
412
412
  }), oe = t;
413
413
  } else c < 0 && (oe = te);
414
- const f = i >= 0 && t === c, u = f ? ee : null, a = t * h, $ = ne && ne.get(t), p = $ && $.$cells, g = [];
414
+ const f = i >= 0 && t === c, a = f ? ee : null, u = t * h, $ = ne && ne.get(t), p = $ && $.$cells, g = [];
415
415
  let d = 0, b = !e.$isMeasurable(t) && null, S = t + 1, v = !1;
416
416
  for (let e = 0; e < F; e++) {
417
- const r = U[e], i = r < O, c = r >= _, u = c || r >= C && r <= W, $ = G.get(a + r);
418
- if ($ ? $.rowIndex !== t || $.colIndex !== r : !(l && u || o || f || i)) continue;
419
- const w = $ ? k($, x) : t + 1, I = $ ? M($, h) : r + 1, y = w - t > 1, z = I - r > 1, T = y || z, L = T ? w - t : void 0, R = T ? I - r : void 0;
420
- let q, A;
421
- S = n(S, w);
422
- const D = i ? s.$getItemOffset(r) : null, P = c ? s.$getTotalSize() - s.$getItemOffset(I - 1) - s.$getItemSize(I - 1) : null;
423
- !1 !== b || y || (q = t, b = !0), !1 !== N[e] || z || (A = r, N[e] = !0);
424
- const j = o ? "columnheader" : r === E && (i || f) ? "rowheader" : "cell", B = "cell" !== j && m && m.rowIndex === t && m.colIndex === r ? m.order : void 0;
425
- let J;
426
- if (p) {
427
- for (;d < p.length && p[d].$col < r; ) d++;
428
- d < p.length && (J = p[d]);
429
- }
430
- if (!J || J.$col !== r || J.$rowSpan !== L || J.$colSpan !== R || J.$start !== D || J.$end !== P || J.$measureRow !== q || J.$measureCol !== A || J.$role !== j || J.$sort !== B) {
431
- const e = {
432
- contain: "layout style",
433
- display: "grid",
434
- gridArea: T ? "1/l" + r + "/l" + w + "/l" + I : "1/l" + r
435
- };
436
- y && (e.height = "0px", e.minHeight = "100%", e.zIndex = 1), z && (e.width = "0px",
437
- e.minWidth = "100%"), (i || c) && (i ? e.insetInlineStart = D + "px" : e.insetInlineEnd = P + "px",
438
- e.position = "sticky", e.zIndex = 2), J = {
439
- $col: r,
440
- $rowSpan: L,
441
- $colSpan: R,
442
- $measureRow: q,
443
- $measureCol: A,
444
- $role: j,
445
- $sort: B,
446
- $style: e,
447
- $start: D,
448
- $end: P
449
- }, v = !0;
417
+ const r = U[e], i = r < O, c = r >= _, a = c || r >= C && r <= W, $ = G.get(u + r);
418
+ if ($ ? $.rowIndex === t && $.colIndex === r : l && a || o || f || i) {
419
+ const l = $ ? k($, x) : t + 1, a = $ ? M($, h) : r + 1, u = l - t > 1, w = a - r > 1, I = u || w, y = I ? l - t : void 0, z = I ? a - r : void 0;
420
+ let T, L;
421
+ S = n(S, l);
422
+ const R = i ? s.$getItemOffset(r) : null, O = c ? s.$getTotalSize() - s.$getItemOffset(a - 1) - s.$getItemSize(a - 1) : null;
423
+ !1 !== b || u || (T = t, b = !0), !1 !== N[e] || w || (L = r, N[e] = !0);
424
+ const _ = o ? "columnheader" : r === E && (i || f) ? "rowheader" : "cell", q = "cell" !== _ && m && m.rowIndex === t && m.colIndex === r ? m.order : void 0;
425
+ let A;
426
+ if (p) {
427
+ for (;d < p.length && p[d].$col < r; ) d++;
428
+ d < p.length && (A = p[d]);
429
+ }
430
+ if (!A || A.$col !== r || A.$rowSpan !== y || A.$colSpan !== z || A.$start !== R || A.$end !== O || A.$measureRow !== T || A.$measureCol !== L || A.$role !== _ || A.$sort !== q) {
431
+ const e = {
432
+ contain: "layout style",
433
+ display: "grid",
434
+ gridArea: I ? "1/l" + r + "/l" + l + "/l" + a : "1/l" + r
435
+ };
436
+ u && (e.height = "0px", e.minHeight = "100%", e.zIndex = 1), w && (e.width = "0px",
437
+ e.minWidth = "100%"), (i || c) && (i ? e.insetInlineStart = R + "px" : e.insetInlineEnd = O + "px",
438
+ e.position = "sticky", e.zIndex = 2), A = {
439
+ $col: r,
440
+ $rowSpan: y,
441
+ $colSpan: z,
442
+ $measureRow: T,
443
+ $measureCol: L,
444
+ $role: _,
445
+ $sort: q,
446
+ $style: e,
447
+ $start: R,
448
+ $end: O
449
+ }, v = !0;
450
+ }
451
+ g.push(A);
450
452
  }
451
- g.push(J);
452
453
  }
453
- if (Q.push(b), !g.length) continue;
454
- const y = $ && !v && $.$cells.length === g.length && $.$top === u ? $ : {
455
- $row: t,
456
- $cells: g,
457
- $style: L(t, S, u, "top", 3),
458
- $top: u
459
- };
460
- se.set(t, y), oe.push(y);
454
+ if (Q.push(b), g.length) {
455
+ const e = $ && !v && $.$cells.length === g.length && $.$top === a ? $ : {
456
+ $row: t,
457
+ $cells: g,
458
+ $style: L(t, S, a, "top", 3),
459
+ $top: a
460
+ };
461
+ se.set(t, e), oe.push(e);
462
+ }
461
463
  }
462
464
  return b.set(e, se), {
463
465
  $rowTemplate: T(e, Y, Q, i(H), "max-content", x),
464
466
  $colTemplate: T(s, U, N, i(K), "minmax(max-content,auto)", h),
465
467
  $groups: te
466
468
  };
467
- }, exports.createListLayout = h, exports.createVirtualStore = ({$getRange: e, $findIndex: t, $getItemOffset: r, $getItemSize: l, $setItemSize: i, $isSizeEqual: c, $getTotalSize: f, $getLength: u, $setLength: a, $estimateDefaultSize: $}, p = 0) => {
469
+ }, exports.createListLayout = h, exports.createVirtualStore = ({$getRange: e, $findIndex: t, $getItemOffset: r, $getItemSize: l, $setItemSize: i, $isSizeEqual: c, $getTotalSize: f, $getLength: a, $setLength: u, $estimateDefaultSize: $}, p = 0) => {
468
470
  let g = !!$, m = !!p, x = 1, h = 0, w = 0, b = 0, S = 0, v = 0, I = 0, y = 0, z = 0, k = null, M = [ 0, m ? n(p - 1, 0) : -1 ], T = 0, L = !1;
469
471
  const R = /* @__PURE__ */ new Set, O = () => b - w, _ = () => O() + v + S, q = e => r(e) - v, A = e => {
470
472
  e && (d() && 0 !== y || k && 1 === z ? v += e : S += e);
@@ -482,13 +484,13 @@ exports.createContainerDriver = (e, t) => {
482
484
  g || (t = n(0, t), 1 !== y && (l -= t), 2 !== y && (i += t)), [s, r] = M = e(n(0, l), n(0, i)),
483
485
  k && (s = o(s, k[0]), r = n(r, k[1]));
484
486
  }
485
- return [ n(s, 0), o(r, u() - 1) ];
487
+ return [ n(s, 0), o(r, a() - 1) ];
486
488
  },
487
489
  $findItemIndex: e => t(e - w),
488
490
  $isUnmeasuredItem: c,
489
491
  $getItemOffset: q,
490
492
  $getItemSize: l,
491
- $getItemsLength: u,
493
+ $getItemsLength: a,
492
494
  $getScrollOffset: () => b,
493
495
  $isScrolling: () => 0 !== y,
494
496
  $getViewportSize: () => h,
@@ -502,7 +504,7 @@ exports.createContainerDriver = (e, t) => {
502
504
  };
503
505
  },
504
506
  $update: (o, n) => {
505
- let r, u, p = 0;
507
+ let r, a, p = 0;
506
508
  switch (o) {
507
509
  case 1:
508
510
  {
@@ -512,7 +514,7 @@ exports.createContainerDriver = (e, t) => {
512
514
  const t = n - b, o = s(t);
513
515
  e && o < s(e) + 1 || 0 !== z || (y = t < 0 ? 2 : 1), m && (m = !1), b = n, p = 4;
514
516
  const r = O();
515
- r >= -h && r <= f() && (p += 1, u = o > h);
517
+ r >= -h && r <= f() && (p += 1, a = o > h);
516
518
  break;
517
519
  }
518
520
 
@@ -536,16 +538,16 @@ exports.createContainerDriver = (e, t) => {
536
538
  const e = l(t), n = i(t, o);
537
539
  g && (T += n ? o : o - e);
538
540
  }
539
- g && h && T > h && (A($(t(_()))), g = !1), p = 3, u = !0;
541
+ g && h && T > h && (A($(t(_()))), g = !1), p = 3, a = !0;
540
542
  break;
541
543
  }
542
544
 
543
545
  case 4:
544
- h !== n && (h || (L = u = !0), h = n, p = 3);
546
+ h !== n && (h || (L = a = !0), h = n, p = 3);
545
547
  break;
546
548
 
547
549
  case 5:
548
- n[1] ? (A(a(n[0], !0)), z = 2, p = 1) : (a(n[0]), p = 1);
550
+ n[1] ? (A(u(n[0], !0)), z = 2, p = 1) : (u(n[0]), p = 1);
549
551
  break;
550
552
 
551
553
  case 6:
@@ -564,12 +566,12 @@ exports.createContainerDriver = (e, t) => {
564
566
  k = e(n, n + h), p = 1;
565
567
  }
566
568
  p && (x = 1 + (2147483647 & x), r && v && (S += v, v = 0), R.forEach(([e, t]) => {
567
- p & e && t(u);
569
+ p & e && t(a);
568
570
  }));
569
571
  }
570
572
  };
571
573
  }, exports.createWindowDriver = (e, t) => {
572
- let o, n, s, r, l, i = a();
574
+ let o, n, s, r, l, i = u();
573
575
  const c = /* @__PURE__ */ new WeakMap, f = R(n => {
574
576
  const s = [];
575
577
  for (const {target: e, contentRect: {width: r, height: i}} of n) if (e === o) l && l(); else if (e.offsetParent) {
@@ -580,18 +582,18 @@ exports.createContainerDriver = (e, t) => {
580
582
  });
581
583
  return {
582
584
  $observe(c) {
583
- const u = p(c), a = g(u), $ = o = u.scrollingElement, d = t && "rtl" === getComputedStyle($).direction, m = (e, t, o, n, s = 0) => {
585
+ const a = p(c), u = g(a), $ = o = a.scrollingElement, d = t && "rtl" === getComputedStyle($).direction, m = (e, t, o, n, s = 0) => {
584
586
  const r = n ? "offsetLeft" : "offsetTop", l = s + (d ? t.clientWidth - e[r] - e.offsetWidth : e[r]), i = e.offsetParent;
585
587
  return e !== o && i ? m(i, t, o, n, l) : l;
586
- }, x = r = () => m(c, $, u.body, t), h = l = () => {
588
+ }, x = r = () => m(c, $, a.body, t), h = l = () => {
587
589
  e.$update(4, $[t ? "clientWidth" : "clientHeight"]);
588
590
  };
589
- a.addEventListener("resize", h), f.t($), s = () => {
590
- a.removeEventListener("resize", h);
591
- }, n = O(e, a, $, t, d, null, x), i[1](!0);
591
+ u.addEventListener("resize", h), f.t($), s = () => {
592
+ u.removeEventListener("resize", h);
593
+ }, n = O(e, u, $, t, d, null, x), i[1](!0);
592
594
  },
593
595
  $dispose() {
594
- s && s(), f.l(), n && n.l(), i[1](!1), i = a();
596
+ s && s(), f.l(), n && n.l(), i[1](!1), i = u();
595
597
  },
596
598
  $observeItem: (e, t) => (c.set(e, t), f.t(e), () => {
597
599
  c.delete(e), f.o(e);
@@ -616,13 +618,13 @@ exports.getScrollSize = e => n(e.$getTotalSize(), e.$getViewportSize()), exports
616
618
  }
617
619
  }, exports.gridScrollTo = (e, t, o) => {
618
620
  null != t && e.$scroll(!1, () => t), null != o && e.$scroll(!0, () => o);
619
- }, exports.gridScrollToIndex = (e, o, n, s = 0, r = t, l = 0, i = 0, c = 0, {rowIndex: f, colIndex: u, rowAlign: a, colAlign: $}) => {
620
- null != f && q(e, o, s, r, l, f, a, !1), null != u && q(e, n, i, t, c, u, $, !0);
621
+ }, exports.gridScrollToIndex = (e, o, n, s = 0, r = t, l = 0, i = 0, c = 0, {rowIndex: f, colIndex: a, rowAlign: u, colAlign: $}) => {
622
+ null != f && q(e, o, s, r, l, f, u, !1), null != a && q(e, n, i, t, c, a, $, !0);
621
623
  }, exports.gridStyleToString = e => {
622
624
  let t = "";
623
625
  for (const o in e) t += o.replace(/[A-Z]/g, e => "-" + e.toLowerCase()) + ":" + e[o] + ";";
624
626
  return t;
625
- }, exports.isBrowser = $, exports.microtask = u, exports.scrollBy = (e, t, o) => {
627
+ }, exports.isBrowser = $, exports.microtask = a, exports.scrollBy = (e, t, o) => {
626
628
  _(e, o + t.$getScrollOffset());
627
629
  }, exports.scrollTo = _, exports.scrollToIndex = (e, t, o, {align: n, smooth: s, offset: r = 0} = {}) => {
628
630
  if (o = l(o, 0, t.$getItemsLength() - 1), "nearest" === n) {