@shwfed/config 3.0.7 → 3.0.8

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 (246) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/runtime/components/actions/ai-l1.md +24 -0
  3. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.prototype/schema.d.ts +1 -0
  4. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.prototype/schema.js +2 -1
  5. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/prompt.md +8 -0
  6. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/schema.d.ts +6 -0
  7. package/dist/runtime/components/actions/buttons/2026-05-11/com.shwfed.actions.button.modal.layout/schema.js +4 -0
  8. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/prompt.md +8 -0
  9. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.d.ts +1 -0
  10. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.js +2 -1
  11. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/prompt.md +9 -0
  12. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/schema.d.ts +1 -0
  13. package/dist/runtime/components/actions/buttons/2026-06-08/com.shwfed.actions.button.http.request.json.batch/schema.js +2 -1
  14. package/dist/runtime/components/actions/buttons/2026-07-13/com.shwfed.actions.button.state.write/prompt.md +8 -0
  15. package/dist/runtime/components/actions/buttons/2026-07-13/com.shwfed.actions.button.state.write/schema.d.ts +1 -0
  16. package/dist/runtime/components/actions/buttons/2026-07-13/com.shwfed.actions.button.state.write/schema.js +2 -1
  17. package/dist/runtime/components/actions/items/2026-05-21/com.shwfed.actions.item.markdown/schema.d.ts +1 -0
  18. package/dist/runtime/components/actions/items/2026-05-21/com.shwfed.actions.item.markdown/schema.js +2 -1
  19. package/dist/runtime/components/actions/utils/ai-button-tools.d.ts +29 -0
  20. package/dist/runtime/components/actions/utils/ai-button-tools.js +664 -0
  21. package/dist/runtime/components/actions/utils/resolve.d.ts +22 -0
  22. package/dist/runtime/components/actions/utils/resolve.js +23 -1
  23. package/dist/runtime/components/config/ai-generate.d.vue.ts +7 -0
  24. package/dist/runtime/components/config/ai-generate.system.md +39 -0
  25. package/dist/runtime/components/{table → config}/ai-generate.vue +55 -32
  26. package/dist/runtime/components/config/ai-generate.vue.d.ts +7 -0
  27. package/dist/runtime/components/config/ai-page-slot.l1.md +25 -0
  28. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.actions/schema.d.ts +6 -0
  29. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.actions/schema.js +4 -0
  30. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/schema.d.ts +6 -0
  31. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/schema.js +4 -0
  32. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.markdown/schema.d.ts +1 -0
  33. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.markdown/schema.js +1 -0
  34. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +58 -58
  35. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +58 -58
  36. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +58 -58
  37. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +58 -58
  38. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +35 -29
  39. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.js +4 -0
  40. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/schema.d.ts +7 -0
  41. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/schema.js +4 -0
  42. package/dist/runtime/components/config/blocks/2026-05-17/com.shwfed.block.chart.xy/schema.d.ts +1 -0
  43. package/dist/runtime/components/config/blocks/2026-05-17/com.shwfed.block.chart.xy/schema.js +1 -0
  44. package/dist/runtime/components/config/blocks/2026-06-01/com.shwfed.block.animated.number/schema.d.ts +1 -0
  45. package/dist/runtime/components/config/blocks/2026-06-01/com.shwfed.block.animated.number/schema.js +1 -0
  46. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.card/schema.d.ts +6 -0
  47. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.card/schema.js +4 -0
  48. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.icon/schema.d.ts +1 -0
  49. package/dist/runtime/components/config/blocks/2026-06-02/com.shwfed.block.icon/schema.js +1 -0
  50. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/config.d.vue.ts +18 -18
  51. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/config.vue.d.ts +18 -18
  52. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/runtime.d.vue.ts +18 -18
  53. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/runtime.vue.d.ts +18 -18
  54. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/schema.d.ts +6 -0
  55. package/dist/runtime/components/config/blocks/2026-06-17/com.shwfed.block.tree.single/schema.js +4 -0
  56. package/dist/runtime/components/config/blocks/2026-06-25/com.shwfed.block.loop/schema.d.ts +7 -0
  57. package/dist/runtime/components/config/blocks/2026-06-25/com.shwfed.block.loop/schema.js +4 -0
  58. package/dist/runtime/components/config/config.vue +24 -3
  59. package/dist/runtime/components/config/use-editor.d.ts +1 -0
  60. package/dist/runtime/components/config/use-editor.js +18 -0
  61. package/dist/runtime/components/config/utils/ai-cursor.d.ts +21 -0
  62. package/dist/runtime/components/config/utils/ai-cursor.js +827 -0
  63. package/dist/runtime/components/config/utils/ai-host-manuals.d.ts +2 -0
  64. package/dist/runtime/components/config/utils/ai-host-manuals.js +19 -0
  65. package/dist/runtime/components/config/utils/linkage.d.ts +15 -6
  66. package/dist/runtime/components/config/utils/linkage.js +23 -7
  67. package/dist/runtime/components/config/utils/resolve.d.ts +19 -0
  68. package/dist/runtime/components/config/utils/resolve.js +25 -2
  69. package/dist/runtime/components/form/ai-l1.md +22 -0
  70. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/schema.d.ts +1 -0
  71. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/schema.js +1 -0
  72. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts +1 -0
  73. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.js +1 -0
  74. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/schema.d.ts +1 -0
  75. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/schema.js +1 -0
  76. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.d.ts +7 -0
  77. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.js +4 -0
  78. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/schema.d.ts +1 -0
  79. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/schema.js +1 -0
  80. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/schema.d.ts +1 -0
  81. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/schema.js +1 -0
  82. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/schema.d.ts +1 -0
  83. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/schema.js +1 -0
  84. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/schema.d.ts +1 -0
  85. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/schema.js +1 -0
  86. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/schema.d.ts +1 -0
  87. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/schema.js +1 -0
  88. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/schema.d.ts +1 -0
  89. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/schema.js +1 -0
  90. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.d.ts +1 -0
  91. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.js +1 -0
  92. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/schema.d.ts +1 -0
  93. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/schema.js +1 -0
  94. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/schema.d.ts +1 -0
  95. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/schema.js +1 -0
  96. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/schema.d.ts +1 -0
  97. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/schema.js +1 -0
  98. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/prompt.md +8 -0
  99. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.d.ts +7 -0
  100. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.js +4 -0
  101. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/schema.d.ts +1 -0
  102. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/schema.js +1 -0
  103. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/schema.d.ts +1 -0
  104. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/schema.js +1 -0
  105. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/prompt.md +12 -0
  106. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.d.ts +6 -0
  107. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.js +4 -0
  108. package/dist/runtime/components/form/fields/2026-05-20/com.shwfed.form.field.collapsible/schema.d.ts +6 -0
  109. package/dist/runtime/components/form/fields/2026-05-20/com.shwfed.form.field.collapsible/schema.js +4 -0
  110. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +26 -26
  111. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +26 -26
  112. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/schema.d.ts +1 -0
  113. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/schema.js +1 -0
  114. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/schema.d.ts +1 -0
  115. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/schema.js +1 -0
  116. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +26 -26
  117. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +26 -26
  118. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +26 -26
  119. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +26 -26
  120. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +26 -26
  121. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +26 -26
  122. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/prompt.md +7 -0
  123. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +1 -0
  124. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.js +1 -0
  125. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +26 -26
  126. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +26 -26
  127. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/prompt.md +7 -0
  128. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.d.ts +1 -0
  129. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.js +1 -0
  130. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +26 -26
  131. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +26 -26
  132. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/prompt.md +9 -0
  133. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.d.ts +1 -0
  134. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.js +1 -0
  135. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +26 -26
  136. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +26 -26
  137. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/prompt.md +11 -0
  138. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.d.ts +1 -0
  139. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.js +1 -0
  140. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/prompt.md +12 -0
  141. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/schema.d.ts +1 -0
  142. package/dist/runtime/components/form/fields/2026-06-09/com.shwfed.form.field.upload/schema.js +1 -0
  143. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/prompt.md +14 -0
  144. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/schema.d.ts +1 -0
  145. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.multi/schema.js +1 -0
  146. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/prompt.md +19 -0
  147. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/schema.d.ts +1 -0
  148. package/dist/runtime/components/form/fields/2026-06-14/com.shwfed.form.field.combobox.single/schema.js +1 -0
  149. package/dist/runtime/components/form/fields/2026-06-20/com.shwfed.form.field.tabs/schema.d.ts +7 -0
  150. package/dist/runtime/components/form/fields/2026-06-20/com.shwfed.form.field.tabs/schema.js +4 -0
  151. package/dist/runtime/components/form/fields/2026-07-13/com.shwfed.form.field.dynamic/prompt.md +14 -0
  152. package/dist/runtime/components/form/fields/2026-07-13/com.shwfed.form.field.dynamic/schema.d.ts +1 -0
  153. package/dist/runtime/components/form/fields/2026-07-13/com.shwfed.form.field.dynamic/schema.js +1 -0
  154. package/dist/runtime/components/form/utils/ai-field-tools.d.ts +2 -2
  155. package/dist/runtime/components/form/utils/ai-field-tools.js +47 -30
  156. package/dist/runtime/components/form/utils/resolve.d.ts +11 -0
  157. package/dist/runtime/components/form/utils/resolve.js +13 -1
  158. package/dist/runtime/components/operations/2026-06-09/com.shwfed.operation.alert/schema.d.ts +1 -0
  159. package/dist/runtime/components/operations/2026-06-09/com.shwfed.operation.alert/schema.js +2 -1
  160. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/schema.d.ts +1 -0
  161. package/dist/runtime/components/operations/2026-06-11/com.shwfed.operation.http.request.json/schema.js +1 -0
  162. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/schema.d.ts +1 -0
  163. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/schema.js +2 -1
  164. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/schema.d.ts +1 -0
  165. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/schema.js +2 -1
  166. package/dist/runtime/components/operations/2026-07-06/com.shwfed.operation.table.add-row/schema.d.ts +1 -0
  167. package/dist/runtime/components/operations/2026-07-06/com.shwfed.operation.table.add-row/schema.js +2 -1
  168. package/dist/runtime/components/operations/utils/resolve.d.ts +17 -0
  169. package/dist/runtime/components/operations/utils/resolve.js +18 -1
  170. package/dist/runtime/components/table/ai-l1.md +38 -0
  171. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.actions/schema.d.ts +7 -0
  172. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.actions/schema.js +5 -1
  173. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.date/schema.d.ts +1 -0
  174. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.date/schema.js +2 -1
  175. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.icon/schema.d.ts +1 -0
  176. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.icon/schema.js +2 -1
  177. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.markdown/schema.d.ts +1 -0
  178. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.markdown/schema.js +2 -1
  179. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.number/schema.d.ts +1 -0
  180. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.number/schema.js +2 -1
  181. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.select/schema.d.ts +1 -0
  182. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.select/schema.js +2 -1
  183. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.text/schema.d.ts +1 -0
  184. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.text/schema.js +2 -1
  185. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch.remote/schema.d.ts +1 -0
  186. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch.remote/schema.js +2 -1
  187. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/schema.d.ts +1 -0
  188. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/schema.js +2 -1
  189. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch.local/schema.d.ts +1 -0
  190. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch.local/schema.js +2 -1
  191. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/schema.d.ts +1 -0
  192. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/schema.js +2 -1
  193. package/dist/runtime/components/table/columns/2026-05-21/com.shwfed.table.column.drag-handle/schema.d.ts +1 -0
  194. package/dist/runtime/components/table/columns/2026-05-21/com.shwfed.table.column.drag-handle/schema.js +2 -1
  195. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  196. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  197. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  198. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  199. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  200. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  201. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  202. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  203. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/prompt.md +12 -0
  204. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/schema.d.ts +1 -0
  205. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/schema.js +1 -0
  206. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/prompt.md +16 -0
  207. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/schema.d.ts +1 -0
  208. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/schema.js +1 -0
  209. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  210. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  211. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/schema.d.ts +1 -0
  212. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/schema.js +1 -0
  213. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  214. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  215. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/schema.d.ts +1 -0
  216. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/schema.js +1 -0
  217. package/dist/runtime/components/table/columns/2026-06-17/com.shwfed.table.column.date-input/schema.d.ts +1 -0
  218. package/dist/runtime/components/table/columns/2026-06-17/com.shwfed.table.column.date-input/schema.js +2 -1
  219. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/schema.d.ts +1 -0
  220. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/schema.js +2 -1
  221. package/dist/runtime/components/table/columns/2026-07-12/com.shwfed.table.column.dynamic/prompt.md +15 -0
  222. package/dist/runtime/components/table/config.d.vue.ts +3 -3
  223. package/dist/runtime/components/table/config.vue +1 -33
  224. package/dist/runtime/components/table/config.vue.d.ts +3 -3
  225. package/dist/runtime/components/table/row-provider.vue +7 -1
  226. package/dist/runtime/components/table/schema.d.ts +58 -58
  227. package/dist/runtime/components/table/utils/ai-tools.js +16 -7
  228. package/dist/runtime/components/table/utils/resolve.d.ts +5 -0
  229. package/dist/runtime/components/table/utils/resolve.js +12 -1
  230. package/dist/runtime/share/define-registry.d.ts +66 -0
  231. package/dist/runtime/share/define-registry.js +37 -1
  232. package/dist/runtime/share/use-persisted-chat.d.ts +11 -9
  233. package/dist/runtime/share/use-persisted-chat.js +3 -3
  234. package/dist/runtime/utils/ai/index.d.ts +1 -1
  235. package/dist/runtime/utils/ai/index.js +18 -11
  236. package/dist/runtime/utils/cel-catalog.d.ts +1 -0
  237. package/dist/runtime/utils/cel-catalog.js +10 -0
  238. package/dist/runtime/utils/cel-catalog.md +42 -0
  239. package/dist/runtime/utils/cel-context.d.ts +15 -0
  240. package/dist/runtime/utils/cel-context.js +8 -0
  241. package/package.json +1 -1
  242. package/dist/runtime/components/table/ai-generate.d.vue.ts +0 -16
  243. package/dist/runtime/components/table/ai-generate.system.md +0 -101
  244. package/dist/runtime/components/table/ai-generate.vue.d.ts +0 -16
  245. /package/dist/runtime/components/{table → config}/ai-generate.system.d.ts +0 -0
  246. /package/dist/runtime/components/{table → config}/ai-generate.system.js +0 -0
