@atscript/vue-table 0.1.141 → 0.1.142

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 (113) hide show
  1. package/dist/as-action-form-dialog.cjs +1 -1
  2. package/dist/as-action-form-dialog.mjs +1 -1
  3. package/dist/{as-action-menu-content-AKbIp4Ni.cjs → as-action-menu-content-BaNFBYn3.cjs} +1 -1
  4. package/dist/{as-action-menu-content-6dR5q8bs.mjs → as-action-menu-content-miQYVP7x.mjs} +1 -1
  5. package/dist/as-column-menu.d.cts +1 -1
  6. package/dist/as-column-menu.d.mts +1 -1
  7. package/dist/{as-column-menu.vue-DapdB_qF.d.cts → as-column-menu.vue-Ca3wSDxw.d.mts} +2 -2
  8. package/dist/{as-column-menu.vue-Ys_sx0VE.d.mts → as-column-menu.vue-Co7FtiEM.d.cts} +2 -2
  9. package/dist/{as-config-dialog-Chpw_2tu.cjs → as-config-dialog-CVSOrS9O.cjs} +2 -2
  10. package/dist/{as-config-dialog-UeMU7jTP.mjs → as-config-dialog-Di02V3bs.mjs} +2 -2
  11. package/dist/as-config-dialog.cjs +1 -1
  12. package/dist/as-config-dialog.mjs +1 -1
  13. package/dist/{as-confirm-dialog-SIqCOw2p.mjs → as-confirm-dialog-C9Qat2rG.mjs} +1 -1
  14. package/dist/{as-confirm-dialog-hHYVEX9E.cjs → as-confirm-dialog-fCwo1ty9.cjs} +1 -1
  15. package/dist/as-confirm-dialog.cjs +1 -1
  16. package/dist/as-confirm-dialog.mjs +1 -1
  17. package/dist/{as-filter-dialog-Xvj5q09A.cjs → as-filter-dialog-DYpbsNDx.cjs} +7 -7
  18. package/dist/{as-filter-dialog-DVRhCx6O.mjs → as-filter-dialog-DdtrTT5w.mjs} +7 -7
  19. package/dist/as-filter-dialog.cjs +1 -1
  20. package/dist/as-filter-dialog.mjs +1 -1
  21. package/dist/{as-filter-field-B7b2sEG0.cjs → as-filter-field-4-qFRsJx.cjs} +8 -10
  22. package/dist/{as-filter-field-D4vQCOEU.mjs → as-filter-field-DEQVodKG.mjs} +8 -10
  23. package/dist/as-filter-field.cjs +1 -1
  24. package/dist/as-filter-field.mjs +1 -1
  25. package/dist/{as-filters-CWQgQBCH.cjs → as-filters-C6ZkLrf4.cjs} +68 -25
  26. package/dist/{as-filters-CudeInPr.mjs → as-filters-Dd_j6_6G.mjs} +69 -26
  27. package/dist/as-filters.cjs +1 -1
  28. package/dist/as-filters.d.cts +1 -1
  29. package/dist/as-filters.d.mts +1 -1
  30. package/dist/as-filters.mjs +1 -1
  31. package/dist/{as-filters.vue-BSgUEh4D.d.mts → as-filters.vue-dHbGmcbr.d.mts} +56 -4
  32. package/dist/{as-filters.vue-DMXZhQW3.d.cts → as-filters.vue-vH1FHn9L.d.cts} +56 -4
  33. package/dist/{as-preset-dialog-BsWSuY9N.mjs → as-preset-dialog-Bap48oUv.mjs} +1 -1
  34. package/dist/{as-preset-dialog-l81WXBmf.cjs → as-preset-dialog-SYA-6lGR.cjs} +1 -1
  35. package/dist/as-preset-dialog.cjs +1 -1
  36. package/dist/as-preset-dialog.mjs +1 -1
  37. package/dist/{as-preset-picker-Bp4xMTua.cjs → as-preset-picker-BdKTZa95.cjs} +1 -1
  38. package/dist/{as-preset-picker-BTkMqSxH.mjs → as-preset-picker-NBrvsE6s.mjs} +1 -1
  39. package/dist/as-preset-picker.cjs +1 -1
  40. package/dist/as-preset-picker.mjs +1 -1
  41. package/dist/{as-residual-filter-D1SGFQ1p.mjs → as-residual-filter-BFnbI3h3.mjs} +1 -1
  42. package/dist/{as-residual-filter-BJ4cwFP4.cjs → as-residual-filter-CZ-Bytdj.cjs} +1 -1
  43. package/dist/as-residual-filter.cjs +1 -1
  44. package/dist/as-residual-filter.mjs +1 -1
  45. package/dist/{as-row-actions-9p_BJPga.cjs → as-row-actions-C3xHkX53.cjs} +2 -2
  46. package/dist/{as-row-actions-CH8WZ5kN.mjs → as-row-actions-KeoHo9Ex.mjs} +2 -2
  47. package/dist/as-row-actions.cjs +1 -1
  48. package/dist/as-row-actions.d.cts +1 -1
  49. package/dist/as-row-actions.d.mts +1 -1
  50. package/dist/as-row-actions.mjs +1 -1
  51. package/dist/{as-row-actions.vue-BezMFOr6.d.cts → as-row-actions.vue-D3_z3ytk.d.cts} +1 -1
  52. package/dist/{as-row-actions.vue-BOURuyjv.d.mts → as-row-actions.vue-nmaDuxBT.d.mts} +1 -1
  53. package/dist/{as-table-status-Bl9XmWqc.mjs → as-select-cell-KD_ns8DS.mjs} +149 -36
  54. package/dist/{as-table-status-bbuFDaaK.cjs → as-select-cell-XnzNuW2v.cjs} +154 -35
  55. package/dist/{as-table-DmmXWq94.mjs → as-table-NHqyekNd.mjs} +10 -11
  56. package/dist/{as-table-actions-CFBAxKIS.mjs → as-table-actions-BpEFcsgh.mjs} +2 -2
  57. package/dist/{as-table-actions-oxVqSH-G.cjs → as-table-actions-UQmFtRdJ.cjs} +2 -2
  58. package/dist/as-table-actions.cjs +1 -1
  59. package/dist/as-table-actions.d.cts +1 -1
  60. package/dist/as-table-actions.d.mts +1 -1
  61. package/dist/as-table-actions.mjs +1 -1
  62. package/dist/{as-table-actions.vue-CrZtcxAY.d.mts → as-table-actions.vue-BG3JVaBQ.d.mts} +2 -2
  63. package/dist/{as-table-actions.vue-Dls_1Vze.d.cts → as-table-actions.vue-DcuzNZoC.d.cts} +2 -2
  64. package/dist/{as-table-fOBpTDrI.cjs → as-table-ay1yel3u.cjs} +10 -11
  65. package/dist/{as-table-base-Cl1XJu4H.mjs → as-table-base-89DkDZ-1.mjs} +46 -60
  66. package/dist/{as-table-base--MfU8LVN.cjs → as-table-base-umzg4PBR.cjs} +51 -65
  67. package/dist/{as-table-header-cell-M8g9X9dR.mjs → as-table-header-cell-DU3ws2x9.mjs} +1 -1
  68. package/dist/{as-table-header-cell-10DQEs00.cjs → as-table-header-cell-f3YpgJX1.cjs} +1 -1
  69. package/dist/as-table-header-cell.cjs +1 -1
  70. package/dist/as-table-header-cell.d.cts +1 -1
  71. package/dist/as-table-header-cell.d.mts +1 -1
  72. package/dist/as-table-header-cell.mjs +1 -1
  73. package/dist/{as-table-header-cell.vue-D-iI_EJY.d.cts → as-table-header-cell.vue-5VGRc23o.d.mts} +2 -2
  74. package/dist/{as-table-header-cell.vue-SMBpzqU2.d.mts → as-table-header-cell.vue-XR90UlHO.d.cts} +2 -2
  75. package/dist/{as-table-root-Bl423S7X.mjs → as-table-root-47hiBEnq.mjs} +4 -4
  76. package/dist/{as-table-root-CGXKfCIk.cjs → as-table-root-DDeGktcl.cjs} +4 -4
  77. package/dist/as-table-root.cjs +1 -1
  78. package/dist/as-table-root.d.cts +1 -1
  79. package/dist/as-table-root.d.mts +1 -1
  80. package/dist/as-table-root.mjs +1 -1
  81. package/dist/{as-table-root.vue-BROdsTqv.d.mts → as-table-root.vue-BGx453_Q.d.mts} +5 -5
  82. package/dist/{as-table-root.vue-D5H8uXFK.d.cts → as-table-root.vue-yZ7ZcwdT.d.cts} +7 -7
  83. package/dist/as-table.cjs +1 -1
  84. package/dist/as-table.d.cts +1 -1
  85. package/dist/as-table.d.mts +1 -1
  86. package/dist/as-table.mjs +1 -1
  87. package/dist/{as-table.vue-B_7Y82yW.d.mts → as-table.vue-CwI5Z0y5.d.cts} +10 -8
  88. package/dist/{as-table.vue-B533pYs6.d.cts → as-table.vue-wdFf4hMW.d.mts} +10 -8
  89. package/dist/{as-window-table-CkTJOvu9.mjs → as-window-table-C312T_bc.mjs} +83 -62
  90. package/dist/{as-window-table-Dpbezh9D.cjs → as-window-table-hOYLNhX3.cjs} +89 -68
  91. package/dist/as-window-table.cjs +1 -1
  92. package/dist/as-window-table.d.cts +1 -1
  93. package/dist/as-window-table.d.mts +1 -1
  94. package/dist/as-window-table.mjs +1 -1
  95. package/dist/{as-window-table.vue-Bar8mWRL.d.cts → as-window-table.vue-D6UDA6td.d.cts} +6 -4
  96. package/dist/{as-window-table.vue-OL4KC7Y-.d.mts → as-window-table.vue-Deg1mj3t.d.mts} +6 -4
  97. package/dist/index.cjs +18 -18
  98. package/dist/index.d.cts +10 -10
  99. package/dist/index.d.mts +10 -10
  100. package/dist/index.mjs +18 -18
  101. package/dist/{types-Cdk5OH1-.d.cts → types-BU7J-a1r.d.mts} +41 -9
  102. package/dist/{types-Ev-A5h_D.d.mts → types-D4dK49sA.d.cts} +41 -9
  103. package/dist/{use-table-BG3IZyCO.mjs → use-table-DlqGHjPh.mjs} +1 -1
  104. package/dist/{use-table-column-handlers-CaT7dYnI.mjs → use-table-column-handlers-0myVzrZR.mjs} +1 -1
  105. package/dist/{use-table-column-handlers-CWHRcQbE.cjs → use-table-column-handlers-BHMCo_HR.cjs} +1 -1
  106. package/dist/{use-table-component-Tc_ZvZua.cjs → use-table-component-IziAm0vk.cjs} +1 -1
  107. package/dist/{use-table-component-OTdgA202.mjs → use-table-component-TLwFq4rx.mjs} +1 -1
  108. package/dist/{use-table-nav-bridge-BNjwR3qy.mjs → use-table-nav-bridge-CkQqimdS.mjs} +1 -1
  109. package/dist/{use-table-nav-bridge-ByQo00IH.cjs → use-table-nav-bridge-QU4jKhqx.cjs} +1 -1
  110. package/dist/{use-table-state-CgXY-ruN.cjs → use-table-state-BiklfjP0.cjs} +79 -28
  111. package/dist/{use-table-state-BgLIOO31.mjs → use-table-state-Cq-3tbVr.mjs} +69 -30
  112. package/dist/{use-table-rc6_sYU6.cjs → use-table-yZNJTfRq.cjs} +1 -1
  113. package/package.json +9 -9
