@atscript/vue-table 0.1.106 → 0.1.107

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 (45) hide show
  1. package/dist/{as-filter-dialog-DAvF5KI7.cjs → as-filter-dialog-BBMHtQRx.cjs} +2 -2
  2. package/dist/{as-filter-dialog-QjVypqE9.mjs → as-filter-dialog-BFy5tg8o.mjs} +2 -2
  3. package/dist/as-filter-dialog.cjs +1 -1
  4. package/dist/as-filter-dialog.mjs +1 -1
  5. package/dist/{as-filter-field-c0T27ONN.cjs → as-filter-field-BRSNhFa5.cjs} +1 -1
  6. package/dist/{as-filter-field-BR32vGGD.mjs → as-filter-field-DiSwUOJG.mjs} +1 -1
  7. package/dist/as-filter-field.cjs +1 -1
  8. package/dist/as-filter-field.mjs +1 -1
  9. package/dist/{as-filters-DhJy2qGo.cjs → as-filters-B82jw5f5.cjs} +1 -1
  10. package/dist/{as-filters-5Qyru0V1.mjs → as-filters-N95wOVF4.mjs} +1 -1
  11. package/dist/as-filters.cjs +1 -1
  12. package/dist/as-filters.mjs +1 -1
  13. package/dist/{as-table-B7RnEB9N.mjs → as-table-Bo2dAWTD.mjs} +8 -1
  14. package/dist/{as-table-BqIeLNSt.cjs → as-table-MKVsJZxT.cjs} +8 -1
  15. package/dist/as-table-actions.d.cts +1 -1
  16. package/dist/as-table-actions.d.mts +1 -1
  17. package/dist/{as-table-actions.vue-33oeDXOg.d.cts → as-table-actions.vue-CCCICVBr.d.cts} +1 -1
  18. package/dist/{as-table-actions.vue-DMf6-R5o.d.mts → as-table-actions.vue-l3DnLVxA.d.mts} +1 -1
  19. package/dist/{as-table-base-ZW7lQ-Id.mjs → as-table-base-BxruWtW2.mjs} +22 -5
  20. package/dist/{as-table-base-Bx9cxbk4.cjs → as-table-base-D6VP4rrr.cjs} +22 -5
  21. package/dist/as-table-root.d.cts +1 -1
  22. package/dist/as-table-root.d.mts +1 -1
  23. package/dist/{as-table-root.vue-B52eHZRL.d.mts → as-table-root.vue-BjeThuub.d.mts} +4 -4
  24. package/dist/{as-table-root.vue-Cmk2Altf.d.cts → as-table-root.vue-BukHIoYu.d.cts} +4 -4
  25. package/dist/{as-table-status-Cs4G2sK3.mjs → as-table-status-4OaguC5n.mjs} +77 -4
  26. package/dist/{as-table-status-Bunm0FTz.cjs → as-table-status-Diyy3DFB.cjs} +82 -3
  27. package/dist/as-table.cjs +1 -1
  28. package/dist/as-table.d.cts +1 -1
  29. package/dist/as-table.d.mts +1 -1
  30. package/dist/as-table.mjs +1 -1
  31. package/dist/{as-table.vue-CBrxpL4X.d.cts → as-table.vue-CDPbZQRG.d.cts} +12 -4
  32. package/dist/{as-table.vue-WF12BUAO.d.mts → as-table.vue-DaVtNFIe.d.mts} +12 -4
  33. package/dist/{as-window-table-CqPCI_jD.mjs → as-window-table-BUrMxrbr.mjs} +137 -111
  34. package/dist/{as-window-table-C8eJc_FV.cjs → as-window-table-DtnaCKyR.cjs} +137 -111
  35. package/dist/as-window-table.cjs +1 -1
  36. package/dist/as-window-table.d.cts +1 -1
  37. package/dist/as-window-table.d.mts +1 -1
  38. package/dist/as-window-table.mjs +1 -1
  39. package/dist/{as-window-table.vue-Cs5RHe_j.d.cts → as-window-table.vue-DvzoPu-B.d.cts} +12 -4
  40. package/dist/{as-window-table.vue-BJExjL2G.d.mts → as-window-table.vue-Gs52IsYw.d.mts} +12 -4
  41. package/dist/index.cjs +5 -5
  42. package/dist/index.d.cts +4 -4
  43. package/dist/index.d.mts +4 -4
  44. package/dist/index.mjs +5 -5
  45. package/package.json +4 -4
