@atscript/vue-table 0.1.132 → 0.1.134

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 (163) hide show
  1. package/dist/as-action-form-dialog.cjs +42 -30
  2. package/dist/as-action-form-dialog.mjs +42 -30
  3. package/dist/{as-action-menu-content-C5qx9MPE.cjs → as-action-menu-content-C_D_Fepo.cjs} +1 -1
  4. package/dist/{as-action-menu-content-4UfcabUe.mjs → as-action-menu-content-rim8hAO9.mjs} +1 -1
  5. package/dist/{as-cell-array-2qmJ1lT2.mjs → as-cell-array-BWHkJX3I.mjs} +2 -2
  6. package/dist/{as-cell-array-iPeUnk2G.cjs → as-cell-array-D-8Pqlgo.cjs} +2 -2
  7. package/dist/as-cell-array.cjs +1 -1
  8. package/dist/as-cell-array.mjs +1 -1
  9. package/dist/{as-cell-date-DyixWKuS.cjs → as-cell-date-DviMJEqs.cjs} +2 -2
  10. package/dist/{as-cell-date-BwFgi6O0.mjs → as-cell-date-mGlnDeLP.mjs} +2 -2
  11. package/dist/as-cell-date.cjs +1 -1
  12. package/dist/as-cell-date.mjs +1 -1
  13. package/dist/{as-cell-json--95Xq6yq.mjs → as-cell-json-2I081xnO.mjs} +2 -2
  14. package/dist/{as-cell-json-Bvv2P7YV.cjs → as-cell-json-CaVB6e7V.cjs} +2 -2
  15. package/dist/as-cell-json.cjs +1 -1
  16. package/dist/as-cell-json.mjs +1 -1
  17. package/dist/{as-cell-number-DuPMOesI.cjs → as-cell-number-BnYbxOiG.cjs} +2 -2
  18. package/dist/{as-cell-number-DKRaS9pM.mjs → as-cell-number-CP2AZI9g.mjs} +2 -2
  19. package/dist/as-cell-number.cjs +1 -1
  20. package/dist/as-cell-number.mjs +1 -1
  21. package/dist/{as-cell-union-DJNsEKTi.cjs → as-cell-union-BjMP91PS.cjs} +3 -3
  22. package/dist/{as-cell-union-C9FukGqF.mjs → as-cell-union-NHpDCXty.mjs} +3 -3
  23. package/dist/as-cell-union.cjs +1 -1
  24. package/dist/as-cell-union.mjs +1 -1
  25. package/dist/as-column-menu.cjs +1 -1
  26. package/dist/as-column-menu.d.cts +1 -1
  27. package/dist/as-column-menu.d.mts +1 -1
  28. package/dist/as-column-menu.mjs +1 -1
  29. package/dist/{as-column-menu.vue-u_DNy3f-.d.cts → as-column-menu.vue-De7SRhj6.d.cts} +1 -1
  30. package/dist/{as-column-menu.vue-DL5N9mKR.d.mts → as-column-menu.vue-Dg0H1dOd.d.mts} +1 -1
  31. package/dist/{as-config-dialog-BehfqIGd.mjs → as-config-dialog-BUBHiVlf.mjs} +56 -35
  32. package/dist/{as-config-dialog-BOYWPYYH.cjs → as-config-dialog-DvBptYMS.cjs} +55 -34
  33. package/dist/as-config-dialog.cjs +1 -1
  34. package/dist/as-config-dialog.mjs +1 -1
  35. package/dist/{as-confirm-dialog-UwhDHysk.cjs → as-confirm-dialog-ByMfIG0A.cjs} +12 -9
  36. package/dist/{as-confirm-dialog-bpN4A-KN.mjs → as-confirm-dialog-G4ZoL_Xo.mjs} +12 -9
  37. package/dist/as-confirm-dialog.cjs +1 -1
  38. package/dist/as-confirm-dialog.mjs +1 -1
  39. package/dist/{as-filter-dialog-D1qzq-8b.mjs → as-filter-dialog-BJWH8cvc.mjs} +34 -26
  40. package/dist/{as-filter-dialog-Dh2Ylthb.cjs → as-filter-dialog-C2oyT0yt.cjs} +33 -25
  41. package/dist/as-filter-dialog.cjs +1 -1
  42. package/dist/as-filter-dialog.mjs +1 -1
  43. package/dist/{as-filter-field-DirBmnbb.mjs → as-filter-field-B2skq4K0.mjs} +4 -4
  44. package/dist/{as-filter-field-DRsDJdpx.cjs → as-filter-field-DxGfasQj.cjs} +4 -4
  45. package/dist/as-filter-field.cjs +1 -1
  46. package/dist/as-filter-field.mjs +1 -1
  47. package/dist/as-filter-input.cjs +1 -1
  48. package/dist/as-filter-input.mjs +1 -1
  49. package/dist/as-filters-Bhte22La.cjs +130 -0
  50. package/dist/as-filters-DogNVlqr.mjs +125 -0
  51. package/dist/as-filters.cjs +1 -1
  52. package/dist/as-filters.d.cts +1 -1
  53. package/dist/as-filters.d.mts +1 -1
  54. package/dist/as-filters.mjs +1 -1
  55. package/dist/as-filters.vue-BG_ysCkC.d.mts +65 -0
  56. package/dist/as-filters.vue-DcxDnWAU.d.cts +65 -0
  57. package/dist/{as-preset-dialog-CDqCAR7N.mjs → as-preset-dialog-BwHV6Y77.mjs} +71 -21
  58. package/dist/{as-preset-dialog-DpM06jqR.cjs → as-preset-dialog-D2a6nxEX.cjs} +75 -25
  59. package/dist/as-preset-dialog.cjs +1 -1
  60. package/dist/as-preset-dialog.mjs +1 -1
  61. package/dist/{as-preset-picker-CISaxEZ0.mjs → as-preset-picker-B0JnyAPA.mjs} +39 -15
  62. package/dist/{as-preset-picker-jUS_YDX8.cjs → as-preset-picker-DbkmapBx.cjs} +45 -21
  63. package/dist/as-preset-picker.cjs +1 -1
  64. package/dist/as-preset-picker.mjs +1 -1
  65. package/dist/{as-row-actions-xqJeAdQl.mjs → as-row-actions-BkIsJVBm.mjs} +24 -11
  66. package/dist/{as-row-actions-Bm6Bzyno.cjs → as-row-actions-CRg8LHGk.cjs} +24 -11
  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-Bvcc2tUN.d.cts → as-row-actions.vue-VpJsBAJ4.d.mts} +8 -0
  72. package/dist/{as-row-actions.vue-DUSDuoR2.d.mts → as-row-actions.vue-dn_DKcMm.d.cts} +8 -0
  73. package/dist/{as-table-CDSG2yED.mjs → as-table-BEvsX87E.mjs} +26 -8
  74. package/dist/{as-table-actions-DMxeaczm.mjs → as-table-actions-B5upF1bQ.mjs} +69 -18
  75. package/dist/{as-table-actions-gV4lqqxc.cjs → as-table-actions-B6sKd4sl.cjs} +68 -17
  76. package/dist/as-table-actions.cjs +1 -1
  77. package/dist/as-table-actions.d.cts +1 -1
  78. package/dist/as-table-actions.d.mts +1 -1
  79. package/dist/as-table-actions.mjs +1 -1
  80. package/dist/{as-table-actions.vue-B-cgiCXP.d.cts → as-table-actions.vue-CoxhpIlJ.d.mts} +2 -2
  81. package/dist/{as-table-actions.vue-ClMa0OD1.d.mts → as-table-actions.vue-Kic8m28V.d.cts} +2 -2
  82. package/dist/{as-table-base-BaTE3VSN.mjs → as-table-base-BxKBdIdS.mjs} +142 -47
  83. package/dist/{as-table-base-RG2TEIgV.cjs → as-table-base-DLuhKz69.cjs} +142 -47
  84. package/dist/{as-table-cell-value-D1JkTQt0.cjs → as-table-cell-value-BAi5yadc.cjs} +2 -2
  85. package/dist/{as-table-cell-value-CPcFxSOj.mjs → as-table-cell-value-BVcfhhCb.mjs} +2 -2
  86. package/dist/as-table-cell-value.cjs +1 -1
  87. package/dist/as-table-cell-value.mjs +1 -1
  88. package/dist/{as-table-header-cell-CIqlO6Lw.cjs → as-table-header-cell-Bv6q5iKA.cjs} +2 -2
  89. package/dist/{as-table-header-cell-Bdhl5Lox.mjs → as-table-header-cell-Xd3cvnII.mjs} +2 -2
  90. package/dist/as-table-header-cell.cjs +1 -1
  91. package/dist/as-table-header-cell.d.cts +1 -1
  92. package/dist/as-table-header-cell.d.mts +1 -1
  93. package/dist/as-table-header-cell.mjs +1 -1
  94. package/dist/{as-table-header-cell.vue-BCszzxtU.d.mts → as-table-header-cell.vue-AS6u4e6v.d.cts} +2 -2
  95. package/dist/{as-table-header-cell.vue-BzTzfGRo.d.cts → as-table-header-cell.vue-zKOmlzhT.d.mts} +2 -2
  96. package/dist/{as-table-root-BLReUbRH.mjs → as-table-root-C1A6JkwL.mjs} +112 -10
  97. package/dist/{as-table-root-DLJ_3Jf4.cjs → as-table-root-DlYjnZax.cjs} +112 -10
  98. package/dist/as-table-root.cjs +1 -1
  99. package/dist/as-table-root.d.cts +1 -1
  100. package/dist/as-table-root.d.mts +1 -1
  101. package/dist/as-table-root.mjs +1 -1
  102. package/dist/{as-table-root.vue-QMT93qPk.d.mts → as-table-root.vue-CWk9YgpG.d.mts} +257 -41
  103. package/dist/{as-table-root.vue-D0T3n-Vm.d.cts → as-table-root.vue-D94eypcL.d.cts} +258 -42
  104. package/dist/{as-table-status-Du4WLF4k.cjs → as-table-status-B2HPerJT.cjs} +54 -38
  105. package/dist/{as-table-status-DGTZlpyq.mjs → as-table-status-QzlBdSiR.mjs} +54 -38
  106. package/dist/{as-table-BWUPzjRn.cjs → as-table-vJbZyZVx.cjs} +26 -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-table.vue-Ds7MEp37.d.cts → as-table.vue-BB1vaNL6.d.cts} +28 -4
  112. package/dist/{as-table.vue-Ce5606ZO.d.mts → as-table.vue-BUDFTCpo.d.mts} +28 -4
  113. package/dist/{as-window-table-DWujiUQy.mjs → as-window-table-BH0tDDnr.mjs} +107 -24
  114. package/dist/{as-window-table-jD_y9yet.cjs → as-window-table-Bl_q72WL.cjs} +107 -24
  115. package/dist/as-window-table.cjs +1 -1
  116. package/dist/as-window-table.d.cts +1 -1
  117. package/dist/as-window-table.d.mts +1 -1
  118. package/dist/as-window-table.mjs +1 -1
  119. package/dist/{as-window-table.vue-DfZF1Mux.d.mts → as-window-table.vue-Be2IA0Eb.d.cts} +27 -4
  120. package/dist/{as-window-table.vue-Bhf9BK8E.d.cts → as-window-table.vue-CLqFM2ff.d.mts} +27 -4
  121. package/dist/error-message-CfKpn_5w.cjs +18 -0
  122. package/dist/error-message-gNEXnnbb.mjs +13 -0
  123. package/dist/index.cjs +237 -41
  124. package/dist/index.d.cts +10 -10
  125. package/dist/index.d.mts +10 -10
  126. package/dist/index.mjs +230 -43
  127. package/dist/{types-ByU4O0Yf.d.mts → types--ex8BJIO.d.cts} +263 -5
  128. package/dist/{types-CTMxE_zA.d.cts → types-CBGaTR2Z.d.mts} +263 -5
  129. package/dist/{use-table-CyFcVtUN.mjs → use-table-BFhbfWgY.mjs} +48 -23
  130. package/dist/{use-table-component-K6xj1obF.mjs → use-table-component-CRmLHdqi.mjs} +1 -1
  131. package/dist/{use-table-component-DO_kvKSf.cjs → use-table-component-DS5NJPzs.cjs} +1 -1
  132. package/dist/{use-table-nav-bridge-uOQUDooh.cjs → use-table-nav-bridge-DS14D_rG.cjs} +1 -1
  133. package/dist/{use-table-nav-bridge-DeGeaQX-.mjs → use-table-nav-bridge-DzJN5v9a.mjs} +1 -1
  134. package/dist/{use-table-nvBq1dZ4.cjs → use-table-nvuZdgUd.cjs} +51 -20
  135. package/dist/{use-table-state-BxX3SpeW.mjs → use-table-state-mBXx11aH.mjs} +501 -105
  136. package/dist/{use-table-state-Oi2ds4_a.cjs → use-table-state-mhm-YWnu.cjs} +541 -109
  137. package/package.json +9 -9
  138. package/dist/as-filters-DCZTHjf5.cjs +0 -51
  139. package/dist/as-filters-beIud9sF.mjs +0 -46
  140. package/dist/as-filters.vue-DmECMd1v.d.mts +0 -10
  141. package/dist/as-filters.vue-fv-tRL2H.d.cts +0 -10
  142. package/dist/preset-aspect-display-IICxAlVo.mjs +0 -43
  143. package/dist/preset-aspect-display-TWwf6j1B.cjs +0 -72
  144. /package/dist/{as-cell-json-popover-Dkdv5Y9E.mjs → as-cell-json-popover-CH5bAcLE.mjs} +0 -0
  145. /package/dist/{as-cell-json-popover-BM2QLgfk.cjs → as-cell-json-popover-vty5vMjW.cjs} +0 -0
  146. /package/dist/{as-column-menu-kTIQfLTi.mjs → as-column-menu-BMTS3DO2.mjs} +0 -0
  147. /package/dist/{as-column-menu-fZVbJ9lU.cjs → as-column-menu-D_8NxujZ.cjs} +0 -0
  148. /package/dist/{as-filter-input-BM23TNeh.mjs → as-filter-input-C8KmOus8.mjs} +0 -0
  149. /package/dist/{as-filter-input-DJu2k9gO.cjs → as-filter-input-DUqpkTkg.cjs} +0 -0
  150. /package/dist/{format-cell-D1Ziv96Q.mjs → format-cell-Bx7wNc4X.mjs} +0 -0
  151. /package/dist/{format-cell-vCNTh4WZ.cjs → format-cell-DaxV6WIJ.cjs} +0 -0
  152. /package/dist/{get-cell-value-4rHKP-TG.cjs → get-cell-value-CJT4fk4y.cjs} +0 -0
  153. /package/dist/{get-cell-value-C8LLc_Rr.mjs → get-cell-value-Cb3X8nUn.mjs} +0 -0
  154. /package/dist/{use-cell-locale-MQXoONh5.mjs → use-cell-locale-CxQOQsns.mjs} +0 -0
  155. /package/dist/{use-cell-locale-BGBRQB7s.cjs → use-cell-locale-caG2Fzpc.cjs} +0 -0
  156. /package/dist/{use-has-emit-listener-hhOH8CBI.cjs → use-has-emit-listener-BaGFZDyM.cjs} +0 -0
  157. /package/dist/{use-has-emit-listener-BTMDIv2e.mjs → use-has-emit-listener-DrBbsLHQ.mjs} +0 -0
  158. /package/dist/{use-seed-on-open-Dg9I89fU.cjs → use-seed-on-open-9TSm1Vbv.cjs} +0 -0
  159. /package/dist/{use-seed-on-open-DO3A1kIb.mjs → use-seed-on-open-DSh4XFyp.mjs} +0 -0
  160. /package/dist/{use-table-column-handlers-ehreEzcx.cjs → use-table-column-handlers-BMrP0WY2.cjs} +0 -0
  161. /package/dist/{use-table-column-handlers-CpiiIniD.mjs → use-table-column-handlers-Bx3JERqs.mjs} +0 -0
  162. /package/dist/{use-table-selection-Cmiu1h4S.cjs → use-table-selection-DtCV3rhu.cjs} +0 -0
  163. /package/dist/{use-table-selection-C84z4OZy.mjs → use-table-selection-ULbKT2xW.mjs} +0 -0
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-Oi2ds4_a.cjs");
1
+ const require_use_table_state = require("./use-table-state-mhm-YWnu.cjs");
2
2
  let _atscript_ui = require("@atscript/ui");