@@ -1,9 +1,9 @@
1
- const require_use_table_state = require("./use-table-state-CgXY-ruN.cjs");
1
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
2
2
  const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
3
3
  const require_use_table_selection = require("./use-table-selection-DtCV3rhu.cjs");
4
4
  const require_use_has_emit_listener = require("./use-has-emit-listener-BaGFZDyM.cjs");
5
- const require_use_table_column_handlers = require("./use-table-column-handlers-CWHRcQbE.cjs");
6
- const require_as_table_status = require("./as-table-status-bbuFDaaK.cjs");
5
+ const require_use_table_column_handlers = require("./use-table-column-handlers-BHMCo_HR.cjs");
6
+ const require_as_select_cell = require("./as-select-cell-XnzNuW2v.cjs");
7
7
  let vue = require("vue");
8
8
  let _atscript_ui_table = require("@atscript/ui-table");
9
9
  let _vueuse_core = require("@vueuse/core");
@@ -113,7 +113,7 @@ var as_window_scrollbar_default = /* @__PURE__ */ (0, vue.defineComponent)({
113
113
  function clamp(n) {
114
114
  return (0, _atscript_ui_table.clampTopIndex)(n, props.totalCount, props.viewportRowCount);
115
115
  }
116
- const topIndexBatch = require_as_table_status.useRafBatch((next) => {
116
+ const topIndexBatch = require_as_select_cell.useRafBatch((next) => {
117
117
  if (next !== props.topIndex) emit("top-index-change", next);
118
118
  });
119
119
  function onThumbPointerDown(event) {
@@ -182,24 +182,6 @@ const _hoisted_4 = [
182
182
  "onDblclick"
183
183
  ];
184
184
  const _hoisted_5 = {
185
- key: 0,
186
- class: "as-td-select",
187
- role: "gridcell"
188
- };
189
- const _hoisted_6 = [
190
- "tabindex",
191
- "aria-label",
192
- "title",
193
- "aria-checked",
194
- "aria-disabled",
195
- "onKeydown"
196
- ];
197
- const _hoisted_7 = {
198
- key: 0,
199
- class: "as-table-checkbox-tick",
200
- "aria-hidden": "true"
201
- };
202
- const _hoisted_8 = {
203
185
  key: 0,
204
186
  role: "gridcell"
205
187
  };
@@ -245,6 +227,11 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
245
227
  required: false,
246
228
  default: "none"
247
229
  },
230
+ selectOn: {
231
+ type: String,
232
+ required: false,
233
+ default: "row"
234
+ },
248
235
  enterAction: {
249
236
  type: String,
250
237
  required: false
@@ -273,18 +260,44 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
273
260
  const emit = __emit;
274
261
  const slots = (0, vue.useSlots)();
275
262
  const { state } = require_use_table_state.useTableContext();
276
- const { resolve: cellResolver, hasAnyCellBindings } = require_as_table_status.useCellResolver(() => state.tableDef.value);
263
+ const { resolve: cellResolver, hasAnyCellBindings } = require_as_select_cell.useCellResolver(() => state.tableDef.value);
277
264
  const columns = (0, vue.computed)(() => props.columns ?? state.columns.value);
278
- const cellComponents = require_as_table_status.useCellComponents(() => columns.value);
265
+ const cellComponents = require_as_select_cell.useCellComponents(() => columns.value);
279
266
  const headerColumns = (0, vue.computed)(() => state.localSortAvailable.value ? columns.value : columns.value.map((c) => c.local && c.sortable ? {
280
267
  ...c,
281
268
  sortable: false
282
269
  } : c));
283
270
  const hasValue = (0, vue.computed)(() => props.select !== "none");
284
271
  const hasActiveFilters = (0, vue.computed)(() => (0, _atscript_ui_table.filledFilterCount)(state.filters.value) > 0);
272
+ /**
273
+ * Every row of the dataset, in order — or `null` while any is not loaded.
274
+ * The header checkbox exists only when this is known: acting on whatever
275
+ * blocks happen to be cached would pick rows the user never saw, so a
276
+ * partially loaded dataset gets no select-all control at all.
277
+ */
278
+ const allLoadedRows = (0, vue.computed)(() => {
279
+ if (props.select !== "multi") return null;
280
+ const total = state.totalCount.value;
281
+ const cache = state.windowCache.value;
282
+ if (total <= 0 || cache.size < total) return null;
283
+ const rows = [];
284
+ for (let i = 0; i < total; i++) {
285
+ const row = cache.get(i);
286
+ if (row === void 0) return null;
287
+ rows.push(row);
288
+ }
289
+ return rows;
290
+ });
291
+ const eligibleLoadedPks = (0, vue.computed)(() => {
292
+ const rows = allLoadedRows.value;
293
+ return rows ? new Set((0, _atscript_ui_table.rowsToPks)(state.selectableRows(rows), state.rowValueFn)) : null;
294
+ });
285
295
  const selectAllState = (0, vue.computed)(() => {
286
- if (props.select !== "multi") return void 0;
287
- return state.selectedRows.value.length === 0 ? "none" : "some";
296
+ const eligible = eligibleLoadedPks.value;
297
+ if (!eligible) return void 0;
298
+ let selected = 0;
299
+ for (const pk of state.selectedRows.value) if (eligible.has(pk)) selected++;
300
+ return require_use_table_state.toSelectAllState(selected, eligible.size);
288
301
  });
289
302
  const cellSlotFlags = (0, vue.computed)(() => {
290
303
  const out = {};
@@ -294,11 +307,6 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
294
307
  const rowStyle = (0, vue.computed)(() => ({ height: `${props.rowHeight}px` }));
295
308
  /** Shared "selectable" verdict — frozen, so a hookless pool allocates nothing. */
296
309
  const SELECTABLE = Object.freeze({ ok: true });
297
- /** Accessible name for a row's selection control, carrying the disabled reason. */
298
- function selectLabel(verdict) {
299
- if (verdict.ok) return "Select row";
300
- return verdict.reason ? `Select row, ${verdict.reason}` : "Select row, not selectable";
301
- }
302
310
  const visibleSlots = (0, vue.computed)(() => {
303
311
  const viewport = state.viewportRowCount.value;
304
312
  if (viewport <= 0) return [];
@@ -332,6 +340,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
332
340
  }
333
341
  out.push({
334
342
  s,
343
+ abs,
335
344
  row,
336
345
  pk,
337
346
  errored: row === void 0 && state.errorAt(abs) !== null,
@@ -348,7 +357,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
348
357
  return (0, _atscript_ui_table.clampTopIndex)(n, state.totalCount.value, state.viewportRowCount.value);
349
358
  }
350
359
  let pendingTopIndex = null;
351
- const topIndexBatch = require_as_table_status.useRafBatch((next) => {
360
+ const topIndexBatch = require_as_select_cell.useRafBatch((next) => {
352
361
  pendingTopIndex = null;
353
362
  if (next !== state.topIndex.value) state.topIndex.value = next;
354
363
  });
@@ -375,9 +384,6 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
375
384
  mode: props.select
376
385
  });
377
386
  }
378
- function onSelectCellKeydown(event, absIdx) {
379
- require_use_table_state.onSelectControlKeydown(event, absIdx, props.select, state);
380
- }
381
387
  (0, vue.watch)([() => state.activeIndex.value, () => state.viewportRowCount.value], ([idx, viewport]) => {
382
388
  if (idx < 0) return;
383
389
  if (viewport <= 0) return;
@@ -407,7 +413,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
407
413
  function onRowClick(row, event, absIdx) {
408
414
  emit("row-click", row, event);
409
415
  state.setActive(absIdx);
410
- if (props.select === "none") return;
416
+ if (props.select === "none" || props.selectOn === "control") return;
411
417
  state.toggleActiveSelection(props.select);
412
418
  }
413
419
  function onRowDblClick(row, event, absIdx) {
@@ -415,13 +421,9 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
415
421
  state.setActive(absIdx);
416
422
  state.requestMainAction(event);
417
423
  }
418
- function onSelectAllToggle(headerState) {
419
- if (headerState !== "none") {
420
- state.selectedRows.value = [];
421
- return;
422
- }
423
- const entries = [...state.windowCache.value.entries()].toSorted((a, b) => a[0] - b[0]);
424
- state.selectAll(entries.map((e) => e[1]), (i) => entries[i][0]);
424
+ function onToggleAll() {
425
+ const rows = allLoadedRows.value;
426
+ if (rows) state.toggleAll(rows);
425
427
  }
426
428
  const { onSort, onHide, onFilter, onFiltersOff, onResetWidth, onReorder, onClearFilters } = require_use_table_column_handlers.useTableColumnHandlers(state);
427
429
  const wrapperRef = (0, vue.ref)(null);
@@ -474,7 +476,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
474
476
  "aria-rowcount": (0, vue.unref)(state).totalCount.value + 1,
475
477
  "aria-multiselectable": __props.select === "multi" ? "true" : void 0
476
478
  }, [
477
- (0, vue.createVNode)(require_as_table_status.as_table_colgroup_default, {
479
+ (0, vue.createVNode)(require_as_select_cell.as_table_colgroup_default, {
478
480
  columns: columns.value,
479
481
  "column-widths": (0, vue.unref)(state).columnWidths.value,
480
482
  "has-select": hasValue.value,
@@ -484,7 +486,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
484
486
  "column-widths",
485
487
  "has-select"
486
488
  ]),
487
- !__props.headless ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_table_status.as_table_header_default, {
489
+ !__props.headless ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_select_cell.as_table_header_default, {
488
490
  key: 0,
489
491
  columns: headerColumns.value,
490
492
  sorters: (0, vue.unref)(state).sorters.value,
@@ -496,6 +498,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
496
498
  "column-min-width": __props.columnMinWidth,
497
499
  "has-select-column": hasValue.value,
498
500
  "select-all-state": selectAllState.value,
501
+ "selected-count": (0, vue.unref)(state).selectedCount.value,
499
502
  "with-filler": true,
500
503
  "enable-auto-fit": true,
501
504
  "aria-rowindex": 1,
@@ -506,8 +509,11 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
506
509
  onResetWidth: (0, vue.unref)(onResetWidth),
507
510
  onReorder: (0, vue.unref)(onReorder),
508
511
  onResize: (0, vue.unref)(state).setColumnWidth,
509
- onSelectAllToggle
510
- }, (0, vue.createSlots)({ _: 2 }, [(0, vue.renderList)(columns.value, (col) => {
512
+ onToggleAll
513
+ }, (0, vue.createSlots)({
514
+ "header-__select": (0, vue.withCtx)((scope) => [(0, vue.renderSlot)(_ctx.$slots, "header-__select", (0, vue.normalizeProps)((0, vue.guardReactiveProps)(scope)))]),
515
+ _: 2
516
+ }, [(0, vue.renderList)(columns.value, (col) => {
511
517
  return {
512
518
  name: `header-${col.path}`,
513
519
  fn: (0, vue.withCtx)((scope) => [(0, vue.renderSlot)(_ctx.$slots, `header-${col.path}`, (0, vue.normalizeProps)((0, vue.guardReactiveProps)(scope)))])
@@ -523,6 +529,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
523
529
  "column-min-width",
524
530
  "has-select-column",
525
531
  "select-all-state",
532
+ "selected-count",
526
533
  "onSort",
527
534
  "onHide",
528
535
  "onFilter",
@@ -547,35 +554,42 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
547
554
  key: 0,
548
555
  ref_for: true
549
556
  }, slot.attrs, {
550
- id: (0, vue.unref)(state).rowId((0, vue.unref)(state).topIndex.value + slot.s),
557
+ id: (0, vue.unref)(state).rowId(slot.abs),
551
558
  class: [
552
559
  "as-window-data-row",
553
- { "as-table-row-active": (0, vue.unref)(state).activeIndex.value === (0, vue.unref)(state).topIndex.value + slot.s },
560
+ { "as-table-row-active": (0, vue.unref)(state).activeIndex.value === slot.abs },
554
561
  slot.cls
555
562
  ],
556
563
  "data-selectable": slot.selectable.ok ? void 0 : "false",
557
564
  role: "row",
558
- "aria-rowindex": (0, vue.unref)(state).topIndex.value + slot.s + 2,
565
+ "aria-rowindex": slot.abs + 2,
559
566
  "aria-selected": slot.ariaSelected,
560
567
  style: rowStyle.value,
561
- onClick: ($event) => onRowClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s),
562
- onDblclick: ($event) => onRowDblClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s)
568
+ onClick: ($event) => onRowClick(slot.row, $event, slot.abs),
569
+ onDblclick: ($event) => onRowDblClick(slot.row, $event, slot.abs)
563
570
  }), [
564
- hasValue.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", _hoisted_5, [(0, vue.createElementVNode)("span", {
565
- class: (0, vue.normalizeClass)(["as-table-checkbox", {
566
- "as-table-checkbox-checked": slot.selected,
567
- "as-table-checkbox-disabled": !slot.selectable.ok
568
- }]),
569
- role: "checkbox",
570
- tabindex: slot.selectable.ok ? 0 : void 0,
571
- "aria-label": selectLabel(slot.selectable),
572
- title: slot.selectable.reason,
573
- "aria-checked": slot.selected ? "true" : "false",
574
- "aria-disabled": slot.selectable.ok ? void 0 : "true",
575
- onKeydown: ($event) => onSelectCellKeydown($event, (0, vue.unref)(state).topIndex.value + slot.s)
576
- }, [slot.selected ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_7)) : (0, vue.createCommentVNode)("v-if", true)], 42, _hoisted_6)])) : (0, vue.createCommentVNode)("v-if", true),
571
+ hasValue.value ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_select_cell.as_select_cell_default, {
572
+ key: 0,
573
+ row: slot.row,
574
+ index: slot.abs,
575
+ selected: slot.selected,
576
+ verdict: slot.selectable,
577
+ select: __props.select,
578
+ "select-on": __props.selectOn
579
+ }, (0, vue.createSlots)({ _: 2 }, [(0, vue.unref)(slots)["cell-__select"] ? {
580
+ name: "default",
581
+ fn: (0, vue.withCtx)((scope) => [(0, vue.renderSlot)(_ctx.$slots, "cell-__select", (0, vue.mergeProps)({ ref_for: true }, scope))]),
582
+ key: "0"
583
+ } : void 0]), 1032, [
584
+ "row",
585
+ "index",
586
+ "selected",
587
+ "verdict",
588
+ "select",
589
+ "select-on"
590
+ ])) : (0, vue.createCommentVNode)("v-if", true),
577
591
  (0, vue.unref)(hasAnyCellBindings) ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, (0, vue.renderList)(columns.value, (col) => {
578
- return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: col.path }, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)([(0, vue.unref)(cellResolver)(col, slot.row, (0, vue.unref)(state).topIndex.value + slot.s)], (bindings) => {
592
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: col.path }, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)([(0, vue.unref)(cellResolver)(col, slot.row, slot.abs)], (bindings) => {
579
593
  return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 0 }, [cellSlotFlags.value[col.path] ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", (0, vue.mergeProps)({
580
594
  key: 0,
581
595
  role: "gridcell"
@@ -591,7 +605,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
591
605
  }, { ref_for: true }, bindings), null, 16, ["row", "column"]))], 64);
592
606
  }), 128))], 64);