@@ -18,6 +18,7 @@ export const compatibilityDate = "2026-06-14";
18
18
  export const metadata = {
19
19
  name: "\u5355\u9009",
20
20
  icon: "fluent:chevron-down-20-regular",
21
+ description: "\u53EF\u7F16\u8F91\u7684\u4E0B\u62C9\u5355\u9009\u5355\u5143\u683C\uFF0C\u9009\u4E2D\u503C\u5199\u56DE\u884C\u6570\u636E\uFF1B\u9009\u9879\u53EF\u9759\u6001\u914D\u7F6E\u6216\u8FDC\u7A0B\u52A0\u8F7D",
21
22
  // Publishes its resolved option (the source record) to the per-row
22
23
  // `selections` registry (runtime.vue), readable via `selections["<id>"]`.
23
24
  selection: true
@@ -36,19 +36,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
36
36
  }[]] | undefined;
37
37
  readonly keywords?: string | undefined;
38
38
  readonly readonly?: string | undefined;
39
+ readonly dataSource: {
40
+ readonly data: string;
41
+ readonly request?: string | undefined;
42
+ };
39
43
  readonly binding: string;
40
44
  readonly derived?: {
41
45
  readonly mode: "formula" | "prefill";
42
46
  readonly expression: string;
43
47
  } | undefined;
