bitboss-ui 3.0.0-beta.20 → 3.0.0-beta.21

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 (38) hide show
  1. package/dist/ai/BbTable.md +206 -98
  2. package/dist/ai/changelog.json +21 -3
  3. package/dist/ai/components.json +40 -15
  4. package/dist/ai/guides/component-picker.md +18 -18
  5. package/dist/ai/guides/icons-policy.md +7 -3
  6. package/dist/ai/guides/installation-and-plugin-setup.md +11 -14
  7. package/dist/ai/guides/migration/components/bb-table.md +131 -17
  8. package/dist/ai/recipes/inertia/approvals-inbox.md +0 -1
  9. package/dist/ai/recipes/inertia/inline-edit-workspace.md +0 -1
  10. package/dist/ai/recipes/inertia/ownership-atlas.md +8 -9
  11. package/dist/ai/recipes/inertia/record-form.md +0 -1
  12. package/dist/ai/recipes/inertia/records-workspace.md +0 -1
  13. package/dist/ai/recipes/inertia/upload-center.md +0 -1
  14. package/dist/ai/recipes/nuxt/approvals-inbox.md +0 -1
  15. package/dist/ai/recipes/nuxt/inline-edit-workspace.md +0 -1
  16. package/dist/ai/recipes/nuxt/record-form.md +0 -1
  17. package/dist/ai/recipes/nuxt/records-workspace.md +0 -1
  18. package/dist/ai/recipes/nuxt/upload-center.md +0 -1
  19. package/dist/ai/recipes/vue/approvals-inbox.md +0 -1
  20. package/dist/ai/recipes/vue/inline-edit-workspace.md +0 -1
  21. package/dist/ai/recipes/vue/records-workspace.md +0 -1
  22. package/dist/ai/recipes/vue/upload-center.md +0 -1
  23. package/dist/ai/source/BbTable.md +564 -173
  24. package/dist/components/BbTable/BbTable.vue.d.ts +2 -0
  25. package/dist/components/BbTable/BbTable.vue_vue_type_script_setup_true_lang.js +865 -735
  26. package/dist/components/BbTable/types.d.ts +98 -46
  27. package/dist/components/BbTable/utils.d.ts +21 -16
  28. package/dist/components/BbTable/utils.js +8 -8
  29. package/dist/composables/useTableWidthContext.d.ts +24 -4
  30. package/dist/composables/useTableWidthContext.js +31 -28
  31. package/dist/deprecation/ai-deprecations.json.d.ts +22 -0
  32. package/dist/deprecation/ai-deprecations.json.js +1 -1
  33. package/dist/llms-full.txt +381 -173
  34. package/dist/llms-medium.txt +29 -32
  35. package/dist/vite.js +1 -1
  36. package/package.json +1 -1
  37. package/scripts/lib/eslint-plugin.mjs +9 -14
  38. package/scripts/lib/validate-bb-markup.mjs +0 -7
@@ -22,24 +22,24 @@ import { useTableWidthContext as le } from "../../composables/useTableWidthConte
22
22
  import ue from "./BbTableDataRow.js";
23
23
  import de from "./BbTableExpandRow.js";
24
24
  import { applyFixedTableColumns as fe, columnKeyToSlotName as pe, completeColumnOrder as me, mergeCellClasses as he, mergeHeaderClasses as ge, mergeRowClasses as _e, moveColumnKey as ve, orderColumns as ye, readResolvedTracks as be, sameColumnOrder as xe } from "./utils.js";
25
- import { Fragment as m, computed as h, createBlock as g, createCommentVNode as _, createElementBlock as v, createElementVNode as y, createTextVNode as Se, defineComponent as Ce, getCurrentInstance as we, mergeModels as Te, mergeProps as Ee, nextTick as De, normalizeClass as b, normalizeStyle as x, onBeforeUnmount as Oe, onMounted as ke, openBlock as S, reactive as Ae, ref as C, renderList as je, renderSlot as w, resolveDynamicComponent as Me, shallowRef as Ne, toDisplayString as T, toRef as Pe, unref as E, useModel as Fe, useSlots as Ie, watch as D, withCtx as Le, withModifiers as Re } from "vue";
26
- import { defaultRangeExtractor as ze, elementScroll as Be, observeElementOffset as Ve, observeElementRect as He, observeWindowOffset as Ue, observeWindowRect as We, useVirtualizer as Ge, windowScroll as Ke } from "@tanstack/vue-virtual";
25
+ import { Fragment as m, computed as h, createBlock as Se, createCommentVNode as g, createElementBlock as _, createElementVNode as v, createTextVNode as Ce, defineComponent as we, getCurrentInstance as Te, mergeModels as Ee, mergeProps as De, nextTick as y, normalizeClass as b, normalizeStyle as x, onBeforeUnmount as Oe, onBeforeUpdate as ke, onMounted as Ae, openBlock as S, reactive as je, ref as C, renderList as Me, renderSlot as w, resolveDynamicComponent as Ne, shallowRef as Pe, toDisplayString as T, toRef as Fe, unref as E, useModel as Ie, useSlots as Le, watch as D, watchEffect as Re, withCtx as ze, withModifiers as Be } from "vue";
26
+ import { defaultRangeExtractor as Ve, elementScroll as He, observeElementOffset as Ue, observeElementRect as We, observeWindowOffset as Ge, observeWindowRect as Ke, useVirtualizer as qe, windowScroll as Je } from "@tanstack/vue-virtual";
27
27
  //#region src/components/BbTable/BbTable.vue?vue&type=script&setup=true&lang.ts
