@atscript/vue-table 0.1.145 → 0.1.147

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 (167) hide show
  1. package/dist/as-action-form-dialog.cjs +3 -2
  2. package/dist/as-action-form-dialog.mjs +3 -2
  3. package/dist/{as-action-menu-content-DoZnQP0I.mjs → as-action-menu-content-35yQWbLF.mjs} +1 -1
  4. package/dist/{as-action-menu-content-FQ2miGid.cjs → as-action-menu-content-BJ0tn6jq.cjs} +1 -1
  5. package/dist/as-cell-array.d.cts +1 -1
  6. package/dist/as-cell-array.d.mts +1 -1
  7. package/dist/as-cell-date.d.cts +1 -1
  8. package/dist/as-cell-date.d.mts +1 -1
  9. package/dist/as-cell-json.d.cts +1 -1
  10. package/dist/as-cell-json.d.mts +1 -1
  11. package/dist/as-cell-number.d.cts +1 -1
  12. package/dist/as-cell-number.d.mts +1 -1
  13. package/dist/as-cell-union.d.cts +1 -1
  14. package/dist/as-cell-union.d.mts +1 -1
  15. package/dist/as-column-menu.d.cts +1 -1
  16. package/dist/as-column-menu.d.mts +1 -1
  17. package/dist/{as-column-menu.vue-ByTECTbX.d.cts → as-column-menu.vue-B6iuKmIj.d.cts} +1 -1
  18. package/dist/{as-column-menu.vue-TChT482i.d.mts → as-column-menu.vue-wxb2f92k.d.mts} +1 -1
  19. package/dist/{as-config-dialog-CpW1Qemf.cjs → as-config-dialog-BJkBzaku.cjs} +2 -2
  20. package/dist/{as-config-dialog-ObHtungs.mjs → as-config-dialog-D503Ek_m.mjs} +2 -2
  21. package/dist/as-config-dialog.cjs +1 -1
  22. package/dist/as-config-dialog.d.cts +1 -1
  23. package/dist/as-config-dialog.d.mts +1 -1
  24. package/dist/as-config-dialog.mjs +1 -1
  25. package/dist/{as-confirm-dialog-D3Vu1Rb_.cjs → as-confirm-dialog-C5xPbkox.cjs} +1 -1
  26. package/dist/{as-confirm-dialog-zg7jmS3u.mjs → as-confirm-dialog-CJfDnaiU.mjs} +1 -1
  27. package/dist/as-confirm-dialog.cjs +1 -1
  28. package/dist/as-confirm-dialog.d.cts +1 -1
  29. package/dist/as-confirm-dialog.d.mts +1 -1
  30. package/dist/as-confirm-dialog.mjs +1 -1
  31. package/dist/{as-filter-dialog-C4EyRr2_.cjs → as-filter-dialog-Co0WfWOe.cjs} +7 -7
  32. package/dist/{as-filter-dialog-CWy0mjZl.mjs → as-filter-dialog-CxjO-Ge5.mjs} +7 -7
  33. package/dist/as-filter-dialog.cjs +1 -1
  34. package/dist/as-filter-dialog.d.cts +1 -1
  35. package/dist/as-filter-dialog.d.mts +1 -1
  36. package/dist/as-filter-dialog.mjs +1 -1
  37. package/dist/{as-filter-field-CW1_GHZT.mjs → as-filter-field-ByPlGyWz.mjs} +3 -3
  38. package/dist/{as-filter-field-BQ9UlV0y.cjs → as-filter-field-FTrxFkTw.cjs} +3 -3
  39. package/dist/as-filter-field.cjs +1 -1
  40. package/dist/as-filter-field.d.cts +1 -1
  41. package/dist/as-filter-field.d.mts +1 -1
  42. package/dist/as-filter-field.mjs +1 -1
  43. package/dist/as-filter-input.d.cts +1 -1
  44. package/dist/as-filter-input.d.mts +1 -1
  45. package/dist/{as-filters-BLFSS_VP.mjs → as-filters-CJZJiOXb.mjs} +4 -4
  46. package/dist/{as-filters-DUfFkXAo.cjs → as-filters-W3iMELuL.cjs} +4 -4
  47. package/dist/as-filters.cjs +1 -1
  48. package/dist/as-filters.mjs +1 -1
  49. package/dist/{as-preset-dialog-CI2Hw8vi.mjs → as-preset-dialog-CLOVEpWZ.mjs} +1 -1
  50. package/dist/{as-preset-dialog-BlXqTZiT.cjs → as-preset-dialog-Dvvx0jmU.cjs} +1 -1
  51. package/dist/as-preset-dialog.cjs +1 -1
  52. package/dist/as-preset-dialog.d.cts +1 -1
  53. package/dist/as-preset-dialog.d.mts +1 -1
  54. package/dist/as-preset-dialog.mjs +1 -1
  55. package/dist/{as-preset-picker-CbZDGPaf.mjs → as-preset-picker-CwFObhME.mjs} +1 -1
  56. package/dist/{as-preset-picker-CVgyZBG7.cjs → as-preset-picker-DFLhbm59.cjs} +1 -1
  57. package/dist/as-preset-picker.cjs +1 -1
  58. package/dist/as-preset-picker.mjs +1 -1
  59. package/dist/{as-residual-filter-CUTouIn5.mjs → as-residual-filter-BRsEs8oe.mjs} +1 -1
  60. package/dist/{as-residual-filter-C8n7kdGW.cjs → as-residual-filter-sZlsFPDS.cjs} +1 -1
  61. package/dist/as-residual-filter.cjs +1 -1
  62. package/dist/as-residual-filter.d.cts +1 -1
  63. package/dist/as-residual-filter.d.mts +1 -1
  64. package/dist/as-residual-filter.mjs +1 -1
  65. package/dist/{as-row-actions-DfUL9sYB.cjs → as-row-actions-DFv2cSrP.cjs} +7 -5
  66. package/dist/{as-row-actions-ed1P6GEJ.mjs → as-row-actions-DyjIXePd.mjs} +7 -5
  67. package/dist/as-row-actions.cjs +1 -1
  68. package/dist/as-row-actions.d.cts +1 -1
  69. package/dist/as-row-actions.d.mts +1 -1
  70. package/dist/as-row-actions.mjs +1 -1
  71. package/dist/{as-row-actions.vue-Ba3VO9W-.d.cts → as-row-actions.vue-BHrZBXVU.d.cts} +1 -1
  72. package/dist/{as-row-actions.vue-CKOnE0eb.d.mts → as-row-actions.vue-D4MylwCW.d.mts} +1 -1
  73. package/dist/{as-select-cell-DwMfqBMV.cjs → as-select-cell-CoQJjhnq.cjs} +10 -5
  74. package/dist/{as-select-cell-BMptU5sQ.mjs → as-select-cell-Dl8fohIj.mjs} +10 -5
  75. package/dist/as-selection-banner-BI5gKHqW.cjs +206 -0
  76. package/dist/as-selection-banner-DBtLjulh.mjs +189 -0
  77. package/dist/as-table-B1FowaPF.cjs +215 -0
  78. package/dist/as-table-Cpvfv9zA.mjs +210 -0
  79. package/dist/{as-table-actions-DplblFlK.cjs → as-table-actions-B0xaicfv.cjs} +32 -6
  80. package/dist/{as-table-actions-DQco4pGu.mjs → as-table-actions-BlbAps1h.mjs} +32 -6
  81. package/dist/as-table-actions.cjs +1 -1
  82. package/dist/as-table-actions.d.cts +1 -1
  83. package/dist/as-table-actions.d.mts +1 -1
  84. package/dist/as-table-actions.mjs +1 -1
  85. package/dist/{as-table-actions.vue-BL4xy2-d.d.mts → as-table-actions.vue-7ml3JiOO.d.mts} +9 -2
  86. package/dist/{as-table-actions.vue-DgMw3xJn.d.cts → as-table-actions.vue-BKRqHprR.d.cts} +9 -2
  87. package/dist/{as-table-base-lfyjPgsO.mjs → as-table-base-EzKaChOp.mjs} +3 -3
  88. package/dist/{as-table-base-CNAn-vpa.cjs → as-table-base-LZ26YlWp.cjs} +3 -3
  89. package/dist/as-table-cell-value.d.cts +1 -1
  90. package/dist/as-table-cell-value.d.mts +1 -1
  91. package/dist/{as-table-header-cell-Csv1KQDa.mjs → as-table-header-cell-DrVzYaof.mjs} +1 -1
  92. package/dist/{as-table-header-cell-BwaOPYwI.cjs → as-table-header-cell-gHhCdxJX.cjs} +1 -1
  93. package/dist/as-table-header-cell.cjs +1 -1
  94. package/dist/as-table-header-cell.d.cts +1 -1
  95. package/dist/as-table-header-cell.d.mts +1 -1
  96. package/dist/as-table-header-cell.mjs +1 -1
  97. package/dist/{as-table-header-cell.vue-DU5h-2C_.d.cts → as-table-header-cell.vue-BCk4NPYT.d.cts} +1 -1
  98. package/dist/{as-table-header-cell.vue-KkANwimG.d.mts → as-table-header-cell.vue-BZU8s9CT.d.mts} +1 -1
  99. package/dist/{as-table-root-BreMYhnv.mjs → as-table-root-BYHXuNPI.mjs} +33 -6
  100. package/dist/{as-table-root-DXewWV9h.cjs → as-table-root-K6fWKHtF.cjs} +33 -6
  101. package/dist/as-table-root.cjs +1 -1
  102. package/dist/as-table-root.d.cts +1 -1
  103. package/dist/as-table-root.d.mts +1 -1
  104. package/dist/as-table-root.mjs +1 -1
  105. package/dist/{as-table-root.vue-DTos5nn3.d.mts → as-table-root.vue-Bm2DxAqU.d.mts} +317 -7
  106. package/dist/{as-table-root.vue-CXaFNCMi.d.cts → as-table-root.vue-CF03c4vu.d.cts} +318 -8
  107. package/dist/as-table.cjs +1 -1
  108. package/dist/as-table.d.cts +1 -1
  109. package/dist/as-table.d.mts +1 -1
  110. package/dist/as-table.mjs +1 -1
  111. package/dist/{as-window-table-JOTOi_Nm.mjs → as-window-table-CygDqZMU.mjs} +99 -53
  112. package/dist/{as-window-table-Bj1dXOS6.cjs → as-window-table-_flc8o64.cjs} +101 -55
  113. package/dist/as-window-table.cjs +1 -1
  114. package/dist/as-window-table.d.cts +1 -1
  115. package/dist/as-window-table.d.mts +1 -1
  116. package/dist/as-window-table.mjs +1 -1
  117. package/dist/index.cjs +23 -19
  118. package/dist/index.d.cts +19 -21
  119. package/dist/index.d.mts +19 -21
  120. package/dist/index.mjs +20 -20
  121. package/dist/{types-D1NxhrpW.d.cts → intent-scope-BXPEN5kJ.d.cts} +202 -35
  122. package/dist/{types-BEZ4_erB.d.mts → intent-scope-Ck7RZ0dK.d.mts} +202 -35
  123. package/dist/{use-table-W0KmaJ6L.cjs → use-table-CydIJZbx.cjs} +5 -3
  124. package/dist/{use-table-BTsNGBVx.mjs → use-table-DP6Y0kbl.mjs} +5 -3
  125. package/dist/{use-table-component-DRMXTk9M.mjs → use-table-component-DNGUvhf7.mjs} +1 -1
  126. package/dist/{use-table-component-BvAC82_c.cjs → use-table-component-aqfGzECx.cjs} +1 -1
  127. package/dist/{use-table-nav-bridge-CPI1tql6.cjs → use-table-nav-bridge-B7A30yja.cjs} +1 -1
  128. package/dist/{use-table-nav-bridge-Bw0NFDSf.mjs → use-table-nav-bridge-BhOPIT2R.mjs} +1 -1
  129. package/dist/{use-table-selection-ULbKT2xW.mjs → use-table-selection-CdaOPo1d.mjs} +8 -3
  130. package/dist/{use-table-selection-DtCV3rhu.cjs → use-table-selection-Cs7-gjHg.cjs} +8 -3
  131. package/dist/{use-table-state-DuY-Mf8e.mjs → use-table-state-1OZfdhQi.mjs} +414 -41
  132. package/dist/{use-table-state-Ddr2UZzB.cjs → use-table-state-sDnqOi3b.cjs} +447 -38
  133. package/package.json +11 -10
  134. package/dist/as-table-BjKzKB0a.cjs +0 -207
  135. package/dist/as-table-DGWfzV4w.mjs +0 -202
  136. package/dist/as-table.vue-Cn1CXJ1Y.d.mts +0 -115
  137. package/dist/as-table.vue-EfLWpNy3.d.cts +0 -115
  138. package/dist/as-window-table.vue-DCd8FtpC.d.cts +0 -132
  139. package/dist/as-window-table.vue-DN5hed6Y.d.mts +0 -132
  140. package/dist/use-table-column-handlers-BitvioH4.mjs +0 -85
  141. package/dist/use-table-column-handlers-DksXpbON.cjs +0 -96
  142. /package/dist/{as-cell-array.vue-pFs5GcCR.d.cts → as-cell-array.vue-C4BTM8YW.d.cts} +0 -0
  143. /package/dist/{as-cell-array.vue-ow34clSF.d.mts → as-cell-array.vue-Dj3nZop3.d.mts} +0 -0
  144. /package/dist/{as-cell-date.vue-B4JCr1qP.d.mts → as-cell-date.vue-BPuyH7q3.d.mts} +0 -0
  145. /package/dist/{as-cell-date.vue-BBSps2B2.d.cts → as-cell-date.vue-BcMgxBfm.d.cts} +0 -0
  146. /package/dist/{as-cell-json.vue-B-T3TuFj.d.mts → as-cell-json.vue-D8J7YwVV.d.mts} +0 -0
  147. /package/dist/{as-cell-json.vue-C6wg4ARZ.d.cts → as-cell-json.vue-pwE9uJdv.d.cts} +0 -0
  148. /package/dist/{as-cell-number.vue-CJ2K5zeM.d.cts → as-cell-number.vue-pbgVCIWT.d.cts} +0 -0
  149. /package/dist/{as-cell-number.vue-CNH2fbCB.d.mts → as-cell-number.vue-sUoZvuat.d.mts} +0 -0
  150. /package/dist/{as-cell-union.vue-CslPM_c2.d.cts → as-cell-union.vue-BK_M7opL.d.cts} +0 -0
  151. /package/dist/{as-cell-union.vue-CZwN81H4.d.mts → as-cell-union.vue-DZBejMxR.d.mts} +0 -0
  152. /package/dist/{as-config-dialog.vue-BKo2GpzN.d.mts → as-config-dialog.vue-C-Jw_rb7.d.cts} +0 -0
  153. /package/dist/{as-config-dialog.vue-DvvJi3xx.d.cts → as-config-dialog.vue-D2AVR1a5.d.mts} +0 -0
  154. /package/dist/{as-confirm-dialog.vue-BN_yzu3h.d.mts → as-confirm-dialog.vue-BxAaCuYf.d.mts} +0 -0
  155. /package/dist/{as-confirm-dialog.vue-CXxLpzbu.d.cts → as-confirm-dialog.vue-D8hJ5qPY.d.cts} +0 -0
  156. /package/dist/{as-filter-dialog.vue-BV2J8PgZ.d.cts → as-filter-dialog.vue-CyD6qtuX.d.cts} +0 -0
  157. /package/dist/{as-filter-dialog.vue-Bl8OIKOf.d.mts → as-filter-dialog.vue-WYXGtymZ.d.mts} +0 -0
  158. /package/dist/{as-filter-field.vue-DD0IZXS1.d.mts → as-filter-field.vue-DTpuDkHh.d.mts} +0 -0
  159. /package/dist/{as-filter-field.vue-ByQ8xIGq.d.cts → as-filter-field.vue-ajAFhraz.d.cts} +0 -0
  160. /package/dist/{as-filter-input.vue-CS4nOk_Q.d.cts → as-filter-input.vue-CksJOtqw.d.cts} +0 -0
  161. /package/dist/{as-filter-input.vue-CFZ33B--.d.mts → as-filter-input.vue-DMwr0ArL.d.mts} +0 -0
  162. /package/dist/{as-preset-dialog.vue-ChM7H7B4.d.mts → as-preset-dialog.vue-BEM-L4BY.d.cts} +0 -0
  163. /package/dist/{as-preset-dialog.vue-DP9fy00Y.d.cts → as-preset-dialog.vue-BrnvBWxJ.d.mts} +0 -0
  164. /package/dist/{as-residual-filter.vue-Dfw1l2wS.d.cts → as-residual-filter.vue-CGXCipEn.d.cts} +0 -0
  165. /package/dist/{as-residual-filter.vue-N89YqlCz.d.mts → as-residual-filter.vue-Cev_8Wy7.d.mts} +0 -0
  166. /package/dist/{as-table-cell-value.vue-C0VR9GRK.d.cts → as-table-cell-value.vue-UkAuJanv.d.cts} +0 -0
  167. /package/dist/{as-table-cell-value.vue-DphckGq-.d.mts → as-table-cell-value.vue-kfNgVhzn.d.mts} +0 -0