44
- readonly dataSource: {
45
- readonly data: string;
46
- readonly request?: string | undefined;
47
- };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
53
53
  readonly nodeTooltip?: readonly [{
54
54
  readonly locale: "zh";
@@ -95,19 +95,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
95
95
  }[]] | undefined;
96
96
  readonly keywords?: string | undefined;
97
97
  readonly readonly?: string | undefined;
98
+ readonly dataSource: {
99
+ readonly data: string;
100
+ readonly request?: string | undefined;
101
+ };
98
102
  readonly binding: string;
99
103
  readonly derived?: {
100
104
  readonly mode: "formula" | "prefill";
101
105
  readonly expression: string;
102
106
  } | undefined;
103
- readonly dataSource: {
104
- readonly data: string;
105
- readonly request?: string | undefined;
106
- };
107
- readonly enableSorting?: boolean | undefined;
108
107
  readonly nodeKey: string;
109
108
  readonly nodeChildren: string;
110
109
  readonly nodeLabel: string;
110
+ readonly enableSorting?: boolean | undefined;
111
111
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
112
112
  readonly nodeTooltip?: readonly [{
113
113
  readonly locale: "zh";
@@ -36,19 +36,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
36
36
  }[]] | undefined;
37
37
  readonly keywords?: string | undefined;