3
3
  let vue = require("vue");
4
4
  let _atscript_db_client = require("@atscript/db-client");
@@ -17,11 +17,11 @@ const _hoisted_3 = {
17
17
  };
18
18
  const _hoisted_4 = { class: "as-action-form-body" };
19
19
  const _hoisted_5 = {
20
- key: 1,
20
+ key: 0,
21
21
  class: "as-action-form-status"
22
22
  };
23
23
  const _hoisted_6 = {
24
- key: 2,
24
+ key: 1,
25
25
  class: "as-action-form-error"
26
26
  };
27
27
  const _hoisted_7 = {
@@ -42,17 +42,25 @@ var as_action_form_dialog_default = /* @__PURE__ */ (0, vue.defineComponent)({
42
42
  if (!v) state.dismissActionForm();
43
43
  }
44
44
  });
45
+ const display = state.actionFormDisplay;
45
46
  const def = (0, vue.ref)(null);
46
47
  const formData = (0, vue.ref)(null);
47
48
  const loading = (0, vue.ref)(false);
48
49
  const error = (0, vue.ref)(null);
50
+ (0, vue.watch)(display, (next) => {
51
+ if (next !== null) return;
52
+ def.value = null;
53
+ formData.value = null;
54
+ error.value = null;
55
+ loading.value = false;
56
+ });
49
57
  const resolvedTypes = formTypes ?? (0, _atscript_vue_form.createDefaultTypes)();