@@ -2,7 +2,7 @@ const require_use_table_state = require("./use-table-state-CmTX31G4.cjs");
2
2
  const require_use_table_selection = require("./use-table-selection-Cmiu1h4S.cjs");
3
3
  const require_use_has_emit_listener = require("./use-has-emit-listener-hhOH8CBI.cjs");
4
4
  const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
5
- const require_as_table_status = require("./as-table-status-Bunm0FTz.cjs");
5
+ const require_as_table_status = require("./as-table-status-Diyy3DFB.cjs");
6
6
  const require_use_table_column_handlers = require("./use-table-column-handlers-ehreEzcx.cjs");
7
7
  let vue = require("vue");
8
8
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -236,6 +236,11 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
236
236
  enterAction: {
237
237
  type: String,
238
238
  required: false
239
+ },
240
+ headless: {
241
+ type: Boolean,
242
+ required: false,
243
+ default: false
239
244
  }
240
245
  },
241
246
  emits: [
@@ -412,125 +417,139 @@ var as_window_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
412
417
  role: "grid",
413
418
  "aria-rowcount": (0, vue.unref)(state).totalCount.value + 1,
414
419
  "aria-multiselectable": __props.select === "multi" ? "true" : void 0
415
- }, [(0, vue.createVNode)(require_as_table_status.as_table_header_default, {
416
- columns: (0, vue.unref)(state).columns.value,
417
- sorters: (0, vue.unref)(state).sorters.value,
418
- filters: (0, vue.unref)(state).filters.value,
419
- "column-menu": __props.columnMenu,
420
- "column-widths": (0, vue.unref)(state).columnWidths.value,
421
- reorderable: __props.reorderable,
422
- resizable: __props.resizable,
423
- "column-min-width": __props.columnMinWidth,
424
- "has-select-column": hasValue.value,
425
- "select-all-state": selectAllState.value,
426
- "with-filler": true,
427
- "enable-auto-fit": true,
428
- "aria-rowindex": 1,
429
- onSort: (0, vue.unref)(onSort),
430
- onHide: (0, vue.unref)(onHide),
431
- onFilter: (0, vue.unref)(onFilter),
432
- onFiltersOff: (0, vue.unref)(onFiltersOff),
433
- onResetWidth: (0, vue.unref)(onResetWidth),
434
- onReorder: (0, vue.unref)(onReorder),
435
- onResize: (0, vue.unref)(state).setColumnWidth,
436
- onSelectAllToggle
437
- }, (0, vue.createSlots)({ _: 2 }, [(0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
438
- return {
439
- name: `header-${col.path}`,
440
- fn: (0, vue.withCtx)((scope) => [(0, vue.renderSlot)(_ctx.$slots, `header-${col.path}`, (0, vue.normalizeProps)((0, vue.guardReactiveProps)(scope)))])
441
- };
442
- })]), 1032, [
443
- "columns",
444
- "sorters",
445
- "filters",
446
- "column-menu",
447
- "column-widths",
448
- "reorderable",
449
- "resizable",
450
- "column-min-width",
451
- "has-select-column",
452
- "select-all-state",
453
- "onSort",
454
- "onHide",
455
- "onFilter",
456
- "onFiltersOff",
457
- "onResetWidth",
458
- "onReorder",
459
- "onResize"
460
- ]), (0, vue.createElementVNode)("tbody", {
461
- ref_key: "poolRef",
462
- ref: poolRef,
463
- class: "as-window-row-pool",
464
- tabindex: "0",
465
- "aria-activedescendant": (0, vue.unref)(state).activeIndex.value >= 0 ? (0, vue.unref)(state).rowId((0, vue.unref)(state).activeIndex.value) : "",
466
- onWheel,
467
- onKeydown,
468
- onTouchstart: onTouchStart,
469
- onTouchmove: (0, vue.withModifiers)(onTouchMove, ["prevent"]),
470
- onTouchend: onTouchEnd
471
- }, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(visibleSlots.value, (slot) => {
472
- return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: `slot-${slot.s}` }, [slot.row !== void 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("tr", {
420
+ }, [
421
+ (0, vue.createVNode)(require_as_table_status.as_table_colgroup_default, {
422
+ columns: (0, vue.unref)(state).columns.value,
423
+ "column-widths": (0, vue.unref)(state).columnWidths.value,
424
+ "has-select": hasValue.value,
425
+ "with-filler": true
426
+ }, null, 8, [
427
+ "columns",
428
+ "column-widths",
429
+ "has-select"
430
+ ]),
431
+ !__props.headless ? ((0, vue.openBlock)(), (0, vue.createBlock)(require_as_table_status.as_table_header_default, {
473
432
  key: 0,
474
- id: (0, vue.unref)(state).rowId((0, vue.unref)(state).topIndex.value + slot.s),
475
- class: (0, vue.normalizeClass)(["as-window-data-row", { "as-table-row-active": (0, vue.unref)(state).activeIndex.value === (0, vue.unref)(state).topIndex.value + slot.s }]),
476
- role: "row",
477
- "aria-rowindex": (0, vue.unref)(state).topIndex.value + slot.s + 2,
478
- "aria-selected": slot.ariaSelected,
479
- style: (0, vue.normalizeStyle)(rowStyle.value),
480
- onClick: ($event) => onRowClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s),
481
- onDblclick: ($event) => onRowDblClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s)
482
- }, [
483
- hasValue.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", _hoisted_5, [(0, vue.createElementVNode)("span", {
484
- class: (0, vue.normalizeClass)(["as-table-checkbox", { "as-table-checkbox-checked": slot.selected }]),
485
- role: "checkbox",
486
- tabindex: "0",
487
- "aria-checked": slot.selected ? "true" : "false"
488
- }, [slot.selected ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_7)) : (0, vue.createCommentVNode)("v-if", true)], 10, _hoisted_6)])) : (0, vue.createCommentVNode)("v-if", true),
489
- (0, vue.unref)(hasAnyCellBindings) ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, (0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
490
- 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) => {
491
- 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)({
492
- key: 0,
493
- role: "gridcell"
494
- }, { ref_for: true }, bindings), [(0, vue.renderSlot)(_ctx.$slots, `cell-${col.path}`, {
433
+ columns: (0, vue.unref)(state).columns.value,
434
+ sorters: (0, vue.unref)(state).sorters.value,
435
+ filters: (0, vue.unref)(state).filters.value,
436
+ "column-menu": __props.columnMenu,
437
+ "column-widths": (0, vue.unref)(state).columnWidths.value,
438
+ reorderable: __props.reorderable,
439
+ resizable: __props.resizable,
440
+ "column-min-width": __props.columnMinWidth,
441
+ "has-select-column": hasValue.value,
442
+ "select-all-state": selectAllState.value,
443
+ "with-filler": true,
444
+ "enable-auto-fit": true,
445
+ "aria-rowindex": 1,
446
+ onSort: (0, vue.unref)(onSort),
447
+ onHide: (0, vue.unref)(onHide),
448
+ onFilter: (0, vue.unref)(onFilter),
449
+ onFiltersOff: (0, vue.unref)(onFiltersOff),
450
+ onResetWidth: (0, vue.unref)(onResetWidth),
451
+ onReorder: (0, vue.unref)(onReorder),
452
+ onResize: (0, vue.unref)(state).setColumnWidth,
453
+ onSelectAllToggle
454
+ }, (0, vue.createSlots)({ _: 2 }, [(0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
455
+ return {
456
+ name: `header-${col.path}`,
457
+ fn: (0, vue.withCtx)((scope) => [(0, vue.renderSlot)(_ctx.$slots, `header-${col.path}`, (0, vue.normalizeProps)((0, vue.guardReactiveProps)(scope)))])
458
+ };
459
+ })]), 1032, [
460
+ "columns",
461
+ "sorters",
462
+ "filters",
463
+ "column-menu",
464
+ "column-widths",
465
+ "reorderable",
466
+ "resizable",
467
+ "column-min-width",
468
+ "has-select-column",
469
+ "select-all-state",
470
+ "onSort",
471
+ "onHide",
472
+ "onFilter",
473
+ "onFiltersOff",
474
+ "onResetWidth",
475
+ "onReorder",
476
+ "onResize"
477
+ ])) : (0, vue.createCommentVNode)("v-if", true),
478
+ (0, vue.createElementVNode)("tbody", {
479
+ ref_key: "poolRef",
480
+ ref: poolRef,
481
+ class: "as-window-row-pool",
482
+ tabindex: "0",
483
+ "aria-activedescendant": (0, vue.unref)(state).activeIndex.value >= 0 ? (0, vue.unref)(state).rowId((0, vue.unref)(state).activeIndex.value) : "",
484
+ onWheel,
485
+ onKeydown,
486
+ onTouchstart: onTouchStart,
487
+ onTouchmove: (0, vue.withModifiers)(onTouchMove, ["prevent"]),
488
+ onTouchend: onTouchEnd
489
+ }, [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(visibleSlots.value, (slot) => {
490
+ return (0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: `slot-${slot.s}` }, [slot.row !== void 0 ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("tr", {
491
+ key: 0,
492
+ id: (0, vue.unref)(state).rowId((0, vue.unref)(state).topIndex.value + slot.s),
493
+ class: (0, vue.normalizeClass)(["as-window-data-row", { "as-table-row-active": (0, vue.unref)(state).activeIndex.value === (0, vue.unref)(state).topIndex.value + slot.s }]),
494
+ role: "row",
495
+ "aria-rowindex": (0, vue.unref)(state).topIndex.value + slot.s + 2,
496
+ "aria-selected": slot.ariaSelected,
497
+ style: (0, vue.normalizeStyle)(rowStyle.value),
498
+ onClick: ($event) => onRowClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s),
499
+ onDblclick: ($event) => onRowDblClick(slot.row, $event, (0, vue.unref)(state).topIndex.value + slot.s)
500
+ }, [
501
+ hasValue.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("td", _hoisted_5, [(0, vue.createElementVNode)("span", {
502
+ class: (0, vue.normalizeClass)(["as-table-checkbox", { "as-table-checkbox-checked": slot.selected }]),
503
+ role: "checkbox",
504
+ tabindex: "0",
505
+ "aria-checked": slot.selected ? "true" : "false"
506
+ }, [slot.selected ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("span", _hoisted_7)) : (0, vue.createCommentVNode)("v-if", true)], 10, _hoisted_6)])) : (0, vue.createCommentVNode)("v-if", true),
507
+ (0, vue.unref)(hasAnyCellBindings) ? ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, (0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
508
+ 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) => {
509
+ 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)({
510
+ key: 0,
511
+ role: "gridcell"
512
+ }, { ref_for: true }, bindings), [(0, vue.renderSlot)(_ctx.$slots, `cell-${col.path}`, {
513
+ row: slot.row,
514
+ value: (0, vue.unref)(require_get_cell_value.getCellValue)(slot.row, col.path),
515
+ column: col
516
+ })], 16)) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)((0, vue.unref)(cellComponents)[col.path]), (0, vue.mergeProps)({
517
+ key: 1,
518
+ row: slot.row,
519
+ column: col,
520
+ role: "gridcell"
521
+ }, { ref_for: true }, bindings), null, 16, ["row", "column"]))], 64);
522
+ }), 128))], 64);
523
+ }), 128)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, (0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
524
+ 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}`, {
495
525
  row: slot.row,
496
526
  value: (0, vue.unref)(require_get_cell_value.getCellValue)(slot.row, col.path),
497
527
  column: col
498
- })], 16)) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)((0, vue.unref)(cellComponents)[col.path]), (0, vue.mergeProps)({
528
+ })])) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)((0, vue.unref)(cellComponents)[col.path]), {
499
529
  key: 1,
500
530
  row: slot.row,
501
531
  column: col,
502
532
  role: "gridcell"
503
- }, { ref_for: true }, bindings), null, 16, ["row", "column"]))], 64);
504
- }), 128))], 64);
505
- }), 128)) : ((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, { key: 2 }, (0, vue.renderList)((0, vue.unref)(state).columns.value, (col) => {
506
- 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}`, {
507
- row: slot.row,
508
- value: (0, vue.unref)(require_get_cell_value.getCellValue)(slot.row, col.path),
509
- column: col
510
- })])) : ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)((0, vue.unref)(cellComponents)[col.path]), {
511
- key: 1,
512
- row: slot.row,
513
- column: col,
533
+ }, null, 8, ["row", "column"]))], 64);
534
+ }), 128)),
535
+ _cache[1] || (_cache[1] = (0, vue.createElementVNode)("td", {
536
+ class: "as-td-filler",
514
537
  role: "gridcell"
515
- }, null, 8, ["row", "column"]))], 64);
516
- }), 128)),
517
- _cache[1] || (_cache[1] = (0, vue.createElementVNode)("td", {
518
- class: "as-td-filler",
519
- role: "gridcell"
520
- }, null, -1))
521
- ], 46, _hoisted_4)) : ((0, vue.openBlock)(), (0, vue.createBlock)(as_window_skeleton_row_default, {
522
- key: 1,
523
- columns: (0, vue.unref)(state).columns.value,
524
- "row-height": __props.rowHeight,
525
- "has-select": hasValue.value,
526
- errored: slot.errored
527
- }, null, 8, [
528
- "columns",
529
- "row-height",
530
- "has-select",
531
- "errored"
532
- ]))], 64);
533
- }), 128))], 40, _hoisted_3)], 8, _hoisted_2),
538
+ }, null, -1))
539
+ ], 46, _hoisted_4)) : ((0, vue.openBlock)(), (0, vue.createBlock)(as_window_skeleton_row_default, {
540
+ key: 1,
541
+ columns: (0, vue.unref)(state).columns.value,
542
+ "row-height": __props.rowHeight,
543
+ "has-select": hasValue.value,
544
+ errored: slot.errored
545
+ }, null, 8, [
546
+ "columns",
547
+ "row-height",
548
+ "has-select",
549
+ "errored"
550
+ ]))], 64);
551
+ }), 128))], 40, _hoisted_3)
552
+ ], 8, _hoisted_2),
534
553
  (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. "),
535
554
  (0, vue.createVNode)(require_as_table_status.as_table_status_default, {
536
555
  "query-error": (0, vue.unref)(state).queryError.value,
@@ -633,6 +652,11 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
633
652
  type: [Boolean, Object],
634
653
  required: false,
635
654
  default: false
655
+ },
656
+ headless: {
657
+ type: Boolean,
658
+ required: false,
659
+ default: false
636
660
  }
637
661
  },
638
662
  emits: [
@@ -682,6 +706,7 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
682
706
  resizable: __props.resizable,
683
707
  "column-min-width": __props.columnMinWidth,
684
708
  select: __props.select,
709
+ headless: __props.headless,
685
710
  "enter-action": __props.enterAction,
686
711
  onRowClick: _cache[0] || (_cache[0] = (row, ev) => emit("row-click", row, ev)),
687
712
  onRowDblclick: _cache[1] || (_cache[1] = (row, ev) => emit("row-dblclick", row, ev)),
@@ -699,6 +724,7 @@ var as_window_table_default = /* @__PURE__ */ (0, vue.defineComponent)({
699
724
  "resizable",
700
725
  "column-min-width",
701
726
  "select",
727
+ "headless",
702
728
  "enter-action"
703
729
  ]), (0, vue.unref)(state).querying.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1, [(0, vue.renderSlot)(_ctx.$slots, "query-loading", {}, () => [_cache[2] || (_cache[2] = (0, vue.createElementVNode)("span", {
704
730
  class: "as-table-query-overlay-icon",
@@ -1,2 +1,2 @@
1
- const require_as_window_table = require("./as-window-table-C8eJc_FV.cjs");
1
+ const require_as_window_table = require("./as-window-table-DtnaCKyR.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-Cs5RHe_j.cjs";
1
+ import { t as _default } from "./as-window-table.vue-DvzoPu-B.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-window-table.vue-BJExjL2G.mjs";
1
+ import { t as _default } from "./as-window-table.vue-Gs52IsYw.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_window_table_default } from "./as-window-table-CqPCI_jD.mjs";
1
+ import { t as as_window_table_default } from "./as-window-table-BUrMxrbr.mjs";
2
2
  export { as_window_table_default as default };
@@ -51,29 +51,37 @@ type __VLS_Props = {
51
51
  * a watcher — the action set live-updates as the prop flips.
52
52
  */
53
53
  rowDelete?: boolean | RowDeleteOpt;
54
+ /**
55
+ * Render without a header row. Omits `<thead>` entirely (not
56
+ * `display:none`); column widths are carried by the `<colgroup>`, so data
57
+ * columns keep their annotated/seeded widths. Header-driven interactions
58
+ * (sort/filter/reorder/resize) are unavailable in headless mode.
59
+ */
60
+ headless?: boolean;
54
61
  };
55
62
  declare var __VLS_13: string, __VLS_14: any, __VLS_16: {};
56
63
  type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_13>]?: (props: typeof __VLS_14) => any } & {
57
64
  'query-loading'?: (props: typeof __VLS_16) => any;
58
65
  };
59
66
  declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
67
+ "main-action": (row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
60
68
  "row-click": (row: Row, event: MouseEvent) => any;
61
69
  "row-dblclick": (row: Row, event: MouseEvent) => any;
62
- "main-action": (row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
63
70
  error: (error: Error, kind: QueryErrorKind) => any;
64
71
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
72
+ "onMain-action"?: ((row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
65
73
  "onRow-click"?: ((row: Row, event: MouseEvent) => any) | undefined;
66
74
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
67
- "onMain-action"?: ((row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
68
75
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
69
76
  }>, {
77
+ rowHeight: number;
78
+ wheelRowsPerTick: number;
70
79
  select: SelectionMode;
71
80
  reorderable: boolean;
72
81
  resizable: boolean;
73
82
  columnMinWidth: number;
74
83
  rowDelete: boolean | RowDeleteOpt;
75
- rowHeight: number;
76
- wheelRowsPerTick: number;
84
+ headless: boolean;
77
85
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
78
86
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
79
87
  declare const _default: typeof __VLS_export;
@@ -51,29 +51,37 @@ type __VLS_Props = {
51
51
  * a watcher — the action set live-updates as the prop flips.
52
52
  */
53
53
  rowDelete?: boolean | RowDeleteOpt;
54
+ /**
55
+ * Render without a header row. Omits `<thead>` entirely (not
56
+ * `display:none`); column widths are carried by the `<colgroup>`, so data
57
+ * columns keep their annotated/seeded widths. Header-driven interactions
58
+ * (sort/filter/reorder/resize) are unavailable in headless mode.
59
+ */
60
+ headless?: boolean;
54
61
  };
55
62
  declare var __VLS_13: string, __VLS_14: any, __VLS_16: {};
56
63
  type __VLS_Slots = {} & { [K in NonNullable<typeof __VLS_13>]?: (props: typeof __VLS_14) => any } & {
57
64
  'query-loading'?: (props: typeof __VLS_16) => any;
58
65
  };
59
66
  declare const __VLS_base: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {} & {
67
+ "main-action": (row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any;
60
68
  "row-click": (row: Row, event: MouseEvent) => any;
61
69
  "row-dblclick": (row: Row, event: MouseEvent) => any;
62
- "main-action": (row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any;
63
70
  error: (error: Error, kind: QueryErrorKind) => any;
64
71
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
72
+ "onMain-action"?: ((row: Row, absIndex: number, event: MouseEvent | KeyboardEvent) => any) | undefined;
65
73
  "onRow-click"?: ((row: Row, event: MouseEvent) => any) | undefined;
66
74
  "onRow-dblclick"?: ((row: Row, event: MouseEvent) => any) | undefined;
67
- "onMain-action"?: ((row: Row, absIndex: number, event: KeyboardEvent | MouseEvent) => any) | undefined;
68
75
  onError?: ((error: Error, kind: QueryErrorKind) => any) | undefined;
69
76
  }>, {
77
+ rowHeight: number;
78
+ wheelRowsPerTick: number;
70
79
  select: SelectionMode;
71
80
  reorderable: boolean;
72
81
  resizable: boolean;
73
82
  columnMinWidth: number;
74
83
  rowDelete: boolean | RowDeleteOpt;
75
- rowHeight: number;
76
- wheelRowsPerTick: number;
84
+ headless: boolean;
77
85
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
78
86
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
79
87
  declare const _default: typeof __VLS_export;
package/dist/index.cjs CHANGED
@@ -16,16 +16,16 @@ const require_as_column_menu = require("./as-column-menu-fZVbJ9lU.cjs");
16
16
  const require_as_config_dialog = require("./as-config-dialog-6QNcUtFs.cjs");
17
17
  const require_as_confirm_dialog = require("./as-confirm-dialog-dnSPMGyB.cjs");
18
18
  const require_as_filter_input = require("./as-filter-input-DJu2k9gO.cjs");
19
- const require_as_filter_dialog = require("./as-filter-dialog-DAvF5KI7.cjs");
19
+ const require_as_filter_dialog = require("./as-filter-dialog-BBMHtQRx.cjs");
20
20
  const require_as_table_header_cell = require("./as-table-header-cell-BeHbNQjP.cjs");
21
- const require_as_window_table = require("./as-window-table-C8eJc_FV.cjs");
22
- const require_as_filter_field = require("./as-filter-field-c0T27ONN.cjs");
23
- const require_as_filters = require("./as-filters-DhJy2qGo.cjs");
21
+ const require_as_window_table = require("./as-window-table-DtnaCKyR.cjs");
22
+ const require_as_filter_field = require("./as-filter-field-BRSNhFa5.cjs");
23
+ const require_as_filters = require("./as-filters-B82jw5f5.cjs");
24
24
  const require_as_preset_dialog = require("./as-preset-dialog-KUcH4G-M.cjs");
25
25
  const require_as_row_actions = require("./as-row-actions-DSsKbKGO.cjs");
26
26
  const require_as_table_cell_value = require("./as-table-cell-value-CcWR5oG4.cjs");
27
27
  const require_as_table_root = require("./as-table-root-DFYbEtFF.cjs");
28
- const require_as_table = require("./as-table-BqIeLNSt.cjs");
28
+ const require_as_table = require("./as-table-MKVsJZxT.cjs");
29
29
  const require_as_table_actions = require("./as-table-actions-_kHRpDah.cjs");
30
30
  const require_as_preset_picker = require("./as-preset-picker-DrhvxmxV.cjs");
31
31
  let _atscript_ui = require("@atscript/ui");
package/dist/index.d.cts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { t as _default$11 } from "./as-filters.vue-fv-tRL2H.cjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-DfXS3pGl.cjs";
3
3
  import { _ as TableNavBridge, c as NavKeyOptions, d as ReactiveTableState, f as RowDeleteOpt, g as TableActionsState, h as TVueTableActionInfo, m as TAsTableControls, n as ColumnMenuConfig, o as InvokeOpts, p as TAsCellTypeComponents, r as ConfigTab, s as MainActionRequest, t as ActionResult, u as QueryErrorKind } from "./types-BPFBxUS_.cjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-33oeDXOg.cjs";
5
- import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$19, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-Cmk2Altf.cjs";
6
- import { t as _default$15 } from "./as-table.vue-CBrxpL4X.cjs";
7
- import { t as _default$20 } from "./as-window-table.vue-Cs5RHe_j.cjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-CCCICVBr.cjs";
5
+ import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$19, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-BukHIoYu.cjs";
6
+ import { t as _default$15 } from "./as-table.vue-CDPbZQRG.cjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-DvzoPu-B.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";
package/dist/index.d.mts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { t as _default$11 } from "./as-filters.vue-DmECMd1v.mjs";
2
2
  import { t as _default$13 } from "./as-preset-picker.vue-BPjsiaVt.mjs";
3
3
  import { _ as TableNavBridge, c as NavKeyOptions, d as ReactiveTableState, f as RowDeleteOpt, g as TableActionsState, h as TVueTableActionInfo, m as TAsTableControls, n as ColumnMenuConfig, o as InvokeOpts, p as TAsCellTypeComponents, r as ConfigTab, s as MainActionRequest, t as ActionResult, u as QueryErrorKind } from "./types-BWeFiZKk.mjs";
4
- import { t as _default$16 } from "./as-table-actions.vue-DMf6-R5o.mjs";
5
- import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$19, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-B52eHZRL.mjs";
6
- import { t as _default$15 } from "./as-table.vue-WF12BUAO.mjs";
7
- import { t as _default$20 } from "./as-window-table.vue-BJExjL2G.mjs";
4
+ import { t as _default$16 } from "./as-table-actions.vue-l3DnLVxA.mjs";
5
+ import { $ as createTableState, A as createDefaultControls, B as useTableSearch, C as formatCellValue, D as provideCellLocale, E as CellLocale, F as AS_PRESETS_APP, G as useTable, H as useTableNavBridge, I as injectPresetsApp, J as CreateStaticTableStateOptions, K as SelectionPersistence, L as UseTableUrlQueryOptions, M as UseAppPrefsOptions, N as UseAppPrefsReturn, O as useCellLocale, P as useAppPrefs, Q as createStaticTableState, R as useTableUrlQuery, S as extractIdentifier, T as getColumnWidth, U as UseTableOptions, V as useTableFilter, W as clearTableCache, X as TableContext, Y as CreateTableStateOptions, Z as TableStateInternals, _ as getDefaultClientFactory, a as PRESET_ASPECTS, at as usePresets, b as resolveSystemPresets, c as PresetData, ct as UseLocalDraftReturn, d as STANDARD_PRESET_ID, et as useTableContext, f as SYSTEM_PRESET_PREFIX, g as UserConfData, h as UrlQuerySync, i as ClientFactory, it as UsePresetsReturn, j as useTableComponent, k as createDefaultCellTypes, l as PresetSnapshot, lt as useLocalDraft, m as SystemPresetInput, n as AppConfData, nt as ActivePresetView, o as PresetAspect, ot as StorageLike, p as SystemPreset, q as useTableSelection, r as AsPresetEntryRow, rt as UsePresetsOptions, s as PresetCapabilities, st as UseLocalDraftOptions, t as _default$19, tt as useTableContextOptional, u as PresetSnapshotWire, v as isSystemPresetId, w as getCellValue, x as setDefaultClientFactory, y as resetDefaultClientFactory, z as useTableActions } from "./as-table-root.vue-BjeThuub.mjs";
6
+ import { t as _default$15 } from "./as-table.vue-DaVtNFIe.mjs";
7
+ import { t as _default$20 } from "./as-window-table.vue-Gs52IsYw.mjs";
8
8
  import { t as _default } from "./as-cell-array.vue-D4vS7C_D.mjs";
9
9
  import { t as _default$1 } from "./as-cell-date.vue-Chs7WTZ9.mjs";
10
10
  import { t as _default$2 } from "./as-cell-json.vue-C0_LDvQw.mjs";
package/dist/index.mjs CHANGED
@@ -15,16 +15,16 @@ import { t as as_column_menu_default } from "./as-column-menu-kTIQfLTi.mjs";
15
15
  import { t as as_config_dialog_default } from "./as-config-dialog-mz5oML3g.mjs";
16
16
  import { t as as_confirm_dialog_default } from "./as-confirm-dialog-Dj-nIpgR.mjs";
17
17
  import { t as as_filter_input_default } from "./as-filter-input-BM23TNeh.mjs";
18
- import { t as as_filter_dialog_default } from "./as-filter-dialog-QjVypqE9.mjs";
18
+ import { t as as_filter_dialog_default } from "./as-filter-dialog-BFy5tg8o.mjs";
19
19
  import { t as as_table_header_cell_default } from "./as-table-header-cell-xKGgCjbF.mjs";
20
- import { t as as_window_table_default } from "./as-window-table-CqPCI_jD.mjs";
21
- import { t as as_filter_field_default } from "./as-filter-field-BR32vGGD.mjs";
22
- import { t as as_filters_default } from "./as-filters-5Qyru0V1.mjs";
20
+ import { t as as_window_table_default } from "./as-window-table-BUrMxrbr.mjs";
21
+ import { t as as_filter_field_default } from "./as-filter-field-DiSwUOJG.mjs";
22
+ import { t as as_filters_default } from "./as-filters-N95wOVF4.mjs";
23
23
  import { t as as_preset_dialog_default } from "./as-preset-dialog-DZ106BdC.mjs";
24
24
  import { t as as_row_actions_default } from "./as-row-actions-CrqYfsva.mjs";
25
25
  import { t as as_table_cell_value_default } from "./as-table-cell-value-Byrb_Zyh.mjs";
26
26
  import { t as as_table_root_default } from "./as-table-root-CqjewHJz.mjs";
27
- import { t as as_table_default } from "./as-table-B7RnEB9N.mjs";
27
+ import { t as as_table_default } from "./as-table-Bo2dAWTD.mjs";
28
28
  import { t as as_table_actions_default } from "./as-table-actions-CJfrl39w.mjs";
29
29
  import { t as as_preset_picker_default } from "./as-preset-picker-DUEObd_i.mjs";
30
30
  import { getDefaultClientFactory, resetDefaultClientFactory, setDefaultClientFactory } from "@atscript/ui";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atscript/vue-table",
3
- "version": "0.1.106",
3
+ "version": "0.1.107",
4
4
  "description": "Type-driven table components for Atscript with Vue 3",
5
5
  "keywords": [
6
6
  "atscript",
@@ -162,9 +162,9 @@
162
162
  "access": "public"
163
163
  },
164
164
  "dependencies": {
165
- "@atscript/ui": "^0.1.106",
166
- "@atscript/vue-form": "^0.1.106",
167
- "@atscript/ui-table": "^0.1.106"
165
+ "@atscript/ui": "^0.1.107",
166
+ "@atscript/vue-form": "^0.1.107",
167
+ "@atscript/ui-table": "^0.1.107"
168
168
  },
169
169
  "devDependencies": {
170
170
  "@atscript/db-client": "^0.1.110",