38
38
  readonly readonly?: string | undefined;
39
+ readonly dataSource: {
40
+ readonly data: string;
41
+ readonly request?: string | undefined;
42
+ };
39
43
  readonly binding: string;
40
44
  readonly derived?: {
41
45
  readonly mode: "formula" | "prefill";
42
46
  readonly expression: string;
43
47
  } | undefined;
44
- readonly dataSource: {
45
- readonly data: string;
46
- readonly request?: string | undefined;
47
- };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
53
53
  readonly nodeTooltip?: readonly [{
54
54
  readonly locale: "zh";
@@ -95,19 +95,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
95
95
  }[]] | undefined;
96
96
  readonly keywords?: string | undefined;
97
97
  readonly readonly?: string | undefined;
98
+ readonly dataSource: {
99
+ readonly data: string;
100
+ readonly request?: string | undefined;
101
+ };
98
102
  readonly binding: string;
99
103
  readonly derived?: {
100
104
  readonly mode: "formula" | "prefill";
101
105
  readonly expression: string;
102
106
  } | undefined;
103
- readonly dataSource: {
104
- readonly data: string;
105
- readonly request?: string | undefined;
106
- };
107
- readonly enableSorting?: boolean | undefined;
108
107
  readonly nodeKey: string;
109
108
  readonly nodeChildren: string;
110
109
  readonly nodeLabel: string;