@@ -0,0 +1,210 @@
1
+ import { a as useTableContext, i as useRegisterMainActionListener } from "./use-table-state-1OZfdhQi.mjs";
2
+ import { t as useSelectModeReset } from "./use-table-selection-CdaOPo1d.mjs";
3
+ import { t as useHasEmitListener } from "./use-has-emit-listener-DrBbsLHQ.mjs";
4
+ import { n as useTableColumnHandlers, r as useRowActionsColumn, t as as_selection_banner_default } from "./as-selection-banner-DBtLjulh.mjs";
5
+ import { t as as_table_base_default } from "./as-table-base-EzKaChOp.mjs";
6
+ import { computed, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderList, renderSlot, unref, watch, withCtx } from "vue";
7
+ //#region src/components/as-table.vue?vue&type=script&setup=true&lang.ts
8
+ const _hoisted_1 = { class: "as-table-outer-wrap" };
9
+ const _hoisted_2 = {
10
+ key: 0,
11
+ class: "as-table-query-overlay"
12
+ };
13
+ //#endregion
14
+ //#region src/components/as-table.vue
15
+ var as_table_default = /* @__PURE__ */ defineComponent({
16
+ __name: "as-table",
17
+ props: {
18
+ rows: {
19
+ type: Array,
20
+ required: false
21
+ },
22
+ columns: {
23
+ type: Array,
24
+ required: false
25
+ },
26
+ stickyHeader: {
27
+ type: Boolean,
28
+ required: false,
29
+ default: true
30
+ },
31
+ virtualRowHeight: {
32
+ type: Number,
33
+ required: false
34
+ },
35
+ virtualOverscan: {
36
+ type: Number,
37
+ required: false,
38
+ default: 5
39
+ },
40
+ columnMenu: {
41
+ type: Object,
42
+ required: false
43
+ },
44
+ reorderable: {
45
+ type: Boolean,
46
+ required: false,
47
+ default: true
48
+ },
49
+ resizable: {
50
+ type: Boolean,
51
+ required: false,
52
+ default: true
53
+ },
54
+ columnMinWidth: {
55
+ type: Number,
56
+ required: false,
57
+ default: 48
58
+ },
59
+ select: {
60
+ type: String,
61
+ required: false,
62
+ default: "none"
63
+ },
64
+ selectOn: {
65
+ type: String,
66
+ required: false,
67
+ default: "row"
68
+ },
69
+ rowDelete: {
70
+ type: [Boolean, Object],
71
+ required: false,
72
+ default: false
73
+ },
74
+ rowActionsColumn: {
75
+ type: [String, Boolean],
76
+ required: false,
77
+ default: false
78
+ },
79
+ headless: {
80
+ type: Boolean,
81
+ required: false,
82
+ default: false
83
+ },
84
+ rowSelectable: {
85
+ type: Function,
86
+ required: false
87
+ },
88
+ rowClass: {
89
+ type: Function,
90
+ required: false
91
+ },
92
+ rowAttrs: {
93
+ type: Function,
94
+ required: false
95
+ }
96
+ },
97
+ emits: [
98
+ "row-click",
99
+ "row-dblclick",
100
+ "main-action"
101
+ ],
102
+ setup(__props, { emit: __emit }) {
103
+ const props = __props;
104
+ const emit = __emit;
105
+ const { state } = useTableContext();
106
+ watch(() => props.rowDelete, (val) => {
107
+ state.rowDelete.value = val;
108
+ }, { immediate: true });
109
+ watch(() => props.rowSelectable, (val) => {
110
+ state.rowSelectable.value = val;
111
+ }, { immediate: true });
112
+ useSelectModeReset(state, () => props.select);
113
+ const effectiveRows = computed(() => state.applyLocalSort(props.rows ?? state.results.value));
114
+ const effectiveColumns = useRowActionsColumn(state, {
115
+ placement: () => props.rowActionsColumn,
116
+ select: () => props.select,
117
+ columns: () => props.columns ?? state.columns.value
118
+ });
119
+ useRegisterMainActionListener(state, (req) => emit("main-action", req.row, req.absIndex, req.event), useHasEmitListener("onMainAction"));
120
+ const { onSort, onHide, onFilter, onFiltersOff, onResetWidth, onReorder, onClearFilters } = useTableColumnHandlers(state);
121
+ return (_ctx, _cache) => {
122
+ return openBlock(), createElementBlock("div", _hoisted_1, [
123
+ createVNode(as_selection_banner_default, { scope: "page" }, createSlots({ _: 2 }, [_ctx.$slots["selection-banner"] ? {
124
+ name: "default",
125
+ fn: withCtx((bannerProps) => [renderSlot(_ctx.$slots, "selection-banner", normalizeProps(guardReactiveProps(bannerProps)))]),
126
+ key: "0"
127
+ } : void 0]), 1024),
128
+ createVNode(as_table_base_default, {
129
+ "render-mode": "standalone",
130
+ columns: unref(effectiveColumns),
131
+ rows: effectiveRows.value,
132
+ sorters: unref(state).sorters.value,
133
+ "selected-rows": unref(state).selectedRows.value,
134
+ select: props.select,
135
+ "select-on": props.selectOn,
136
+ "row-value-fn": unref(state).rowValueFn,
137
+ querying: unref(state).querying.value,
138
+ "query-error": unref(state).queryError.value,
139
+ "on-retry": unref(state).query,
140
+ "sticky-header": __props.stickyHeader,
141
+ headless: __props.headless,
142
+ "virtual-row-height": __props.virtualRowHeight,
143
+ "virtual-overscan": __props.virtualOverscan,
144
+ filters: unref(state).filters.value,
145
+ "search-term": unref(state).searchTerm.value,
146
+ "on-clear-filters": unref(onClearFilters),
147
+ "column-menu": __props.columnMenu,
148
+ reorderable: __props.reorderable,
149
+ resizable: __props.resizable,
150
+ "column-min-width": __props.columnMinWidth,
151
+ "column-widths": unref(state).columnWidths.value,
152
+ "row-class": __props.rowClass,
153
+ "row-attrs": __props.rowAttrs,
154
+ onSort: unref(onSort),
155
+ onHide: unref(onHide),
156
+ onFilter: unref(onFilter),
157
+ onFiltersOff: unref(onFiltersOff),
158
+ onReorder: unref(onReorder),
159
+ onResize: unref(state).setColumnWidth,
160
+ onResetWidth: unref(onResetWidth),
161
+ onRowClick: _cache[0] || (_cache[0] = (row, ev) => emit("row-click", row, ev)),
162
+ onRowDblclick: _cache[1] || (_cache[1] = (row, ev) => emit("row-dblclick", row, ev))
163
+ }, createSlots({ _: 2 }, [renderList(_ctx.$slots, (_, name) => {
164
+ return {
165
+ name,
166
+ fn: withCtx((slotProps) => [renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps ?? {})))])
167
+ };
168
+ })]), 1032, [
169
+ "columns",
170
+ "rows",
171
+ "sorters",
172
+ "selected-rows",
173
+ "select",
174
+ "select-on",
175
+ "row-value-fn",
176
+ "querying",
177
+ "query-error",
178
+ "on-retry",
179
+ "sticky-header",
180
+ "headless",
181
+ "virtual-row-height",
182
+ "virtual-overscan",
183
+ "filters",
184
+ "search-term",
185
+ "on-clear-filters",
186
+ "column-menu",
187
+ "reorderable",
188
+ "resizable",
189
+ "column-min-width",
190
+ "column-widths",
191
+ "row-class",
192
+ "row-attrs",
193
+ "onSort",
194
+ "onHide",
195
+ "onFilter",
196
+ "onFiltersOff",
197
+ "onReorder",
198
+ "onResize",
199
+ "onResetWidth"
200
+ ]),
201
+ unref(state).querying.value ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "query-loading", {}, () => [_cache[2] || (_cache[2] = createElementVNode("span", {
202
+ class: "as-table-query-overlay-icon",
203
+ "aria-hidden": "true"
204
+ }, null, -1))])])) : createCommentVNode("v-if", true)
205
+ ]);
206
+ };
207
+ }
208
+ });
209
+ //#endregion
210
+ export { as_table_default as t };
@@ -1,5 +1,5 @@
1
- const require_use_table_state = require("./use-table-state-Ddr2UZzB.cjs");
2
- const require_as_action_menu_content = require("./as-action-menu-content-FQ2miGid.cjs");
1
+ const require_use_table_state = require("./use-table-state-sDnqOi3b.cjs");
2
+ const require_as_action_menu_content = require("./as-action-menu-content-BJ0tn6jq.cjs");
3
3
  let vue = require("vue");