593
607
  }), 128)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, (0, vue.renderList)(columns.value, (col) => {
594
- return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: col.path }, [cellSlotFlags.value[col.path] ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", _hoisted_8, [(0, vue.renderSlot)(_ctx.$slots, `cell-${col.path}`, {
608
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: col.path }, [cellSlotFlags.value[col.path] ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", _hoisted_5, [(0, vue.renderSlot)(_ctx.$slots, `cell-${col.path}`, {
595
609
  row: slot.row,
596
610
  value: (0, vue.unref)(require_get_cell_value.getCellValue)(slot.row, col.path),
597
611
  column: col
@@ -621,7 +635,7 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
621
635
  }), 128))], 40, _hoisted_3)
622
636
  ], 8, _hoisted_2),
623
637
  (0, vue.createCommentVNode)(" Error / empty placeholders render INSIDE the wrapper so they cover\n the empty pool body when there's nothing to show; suppressed during\n a `querying` refresh because the full-table overlay covers that case. "),
624
- (0, vue.createVNode)(require_as_table_status.as_table_status_default, {
638
+ (0, vue.createVNode)(require_as_select_cell.as_table_status_default, {
625
639
  "query-error": (0, vue.unref)(state).queryError.value,
626
640
  "is-empty": (0, vue.unref)(state).totalCount.value === 0,
627
641
  querying: (0, vue.unref)(state).querying.value,
@@ -683,6 +697,11 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
683
697
  required: false,
684
698
  default: "none"
685
699
  },
700
+ selectOn: {
701
+ type: String,
702
+ required: false,
703
+ default: "row"
704
+ },
686
705
  rows: {
687
706
  type: Number,
688
707
  required: false
@@ -802,6 +821,7 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
802
821
  resizable: __props.resizable,
803
822
  "column-min-width": __props.columnMinWidth,
804
823
  select: __props.select,
824
+ "select-on": __props.selectOn,
805
825
  headless: __props.headless,
806
826
  "enter-action": __props.enterAction,
807
827
  "row-class": __props.rowClass,
@@ -823,6 +843,7 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
823
843
  "resizable",
824
844
  "column-min-width",
825
845
  "select",
846
+ "select-on",
826
847
  "headless",
827
848
  "enter-action",
828
849
  "row-class",
@@ -1,2 +1,2 @@
1
- const require_as_window_table = require("./as-window-table-Dpbezh9D.cjs");
1
+ const require_as_window_table = require("./as-window-table-hOYLNhX3.cjs");
2
2
  module.exports = require_as_window_table.as_window_table_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-window-table.vue-Bar8mWRL.cjs";
1
+ import { t as _default } from "./as-window-table.vue-D6UDA6td.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-window-table.vue-OL4KC7Y-.mjs";
1
+ import { t as _default } from "./as-window-table.vue-Deg1mj3t.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_window_table_default } from "./as-window-table-CkTJOvu9.mjs";
1
+ import { t as as_window_table_default } from "./as-window-table-C312T_bc.mjs";
2
2
  export { as_window_table_default as default };
@@ -1,4 +1,4 @@
1
- import { _ as RowAttrsHook, h as RowActionsColumnPlacement, p as QueryErrorKind, r as ColumnMenuConfig, s as EnterAction, v as RowClassHook, x as RowSelectableHook, y as RowDeleteOpt } from "./types-Cdk5OH1-.cjs";
1
+ import { _ as RowAttrsHook, h as RowActionsColumnPlacement, p as QueryErrorKind, r as ColumnMenuConfig, s as EnterAction, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-D4dK49sA.cjs";
2
2
  import * as vue from "vue";
3
3
  import { SelectionMode } from "@atscript/ui-table";
4
4
 
@@ -15,7 +15,8 @@ type __VLS_Props = {
15
15
  * flipping `select` to `"none"` hides the checkbox UI but leaves the
16
16
  * user's selected pks in place, surviving a future re-enable.
17
17
  */
18
- select?: SelectionMode;
18
+ select?: SelectionMode; /** See {@link SelectOn}. Since 0.1.142. */
19
+ selectOn?: SelectOn;
19
20
  /**
20
21
  * Force exactly N rows tall. Equivalent to setting both `min-rows` and
21
22
  * `max-rows` to N — overrides both when set. The table reserves N rows
@@ -99,12 +100,12 @@ type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_13>]?: (props: typeof _
99
100
  'query-loading'?: (props: typeof __VLS_16) => any;
100
101
  };
101
102
  declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
102
- "main-action": (row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
103
+ "main-action": (row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
103
104
  "row-click": (row: Row, event: MouseEvent) => any;
104
105
  "row-dblclick": (row: Row, event: MouseEvent) => any;
105
106
  error: (error: Error, kind: QueryErrorKind) => any;
106
107
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
107
- "onMain-action"?: ((row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
108
+ "onMain-action"?: ((row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
108
109
  "onRow-click"?: ((row: Row, event: MouseEvent) => any) | undefined;
109
110
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
110
111
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
@@ -112,6 +113,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
112
113
  rowHeight: number;
113
114
  wheelRowsPerTick: number;
114
115
  select: SelectionMode;
116
+ selectOn: SelectOn;
115
117
  reorderable: boolean;
116
118
  resizable: boolean;
117
119
  columnMinWidth: number;
@@ -1,4 +1,4 @@
1
- import { _ as RowAttrsHook, h as RowActionsColumnPlacement, p as QueryErrorKind, r as ColumnMenuConfig, s as EnterAction, v as RowClassHook, x as RowSelectableHook, y as RowDeleteOpt } from "./types-Ev-A5h_D.mjs";
1
+ import { _ as RowAttrsHook, h as RowActionsColumnPlacement, p as QueryErrorKind, r as ColumnMenuConfig, s as EnterAction, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-BU7J-a1r.mjs";
2
2
  import * as vue from "vue";
3
3
  import { SelectionMode } from "@atscript/ui-table";
4
4
 
@@ -15,7 +15,8 @@ type __VLS_Props = {
15
15
  * flipping `select` to `"none"` hides the checkbox UI but leaves the
16
16
  * user's selected pks in place, surviving a future re-enable.
17
17
  */
18
- select?: SelectionMode;
18
+ select?: SelectionMode; /** See {@link SelectOn}. Since 0.1.142. */
19
+ selectOn?: SelectOn;
19
20
  /**
20
21
  * Force exactly N rows tall. Equivalent to setting both `min-rows` and
21
22
  * `max-rows` to N — overrides both when set. The table reserves N rows
@@ -99,12 +100,12 @@ type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_13>]?: (props: typeof _
99
100
  'query-loading'?: (props: typeof __VLS_16) => any;
100
101
  };
101
102
  declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
102
- "main-action": (row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
103
+ "main-action": (row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
103
104
  "row-click": (row: Row, event: MouseEvent) => any;
104
105
  "row-dblclick": (row: Row, event: MouseEvent) => any;
105
106
  error: (error: Error, kind: QueryErrorKind) => any;
106
107
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
107
- "onMain-action"?: ((row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
108
+ "onMain-action"?: ((row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
108
109
  "onRow-click"?: ((row: Row, event: MouseEvent) => any) | undefined;
109
110
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
110
111
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
@@ -112,6 +113,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.C
112
113
  rowHeight: number;
113
114
  wheelRowsPerTick: number;
114
115
  select: SelectionMode;
116
+ selectOn: SelectOn;
115
117
  reorderable: boolean;
116
118
  resizable: boolean;
117
119
  columnMinWidth: number;
package/dist/index.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_use_table_state = require("./use-table-state-CgXY-ruN.cjs");
2
+ const require_use_table_state = require("./use-table-state-BiklfjP0.cjs");
3
3
  const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
4
4
  const require_use_table_selection = require("./use-table-selection-DtCV3rhu.cjs");
5
- const require_use_table = require("./use-table-rc6_sYU6.cjs");
6
- const require_use_table_nav_bridge = require("./use-table-nav-bridge-ByQo00IH.cjs");
7
- const require_use_table_component = require("./use-table-component-Tc_ZvZua.cjs");
5
+ const require_use_table = require("./use-table-yZNJTfRq.cjs");
6
+ const require_use_table_nav_bridge = require("./use-table-nav-bridge-QU4jKhqx.cjs");
7
+ const require_use_table_component = require("./use-table-component-IziAm0vk.cjs");
8
8
  const require_as_cell_array = require("./as-cell-array-CCZ0Ajj9.cjs");
9
9
  const require_as_cell_date = require("./as-cell-date-RU5JPJhI.cjs");
10
10
  const require_use_cell_locale = require("./use-cell-locale-BGBRQB7s.cjs");
@@ -13,22 +13,22 @@ const require_as_cell_number = require("./as-cell-number-DGJCTXDf.cjs");
13
13
  const require_format_cell = require("./format-cell-vCNTh4WZ.cjs");
14
14
  const require_as_cell_union = require("./as-cell-union-LOGvhPeK.cjs");
15
15
  const require_as_column_menu = require("./as-column-menu-ChB7hzmr.cjs");
16
- const require_as_config_dialog = require("./as-config-dialog-Chpw_2tu.cjs");
17
- const require_as_confirm_dialog = require("./as-confirm-dialog-hHYVEX9E.cjs");
16
+ const require_as_config_dialog = require("./as-config-dialog-CVSOrS9O.cjs");
17
+ const require_as_confirm_dialog = require("./as-confirm-dialog-fCwo1ty9.cjs");
18
18
  const require_as_filter_input = require("./as-filter-input-DJu2k9gO.cjs");
19
- const require_as_filter_dialog = require("./as-filter-dialog-Xvj5q09A.cjs");
20
- const require_as_table_header_cell = require("./as-table-header-cell-10DQEs00.cjs");
21
- const require_as_window_table = require("./as-window-table-Dpbezh9D.cjs");
22
- const require_as_filter_field = require("./as-filter-field-B7b2sEG0.cjs");
23
- const require_as_residual_filter = require("./as-residual-filter-BJ4cwFP4.cjs");
24
- const require_as_filters = require("./as-filters-CWQgQBCH.cjs");
25
- const require_as_preset_dialog = require("./as-preset-dialog-l81WXBmf.cjs");
26
- const require_as_row_actions = require("./as-row-actions-9p_BJPga.cjs");
19
+ const require_as_filter_dialog = require("./as-filter-dialog-DYpbsNDx.cjs");
20
+ const require_as_table_header_cell = require("./as-table-header-cell-f3YpgJX1.cjs");
21
+ const require_as_window_table = require("./as-window-table-hOYLNhX3.cjs");
22
+ const require_as_filter_field = require("./as-filter-field-4-qFRsJx.cjs");
23
+ const require_as_residual_filter = require("./as-residual-filter-CZ-Bytdj.cjs");
24
+ const require_as_filters = require("./as-filters-C6ZkLrf4.cjs");
25
+ const require_as_preset_dialog = require("./as-preset-dialog-SYA-6lGR.cjs");
26
+ const require_as_row_actions = require("./as-row-actions-C3xHkX53.cjs");
27
27
  const require_as_table_cell_value = require("./as-table-cell-value-COyZnwUj.cjs");
28
- const require_as_table_root = require("./as-table-root-CGXKfCIk.cjs");
29
- const require_as_table = require("./as-table-fOBpTDrI.cjs");
30
- const require_as_table_actions = require("./as-table-actions-oxVqSH-G.cjs");
31
- const require_as_preset_picker = require("./as-preset-picker-Bp4xMTua.cjs");
28
+ const require_as_table_root = require("./as-table-root-DDeGktcl.cjs");
29
+ const require_as_table = require("./as-table-ay1yel3u.cjs");
30
+ const require_as_table_actions = require("./as-table-actions-UQmFtRdJ.cjs");
31
+ const require_as_preset_picker = require("./as-preset-picker-BdKTZa95.cjs");
32
32
  let _atscript_ui = require("@atscript/ui");
33
33
  let vue = require("vue");
34
34
  let _atscript_ui_table = require("@atscript/ui-table");
package/dist/index.d.cts CHANGED
@@ -1,23 +1,23 @@
1
- import { t as _default$11 } from "./as-filters.vue-DMXZhQW3.cjs";
1
+ import { t as _default$11 } from "./as-filters.vue-vH1FHn9L.cjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-DfXS3pGl.cjs";
3
- import { C as TAsCellTypeComponents, D as TableNavBridge, E as TableActionsState, O as extractIdentifier, S as RowSelectableVerdict, T as TVueTableActionInfo, _ as RowAttrsHook, b as RowHookContext, c as InvokeOpts, d as NavKeyOptions, g as RowActionsConfig, i as ConfigTab, l as LocalRowAction, m as ReactiveTableState, n as ApplyUrlQueryOptions, o as DroppedFieldsReport, p as QueryErrorKind, r as ColumnMenuConfig, t as ActionResult, u as MainActionRequest, v as RowClassHook, w as TAsTableControls, x as RowSelectableHook, y as RowDeleteOpt } from "./types-Cdk5OH1-.cjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-Dls_1Vze.cjs";
5
- import { $ as useTableExport, A as CellLocale, B as injectPresetsApp, C as isSystemPresetId, Ct as UseLocalDraftReturn, D as formatCellValue, E as setDefaultClientFactory, F as useTableComponent, G as useTableFilter, H as useTableUrlQuery, I as UseAppPrefsOptions, J as ExportProgress, K as useTableNavBridge, L as UseAppPrefsReturn, M as useCellLocale, N as createDefaultCellTypes, O as getCellValue, P as createDefaultControls, Q as downloadExport, R as useAppPrefs, S as getDefaultClientFactory, St as UseLocalDraftOptions, T as resolveSystemPresets, U as useTableActions, V as UseTableUrlQueryOptions, W as useTableSearch, X as ExportRowsOptions, Y as ExportResult, Z as UseTableExportReturn, _ as SYSTEM_PRESET_PREFIX, _t as ActivePresetView, a as CsvOptions, at as BuildQueryOptions, b as UrlQuerySync, bt as usePresets, c as ExportScalar, ct as QueryFn, d as PresetCapabilities, dt as TableStateInternals, et as UseTableOptions, f as PresetData, ft as createStaticTableState, g as STANDARD_PRESET_ID, gt as useTableContextOptional, h as QueryOptions, ht as useTableContext, i as ClientFactory, it as useTableSelection, j as provideCellLocale, k as getColumnWidth, l as PRESET_ASPECTS, lt as TableContext, m as PresetSnapshotWire, mt as provideTableContext, n as AppConfData, nt as useTable, o as DisplayColumnDef, ot as CreateStaticTableStateOptions, p as PresetSnapshot, pt as createTableState, q as ExportCellFormatter, r as AsPresetEntryRow, rt as SelectionPersistence, s as ExportAbortError, st as CreateTableStateOptions, t as _default$19, tt as clearTableCache, u as PresetAspect, ut as TableModelRefs, v as SystemPreset, vt as UsePresetsOptions, w as resetDefaultClientFactory, wt as useLocalDraft, x as UserConfData, xt as StorageLike, y as SystemPresetInput, yt as UsePresetsReturn, z as AS_PRESETS_APP } from "./as-table-root.vue-D5H8uXFK.cjs";
6
- import { t as _default$15 } from "./as-table.vue-B533pYs6.cjs";
7
- import { t as _default$20 } from "./as-window-table.vue-Bar8mWRL.cjs";
3
+ import { A as extractIdentifier, C as SelectAllState, D as TVueTableActionInfo, E as TAsTableControls, O as TableActionsState, S as RowSelectableVerdict, T as TAsCellTypeComponents, _ as RowAttrsHook, b as RowHookContext, c as InvokeOpts, d as NavKeyOptions, g as RowActionsConfig, i as ConfigTab, k as TableNavBridge, l as LocalRowAction, m as ReactiveTableState, n as ApplyUrlQueryOptions, o as DroppedFieldsReport, p as QueryErrorKind, r as ColumnMenuConfig, t as ActionResult, u as MainActionRequest, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-D4dK49sA.cjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-DcuzNZoC.cjs";
5
+ import { $ as useTableExport, A as CellLocale, B as injectPresetsApp, C as isSystemPresetId, Ct as UseLocalDraftReturn, D as formatCellValue, E as setDefaultClientFactory, F as useTableComponent, G as useTableFilter, H as useTableUrlQuery, I as UseAppPrefsOptions, J as ExportProgress, K as useTableNavBridge, L as UseAppPrefsReturn, M as useCellLocale, N as createDefaultCellTypes, O as getCellValue, P as createDefaultControls, Q as downloadExport, R as useAppPrefs, S as getDefaultClientFactory, St as UseLocalDraftOptions, T as resolveSystemPresets, U as useTableActions, V as UseTableUrlQueryOptions, W as useTableSearch, X as ExportRowsOptions, Y as ExportResult, Z as UseTableExportReturn, _ as SYSTEM_PRESET_PREFIX, _t as ActivePresetView, a as CsvOptions, at as BuildQueryOptions, b as UrlQuerySync, bt as usePresets, c as ExportScalar, ct as QueryFn, d as PresetCapabilities, dt as TableStateInternals, et as UseTableOptions, f as PresetData, ft as createStaticTableState, g as STANDARD_PRESET_ID, gt as useTableContextOptional, h as QueryOptions, ht as useTableContext, i as ClientFactory, it as useTableSelection, j as provideCellLocale, k as getColumnWidth, l as PRESET_ASPECTS, lt as TableContext, m as PresetSnapshotWire, mt as provideTableContext, n as AppConfData, nt as useTable, o as DisplayColumnDef, ot as CreateStaticTableStateOptions, p as PresetSnapshot, pt as createTableState, q as ExportCellFormatter, r as AsPresetEntryRow, rt as SelectionPersistence, s as ExportAbortError, st as CreateTableStateOptions, t as _default$19, tt as clearTableCache, u as PresetAspect, ut as TableModelRefs, v as SystemPreset, vt as UsePresetsOptions, w as resetDefaultClientFactory, wt as useLocalDraft, x as UserConfData, xt as StorageLike, y as SystemPresetInput, yt as UsePresetsReturn, z as AS_PRESETS_APP } from "./as-table-root.vue-yZ7ZcwdT.cjs";
6
+ import { t as _default$15 } from "./as-table.vue-CwI5Z0y5.cjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-D6UDA6td.cjs";
8
8
  import { t as _default } from "./as-cell-array.vue-pFs5GcCR.cjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-BBSps2B2.cjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-C6wg4ARZ.cjs";
11
11
  import { t as _default$3 } from "./as-cell-number.vue-CJ2K5zeM.cjs";
12
12
  import { t as _default$4 } from "./as-cell-union.vue-CslPM_c2.cjs";
13
- import { t as _default$5 } from "./as-column-menu.vue-DapdB_qF.cjs";
13
+ import { t as _default$5 } from "./as-column-menu.vue-Co7FtiEM.cjs";
14
14
  import { t as _default$6 } from "./as-config-dialog.vue-DvvJi3xx.cjs";
15
15
  import { t as _default$7 } from "./as-confirm-dialog.vue-CXxLpzbu.cjs";
16
16
  import { t as _default$8 } from "./as-filter-dialog.vue-BV2J8PgZ.cjs";
17
17
  import { t as _default$9 } from "./as-filter-field.vue-ByQ8xIGq.cjs";
18
18
  import { t as _default$10 } from "./as-filter-input.vue-CS4nOk_Q.cjs";
19
19
  import { t as _default$12 } from "./as-preset-dialog.vue-DP9fy00Y.cjs";
20
- import { t as _default$14 } from "./as-row-actions.vue-BezMFOr6.cjs";
20
+ import { t as _default$14 } from "./as-row-actions.vue-D3_z3ytk.cjs";
21
21
  import { t as _default$17 } from "./as-table-cell-value.vue-C0VR9GRK.cjs";
22
- import { t as _default$18 } from "./as-table-header-cell.vue-D-iI_EJY.cjs";
23
- export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, ApplyUrlQueryOptions, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, BuildQueryOptions, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, CsvOptions, DisplayColumnDef, DroppedFieldsReport, ExportAbortError, ExportCellFormatter, ExportProgress, ExportResult, ExportRowsOptions, ExportScalar, InvokeOpts, LocalRowAction, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, QueryFn, QueryOptions, ReactiveTableState, RowActionsConfig, RowAttrsHook, RowClassHook, RowDeleteOpt, RowHookContext, RowSelectableHook, RowSelectableVerdict, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableModelRefs, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableExportReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, downloadExport, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, provideTableContext, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableExport, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };
22
+ import { t as _default$18 } from "./as-table-header-cell.vue-XR90UlHO.cjs";
23
+ export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, ApplyUrlQueryOptions, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, BuildQueryOptions, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, CsvOptions, DisplayColumnDef, DroppedFieldsReport, ExportAbortError, ExportCellFormatter, ExportProgress, ExportResult, ExportRowsOptions, ExportScalar, InvokeOpts, LocalRowAction, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, QueryFn, QueryOptions, ReactiveTableState, RowActionsConfig, RowAttrsHook, RowClassHook, RowDeleteOpt, RowHookContext, RowSelectableHook, RowSelectableVerdict, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectAllState, SelectOn, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableModelRefs, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableExportReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, downloadExport, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, provideTableContext, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableExport, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };
package/dist/index.d.mts CHANGED
@@ -1,23 +1,23 @@
1
- import { t as _default$11 } from "./as-filters.vue-BSgUEh4D.mjs";
1
+ import { t as _default$11 } from "./as-filters.vue-dHbGmcbr.mjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-OaAV2v9z.mjs";
3
- import { C as TAsCellTypeComponents, D as TableNavBridge, E as TableActionsState, O as extractIdentifier, S as RowSelectableVerdict, T as TVueTableActionInfo, _ as RowAttrsHook, b as RowHookContext, c as InvokeOpts, d as NavKeyOptions, g as RowActionsConfig, i as ConfigTab, l as LocalRowAction, m as ReactiveTableState, n as ApplyUrlQueryOptions, o as DroppedFieldsReport, p as QueryErrorKind, r as ColumnMenuConfig, t as ActionResult, u as MainActionRequest, v as RowClassHook, w as TAsTableControls, x as RowSelectableHook, y as RowDeleteOpt } from "./types-Ev-A5h_D.mjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-CrZtcxAY.mjs";
5
- import { $ as useTableExport, A as CellLocale, B as injectPresetsApp, C as isSystemPresetId, Ct as UseLocalDraftReturn, D as formatCellValue, E as setDefaultClientFactory, F as useTableComponent, G as useTableFilter, H as useTableUrlQuery, I as UseAppPrefsOptions, J as ExportProgress, K as useTableNavBridge, L as UseAppPrefsReturn, M as useCellLocale, N as createDefaultCellTypes, O as getCellValue, P as createDefaultControls, Q as downloadExport, R as useAppPrefs, S as getDefaultClientFactory, St as UseLocalDraftOptions, T as resolveSystemPresets, U as useTableActions, V as UseTableUrlQueryOptions, W as useTableSearch, X as ExportRowsOptions, Y as ExportResult, Z as UseTableExportReturn, _ as SYSTEM_PRESET_PREFIX, _t as ActivePresetView, a as CsvOptions, at as BuildQueryOptions, b as UrlQuerySync, bt as usePresets, c as ExportScalar, ct as QueryFn, d as PresetCapabilities, dt as TableStateInternals, et as UseTableOptions, f as PresetData, ft as createStaticTableState, g as STANDARD_PRESET_ID, gt as useTableContextOptional, h as QueryOptions, ht as useTableContext, i as ClientFactory, it as useTableSelection, j as provideCellLocale, k as getColumnWidth, l as PRESET_ASPECTS, lt as TableContext, m as PresetSnapshotWire, mt as provideTableContext, n as AppConfData, nt as useTable, o as DisplayColumnDef, ot as CreateStaticTableStateOptions, p as PresetSnapshot, pt as createTableState, q as ExportCellFormatter, r as AsPresetEntryRow, rt as SelectionPersistence, s as ExportAbortError, st as CreateTableStateOptions, t as _default$19, tt as clearTableCache, u as PresetAspect, ut as TableModelRefs, v as SystemPreset, vt as UsePresetsOptions, w as resetDefaultClientFactory, wt as useLocalDraft, x as UserConfData, xt as StorageLike, y as SystemPresetInput, yt as UsePresetsReturn, z as AS_PRESETS_APP } from "./as-table-root.vue-BROdsTqv.mjs";
6
- import { t as _default$15 } from "./as-table.vue-B_7Y82yW.mjs";
7
- import { t as _default$20 } from "./as-window-table.vue-OL4KC7Y-.mjs";
3
+ import { A as extractIdentifier, C as SelectAllState, D as TVueTableActionInfo, E as TAsTableControls, O as TableActionsState, S as RowSelectableVerdict, T as TAsCellTypeComponents, _ as RowAttrsHook, b as RowHookContext, c as InvokeOpts, d as NavKeyOptions, g as RowActionsConfig, i as ConfigTab, k as TableNavBridge, l as LocalRowAction, m as ReactiveTableState, n as ApplyUrlQueryOptions, o as DroppedFieldsReport, p as QueryErrorKind, r as ColumnMenuConfig, t as ActionResult, u as MainActionRequest, v as RowClassHook, w as SelectOn, x as RowSelectableHook, y as RowDeleteOpt } from "./types-BU7J-a1r.mjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-BG3JVaBQ.mjs";
5
+ import { $ as useTableExport, A as CellLocale, B as injectPresetsApp, C as isSystemPresetId, Ct as UseLocalDraftReturn, D as formatCellValue, E as setDefaultClientFactory, F as useTableComponent, G as useTableFilter, H as useTableUrlQuery, I as UseAppPrefsOptions, J as ExportProgress, K as useTableNavBridge, L as UseAppPrefsReturn, M as useCellLocale, N as createDefaultCellTypes, O as getCellValue, P as createDefaultControls, Q as downloadExport, R as useAppPrefs, S as getDefaultClientFactory, St as UseLocalDraftOptions, T as resolveSystemPresets, U as useTableActions, V as UseTableUrlQueryOptions, W as useTableSearch, X as ExportRowsOptions, Y as ExportResult, Z as UseTableExportReturn, _ as SYSTEM_PRESET_PREFIX, _t as ActivePresetView, a as CsvOptions, at as BuildQueryOptions, b as UrlQuerySync, bt as usePresets, c as ExportScalar, ct as QueryFn, d as PresetCapabilities, dt as TableStateInternals, et as UseTableOptions, f as PresetData, ft as createStaticTableState, g as STANDARD_PRESET_ID, gt as useTableContextOptional, h as QueryOptions, ht as useTableContext, i as ClientFactory, it as useTableSelection, j as provideCellLocale, k as getColumnWidth, l as PRESET_ASPECTS, lt as TableContext, m as PresetSnapshotWire, mt as provideTableContext, n as AppConfData, nt as useTable, o as DisplayColumnDef, ot as CreateStaticTableStateOptions, p as PresetSnapshot, pt as createTableState, q as ExportCellFormatter, r as AsPresetEntryRow, rt as SelectionPersistence, s as ExportAbortError, st as CreateTableStateOptions, t as _default$19, tt as clearTableCache, u as PresetAspect, ut as TableModelRefs, v as SystemPreset, vt as UsePresetsOptions, w as resetDefaultClientFactory, wt as useLocalDraft, x as UserConfData, xt as StorageLike, y as SystemPresetInput, yt as UsePresetsReturn, z as AS_PRESETS_APP } from "./as-table-root.vue-BGx453_Q.mjs";
6
+ import { t as _default$15 } from "./as-table.vue-wdFf4hMW.mjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-Deg1mj3t.mjs";
8
8
  import { t as _default } from "./as-cell-array.vue-ow34clSF.mjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-B4JCr1qP.mjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-B-T3TuFj.mjs";
11
11
  import { t as _default$3 } from "./as-cell-number.vue-CNH2fbCB.mjs";
12
12
  import { t as _default$4 } from "./as-cell-union.vue-CZwN81H4.mjs";
13
- import { t as _default$5 } from "./as-column-menu.vue-Ys_sx0VE.mjs";
13
+ import { t as _default$5 } from "./as-column-menu.vue-Ca3wSDxw.mjs";
14
14
  import { t as _default$6 } from "./as-config-dialog.vue-BKo2GpzN.mjs";
15
15
  import { t as _default$7 } from "./as-confirm-dialog.vue-BN_yzu3h.mjs";
16
16
  import { t as _default$8 } from "./as-filter-dialog.vue-Bl8OIKOf.mjs";
17
17
  import { t as _default$9 } from "./as-filter-field.vue-DD0IZXS1.mjs";
18
18
  import { t as _default$10 } from "./as-filter-input.vue-CFZ33B--.mjs";
19
19
  import { t as _default$12 } from "./as-preset-dialog.vue-ChM7H7B4.mjs";
20
- import { t as _default$14 } from "./as-row-actions.vue-BOURuyjv.mjs";
20
+ import { t as _default$14 } from "./as-row-actions.vue-nmaDuxBT.mjs";
21
21
  import { t as _default$17 } from "./as-table-cell-value.vue-DphckGq-.mjs";
22
- import { t as _default$18 } from "./as-table-header-cell.vue-SMBpzqU2.mjs";
23
- export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, ApplyUrlQueryOptions, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, BuildQueryOptions, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, CsvOptions, DisplayColumnDef, DroppedFieldsReport, ExportAbortError, ExportCellFormatter, ExportProgress, ExportResult, ExportRowsOptions, ExportScalar, InvokeOpts, LocalRowAction, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, QueryFn, QueryOptions, ReactiveTableState, RowActionsConfig, RowAttrsHook, RowClassHook, RowDeleteOpt, RowHookContext, RowSelectableHook, RowSelectableVerdict, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableModelRefs, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableExportReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, downloadExport, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, provideTableContext, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableExport, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };
22
+ import { t as _default$18 } from "./as-table-header-cell.vue-5VGRc23o.mjs";
23
+ export { AS_PRESETS_APP, ActionResult, ActivePresetView, AppConfData, ApplyUrlQueryOptions, _default as AsCellArray, _default$1 as AsCellDate, _default$2 as AsCellJson, _default$3 as AsCellNumber, _default$4 as AsCellUnion, _default$5 as AsColumnMenu, _default$6 as AsConfigDialog, _default$7 as AsConfirmDialog, _default$8 as AsFilterDialog, _default$9 as AsFilterField, _default$10 as AsFilterInput, _default$11 as AsFilters, _default$12 as AsPresetDialog, AsPresetEntryRow, _default$13 as AsPresetPicker, _default$14 as AsRowActions, _default$15 as AsTable, _default$16 as AsTableActions, _default$17 as AsTableCellValue, _default$18 as AsTableHeaderCell, _default$19 as AsTableRoot, _default$20 as AsWindowTable, BuildQueryOptions, CellLocale, ClientFactory, ColumnMenuConfig, ConfigTab, CreateStaticTableStateOptions, CreateTableStateOptions, CsvOptions, DisplayColumnDef, DroppedFieldsReport, ExportAbortError, ExportCellFormatter, ExportProgress, ExportResult, ExportRowsOptions, ExportScalar, InvokeOpts, LocalRowAction, MainActionRequest, NavKeyOptions, PRESET_ASPECTS, PresetAspect, PresetCapabilities, PresetData, PresetSnapshot, PresetSnapshotWire, QueryErrorKind, QueryFn, QueryOptions, ReactiveTableState, RowActionsConfig, RowAttrsHook, RowClassHook, RowDeleteOpt, RowHookContext, RowSelectableHook, RowSelectableVerdict, STANDARD_PRESET_ID, SYSTEM_PRESET_PREFIX, SelectAllState, SelectOn, SelectionPersistence, StorageLike, SystemPreset, SystemPresetInput, TAsCellTypeComponents, TAsTableControls, TVueTableActionInfo, TableActionsState, TableContext, TableModelRefs, TableNavBridge, TableStateInternals, UrlQuerySync, UseAppPrefsOptions, UseAppPrefsReturn, UseLocalDraftOptions, UseLocalDraftReturn, UsePresetsOptions, UsePresetsReturn, UseTableExportReturn, UseTableOptions, UseTableUrlQueryOptions, UserConfData, clearTableCache, createDefaultCellTypes, createDefaultControls, createStaticTableState, createTableState, downloadExport, extractIdentifier, formatCellValue, getCellValue, getColumnWidth, getDefaultClientFactory, injectPresetsApp, isSystemPresetId, provideCellLocale, provideTableContext, resetDefaultClientFactory, resolveSystemPresets, setDefaultClientFactory, useAppPrefs, useCellLocale, useLocalDraft, usePresets, useTable, useTableActions, useTableComponent, useTableContext, useTableContextOptional, useTableExport, useTableFilter, useTableNavBridge, useTableSearch, useTableSelection, useTableUrlQuery };