110
+ readonly enableSorting?: boolean | undefined;
111
111
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
112
112
  readonly nodeTooltip?: readonly [{
113
113
  readonly locale: "zh";
@@ -7,6 +7,7 @@ export declare const compatibilityDate: "2026-06-14";
7
7
  export declare const metadata: {
8
8
  readonly name: "下拉树(多选)";
9
9
  readonly icon: "fluent:tree-evergreen-20-regular";
10
+ readonly description: "可编辑的下拉树多选单元格,选中节点写回行数据";
10
11
  readonly selection: true;
11
12
  };
12
13
  export declare function schema(configure: (env: Environment) => void): Schema.Struct<{
@@ -17,6 +17,7 @@ export const compatibilityDate = "2026-06-14";
17
17
  export const metadata = {
18
18
  name: "\u4E0B\u62C9\u6811\uFF08\u591A\u9009\uFF09",
19
19
  icon: "fluent:tree-evergreen-20-regular",
20
+ description: "\u53EF\u7F16\u8F91\u7684\u4E0B\u62C9\u6811\u591A\u9009\u5355\u5143\u683C\uFF0C\u9009\u4E2D\u8282\u70B9\u5199\u56DE\u884C\u6570\u636E",
20
21
  // Publishes its resolved nodes (array) to the per-row `selections` registry (runtime.vue), readable via `selections["<id>"]`.
21
22
  selection: true
22
23
  };
@@ -36,19 +36,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
36
36
  }[]] | undefined;
37
37
  readonly keywords?: string | undefined;
38
38
  readonly readonly?: string | undefined;
39
+ readonly dataSource: {
40
+ readonly data: string;
41
+ readonly request?: string | undefined;
42
+ };
39
43
  readonly binding: string;
40
44
  readonly derived?: {
41
45
  readonly mode: "formula" | "prefill";
42
46
  readonly expression: string;
43
47
  } | undefined;
44
- readonly dataSource: {
45
- readonly data: string;
46
- readonly request?: string | undefined;
47
- };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly nodeTooltip?: readonly [{
53
53
  readonly locale: "zh";
54
54
  readonly message: string;
@@ -94,19 +94,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
94
94
  }[]] | undefined;
95
95
  readonly keywords?: string | undefined;
96
96
  readonly readonly?: string | undefined;
97
+ readonly dataSource: {
98
+ readonly data: string;
99
+ readonly request?: string | undefined;
100
+ };
97
101
  readonly binding: string;
98
102
  readonly derived?: {
99
103
  readonly mode: "formula" | "prefill";
100
104
  readonly expression: string;
101
105
  } | undefined;
102
- readonly dataSource: {
103
- readonly data: string;
104
- readonly request?: string | undefined;
105
- };
106
- readonly enableSorting?: boolean | undefined;
107
106
  readonly nodeKey: string;
108
107
  readonly nodeChildren: string;
109
108
  readonly nodeLabel: string;
109
+ readonly enableSorting?: boolean | undefined;
110
110
  readonly nodeTooltip?: readonly [{
111
111
  readonly locale: "zh";
112
112
  readonly message: string;
@@ -36,19 +36,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
36
36
  }[]] | undefined;
37
37
  readonly keywords?: string | undefined;
38
38
  readonly readonly?: string | undefined;
39
+ readonly dataSource: {
40
+ readonly data: string;
41
+ readonly request?: string | undefined;
42
+ };
39
43
  readonly binding: string;
40
44
  readonly derived?: {
41
45
  readonly mode: "formula" | "prefill";
42
46
  readonly expression: string;
43
47
  } | undefined;
44
- readonly dataSource: {
45
- readonly data: string;
46
- readonly request?: string | undefined;
47
- };
48
- readonly enableSorting?: boolean | undefined;
49
48
  readonly nodeKey: string;
50
49
  readonly nodeChildren: string;
51
50
  readonly nodeLabel: string;
51
+ readonly enableSorting?: boolean | undefined;
52
52
  readonly nodeTooltip?: readonly [{
53
53
  readonly locale: "zh";
54
54
  readonly message: string;
@@ -94,19 +94,19 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
94
94
  }[]] | undefined;
95
95
  readonly keywords?: string | undefined;
96
96
  readonly readonly?: string | undefined;
97
+ readonly dataSource: {
98
+ readonly data: string;
99
+ readonly request?: string | undefined;
100
+ };
97
101
  readonly binding: string;
98
102
  readonly derived?: {
99
103
  readonly mode: "formula" | "prefill";
100
104
  readonly expression: string;
101
105
  } | undefined;
102
- readonly dataSource: {
103
- readonly data: string;
104
- readonly request?: string | undefined;
105
- };
106
- readonly enableSorting?: boolean | undefined;
107
106
  readonly nodeKey: string;
108
107
  readonly nodeChildren: string;
109
108
  readonly nodeLabel: string;
109
+ readonly enableSorting?: boolean | undefined;
110
110
  readonly nodeTooltip?: readonly [{
111
111
  readonly locale: "zh";
112
112
  readonly message: string;
@@ -7,6 +7,7 @@ export declare const compatibilityDate: "2026-06-14";
7
7
  export declare const metadata: {
8
8
  readonly name: "下拉树(单选)";
9
9
  readonly icon: "fluent:tree-evergreen-20-regular";
10
+ readonly description: "可编辑的下拉树单选单元格,选中节点写回行数据";
10
11
  readonly selection: true;
11
12
  };
12
13
  export declare function schema(configure: (env: Environment) => void): Schema.Struct<{
@@ -17,6 +17,7 @@ export const compatibilityDate = "2026-06-14";
17
17
  export const metadata = {
18
18
  name: "\u4E0B\u62C9\u6811\uFF08\u5355\u9009\uFF09",
19
19
  icon: "fluent:tree-evergreen-20-regular",
20
+ description: "\u53EF\u7F16\u8F91\u7684\u4E0B\u62C9\u6811\u5355\u9009\u5355\u5143\u683C\uFF0C\u9009\u4E2D\u8282\u70B9\u5199\u56DE\u884C\u6570\u636E",
20
21
  // Publishes its resolved node (backend record) to the per-row `selections` registry (runtime.vue), readable via `selections["<id>"]`.
21
22
  selection: true
22
23
  };
@@ -7,6 +7,7 @@ export declare const compatibilityDate: "2026-06-17";
7
7
  export declare const metadata: {
8
8
  readonly name: "日期输入";
9
9
  readonly icon: "fluent:calendar-ltr-20-regular";
10
+ readonly description: "可编辑的日期输入单元格,值写回行数据";
10
11
  };
11
12
  export declare function presetSchema(configure: (env: Environment) => void): Schema.Struct<{
12
13
  id: Schema.refine<string, typeof Schema.String>;
@@ -7,7 +7,8 @@ export const type = "com.shwfed.table.column.date-input";
7
7
  export const compatibilityDate = "2026-06-17";
8
8
  export const metadata = {
9
9
  name: "\u65E5\u671F\u8F93\u5165",
10
- icon: "fluent:calendar-ltr-20-regular"
10
+ icon: "fluent:calendar-ltr-20-regular",
11
+ description: "\u53EF\u7F16\u8F91\u7684\u65E5\u671F\u8F93\u5165\u5355\u5143\u683C\uFF0C\u503C\u5199\u56DE\u884C\u6570\u636E"
11
12
  };
12
13
  function AddonActions(configure) {
13
14
  const configureWithRow = (env) => {
@@ -7,6 +7,7 @@ export declare const compatibilityDate: "2026-06-22";
7
7
  export declare const metadata: {
8
8
  readonly name: "日期范围输入";
9
9
  readonly icon: "fluent:calendar-arrow-right-20-regular";
10
+ readonly description: "可编辑的日期范围输入单元格,起止值写回行数据";
10
11
  };
11
12
  export declare function presetSchema(configure: (env: Environment) => void): Schema.Struct<{
12
13
  id: Schema.refine<string, typeof Schema.String>;
@@ -6,7 +6,8 @@ export const type = "com.shwfed.table.column.date-range-input";
6
6
  export const compatibilityDate = "2026-06-22";
7
7
  export const metadata = {
8
8
  name: "\u65E5\u671F\u8303\u56F4\u8F93\u5165",
9
- icon: "fluent:calendar-arrow-right-20-regular"
9
+ icon: "fluent:calendar-arrow-right-20-regular",
10
+ description: "\u53EF\u7F16\u8F91\u7684\u65E5\u671F\u8303\u56F4\u8F93\u5165\u5355\u5143\u683C\uFF0C\u8D77\u6B62\u503C\u5199\u56DE\u884C\u6570\u636E"
10
11
  };
11
12
  const BindingPath = Schema.String.pipe(Schema.minLength(1));
12
13
  const SplitBinding = Schema.Tuple(BindingPath, BindingPath).pipe(
@@ -0,0 +1,15 @@
1
+ **何时用我**:列集合随租户 / 渠道变化、无法在设计时固定时——由服务端返回的**列定义列表**运行时生成一组普通列。本列自身不渲染单元格,是个**生成器**:它产出的每一列都是普通文本 / 数值 / 日期列,可照常调宽度、排序、隐藏。
2
+
3
+ **配置配方**
4
+
5
+ - `request`(列定义请求):返回 `HttpRequest` 的表达式,拉取列定义。**作用域只有宿主基础变量**——不能引用 `query` / `pageIndex` / `pageSize` / `sorts`(列集合不能依赖翻到第几页、搜了什么、怎么排序,引用会类型检查失败)。
6
+ - `transform`:把响应 `json`(已解析,未取到为 `none`,用 `json.orValue([])` 解包)映射成**列描述符列表**,每项:
7
+ - `key`(必填,列唯一 id)、`header`(列名,纯文本)、`kind`(`text` / `number` / `date`,封闭词表)、`accessor`(必填,每行取值 CEL,`row` / `index` 在作用域内)。
8
+ - 可选 `width`(px,默认 150)、`align`、`sortable` / `sortKey`(服务端排序字段)、`hidden`、`tooltip`。
9
+ - `data_type_code → kind` 的判断写在你的 `transform` 里。
10
+
11
+ **坑**
12
+
13
+ - `transform` 的静态保证只有「返回 `list<dyn>`」;每项运行时按描述符解码,坏项被丢弃(loud)。
14
+ - 生成的 `date` 列没有 per-column 日期格式(需要精细格式的列请用静态列),默认 `yyyy-MM-dd`。
15
+ - 列定义的字段名 / 类型映射不确定时**向用户询问**。
@@ -9,11 +9,11 @@ type __VLS_ModelProps = {
9
9
  modelValue: AnyRecord;
10
10
  };
11
11
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
12
- declare var __VLS_234: {}, __VLS_236: {};
12
+ declare var __VLS_224: {}, __VLS_226: {};
13
13
  type __VLS_Slots = {} & {
14
- 'general-grid-extra'?: (props: typeof __VLS_234) => any;
14
+ 'general-grid-extra'?: (props: typeof __VLS_224) => any;
15
15
  } & {
16
- 'general-extra'?: (props: typeof __VLS_236) => any;
16
+ 'general-extra'?: (props: typeof __VLS_226) => any;
17
17
  };
18
18
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
19
  "update:modelValue": (value: AnyRecord) => any;
@@ -34,7 +34,6 @@ import {
34
34
  InputGroupNumberField
35
35
  } from "../ui/input-group";
36
36
  import ActionsConfigEditor from "../actions/config.vue";
37
- import TableAiGenerate from "./ai-generate.vue";
38
37
  import ShwfedFormConfig from "../form/config.vue";
39
38
  import { defaultFormConfig } from "../form/schema";
40
39
  import { Environment } from "../../vendor/cel-js/lib/index";
@@ -251,7 +250,7 @@ function writeGeneralPatch(patch) {
251
250
  };
252
251
  }
253
252
  const editingGeneralConfig = computed(() => readGeneral());
254
- const selected = ref(props.hideDataSource ? { kind: "general" } : { kind: "ai" });
253
+ const selected = ref({ kind: "general" });
255
254
  const fieldErrors = ref({});
256
255
  const pickedColumnIds = ref([]);
257
256
  const pickedColumnIdSet = computed(() => new Set(pickedColumnIds.value));
@@ -273,7 +272,6 @@ watch(
273
272
  },
274
273
  { immediate: true, deep: true }
275
274
  );
276
- const selectedAi = computed(() => selected.value.kind === "ai");
277
275
  const selectedGeneral = computed(() => selected.value.kind === "general");
278
276
  const selectedActions = computed(() => selected.value.kind === "actions");
279
277
  const selectedBottomActions = computed(() => selected.value.kind === "bottomActions");
@@ -539,7 +537,6 @@ function resolveSelection() {
539
537
  pickedColumnIds.value = pickedColumnIds.value.filter((id) => live.has(id));
540
538
  }
541
539
  const s = selected.value;
542
- if (s.kind === "ai") return;
543
540
  if (s.kind === "general") return;
544
541
  if (s.kind === "actions") return;
545
542
  if (s.kind === "bottomActions") return;
@@ -548,9 +545,6 @@ function resolveSelection() {
548
545
  if (s.kind === "column" && findColumn(s.id)) return;
549
546
  selected.value = { kind: "general" };
550
547
  }
551
- function selectAi() {
552
- selected.value = { kind: "ai" };
553
- }
554
548
  function selectGeneral() {
555
549
  selected.value = { kind: "general" };
556
550
  }
@@ -1173,21 +1167,6 @@ const tableQueryValue = computed({
1173
1167
  >
1174
1168
  <ScrollArea class="flex-1">
1175
1169
  <div class="flex flex-col gap-1">
1176
- <div
1177
- v-if="!hideDataSource"
1178
- class="row general-row pl-2"
1179
- :class="[
1180
- selectedAi ? 'bg-[color-mix(in_srgb,var(--primary)_10%,white)] text-(--primary)' : 'text-zinc-600 hover:bg-zinc-50'
1181
- ]"
1182
- @click.stop="selectAi()"
1183
- >
1184
- <Icon
1185
- icon="fluent:sparkle-20-regular"
1186
- class="size-4 shrink-0"
1187
- />
1188
- <span class="flex-1 truncate">AI 生成</span>
1189
- </div>
1190
-
1191
1170
  <div
1192
1171
  class="row general-row pl-2"
1193
1172
  :class="[
@@ -1396,18 +1375,7 @@ const tableQueryValue = computed({
1396
1375
  </div>
1397
1376
 
1398
1377
  <div class="flex min-h-0 min-w-0 flex-1 flex-col">
1399
- <!-- The AI chat owns the full right pane and manages its own scroll /
1400
- composer, so it replaces (not nests inside) the section ScrollArea.
1401
- `min-w-0` lets this flex item shrink below its content's intrinsic
1402
- width — without it a long tool-call `<pre>` forces the pane (and the
1403
- whole editor dialog) wider than the viewport. -->
1404
- <TableAiGenerate
1405
- v-if="selectedAi"
1406
- v-model="config"
1407
- :configure="configure"
1408
- />
1409
1378
  <ScrollArea
1410
- v-else
1411
1379
  class="flex-1"
1412
1380
  >
1413
1381
  <div
@@ -9,11 +9,11 @@ type __VLS_ModelProps = {
9
9
  modelValue: AnyRecord;
10
10
  };
11
11
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
12
- declare var __VLS_234: {}, __VLS_236: {};
12
+ declare var __VLS_224: {}, __VLS_226: {};
13
13
  type __VLS_Slots = {} & {
14
- 'general-grid-extra'?: (props: typeof __VLS_234) => any;
14
+ 'general-grid-extra'?: (props: typeof __VLS_224) => any;
15
15
  } & {
16
- 'general-extra'?: (props: typeof __VLS_236) => any;
16
+ 'general-extra'?: (props: typeof __VLS_226) => any;
17
17
  };
18
18
  declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
19
  "update:modelValue": (value: AnyRecord) => any;
@@ -60,7 +60,13 @@ useDerived({
60
60
  evaluate: (expression) => $cel(expression),
61
61
  ready: Promise.resolve(),
62
62
  formState,
63
- quiescence: useDerivedQuiescence()
63
+ quiescence: useDerivedQuiescence(),
64
+ // Selection cells publish into the row's registry only once their (typically
65
+ // remote) options land and resolve the stored key — after the first
66
+ // derivation pass, and outside form state. Without this dependency a cell
67
+ // reading `selections["<column-id>"]` evaluates once against an empty
68
+ // registry and never recomputes. Mirrors the form host and the list row.
69
+ dependencies: () => selections.entries.value
64
70
  });
65
71
  defineExpose({ evaluate: (expression) => Effect.runSync($cel(expression)) });
66
72
  </script>
@@ -141,6 +141,35 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
141
141
  readonly displayName?: string | undefined;
142
142
  readonly columns: readonly any[];
143
143
  readonly kind: "shwfed.component.table";
144
+ readonly query?: {
145
+ readonly style?: string | undefined;
146
+ readonly id?: string | undefined;
147
+ readonly initial?: {
148
+ readonly data: string;
149
+ readonly request?: string | undefined;
150
+ } | undefined;
151
+ readonly displayName?: string | undefined;
152
+ readonly kind: "shwfed.component.form";
153
+ readonly fields: readonly any[];
154
+ readonly layouts: readonly {
155
+ readonly name: string;
156
+ readonly layout: {
157
+ readonly style?: string | undefined;
158
+ readonly columns: number;
159
+ readonly gap?: number | undefined;
160
+ readonly rows?: number | undefined;
161
+ readonly placements: {
162
+ readonly [x: string]: {
163
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
164
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
165
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
166
+ };
167
+ };
168
+ };
169
+ readonly media?: string | undefined;
170
+ }[];
171
+ readonly readonly?: string | undefined;
172
+ } | undefined;
144
173
  readonly groups: readonly {
145
174
  readonly id: string;
146
175
  readonly title?: readonly [{
@@ -225,35 +254,6 @@ export declare function TableConfig(configure: (env: Environment) => void): Sche
225
254
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
226
255
  }[];
227
256
  } | undefined;
228
- readonly query?: {
229
- readonly style?: string | undefined;
230
- readonly id?: string | undefined;
231
- readonly initial?: {
232
- readonly data: string;
233
- readonly request?: string | undefined;
234
- } | undefined;
235
- readonly displayName?: string | undefined;
236
- readonly kind: "shwfed.component.form";
237
- readonly fields: readonly any[];
238
- readonly layouts: readonly {
239
- readonly name: string;
240
- readonly layout: {
241
- readonly style?: string | undefined;
242
- readonly columns: number;
243
- readonly gap?: number | undefined;
244
- readonly rows?: number | undefined;
245
- readonly placements: {
246
- readonly [x: string]: {
247
- readonly area: readonly [readonly [number, number], readonly [number, number]];
248
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
249
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
250
- };
251
- };
252
- };
253
- readonly media?: string | undefined;
254
- }[];
255
- readonly readonly?: string | undefined;
256
- } | undefined;
257
257
  readonly dataSource?: {
258
258
  readonly data: string;
259
259
  readonly total?: string | undefined;
@@ -810,6 +810,35 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
810
810
  id?: string | undefined;
811
811
  displayName?: string | undefined;
812
812
  columns: readonly any[];
813
+ query?: {
814
+ readonly style?: string | undefined;
815
+ readonly id?: string | undefined;
816
+ readonly initial?: {
817
+ readonly data: string;
818
+ readonly request?: string | undefined;
819
+ } | undefined;
820
+ readonly displayName?: string | undefined;
821
+ readonly kind: "shwfed.component.form";
822
+ readonly fields: readonly any[];
823
+ readonly layouts: readonly {
824
+ readonly name: string;
825
+ readonly layout: {
826
+ readonly style?: string | undefined;
827
+ readonly columns: number;
828
+ readonly gap?: number | undefined;
829
+ readonly rows?: number | undefined;
830
+ readonly placements: {
831
+ readonly [x: string]: {
832
+ readonly area: readonly [readonly [number, number], readonly [number, number]];
833
+ readonly v?: "stretch" | "center" | "end" | "start" | undefined;
834
+ readonly h?: "stretch" | "center" | "end" | "start" | undefined;
835
+ };
836
+ };
837
+ };
838
+ readonly media?: string | undefined;
839
+ }[];
840
+ readonly readonly?: string | undefined;
841
+ } | undefined;
813
842
  groups: readonly {
814
843
  readonly id: string;
815
844
  readonly title?: readonly [{
@@ -894,35 +923,6 @@ export declare function createTableConfig(body: Omit<Schema.Schema.Type<ReturnTy
894
923
  readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
895
924
  }[];
896
925
  } | undefined;
897
- query?: {
898
- readonly style?: string | undefined;
899
- readonly id?: string | undefined;
900
- readonly initial?: {
901
- readonly data: string;
902
- readonly request?: string | undefined;
903
- } | undefined;
904
- readonly displayName?: string | undefined;
905
- readonly kind: "shwfed.component.form";
906
- readonly fields: readonly any[];
907
- readonly layouts: readonly {
908
- readonly name: string;
909
- readonly layout: {
910
- readonly style?: string | undefined;
911
- readonly columns: number;
912
- readonly gap?: number | undefined;
913
- readonly rows?: number | undefined;
914
- readonly placements: {
915
- readonly [x: string]: {
916
- readonly area: readonly [readonly [number, number], readonly [number, number]];
917
- readonly v?: "stretch" | "center" | "end" | "start" | undefined;
918
- readonly h?: "stretch" | "center" | "end" | "start" | undefined;
919
- };
920
- };
921
- };
922
- readonly media?: string | undefined;
923
- }[];
924
- readonly readonly?: string | undefined;
925
- } | undefined;
926
926
  dataSource?: {
927
927
  readonly data: string;
928
928
  readonly total?: string | undefined;
@@ -1,4 +1,5 @@
1
1
  import { JSONSchema, ParseResult, Schema } from "effect";
2
+ import { getCelCatalog } from "../../../utils/cel-catalog.js";
2
3
  import { coerceFromString } from "../../../share/coerce-from-string.js";
3
4
  import { Expression, HttpRequestResult } from "../../../share/expression.js";
4
5
  import {
@@ -10,7 +11,7 @@ import {
10
11
  import { metadata as formMetadata } from "../../form/schema.js";
11
12
  import { registerRowVariablesIfAbsent } from "./shared.js";
12
13
  import { activeColumns } from "./resolve.js";
13
- import { createQueryFieldTools } from "../../form/utils/ai-field-tools.js";
14
+ import { createFormFieldTools } from "../../form/utils/ai-field-tools.js";
14
15
  const HARNESS_KEYS = ["id", "groupId", "compatibilityDate"];
15
16
  function publicColumnSchema(entry, configure) {
16
17
  return entry.schema(configure).pipe(Schema.omit(...HARNESS_KEYS));
@@ -81,7 +82,7 @@ function safeJsonSchema(schema) {
81
82
  export function createTableAiTools(deps) {
82
83
  const dataSourceSchemas = buildDataSourceExpressionSchemas(deps.configure);
83
84
  const rowKeySchema = buildRowKeyExpressionSchema(deps.configure);
84
- const queryFieldTools = createQueryFieldTools({
85
+ const queryFieldTools = createFormFieldTools({
85
86
  read: () => deps.read().query,
86
87
  write: (next) => {
87
88
  const working = deps.read();
@@ -109,7 +110,7 @@ export function createTableAiTools(deps) {
109
110
  },
110
111
  {
111
112
  name: "describe_specific_column_type",
112
- description: "Return the JSON Schema (without `id`/`groupId` \u2014 those are managed by the harness) and the default values for one column type. Call this before `insert_column` to learn the field contract. Deprecated types are not accepted.",
113
+ description: "Return the JSON Schema (without `id`/`groupId` \u2014 those are managed by the harness), the default values, and \u2014 when the type has one \u2014 a prose `guide` (when to use it, config recipe, gotchas) for one column type. Call this before `insert_column` to learn the field contract. Deprecated types are not accepted.",
113
114
  inputJsonSchema: {
114
115
  type: "object",
115
116
  properties: {
@@ -134,15 +135,17 @@ export function createTableAiTools(deps) {
134
135
  } catch {
135
136
  jsonSchema = "(schema unavailable)";
136
137
  }
137
- return {
138
+ const result = {
138
139
  schema: jsonSchema,
139
140
  defaults: entry.defaults?.() ?? null
140
141
  };
142
+ if (entry.prompt !== void 0) result.guide = entry.prompt;
143
+ return result;
141
144
  }
142
145
  },
143
146
  {
144
147
  name: "describe_general_settings",
145
- description: "Return the schema and current values for the table's general settings: `displayName` (internal label), `dataSource` (HTTP request / data extraction / total \u2014 each with its own CEL scope and available variables baked into the JSON Schema description), `rowKey` (per-row CEL expression evaluated against `row` / `index`), and the `pagination` toggle's current on/off state. Call this first when configuring a fresh table from API documentation; the CEL expressions reference the same scopes the inline UI validates against, so what you learn here is what the setters accept.",
148
+ description: "Return the schema and current values for the table's general settings: `displayName` (internal label), `dataSource` (HTTP request / data extraction / total \u2014 each with its own CEL scope and available variables baked into the JSON Schema description), `rowKey` (per-row CEL expression evaluated against `row` / `index`), and the `pagination` toggle's current on/off state, plus `celFunctions` \u2014 the CEL operator & function catalog. Call this first when configuring a fresh table from API documentation; the CEL expressions reference the same scopes the inline UI validates against, so what you learn here is what the setters accept.",
146
149
  inputJsonSchema: {
147
150
  type: "object",
148
151
  properties: {},
@@ -217,7 +220,13 @@ export function createTableAiTools(deps) {
217
220
  kind: "toggle",
218
221
  enabled: working.pagination !== void 0
219
222
  }
220
- ]
223
+ ],
224
+ // The CEL operator & function catalog for the expressions above. The
225
+ // per-field variable scopes are already baked into each `jsonSchema`
226
+ // description (request / data / total / rowKey scopes differ), so this
227
+ // is the language reference half — extends the inlined-CEL pattern
228
+ // rather than duplicating the variable tables.
229
+ celFunctions: getCelCatalog()
221
230
  };
222
231
  }
223
232
  },
@@ -501,7 +510,7 @@ ${fieldErrors.map((e) => `- ${e}`).join("\n")}`;
501
510
  return targets;
502
511
  }
503
512
  },
504
- // ---- 搜索条件(query = 一个 FormConfig;字段工具镜像列工具,放置为新增)----
513
+ // ---- 搜索条件(query = 一个 FormConfig;通用 `*_field*` 族,放置为新增)----
505
514
  ...queryFieldTools
506
515
  ];
507
516
  }