28
- var qe = {
28
+ var Ye = {
29
29
  key: 0,
30
30
  class: "sr-only"
31
- }, Je = ["id"], Ye = ["id"], Xe = {
31
+ }, Xe = ["id"], Ze = ["id"], Qe = {
32
32
  "aria-live": "polite",
33
33
  class: "bb-table-loading__text sr-only",
34
34
  role: "status"
35
- }, Ze = {
35
+ }, $e = {
36
36
  "aria-live": "polite",
37
37
  class: "bb-table__reorder-status sr-only",
38
38
  role: "status"
39
- }, Qe = ["aria-labelledby", "aria-rowcount"], $e = ["inert"], et = ["aria-rowindex"], tt = { class: "bb-table-header__content" }, nt = { class: "bb-table-check__label-text sr-only" }, rt = {
39
+ }, et = ["aria-labelledby", "aria-rowcount"], tt = ["inert"], nt = ["aria-rowindex"], rt = { class: "bb-table-header__content" }, it = { class: "bb-table-check__label-text sr-only" }, at = {
40
40
  key: 1,
41
41
  class: "bb-table-radio__label-text sr-only"
42
- }, it = [
42
+ }, ot = [
43
43
  "aria-describedby",
44
44
  "aria-sort",
45
45
  "data-column-key",
@@ -47,37 +47,36 @@ var qe = {
47
47
  "onClick",
48
48
  "onFocus",
49
49
  "onKeydown"
50
- ], at = { class: "bb-table-header__content" }, ot = {
50
+ ], st = { class: "bb-table-header__content" }, ct = {
51
51
  key: 1,
52
52
  class: "bb-table-header__content"
53
- }, st = ["onDblclick", "onPointerdown"], ct = { class: "bb-table-header__content sr-only" }, lt = ["aria-rowindex"], ut = {
53
+ }, lt = ["onDblclick", "onPointerdown"], ut = { class: "bb-table-header__content sr-only" }, dt = ["aria-rowindex"], ft = {
54
54
  key: 0,
55
55
  class: "bb-table-skeleton__cell bb-table-skeleton__cell--select",
56
56
  role: "cell"
57
- }, dt = {
57
+ }, pt = {
58
58
  key: 0,
59
59
  class: "bb-table-skeleton__cell-content"
60
- }, ft = {
60
+ }, mt = {
61
61
  key: 1,
62
62
  class: "bb-table-skeleton__avatar"
63
- }, pt = {
63
+ }, ht = {
64
64
  key: 2,
65
65
  class: "bb-table-skeleton__avatar-text"
66
- }, mt = { class: "bb-table-skeleton__cell-content" }, ht = {
66
+ }, gt = { class: "bb-table-skeleton__cell-content" }, _t = {
67
67
  key: 3,
68
68
  class: "bb-table-skeleton__image"
69
- }, gt = {
69
+ }, vt = {
70
70
  key: 4,
71
71
  class: "bb-table-skeleton__badge"
72
- }, _t = {
72
+ }, yt = {
73
73
  key: 1,
74
74
  class: "bb-table-skeleton__cell bb-table-skeleton__cell--actions",
75
75
  role: "cell"
76
- }, vt = ["aria-rowindex"], yt = ["aria-colspan"], bt = { class: "bb-table-no-data__text" }, xt = ["data-index"], St = ["role"], Ct = 48, wt = 10, Tt = "bb-table-resizing", Et = 5, Dt = 10, Ot = 500, kt = 40, At = 12, jt = 4, Mt = 12, Nt = "a, button:not(.bb-table-sort), input, select, textarea, [contenteditable], [role=\"button\"], .bb-table-header__resizer", Pt = 12, Ft = 10, It = 600, Lt = 120, Rt = 6, zt = 120, Bt = 10, O = /*@__PURE__*/ Ce({
76
+ }, bt = ["aria-rowindex"], xt = ["aria-colspan"], St = { class: "bb-table-no-data__text" }, Ct = ["data-index"], wt = ["role"], Tt = 48, Et = 10, Dt = "bb-table-resizing", Ot = 5, kt = 10, At = 500, jt = 40, Mt = 12, Nt = 4, Pt = 12, Ft = "a, button:not(.bb-table-sort), input, select, textarea, [contenteditable], [role=\"button\"], .bb-table-header__resizer", It = 12, Lt = 10, Rt = 600, zt = 120, Bt = 6, Vt = 120, Ht = 10, O = /*@__PURE__*/ we({
77
77
  __name: "BbTable",
78
- props: /*@__PURE__*/ Te({
78
+ props: /*@__PURE__*/ Ee({
79
79
  accessibleLabel: {},
80
- actions: { type: Boolean },
81
80
  actionsText: {},
82
81
  align: { default: "left" },
83
82
  caption: {},
@@ -90,8 +89,9 @@ var qe = {
90
89
  enforceCoherence: { type: Boolean },
91
90
  expandedItems: {},
92
91
  fixed: { type: Boolean },
93
- fixedColumns: { default: () => [] },
92
+ fixedActions: { type: Boolean },
94
93
  fixedHeaders: { type: Boolean },
94
+ fixedSelect: { type: Boolean },
95
95
  headerRowClass: {},
96
96
  highlighted: {},
97
97
  id: {},
@@ -161,7 +161,7 @@ var qe = {
161
161
  },
162
162
  expandedItemsModifiers: {}
163
163
  }),
164
- emits: /*@__PURE__*/ Te([
164
+ emits: /*@__PURE__*/ Ee([
165
165
  "click:row",
166
166
  "contextmenu:row",
167
167
  "dblclick:row",
@@ -171,6 +171,7 @@ var qe = {
171
171
  "update:sort",
172
172
  "update:order",
173
173
  "resize:column",
174
+ "hide:column",
174
175
  "update:expandedItems",
175
176
  "update:unselectedItems",
176
177
  "item:selected",
@@ -182,69 +183,94 @@ var qe = {
182
183
  "update:highlighted",
183
184
  "update:expandedItems"
184
185
  ]),
185
- setup(Ce, { emit: Te }) {
186
- let O = Fe(Ce, "selectAll"), k = Fe(Ce, "sort"), Vt = Fe(Ce, "order"), A = Fe(Ce, "highlighted"), j = Fe(Ce, "expandedItems"), M = Ce, N = Te, P = Ie();
186
+ setup(we, { emit: Ee }) {
187
+ let O = Ie(we, "selectAll"), k = Ie(we, "sort"), A = Ie(we, "order"), j = Ie(we, "highlighted"), M = Ie(we, "expandedItems"), N = we, P = Ee, F = Le();
187
188
  process.env.NODE_ENV !== "production" && r("BbTable", t("BbTable"));
188
- let { getItemValue: Ht } = f(), Ut = e().id.value;
189
- M.multiple && !Array.isArray(M.modelValue) && n().throw("BbTable is set for multiple selection but modelValue is not an array.");
190
- let Wt = ["actions", "select"], Gt = ["prepend", "append"], Kt = (e) => Gt.includes(e);
189
+ let I = C(!!F.actions);
190
+ ke(() => {
191
+ let e = !!F.actions;
192
+ e !== I.value && (I.value = e);
193
+ });
194
+ let { getItemValue: Ut } = f(), Wt = e().id.value;
195
+ N.multiple && !Array.isArray(N.modelValue) && n().throw("BbTable is set for multiple selection but modelValue is not an array.");
196
+ let Gt = ["actions", "select"], Kt = ["prepend", "append"], qt = (e) => Kt.includes(e);
191
197
  if (process.env.NODE_ENV !== "production") {
192
- let e = M.columns.filter((e) => Wt.includes(e.key));
193
- for (let t of e) n().warn(`BbTable: \`{ key: '${String(t.key)}' }\` is a reserved column and must not appear in \`columns\`. ` + (t.key === "actions" ? "Set the `actions` prop and fill the `#actions` slot instead." : "Selection is controlled by the `selectable` prop."));
194
- for (let e of M.columns) {
198
+ let e = N.columns.filter((e) => Gt.includes(e.key));
199
+ for (let t of e) n().warn(`BbTable: \`{ key: '${String(t.key)}' }\` is a reserved column and must not appear in \`columns\`. ` + (t.key === "actions" ? "Fill the `#actions` slot instead the slot creates the column." : "Selection is controlled by the `selectable` prop."));
200
+ for (let e of N.columns) {
195
201
  let t = pe(e.key);
196
- Kt(t) && n().warn(`BbTable: column key '${String(e.key)}' normalizes to the slot name '${t}', which collides with the table-wide \`#header:${t}\` slot. That name keeps its table-wide meaning and per-column header slots are unavailable for this column.`);
202
+ qt(t) && n().warn(`BbTable: column key '${String(e.key)}' normalizes to the slot name '${t}', which collides with the table-wide \`#header:${t}\` slot. That name keeps its table-wide meaning and per-column header slots are unavailable for this column.`);
197
203
  }
198
204
  }
199
- let { t: F } = c(), I = C(), L = C(), { id: qt, parentId: Jt, parentNode: Yt, node: Xt, cssVars: Zt, parentVar: Qt, setTracks: $t } = le({
200
- id: () => M.id,
201
- container: () => L.value,
202
- inheritFrom: () => typeof M.inheritColumnWidths == "string" ? M.inheritColumnWidths : void 0
203
- }), en = h(() => `${qt.value}__caption`), tn = h(() => `${qt.value}__header_instructions`), nn = h(() => !!(M.reorderable || M.resizable)), rn = h(() => M.columns.map((e) => String(e.key))), R = C(null), z = h(() => {
204
- let e = R.value ?? Vt.value;
205
- if (!e.length) return M.columns;
206
- let t = ye(M.columns, e);
207
- return t.every((e, t) => e === M.columns[t]) ? M.columns : t;
208
- }), an = h(() => z.value.map((e) => String(e.key))), on = (e, t) => {
209
- let n = me(Vt.value, rn.value), r = ve(Vt.value, rn.value, e, t);
205
+ let { t: L } = c(), R = C(), Jt = C(), { id: Yt, parentId: Xt, parentNode: Zt, node: Qt, cssVars: $t, parentVar: en, setTracks: tn } = le({
206
+ id: () => N.id,
207
+ container: () => Jt.value,
208
+ inheritFrom: () => typeof N.inheritColumnWidths == "string" ? N.inheritColumnWidths : void 0
209
+ }), nn = h(() => `${Yt.value}__caption`), rn = h(() => `${Yt.value}__header_instructions`), an = h(() => !!(N.reorderable || N.resizable)), on = C(/* @__PURE__ */ new Set()), sn = h(() => {
210
+ let e = new Set(on.value);
211
+ for (let t of N.columns) t.hidden && e.add(String(t.key));
212
+ return e;
213
+ }), cn = h(() => {
214
+ let e = sn.value;
215
+ return e.size ? N.columns.filter((t) => !e.has(String(t.key))) : N.columns;
216
+ }), ln = (e) => {
217
+ if (sn.value.has(e)) return;
218
+ let t = vn(e), n = V.value.indexOf(e), r = !!t && t.contains(document.activeElement) && an.value;
219
+ on.value = /* @__PURE__ */ new Set([...on.value, e]), P("hide:column", e), r && y(() => yn(n));
220
+ };
221
+ D(() => N.columns.map((e) => [String(e.key), !!e.hidden]), (e, t) => {
222
+ if (!t || !on.value.size) return;
223
+ let n = new Map(t), r = on.value, i = e.filter(([e, t]) => n.has(e) && n.get(e) !== t && r.has(e) && !t);
224
+ if (!i.length) return;
225
+ let a = new Set(r);
226
+ for (let [e] of i) a.delete(e);
227
+ on.value = a;
228
+ });
229
+ let un = h(() => N.columns.map((e) => String(e.key))), z = C(null), B = h(() => {
230
+ let e = cn.value, t = z.value ?? A.value;
231
+ if (!t.length) return e;
232
+ let n = ye(e, t);
233
+ return n.every((t, n) => t === e[n]) ? e : n;
234
+ }), V = h(() => B.value.map((e) => String(e.key))), dn = (e, t) => {
235
+ let n = me(A.value, un.value), r = ve(A.value, un.value, e, t, sn.value);
210
236
  return xe(r, n) ? null : r;
211
- }, sn = C("");
212
- D(() => M.reorderable, () => {
213
- sn.value = "";
237
+ }, fn = C("");
238
+ D(() => N.reorderable, () => {
239
+ fn.value = "";
214
240
  });
215
- let cn = (e, t) => {
216
- let n = z.value, r = n.findIndex((t) => String(t.key) === e);
217
- r < 0 || r === t || (sn.value = F("table.columnMoved", n[r].label, r + 1, n.length).value);
218
- }, ln = C(null), un = h(() => {
219
- let e = an.value, t = ln.value;
241
+ let pn = (e, t) => {
242
+ let n = B.value, r = n.findIndex((t) => String(t.key) === e);
243
+ r < 0 || r === t || (fn.value = L("table.columnMoved", n[r].label, r + 1, n.length).value);
244
+ }, mn = C(null), hn = h(() => {
245
+ let e = V.value, t = mn.value;
220
246
  return t !== null && e.includes(t) ? t : e[0] ?? null;
221
- }), dn = (e, t) => {
247
+ }), gn = (e, t) => {
222
248
  if (!t.sortable) return;
223
249
  let n = e.target;
224
250
  if (!(n instanceof Element)) return;
225
251
  let r = e.currentTarget;
226
252
  if (n.closest(".bb-table-sort")) return;
227
- let i = n.closest(Nt);
228
- i && r.contains(i) || window.getSelection()?.toString() || mr(t.key);
229
- }, fn = (e) => {
230
- nn.value && (ln.value = e);
231
- }, pn = (e) => I.value?.querySelector(`:scope > .bb-table__head > .bb-table-header-row > [data-column-key="${CSS.escape(e)}"]`) ?? null, mn = (e) => {
232
- let t = an.value, n = t[Math.max(0, Math.min(t.length - 1, e))];
233
- n && (ln.value = n, pn(n)?.focus());
234
- }, hn = async (e, t) => {
235
- if (!nn.value) return;
253
+ let i = n.closest(Ft);
254
+ i && r.contains(i) || window.getSelection()?.toString() || yr(t.key);
255
+ }, _n = (e) => {
256
+ an.value && (mn.value = e);
257
+ }, vn = (e) => R.value?.querySelector(`:scope > .bb-table__head > .bb-table-header-row > [data-column-key="${CSS.escape(e)}"]`) ?? null, yn = (e) => {
258
+ let t = V.value, n = t[Math.max(0, Math.min(t.length - 1, e))];
259
+ n && (mn.value = n, vn(n)?.focus());
260
+ }, bn = async (e, t) => {
261
+ if (!an.value) return;
236
262
  let n = e.currentTarget, r = e.target;
237
263
  if (!(r instanceof Element) || r !== n && !r.closest(".bb-table-sort")) return;
238
264
  let i = getComputedStyle(n).direction === "rtl";
239
265
  if (e.altKey && !e.ctrlKey && !e.metaKey) {
240
- if (!gn.value || e.key !== "ArrowLeft" && e.key !== "ArrowRight") return;
266
+ if (!xn.value || e.key !== "ArrowLeft" && e.key !== "ArrowRight") return;
241
267
  e.preventDefault();
242
- let r = e.key === "ArrowRight" !== i, a = B.value[t] ?? n.getBoundingClientRect().width;
243
- wn({ [t]: a + (r ? 1 : -1) * wt });
268
+ let r = e.key === "ArrowRight" !== i, a = H.value[t] ?? n.getBoundingClientRect().width;
269
+ kn({ [t]: a + (r ? 1 : -1) * Et });
244
270
  return;
245
271
  }
246
272
  if (e.ctrlKey || e.metaKey) return;
247
- let a = an.value, o = a.indexOf(t);
273
+ let a = V.value, o = a.indexOf(t);
248
274
  if (o < 0) return;
249
275
  let s;
250
276
  switch (e.key) {
@@ -262,102 +288,102 @@ var qe = {
262
288
  break;
263
289
  case "Enter":
264
290
  case " ":
265
- if (r !== n || !z.value[o]?.sortable) return;
266
- e.preventDefault(), mr(t);
291
+ if (r !== n || !B.value[o]?.sortable) return;
292
+ e.preventDefault(), yr(t);
267
293
  return;
268
294
  default: return;
269
295
  }
270
296
  if (e.preventDefault(), !e.shiftKey) {
271
- mn(s);
297
+ yn(s);
272
298
  return;
273
299
  }
274
- if (!M.reorderable) return;
275
- let c = on(t, s);
276
- c && (sn.value = "", Vt.value = c, ln.value = t, await De(), pn(t)?.focus(), cn(t, o));
300
+ if (!N.reorderable) return;
301
+ let c = dn(t, s);
302
+ c && (fn.value = "", A.value = c, mn.value = t, await y(), vn(t)?.focus(), pn(t, o));
277
303
  };
278
- process.env.NODE_ENV !== "production" && (D(Vt, (e) => {
304
+ process.env.NODE_ENV !== "production" && (D(A, (e) => {
279
305
  new Set(e).size !== e.length && n().warn("BbTable: `order` lists a key more than once — the first occurrence wins.");
280
- }, { immediate: !0 }), D(() => M.columns.some((e) => e.snap != null) && (!!M.reorderable || z.value !== M.columns), (e) => {
281
- e && n().warn("BbTable: `snap` is positional in the parent's rendered order and does not compose with `order` / `reorderable` on the same table order the parent (a snap-mapped child follows its slots), or drop the snaps and share the parent's `order` with a same-key child.");
306
+ }, { immediate: !0 }), D(() => N.columns.some((e) => e.snap != null) && (!!N.reorderable || B.value !== N.columns), (e) => {
307
+ e && n().warn("BbTable: `snap` names a PARENT column and the child renders in its own order it does not compose with `order` / `reorderable` / a `hidden` column on the snapped table itself. Order and hide on the parent (a key-snapped child follows it), or drop the snaps.");
282
308
  }, { immediate: !0 }));
283
- let gn = h(() => !!M.resizable && !K.value), B = C({}), V = C(null), _n = C(null), vn = (e) => {
309
+ let xn = h(() => !!N.resizable && !J.value), H = C({}), U = C(null), Sn = C(null), Cn = (e) => {
284
310
  let t = String(e.key);
285
- return V.value?.[t] ?? B.value[t] ?? e.width ?? (q.value ? J.value[t] : void 0);
286
- }, yn = (e) => {
311
+ return U.value?.[t] ?? H.value[t] ?? e.width ?? (Y.value ? X.value[t] : void 0);
312
+ }, wn = (e) => {
287
313
  let t = String(e.key);
288
- return V.value?.[t] !== void 0 || t in B.value;
289
- }, bn = h(() => Object.keys(V.value ?? {}).join(" ")), xn = h(() => /* @__PURE__ */ new Set([...Object.keys(B.value), ...bn.value.split(" ").filter(Boolean)])), Sn = h(() => {
290
- let e = /* @__PURE__ */ new Map(), t = xn.value, n = q.value, r = J.value;
291
- for (let i of z.value) {
314
+ return U.value?.[t] !== void 0 || t in H.value;
315
+ }, Tn = h(() => Object.keys(U.value ?? {}).join(" ")), En = h(() => /* @__PURE__ */ new Set([...Object.keys(H.value), ...Tn.value.split(" ").filter(Boolean)])), Dn = h(() => {
316
+ let e = /* @__PURE__ */ new Map(), t = En.value, n = Y.value, r = X.value;
317
+ for (let i of B.value) {
292
318
  let a = String(i.key), o = n && i.width == null, s = [];
293
319
  o && s.push("bb-table-data__cell--nowrap"), t.has(a) && s.push("bb-table-data__cell--resized"), (t.has(a) || o && a in r) && s.push("bb-table-data__cell--clip"), s.length && e.set(a, s.join(" "));
294
320
  }
295
321
  return e;
296
- }), Cn = h(() => V.value !== null || Object.keys(B.value).length > 0), wn = (e) => {
297
- let t = { ...B.value }, n = [];
322
+ }), On = h(() => U.value !== null || Object.keys(H.value).length > 0), kn = (e) => {
323
+ let t = { ...H.value }, n = [];
298
324
  for (let [r, i] of Object.entries(e)) {
299
- let e = Math.max(Ct, Math.round(i));
325
+ let e = Math.max(Tt, Math.round(i));
300
326
  t[r] !== e && (t[r] = e, n.push([r, e]));
301
327
  }
302
328
  if (n.length) {
303
- B.value = t;
304
- for (let [e, t] of n) N("resize:column", e, t);
329
+ H.value = t;
330
+ for (let [e, t] of n) P("resize:column", e, t);
305
331
  }
306
- }, Tn = (e) => {
307
- if (!(e in B.value)) return;
308
- let { [e]: t, ...n } = B.value;
309
- B.value = n, N("resize:column", e, null);
332
+ }, An = (e) => {
333
+ if (!(e in H.value)) return;
334
+ let { [e]: t, ...n } = H.value;
335
+ H.value = n, P("resize:column", e, null);
310
336
  };
311
- D(() => M.columns.map((e) => [String(e.key), e.width]), (e, t) => {
312
- if (!t || !Object.keys(B.value).length) return;
313
- let n = new Map(t), r = B.value, i = e.filter(([e, t]) => n.has(e) && n.get(e) !== t && e in r && t !== r[e]);
337
+ D(() => N.columns.map((e) => [String(e.key), e.width]), (e, t) => {
338
+ if (!t || !Object.keys(H.value).length) return;
339
+ let n = new Map(t), r = H.value, i = e.filter(([e, t]) => n.has(e) && n.get(e) !== t && e in r && t !== r[e]);
314
340
  if (!i.length) return;
315
341
  let a = { ...r };
316
342
  for (let [e] of i) delete a[e];
317
- B.value = a;
343
+ H.value = a;
318
344
  });
319
- let H = null, En = () => {
320
- document.removeEventListener("pointermove", On), document.removeEventListener("pointerup", kn), document.removeEventListener("pointercancel", An), document.removeEventListener("keydown", jn, !0), window.removeEventListener("blur", An);
321
- }, Dn = () => {
322
- if (En(), H) try {
323
- H.handle.releasePointerCapture(H.pointerId);
345
+ let W = null, jn = () => {
346
+ document.removeEventListener("pointermove", Nn), document.removeEventListener("pointerup", Pn), document.removeEventListener("pointercancel", Fn), document.removeEventListener("keydown", In, !0), window.removeEventListener("blur", Fn);
347
+ }, Mn = () => {
348
+ if (jn(), W) try {
349
+ W.handle.releasePointerCapture(W.pointerId);
324
350
  } catch {}
325
- document.documentElement.classList.remove(Tt), H = null, V.value = null, _n.value = null, I.value && (I.value.style.gridTemplateColumns = Xr.value);
326
- }, On = (e) => {
327
- if (!H || e.pointerId !== H.pointerId) return;
328
- let t = (e.clientX - H.x0) * (H.rtl ? -1 : 1);
329
- t = Math.max(Ct - H.startWidth, t);
330
- let { neighbour: n } = H;
351
+ document.documentElement.classList.remove(Dt), W = null, U.value = null, Sn.value = null, R.value && (R.value.style.gridTemplateColumns = ai.value);
352
+ }, Nn = (e) => {
353
+ if (!W || e.pointerId !== W.pointerId) return;
354
+ let t = (e.clientX - W.x0) * (W.rtl ? -1 : 1);
355
+ t = Math.max(Tt - W.startWidth, t);
356
+ let { neighbour: n } = W;
331
357
  if (e.shiftKey && n) {
332
- t = Math.min(n.startWidth - Ct, t), V.value = {
333
- [H.key]: Math.round(H.startWidth + t),
358
+ t = Math.min(n.startWidth - Tt, t), U.value = {
359
+ [W.key]: Math.round(W.startWidth + t),
334
360
  [n.key]: Math.round(n.startWidth - t)
335
361
  };
336
362
  return;
337
363
  }
338
- V.value = { [H.key]: Math.round(H.startWidth + t) };
339
- }, kn = (e) => {
340
- if (!H || e.pointerId !== H.pointerId) return;
341
- let { key: t, startWidth: n, neighbour: r } = H, i = V.value;
342
- if (Dn(), !i) return;
364
+ U.value = { [W.key]: Math.round(W.startWidth + t) };
365
+ }, Pn = (e) => {
366
+ if (!W || e.pointerId !== W.pointerId) return;
367
+ let { key: t, startWidth: n, neighbour: r } = W, i = U.value;
368
+ if (Mn(), !i) return;
343
369
  let a = {};
344
- i[t] !== Math.round(n) && (a[t] = i[t]), r && i[r.key] !== void 0 && i[r.key] !== Math.round(r.startWidth) && (a[r.key] = i[r.key]), wn(a);
345
- }, An = (e) => {
346
- H && (e instanceof PointerEvent && e.pointerId !== H.pointerId || Dn());
347
- }, jn = (e) => {
348
- !H || e.key !== "Escape" || (e.preventDefault(), e.stopImmediatePropagation(), Dn());
349
- }, Mn = (e, t) => {
350
- if (!gn.value || vi.value || H || !e.isPrimary || e.button !== 0) return;
351
- let n = pn(t);
370
+ i[t] !== Math.round(n) && (a[t] = i[t]), r && i[r.key] !== void 0 && i[r.key] !== Math.round(r.startWidth) && (a[r.key] = i[r.key]), kn(a);
371
+ }, Fn = (e) => {
372
+ W && (e instanceof PointerEvent && e.pointerId !== W.pointerId || Mn());
373
+ }, In = (e) => {
374
+ !W || e.key !== "Escape" || (e.preventDefault(), e.stopImmediatePropagation(), Mn());
375
+ }, Ln = (e, t) => {
376
+ if (!xn.value || Oi.value || W || !e.isPrimary || e.button !== 0) return;
377
+ let n = vn(t);
352
378
  if (!n) return;
353
379
  e.preventDefault();
354
380
  let r = e.currentTarget;
355
381
  try {
356
382
  r.setPointerCapture(e.pointerId);
357
383
  } catch {}
358
- document.documentElement.classList.add(Tt);
359
- let i = an.value, a = i[i.indexOf(t) + 1], o = a ? pn(a) : null;
360
- H = {
384
+ document.documentElement.classList.add(Dt);
385
+ let i = V.value, a = i[i.indexOf(t) + 1], o = a ? vn(a) : null;
386
+ W = {
361
387
  pointerId: e.pointerId,
362
388
  handle: r,
363
389
  key: t,
@@ -368,43 +394,43 @@ var qe = {
368
394
  startWidth: o.getBoundingClientRect().width
369
395
  } : null,
370
396
  rtl: getComputedStyle(n).direction === "rtl"
371
- }, _n.value = t, document.addEventListener("pointermove", On), document.addEventListener("pointerup", kn), document.addEventListener("pointercancel", An), document.addEventListener("keydown", jn, !0), window.addEventListener("blur", An);
397
+ }, Sn.value = t, document.addEventListener("pointermove", Nn), document.addEventListener("pointerup", Pn), document.addEventListener("pointercancel", Fn), document.addEventListener("keydown", In, !0), window.addEventListener("blur", Fn);
372
398
  };
373
- Oe(Dn);
374
- let U = C("idle"), Nn = C(null), Pn = C(""), Fn = C(), In = Symbol("bb-table-column-drag"), W = null, Ln = (e) => Math.max(0, Math.min(1, e)), Rn = () => {
375
- let e = Sr.value ? L.value?.parentElement ?? null : L.value ?? null;
399
+ Oe(Mn);
400
+ let G = C("idle"), Rn = C(null), zn = C(""), Bn = C(), Vn = Symbol("bb-table-column-drag"), K = null, Hn = (e) => Math.max(0, Math.min(1, e)), Un = () => {
401
+ let e = Or.value ? Jt.value?.parentElement ?? null : Jt.value ?? null;
376
402
  for (; e;) {
377
403
  let t = getComputedStyle(e).overflowX;
378
404
  if (t === "auto" || t === "scroll") return e;
379
405
  e = e.parentElement;
380
406
  }
381
407
  return null;
382
- }, zn = () => {
383
- let e = W?.scrollport?.getBoundingClientRect(), t = Math.max(e?.left ?? 0, 0), n = Math.min(e?.right ?? window.innerWidth, window.innerWidth);
408
+ }, Wn = () => {
409
+ let e = K?.scrollport?.getBoundingClientRect(), t = Math.max(e?.left ?? 0, 0), n = Math.min(e?.right ?? window.innerWidth, window.innerWidth);
384
410
  return {
385
411
  left: t,
386
412
  right: Math.max(t + 1, n)
387
413
  };
388
- }, Bn = (e) => Array.from(e.children).filter((e) => e instanceof HTMLElement && e.classList.contains("bb-table-header") && !!e.dataset.columnKey), Vn = () => {
389
- let e = Fn.value;
414
+ }, Gn = (e) => Array.from(e.children).filter((e) => e instanceof HTMLElement && e.classList.contains("bb-table-header") && !!e.dataset.columnKey), Kn = () => {
415
+ let e = Bn.value;
390
416
  e?.isConnected && !e.matches(":popover-open") && e.showPopover();
391
- }, Hn = () => {
392
- let e = Fn.value;
417
+ }, qn = () => {
418
+ let e = Bn.value;
393
419
  e && e.matches(":popover-open") && e.hidePopover();
394
- }, Un = (e, t) => {
395
- let n = Fn.value;
396
- n && (n.style.translate = `${e + Mt}px ${t + Mt}px`);
397
- }, Wn = (e) => {
398
- if (!W || U.value !== "dragging") return;
399
- let t = zn(), n = Math.max(t.left, Math.min(e, t.right - 1)), r = Bn(W.row);
420
+ }, Jn = (e, t) => {
421
+ let n = Bn.value;
422
+ n && (n.style.translate = `${e + Pt}px ${t + Pt}px`);
423
+ }, Yn = (e) => {
424
+ if (!K || G.value !== "dragging") return;
425
+ let t = Wn(), n = Math.max(t.left, Math.min(e, t.right - 1)), r = Gn(K.row);
400
426
  if (r.length < 2) return;
401
- let i = (e) => e.style.position === "sticky", a = new Map(r.map((e) => [e, e.getBoundingClientRect()])), o = [...r.filter(i), ...r.filter((e) => !i(e))].filter((e) => e.dataset.columnKey !== W.key), s = an.value, c = s.indexOf(W.key);
427
+ let i = (e) => e.style.position === "sticky", a = new Map(r.map((e) => [e, e.getBoundingClientRect()])), o = [...r.filter(i), ...r.filter((e) => !i(e))].filter((e) => e.dataset.columnKey !== K.key), s = V.value, c = s.indexOf(K.key);
402
428
  if (c < 0) return;
403
429
  let l = Infinity, u = -Infinity;
404
430
  for (let e of a.values()) l = Math.min(l, e.left), u = Math.max(u, e.right);
405
431
  let d, f;
406
- if (n < l) d = "\0start", f = W.rtl ? s.length - 1 : 0;
407
- else if (n >= u) d = "\0end", f = W.rtl ? 0 : s.length - 1;
432
+ if (n < l) d = "\0start", f = K.rtl ? s.length - 1 : 0;
433
+ else if (n >= u) d = "\0end", f = K.rtl ? 0 : s.length - 1;
408
434
  else {
409
435
  let e = o.find((e) => {
410
436
  let t = a.get(e);
@@ -415,86 +441,86 @@ var qe = {
415
441
  }
416
442
  if (f < 0 || f === c) return;
417
443
  let p = f > c;
418
- if (W.target?.key === d && W.target.after === p) return;
419
- let ee = ve(W.base, rn.value, W.key, f);
420
- if (xe(ee, R.value ?? W.base)) {
421
- W.target = {
444
+ if (K.target?.key === d && K.target.after === p) return;
445
+ let ee = ve(K.base, un.value, K.key, f, sn.value);
446
+ if (xe(ee, z.value ?? K.base)) {
447
+ K.target = {
422
448
  key: d,
423
449
  after: p
424
450
  };
425
451
  return;
426
452
  }
427
- ((W.rtl ? !p : p) ? n <= W.lastMoveX + jt : n >= W.lastMoveX - jt) || (W.target = {
453
+ ((K.rtl ? !p : p) ? n <= K.lastMoveX + Nt : n >= K.lastMoveX - Nt) || (K.target = {
428
454
  key: d,
429
455
  after: p
430
- }, W.lastMoveX = n, R.value = ee);
431
- }, Gn = () => {
432
- if (!W || U.value !== "dragging" || !W.scrollDirection) {
433
- W && (W.raf = void 0);
456
+ }, K.lastMoveX = n, z.value = ee);
457
+ }, Xn = () => {
458
+ if (!K || G.value !== "dragging" || !K.scrollDirection) {
459
+ K && (K.raf = void 0);
434
460
  return;
435
461
  }
436
- let e = zn(), t = W.scrollDirection < 0 ? W.lastX - e.left : e.right - W.lastX, n = Math.ceil(At * (1 - Ln(t / kt))), r = W.scrollport ?? document.scrollingElement;
437
- r && (r.scrollLeft += W.scrollDirection * n), Wn(W.lastX), W.raf = requestAnimationFrame(Gn);
438
- }, Kn = () => {
439
- if (!W) return;
440
- let e = zn(), t = W.lastX - e.left, n = e.right - W.lastX;
441
- W.scrollDirection = t < kt ? -1 : +(n < kt), W.scrollDirection && W.raf === void 0 && (W.raf = requestAnimationFrame(Gn));
442
- }, qn = () => {
443
- document.removeEventListener("pointermove", Zn), document.removeEventListener("pointerup", Qn), document.removeEventListener("pointercancel", $n), document.removeEventListener("keydown", tr, !0), document.removeEventListener("dragstart", nr), document.removeEventListener("contextmenu", nr, !0), window.removeEventListener("blur", $n), W?.row.removeEventListener("lostpointercapture", er);
444
- }, Jn = () => {
445
- if (W) {
446
- clearTimeout(W.timer), W.raf !== void 0 && cancelAnimationFrame(W.raf), qn();
462
+ let e = Wn(), t = K.scrollDirection < 0 ? K.lastX - e.left : e.right - K.lastX, n = Math.ceil(Mt * (1 - Hn(t / jt))), r = K.scrollport ?? document.scrollingElement;
463
+ r && (r.scrollLeft += K.scrollDirection * n), Yn(K.lastX), K.raf = requestAnimationFrame(Xn);
464
+ }, Zn = () => {
465
+ if (!K) return;
466
+ let e = Wn(), t = K.lastX - e.left, n = e.right - K.lastX;
467
+ K.scrollDirection = t < jt ? -1 : +(n < jt), K.scrollDirection && K.raf === void 0 && (K.raf = requestAnimationFrame(Xn));
468
+ }, Qn = () => {
469
+ document.removeEventListener("pointermove", nr), document.removeEventListener("pointerup", rr), document.removeEventListener("pointercancel", ir), document.removeEventListener("keydown", or, !0), document.removeEventListener("dragstart", sr), document.removeEventListener("contextmenu", sr, !0), window.removeEventListener("blur", ir), K?.row.removeEventListener("lostpointercapture", ar);
470
+ }, $n = () => {
471
+ if (K) {
472
+ clearTimeout(K.timer), K.raf !== void 0 && cancelAnimationFrame(K.raf), Qn();
447
473
  try {
448
- W.row.hasPointerCapture(W.pointerId) && W.row.releasePointerCapture(W.pointerId);
474
+ K.row.hasPointerCapture(K.pointerId) && K.row.releasePointerCapture(K.pointerId);
449
475
  } catch {}
450
- Hn(), o(In), Nn.value = null, R.value = null, U.value = "idle", W = null;
476
+ qn(), o(Vn), Rn.value = null, z.value = null, G.value = "idle", K = null;
451
477
  }
452
- }, Yn = () => {
453
- W && (W.raf !== void 0 && cancelAnimationFrame(W.raf), W.raf = void 0, W.scrollDirection = 0, Hn(), o(In), Nn.value = null, R.value = null, U.value = "cancelled");
454
- }, Xn = () => {
455
- if (!(!W || U.value !== "armed")) {
456
- clearTimeout(W.timer), W.timer = void 0;
478
+ }, er = () => {
479
+ K && (K.raf !== void 0 && cancelAnimationFrame(K.raf), K.raf = void 0, K.scrollDirection = 0, qn(), o(Vn), Rn.value = null, z.value = null, G.value = "cancelled");
480
+ }, tr = () => {
481
+ if (!(!K || G.value !== "armed")) {
482
+ clearTimeout(K.timer), K.timer = void 0;
457
483
  try {
458
- W.row.setPointerCapture(W.pointerId);
484
+ K.row.setPointerCapture(K.pointerId);
459
485
  } catch {}
460
- W.row.addEventListener("lostpointercapture", er), W.base = me(Vt.value, rn.value), W.rtl = getComputedStyle(W.row).direction === "rtl", W.scrollport = Rn(), W.lastMoveX = W.x0, W.target = null, R.value = W.base, Nn.value = W.key, Pn.value = W.label, U.value = "dragging", a(In), Vn(), Un(W.lastX, W.lastY), Wn(W.lastX), Kn();
486
+ K.row.addEventListener("lostpointercapture", ar), K.base = me(A.value, un.value), K.rtl = getComputedStyle(K.row).direction === "rtl", K.scrollport = Un(), K.lastMoveX = K.x0, K.target = null, z.value = K.base, Rn.value = K.key, zn.value = K.label, G.value = "dragging", a(Vn), Kn(), Jn(K.lastX, K.lastY), Yn(K.lastX), Zn();
461
487
  }
462
- }, Zn = (e) => {
463
- if (!(!W || e.pointerId !== W.pointerId)) {
464
- if (W.lastX = e.clientX, W.lastY = e.clientY, U.value === "armed") {
465
- let t = Math.hypot(e.clientX - W.x0, e.clientY - W.y0);
466
- if (W.pointerType === "touch") {
467
- t >= Dt && Jn();
488
+ }, nr = (e) => {
489
+ if (!(!K || e.pointerId !== K.pointerId)) {
490
+ if (K.lastX = e.clientX, K.lastY = e.clientY, G.value === "armed") {
491
+ let t = Math.hypot(e.clientX - K.x0, e.clientY - K.y0);
492
+ if (K.pointerType === "touch") {
493
+ t >= kt && $n();
468
494
  return;
469
495
  }
470
- if (t < Et) return;
471
- Xn();
496
+ if (t < Ot) return;
497
+ tr();
472
498
  return;
473
499
  }
474
- U.value === "dragging" && (Un(e.clientX, e.clientY), Wn(e.clientX), Kn());
500
+ G.value === "dragging" && (Jn(e.clientX, e.clientY), Yn(e.clientX), Zn());
475
501
  }
476
- }, Qn = (e) => {
477
- if (!W || e.pointerId !== W.pointerId) return;
478
- let { key: t } = W, n = W.base ? W.base.filter((e) => rn.value.includes(e)).indexOf(t) : -1, r = U.value === "dragging" && R.value !== null && !xe(R.value, W.base) ? R.value : null;
479
- Jn(), r && (sn.value = "", Vt.value = r, De(() => cn(t, n)));
480
- }, $n = (e) => {
481
- W && (e instanceof PointerEvent && e.pointerId !== W.pointerId || Jn());
482
- }, er = () => {
483
- W && U.value === "dragging" && Jn();
484
- }, tr = (e) => {
485
- !W || U.value !== "dragging" || e.key !== "Escape" || !i(In) || (e.preventDefault(), e.stopImmediatePropagation(), Yn());
486
- }, nr = (e) => {
487
- W && U.value !== "idle" && e.preventDefault();
488
502
  }, rr = (e) => {
489
- if (!M.reorderable || vi.value || P.thead || !e.isPrimary || e.button !== 0 || W || z.value.length < 2) return;
503
+ if (!K || e.pointerId !== K.pointerId) return;
504
+ let { key: t } = K, n = K.base ? K.base.filter((e) => un.value.includes(e) && !sn.value.has(e)).indexOf(t) : -1, r = G.value === "dragging" && z.value !== null && !xe(z.value, K.base) ? z.value : null;
505
+ $n(), r && (fn.value = "", A.value = r, y(() => pn(t, n)));
506
+ }, ir = (e) => {
507
+ K && (e instanceof PointerEvent && e.pointerId !== K.pointerId || $n());
508
+ }, ar = () => {
509
+ K && G.value === "dragging" && $n();
510
+ }, or = (e) => {
511
+ !K || G.value !== "dragging" || e.key !== "Escape" || !i(Vn) || (e.preventDefault(), e.stopImmediatePropagation(), er());
512
+ }, sr = (e) => {
513
+ K && G.value !== "idle" && e.preventDefault();
514
+ }, cr = (e) => {
515
+ if (!N.reorderable || Oi.value || F.thead || !e.isPrimary || e.button !== 0 || K || B.value.length < 2) return;
490
516
  let t = e.target;
491
517
  if (!(t instanceof Element)) return;
492
518
  let n = e.currentTarget, r = t.closest(".bb-table-header");
493
519
  if (!r || r.parentElement !== n || !r.dataset.columnKey) return;
494
- let i = t.closest(Nt);
520
+ let i = t.closest(Ft);
495
521
  if (i && r.contains(i)) return;
496
- let a = r.dataset.columnKey, o = z.value.find((e) => String(e.key) === a);
497
- o && (W = {
522
+ let a = r.dataset.columnKey, o = B.value.find((e) => String(e.key) === a);
523
+ o && (K = {
498
524
  pointerId: e.pointerId,
499
525
  pointerType: e.pointerType,
500
526
  key: a,
@@ -512,40 +538,40 @@ var qe = {
512
538
  timer: void 0,
513
539
  raf: void 0,
514
540
  scrollDirection: 0
515
- }, U.value = "armed", document.addEventListener("pointermove", Zn), document.addEventListener("pointerup", Qn), document.addEventListener("pointercancel", $n), document.addEventListener("keydown", tr, !0), document.addEventListener("dragstart", nr), document.addEventListener("contextmenu", nr, !0), window.addEventListener("blur", $n), e.pointerType === "touch" && (W.timer = setTimeout(Xn, Ot)));
516
- }, ir = (e) => {
517
- W && (U.value === "dragging" || U.value === "cancelled") && e.cancelable && e.preventDefault();
541
+ }, G.value = "armed", document.addEventListener("pointermove", nr), document.addEventListener("pointerup", rr), document.addEventListener("pointercancel", ir), document.addEventListener("keydown", or, !0), document.addEventListener("dragstart", sr), document.addEventListener("contextmenu", sr, !0), window.addEventListener("blur", ir), e.pointerType === "touch" && (K.timer = setTimeout(tr, At)));
542
+ }, lr = (e) => {
543
+ K && (G.value === "dragging" || G.value === "cancelled") && e.cancelable && e.preventDefault();
518
544
  };
519
- Oe(Jn);
520
- let { data: ar } = re({ items: h(() => l(A.value) ? [] : [A.value]) }), or = h(() => A.value !== void 0 || G.highlighted !== void 0), sr = we(), cr = () => {
521
- let e = sr?.vnode.props ?? {};
545
+ Oe($n);
546
+ let { data: ur } = re({ items: h(() => l(j.value) ? [] : [j.value]) }), dr = h(() => j.value !== void 0 || q.highlighted !== void 0), fr = Te(), pr = () => {
547
+ let e = fr?.vnode.props ?? {};
522
548
  return "highlighted" in e || "onUpdate:highlighted" in e;
523
549
  };
524
- process.env.NODE_ENV !== "production" && D(() => A.value === void 0 && cr(), (e) => {
550
+ process.env.NODE_ENV !== "production" && D(() => j.value === void 0 && pr(), (e) => {
525
551
  e && n().warn("BbTable: `highlighted` is bound but its value is `undefined`, so the highlight mechanic stays off. Initialise it to `null` — `ref(null)`, not `ref()` — to be considered bound. `undefined` means \"never initialised\" and switches highlight off entirely; `null` means \"initialised and currently empty\".");
526
552
  }, { immediate: !0 });
527
- let lr = !1, ur = () => {
528
- process.env.NODE_ENV !== "production" && (lr || (lr = !0, n().warn("BbTable: `toggleHighlighted` was called from a slot, but highlight is not connected, so nothing happened. Bind `v-model:highlighted` (initialised to `null`), or seed `highlighted` through `useBbTableContext(id, { highlighted })`, or drop the call — with nothing bound the table has nowhere to put the value.")));
529
- }, dr = (e, { viaSlot: t = !1 } = {}) => {
530
- if (!or.value) {
531
- t && ur();
553
+ let mr = !1, hr = () => {
554
+ process.env.NODE_ENV !== "production" && (mr || (mr = !0, n().warn("BbTable: `toggleHighlighted` was called from a slot, but highlight is not connected, so nothing happened. Bind `v-model:highlighted` (initialised to `null`), or seed `highlighted` through `useBbTableContext(id, { highlighted })`, or drop the call — with nothing bound the table has nowhere to put the value.")));
555
+ }, gr = (e, { viaSlot: t = !1 } = {}) => {
556
+ if (!dr.value) {
557
+ t && hr();
532
558
  return;
533
559
  }
534
- let n = e.valueHash in ar.value;
535
- A.value = n ? null : e.value;
536
- }, fr = (e, t) => {
537
- e.target instanceof Element && (e.target.closest("a, button, input, label, select, textarea, [contenteditable], [role=\"button\"]") || window.getSelection()?.toString() || dr(t));
538
- }, pr = (e) => k.value.find(([t]) => t === e)?.[1] ?? null, mr = (e) => {
539
- let t = pr(e);
560
+ let n = e.valueHash in ur.value;
561
+ j.value = n ? null : e.value;
562
+ }, _r = (e, t) => {
563
+ e.target instanceof Element && (e.target.closest("a, button, input, label, select, textarea, [contenteditable], [role=\"button\"]") || window.getSelection()?.toString() || gr(t));
564
+ }, vr = (e) => k.value.find(([t]) => t === e)?.[1] ?? null, yr = (e) => {
565
+ let t = vr(e);
540
566
  t === null ? k.value = [...k.value, [e, "asc"]] : t === "asc" ? k.value = k.value.map((t) => t[0] === e ? [e, "desc"] : t) : k.value = k.value.filter(([t]) => t !== e);
541
- }, { state: G, isReady: hr } = ee(() => qt.value, {
567
+ }, { state: q, isReady: br } = ee(() => Yt.value, {
542
568
  selected: {
543
- get: () => M.modelValue,
544
- set: (e) => N("update:modelValue", e)
569
+ get: () => N.modelValue,
570
+ set: (e) => P("update:modelValue", e)
545
571
  },
546
572
  unselected: {
547
- get: () => M.unselectedItems,
548
- set: (e) => N("update:unselectedItems", e)
573
+ get: () => N.unselectedItems,
574
+ set: (e) => P("update:unselectedItems", e)
549
575
  },
550
576
  all: {
551
577
  get: () => O.value,
@@ -560,91 +586,177 @@ var qe = {
560
586
  }
561
587
  },
562
588
  highlighted: {
563
- get: () => A.value,
589
+ get: () => j.value,
564
590
  set: (e) => {
565
- A.value = e;
591
+ j.value = e;
566
592
  }
567
593
  },
568
- page: { get: () => M.page === void 0 ? M.virtual ? 1 : void 0 : se(M.page, 1) },
594
+ page: { get: () => N.page === void 0 ? N.virtual ? 1 : void 0 : se(N.page, 1) },
569
595
  perPage: {
570
- get: () => oe(M.perPage),
571
- infer: () => Array.isArray(M.items) ? M.items.length : void 0
596
+ get: () => oe(N.perPage),
597
+ infer: () => Array.isArray(N.items) ? N.items.length : void 0
572
598
  },
573
599
  totalItems: {
574
- get: () => oe(M.totalItems),
575
- infer: () => Array.isArray(M.items) ? M.items.length : void 0
600
+ get: () => oe(N.totalItems),
601
+ infer: () => Array.isArray(N.items) ? N.items.length : void 0
576
602
  },
577
- totalPages: { get: () => M.totalPages === void 0 ? void 0 : se(M.totalPages, 1) }
578
- }), gr = h(() => M.columns.some((e) => e.snap != null)), _r = h(() => !!M.inheritColumnWidths || gr.value), vr = h(() => M.fixed || gr.value || M.columns.some((e) => e.width != null) || Cn.value || _r.value && !!Jt.value), K = h(() => _r.value && !!Jt.value), q = h(() => !!M.virtual && !K.value && !P.tbody), J = C({}), Y = C({}), yr = C(""), br = h(() => q.value && !!yr.value && qr.value.every((e) => !e.contentSized)), xr = (e) => q.value && e.width == null && !yn(e) && String(e.key) in J.value, Sr = K, Cr = (e) => {
603
+ totalPages: { get: () => N.totalPages === void 0 ? void 0 : se(N.totalPages, 1) }
604
+ }), xr = h(() => N.columns.some((e) => e.snap != null)), Sr = h(() => !!N.inheritColumnWidths || xr.value), Cr = h(() => N.fixed || xr.value || cn.value.some((e) => e.width != null) || On.value || Sr.value && !!Xt.value), J = h(() => Sr.value && !!Xt.value);
605
+ Re(() => {
606
+ Qt.ordered = !!N.reorderable || A.value.length > 0;
607
+ });
608
+ let Y = h(() => !!N.virtual && !J.value && !F.tbody), X = C({}), wr = C({}), Tr = C(""), Er = h(() => Y.value && !!Tr.value && ni.value.every((e) => !e.contentSized)), Dr = (e) => Y.value && e.width == null && !wn(e) && String(e.key) in X.value, Or = J, kr = (e) => {
579
609
  if (typeof e == "number") return `${e}px`;
580
610
  let t = e.trim();
581
611
  return /^-?\d*\.?\d+$/.test(t) ? `${t}px` : t;
582
- }, wr = h(() => {
583
- let e = Yt.value?.tracks;
584
- return e ? Object.keys(e).filter((e) => /^\d+$/.test(e)).length : 0;
585
- }), Tr = h(() => {
586
- let e = Yt.value?.tracks ?? {}, t = [];
587
- "select" in e && t.push("select");
588
- for (let e = 0; e < wr.value; e++) t.push(String(e));
589
- return "actions" in e && t.push("actions"), t;
590
- }), Er = h(() => +("select" in (Yt.value?.tracks ?? {}))), Dr = h(() => Er.value + wr.value), Or = h(() => Tr.value.length), kr = (e) => {
591
- let t = Tr.value[e];
592
- return t ? Qt(t, "0px") : "0px";
593
- }, Ar = (e, t) => {
594
- if (!Jt.value || t - e <= 1e-6) return null;
612
+ }, Ar = h(() => Zt.value?.keys ?? []), jr = h(() => +(Ar.value[0] === "select")), Mr = h(() => Ar.value.length), Nr = h(() => {
613
+ let e = Ar.value;
614
+ return e[e.length - 1] === "actions" ? e.length - 1 : e.length;
615
+ }), Pr = (e) => Ar.value.indexOf(e), Fr = (e) => {
616
+ let t = Ar.value[e];
617
+ return t ? en(t, "0px") : "0px";
618
+ }, Ir = (e, t) => {
619
+ if (!Xt.value || t - e <= 1e-6) return null;
595
620
  let n = [];
596
621
  for (let r = Math.floor(e); r < Math.ceil(t - 1e-6); r++) {
597
622
  let i = Math.min(t, r + 1) - Math.max(e, r);
598
623
  if (i <= 1e-6) continue;
599
- let a = kr(r);
624
+ let a = Fr(r);
600
625
  n.push(i >= .999999 ? a : `${Number(i.toFixed(4))} * ${a}`);
601
626
  }
602
627
  return n.length ? n.length === 1 && !n[0].includes("*") ? n[0] : `calc(${n.join(" + ")})` : null;
603
- }, jr = h(() => {
604
- let e = z.value, t = e.map((e) => typeof e.snap == "number" ? e.snap : Array.isArray(e.snap) ? e.snap[0] : null), n = Er.value;
605
- return e.map((r, i) => {
606
- let a = t[i] ?? n, o;
607
- if (Array.isArray(r.snap)) o = r.snap[1] === -1 ? Dr.value : r.snap[1];
608
- else {
609
- let n = t[i + 1];
610
- o = n != null && n > a ? n : Math.floor(a) + 1, i === e.length - 1 && r.width == null && (o = Math.max(o, Dr.value));
611
- }
612
- return n = o, {
628
+ }, Lr = (e) => {
629
+ let t = /^(.+)\.(\d+)$/.exec(e);
630
+ return t ? {
631
+ key: t[1],
632
+ fraction: Number(`0.${t[2]}`)
633
+ } : {
634
+ key: e,
635
+ fraction: 0
636
+ };
637
+ }, Rr = (e) => {
638
+ if (Array.isArray(e)) {
639
+ let t = Lr(e[0]), n = Lr(e[1]), r = Pr(t.key), i = Pr(n.key);
640
+ if (r < 0 || i < 0) return null;
641
+ let a = r + t.fraction, o = n.fraction > 0 ? i + n.fraction : i + 1;
642
+ return o > a ? {
613
643
  start: a,
614
- end: o
644
+ end: o,
645
+ explicit: !0
646
+ } : null;
647
+ }
648
+ let t = Lr(e), n = Pr(t.key);
649
+ if (n < 0) {
650
+ let t = Pr(e);
651
+ return t < 0 ? null : {
652
+ start: t,
653
+ end: t + 1,
654
+ explicit: !1
615
655
  };
656
+ }
657
+ return {
658
+ start: n,
659
+ end: n + 1,
660
+ explicit: !1
661
+ };
662
+ }, zr = h(() => !!Zt.value?.ordered), Br = h(() => {
663
+ let e = B.value, t = jr.value, n = Nr.value, r = Mr.value, i = zr.value, a = e.map(() => null), o = /* @__PURE__ */ new Set(), s = (e) => {
664
+ for (let t = Math.floor(e.start); t < e.end - 1e-6; t++) o.add(t);
665
+ };
666
+ i || (e.forEach((e, t) => {
667
+ if (e.snap == null) return;
668
+ let n = Rr(e.snap);
669
+ n && (a[t] = {
670
+ ...n,
671
+ overflow: !1
672
+ }, s(a[t]));
673
+ }), e.forEach((e, r) => {
674
+ if (a[r] || e.snap != null) return;
675
+ let i = Pr(String(e.key));
676
+ i < t || i >= n || o.has(i) || (a[r] = {
677
+ start: i,
678
+ end: i + 1,
679
+ explicit: !1,
680
+ overflow: !1
681
+ }, o.add(i));
682
+ }));
683
+ let c = 0, l = 0, u = e.map((i, s) => {
684
+ let u = a[s], d;
685
+ if (u && u.start + 1e-6 < c && (a[s] = null, u = null, d = String(i.key)), !u) {
686
+ let i = Math.max(c, t), f = n;
687
+ for (let t = s + 1; t < e.length; t++) {
688
+ let e = a[t];
689
+ e && (f = Math.min(f, e.start));
690
+ }
691
+ let p = Math.max(Math.floor(i), t);
692
+ for (; p < f && o.has(p);) p++;
693
+ if (p < f && p + 1e-6 >= i) o.add(p), u = {
694
+ start: i,
695
+ end: p + 1,
696
+ explicit: !1,
697
+ overflow: !1
698
+ };
699
+ else if (p < f) o.add(p), u = {
700
+ start: i,
701
+ end: p + 1,
702
+ explicit: !1,
703
+ overflow: !1
704
+ };
705
+ else {
706
+ let e = Math.max(r, n) + l++;
707
+ u = {
708
+ start: e,
709
+ end: e + 1,
710
+ explicit: !1,
711
+ overflow: !0
712
+ };
713
+ }
714
+ d && (u.demoted = d);
715
+ }
716
+ return c = Math.max(c, u.end), u;
616
717
  });
617
- }), Mr = (e) => K.value && e.start >= Dr.value, Nr = h(() => jr.value.some(Mr)), Pr = (e) => {
618
- let t = z.value[e];
619
- return (t ? vn(t) : null) == null && !K.value;
620
- }, Fr = h(() => {
621
- if (!K.value) return -1;
622
- let e = z.value;
718
+ return u.forEach((t, r) => {
719
+ if (t.overflow || t.explicit) return;
720
+ let i = u[r + 1];
721
+ i && !i.overflow && i.start > t.end && (t.end = i.start), r === e.length - 1 && e[r].width == null && (t.end = Math.max(t.end, n));
722
+ }), u;
723
+ }), Vr = (e) => J.value && e.overflow;
724
+ process.env.NODE_ENV !== "production" && (D(() => xr.value && zr.value, (e) => {
725
+ e && n().warn("BbTable: `snap` targets are ignored under a parent that uses `order` / `reorderable` — the parent's columns can move, so the child inherits by position. Keep the parent's order static (no `reorderable`, an empty `order`) to snap by key.");
726
+ }, { immediate: !0 }), D(() => Br.value.find((e) => e.demoted)?.demoted ?? null, (e) => {
727
+ e !== null && n().warn(`BbTable: column '${e}' snaps to a parent column that sits BEFORE the column preceding it — the child's order disagrees with the parent's, so the snap cannot tile and the column flows into the next free parent track instead. Declare the child's columns in the parent's order.`);
728
+ }, { immediate: !0 }));
729
+ let Hr = h(() => Br.value.some(Vr)), Ur = (e) => {
730
+ let t = B.value[e];
731
+ return (t ? Cn(t) : null) == null && !J.value;
732
+ }, Wr = h(() => {
733
+ if (!J.value) return -1;
734
+ let e = B.value;
623
735
  for (let t = e.length - 1; t >= 0; t--) {
624
736
  let n = e[t];
625
737
  if (n.width == null && n.snap == null) return t;
626
738
  }
627
739
  return -1;
628
- }), Ir = h(() => {
629
- let e = jr.value[0];
630
- return !_r.value || !Jt.value || !e ? null : Ar(0, e.start);
631
- }), Lr = h(() => {
632
- let e = jr.value, t = e[e.length - 1];
633
- return !_r.value || !Jt.value || !t || Nr.value ? null : Ar(t.end, Or.value);
634
- }), Rr = (e) => Xt.tracks[e] ?? null, zr = (e, t, n) => !_r.value || !Jt.value ? null : n ? t ? `calc(${e ?? "0px"} - ${t})` : null : e, Br = h(() => zr(Ir.value, M.selectable ? Rr("select") : null, !!M.selectable)), Vr = h(() => Nr.value ? null : zr(Lr.value, M.actions ? Rr("actions") : null, !!M.actions)), Hr = h(() => Br.value !== null), Ur = h(() => Vr.value !== null), Wr = (e, t) => {
635
- let n = q.value ? Y.value[t] : null;
636
- return n == null ? e && Gr.value ? `minmax(${e}, max-content)` : "max-content" : `${n}px`;
637
- }, Gr = h(() => Object.keys(Yt.value?.tracks ?? {}).length > 0), Kr = (e) => /^(auto|min-content|max-content|fit-content\(.*\)|-?[\d.]+fr)$/.test(e.trim()), qr = h(() => {
740
+ }), Gr = h(() => {
741
+ let e = Br.value[0];
742
+ return !Sr.value || !Xt.value || !e ? null : Ir(0, e.start);
743
+ }), Kr = h(() => {
744
+ let e = Br.value, t = e[e.length - 1];
745
+ return !Sr.value || !Xt.value || !t || Hr.value ? null : Ir(t.end, Mr.value);
746
+ }), qr = (e) => Qt.tracks[e] ?? null, Jr = (e, t, n) => !Sr.value || !Xt.value ? null : n ? t ? `calc(${e ?? "0px"} - ${t})` : null : e, Yr = h(() => Jr(Gr.value, N.selectable ? qr("select") : null, !!N.selectable)), Xr = h(() => Hr.value ? null : Jr(Kr.value, I.value ? qr("actions") : null, I.value)), Zr = h(() => Yr.value !== null), Qr = h(() => Xr.value !== null), $r = (e, t) => {
747
+ let n = Y.value ? wr.value[t] : null;
748
+ return n == null ? e && ei.value ? `minmax(${e}, max-content)` : "max-content" : `${n}px`;
749
+ }, ei = h(() => Object.keys(Zt.value?.tracks ?? {}).length > 0), ti = (e) => /^(auto|min-content|max-content|fit-content\(.*\)|-?[\d.]+fr)$/.test(e.trim()), ni = h(() => {
638
750
  let e = [];
639
- M.selectable && e.push({
751
+ N.selectable && e.push({
640
752
  key: "select",
641
- width: Wr(Ir.value, "select"),
642
- contentSized: Y.value.select == null
753
+ width: $r(Gr.value, "select"),
754
+ contentSized: wr.value.select == null
643
755
  });
644
- let t = z.value, n = t.length - 1, r = !K.value && M.columns.length > 0 && M.columns.every((e) => e.width != null);
756
+ let t = B.value, n = t.length - 1, r = !J.value && t.length > 0 && t.every((e) => e.width != null);
645
757
  return t.forEach((t, i) => {
646
- let a = String(i), o = vn(t), s = o == null ? null : Cr(o), c = jr.value[i], l = null, u = null;
647
- if (s != null && Kr(s) ? u = s : s != null && r && !yn(t) ? u = `minmax(${s}, ${parseFloat(s) || 1}fr)` : s != null && xr(t) ? u = `minmax(${s}, 1fr)` : s == null ? Pr(i) ? u = M.fixed ? "minmax(0, 1fr)" : "auto" : Gr.value ? Mr(c) ? u = "min-content" : (l = Ar(c.start, c.end), l === null && (u = "auto")) : u = "max-content" : l = s, u !== null) {
758
+ let a = String(t.key), o = Cn(t), s = o == null ? null : kr(o), c = Br.value[i], l = null, u = null;
759
+ if (s != null && ti(s) ? u = s : s != null && r && !wn(t) ? u = `minmax(${s}, ${parseFloat(s) || 1}fr)` : s != null && Dr(t) ? u = `minmax(${s}, 1fr)` : s == null ? Ur(i) ? u = N.fixed ? "minmax(0, 1fr)" : "auto" : ei.value ? Vr(c) ? u = "min-content" : (l = Ir(c.start, c.end), l === null && (u = "auto")) : u = "max-content" : l = s, u !== null) {
648
760
  e.push({
649
761
  key: a,
650
762
  width: u,
@@ -653,230 +765,233 @@ var qe = {
653
765
  return;
654
766
  }
655
767
  let d = [];
656
- i === 0 && Hr.value && d.push("var(--offset-internal-start, 0px)"), i === n && Ur.value && d.push("var(--offset-internal-end, 0px)");
657
- let f = d.length ? `calc(${[...d, l].join(" + ")})` : l, p = i === Fr.value && !Nr.value ? `minmax(${f}, 1fr)` : f;
768
+ i === 0 && Zr.value && d.push("var(--offset-internal-start, 0px)"), i === n && Qr.value && d.push("var(--offset-internal-end, 0px)");
769
+ let f = d.length ? `calc(${[...d, l].join(" + ")})` : l, p = i === Wr.value && !Hr.value ? `minmax(${f}, 1fr)` : f;
658
770
  e.push({
659
771
  key: a,
660
772
  width: p,
661
773
  contentSized: !1
662
774
  });
663
- }), M.actions && e.push({
775
+ }), I.value && e.push({
664
776
  key: "actions",
665
- width: Wr(Lr.value, "actions"),
666
- contentSized: Y.value.actions == null
777
+ width: $r(Kr.value, "actions"),
778
+ contentSized: wr.value.actions == null
667
779
  }), e;
668
- }), Jr = h(() => {
669
- let e = z.value, t = [];
670
- for (let n of qr.value) {
671
- if (n.contentSized) continue;
672
- let r = e[Number(n.key)];
673
- r && t.push(String(r.key));
674
- }
780
+ }), ri = h(() => {
781
+ let e = B.value, t = [];
782
+ for (let n of ni.value) n.contentSized || e.some((e) => String(e.key) === n.key) && t.push(n.key);
675
783
  return t.join(" ");
676
- }), Yr = h(() => new Set(Jr.value.split(" ").filter(Boolean))), Xr = h(() => qr.value.map((e) => e.width).join(" ")), Zr = C(Xr.value), Qr = h(() => `grid-template-columns: ${Zr.value}`);
677
- D(Xr, (e) => {
678
- if (H && I.value) {
679
- I.value.style.gridTemplateColumns = e;
784
+ }), ii = h(() => new Set(ri.value.split(" ").filter(Boolean))), ai = h(() => ni.value.map((e) => e.width).join(" ")), oi = C(ai.value), si = h(() => `grid-template-columns: ${oi.value}`);
785
+ D(ai, (e) => {
786
+ if (W && R.value) {
787
+ R.value.style.gridTemplateColumns = e;
680
788
  return;
681
789
  }
682
- Zr.value = e;
790
+ oi.value = e;
683
791
  }, { flush: "sync" });
684
- let $r = h(() => {
792
+ let ci = h(() => {
685
793
  let e = {};
686
- return Br.value && (e["--offset-start"] = Br.value), Vr.value && (e["--offset-end"] = Vr.value), e;
687
- }), X = C({}), ei = [
794
+ return Yr.value && (e["--offset-start"] = Yr.value), Xr.value && (e["--offset-end"] = Xr.value), e;
795
+ }), li = C({}), ui = [
688
796
  .62,
689
797
  .42,
690
798
  .78,
691
799
  .52
692
- ], ti = (e) => {
800
+ ], di = (e) => {
693
801
  let t = ["transparent 0"], n = 0;
694
802
  return e.forEach((e, r) => {
695
- let i = ei[r % ei.length], a = Math.round((e - Pt * 2) * i);
696
- if (a >= Ft) {
697
- let e = Math.round(n + Pt);
803
+ let i = ui[r % ui.length], a = Math.round((e - It * 2) * i);
804
+ if (a >= Lt) {
805
+ let e = Math.round(n + It);
698
806
  t.push(`transparent ${e}px`, `currentColor ${e}px ${e + a}px`, `transparent ${e + a}px`);
699
807
  }
700
808
  n += e;
701
809
  }), `linear-gradient(90deg, ${t.join(",")})`;
702
- }, ni = (e) => {
703
- if (!q.value) {
704
- X.value["--placeholder-bars"] && (X.value = {});
810
+ }, fi = (e) => {
811
+ if (!Y.value) {
812
+ li.value["--placeholder-bars"] && (li.value = {});
705
813
  return;
706
814
  }
707
815
  let t = e.map((e) => parseFloat(e));
708
- t.some((e) => !(e >= 0)) || (X.value = {
709
- ...X.value,
710
- "--placeholder-bars": ti(t)
816
+ t.some((e) => !(e >= 0)) || (li.value = {
817
+ ...li.value,
818
+ "--placeholder-bars": di(t)
711
819
  });
712
- }, ri = () => {
713
- if (!q.value) return;
714
- let e = Math.round(ba.value || ra.value);
820
+ }, pi = () => {
821
+ if (!Y.value) return;
822
+ let e = Math.round(Aa.value || pa.value);
715
823
  if (!(e > 0)) return;
716
824
  let t = `${e}px`;
717
- X.value["--row-h"] !== t && (X.value = {
718
- ...X.value,
825
+ li.value["--row-h"] !== t && (li.value = {
826
+ ...li.value,
719
827
  "--row-h": t
720
828
  });
721
- }, ii = h(() => ({
722
- ...Zt.value,
723
- ...$r.value,
724
- ...X.value,
725
- ...M.fixedHeaders || q.value ? { "--stuck-head-h": `${si.value}px` } : null,
726
- ...br.value ? { "--virtual-row-tracks": yr.value } : null
727
- })), ai = () => {
728
- let e = I.value, t = qr.value.length;
829
+ }, mi = h(() => ({
830
+ ...$t.value,
831
+ ...ci.value,
832
+ ...li.value,
833
+ ...N.fixedHeaders || Y.value ? { "--stuck-head-h": `${_i.value}px` } : null,
834
+ ...Er.value ? { "--virtual-row-tracks": Tr.value } : null
835
+ })), hi = () => {
836
+ let e = R.value, t = ni.value.length;
729
837
  if (!e || !t) return [];
730
838
  let n = e.querySelector(":scope > .bb-table__head > .bb-table-header-row"), r = [...n ? [n] : [], ...Array.from(e.querySelectorAll(":scope > .bb-table__head > [role=\"row\"], :scope > .bb-table__body > [role=\"row\"]"))].find((e) => e.children.length >= t);
731
839
  return r ? Array.from(r.children) : [];
732
- }, oi = "", si = C(0), ci = () => {
733
- let e = I.value;
840
+ }, gi = "", _i = C(0), vi = () => {
841
+ let e = R.value;
734
842
  if (!e) return;
735
- if (M.fixedHeaders || q.value) {
843
+ if (N.fixedHeaders || Y.value) {
736
844
  let t = e.querySelector(":scope > .bb-table__head"), n = t ? Math.round(t.getBoundingClientRect().height) : 0;
737
- n !== si.value && (si.value = n);
845
+ n !== _i.value && (_i.value = n);
738
846
  }
739
847
  let t = be(e);
740
848
  if (!t) return;
741
- let n = qr.value.map((e) => e.key);
849
+ let n = ni.value.map((e) => e.key);
742
850
  if (t.length !== n.length) return;
743
- let r = t.join(" "), i = `${pi.value}|${r}`;
744
- if (i === oi) return;
745
- oi = i;
851
+ let r = t.join(" "), i = `${Ci.value}|${r}`;
852
+ if (i === gi) return;
853
+ gi = i;
746
854
  let a = {};
747
855
  n.forEach((e, n) => {
748
856
  a[e] = t[n];
749
857
  });
750
- let o = String(M.columns.length - 1), s = Br.value, c = Vr.value;
751
- s && a[0] && (a[0] = `calc(${a[0]} - (${s}))`, !M.selectable && Ir.value && (a.select = Ir.value)), c && a[o] && (a[o] = `calc(${a[o]} - (${c}))`, !M.actions && Lr.value && (a.actions = Lr.value)), Fa(t), ni(t), q.value && (yr.value = r), li = t, $t(a), M.fixedColumns?.length && fe(e, M.fixedColumns, t);
752
- }, li = null, ui, di = () => {
753
- if (!ui) return;
754
- ui.disconnect();
755
- let e = ai();
756
- e.forEach((e) => ui?.observe(e)), e.length && ci();
858
+ let o = V.value, s = o[0], c = o[o.length - 1], l = Yr.value, u = Xr.value;
859
+ l && s && a[s] && (a[s] = `calc(${a[s]} - (${l}))`, !N.selectable && Gr.value && (a.select = Gr.value)), u && c && a[c] && (a[c] = `calc(${a[c]} - (${u}))`, !I.value && Kr.value && (a.actions = Kr.value));
860
+ let d = [
861
+ ..."select" in a ? ["select"] : [],
862
+ ...o,
863
+ ..."actions" in a ? ["actions"] : []
864
+ ];
865
+ Ga(t), fi(t), Y.value && (Tr.value = r), yi = t, tn(a, d), vo.value.length && fe(e, vo.value, t);
866
+ }, yi = null, bi, xi = () => {
867
+ if (!bi) return;
868
+ bi.disconnect();
869
+ let e = hi();
870
+ e.forEach((e) => bi?.observe(e)), e.length && vi();
757
871
  };
758
- ke(() => {
759
- ui = new ResizeObserver(ci), di();
872
+ Ae(() => {
873
+ bi = new ResizeObserver(vi), xi();
760
874
  }), Oe(() => {
761
- ui?.disconnect();
875
+ bi?.disconnect();
762
876
  });
763
- let fi = h(() => qr.value.map((e) => e.key).join(" ")), pi = h(() => an.value.join(" "));
764
- D([fi, pi], () => {
765
- De(di), requestAnimationFrame(() => {
766
- I.value && ci();
877
+ let Si = h(() => ni.value.map((e) => e.key).join(" ")), Ci = h(() => V.value.join(" "));
878
+ D([Si, Ci], () => {
879
+ y(xi), requestAnimationFrame(() => {
880
+ R.value && vi();
767
881
  });
768
882
  }, { flush: "post" });
769
- let mi = (e, t) => M.accessibleLabel ? M.accessibleLabel(e, t) : [F("table.select").value, ...e.map((e) => e.content)].join(" "), hi = h(() => M.selectable ? "fieldset" : "div"), gi = h(() => M.legend || M.caption || F("table.selectableLegend").value), _i = h(() => M.loading || Di.value), vi = h(() => _i.value && !M.interactiveWhileLoading), yi = h(() => hr.value && !l(G.page) && !l(G.perPage) && !l(G.totalItems) && G.page >= 1 && G.perPage > 0 && G.totalItems >= 0), bi = h(() => ({
883
+ let wi = (e, t) => N.accessibleLabel ? N.accessibleLabel(e, t) : [L("table.select").value, ...e.map((e) => e.content)].join(" "), Ti = h(() => N.selectable ? "fieldset" : "div"), Ei = h(() => N.legend || N.caption || L("table.selectableLegend").value), Di = h(() => N.loading || Li.value), Oi = h(() => Di.value && !N.interactiveWhileLoading), ki = h(() => br.value && !l(q.page) && !l(q.perPage) && !l(q.totalItems) && q.page >= 1 && q.perPage > 0 && q.totalItems >= 0), Ai = h(() => ({
770
884
  "bb-table": !0,
771
- [`bb-table--align-${M.align}`]: !0,
772
- "bb-table--compact": M.compact,
773
- "bb-table--reorderable": !!M.reorderable,
774
- "bb-table--resizable": gn.value,
775
- "bb-table--fixed": vr.value,
776
- "bb-table--inherit-widths": Sr.value,
777
- "bb-table--fixed-header": M.fixedHeaders || q.value,
778
- "bb-table--virtual": q.value,
779
- "bb-table--virtual-flat": br.value,
780
- "bb-table--loading": _i.value,
885
+ [`bb-table--align-${N.align}`]: !0,
886
+ "bb-table--compact": N.compact,
887
+ "bb-table--reorderable": !!N.reorderable,
888
+ "bb-table--resizable": xn.value,
889
+ "bb-table--fixed": Cr.value,
890
+ "bb-table--inherit-widths": Or.value,
891
+ "bb-table--fixed-header": N.fixedHeaders || Y.value,
892
+ "bb-table--virtual": Y.value,
893
+ "bb-table--virtual-flat": Er.value,
894
+ "bb-table--loading": Di.value,
781
895
  "bb-table--empty": !Z.value.length,
782
- "bb-table--selectable": !!M.selectable,
896
+ "bb-table--selectable": !!N.selectable,
783
897
  "scrollbar-border": !0
784
- })), xi = h(() => M.columns.length + Number(!!M.selectable) + Number(!!M.actions)), Si = h(() => Object.fromEntries(M.columns.map((e) => [e.key, pe(e.key)]))), { getter: Ci, clientReproducible: wi, hydratedFromSsr: Ti, items: Ei, loading: Di } = d({ items: Pe(M, "items") }), { hasPrefilled: Oi } = ae({
785
- alreadyLoaded: Ti,
786
- clientReproducible: wi,
898
+ })), ji = h(() => cn.value.length + Number(!!N.selectable) + Number(I.value)), Mi = h(() => Object.fromEntries(N.columns.map((e) => [e.key, pe(e.key)]))), { getter: Ni, clientReproducible: Pi, hydratedFromSsr: Fi, items: Ii, loading: Li } = d({ items: Fe(N, "items") }), { hasPrefilled: Ri } = ae({
899
+ alreadyLoaded: Fi,
900
+ clientReproducible: Pi,
787
901
  trigger: !0,
788
902
  fn: async (e) => {
789
- await Ci(e, G.selected), Ni();
903
+ await Ni(e, q.selected), Ui();
790
904
  }
791
- }), { data: ki } = re({ items: h(() => G.selected) }), { options: Z, baseOptions: Ai } = ie({
792
- disabled: Pe(M, "disabled"),
793
- items: Ei,
905
+ }), { data: zi } = re({ items: h(() => q.selected) }), { options: Z, baseOptions: Bi } = ie({
906
+ disabled: Fe(N, "disabled"),
907
+ items: Ii,
794
908
  itemText: void 0,
795
- itemValue: M.itemValue,
796
- max: M.max,
909
+ itemValue: N.itemValue,
910
+ max: N.max,
797
911
  selectable: !0,
798
- selectedIndexedByHash: ki
799
- }), ji = async (e) => {
800
- M.multiple ? G.selected = (G.selected ?? []).concat(e.value) : G.selected = e.value;
801
- }, Mi = async (e) => {
802
- if (M.multiple) {
803
- let t = { ...ki.value };
804
- delete t[e.valueHash], G.selected = Object.values(t);
805
- } else G.selected = null;
912
+ selectedIndexedByHash: zi
913
+ }), Vi = async (e) => {
914
+ N.multiple ? q.selected = (q.selected ?? []).concat(e.value) : q.selected = e.value;
915
+ }, Hi = async (e) => {
916
+ if (N.multiple) {
917
+ let t = { ...zi.value };
918
+ delete t[e.valueHash], q.selected = Object.values(t);
919
+ } else q.selected = null;
806
920
  };
807
921
  p(() => [
808
- M.dependencies,
809
- M.items,
810
- typeof M.items == "function" ? [G.page, G.perPage] : void 0
922
+ N.dependencies,
923
+ N.items,
924
+ typeof N.items == "function" ? [q.page, q.perPage] : void 0
811
925
  ], async () => {
812
- Oi.value && (await Ci(!0, G.selected), Ni());
813
- }, { debounce: M.depsDebounceTime });
814
- let Ni = () => {
815
- if (!M.enforceCoherence) return;
926
+ Ri.value && (await Ni(!0, q.selected), Ui());
927
+ }, { debounce: N.depsDebounceTime });
928
+ let Ui = () => {
929
+ if (!N.enforceCoherence) return;
816
930
  let e = new Set(Z.value.map((e) => e.valueHash)), t = (t) => e.has(u(t));
817
- if (M.multiple) {
818
- let e = G.selected ?? [];
819
- e.every(t) || (G.selected = e.filter(t));
820
- } else !l(G.selected) && !t(G.selected) && (G.selected = null);
821
- let n = G.unselected ?? [];
822
- n.every(t) || (G.unselected = n.filter(t)), !l(A.value) && !t(A.value) && (A.value = null), j.value.every(t) || (j.value = j.value.filter(t));
823
- }, Pi = (e, t) => {
824
- let n = Si.value[e.key], r = e.align ?? "left", i = Ht(t.item, e.key);
931
+ if (N.multiple) {
932
+ let e = q.selected ?? [];
933
+ e.every(t) || (q.selected = e.filter(t));
934
+ } else !l(q.selected) && !t(q.selected) && (q.selected = null);
935
+ let n = q.unselected ?? [];
936
+ n.every(t) || (q.unselected = n.filter(t)), !l(j.value) && !t(j.value) && (j.value = null), M.value.every(t) || (M.value = M.value.filter(t));
937
+ }, Wi = (e, t) => {
938
+ let n = Mi.value[e.key], r = e.align ?? "left", i = Ut(t.item, e.key);
825
939
  return e.formatter && (!l(i) || e.formatOnNull !== !1) && (i = e.formatter(i, e.key, t.item)), e.placeholder && l(i) && (i = e.placeholder), {
826
940
  align: r,
827
941
  get classes() {
828
- return he([`bb-table-data__cell--${r}`], M.tdClass, e.tdClass, i, e.key, t.item);
942
+ return he([`bb-table-data__cell--${r}`], N.tdClass, e.tdClass, i, e.key, t.item);
829
943
  },
830
944
  content: i,
831
945
  key: e.key,
832
946
  label: e.label,
833
947
  slotName: n
834
948
  };
835
- }, Fi = h(() => z.value.map((e) => {
836
- let t = e.align ?? "left", n = Si.value[e.key], r = Kt(n) ? `header:${n} (shadowed)` : `header:${n}`, i = pr(e.key), a = i ?? e.sorted, o = a ? a === "asc" ? "ascending" : "descending" : void 0;
949
+ }, Gi = h(() => B.value.map((e) => {
950
+ let t = e.align ?? "left", n = Mi.value[e.key], r = qt(n) ? `header:${n} (shadowed)` : `header:${n}`, i = vr(e.key), a = i ?? e.sorted, o = a ? a === "asc" ? "ascending" : "descending" : void 0;
837
951
  return {
838
952
  align: t,
839
953
  key: e.key,
840
954
  label: e.label,
841
955
  slotName: r,
842
- classes: ge([`bb-table-header--${t}`], M.thClass, e.thClass),
956
+ classes: ge([`bb-table-header--${t}`], N.thClass, e.thClass),
843
957
  sortable: !!e.sortable,
844
958
  sortDirection: o,
845
959
  sortOrder: i
846
960
  };
847
- })), Ii = (e, t) => {
848
- let n = Si.value[e];
849
- return (Kt(n) ? void 0 : P[`header:${n}:${t}`]) ?? P[`header:${t}`];
850
- }, Li = (e) => ({
961
+ })), Ki = (e, t) => {
962
+ let n = Mi.value[e];
963
+ return (qt(n) ? void 0 : F[`header:${n}:${t}`]) ?? F[`header:${t}`];
964
+ }, qi = (e) => ({
851
965
  classes: e.classes,
852
966
  columnKey: e.key,
853
- items: Ei.value,
967
+ items: Ii.value,
854
968
  label: e.label,
855
969
  sortable: e.sortable,
856
970
  sortOrder: e.sortOrder,
857
- toggleSort: () => mr(e.key)
858
- }), Ri = (e, t) => {
971
+ toggleSort: () => yr(e.key),
972
+ hideColumn: () => ln(e.key)
973
+ }), Ji = (e, t) => {
859
974
  let n = Z.value[e];
860
975
  return n && n.valueHash === t ? n : Z.value.find((e) => e.valueHash === t);
861
- }, zi = (e) => {
862
- let t = Ai.value[e], n = z.value.map((e) => Pi(e, t));
976
+ }, Yi = (e) => {
977
+ let t = Bi.value[e], n = B.value.map((e) => Wi(e, t));
863
978
  return {
864
- accessibleLabel: mi(n, t.item),
979
+ accessibleLabel: wi(n, t.item),
865
980
  cols: n,
866
981
  get rowClasses() {
867
- return _e(M.rowClass, z.value, n, t.item);
982
+ return _e(N.rowClass, B.value, n, t.item);
868
983
  },
869
984
  onRowClick: (n) => {
870
- let r = Ri(e, t.valueHash);
871
- r && (fr(n, r), N("click:row", n, r.item));
985
+ let r = Ji(e, t.valueHash);
986
+ r && (_r(n, r), P("click:row", n, r.item));
872
987
  },
873
988
  onRowContextMenu: (n) => {
874
- let r = Ri(e, t.valueHash);
875
- r && N("contextmenu:row", n, r.item);
989
+ let r = Ji(e, t.valueHash);
990
+ r && P("contextmenu:row", n, r.item);
876
991
  },
877
992
  onRowDblClick: (n) => {
878
- let r = Ri(e, t.valueHash);
879
- r && N("dblclick:row", n, r.item);
993
+ let r = Ji(e, t.valueHash);
994
+ r && P("dblclick:row", n, r.item);
880
995
  },
881
996
  item: t.item,
882
997
  get text() {
@@ -885,23 +1000,23 @@ var qe = {
885
1000
  valueHash: t.valueHash,
886
1001
  value: t.value
887
1002
  };
888
- }, Bi = h(() => {
889
- Ai.value, Si.value, M.tdClass, M.rowClass, M.accessibleLabel;
890
- for (let e of z.value) e.align, e.formatOnNull, e.formatter, e.key, e.label, e.placeholder, e.tdClass;
1003
+ }, Xi = h(() => {
1004
+ Bi.value, Mi.value, N.tdClass, N.rowClass, N.accessibleLabel;
1005
+ for (let e of B.value) e.align, e.formatOnNull, e.formatter, e.key, e.label, e.placeholder, e.tdClass;
891
1006
  return /* @__PURE__ */ new Map();
892
- }), Vi = (e) => {
893
- if (!(!q.value || e.size <= It)) {
894
- for (let t of e.keys()) if (e.delete(t), e.size <= It) break;
1007
+ }), Zi = (e) => {
1008
+ if (!(!Y.value || e.size <= Rt)) {
1009
+ for (let t of e.keys()) if (e.delete(t), e.size <= Rt) break;
895
1010
  }
896
- }, Hi = (e) => {
897
- let t = Bi.value, n = t.get(e);
1011
+ }, Qi = (e) => {
1012
+ let t = Xi.value, n = t.get(e);
898
1013
  if (n) return n;
899
- let r = zi(e);
900
- return t.set(e, r), Vi(t), r;
901
- }, Ui = h(() => (Bi.value, Q.value, Z.value, ar.value, M.selectable, /* @__PURE__ */ new Map())), Wi = (e) => {
902
- let t = Ui.value, n = t.get(e.index);
1014
+ let r = Yi(e);
1015
+ return t.set(e, r), Zi(t), r;
1016
+ }, $i = h(() => (Xi.value, Q.value, Z.value, ur.value, N.selectable, /* @__PURE__ */ new Map())), ea = (e) => {
1017
+ let t = $i.value, n = t.get(e.index);
903
1018
  if (n) return n;
904
- let r = Hi(e.index), i = Z.value[e.index], a = !M.selectable || typeof M.selectable == "function" && !M.selectable(r.item) || !!i.disabled, o = {
1019
+ let r = Qi(e.index), i = Z.value[e.index], a = !N.selectable || typeof N.selectable == "function" && !N.selectable(r.item) || !!i.disabled, o = {
905
1020
  accessibleLabel: r.accessibleLabel,
906
1021
  cols: r.cols,
907
1022
  item: r.item,
@@ -917,50 +1032,50 @@ var qe = {
917
1032
  value: r.value,
918
1033
  valueHash: r.valueHash,
919
1034
  expanded: e.expanded,
920
- highlighted: r.valueHash in ar.value,
1035
+ highlighted: r.valueHash in ur.value,
921
1036
  rowIndex: e.rowIndex,
922
1037
  selected: i.selected,
923
1038
  disabled: a,
924
1039
  expandProps: {},
925
- toggleExpanded: () => qa(r.valueHash),
926
- toggleHighlighted: () => dr(r, { viaSlot: !0 }),
927
- toggleSelected: () => eo(o)
1040
+ toggleExpanded: () => ro(r.valueHash),
1041
+ toggleHighlighted: () => gr(r, { viaSlot: !0 }),
1042
+ toggleSelected: () => uo(o)
928
1043
  };
929
- return o.expandProps = Ka(o), t.set(e.index, o), Vi(t), o;
930
- }, Gi = C(0);
931
- D(() => Ai.value.length, (e) => {
932
- Gi.value = te(Gi.value, 0, Math.max(0, e - 1));
1044
+ return o.expandProps = no(o), t.set(e.index, o), Zi(t), o;
1045
+ }, ta = C(0);
1046
+ D(() => Bi.value.length, (e) => {
1047
+ ta.value = te(ta.value, 0, Math.max(0, e - 1));
933
1048
  });
934
- let Ki = () => I.value?.querySelectorAll(":scope > .bb-table__body > .bb-table-data__row"), qi = (e) => {
935
- let t = Ki();
1049
+ let na = () => R.value?.querySelectorAll(":scope > .bb-table__body > .bb-table-data__row"), ra = (e) => {
1050
+ let t = na();
936
1051
  if (t) {
937
- if (!q.value) return t[e];
1052
+ if (!Y.value) return t[e];
938
1053
  for (let n of t) if (Q.value[Number(n.dataset.index)]?.index === e) return n;
939
1054
  }
940
- }, Ji = () => new Promise((e) => requestAnimationFrame(() => e())), Yi = async (e) => {
941
- Gi.value = e;
942
- let t = qi(e);
943
- if (q.value && !t) {
1055
+ }, ia = () => new Promise((e) => requestAnimationFrame(() => e())), aa = async (e) => {
1056
+ ta.value = e;
1057
+ let t = ra(e);
1058
+ if (Y.value && !t) {
944
1059
  let n = Q.value.findIndex((t) => t.kind === "row" && t.index === e);
945
1060
  if (n >= 0) {
946
- pa++, va();
1061
+ Ca++, Oa();
947
1062
  try {
948
- for (let r = 0; r < 8 && !t; r++) Ma.value.scrollToIndex(n, { align: "auto" }), await Ji(), await De(), t = qi(e);
1063
+ for (let r = 0; r < 8 && !t; r++) Ha.value.scrollToIndex(n, { align: "auto" }), await ia(), await y(), t = ra(e);
949
1064
  } finally {
950
- pa--;
1065
+ Ca--;
951
1066
  }
952
1067
  }
953
1068
  }
954
- if (t?.focus(), t?.scrollIntoView({ block: "nearest" }), t && q.value) for (let e = 0; e < 4; e++) {
1069
+ if (t?.focus(), t?.scrollIntoView({ block: "nearest" }), t && Y.value) for (let e = 0; e < 4; e++) {
955
1070
  let e = t.getBoundingClientRect().top;
956
- if (await Ji(), t.scrollIntoView({ block: "nearest" }), Math.abs(t.getBoundingClientRect().top - e) < .5) break;
1071
+ if (await ia(), t.scrollIntoView({ block: "nearest" }), Math.abs(t.getBoundingClientRect().top - e) < .5) break;
957
1072
  }
958
- }, Xi = (e) => {
959
- M.keyboardNavigation && (Gi.value = e);
1073
+ }, oa = (e) => {
1074
+ N.keyboardNavigation && (ta.value = e);
960
1075
  }, Q = h(() => {
961
- let e = [], t = 0, n = ((G.page ?? 0) - 1) * (G.perPage ?? 0);
962
- return Ai.value.forEach((r, i) => {
963
- let a = r.valueHash in Wa.value, o = n + 1 + i + 1 + t;
1076
+ let e = [], t = 0, n = ((q.page ?? 0) - 1) * (q.perPage ?? 0);
1077
+ return Bi.value.forEach((r, i) => {
1078
+ let a = r.valueHash in eo.value, o = n + 1 + i + 1 + t;
964
1079
  e.push({
965
1080
  kind: "row",
966
1081
  index: i,
@@ -977,7 +1092,7 @@ var qe = {
977
1092
  rowIndex: o
978
1093
  }));
979
1094
  }), e;
980
- }), Zi = (e, t, n, r) => {
1095
+ }), sa = (e, t, n, r) => {
981
1096
  let i;
982
1097
  return {
983
1098
  kind: t,
@@ -986,13 +1101,13 @@ var qe = {
986
1101
  virtualIndex: e.virtualIndex,
987
1102
  height: r,
988
1103
  get item() {
989
- return i ??= Wi(e);
1104
+ return i ??= ea(e);
990
1105
  }
991
1106
  };
992
- }, Qi = Ne(null), $i = C(0), ea = C(null), ta = (e) => /^(auto|scroll)$/.test(getComputedStyle(e).overflowY), na = () => {
993
- let e = L.value, t = ea.value, n = I.value;
994
- if (!q.value || !e || !t || !n) {
995
- Qi.value = null;
1107
+ }, ca = Pe(null), la = C(0), ua = C(null), da = (e) => /^(auto|scroll)$/.test(getComputedStyle(e).overflowY), fa = () => {
1108
+ let e = Jt.value, t = ua.value, n = R.value;
1109
+ if (!Y.value || !e || !t || !n) {
1110
+ ca.value = null;
996
1111
  return;
997
1112
  }
998
1113
  let r = e.getBoundingClientRect(), i = n.getBoundingClientRect().bottom - r.top, a = getComputedStyle(e).maxHeight !== "none" || e.scrollHeight > e.clientHeight + 1 || e.clientHeight > i + 1, o = window;
@@ -1000,7 +1115,7 @@ var qe = {
1000
1115
  else {
1001
1116
  let t = e.parentElement;
1002
1117
  for (; t && t !== document.body && t !== document.documentElement;) {
1003
- if (ta(t)) {
1118
+ if (da(t)) {
1004
1119
  o = t;
1005
1120
  break;
1006
1121
  }
@@ -1008,45 +1123,45 @@ var qe = {
1008
1123
  }
1009
1124
  }
1010
1125
  let s = t.getBoundingClientRect().top, c = o === window ? s + window.scrollY : s - o.getBoundingClientRect().top + o.scrollTop;
1011
- $i.value !== c && ($i.value = c), Qi.value !== o && (Qi.value = o);
1012
- }, ra = C(37), ia = () => {
1013
- let e = L.value;
1126
+ la.value !== c && (la.value = c), ca.value !== o && (ca.value = o);
1127
+ }, pa = C(37), ma = () => {
1128
+ let e = Jt.value;
1014
1129
  if (!e) return;
1015
1130
  let t = parseFloat(getComputedStyle(e).getPropertyValue("--cell-h"));
1016
- t > 0 && (ra.value = t + 1);
1017
- }, aa = C(null), oa = (e) => {
1018
- if (!q.value || !ea.value) return;
1131
+ t > 0 && (pa.value = t + 1);
1132
+ }, ha = C(null), ga = (e) => {
1133
+ if (!Y.value || !ua.value) return;
1019
1134
  let t = e.target;
1020
- for (; t && t.parentElement !== ea.value;) t = t.parentElement;
1135
+ for (; t && t.parentElement !== ua.value;) t = t.parentElement;
1021
1136
  let n = Number(t?.dataset.index);
1022
- aa.value = Number.isInteger(n) ? n : null;
1023
- }, sa = (e) => {
1024
- if (!q.value) return;
1137
+ ha.value = Number.isInteger(n) ? n : null;
1138
+ }, _a = (e) => {
1139
+ if (!Y.value) return;
1025
1140
  let t = e.relatedTarget;
1026
- (!t || !ea.value?.contains(t)) && (aa.value = null);
1027
- }, ca = C(0), la = 0, ua = C(!1), da, fa = {
1141
+ (!t || !ua.value?.contains(t)) && (ha.value = null);
1142
+ }, va = C(0), ya = 0, ba = C(!1), xa, Sa = {
1028
1143
  offset: 0,
1029
1144
  time: 0
1030
- }, pa = 0, ma = /* @__PURE__ */ new Set(), ha = null, ga = 0, _a = (e) => {
1031
- ga = ga ? ga * .7 + e * .3 : e;
1032
- }, va = () => {
1033
- clearTimeout(da), da = void 0, ua.value && (ua.value = !1, Ea());
1034
- }, ya = (e) => {
1035
- let t = performance.now(), n = t - fa.time, r = e - fa.offset;
1036
- if (fa = {
1145
+ }, Ca = 0, wa = /* @__PURE__ */ new Set(), Ta = null, Ea = 0, Da = (e) => {
1146
+ Ea = Ea ? Ea * .7 + e * .3 : e;
1147
+ }, Oa = () => {
1148
+ clearTimeout(xa), xa = void 0, ba.value && (ba.value = !1, Ia());
1149
+ }, ka = (e) => {
1150
+ let t = performance.now(), n = t - Sa.time, r = e - Sa.offset;
1151
+ if (Sa = {
1037
1152
  offset: e,
1038
1153
  time: t
1039
- }, pa > 0) return;
1040
- let i = ha;
1041
- if (n > 0 && n < 250 && i && ga) {
1154
+ }, Ca > 0) return;
1155
+ let i = Ta;
1156
+ if (n > 0 && n < 250 && i && Ea) {
1042
1157
  let e = $?.scrollRect?.height ?? 0, t = (i.end - i.start + e) / 2;
1043
- Math.abs(r) / n * ga > t && (ua.value = !0);
1158
+ Math.abs(r) / n * Ea > t && (ba.value = !0);
1044
1159
  }
1045
- clearTimeout(da), da = setTimeout(va, zt);
1046
- }, ba = C(0), xa = -1, Sa = !1, Ca = () => {
1160
+ clearTimeout(xa), xa = setTimeout(Oa, Vt);
1161
+ }, Aa = C(0), ja = -1, Ma = !1, Na = () => {
1047
1162
  let e = $?.itemSizeCache;
1048
- if (!e?.size || e.size === xa) return;
1049
- xa = e.size;
1163
+ if (!e?.size || e.size === ja) return;
1164
+ ja = e.size;
1050
1165
  let t = /* @__PURE__ */ new Map(), n = 0;
1051
1166
  for (let [r, i] of e) {
1052
1167
  if (typeof r != "string" || !r.startsWith("r:")) continue;
@@ -1056,17 +1171,17 @@ var qe = {
1056
1171
  if (n >= 5) {
1057
1172
  let e = 0, r = -1;
1058
1173
  for (let [n, i] of t) (i > r || i === r && n < e) && (r = i, e = n);
1059
- e > 0 && !Sa && (ba.value = e, n >= 20 && (Sa = !0));
1174
+ e > 0 && !Ma && (Aa.value = e, n >= 20 && (Ma = !0));
1060
1175
  }
1061
- ri();
1062
- }, $ = null, wa = !1;
1063
- D(q, (e) => {
1064
- wa = e;
1176
+ pi();
1177
+ }, $ = null, Pa = !1;
1178
+ D(Y, (e) => {
1179
+ Pa = e;
1065
1180
  }, { immediate: !0 });
1066
- let Ta = Ne([]), Ea = (e = !1) => {
1067
- if (la &&= (cancelAnimationFrame(la), 0), !$) return;
1068
- let t = q.value ? $.getVirtualItems() : [];
1069
- ca.value = $.getTotalSize();
1181
+ let Fa = Pe([]), Ia = (e = !1) => {
1182
+ if (ya &&= (cancelAnimationFrame(ya), 0), !$) return;
1183
+ let t = Y.value ? $.getVirtualItems() : [];
1184
+ va.value = $.getTotalSize();
1070
1185
  let n = [], r = null;
1071
1186
  if (t.length) {
1072
1187
  let e = $.measurementsCache, i = Q.value.length, a = $.range, o = a ? a.startIndex : t[0].index, s = a ? a.endIndex : t[t.length - 1].index;
@@ -1076,153 +1191,153 @@ var qe = {
1076
1191
  end: e.end,
1077
1192
  size: e.size
1078
1193
  });
1079
- let c = e?.[Math.max(0, o - Rt)], l = e?.[Math.min(i - 1, s + Rt)] ?? c;
1194
+ let c = e?.[Math.max(0, o - Bt)], l = e?.[Math.min(i - 1, s + Bt)] ?? c;
1080
1195
  c && l && (r = {
1081
1196
  start: c.start,
1082
1197
  end: l.end
1083
1198
  });
1084
1199
  }
1085
- let i = !Da || !r || Da.start !== r.start || Da.end !== r.end;
1086
- if (Da = r, Ta.value = n, !r) return;
1200
+ let i = !La || !r || La.start !== r.start || La.end !== r.end;
1201
+ if (La = r, Fa.value = n, !r) return;
1087
1202
  if (!e || !i) {
1088
- ha = r;
1203
+ Ta = r;
1089
1204
  return;
1090
1205
  }
1091
1206
  let a = performance.now(), o = r;
1092
- De(() => {
1093
- _a(performance.now() - a), ha = o;
1207
+ y(() => {
1208
+ Da(performance.now() - a), Ta = o;
1094
1209
  });
1095
- }, Da = null, Oa = () => {
1096
- la ||= requestAnimationFrame(() => {
1097
- la = 0, Ca(), Ea();
1210
+ }, La = null, Ra = () => {
1211
+ ya ||= requestAnimationFrame(() => {
1212
+ ya = 0, Na(), Ia();
1098
1213
  });
1099
- }, ka = (e, t) => {
1100
- t ? (ya(e.getScrollOffset()), Ea(!0)) : Oa();
1101
- }, Aa = (e) => Q.value[e]?.key ?? e, ja = (e) => (Q.value[e]?.kind === "expand" ? 3 : 1) * (ba.value || ra.value), Ma = Ge(h(() => {
1102
- let e = Qi.value, t = e === window, n = aa.value;
1214
+ }, za = (e, t) => {
1215
+ t ? (ka(e.getScrollOffset()), Ia(!0)) : Ra();
1216
+ }, Ba = (e) => Q.value[e]?.key ?? e, Va = (e) => (Q.value[e]?.kind === "expand" ? 3 : 1) * (Aa.value || pa.value), Ha = qe(h(() => {
1217
+ let e = ca.value, t = e === window, n = ha.value;
1103
1218
  return {
1104
- onChange: ka,
1105
- count: q.value ? Q.value.length : 0,
1106
- enabled: q.value,
1219
+ onChange: za,
1220
+ count: Y.value ? Q.value.length : 0,
1221
+ enabled: Y.value,
1107
1222
  getScrollElement: () => e,
1108
- estimateSize: ja,
1109
- getItemKey: Aa,
1110
- overscan: Rt,
1111
- scrollMargin: $i.value,
1223
+ estimateSize: Va,
1224
+ getItemKey: Ba,
1225
+ overscan: Bt,
1226
+ scrollMargin: la.value,
1112
1227
  initialRect: {
1113
1228
  width: 0,
1114
1229
  height: 800
1115
1230
  },
1116
1231
  rangeExtractor: (e) => {
1117
- let t = ze(e.endIndex - e.startIndex > Lt ? {
1232
+ let t = Ve(e.endIndex - e.startIndex > zt ? {
1118
1233
  ...e,
1119
- endIndex: e.startIndex + Lt
1234
+ endIndex: e.startIndex + zt
1120
1235
  } : e);
1121
1236
  return n == null || n >= e.count || t.includes(n) ? t : [...t, n].sort((e, t) => e - t);
1122
1237
  },
1123
- observeElementRect: t ? We : He,
1124
- observeElementOffset: t ? Ue : Ve,
1125
- scrollToFn: t ? Ke : Be
1238
+ observeElementRect: t ? Ke : We,
1239
+ observeElementOffset: t ? Ge : Ue,
1240
+ scrollToFn: t ? Je : He
1126
1241
  };
1127
1242
  }));
1128
- $ = Ma.value, Ea();
1129
- let Na = (e) => {
1130
- wa && $?.measureElement(e);
1131
- }, Pa = h(() => {
1243
+ $ = Ha.value, Ia();
1244
+ let Ua = (e) => {
1245
+ Pa && $?.measureElement(e);
1246
+ }, Wa = h(() => {
1132
1247
  let e = Q.value;
1133
- if (Ui.value, !q.value) return e.map((e) => Zi(e, e.kind, e.key, 0));
1134
- let t = Ta.value;
1248
+ if ($i.value, !Y.value) return e.map((e) => sa(e, e.kind, e.key, 0));
1249
+ let t = Fa.value;
1135
1250
  if (!t.length) return [];
1136
- let n = [], r = $i.value, i = ua.value, a = r, o;
1251
+ let n = [], r = la.value, i = ba.value, a = r, o;
1137
1252
  for (let r of t) {
1138
1253
  let t = e[r.index];
1139
1254
  if (!t) continue;
1140
1255
  let s = r.start - a;
1141
- s > .5 && n.push(Zi(t, "spacer", `s:${t.key}`, s)), i && t.kind === "row" && !ma.has(t.key) ? n.push(Zi(t, "placeholder", `p:${t.key}`, r.size)) : n.push(Zi(t, t.kind, t.key, 0)), a = r.end, o = t;
1256
+ s > .5 && n.push(sa(t, "spacer", `s:${t.key}`, s)), i && t.kind === "row" && !wa.has(t.key) ? n.push(sa(t, "placeholder", `p:${t.key}`, r.size)) : n.push(sa(t, t.kind, t.key, 0)), a = r.end, o = t;
1142
1257
  }
1143
- let s = ca.value - (a - r);
1144
- return s > .5 && o && n.push(Zi(o, "spacer", "s:end", s)), n;
1258
+ let s = va.value - (a - r);
1259
+ return s > .5 && o && n.push(sa(o, "spacer", "s:end", s)), n;
1145
1260
  });
1146
- D(Pa, (e) => {
1147
- if (q.value) for (let t of e) (t.kind === "row" || t.kind === "expand") && ma.add(t.key);
1261
+ D(Wa, (e) => {
1262
+ if (Y.value) for (let t of e) (t.kind === "row" || t.kind === "expand") && wa.add(t.key);
1148
1263
  }, { flush: "post" });
1149
- let Fa = (e) => {
1150
- let t = I.value;
1151
- if (!q.value || !t || !t.querySelector(":scope > .bb-table__body > .bb-table-data__row")) return;
1152
- let n = z.value, r = null, i = null;
1153
- if (qr.value.forEach((t, a) => {
1264
+ let Ga = (e) => {
1265
+ let t = R.value;
1266
+ if (!Y.value || !t || !t.querySelector(":scope > .bb-table__body > .bb-table-data__row")) return;
1267
+ let n = B.value, r = null, i = null;
1268
+ if (ni.value.forEach((t, a) => {
1154
1269
  if (t.key === "select" || t.key === "actions") {
1155
- if (t.key in Y.value) return;
1270
+ if (t.key in wr.value) return;
1156
1271
  let n = parseFloat(e[a]);
1157
1272
  if (!(n > 0)) return;
1158
- (i ??= { ...Y.value })[t.key] = n;
1273
+ (i ??= { ...wr.value })[t.key] = n;
1159
1274
  return;
1160
1275
  }
1161
- let o = n[Number(t.key)];
1276
+ let o = n.find((e) => String(e.key) === t.key);
1162
1277
  if (!o || o.width != null) return;
1163
1278
  let s = String(o.key);
1164
- if (s in J.value || s in (r ?? {})) return;
1279
+ if (s in X.value || s in (r ?? {})) return;
1165
1280
  let c = parseFloat(e[a]);
1166
- c > 0 && ((r ??= { ...J.value })[s] = c);
1167
- }), !r && !i || Ia) return;
1281
+ c > 0 && ((r ??= { ...X.value })[s] = c);
1282
+ }), !r && !i || Ka) return;
1168
1283
  let a = r, o = i;
1169
- Ia = requestAnimationFrame(() => {
1170
- Ia = 0, a && (J.value = {
1171
- ...J.value,
1284
+ Ka = requestAnimationFrame(() => {
1285
+ Ka = 0, a && (X.value = {
1286
+ ...X.value,
1172
1287
  ...a
1173
- }), o && (Y.value = {
1174
- ...Y.value,
1288
+ }), o && (wr.value = {
1289
+ ...wr.value,
1175
1290
  ...o
1176
1291
  });
1177
1292
  });
1178
- }, Ia = 0;
1179
- D(() => [q.value, Z.value.length === 0], ([e, t]) => {
1180
- (!e || t) && (J.value = {}, Y.value = {}, yr.value = "");
1181
- }), D(ra, () => {
1182
- q.value && Ma.value.measure();
1293
+ }, Ka = 0;
1294
+ D(() => [Y.value, Z.value.length === 0], ([e, t]) => {
1295
+ (!e || t) && (X.value = {}, wr.value = {}, Tr.value = "");
1296
+ }), D(pa, () => {
1297
+ Y.value && Ha.value.measure();
1183
1298
  });
1184
- let La, Ra, za = () => {
1185
- La?.disconnect(), La = void 0, Ra?.(), Ra = void 0;
1186
- let e = L.value;
1187
- if (!q.value || !e) return;
1299
+ let qa, Ja, Ya = () => {
1300
+ qa?.disconnect(), qa = void 0, Ja?.(), Ja = void 0;
1301
+ let e = Jt.value;
1302
+ if (!Y.value || !e) return;
1188
1303
  let t = 0, n = () => {
1189
1304
  t ||= requestAnimationFrame(() => {
1190
- t = 0, na();
1305
+ t = 0, fa();
1191
1306
  });
1192
1307
  };
1193
- if (Qi.value === e) La = new ResizeObserver(() => na()), La.observe(e);
1308
+ if (ca.value === e) qa = new ResizeObserver(() => fa()), qa.observe(e);
1194
1309
  else {
1195
1310
  window.addEventListener("resize", n);
1196
1311
  let e = new ResizeObserver(n);
1197
- e.observe(document.documentElement), Ra = () => {
1312
+ e.observe(document.documentElement), Ja = () => {
1198
1313
  window.removeEventListener("resize", n), e.disconnect(), t && cancelAnimationFrame(t);
1199
1314
  };
1200
1315
  }
1201
1316
  };
1202
- D(Qi, za), D(() => [q.value, Q.value.length], () => {
1203
- De(() => {
1204
- ia(), na(), za(), ma = /* @__PURE__ */ new Set(), xa = -1, Sa = !1, Ea();
1317
+ D(ca, Ya), D(() => [Y.value, Q.value.length], () => {
1318
+ y(() => {
1319
+ ma(), fa(), Ya(), wa = /* @__PURE__ */ new Set(), ja = -1, Ma = !1, Ia();
1205
1320
  });
1206
1321
  }, { flush: "post" });
1207
- let Ba = () => {
1208
- q.value && Object.keys(J.value).length && (J.value = {});
1209
- }, Va, Ha = () => {
1322
+ let Xa = () => {
1323
+ Y.value && Object.keys(X.value).length && (X.value = {});
1324
+ }, Za, Qa = () => {
1210
1325
  let e = typeof document < "u" ? document.fonts : void 0;
1211
- !e || Va || (e.status !== "loaded" && e.ready.then(Ba), e.addEventListener("loadingdone", Ba), Va = () => e.removeEventListener("loadingdone", Ba));
1326
+ !e || Za || (e.status !== "loaded" && e.ready.then(Xa), e.addEventListener("loadingdone", Xa), Za = () => e.removeEventListener("loadingdone", Xa));
1212
1327
  };
1213
- ke(() => {
1214
- ia(), ri(), na(), za(), Ea(), q.value && Ha();
1215
- }), D(q, (e) => {
1216
- e && Ha(), li && ni(li), ri();
1328
+ Ae(() => {
1329
+ ma(), pi(), fa(), Ya(), Ia(), Y.value && Qa();
1330
+ }), D(Y, (e) => {
1331
+ e && Qa(), yi && fi(yi), pi();
1217
1332
  }), Oe(() => {
1218
- La?.disconnect(), Ra?.(), Va?.(), la && cancelAnimationFrame(la);
1333
+ qa?.disconnect(), Ja?.(), Za?.(), ya && cancelAnimationFrame(ya);
1219
1334
  });
1220
- let Ua = (e, t) => {
1221
- if (!M.keyboardNavigation || e.target !== e.currentTarget) return;
1222
- let n = Ai.value.length - 1;
1335
+ let $a = (e, t) => {
1336
+ if (!N.keyboardNavigation || e.target !== e.currentTarget) return;
1337
+ let n = Bi.value.length - 1;
1223
1338
  if (n < 0) return;
1224
1339
  let r = (t) => {
1225
- e.preventDefault(), Yi(te(t, 0, n));
1340
+ e.preventDefault(), aa(te(t, 0, n));
1226
1341
  };
1227
1342
  switch (e.key) {
1228
1343
  case "ArrowDown":
@@ -1232,10 +1347,10 @@ var qe = {
1232
1347
  r(t - 1);
1233
1348
  break;
1234
1349
  case "PageDown":
1235
- r(t + Bt);
1350
+ r(t + Ht);
1236
1351
  break;
1237
1352
  case "PageUp":
1238
- r(t - Bt);
1353
+ r(t - Ht);
1239
1354
  break;
1240
1355
  case "Home":
1241
1356
  r(0);
@@ -1248,122 +1363,136 @@ var qe = {
1248
1363
  e.preventDefault(), e.currentTarget.click();
1249
1364
  break;
1250
1365
  }
1251
- }, { data: Wa } = re({ items: j }), Ga = (e, t) => {
1252
- e.target instanceof HTMLElement && (e.target instanceof HTMLButtonElement || e.key !== "Enter" && e.key !== " " || (e.preventDefault(), qa(t)));
1253
- }, Ka = (e) => ({
1254
- "aria-controls": l(Wa.value[e.valueHash]) ? void 0 : `expanded_${e.valueHash}`,
1366
+ }, { data: eo } = re({ items: M }), to = (e, t) => {
1367
+ e.target instanceof HTMLElement && (e.target instanceof HTMLButtonElement || e.key !== "Enter" && e.key !== " " || (e.preventDefault(), ro(t)));
1368
+ }, no = (e) => ({
1369
+ "aria-controls": l(eo.value[e.valueHash]) ? void 0 : `expanded_${e.valueHash}`,
1255
1370
  "aria-expanded": e.expanded ? "true" : "false",
1256
1371
  onClick: (t) => {
1257
- t.stopPropagation(), qa(e.valueHash);
1372
+ t.stopPropagation(), ro(e.valueHash);
1258
1373
  },
1259
- onKeydown: (t) => Ga(t, e.valueHash)
1260
- }), qa = (e) => {
1374
+ onKeydown: (t) => to(t, e.valueHash)
1375
+ }), ro = (e) => {
1261
1376
  let t = Z.value.find((t) => t.valueHash === e);
1262
- t && (e in Wa.value ? j.value = j.value.filter((t) => u(t) !== e) : j.value = [...j.value, t.value]);
1377
+ t && (e in eo.value ? M.value = M.value.filter((t) => u(t) !== e) : M.value = [...M.value, t.value]);
1263
1378
  };
1264
1379
  D(O, () => {
1265
- Ya.clear(), G.unselected = [], G.selected = [];
1380
+ ao.clear(), q.unselected = [], q.selected = [];
1266
1381
  });
1267
- let Ja = h(() => {
1268
- let e = Array.isArray(G.selected) ? G.selected.length : 0;
1269
- return !!(M.multiple && e > 0 && !O.value || O.value && Ya.size > 0);
1270
- }), Ya = Ae(/* @__PURE__ */ new Set());
1271
- D(() => G.unselected, (e) => {
1272
- Ya.clear(), (e ?? []).forEach((e) => {
1273
- Ya.add(u(e));
1382
+ let io = h(() => {
1383
+ let e = Array.isArray(q.selected) ? q.selected.length : 0;
1384
+ return !!(N.multiple && e > 0 && !O.value || O.value && ao.size > 0);
1385
+ }), ao = je(/* @__PURE__ */ new Set());
1386
+ D(() => q.unselected, (e) => {
1387
+ ao.clear(), (e ?? []).forEach((e) => {
1388
+ ao.add(u(e));
1274
1389
  });
1275
1390
  }, { immediate: !0 });
1276
- let Xa = (e) => {
1277
- let t = G.unselected ?? [];
1278
- if (Za(e)) {
1279
- Mi(e), N("item:unselected", e.value), Ya.add(e.valueHash), G.unselected = [...t, e.value];
1391
+ let oo = (e) => {
1392
+ let t = q.unselected ?? [];
1393
+ if (so(e)) {
1394
+ Hi(e), P("item:unselected", e.value), ao.add(e.valueHash), q.unselected = [...t, e.value];
1280
1395
  return;
1281
1396
  }
1282
- O.value || ji(e), N("item:selected", e.value), Ya.delete(e.valueHash), G.unselected = t.filter((t) => u(t) !== u(e.value));
1283
- }, Za = (e) => Ya.has(e.valueHash) ? !1 : e.selected || O.value, Qa = h(() => {
1397
+ O.value || Vi(e), P("item:selected", e.value), ao.delete(e.valueHash), q.unselected = t.filter((t) => u(t) !== u(e.value));
1398
+ }, so = (e) => ao.has(e.valueHash) ? !1 : e.selected || O.value, co = h(() => {
1284
1399
  let e = /* @__PURE__ */ new Map();
1285
1400
  for (let t of Z.value) e.set(t.valueHash, t);
1286
1401
  return e;
1287
- }), $a = (e) => {
1288
- if (M.disabled || M.readonly || typeof M.selectable == "function" && !M.selectable(e.item)) return !0;
1289
- let t = Qa.value.get(e.valueHash);
1402
+ }), lo = (e) => {
1403
+ if (N.disabled || N.readonly || typeof N.selectable == "function" && !N.selectable(e.item)) return !0;
1404
+ let t = co.value.get(e.valueHash);
1290
1405
  return !t || !!t.disabled;
1291
- }, eo = (e) => {
1292
- $a(e) || Xa(e);
1293
- }, to = ce((e) => typeof e != "string", JSON.stringify), no = h(() => [].concat(G.selected ?? []).map((e) => ({
1294
- disabled: M.disabled,
1295
- name: M.name,
1406
+ }, uo = (e) => {
1407
+ lo(e) || oo(e);
1408
+ }, fo = ce((e) => typeof e != "string", JSON.stringify), po = h(() => [].concat(q.selected ?? []).map((e) => ({
1409
+ disabled: N.disabled,
1410
+ name: N.name,
1296
1411
  type: "hidden",
1297
- value: to(e)
1298
- }))), ro = [
1412
+ value: fo(e)
1413
+ }))), mo = [
1299
1414
  70,
1300
1415
  45,
1301
1416
  85,
1302
1417
  55
1303
- ], io = h(() => te(Z.value.length || M.columns.length || 1, 4, 10)), ao = h(() => {
1418
+ ], ho = h(() => te(Z.value.length || N.columns.length || 1, 4, 10)), go = h(() => {
1304
1419
  let e = /* @__PURE__ */ new Map();
1305
1420
  for (let [t, n] of k.value) e.has(t) || e.set(t, n);
1306
1421
  return e;
1307
- }), oo = h(() => ({
1308
- slots: P,
1309
- selectable: M.selectable,
1310
- multiple: !!M.multiple,
1311
- readonly: !!M.readonly,
1312
- actions: !!M.actions,
1313
- keyboardNavigation: !!M.keyboardNavigation,
1314
- contentInert: vi.value,
1315
- hasRowIndex: yi.value,
1316
- columnSpan: xi.value,
1317
- inputName: Ut,
1318
- tdClass: M.tdClass,
1319
- cellClasses: Sn.value,
1320
- sortOrders: ao.value,
1321
- measureRow: Na,
1322
- onInputChange: Xa,
1323
- onRowFocus: Xi,
1324
- onRowKeydown: Ua
1325
- })), so = h(() => (M.fixedColumns ?? []).map((e) => typeof e == "number" ? `${e}:left` : `${e.index}:${e.position}`).join(","));
1422
+ }), _o = h(() => ({
1423
+ slots: F,
1424
+ selectable: N.selectable,
1425
+ multiple: !!N.multiple,
1426
+ readonly: !!N.readonly,
1427
+ actions: I.value,
1428
+ keyboardNavigation: !!N.keyboardNavigation,
1429
+ contentInert: Oi.value,
1430
+ hasRowIndex: ki.value,
1431
+ columnSpan: ji.value,
1432
+ inputName: Wt,
1433
+ tdClass: N.tdClass,
1434
+ cellClasses: Dn.value,
1435
+ sortOrders: go.value,
1436
+ measureRow: Ua,
1437
+ onInputChange: oo,
1438
+ onRowFocus: oa,
1439
+ onRowKeydown: $a
1440
+ })), vo = h(() => {
1441
+ let e = [], t = +!!N.selectable;
1442
+ return N.selectable && N.fixedSelect && e.push({
1443
+ index: 0,
1444
+ position: "left"
1445
+ }), B.value.forEach((n, r) => {
1446
+ n.fixed && e.push({
1447
+ index: r + t,
1448
+ position: n.fixed
1449
+ });
1450
+ }), I.value && N.fixedActions && e.push({
1451
+ index: B.value.length + t,
1452
+ position: "right"
1453
+ }), e;
1454
+ }), yo = h(() => vo.value.map((e) => typeof e == "number" ? `${e}:left` : `${e.index}:${e.position}`).join(","));
1326
1455
  return D(() => [
1327
- Pa.value,
1328
- so.value,
1329
- fi.value
1456
+ Wa.value,
1457
+ yo.value,
1458
+ Si.value
1330
1459
  ], ([, e, t], n) => {
1331
- let r = n?.[1], i = M.fixedColumns;
1332
- if (I.value && (e.length || r?.length)) {
1460
+ let r = n?.[1], i = vo.value;
1461
+ if (R.value && (e.length || r?.length)) {
1333
1462
  let a = e === r && t === n?.[2];
1334
- fe(I.value, i ?? [], a ? li : null, a);
1463
+ fe(R.value, i, a ? yi : null, a);
1335
1464
  }
1336
- P.thead && De(di);
1337
- }, { flush: "post" }), (e, t) => (S(), g(Me(hi.value), {
1465
+ F.thead && y(xi);
1466
+ }, { flush: "post" }), (e, t) => (S(), Se(Ne(Ti.value), {
1338
1467
  id: e.id,
1339
1468
  ref_key: "containerRef",
1340
- ref: L,
1341
- "aria-busy": _i.value,
1342
- class: b(bi.value),
1343
- "data-bb-table-id": E(qt),
1469
+ ref: Jt,
1470
+ "aria-busy": Di.value,
1471
+ class: b(Ai.value),
1472
+ "data-bb-table-id": E(Yt),
1344
1473
  inert: e.disabled,
1345
- style: x(ii.value)
1474
+ style: x(mi.value)
1346
1475
  }, {
1347
- default: Le(() => [
1348
- e.selectable ? (S(), v("legend", qe, T(gi.value), 1)) : _("", !0),
1349
- e.caption ? (S(), v("div", {
1476
+ default: ze(() => [
1477
+ e.selectable ? (S(), _("legend", Ye, T(Ei.value), 1)) : g("", !0),
1478
+ e.caption ? (S(), _("div", {
1350
1479
  key: 1,
1351
- id: en.value,
1480
+ id: nn.value,
1352
1481
  class: b(["bb-table-caption", { "sr-only": !e.displayCaption }])
1353
- }, T(e.caption), 11, Je)) : _("", !0),
1354
- e.reorderable || e.resizable ? (S(), v("div", {
1482
+ }, T(e.caption), 11, Xe)) : g("", !0),
1483
+ e.reorderable || e.resizable ? (S(), _("div", {
1355
1484
  key: 2,
1356
- id: tn.value,
1485
+ id: rn.value,
1357
1486
  class: "sr-only"
1358
- }, [e.reorderable ? (S(), v(m, { key: 0 }, [Se(T(E(F)("table.reorderInstructions").value), 1)], 64)) : _("", !0), e.resizable && !K.value ? (S(), v(m, { key: 1 }, [Se(T(E(F)("table.resizeInstructions").value), 1)], 64)) : _("", !0)], 8, Ye)) : _("", !0),
1359
- y("span", Xe, T(_i.value ? e.loadingText || E(F)("common.loadingText").value : ""), 1),
1360
- e.reorderable ? (S(), v(m, { key: 3 }, [y("span", Ze, T(sn.value), 1), y("div", {
1487
+ }, [e.reorderable ? (S(), _(m, { key: 0 }, [Ce(T(E(L)("table.reorderInstructions").value), 1)], 64)) : g("", !0), e.resizable && !J.value ? (S(), _(m, { key: 1 }, [Ce(T(E(L)("table.resizeInstructions").value), 1)], 64)) : g("", !0)], 8, Ze)) : g("", !0),
1488
+ v("span", Qe, T(Di.value ? e.loadingText || E(L)("common.loadingText").value : ""), 1),
1489
+ e.reorderable ? (S(), _(m, { key: 3 }, [v("span", $e, T(fn.value), 1), v("div", {
1361
1490
  ref_key: "ghostRef",
1362
- ref: Fn,
1491
+ ref: Bn,
1363
1492
  "aria-hidden": "true",
1364
1493
  class: "bb-table-column-ghost",
1365
1494
  popover: "manual"
1366
- }, [t[1] ||= y("svg", {
1495
+ }, [t[1] ||= v("svg", {
1367
1496
  "aria-hidden": "true",
1368
1497
  class: "bb-table-column-ghost__icon",
1369
1498
  fill: "none",
@@ -1374,49 +1503,49 @@ var qe = {
1374
1503
  "stroke-width": "2",
1375
1504
  viewBox: "0 0 24 24",
1376
1505
  width: "1em"
1377
- }, [y("path", { d: "M12 2v20M2 12h20M5 9l-3 3 3 3M9 5l3-3 3 3M15 19l-3 3-3-3M19 9l3 3-3 3" })], -1), y("span", null, T(Pn.value), 1)], 512)], 64)) : _("", !0),
1378
- y("div", {
1506
+ }, [v("path", { d: "M12 2v20M2 12h20M5 9l-3 3 3 3M9 5l3-3 3 3M15 19l-3 3-3-3M19 9l3 3-3 3" })], -1), v("span", null, T(zn.value), 1)], 512)], 64)) : g("", !0),
1507
+ v("div", {
1379
1508
  ref_key: "tableRef",
1380
- ref: I,
1381
- "aria-labelledby": e.caption ? en.value : void 0,
1382
- "aria-rowcount": yi.value && E(G).totalItems != null ? E(G).totalItems + 1 : void 0,
1509
+ ref: R,
1510
+ "aria-labelledby": e.caption ? nn.value : void 0,
1511
+ "aria-rowcount": ki.value && E(q).totalItems != null ? E(q).totalItems + 1 : void 0,
1383
1512
  class: "bb-table__table",
1384
1513
  role: "table",
1385
- style: x(Qr.value)
1514
+ style: x(si.value)
1386
1515
  }, [
1387
- y("div", {
1516
+ v("div", {
1388
1517
  class: b(["bb-table__head", {
1389
- "bb-table__head--dragging": U.value === "dragging",
1390
- "bb-table__head--resizing": _n.value !== null
1518
+ "bb-table__head--dragging": G.value === "dragging",
1519
+ "bb-table__head--resizing": Sn.value !== null
1391
1520
  }]),
1392
- inert: vi.value,
1521
+ inert: Oi.value,
1393
1522
  role: "rowgroup"
1394
- }, [w(e.$slots, "thead", {}, () => [y("div", {
1395
- "aria-rowindex": yi.value ? 1 : void 0,
1523
+ }, [w(e.$slots, "thead", {}, () => [v("div", {
1524
+ "aria-rowindex": ki.value ? 1 : void 0,
1396
1525
  class: b(["bb-table-header-row", e.headerRowClass]),
1397
1526
  role: "row",
1398
- onPointerdown: rr,
1399
- onTouchmove: ir
1527
+ onPointerdown: cr,
1528
+ onTouchmove: lr
1400
1529
  }, [
1401
- e.selectable ? (S(), v("div", {
1530
+ e.selectable ? (S(), _("div", {
1402
1531
  key: 0,
1403
1532
  class: b(["bb-table-header bb-table-header--select", e.thClass]),
1404
1533
  role: "columnheader"
1405
1534
  }, [w(e.$slots, "header:select", {
1406
1535
  multiple: e.multiple,
1407
1536
  selectAll: !!O.value,
1408
- text: e.selectText || E(F)("table.selectText").value
1409
- }, () => [y("span", tt, [!e.disableSelectAll && e.multiple ? (S(), v("label", {
1537
+ text: e.selectText || E(L)("table.selectText").value
1538
+ }, () => [v("span", rt, [!e.disableSelectAll && e.multiple ? (S(), _("label", {
1410
1539
  key: 0,
1411
1540
  class: b(["bb-table-check__label", { "bb-table-check__label--disabled": e.disabled }])
1412
- }, [(S(), g(ne, {
1413
- key: Ja.value.toString(),
1541
+ }, [(S(), Se(ne, {
1542
+ key: io.value.toString(),
1414
1543
  modelValue: O.value,
1415
1544
  "onUpdate:modelValue": t[0] ||= (e) => O.value = e,
1416
1545
  checked: !!O.value,
1417
1546
  class: "bb-table-check",
1418
1547
  disabled: e.disabled,
1419
- indeterminate: Ja.value,
1548
+ indeterminate: io.value,
1420
1549
  name: `select_all_${e.name || ""}`,
1421
1550
  readonly: e.readonly
1422
1551
  }, null, 8, [
@@ -1426,48 +1555,49 @@ var qe = {
1426
1555
  "indeterminate",
1427
1556
  "name",
1428
1557
  "readonly"
1429
- ])), y("span", nt, T(e.selectAllLabel || E(F)("table.selectAllLabel").value), 1)], 2)) : e.multiple ? _("", !0) : (S(), v("span", rt, T(e.selectText || E(F)("table.selectText").value), 1))])])], 2)) : _("", !0),
1430
- (S(!0), v(m, null, je(Fi.value, (n, r) => (S(), v("div", {
1558
+ ])), v("span", it, T(e.selectAllLabel || E(L)("table.selectAllLabel").value), 1)], 2)) : e.multiple ? g("", !0) : (S(), _("span", at, T(e.selectText || E(L)("table.selectText").value), 1))])])], 2)) : g("", !0),
1559
+ (S(!0), _(m, null, Me(Gi.value, (n, r) => (S(), _("div", {
1431
1560
  key: n.key,
1432
- "aria-describedby": nn.value ? tn.value : void 0,
1561
+ "aria-describedby": an.value ? rn.value : void 0,
1433
1562
  "aria-sort": n.sortDirection ?? (n.sortable ? "none" : void 0),
1434
1563
  class: b(["bb-table-header", [n.classes, {
1435
1564
  "bb-table-header--edge-start": r === 0,
1436
- "bb-table-header--edge-end": r === Fi.value.length - 1,
1437
- "bb-table-header--clip": Yr.value.has(n.key),
1438
- "bb-table-header--dragging": Nn.value === n.key,
1565
+ "bb-table-header--edge-end": r === Gi.value.length - 1,
1566
+ "bb-table-header--clip": ii.value.has(n.key),
1567
+ "bb-table-header--dragging": Rn.value === n.key,
1439
1568
  "bb-table-header--sortable": n.sortable,
1440
- "bb-table-header--resizing": _n.value === n.key
1569
+ "bb-table-header--resizing": Sn.value === n.key
1441
1570
  }]]),
1442
- "data-column-key": nn.value ? n.key : void 0,
1571
+ "data-column-key": an.value ? n.key : void 0,
1443
1572
  role: "columnheader",
1444
- tabindex: nn.value ? n.key === un.value ? 0 : -1 : void 0,
1445
- onClick: (e) => dn(e, n),
1446
- onFocus: (e) => fn(n.key),
1447
- onKeydown: (e) => hn(e, n.key)
1573
+ tabindex: an.value ? n.key === hn.value ? 0 : -1 : void 0,
1574
+ onClick: (e) => gn(e, n),
1575
+ onFocus: (e) => _n(n.key),
1576
+ onKeydown: (e) => bn(e, n.key)
1448
1577
  }, [
1449
- Ii(n.key, "prepend") ? (S(), g(Me(Ii(n.key, "prepend")), Ee({
1578
+ Ki(n.key, "prepend") ? (S(), Se(Ne(Ki(n.key, "prepend")), De({
1450
1579
  key: 0,
1451
1580
  ref_for: !0
1452
- }, Li(n)), null, 16)) : _("", !0),
1581
+ }, qi(n)), null, 16)) : g("", !0),
1453
1582
  w(e.$slots, n.slotName, {
1454
1583
  classes: n.classes,
1455
- items: E(Ei),
1584
+ hideColumn: () => ln(n.key),
1585
+ items: E(Ii),
1456
1586
  label: n.label,
1457
1587
  sortOrder: n.sortOrder,
1458
1588
  sortable: n.sortable,
1459
- toggleSort: () => mr(n.key)
1460
- }, () => [n.sortable ? (S(), g(s, {
1589
+ toggleSort: () => yr(n.key)
1590
+ }, () => [n.sortable ? (S(), Se(s, {
1461
1591
  key: 0,
1462
1592
  class: b(["bb-table-sort", {
1463
1593
  "bb-table-sort--asc": n.sortOrder === "asc",
1464
1594
  "bb-table-sort--desc": n.sortOrder === "desc"
1465
1595
  }]),
1466
- tabindex: nn.value ? -1 : void 0,
1596
+ tabindex: an.value ? -1 : void 0,
1467
1597
  type: "button",
1468
- onClick: () => mr(n.key)
1598
+ onClick: () => yr(n.key)
1469
1599
  }, {
1470
- default: Le(() => [y("span", at, T(n.label), 1), t[2] ||= y("svg", {
1600
+ default: ze(() => [v("span", st, T(n.label), 1), t[2] ||= v("svg", {
1471
1601
  "aria-hidden": "true",
1472
1602
  class: "bb-table-sort__icon",
1473
1603
  fill: "none",
@@ -1478,85 +1608,85 @@ var qe = {
1478
1608
  "stroke-width": "2",
1479
1609
  viewBox: "0 0 24 24",
1480
1610
  width: "1em"
1481
- }, [y("path", { d: "M12 20V4m-7 7l7-7l7 7" })], -1)]),
1611
+ }, [v("path", { d: "M12 20V4m-7 7l7-7l7 7" })], -1)]),
1482
1612
  _: 2
1483
1613
  }, 1032, [
1484
1614
  "class",
1485
1615
  "tabindex",
1486
1616
  "onClick"
1487
- ])) : (S(), v("span", ot, T(n.label), 1))]),
1488
- Ii(n.key, "append") ? (S(), g(Me(Ii(n.key, "append")), Ee({
1617
+ ])) : (S(), _("span", ct, T(n.label), 1))]),
1618
+ Ki(n.key, "append") ? (S(), Se(Ne(Ki(n.key, "append")), De({
1489
1619
  key: 1,
1490
1620
  ref_for: !0
1491
- }, Li(n)), null, 16)) : _("", !0),
1492
- e.resizable && !K.value ? (S(), v("div", {
1621
+ }, qi(n)), null, 16)) : g("", !0),
1622
+ e.resizable && !J.value ? (S(), _("div", {
1493
1623
  key: 2,
1494
1624
  "aria-hidden": "true",
1495
1625
  class: "bb-table-header__resizer",
1496
- onDblclick: Re((e) => Tn(n.key), ["stop"]),
1497
- onPointerdown: (e) => Mn(e, n.key)
1498
- }, null, 40, st)) : _("", !0)
1499
- ], 42, it))), 128)),
1500
- e.actions ? (S(), v("div", {
1626
+ onDblclick: Be((e) => An(n.key), ["stop"]),
1627
+ onPointerdown: (e) => Ln(e, n.key)
1628
+ }, null, 40, lt)) : g("", !0)
1629
+ ], 42, ot))), 128)),
1630
+ I.value ? (S(), _("div", {
1501
1631
  key: 1,
1502
1632
  class: b(["bb-table-header bb-table-header--actions", e.thClass]),
1503
1633
  role: "columnheader"
1504
- }, [w(e.$slots, "header:actions", { text: e.actionsText || E(F)("table.actionsText").value }, () => [y("span", ct, T(e.actionsText || E(F)("table.actionsText").value), 1)])], 2)) : _("", !0)
1505
- ], 42, et)])], 10, $e),
1506
- y("div", {
1634
+ }, [w(e.$slots, "header:actions", { text: e.actionsText || E(L)("table.actionsText").value }, () => [v("span", ut, T(e.actionsText || E(L)("table.actionsText").value), 1)])], 2)) : g("", !0)
1635
+ ], 42, nt)])], 10, tt),
1636
+ v("div", {
1507
1637
  ref_key: "bodyRef",
1508
- ref: ea,
1638
+ ref: ua,
1509
1639
  class: "bb-table__body",
1510
1640
  role: "rowgroup",
1511
- onFocusin: oa,
1512
- onFocusout: sa
1513
- }, [_i.value && !E(Z).length ? w(e.$slots, "loading", {
1641
+ onFocusin: ga,
1642
+ onFocusout: _a
1643
+ }, [Di.value && !E(Z).length ? w(e.$slots, "loading", {
1514
1644
  key: 0,
1515
- items: E(Ei)
1516
- }, () => [(S(!0), v(m, null, je(io.value, (n, r) => (S(), v("div", {
1645
+ items: E(Ii)
1646
+ }, () => [(S(!0), _(m, null, Me(ho.value, (n, r) => (S(), _("div", {
1517
1647
  key: r,
1518
- "aria-rowindex": yi.value ? r + 2 : void 0,
1648
+ "aria-rowindex": ki.value ? r + 2 : void 0,
1519
1649
  class: "bb-table-skeleton__row",
1520
1650
  role: "row"
1521
1651
  }, [
1522
- e.selectable ? (S(), v("div", ut, t[3] ||= [y("div", { class: "bb-table-skeleton__placeholder" }, null, -1)])) : _("", !0),
1523
- (S(!0), v(m, null, je(z.value, (e, n) => (S(), v("div", {
1652
+ e.selectable ? (S(), _("div", ft, t[3] ||= [v("div", { class: "bb-table-skeleton__placeholder" }, null, -1)])) : g("", !0),
1653
+ (S(!0), _(m, null, Me(B.value, (e, n) => (S(), _("div", {
1524
1654
  key: e.key,
1525
1655
  class: b(["bb-table-skeleton__cell", [`bb-table-skeleton__cell--${e.skeleton ?? "text"}`]]),
1526
1656
  role: "cell"
1527
- }, [!e.skeleton || e.skeleton === "text" ? (S(), v("div", dt, [y("div", {
1657
+ }, [!e.skeleton || e.skeleton === "text" ? (S(), _("div", pt, [v("div", {
1528
1658
  class: "bb-table-skeleton__line",
1529
- style: x({ width: `${ro[(r + n) % 4]}%` })
1530
- }, null, 4), y("div", {
1659
+ style: x({ width: `${mo[(r + n) % 4]}%` })
1660
+ }, null, 4), v("div", {
1531
1661
  class: "bb-table-skeleton__line",
1532
- style: x({ width: `${ro[(r + n + 2) % 4]}%` })
1533
- }, null, 4)])) : e.skeleton === "avatar" ? (S(), v("div", ft)) : e.skeleton === "avatar-text" ? (S(), v("div", pt, [t[4] ||= y("div", { class: "bb-table-skeleton__avatar" }, null, -1), y("div", mt, [y("div", {
1662
+ style: x({ width: `${mo[(r + n + 2) % 4]}%` })
1663
+ }, null, 4)])) : e.skeleton === "avatar" ? (S(), _("div", mt)) : e.skeleton === "avatar-text" ? (S(), _("div", ht, [t[4] ||= v("div", { class: "bb-table-skeleton__avatar" }, null, -1), v("div", gt, [v("div", {
1534
1664
  class: "bb-table-skeleton__line",
1535
- style: x({ width: `${ro[(r + n) % 4]}%` })
1536
- }, null, 4), y("div", {
1665
+ style: x({ width: `${mo[(r + n) % 4]}%` })
1666
+ }, null, 4), v("div", {
1537
1667
  class: "bb-table-skeleton__line",
1538
- style: x({ width: `${ro[(r + n + 2) % 4]}%` })
1539
- }, null, 4)])])) : e.skeleton === "image" ? (S(), v("div", ht)) : e.skeleton === "badge" ? (S(), v("div", gt)) : _("", !0)], 2))), 128)),
1540
- e.actions ? (S(), v("div", _t, t[5] ||= [y("div", { class: "bb-table-skeleton__placeholder" }, null, -1)])) : _("", !0)
1541
- ], 8, lt))), 128))]) : E(Z).length ? w(e.$slots, "tbody", { key: 2 }, () => [(S(!0), v(m, null, je(Pa.value, (e) => (S(), v(m, { key: e.key }, [e.kind === "spacer" ? (S(), v("div", {
1668
+ style: x({ width: `${mo[(r + n + 2) % 4]}%` })
1669
+ }, null, 4)])])) : e.skeleton === "image" ? (S(), _("div", _t)) : e.skeleton === "badge" ? (S(), _("div", vt)) : g("", !0)], 2))), 128)),
1670
+ I.value ? (S(), _("div", yt, t[5] ||= [v("div", { class: "bb-table-skeleton__placeholder" }, null, -1)])) : g("", !0)
1671
+ ], 8, dt))), 128))]) : E(Z).length ? w(e.$slots, "tbody", { key: 2 }, () => [(S(!0), _(m, null, Me(Wa.value, (e) => (S(), _(m, { key: e.key }, [e.kind === "spacer" ? (S(), _("div", {
1542
1672
  key: 0,
1543
1673
  "aria-hidden": "true",
1544
1674
  class: "bb-table-spacer__row bb-table-placeholder__row",
1545
1675
  style: x({ height: `${e.height}px` })
1546
- }, null, 4)) : e.kind === "placeholder" ? (S(), v("div", {
1676
+ }, null, 4)) : e.kind === "placeholder" ? (S(), _("div", {
1547
1677
  key: 1,
1548
1678
  "aria-hidden": "true",
1549
1679
  class: "bb-table-placeholder__row bb-table-placeholder__row--pending",
1550
1680
  "data-index": e.virtualIndex,
1551
1681
  style: x({ height: `${e.height}px` })
1552
- }, null, 12, xt)) : e.kind === "row" ? (S(), g(E(ue), {
1682
+ }, null, 12, Ct)) : e.kind === "row" ? (S(), Se(E(ue), {
1553
1683
  key: 2,
1554
- active: e.index === Gi.value,
1555
- context: oo.value,
1684
+ active: e.index === ta.value,
1685
+ context: _o.value,
1556
1686
  index: e.index,
1557
1687
  item: e.item,
1558
- "select-blocked": $a(e.item),
1559
- selected: Za(e.item),
1688
+ "select-blocked": lo(e.item),
1689
+ selected: so(e.item),
1560
1690
  "virtual-index": e.virtualIndex
1561
1691
  }, null, 8, [
1562
1692
  "active",
@@ -1566,33 +1696,33 @@ var qe = {
1566
1696
  "select-blocked",
1567
1697
  "selected",
1568
1698
  "virtual-index"
1569
- ])) : (S(), g(E(de), {
1699
+ ])) : (S(), Se(E(de), {
1570
1700
  key: 3,
1571
- context: oo.value,
1701
+ context: _o.value,
1572
1702
  item: e.item,
1573
- selected: Za(e.item),
1703
+ selected: so(e.item),
1574
1704
  "virtual-index": e.virtualIndex
1575
1705
  }, null, 8, [
1576
1706
  "context",
1577
1707
  "item",
1578
1708
  "selected",
1579
1709
  "virtual-index"
1580
- ]))], 64))), 128))]) : (S(), v("div", {
1710
+ ]))], 64))), 128))]) : (S(), _("div", {
1581
1711
  key: 1,
1582
- "aria-rowindex": yi.value ? 2 : void 0,
1712
+ "aria-rowindex": ki.value ? 2 : void 0,
1583
1713
  class: "bb-table-no-data__row",
1584
1714
  role: "row"
1585
- }, [y("div", {
1586
- "aria-colspan": xi.value,
1715
+ }, [v("div", {
1716
+ "aria-colspan": ji.value,
1587
1717
  class: "bb-table-no-data__cell",
1588
1718
  role: "cell"
1589
- }, [w(e.$slots, "no-data", {}, () => [y("span", bt, T(e.noDataText || E(F)("common.noDataText").value), 1)])], 8, yt)], 8, vt))], 544),
1590
- y("div", {
1719
+ }, [w(e.$slots, "no-data", {}, () => [v("span", St, T(e.noDataText || E(L)("common.noDataText").value), 1)])], 8, xt)], 8, bt))], 544),
1720
+ v("div", {
1591
1721
  class: "bb-table__foot",
1592
- role: P.tfoot ? "rowgroup" : void 0
1593
- }, [w(e.$slots, "tfoot", { columnCount: xi.value })], 8, St)
1594
- ], 12, Qe),
1595
- (S(!0), v(m, null, je(no.value, (e) => (S(), v("input", Ee({
1722
+ role: F.tfoot ? "rowgroup" : void 0
1723
+ }, [w(e.$slots, "tfoot", { columnCount: ji.value })], 8, wt)
1724
+ ], 12, et),
1725
+ (S(!0), _(m, null, Me(po.value, (e) => (S(), _("input", De({
1596
1726
  key: e.value,
1597
1727
  ref_for: !0
1598
1728
  }, e), null, 16))), 128))