50
58
  (0, vue.watch)(req, async (next) => {
59
+ if (next === null) return;
51
60
  def.value = null;
52
61
  formData.value = null;
53
62
  error.value = null;
54
63
  loading.value = false;
55
- if (next === null) return;
56
64
  if (!next.action.inputForm) {
57
65
  error.value = "Action does not declare an input form.";
58
66
  return;
@@ -77,7 +85,7 @@ var as_action_form_dialog_default = /* @__PURE__ */ (0, vue.defineComponent)({
77
85
  }, { immediate: true });
78
86
  const formId = `as-action-form-${(0, vue.useId)()}`;
79
87
  const view = (0, vue.computed)(() => {
80
- const r = req.value;
88
+ const r = display.value;
81
89
  if (!r) return null;
82
90
  const d = def.value;
83
91
  const ids = r.identifiers;
@@ -131,10 +139,13 @@ var as_action_form_dialog_default = /* @__PURE__ */ (0, vue.defineComponent)({
131
139
  return (_ctx, _cache) => {
132
140
  return (0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DialogRoot), {
133
141
  open: open.value,
134
- "onUpdate:open": _cache[1] || (_cache[1] = ($event) => open.value = $event)
142
+ "onUpdate:open": _cache[2] || (_cache[2] = ($event) => open.value = $event)
135
143
  }, {
136
144
  default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(reka_ui.DialogPortal), null, {
137
- default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(reka_ui.DialogOverlay), { class: "as-action-form-overlay" }), (0, vue.createVNode)((0, vue.unref)(reka_ui.DialogContent), { class: "as-action-form-content" }, {
145
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(reka_ui.DialogOverlay), { class: "as-action-form-overlay" }), (0, vue.createVNode)((0, vue.unref)(reka_ui.DialogContent), {
146
+ class: "as-action-form-content",
147
+ onAfterLeave: _cache[1] || (_cache[1] = ($event) => (0, vue.unref)(state).releaseActionForm())
148
+ }, {
138
149
  default: (0, vue.withCtx)(() => [view.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 0 }, [
139
150
  (0, vue.createElementVNode)("header", _hoisted_1, [
140
151
  (0, vue.createVNode)((0, vue.unref)(reka_ui.DialogTitle), { class: "as-action-form-title" }, {
@@ -169,35 +180,36 @@ var as_action_form_dialog_default = /* @__PURE__ */ (0, vue.defineComponent)({
169
180
  class: "as-action-form-close",
170
181
  "aria-label": "Close"
171
182
  }, {
172
- default: (0, vue.withCtx)(() => [..._cache[2] || (_cache[2] = [(0, vue.createElementVNode)("span", {
183
+ default: (0, vue.withCtx)(() => [..._cache[3] || (_cache[3] = [(0, vue.createElementVNode)("span", {
173
184
  class: "i-as-close",
174
185
  "aria-hidden": "true"
175
186
  }, null, -1)])]),
176
187
  _: 1
177
188
  })
178
189
  ]),
179
- (0, vue.createElementVNode)("div", _hoisted_4, [view.value.description ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(reka_ui.DialogDescription), {
180
- key: 0,
181
- class: "as-action-form-description"
182
- }, {
183
- default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(view.value.description), 1)]),
184
- _: 1
185
- })) : (0, vue.createCommentVNode)("v-if", true), loading.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_5, "Loading form…")) : error.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_6, (0, vue.toDisplayString)(error.value), 1)) : def.value && formData.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_atscript_vue_form.AsForm), {
186
- key: 3,
187
- id: formId,
188
- def: def.value,
189
- "form-data": formData.value,
190
- types: (0, vue.unref)(resolvedTypes),
191
- components: (0, vue.unref)(formComponents),
192
- "hide-root-title": "",
193
- "hide-submit": "",
194
- onSubmit
195
- }, null, 8, [
196
- "def",
197
- "form-data",
198
- "types",
199
- "components"
200
- ])) : (0, vue.createCommentVNode)("v-if", true)]),
190
+ (0, vue.createElementVNode)("div", _hoisted_4, [
191
+ (0, vue.createCommentVNode)(" Always rendered: Reka warns and leaves\n `aria-describedby=\"undefined\"` on the surface when the action\n declares no description, so the fallback copy is kept\n screen-reader-only. "),
192
+ (0, vue.createVNode)((0, vue.unref)(reka_ui.DialogDescription), { class: (0, vue.normalizeClass)(view.value.description ? "as-action-form-description" : "sr-only") }, {
193
+ default: (0, vue.withCtx)(() => [(0, vue.createTextVNode)((0, vue.toDisplayString)(view.value.description || `Provide the input for ${view.value.title}.`), 1)]),
194
+ _: 1
195
+ }, 8, ["class"]),
196
+ loading.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_5, "Loading form…")) : error.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("p", _hoisted_6, (0, vue.toDisplayString)(error.value), 1)) : def.value && formData.value ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(_atscript_vue_form.AsForm), {
197
+ key: 2,
198
+ id: formId,
199
+ def: def.value,
200
+ "form-data": formData.value,
201
+ types: (0, vue.unref)(resolvedTypes),
202
+ components: (0, vue.unref)(formComponents),
203
+ "hide-root-title": "",
204
+ "hide-submit": "",
205
+ onSubmit
206
+ }, null, 8, [
207
+ "def",
208
+ "form-data",
209
+ "types",
210
+ "components"
211
+ ])) : (0, vue.createCommentVNode)("v-if", true)
212
+ ]),
201
213
  def.value ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("footer", _hoisted_7, [(0, vue.createElementVNode)("button", {
202
214
  type: "button",
203
215
  class: "as-action-form-cancel",
@@ -1,4 +1,4 @@
1
- import { a as useTableContext, g as intentToScope } from "./use-table-state-BxX3SpeW.mjs";
1
+ import { S as intentToScope, a as useTableContext } from "./use-table-state-mBXx11aH.mjs";
2
2
  import { META_LABEL, UI_FORM_SUBMIT_TEXT, createFormData, createFormDef, getFieldMeta } from "@atscript/ui";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, ref, renderList, toDisplayString, unref, useId, watch, withCtx } from "vue";
4
4
  import { formatIdentifier } from "@atscript/db-client";
@@ -17,11 +17,11 @@ const _hoisted_3 = {
17
17
  };
18
18
  const _hoisted_4 = { class: "as-action-form-body" };
19
19
  const _hoisted_5 = {
20
- key: 1,
20
+ key: 0,
21
21
  class: "as-action-form-status"
22
22
  };
23
23
  const _hoisted_6 = {
24
- key: 2,
24
+ key: 1,
25
25
  class: "as-action-form-error"
26
26
  };
27
27
  const _hoisted_7 = {
@@ -42,17 +42,25 @@ var as_action_form_dialog_default = /* @__PURE__ */ defineComponent({
42
42
  if (!v) state.dismissActionForm();
43
43
  }
44
44
  });
45
+ const display = state.actionFormDisplay;
45
46
  const def = ref(null);
46
47
  const formData = ref(null);
47
48
  const loading = ref(false);
48
49
  const error = ref(null);
50
+ watch(display, (next) => {
51
+ if (next !== null) return;
52
+ def.value = null;
53
+ formData.value = null;
54
+ error.value = null;
55
+ loading.value = false;
56
+ });
49
57
  const resolvedTypes = formTypes ?? createDefaultTypes();
50
58
  watch(req, async (next) => {
59
+ if (next === null) return;
51
60
  def.value = null;
52
61
  formData.value = null;
53
62
  error.value = null;
54
63
  loading.value = false;
55
- if (next === null) return;
56
64
  if (!next.action.inputForm) {
57
65
  error.value = "Action does not declare an input form.";
58
66
  return;
@@ -77,7 +85,7 @@ var as_action_form_dialog_default = /* @__PURE__ */ defineComponent({
77
85
  }, { immediate: true });
78
86
  const formId = `as-action-form-${useId()}`;
79
87
  const view = computed(() => {
80
- const r = req.value;
88
+ const r = display.value;
81
89
  if (!r) return null;
82
90
  const d = def.value;
83
91
  const ids = r.identifiers;
@@ -131,10 +139,13 @@ var as_action_form_dialog_default = /* @__PURE__ */ defineComponent({
131
139
  return (_ctx, _cache) => {
132
140
  return openBlock(), createBlock(unref(DialogRoot), {
133
141
  open: open.value,
134
- "onUpdate:open": _cache[1] || (_cache[1] = ($event) => open.value = $event)
142
+ "onUpdate:open": _cache[2] || (_cache[2] = ($event) => open.value = $event)
135
143
  }, {
136
144
  default: withCtx(() => [createVNode(unref(DialogPortal), null, {
137
- default: withCtx(() => [createVNode(unref(DialogOverlay), { class: "as-action-form-overlay" }), createVNode(unref(DialogContent), { class: "as-action-form-content" }, {
145
+ default: withCtx(() => [createVNode(unref(DialogOverlay), { class: "as-action-form-overlay" }), createVNode(unref(DialogContent), {
146
+ class: "as-action-form-content",
147
+ onAfterLeave: _cache[1] || (_cache[1] = ($event) => unref(state).releaseActionForm())
148
+ }, {
138
149
  default: withCtx(() => [view.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
139
150
  createElementVNode("header", _hoisted_1, [
140
151
  createVNode(unref(DialogTitle), { class: "as-action-form-title" }, {
@@ -169,35 +180,36 @@ var as_action_form_dialog_default = /* @__PURE__ */ defineComponent({
169
180
  class: "as-action-form-close",
170
181
  "aria-label": "Close"
171
182
  }, {
172
- default: withCtx(() => [..._cache[2] || (_cache[2] = [createElementVNode("span", {
183
+ default: withCtx(() => [..._cache[3] || (_cache[3] = [createElementVNode("span", {
173
184
  class: "i-as-close",
174
185
  "aria-hidden": "true"
175
186
  }, null, -1)])]),
176
187
  _: 1
177
188
  })
178
189
  ]),
179
- createElementVNode("div", _hoisted_4, [view.value.description ? (openBlock(), createBlock(unref(DialogDescription), {
180
- key: 0,
181
- class: "as-action-form-description"
182
- }, {
183
- default: withCtx(() => [createTextVNode(toDisplayString(view.value.description), 1)]),
184
- _: 1
185
- })) : createCommentVNode("v-if", true), loading.value ? (openBlock(), createElementBlock("p", _hoisted_5, "Loading form…")) : error.value ? (openBlock(), createElementBlock("p", _hoisted_6, toDisplayString(error.value), 1)) : def.value && formData.value ? (openBlock(), createBlock(unref(AsForm), {
186
- key: 3,
187
- id: formId,
188
- def: def.value,
189
- "form-data": formData.value,
190
- types: unref(resolvedTypes),
191
- components: unref(formComponents),
192
- "hide-root-title": "",
193
- "hide-submit": "",
194
- onSubmit
195
- }, null, 8, [
196
- "def",
197
- "form-data",
198
- "types",
199
- "components"
200
- ])) : createCommentVNode("v-if", true)]),
190
+ createElementVNode("div", _hoisted_4, [
191
+ createCommentVNode(" Always rendered: Reka warns and leaves\n `aria-describedby=\"undefined\"` on the surface when the action\n declares no description, so the fallback copy is kept\n screen-reader-only. "),
192
+ createVNode(unref(DialogDescription), { class: normalizeClass(view.value.description ? "as-action-form-description" : "sr-only") }, {
193
+ default: withCtx(() => [createTextVNode(toDisplayString(view.value.description || `Provide the input for ${view.value.title}.`), 1)]),
194
+ _: 1
195
+ }, 8, ["class"]),
196
+ loading.value ? (openBlock(), createElementBlock("p", _hoisted_5, "Loading form…")) : error.value ? (openBlock(), createElementBlock("p", _hoisted_6, toDisplayString(error.value), 1)) : def.value && formData.value ? (openBlock(), createBlock(unref(AsForm), {
197
+ key: 2,
198
+ id: formId,
199
+ def: def.value,
200
+ "form-data": formData.value,
201
+ types: unref(resolvedTypes),
202
+ components: unref(formComponents),
203
+ "hide-root-title": "",
204
+ "hide-submit": "",
205
+ onSubmit
206
+ }, null, 8, [
207
+ "def",
208
+ "form-data",
209
+ "types",
210
+ "components"
211
+ ])) : createCommentVNode("v-if", true)
212
+ ]),
201
213
  def.value ? (openBlock(), createElementBlock("footer", _hoisted_7, [createElementVNode("button", {
202
214
  type: "button",
203
215
  class: "as-action-form-cancel",
@@ -1,4 +1,4 @@
1
- const require_use_table_state = require("./use-table-state-Oi2ds4_a.cjs");
1
+ const require_use_table_state = require("./use-table-state-mhm-YWnu.cjs");
2
2
  let vue = require("vue");
3
3
  let reka_ui = require("reka-ui");
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { _ as isModClick, d as ariaLabelFor, h as intentClass, v as isPlainLeftClick } from "./use-table-state-BxX3SpeW.mjs";
1
+ import { C as isModClick, _ as ariaLabelFor, w as isPlainLeftClick, x as intentClass } from "./use-table-state-mBXx11aH.mjs";
2
2
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, defineComponent, normalizeClass, openBlock, renderList, renderSlot, toDisplayString, unref, useSlots, withCtx } from "vue";
3
3
  import { DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator } from "reka-ui";
4
4
  //#endregion
@@ -1,5 +1,5 @@
1
- import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
2
- import { t as as_cell_json_popover_default } from "./as-cell-json-popover-Dkdv5Y9E.mjs";
1
+ import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
2
+ import { t as as_cell_json_popover_default } from "./as-cell-json-popover-CH5bAcLE.mjs";
3
3
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, renderList, toDisplayString, withCtx } from "vue";
4
4
  //#region src/components/defaults/as-cell-array.vue?vue&type=script&setup=true&lang.ts
5
5
  const _hoisted_1 = {
@@ -1,5 +1,5 @@
1
- const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
2
- const require_as_cell_json_popover = require("./as-cell-json-popover-BM2QLgfk.cjs");
1
+ const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
2
+ const require_as_cell_json_popover = require("./as-cell-json-popover-vty5vMjW.cjs");
3
3
  let vue = require("vue");
4
4
  //#region src/components/defaults/as-cell-array.vue?vue&type=script&setup=true&lang.ts
5
5
  const _hoisted_1 = {
@@ -1,2 +1,2 @@
1
- const require_as_cell_array = require("./as-cell-array-iPeUnk2G.cjs");
1
+ const require_as_cell_array = require("./as-cell-array-D-8Pqlgo.cjs");
2
2
  module.exports = require_as_cell_array.as_cell_array_default;
@@ -1,2 +1,2 @@
1
- import { t as as_cell_array_default } from "./as-cell-array-2qmJ1lT2.mjs";
1
+ import { t as as_cell_array_default } from "./as-cell-array-BWHkJX3I.mjs";
2
2
  export { as_cell_array_default as default };
@@ -1,5 +1,5 @@
1
- const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
2
- const require_use_cell_locale = require("./use-cell-locale-BGBRQB7s.cjs");
1
+ const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
2
+ const require_use_cell_locale = require("./use-cell-locale-caG2Fzpc.cjs");
3
3
  let vue = require("vue");
4
4
  let _vueuse_core = require("@vueuse/core");
5
5
  //#region src/utils/intl-cache.ts
@@ -1,5 +1,5 @@
1
- import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
2
- import { n as useCellLocale } from "./use-cell-locale-MQXoONh5.mjs";
1
+ import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
2
+ import { n as useCellLocale } from "./use-cell-locale-CxQOQsns.mjs";
3
3
  import { computed, createElementBlock, defineComponent, openBlock, toDisplayString } from "vue";
4
4
  import { formatTimeAgoIntl } from "@vueuse/core";
5
5
  //#region src/utils/intl-cache.ts
@@ -1,2 +1,2 @@
1
- const require_as_cell_date = require("./as-cell-date-DyixWKuS.cjs");
1
+ const require_as_cell_date = require("./as-cell-date-DviMJEqs.cjs");
2
2
  module.exports = require_as_cell_date.as_cell_date_default;
@@ -1,2 +1,2 @@
1
- import { t as as_cell_date_default } from "./as-cell-date-BwFgi6O0.mjs";
1
+ import { t as as_cell_date_default } from "./as-cell-date-mGlnDeLP.mjs";
2
2
  export { as_cell_date_default as default };
@@ -1,5 +1,5 @@
1
- import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
2
- import { t as as_cell_json_popover_default } from "./as-cell-json-popover-Dkdv5Y9E.mjs";
1
+ import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
2
+ import { t as as_cell_json_popover_default } from "./as-cell-json-popover-CH5bAcLE.mjs";
3
3
  import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, withCtx } from "vue";
4
4
  //#endregion
5
5
  //#region src/components/defaults/as-cell-json.vue
@@ -1,5 +1,5 @@
1
- const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
2
- const require_as_cell_json_popover = require("./as-cell-json-popover-BM2QLgfk.cjs");
1
+ const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
2
+ const require_as_cell_json_popover = require("./as-cell-json-popover-vty5vMjW.cjs");
3
3
  let vue = require("vue");
4
4
  //#endregion
5
5
  //#region src/components/defaults/as-cell-json.vue
@@ -1,2 +1,2 @@
1
- const require_as_cell_json = require("./as-cell-json-Bvv2P7YV.cjs");
1
+ const require_as_cell_json = require("./as-cell-json-CaVB6e7V.cjs");
2
2
  module.exports = require_as_cell_json.as_cell_json_default;
@@ -1,2 +1,2 @@
1
- import { t as as_cell_json_default } from "./as-cell-json--95Xq6yq.mjs";
1
+ import { t as as_cell_json_default } from "./as-cell-json-2I081xnO.mjs";
2
2
  export { as_cell_json_default as default };
@@ -1,5 +1,5 @@
1
- const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
2
- const require_use_cell_locale = require("./use-cell-locale-BGBRQB7s.cjs");
1
+ const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
2
+ const require_use_cell_locale = require("./use-cell-locale-caG2Fzpc.cjs");
3
3
  let _atscript_ui = require("@atscript/ui");
4
4
  let vue = require("vue");
5
5
  //#region src/components/defaults/as-cell-number.vue?vue&type=script&setup=true&lang.ts
@@ -1,5 +1,5 @@
1
- import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
2
- import { n as useCellLocale } from "./use-cell-locale-MQXoONh5.mjs";
1
+ import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
2
+ import { n as useCellLocale } from "./use-cell-locale-CxQOQsns.mjs";
3
3
  import { formatDecimalForDisplay } from "@atscript/ui";
4
4
  import { computed, createElementBlock, defineComponent, openBlock, toDisplayString } from "vue";
5
5
  //#region src/components/defaults/as-cell-number.vue?vue&type=script&setup=true&lang.ts
@@ -1,2 +1,2 @@
1
- const require_as_cell_number = require("./as-cell-number-DuPMOesI.cjs");
1
+ const require_as_cell_number = require("./as-cell-number-BnYbxOiG.cjs");
2
2
  module.exports = require_as_cell_number.as_cell_number_default;
@@ -1,2 +1,2 @@
1
- import { t as as_cell_number_default } from "./as-cell-number-DKRaS9pM.mjs";
1
+ import { t as as_cell_number_default } from "./as-cell-number-CP2AZI9g.mjs";
2
2
  export { as_cell_number_default as default };
@@ -1,6 +1,6 @@
1
- const require_get_cell_value = require("./get-cell-value-4rHKP-TG.cjs");
2
- const require_as_cell_json_popover = require("./as-cell-json-popover-BM2QLgfk.cjs");
3
- const require_format_cell = require("./format-cell-vCNTh4WZ.cjs");
1
+ const require_get_cell_value = require("./get-cell-value-CJT4fk4y.cjs");
2
+ const require_as_cell_json_popover = require("./as-cell-json-popover-vty5vMjW.cjs");
3
+ const require_format_cell = require("./format-cell-DaxV6WIJ.cjs");
4
4
  let vue = require("vue");
5
5
  //#region src/components/defaults/as-cell-union.vue?vue&type=script&setup=true&lang.ts
6
6
  const _hoisted_1 = {
@@ -1,6 +1,6 @@
1
- import { t as getCellValue } from "./get-cell-value-C8LLc_Rr.mjs";
2
- import { t as as_cell_json_popover_default } from "./as-cell-json-popover-Dkdv5Y9E.mjs";
3
- import { t as formatCellValue } from "./format-cell-D1Ziv96Q.mjs";
1
+ import { t as getCellValue } from "./get-cell-value-Cb3X8nUn.mjs";
2
+ import { t as as_cell_json_popover_default } from "./as-cell-json-popover-CH5bAcLE.mjs";
3
+ import { t as formatCellValue } from "./format-cell-Bx7wNc4X.mjs";
4
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, openBlock, renderList, toDisplayString, unref, withCtx } from "vue";
5
5
  //#region src/components/defaults/as-cell-union.vue?vue&type=script&setup=true&lang.ts
6
6
  const _hoisted_1 = {
@@ -1,2 +1,2 @@
1
- const require_as_cell_union = require("./as-cell-union-DJNsEKTi.cjs");
1
+ const require_as_cell_union = require("./as-cell-union-BjMP91PS.cjs");
2
2
  module.exports = require_as_cell_union.as_cell_union_default;
@@ -1,2 +1,2 @@
1
- import { t as as_cell_union_default } from "./as-cell-union-C9FukGqF.mjs";
1
+ import { t as as_cell_union_default } from "./as-cell-union-NHpDCXty.mjs";
2
2
  export { as_cell_union_default as default };
@@ -1,2 +1,2 @@
1
- const require_as_column_menu = require("./as-column-menu-fZVbJ9lU.cjs");
1
+ const require_as_column_menu = require("./as-column-menu-D_8NxujZ.cjs");
2
2
  module.exports = require_as_column_menu.as_column_menu_default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-column-menu.vue-u_DNy3f-.cjs";
1
+ import { t as _default } from "./as-column-menu.vue-De7SRhj6.cjs";
2
2
  export = _default;
@@ -1,2 +1,2 @@
1
- import { t as _default } from "./as-column-menu.vue-DL5N9mKR.mjs";
1
+ import { t as _default } from "./as-column-menu.vue-Dg0H1dOd.mjs";
2
2
  export { _default as default };
@@ -1,2 +1,2 @@
1
- import { t as as_column_menu_default } from "./as-column-menu-kTIQfLTi.mjs";
1
+ import { t as as_column_menu_default } from "./as-column-menu-BMTS3DO2.mjs";
2
2
  export { as_column_menu_default as default };
@@ -1,4 +1,4 @@
1
- import { n as ColumnMenuConfig } from "./types-CTMxE_zA.cjs";
1
+ import { n as ColumnMenuConfig } from "./types--ex8BJIO.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 { n as ColumnMenuConfig } from "./types-ByU4O0Yf.mjs";
1
+ import { n as ColumnMenuConfig } from "./types-CBGaTR2Z.mjs";
2
2
  import { ColumnDef } from "@atscript/ui";
3
3
  import * as vue from "vue";
4
4
  import { ColumnWidthEntry, FilterCondition } from "@atscript/ui-table";