4
4
  let reka_ui = require("reka-ui");
5
5
  //#region src/components/as-table-actions.vue?vue&type=script&setup=true&lang.ts
@@ -37,13 +37,15 @@ var as_table_actions_default = /* @__PURE__ */ (0, vue.defineComponent)({
37
37
  trailingRowActions: []
38
38
  };
39
39
  }
40
- function resolveLevel(explicit, selectedCount) {
40
+ function resolveLevel(explicit, selectedCount, querySelection) {
41
41
  if (explicit !== "auto") return explicit;
42
42
  if (selectedCount === 0) return "table";
43
+ if (querySelection) return "rows";
43
44
  if (selectedCount === 1) return "row";
44
45
  return "rows";
45
46
  }
46
47
  const preferredId = (0, vue.computed)(() => state.tableDef.value?.preferredId ?? []);
48
+ const identifierFields = (0, vue.computed)(() => require_use_table_state.identifierFieldsOf(state.tableDef.value));
47
49
  const resolved = (0, vue.computed)(() => {
48
50
  const r = resolveBuckets();
49
51
  const defaultHref = r.defaultAction ? require_use_table_state.rowActionHref(state, r.defaultAction, r.ids[0], r.row) : void 0;
@@ -56,8 +58,28 @@ var as_table_actions_default = /* @__PURE__ */ (0, vue.defineComponent)({
56
58
  function resolveBuckets() {
57
59
  const selectedCount = state.selectedCount.value;
58
60
  const explicit = props.level;
59
- const effectiveLevel = resolveLevel(explicit, selectedCount);
60
- const pid = preferredId.value;
61
+ const query = state.querySelection.value;
62
+ const effectiveLevel = resolveLevel(explicit, selectedCount, query !== null);
63
+ const pid = identifierFields.value;
64
+ if (query && effectiveLevel === "rows") {
65
+ const gated = require_use_table_state.applyGate({
66
+ default: state.actions.default.rows,
67
+ others: state.actions.others.rows,
68
+ rows: []
69
+ }, require_use_table_state.queryTargetGate(selectedCount));
70
+ return collapseSingle({
71
+ defaultAction: gated.default,
72
+ otherActions: gated.others,
73
+ trailingRowActions: [],
74
+ level: "rows",
75
+ ids: [],
76
+ target: {
77
+ ...query.query,
78
+ exclude: require_use_table_state.collectIdentifiers(state, query.excluded, pid)
79
+ },
80
+ count: selectedCount
81
+ });
82
+ }
61
83
  if (effectiveLevel === "table") return collapseSingle({
62
84
  defaultAction: state.actions.default.table,
63
85
  otherActions: state.actions.others.table,
@@ -96,7 +118,9 @@ var as_table_actions_default = /* @__PURE__ */ (0, vue.defineComponent)({
96
118
  return {
97
119
  identifiers: resolved.value.ids,
98
120
  preferredId: preferredId.value,
99
- row: resolved.value.row
121
+ row: resolved.value.row,
122
+ target: resolved.value.target,
123
+ count: resolved.value.count
100
124
  };
101
125
  }
102
126
  async function invokeWith(action, event) {
@@ -151,6 +175,8 @@ var as_table_actions_default = /* @__PURE__ */ (0, vue.defineComponent)({
151
175
  trailingRowActions: resolved.value.trailingRowActions,
152
176
  level: resolved.value.level,
153
177
  ids: resolved.value.ids,
178
+ target: resolved.value.target,
179
+ count: resolved.value.count ?? resolved.value.ids.length,
154
180
  invoke: invokeWith
155
181
  }, () => [resolved.value.defaultAction && resolved.value.defaultTrigger ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(resolved.value.defaultTrigger.tag), (0, vue.mergeProps)({ key: 0 }, resolved.value.defaultTrigger.attrs, {
156
182
  class: ["as-table-actions-btn", (0, vue.unref)(require_use_table_state.intentClass)("as-table-actions", resolved.value.defaultAction)],
@@ -1,5 +1,5 @@
1
- import { C as collectIdentifiers, E as intentClass, M as triggerAction, N as triggerBindings, S as ariaLabelFor, a as useTableContext, b as applyRowsGate, v as resolveRowActions, w as createNavigateGestures, y as rowActionHref } from "./use-table-state-DuY-Mf8e.mjs";
2
- import { t as as_action_menu_content_default } from "./as-action-menu-content-DoZnQP0I.mjs";
1
+ import { A as intentClass, C as applyRowsGate, D as createNavigateGestures, E as collectIdentifiers, I as queryTargetGate, R as triggerAction, S as applyGate, T as ariaLabelFor, a as useTableContext, k as identifierFieldsOf, v as resolveRowActions, y as rowActionHref, z as triggerBindings } from "./use-table-state-1OZfdhQi.mjs";
2
+ import { t as as_action_menu_content_default } from "./as-action-menu-content-35yQWbLF.mjs";
3
3
  import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, ref, renderSlot, resolveDynamicComponent, toDisplayString, unref, watch, withCtx } from "vue";
4
4
  import { DropdownMenuPortal, DropdownMenuRoot, DropdownMenuTrigger } from "reka-ui";
5
5
  //#region src/components/as-table-actions.vue?vue&type=script&setup=true&lang.ts
@@ -37,13 +37,15 @@ var as_table_actions_default = /* @__PURE__ */ defineComponent({
37
37
  trailingRowActions: []
38
38
  };
39
39
  }
40
- function resolveLevel(explicit, selectedCount) {
40
+ function resolveLevel(explicit, selectedCount, querySelection) {
41
41
  if (explicit !== "auto") return explicit;
42
42
  if (selectedCount === 0) return "table";
43
+ if (querySelection) return "rows";
43
44
  if (selectedCount === 1) return "row";
44
45
  return "rows";
45
46
  }
46
47
  const preferredId = computed(() => state.tableDef.value?.preferredId ?? []);
48
+ const identifierFields = computed(() => identifierFieldsOf(state.tableDef.value));
47
49
  const resolved = computed(() => {
48
50
  const r = resolveBuckets();
49
51
  const defaultHref = r.defaultAction ? rowActionHref(state, r.defaultAction, r.ids[0], r.row) : void 0;
@@ -56,8 +58,28 @@ var as_table_actions_default = /* @__PURE__ */ defineComponent({
56
58
  function resolveBuckets() {
57
59
  const selectedCount = state.selectedCount.value;
58
60
  const explicit = props.level;
59
- const effectiveLevel = resolveLevel(explicit, selectedCount);
60
- const pid = preferredId.value;
61
+ const query = state.querySelection.value;
62
+ const effectiveLevel = resolveLevel(explicit, selectedCount, query !== null);
63
+ const pid = identifierFields.value;
64
+ if (query && effectiveLevel === "rows") {
65
+ const gated = applyGate({
66
+ default: state.actions.default.rows,
67
+ others: state.actions.others.rows,
68
+ rows: []
69
+ }, queryTargetGate(selectedCount));
70
+ return collapseSingle({
71
+ defaultAction: gated.default,
72
+ otherActions: gated.others,
73
+ trailingRowActions: [],
74
+ level: "rows",
75
+ ids: [],
76
+ target: {
77
+ ...query.query,
78
+ exclude: collectIdentifiers(state, query.excluded, pid)
79
+ },
80
+ count: selectedCount
81
+ });
82
+ }
61
83
  if (effectiveLevel === "table") return collapseSingle({
62
84
  defaultAction: state.actions.default.table,
63
85
  otherActions: state.actions.others.table,
@@ -96,7 +118,9 @@ var as_table_actions_default = /* @__PURE__ */ defineComponent({
96
118
  return {
97
119
  identifiers: resolved.value.ids,
98
120
  preferredId: preferredId.value,
99
- row: resolved.value.row
121
+ row: resolved.value.row,
122
+ target: resolved.value.target,
123
+ count: resolved.value.count
100
124
  };
101
125
  }
102
126
  async function invokeWith(action, event) {
@@ -151,6 +175,8 @@ var as_table_actions_default = /* @__PURE__ */ defineComponent({
151
175
  trailingRowActions: resolved.value.trailingRowActions,
152
176
  level: resolved.value.level,
153
177
  ids: resolved.value.ids,
178
+ target: resolved.value.target,
179
+ count: resolved.value.count ?? resolved.value.ids.length,
154
180
  invoke: invokeWith
155
181
  }, () => [resolved.value.defaultAction && resolved.value.defaultTrigger ? (openBlock(), createBlock(resolveDynamicComponent(resolved.value.defaultTrigger.tag), mergeProps({ key: 0 }, resolved.value.defaultTrigger.attrs, {
156
182
  class: ["as-table-actions-btn", unref(intentClass)("as-table-actions", resolved.value.defaultAction)],
@@ -1,2 +1,2 @@
1
- const require_as_table_actions = require("./as-table-actions-DplblFlK.cjs");
1
+ const require_as_table_actions = require("./as-table-actions-B0xaicfv.cjs");
2
2
  module.exports = require_as_table_actions.as_table_actions_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-actions.vue-DgMw3xJn.cjs";
1
+ import { t as _default } from "./as-table-actions.vue-BKRqHprR.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-actions.vue-BL4xy2-d.mjs";
1
+ import { t as _default } from "./as-table-actions.vue-7ml3JiOO.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_table_actions_default } from "./as-table-actions-DQco4pGu.mjs";
1
+ import { t as as_table_actions_default } from "./as-table-actions-BlbAps1h.mjs";
2
2
  export { as_table_actions_default as default };
@@ -1,4 +1,4 @@
1
- import { O as TVueTableActionInfo } from "./types-BEZ4_erB.mjs";
1
+ import { L as TVueTableActionInfo, t as PromptTarget } from "./intent-scope-Ck7RZ0dK.mjs";
2
2
  import * as vue from "vue";
3
3
 
4
4
  //#region src/components/as-table-actions.vue.d.ts
@@ -10,6 +10,11 @@ type __VLS_Props = {
10
10
  * separator inside the `…` menu so bulk operations on the single
11
11
  * selection are still reachable); ≥2 → rows. Force a specific level
12
12
  * with `'table'` / `'rows'` / `'row'`.
13
+ *
14
+ * A query selection ("every row matching the query", since 0.1.147)
15
+ * resolves to `'rows'` in `'auto'`: an action is enabled iff it takes a
16
+ * query target of that many rows, others are shown disabled with the
17
+ * reason; running one counts the matching rows and confirms first.
13
18
  */
14
19
  level?: "auto" | "table" | "rows" | "row";
15
20
  };
@@ -18,8 +23,10 @@ declare var __VLS_1: {
18
23
  defaultAction: TVueTableActionInfo | undefined;
19
24
  otherActions: TVueTableActionInfo[];
20
25
  trailingRowActions: TVueTableActionInfo[];
21
- level: "table" | "rows" | "row";
26
+ level: "row" | "table" | "rows";
22
27
  ids: Record<string, unknown>[];
28
+ target: PromptTarget | undefined;
29
+ count: number;
23
30
  invoke: typeof invokeWith;
24
31
  }, __VLS_12: {
25
32
  action: TVueTableActionInfo;
@@ -1,4 +1,4 @@
1
- import { O as TVueTableActionInfo } from "./types-D1NxhrpW.cjs";
1
+ import { L as TVueTableActionInfo, t as PromptTarget } from "./intent-scope-BXPEN5kJ.cjs";
2
2
  import * as vue from "vue";
3
3
 
4
4
  //#region src/components/as-table-actions.vue.d.ts
@@ -10,6 +10,11 @@ type __VLS_Props = {
10
10
  * separator inside the `…` menu so bulk operations on the single
11
11
  * selection are still reachable); ≥2 → rows. Force a specific level
12
12
  * with `'table'` / `'rows'` / `'row'`.
13
+ *
14
+ * A query selection ("every row matching the query", since 0.1.147)
15
+ * resolves to `'rows'` in `'auto'`: an action is enabled iff it takes a
16
+ * query target of that many rows, others are shown disabled with the
17
+ * reason; running one counts the matching rows and confirms first.
13
18
  */
14
19
  level?: "auto" | "table" | "rows" | "row";
15
20
  };
@@ -18,8 +23,10 @@ declare var __VLS_1: {
18
23
  defaultAction: TVueTableActionInfo | undefined;
19
24
  otherActions: TVueTableActionInfo[];
20
25
  trailingRowActions: TVueTableActionInfo[];
21
- level: "table" | "rows" | "row";
26
+ level: "row" | "table" | "rows";
22
27
  ids: Record<string, unknown>[];
28
+ target: PromptTarget | undefined;
29
+ count: number;
23
30
  invoke: typeof invokeWith;
24
31
  }, __VLS_12: {
25
32
  action: TVueTableActionInfo;
@@ -1,6 +1,6 @@
1
- import { _ as toSelectAllState, o as useTableContextOptional } from "./use-table-state-DuY-Mf8e.mjs";
1
+ import { _ as toSelectAllState, o as useTableContextOptional } from "./use-table-state-1OZfdhQi.mjs";
2
2
  import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
3
- import { i as as_table_colgroup_default, n as as_table_status_default, o as useCellComponents, r as as_table_header_default, s as useCellResolver, t as as_select_cell_default } from "./as-select-cell-BMptU5sQ.mjs";
3
+ import { i as as_table_colgroup_default, n as as_table_status_default, o as useCellComponents, r as as_table_header_default, s as useCellResolver, t as as_select_cell_default } from "./as-select-cell-Dl8fohIj.mjs";
4
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onMounted, openBlock, ref, renderList, renderSlot, resolveDynamicComponent, unref, useSlots, watch, withCtx } from "vue";
5
5
  import { DEFAULT_ROW_HEIGHT_PX, filledFilterCount } from "@atscript/ui-table";
6
6
  import { useParentElement, useResizeObserver } from "@vueuse/core";
@@ -372,7 +372,7 @@ var as_table_base_default = /* @__PURE__ */ defineComponent({
372
372
  const selectAllState = computed(() => {
373
373
  if (!showSelectAllCheckbox.value) return void 0;
374
374
  const { selectable, selected } = rowHooks.value;
375
- return toSelectAllState(selected, selectable);
375
+ return toSelectAllState(selected, selectable, !!ctx?.state.querySelection.value);
376
376
  });
377
377
  const emit = __emit;
378
378
  const slots = useSlots();
@@ -1,6 +1,6 @@
1
- const require_use_table_state = require("./use-table-state-Ddr2UZzB.cjs");
1
+ const require_use_table_state = require("./use-table-state-sDnqOi3b.cjs");
2
2
  const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
3
- const require_as_select_cell = require("./as-select-cell-DwMfqBMV.cjs");
3
+ const require_as_select_cell = require("./as-select-cell-CoQJjhnq.cjs");
4
4
  let vue = require("vue");
5
5
  let _atscript_ui_table = require("@atscript/ui-table");
6
6
  let _vueuse_core = require("@vueuse/core");
@@ -372,7 +372,7 @@ var as_table_base_default = /* @__PURE__ */ (0, vue.defineComponent)({
372
372
  const selectAllState = (0, vue.computed)(() => {
373
373
  if (!showSelectAllCheckbox.value) return void 0;
374
374
  const { selectable, selected } = rowHooks.value;
375
- return require_use_table_state.toSelectAllState(selected, selectable);
375
+ return require_use_table_state.toSelectAllState(selected, selectable, !!ctx?.state.querySelection.value);
376
376
  });
377
377
  const emit = __emit;
378
378
  const slots = (0, vue.useSlots)();
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-cell-value.vue-C0VR9GRK.cjs";
1
+ import { t as _default } from "./as-table-cell-value.vue-UkAuJanv.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-cell-value.vue-DphckGq-.mjs";
1
+ import { t as _default } from "./as-table-cell-value.vue-kfNgVhzn.mjs";
2
2
  export { _default as default };
@@ -1,4 +1,4 @@
1
- import { t as useTableComponent } from "./use-table-component-DRMXTk9M.mjs";
1
+ import { t as useTableComponent } from "./use-table-component-DNGUvhf7.mjs";
2
2
  import { t as as_column_menu_default } from "./as-column-menu-CBtUfYEE.mjs";
3
3
  import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, normalizeClass, openBlock, resolveDynamicComponent, toDisplayString, unref, withCtx, withModifiers } from "vue";
4
4
  import { isFilled } from "@atscript/ui-table";
@@ -1,4 +1,4 @@
1
- const require_use_table_component = require("./use-table-component-BvAC82_c.cjs");
1
+ const require_use_table_component = require("./use-table-component-aqfGzECx.cjs");
2
2
  const require_as_column_menu = require("./as-column-menu-ChB7hzmr.cjs");
3
3
  let vue = require("vue");
4
4
  let _atscript_ui_table = require("@atscript/ui-table");
@@ -1,2 +1,2 @@
1
- const require_as_table_header_cell = require("./as-table-header-cell-BwaOPYwI.cjs");
1
+ const require_as_table_header_cell = require("./as-table-header-cell-gHhCdxJX.cjs");
2
2
  module.exports = require_as_table_header_cell.as_table_header_cell_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-header-cell.vue-DU5h-2C_.cjs";
1
+ import { t as _default } from "./as-table-header-cell.vue-BCk4NPYT.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-table-header-cell.vue-KkANwimG.mjs";
1
+ import { t as _default } from "./as-table-header-cell.vue-BZU8s9CT.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_table_header_cell_default } from "./as-table-header-cell-Csv1KQDa.mjs";
1
+ import { t as as_table_header_cell_default } from "./as-table-header-cell-DrVzYaof.mjs";
2
2
  export { as_table_header_cell_default as default };
@@ -1,4 +1,4 @@
1
- import { r as ColumnMenuConfig } from "./types-D1NxhrpW.cjs";
1
+ import { u as ColumnMenuConfig } from "./intent-scope-BXPEN5kJ.cjs";
2
2
  import * as vue from "vue";
3
3
  import { ColumnDef } from "@atscript/ui";
4
4
  import { ColumnWidthEntry, FilterCondition } from "@atscript/ui-table";
@@ -1,4 +1,4 @@
1
- import { r as ColumnMenuConfig } from "./types-BEZ4_erB.mjs";
1
+ import { u as ColumnMenuConfig } from "./intent-scope-Ck7RZ0dK.mjs";
2
2
  import { ColumnDef } from "@atscript/ui";
3
3
  import * as vue from "vue";
4
4
  import { ColumnWidthEntry, FilterCondition } from "@atscript/ui-table";
@@ -1,8 +1,8 @@
1
- import { c as warnUnsupportedFilter, i as useRegisterMainActionListener, s as warnFieldsDropped, t as createStaticTableState } from "./use-table-state-DuY-Mf8e.mjs";
2
- import { n as finalizeTableState, r as useTable } from "./use-table-BTsNGBVx.mjs";
3
- import { t as useTableNavBridge } from "./use-table-nav-bridge-Bw0NFDSf.mjs";
1
+ import { c as warnUnsupportedFilter, i as useRegisterMainActionListener, s as warnFieldsDropped, t as createStaticTableState } from "./use-table-state-1OZfdhQi.mjs";
2
+ import { n as finalizeTableState, r as useTable } from "./use-table-DP6Y0kbl.mjs";
3
+ import { t as useTableNavBridge } from "./use-table-nav-bridge-BhOPIT2R.mjs";
4
4
  import { t as useHasEmitListener } from "./use-has-emit-listener-DrBbsLHQ.mjs";
5
- import { t as as_confirm_dialog_default } from "./as-confirm-dialog-zg7jmS3u.mjs";
5
+ import { t as as_confirm_dialog_default } from "./as-confirm-dialog-CJfDnaiU.mjs";
6
6
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, defineAsyncComponent, defineComponent, mergeModels, openBlock, ref, renderSlot, resolveDynamicComponent, unref, useModel, watch } from "vue";
7
7
  import { DEV } from "@atscript/ui-table";
8
8
  //#endregion
@@ -101,6 +101,10 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
101
101
  required: false,
102
102
  default: "trim"
103
103
  },
104
+ selectAllMatching: {
105
+ type: Boolean,
106
+ required: false
107
+ },
104
108
  blockSize: {
105
109
  type: Number,
106
110
  required: false
@@ -157,6 +161,11 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
157
161
  default: () => []
158
162
  },
159
163
  "selectedRowsModifiers": {},
164
+ "querySelection": {
165
+ type: [Object, null],
166
+ default: null
167
+ },
168
+ "querySelectionModifiers": {},
160
169
  "urlQuery": {
161
170
  type: null,
162
171
  default: () => void 0
@@ -167,7 +176,8 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
167
176
  "main-action",
168
177
  "action",
169
178
  "unsupported-filter",
170
- "fields-dropped"
179
+ "fields-dropped",
180
+ "selection-reset"
171
181
  ], [
172
182
  "update:filterFields",
173
183
  "update:columnNames",
@@ -175,6 +185,7 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
175
185
  "update:sorters",
176
186
  "update:ignoreSortersWhenSearched",
177
187
  "update:selectedRows",
188
+ "update:querySelection",
178
189
  "update:urlQuery"
179
190
  ]),
180
191
  setup(__props, { expose: __expose, emit: __emit }) {
@@ -198,6 +209,11 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
198
209
  const ignoreSortersWhenSearched = useModel(__props, "ignoreSortersWhenSearched");
199
210
  const selectedRows = useModel(__props, "selectedRows");
200
211
  /**
212
+ * The "every row matching the query" selection (`state.querySelection`):
213
+ * `null` while the selection is `selectedRows`. Since 0.1.147.
214
+ */
215
+ const querySelection = useModel(__props, "querySelection");
216
+ /**
201
217
  * Bidirectional URL bridge bound via `v-model:url-query`. When unbound the
202
218
  * feature is off (zero overhead); when bound the first query is gated on
203
219
  * tableDef settle + URL hydration so the table fetches once.
@@ -235,7 +251,8 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
235
251
  queryOnMount: props.queryOnMount,
236
252
  selection: {
237
253
  rowValueFn: props.rowValueFn,
238
- selectedRows
254
+ selectedRows,
255
+ querySelection
239
256
  },
240
257
  model: {
241
258
  filterFields,
@@ -290,6 +307,8 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
290
307
  sorters,
291
308
  ignoreSortersWhenSearched,
292
309
  selectedRows,
310
+ querySelection,
311
+ onSelectionReset: (event) => emit("selection-reset", event),
293
312
  urlQueryReady: urlQueryActive ? urlQueryReady : void 0,
294
313
  onUrlQueryChange: urlQueryActive ? (s) => urlQuery.value = s : void 0,
295
314
  urlQuerySync: props.urlQuerySync,
@@ -301,6 +320,10 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
301
320
  watch(() => props.rowActions, (value) => {
302
321
  state.rowActions.value = value;
303
322
  }, { immediate: true });
323
+ watch(() => props.selectAllMatching === true, (value) => {
324
+ state.allowSelectAllMatching.value = value;
325
+ if (!value && state.querySelection.value) state.clearSelection();
326
+ }, { immediate: true });
304
327
  if (urlQueryActive && !localMode) {
305
328
  let lastSeenQuery;
306
329
  watch([
@@ -367,6 +390,10 @@ var as_table_root_default = /* @__PURE__ */ defineComponent({
367
390
  ignoreSortersWhenSearched: unref(state).ignoreSortersWhenSearched.value,
368
391
  selectedRows: unref(state).selectedRows.value,
369
392
  selectedCount: unref(state).selectedCount.value,
393
+ selection: unref(state).selection.value,
394
+ canSelectAllMatching: unref(state).canSelectAllMatching.value,
395
+ selectAllMatching: unref(state).selectAllMatching,
396
+ clearSelection: unref(state).clearSelection,
370
397
  navBridge: unref(navBridge),
371
398
  query: unref(state).query,
372
399
  queryNext: unref(state).queryNext,