@shwfed/config 2.4.0 → 2.5.0

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 (315) hide show
  1. package/dist/mcp.mjs +128 -27
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{config-Bxkq2ZRm.js → config-BkytEQN5.js} +1 -1
  4. package/dist/preview/assets/{config-BdFIFUa_.js → config-CK011_jJ.js} +1 -1
  5. package/dist/preview/assets/{config-BcQQl4v6.js → config-C_bBX0wD.js} +1 -1
  6. package/dist/preview/assets/{config-CHHX7vhb.js → config-Cbn8o9BY.js} +1 -1
  7. package/dist/preview/assets/{config-CZ0f5xdI.js → config-DYL6kHr3.js} +1 -1
  8. package/dist/preview/assets/{config-Ddh8pxIi.js → config-Dx0zHfGt.js} +1 -1
  9. package/dist/preview/assets/{config-D9xGgFnF.js → config-E-DM6b5t.js} +1 -1
  10. package/dist/preview/assets/{config-C32yfrlg.js → config-PjseWUbC.js} +1 -1
  11. package/dist/preview/assets/{config-Bi9F-Jdh.js → config-dwcdYHd4.js} +1 -1
  12. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-C_cjxvm1.js → definition.vue_vue_type_script_setup_true_lang-uJFJXxli.js} +1 -1
  13. package/dist/preview/assets/index-7MVXgV5n.css +1 -0
  14. package/dist/preview/assets/index-CmPiZG_4.js +1 -0
  15. package/dist/preview/assets/index-x-77enex.js +668 -0
  16. package/dist/preview/assets/runtime-BRMGkqSr.js +1 -0
  17. package/dist/preview/assets/runtime-CHLboM_z.js +1 -0
  18. package/dist/preview/assets/runtime-CeHdesjP.js +1 -0
  19. package/dist/preview/assets/runtime-D4_9FCLy.js +1 -0
  20. package/dist/preview/assets/runtime-DHBTDws7.js +1 -0
  21. package/dist/preview/assets/runtime-DJHpCLnr.js +1 -0
  22. package/dist/preview/assets/runtime-DKq86fZU.js +1 -0
  23. package/dist/preview/assets/runtime-DjpjaNec.js +1 -0
  24. package/dist/preview/assets/runtime-ZQryOEKm.js +1 -0
  25. package/dist/preview/index.html +2 -2
  26. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json/runtime.vue +7 -4
  27. package/dist/runtime/components/actions/buttons/2026-04-18/com.shwfed.actions.button.http.request.json.confirm/runtime.vue +6 -0
  28. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +1 -1
  29. package/dist/runtime/components/form/ValidationRulesField.d.vue.ts +16 -0
  30. package/dist/runtime/components/form/ValidationRulesField.vue +207 -0
  31. package/dist/runtime/components/form/ValidationRulesField.vue.d.ts +16 -0
  32. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/config.d.vue.ts +24 -0
  33. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/config.vue.d.ts +24 -0
  34. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.markdown/schema.d.ts +18 -0
  35. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.d.vue.ts +24 -0
  36. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue +38 -0
  37. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue.d.ts +24 -0
  38. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +18 -2
  39. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts +18 -0
  40. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/config.d.vue.ts +24 -0
  41. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/config.vue +38 -0
  42. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/config.vue.d.ts +24 -0
  43. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/runtime.vue +18 -2
  44. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.textarea/schema.d.ts +18 -0
  45. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/config.d.vue.ts +24 -0
  46. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/config.vue.d.ts +24 -0
  47. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.actions/schema.d.ts +18 -0
  48. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/config.d.vue.ts +24 -0
  49. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/config.vue.d.ts +24 -0
  50. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/schema.d.ts +18 -0
  51. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/config.d.vue.ts +24 -0
  52. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/config.vue +38 -0
  53. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/config.vue.d.ts +24 -0
  54. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/runtime.vue +18 -2
  55. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.date/schema.d.ts +18 -0
  56. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.d.vue.ts +24 -0
  57. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue +38 -0
  58. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue.d.ts +24 -0
  59. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/runtime.vue +18 -2
  60. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/schema.d.ts +18 -0
  61. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.d.vue.ts +24 -0
  62. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.vue +38 -0
  63. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/config.vue.d.ts +24 -0
  64. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/runtime.vue +18 -2
  65. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetime/schema.d.ts +18 -0
  66. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.d.vue.ts +24 -0
  67. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue +38 -0
  68. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue.d.ts +24 -0
  69. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/runtime.vue +18 -2
  70. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/schema.d.ts +18 -0
  71. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/config.d.vue.ts +24 -0
  72. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/config.vue +38 -0
  73. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/config.vue.d.ts +24 -0
  74. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/runtime.vue +18 -2
  75. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.time/schema.d.ts +18 -0
  76. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.d.vue.ts +24 -0
  77. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.vue +38 -0
  78. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.vue.d.ts +24 -0
  79. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/runtime.vue +18 -2
  80. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/schema.d.ts +18 -0
  81. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts +24 -0
  82. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue +38 -0
  83. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue.d.ts +24 -0
  84. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +18 -2
  85. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.d.ts +18 -0
  86. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.d.vue.ts +24 -0
  87. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.vue +38 -0
  88. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.vue.d.ts +24 -0
  89. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/runtime.vue +18 -2
  90. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/schema.d.ts +18 -0
  91. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/config.d.vue.ts +24 -0
  92. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/config.vue +38 -0
  93. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/config.vue.d.ts +24 -0
  94. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/runtime.vue +18 -2
  95. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/schema.d.ts +18 -0
  96. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/config.d.vue.ts +24 -0
  97. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/config.vue.d.ts +24 -0
  98. package/dist/runtime/components/form/fields/2026-04-29/com.shwfed.form.field.combobox.single/schema.d.ts +18 -0
  99. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/config.d.vue.ts +24 -0
  100. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/config.vue +38 -0
  101. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/config.vue.d.ts +24 -0
  102. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/runtime.vue +18 -2
  103. package/dist/runtime/components/form/fields/2026-05-12/com.shwfed.form.field.upload/schema.d.ts +18 -0
  104. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/config.d.vue.ts +24 -0
  105. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/config.vue +38 -0
  106. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/config.vue.d.ts +24 -0
  107. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/runtime.vue +18 -2
  108. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/schema.d.ts +18 -0
  109. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/config.d.vue.ts +24 -0
  110. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/config.vue +38 -0
  111. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/config.vue.d.ts +24 -0
  112. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/runtime.vue +18 -2
  113. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.list/schema.d.ts +30 -0
  114. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/config.d.vue.ts +24 -0
  115. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/config.vue +38 -0
  116. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/config.vue.d.ts +24 -0
  117. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/runtime.vue +18 -2
  118. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.checkbox.group/schema.d.ts +18 -0
  119. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/config.d.vue.ts +24 -0
  120. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/config.vue +38 -0
  121. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/config.vue.d.ts +24 -0
  122. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/runtime.vue +18 -2
  123. package/dist/runtime/components/form/fields/2026-05-17/com.shwfed.form.field.radio.group/schema.d.ts +18 -0
  124. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/config.d.vue.ts +24 -0
  125. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/config.vue +51 -9
  126. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/config.vue.d.ts +24 -0
  127. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/runtime.vue +22 -2
  128. package/dist/runtime/components/form/fields/2026-05-18/com.shwfed.form.field.table/schema.d.ts +18 -0
  129. package/dist/runtime/components/form/fields/2026-05-20/com.shwfed.form.field.collapsible/runtime.vue +26 -0
  130. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +24 -0
  131. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +24 -0
  132. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/schema.d.ts +18 -0
  133. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/config.d.vue.ts +24 -0
  134. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/config.vue +38 -0
  135. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/config.vue.d.ts +24 -0
  136. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/runtime.vue +18 -2
  137. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.month/schema.d.ts +18 -0
  138. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.d.vue.ts +24 -0
  139. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue +38 -0
  140. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue.d.ts +24 -0
  141. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/runtime.vue +18 -2
  142. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/schema.d.ts +18 -0
  143. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/config.d.vue.ts +24 -0
  144. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/config.vue.d.ts +24 -0
  145. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/schema.d.ts +18 -0
  146. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +24 -0
  147. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +24 -0
  148. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +18 -0
  149. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +24 -0
  150. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +24 -0
  151. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/schema.d.ts +18 -0
  152. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.d.vue.ts +24 -0
  153. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.vue +38 -0
  154. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.vue.d.ts +24 -0
  155. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/runtime.vue +18 -2
  156. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/schema.d.ts +18 -0
  157. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.d.vue.ts +24 -0
  158. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.vue +38 -0
  159. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.vue.d.ts +24 -0
  160. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/runtime.vue +18 -2
  161. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/schema.d.ts +18 -0
  162. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +24 -0
  163. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue +38 -0
  164. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +24 -0
  165. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +18 -2
  166. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +18 -0
  167. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +24 -0
  168. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue +38 -0
  169. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +24 -0
  170. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +18 -2
  171. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.d.ts +18 -0
  172. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +24 -0
  173. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue +38 -0
  174. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +24 -0
  175. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/runtime.vue +18 -2
  176. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.d.ts +18 -0
  177. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +24 -0
  178. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue +38 -0
  179. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +24 -0
  180. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/runtime.vue +18 -2
  181. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.d.ts +18 -0
  182. package/dist/runtime/components/form/index.d.vue.ts +1 -0
  183. package/dist/runtime/components/form/index.vue +14 -18
  184. package/dist/runtime/components/form/index.vue.d.ts +1 -0
  185. package/dist/runtime/components/form/schema.d.ts +2 -10
  186. package/dist/runtime/components/form/schema.js +2 -5
  187. package/dist/runtime/components/form/utils/cel-scope.d.ts +12 -3
  188. package/dist/runtime/components/form/utils/cel-scope.js +17 -18
  189. package/dist/runtime/components/form/utils/common.d.ts +42 -0
  190. package/dist/runtime/components/form/utils/common.js +40 -2
  191. package/dist/runtime/components/form/utils/form-vars.d.ts +19 -0
  192. package/dist/runtime/components/form/utils/form-vars.js +5 -0
  193. package/dist/runtime/components/form/utils/validation.d.ts +85 -0
  194. package/dist/runtime/components/form/utils/validation.js +113 -0
  195. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.date/config.vue +20 -8
  196. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.date/schema.d.ts +1 -0
  197. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.icon/config.vue +20 -8
  198. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.icon/schema.d.ts +1 -0
  199. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.number/config.vue +20 -8
  200. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.number/schema.d.ts +1 -0
  201. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.text/config.vue +20 -8
  202. package/dist/runtime/components/table/columns/2026-04-14/com.shwfed.table.column.text/schema.d.ts +1 -0
  203. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch/config.vue +20 -8
  204. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch/schema.d.ts +1 -0
  205. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch.remote/config.vue +20 -8
  206. package/dist/runtime/components/table/columns/2026-05-13/com.shwfed.table.column.switch.remote/schema.d.ts +1 -0
  207. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -0
  208. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.combobox-single/config.vue +20 -8
  209. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -0
  210. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.combobox-single/schema.d.ts +1 -0
  211. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/config.vue +20 -7
  212. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/schema.d.ts +1 -0
  213. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch/config.vue +20 -8
  214. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch/schema.d.ts +1 -0
  215. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch.local/config.vue +20 -8
  216. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.switch.local/schema.d.ts +1 -0
  217. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/config.vue +20 -8
  218. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/schema.d.ts +1 -0
  219. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -0
  220. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue +20 -8
  221. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -0
  222. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/schema.d.ts +1 -0
  223. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -0
  224. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue +20 -8
  225. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -0
  226. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/schema.d.ts +1 -0
  227. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -0
  228. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi/config.vue +20 -8
  229. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -0
  230. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi/schema.d.ts +1 -0
  231. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -0
  232. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue +20 -8
  233. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -0
  234. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/schema.d.ts +1 -0
  235. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -0
  236. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue +20 -8
  237. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -0
  238. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/schema.d.ts +1 -0
  239. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -0
  240. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi/config.vue +20 -8
  241. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -0
  242. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi/schema.d.ts +1 -0
  243. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -0
  244. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue +20 -8
  245. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -0
  246. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/schema.d.ts +1 -0
  247. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -0
  248. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single/config.vue +20 -8
  249. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -0
  250. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single/schema.d.ts +1 -0
  251. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -0
  252. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue +20 -8
  253. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -0
  254. package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/schema.d.ts +1 -0
  255. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -0
  256. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue +20 -7
  257. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -0
  258. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/schema.d.ts +1 -0
  259. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -0
  260. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue +20 -7
  261. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -0
  262. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/schema.d.ts +1 -0
  263. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -0
  264. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue +20 -8
  265. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -0
  266. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/schema.d.ts +1 -0
  267. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/schema.js +2 -1
  268. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -0
  269. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue +20 -8
  270. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -0
  271. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/schema.d.ts +1 -0
  272. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/schema.js +2 -1
  273. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +2 -0
  274. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue +20 -7
  275. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +2 -0
  276. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/schema.d.ts +1 -0
  277. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +2 -0
  278. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue +20 -7
  279. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +2 -0
  280. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/schema.d.ts +1 -0
  281. package/dist/runtime/components/table/config.d.vue.ts +4 -2
  282. package/dist/runtime/components/table/config.vue +25 -45
  283. package/dist/runtime/components/table/config.vue.d.ts +4 -2
  284. package/dist/runtime/components/table/index.vue +22 -2
  285. package/dist/runtime/components/table/schema.d.ts +4 -2
  286. package/dist/runtime/components/table/schema.js +69 -13
  287. package/dist/runtime/components/table/utils/shared.d.ts +2 -0
  288. package/dist/runtime/components/table/utils/shared.js +12 -4
  289. package/dist/runtime/components/ui/field/FieldError.vue +1 -1
  290. package/dist/runtime/components/ui/field/FieldMessages.d.vue.ts +9 -0
  291. package/dist/runtime/components/ui/field/FieldMessages.vue +21 -0
  292. package/dist/runtime/components/ui/field/FieldMessages.vue.d.ts +9 -0
  293. package/dist/runtime/components/ui/field/FieldWarning.d.vue.ts +20 -0
  294. package/dist/runtime/components/ui/field/FieldWarning.vue +51 -0
  295. package/dist/runtime/components/ui/field/FieldWarning.vue.d.ts +20 -0
  296. package/dist/runtime/components/ui/field/index.d.ts +2 -0
  297. package/dist/runtime/components/ui/field/index.js +10 -4
  298. package/dist/runtime/components/ui/locale/Locale.d.vue.ts +2 -0
  299. package/dist/runtime/components/ui/locale/Locale.vue +165 -155
  300. package/dist/runtime/components/ui/locale/Locale.vue.d.ts +2 -0
  301. package/dist/runtime/share/form-validate.d.ts +18 -0
  302. package/dist/runtime/share/form-validate.js +8 -0
  303. package/package.json +1 -1
  304. package/dist/preview/assets/index-BqOX70Hd.css +0 -1
  305. package/dist/preview/assets/index-D-VR1i8D.js +0 -659
  306. package/dist/preview/assets/index-ihZGlPdX.js +0 -1
  307. package/dist/preview/assets/runtime-Bn8mqeDH.js +0 -1
  308. package/dist/preview/assets/runtime-Cc_Wk3o-.js +0 -1
  309. package/dist/preview/assets/runtime-CttAjIgg.js +0 -1
  310. package/dist/preview/assets/runtime-Cx4f2UTl.js +0 -1
  311. package/dist/preview/assets/runtime-D1dESjXR.js +0 -1
  312. package/dist/preview/assets/runtime-DIEP1Xbh.js +0 -1
  313. package/dist/preview/assets/runtime-DKceWuBx.js +0 -1
  314. package/dist/preview/assets/runtime-Dhid9O5c.js +0 -1
  315. package/dist/preview/assets/runtime-YMiqi6WY.js +0 -1
@@ -22,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
22
22
  readonly locale: "en" | "ja" | "ko";
23
23
  readonly message: string;
24
24
  }[]] | undefined;
25
+ readonly required?: string | undefined;
25
26
  readonly displayName?: string | undefined;
26
27
  readonly compatibilityDate: "2026-04-28";
27
28
  readonly readonly?: string | undefined;
@@ -30,6 +31,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
30
31
  readonly mode: "formula" | "prefill";
31
32
  readonly expression: string;
32
33
  } | undefined;
34
+ readonly validations?: readonly {
35
+ readonly message: readonly [{
36
+ readonly locale: "zh";
37
+ readonly message: string;
38
+ }, ...{
39
+ readonly locale: "en" | "ja" | "ko";
40
+ readonly message: string;
41
+ }[]];
42
+ readonly warning?: boolean | undefined;
43
+ readonly when: string;
44
+ }[] | undefined;
33
45
  readonly trueLabel?: readonly [{
34
46
  readonly locale: "zh";
35
47
  readonly message: string;
@@ -65,6 +77,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
65
77
  readonly locale: "en" | "ja" | "ko";
66
78
  readonly message: string;
67
79
  }[]] | undefined;
80
+ readonly required?: string | undefined;
68
81
  readonly displayName?: string | undefined;
69
82
  readonly compatibilityDate: "2026-04-28";
70
83
  readonly readonly?: string | undefined;
@@ -73,6 +86,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
73
86
  readonly mode: "formula" | "prefill";
74
87
  readonly expression: string;
75
88
  } | undefined;
89
+ readonly validations?: readonly {
90
+ readonly message: readonly [{
91
+ readonly locale: "zh";
92
+ readonly message: string;
93
+ }, ...{
94
+ readonly locale: "en" | "ja" | "ko";
95
+ readonly message: string;
96
+ }[]];
97
+ readonly warning?: boolean | undefined;
98
+ readonly when: string;
99
+ }[] | undefined;
76
100
  readonly trueLabel?: readonly [{
77
101
  readonly locale: "zh";
78
102
  readonly message: string;
@@ -5,9 +5,10 @@ import { useI18n } from "vue-i18n";
5
5
  import { cel as _rawCel } from "../../../../../utils/cel";
6
6
  import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
7
7
  import { getLocalizedText } from "../../../../../share/locale";
8
- import { Field, FieldLabel } from "../../../../ui/field";
8
+ import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
9
9
  import { Markdown } from "../../../../ui/markdown";
10
10
  import { Switch } from "../../../../ui/switch";
11
+ import { useFieldValidation } from "../../../utils/validation";
11
12
  import { useFormReadonly } from "../../../utils/readonly";
12
13
  import { useFormState } from "../../../utils/state";
13
14
  defineOptions({ name: "ShwfedSwitchFieldRuntime" });
@@ -44,6 +45,12 @@ const isReadonly = computed(
44
45
  () => props.config.readonly != null ? evalBool(props.config.readonly, "readonly") : formReadonly.value
45
46
  );
46
47
  const effectiveReadonly = computed(() => isReadonly.value || props.config.derived?.mode === "formula");
48
+ const { isRequired, errors, warnings, visible } = useFieldValidation({
49
+ fieldId: () => props.fieldId,
50
+ config: () => props.config,
51
+ $cel,
52
+ locale: () => locale.value
53
+ });
47
54
  const uncontrolled = ref(false);
48
55
  const model = computed({
49
56
  get: () => {
@@ -83,7 +90,11 @@ const model = computed({
83
90
  class="prose prose-xs prose-zinc"
84
91
  />
85
92
  </template>
86
- {{ labelText }}
93
+ {{ labelText }}<span
94
+ v-if="isRequired"
95
+ aria-hidden="true"
96
+ class="text-red-600"
97
+ > *</span>
87
98
  </FieldLabel>
88
99
  <div
89
100
  v-if="effectiveReadonly"
@@ -97,5 +108,10 @@ const model = computed({
97
108
  v-model="model"
98
109
  :disabled="isDisabled"
99
110
  />
111
+ <FieldMessages
112
+ v-if="visible"
113
+ :errors="errors"
114
+ :warnings="warnings"
115
+ />
100
116
  </Field>
101
117
  </template>
@@ -55,6 +55,24 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
55
55
  id: Schema.refine<string, typeof Schema.String>;
56
56
  displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
57
57
  hidden: Schema.optional<Schema.Schema<string, string, never>>;
58
+ required: Schema.optional<Schema.Schema<string, string, never>>;
59
+ validations: Schema.optional<Schema.Array$<Schema.Struct<{
60
+ when: Schema.Schema<string, string, never>;
61
+ warning: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
62
+ message: Schema.refine<readonly [{
63
+ readonly locale: "zh";
64
+ readonly message: string;
65
+ }, ...{
66
+ readonly locale: "en" | "ja" | "ko";
67
+ readonly message: string;
68
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
69
+ locale: Schema.Literal<["zh"]>;
70
+ message: Schema.SchemaClass<string, string, never>;
71
+ }>], [Schema.Struct<{
72
+ locale: Schema.Literal<["ja", "en", "ko"]>;
73
+ message: Schema.SchemaClass<string, string, never>;
74
+ }>]>>;
75
+ }>>>;
58
76
  type: Schema.Literal<["com.shwfed.form.field.switch"]>;
59
77
  compatibilityDate: Schema.Literal<["2026-04-28"]>;
60
78
  }>;
@@ -22,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
22
22
  readonly locale: "en" | "ja" | "ko";
23
23
  readonly message: string;
24
24
  }[]] | undefined;
25
+ readonly required?: string | undefined;
25
26
  readonly displayName?: string | undefined;
26
27
  readonly compatibilityDate: "2026-04-29";
27
28
  readonly items: readonly {
@@ -62,6 +63,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
62
63
  readonly mode: "formula" | "prefill";
63
64
  readonly expression: string;
64
65
  } | undefined;
66
+ readonly validations?: readonly {
67
+ readonly message: readonly [{
68
+ readonly locale: "zh";
69
+ readonly message: string;
70
+ }, ...{
71
+ readonly locale: "en" | "ja" | "ko";
72
+ readonly message: string;
73
+ }[]];
74
+ readonly warning?: boolean | undefined;
75
+ readonly when: string;
76
+ }[] | undefined;
65
77
  }) => any;
66
78
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
67
79
  "onUpdate:modelValue"?: ((value: {
@@ -83,6 +95,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
83
95
  readonly locale: "en" | "ja" | "ko";
84
96
  readonly message: string;
85
97
  }[]] | undefined;
98
+ readonly required?: string | undefined;
86
99
  readonly displayName?: string | undefined;
87
100
  readonly compatibilityDate: "2026-04-29";
88
101
  readonly items: readonly {
@@ -123,6 +136,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
123
136
  readonly mode: "formula" | "prefill";
124
137
  readonly expression: string;
125
138
  } | undefined;
139
+ readonly validations?: readonly {
140
+ readonly message: readonly [{
141
+ readonly locale: "zh";
142
+ readonly message: string;
143
+ }, ...{
144
+ readonly locale: "en" | "ja" | "ko";
145
+ readonly message: string;
146
+ }[]];
147
+ readonly warning?: boolean | undefined;
148
+ readonly when: string;
149
+ }[] | undefined;
126
150
  }) => any) | undefined;
127
151
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
128
152
  declare const _default: typeof __VLS_export;
@@ -22,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
22
22
  readonly locale: "en" | "ja" | "ko";
23
23
  readonly message: string;
24
24
  }[]] | undefined;
25
+ readonly required?: string | undefined;
25
26
  readonly displayName?: string | undefined;
26
27
  readonly compatibilityDate: "2026-04-29";
27
28
  readonly items: readonly {
@@ -62,6 +63,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
62
63
  readonly mode: "formula" | "prefill";
63
64
  readonly expression: string;
64
65
  } | undefined;
66
+ readonly validations?: readonly {
67
+ readonly message: readonly [{
68
+ readonly locale: "zh";
69
+ readonly message: string;
70
+ }, ...{
71
+ readonly locale: "en" | "ja" | "ko";
72
+ readonly message: string;
73
+ }[]];
74
+ readonly warning?: boolean | undefined;
75
+ readonly when: string;
76
+ }[] | undefined;
65
77
  }) => any;
66
78
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
67
79
  "onUpdate:modelValue"?: ((value: {
@@ -83,6 +95,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
83
95
  readonly locale: "en" | "ja" | "ko";
84
96
  readonly message: string;
85
97
  }[]] | undefined;
98
+ readonly required?: string | undefined;
86
99
  readonly displayName?: string | undefined;
87
100
  readonly compatibilityDate: "2026-04-29";
88
101
  readonly items: readonly {
@@ -123,6 +136,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
123
136
  readonly mode: "formula" | "prefill";
124
137
  readonly expression: string;
125
138
  } | undefined;
139
+ readonly validations?: readonly {
140
+ readonly message: readonly [{
141
+ readonly locale: "zh";
142
+ readonly message: string;
143
+ }, ...{
144
+ readonly locale: "en" | "ja" | "ko";
145
+ readonly message: string;
146
+ }[]];
147
+ readonly warning?: boolean | undefined;
148
+ readonly when: string;
149
+ }[] | undefined;
126
150
  }) => any) | undefined;
127
151
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
128
152
  declare const _default: typeof __VLS_export;
@@ -124,6 +124,24 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
124
124
  id: Schema.refine<string, typeof Schema.String>;
125
125
  displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
126
126
  hidden: Schema.optional<Schema.Schema<string, string, never>>;
127
+ required: Schema.optional<Schema.Schema<string, string, never>>;
128
+ validations: Schema.optional<Schema.Array$<Schema.Struct<{
129
+ when: Schema.Schema<string, string, never>;
130
+ warning: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
131
+ message: Schema.refine<readonly [{
132
+ readonly locale: "zh";
133
+ readonly message: string;
134
+ }, ...{
135
+ readonly locale: "en" | "ja" | "ko";
136
+ readonly message: string;
137
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
138
+ locale: Schema.Literal<["zh"]>;
139
+ message: Schema.SchemaClass<string, string, never>;
140
+ }>], [Schema.Struct<{
141
+ locale: Schema.Literal<["ja", "en", "ko"]>;
142
+ message: Schema.SchemaClass<string, string, never>;
143
+ }>]>>;
144
+ }>>>;
127
145
  type: Schema.Literal<["com.shwfed.form.field.combobox.single"]>;
128
146
  compatibilityDate: Schema.Literal<["2026-04-29"]>;
129
147
  }>;
@@ -34,6 +34,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
34
34
  readonly locale: "en" | "ja" | "ko";
35
35
  readonly message: string;
36
36
  }[]] | undefined;
37
+ readonly required?: string | undefined;
37
38
  readonly displayName?: string | undefined;
38
39
  readonly compatibilityDate: "2026-05-12";
39
40
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -46,6 +47,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
46
47
  }[]] | undefined;
47
48
  readonly readonly?: string | undefined;
48
49
  readonly binding?: string | undefined;
50
+ readonly validations?: readonly {
51
+ readonly message: readonly [{
52
+ readonly locale: "zh";
53
+ readonly message: string;
54
+ }, ...{
55
+ readonly locale: "en" | "ja" | "ko";
56
+ readonly message: string;
57
+ }[]];
58
+ readonly warning?: boolean | undefined;
59
+ readonly when: string;
60
+ }[] | undefined;
49
61
  readonly accept?: readonly string[] | undefined;
50
62
  readonly maxFileSize?: number | undefined;
51
63
  readonly maxTotalSize?: number | undefined;
@@ -91,6 +103,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
91
103
  readonly locale: "en" | "ja" | "ko";
92
104
  readonly message: string;
93
105
  }[]] | undefined;
106
+ readonly required?: string | undefined;
94
107
  readonly displayName?: string | undefined;
95
108
  readonly compatibilityDate: "2026-05-12";
96
109
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -103,6 +116,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
103
116
  }[]] | undefined;
104
117
  readonly readonly?: string | undefined;
105
118
  readonly binding?: string | undefined;
119
+ readonly validations?: readonly {
120
+ readonly message: readonly [{
121
+ readonly locale: "zh";
122
+ readonly message: string;
123
+ }, ...{
124
+ readonly locale: "en" | "ja" | "ko";
125
+ readonly message: string;
126
+ }[]];
127
+ readonly warning?: boolean | undefined;
128
+ readonly when: string;
129
+ }[] | undefined;
106
130
  readonly accept?: readonly string[] | undefined;
107
131
  readonly maxFileSize?: number | undefined;
108
132
  readonly maxTotalSize?: number | undefined;
@@ -8,6 +8,7 @@ import {
8
8
  DropdownMenuTrigger
9
9
  } from "../../../../ui/dropdown-menu";
10
10
  import { ExpressionEditor } from "../../../../ui/expression-editor";
11
+ import ValidationRulesField from "../../../ValidationRulesField.vue";
11
12
  import { Field, FieldLabel } from "../../../../ui/field";
12
13
  import { IconPicker } from "../../../../ui/icon-picker";
13
14
  import {
@@ -585,6 +586,26 @@ function setMultiple(v) {
585
586
  </div>
586
587
 
587
588
  <div class="grid grid-cols-3 gap-3">
589
+ <Field orientation="vertical">
590
+ <FieldLabel class="text-xs text-zinc-500">
591
+ <template #tooltip>
592
+ <Markdown
593
+ :source="fieldDescription('required') ?? '\u8FD4\u56DE `true` \u65F6\u663E\u793A\u5FC5\u586B\u661F\u53F7\u5E76\u8981\u6C42\u975E\u7A7A'"
594
+ block
595
+ class="prose prose-sm prose-zinc"
596
+ />
597
+ </template>
598
+ {{ fieldTitle("required") }}
599
+ </FieldLabel>
600
+ <ExpressionEditor
601
+ :model-value="value.required ?? ''"
602
+ placeholder="例:form.type == 'company'"
603
+ result-type="bool"
604
+ class="min-h-10"
605
+ @update:model-value="(v) => value = { ...value, required: v.length > 0 ? v : void 0 }"
606
+ />
607
+ </Field>
608
+
588
609
  <Field orientation="vertical">
589
610
  <FieldLabel class="text-xs text-zinc-500">
590
611
  <template #tooltip>
@@ -645,5 +666,22 @@ function setMultiple(v) {
645
666
  />
646
667
  </Field>
647
668
  </div>
669
+
670
+ <Field orientation="vertical">
671
+ <FieldLabel class="text-xs text-zinc-500">
672
+ <template #tooltip>
673
+ <Markdown
674
+ :source="fieldDescription('validations')"
675
+ block
676
+ class="prose prose-sm prose-zinc"
677
+ />
678
+ </template>
679
+ {{ fieldTitle("validations") }}
680
+ </FieldLabel>
681
+ <ValidationRulesField
682
+ :model-value="value.validations"
683
+ @update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
684
+ />
685
+ </Field>
648
686
  </div>
649
687
  </template>
@@ -34,6 +34,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
34
34
  readonly locale: "en" | "ja" | "ko";
35
35
  readonly message: string;
36
36
  }[]] | undefined;
37
+ readonly required?: string | undefined;
37
38
  readonly displayName?: string | undefined;
38
39
  readonly compatibilityDate: "2026-05-12";
39
40
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -46,6 +47,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
46
47
  }[]] | undefined;
47
48
  readonly readonly?: string | undefined;
48
49
  readonly binding?: string | undefined;
50
+ readonly validations?: readonly {
51
+ readonly message: readonly [{
52
+ readonly locale: "zh";
53
+ readonly message: string;
54
+ }, ...{
55
+ readonly locale: "en" | "ja" | "ko";
56
+ readonly message: string;
57
+ }[]];
58
+ readonly warning?: boolean | undefined;
59
+ readonly when: string;
60
+ }[] | undefined;
49
61
  readonly accept?: readonly string[] | undefined;
50
62
  readonly maxFileSize?: number | undefined;
51
63
  readonly maxTotalSize?: number | undefined;
@@ -91,6 +103,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
91
103
  readonly locale: "en" | "ja" | "ko";
92
104
  readonly message: string;
93
105
  }[]] | undefined;
106
+ readonly required?: string | undefined;
94
107
  readonly displayName?: string | undefined;
95
108
  readonly compatibilityDate: "2026-05-12";
96
109
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -103,6 +116,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
103
116
  }[]] | undefined;
104
117
  readonly readonly?: string | undefined;
105
118
  readonly binding?: string | undefined;
119
+ readonly validations?: readonly {
120
+ readonly message: readonly [{
121
+ readonly locale: "zh";
122
+ readonly message: string;
123
+ }, ...{
124
+ readonly locale: "en" | "ja" | "ko";
125
+ readonly message: string;
126
+ }[]];
127
+ readonly warning?: boolean | undefined;
128
+ readonly when: string;
129
+ }[] | undefined;
106
130
  readonly accept?: readonly string[] | undefined;
107
131
  readonly maxFileSize?: number | undefined;
108
132
  readonly maxTotalSize?: number | undefined;
@@ -9,9 +9,10 @@ import { cel as _rawCel } from "../../../../../utils/cel";
9
9
  import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
10
10
  import { getLocalizedText } from "../../../../../share/locale";
11
11
  import { Button } from "../../../../ui/button";
12
- import { Field, FieldLabel } from "../../../../ui/field";
12
+ import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
13
13
  import { Markdown } from "../../../../ui/markdown";
14
14
  import { DEFAULT_FIELD_ORIENTATION } from "../../../utils/common";
15
+ import { useFieldValidation } from "../../../utils/validation";
15
16
  import { useFormReadonly } from "../../../utils/readonly";
16
17
  import { useFormState } from "../../../utils/state";
17
18
  const ICONS = {
@@ -113,6 +114,12 @@ const formReadonly = useFormReadonly();
113
114
  const isReadonly = computed(
114
115
  () => props.config.readonly != null ? evalBool(props.config.readonly, "readonly") : formReadonly.value
115
116
  );
117
+ const { isRequired, errors, warnings, visible } = useFieldValidation({
118
+ fieldId: () => props.fieldId,
119
+ config: () => props.config,
120
+ $cel,
121
+ locale: () => locale.value
122
+ });
116
123
  const uncontrolled = ref([]);
117
124
  const files = computed({
118
125
  get: () => {
@@ -267,7 +274,11 @@ async function onDownloadTemplate() {
267
274
  class="prose prose-xs prose-zinc"
268
275
  />
269
276
  </template>
270
- {{ labelText }}
277
+ {{ labelText }}<span
278
+ v-if="isRequired"
279
+ aria-hidden="true"
280
+ class="text-red-600"
281
+ > *</span>
271
282
  </FieldLabel>
272
283
 
273
284
  <div
@@ -387,5 +398,10 @@ async function onDownloadTemplate() {
387
398
  </Button>
388
399
  </div>
389
400
  </div>
401
+ <FieldMessages
402
+ v-if="visible"
403
+ :errors="errors"
404
+ :warnings="warnings"
405
+ />
390
406
  </Field>
391
407
  </template>
@@ -81,6 +81,24 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
81
81
  id: Schema.refine<string, typeof Schema.String>;
82
82
  displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
83
83
  hidden: Schema.optional<Schema.Schema<string, string, never>>;
84
+ required: Schema.optional<Schema.Schema<string, string, never>>;
85
+ validations: Schema.optional<Schema.Array$<Schema.Struct<{
86
+ when: Schema.Schema<string, string, never>;
87
+ warning: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
88
+ message: Schema.refine<readonly [{
89
+ readonly locale: "zh";
90
+ readonly message: string;
91
+ }, ...{
92
+ readonly locale: "en" | "ja" | "ko";
93
+ readonly message: string;
94
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
95
+ locale: Schema.Literal<["zh"]>;
96
+ message: Schema.SchemaClass<string, string, never>;
97
+ }>], [Schema.Struct<{
98
+ locale: Schema.Literal<["ja", "en", "ko"]>;
99
+ message: Schema.SchemaClass<string, string, never>;
100
+ }>]>>;
101
+ }>>>;
84
102
  type: Schema.Literal<["com.shwfed.form.field.upload"]>;
85
103
  compatibilityDate: Schema.Literal<["2026-05-12"]>;
86
104
  }>;
@@ -22,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
22
22
  readonly locale: "en" | "ja" | "ko";
23
23
  readonly message: string;
24
24
  }[]] | undefined;
25
+ readonly required?: string | undefined;
25
26
  readonly displayName?: string | undefined;
26
27
  readonly compatibilityDate: "2026-05-13";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -40,6 +41,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
40
41
  readonly expression: string;
41
42
  } | undefined;
42
43
  readonly options: string;
44
+ readonly validations?: readonly {
45
+ readonly message: readonly [{
46
+ readonly locale: "zh";
47
+ readonly message: string;
48
+ }, ...{
49
+ readonly locale: "en" | "ja" | "ko";
50
+ readonly message: string;
51
+ }[]];
52
+ readonly warning?: boolean | undefined;
53
+ readonly when: string;
54
+ }[] | undefined;
43
55
  readonly optionValue: string;
44
56
  readonly optionLabel: readonly [{
45
57
  readonly locale: "zh";
@@ -69,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
69
81
  readonly locale: "en" | "ja" | "ko";
70
82
  readonly message: string;
71
83
  }[]] | undefined;
84
+ readonly required?: string | undefined;
72
85
  readonly displayName?: string | undefined;
73
86
  readonly compatibilityDate: "2026-05-13";
74
87
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -87,6 +100,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
100
  readonly expression: string;
88
101
  } | undefined;
89
102
  readonly options: string;
103
+ readonly validations?: readonly {
104
+ readonly message: readonly [{
105
+ readonly locale: "zh";
106
+ readonly message: string;
107
+ }, ...{
108
+ readonly locale: "en" | "ja" | "ko";
109
+ readonly message: string;
110
+ }[]];
111
+ readonly warning?: boolean | undefined;
112
+ readonly when: string;
113
+ }[] | undefined;
90
114
  readonly optionValue: string;
91
115
  readonly optionLabel: readonly [{
92
116
  readonly locale: "zh";
@@ -2,6 +2,7 @@
2
2
  import { computed } from "vue";
3
3
  import { ExpressionEditor } from "../../../../ui/expression-editor";
4
4
  import DerivedValueEditor from "../../../DerivedValueEditor.vue";
5
+ import ValidationRulesField from "../../../ValidationRulesField.vue";
5
6
  import { Field, FieldLabel } from "../../../../ui/field";
6
7
  import { InputGroup, InputGroupInput } from "../../../../ui/input-group";
7
8
  import { Locale as LocaleField } from "../../../../ui/locale";
@@ -271,6 +272,26 @@ const pathText = computed({
271
272
  </div>
272
273
 
273
274
  <div class="grid grid-cols-3 gap-3">
275
+ <Field orientation="vertical">
276
+ <FieldLabel class="text-xs text-zinc-500">
277
+ <template #tooltip>
278
+ <Markdown
279
+ :source="fieldDescription('required') ?? '\u8FD4\u56DE `true` \u65F6\u663E\u793A\u5FC5\u586B\u661F\u53F7\u5E76\u8981\u6C42\u975E\u7A7A'"
280
+ block
281
+ class="prose prose-sm prose-zinc"
282
+ />
283
+ </template>
284
+ {{ fieldTitle("required") }}
285
+ </FieldLabel>
286
+ <ExpressionEditor
287
+ :model-value="value.required ?? ''"
288
+ placeholder="例:form.type == 'company'"
289
+ result-type="bool"
290
+ class="min-h-10"
291
+ @update:model-value="(v) => value = { ...value, required: v.length > 0 ? v : void 0 }"
292
+ />
293
+ </Field>
294
+
274
295
  <Field orientation="vertical">
275
296
  <FieldLabel class="text-xs text-zinc-500">
276
297
  <template #tooltip>
@@ -350,5 +371,22 @@ const pathText = computed({
350
371
  @update:model-value="(v) => value = { ...value, derived: v }"
351
372
  />
352
373
  </Field>
374
+
375
+ <Field orientation="vertical">
376
+ <FieldLabel class="text-xs text-zinc-500">
377
+ <template #tooltip>
378
+ <Markdown
379
+ :source="fieldDescription('validations')"
380
+ block
381
+ class="prose prose-sm prose-zinc"
382
+ />
383
+ </template>
384
+ {{ fieldTitle("validations") }}
385
+ </FieldLabel>
386
+ <ValidationRulesField
387
+ :model-value="value.validations"
388
+ @update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
389
+ />
390
+ </Field>
353
391
  </div>
354
392
  </template>
@@ -22,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
22
22
  readonly locale: "en" | "ja" | "ko";
23
23
  readonly message: string;
24
24
  }[]] | undefined;
25
+ readonly required?: string | undefined;
25
26
  readonly displayName?: string | undefined;
26
27
  readonly compatibilityDate: "2026-05-13";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -40,6 +41,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
40
41
  readonly expression: string;
41
42
  } | undefined;
42
43
  readonly options: string;
44
+ readonly validations?: readonly {
45
+ readonly message: readonly [{
46
+ readonly locale: "zh";
47
+ readonly message: string;
48
+ }, ...{
49
+ readonly locale: "en" | "ja" | "ko";
50
+ readonly message: string;
51
+ }[]];
52
+ readonly warning?: boolean | undefined;
53
+ readonly when: string;
54
+ }[] | undefined;
43
55
  readonly optionValue: string;
44
56
  readonly optionLabel: readonly [{
45
57
  readonly locale: "zh";
@@ -69,6 +81,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
69
81
  readonly locale: "en" | "ja" | "ko";
70
82
  readonly message: string;
71
83
  }[]] | undefined;
84
+ readonly required?: string | undefined;
72
85
  readonly displayName?: string | undefined;
73
86
  readonly compatibilityDate: "2026-05-13";
74
87
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -87,6 +100,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
87
100
  readonly expression: string;
88
101
  } | undefined;
89
102
  readonly options: string;
103
+ readonly validations?: readonly {
104
+ readonly message: readonly [{
105
+ readonly locale: "zh";
106
+ readonly message: string;
107
+ }, ...{
108
+ readonly locale: "en" | "ja" | "ko";
109
+ readonly message: string;
110
+ }[]];
111
+ readonly warning?: boolean | undefined;
112
+ readonly when: string;
113
+ }[] | undefined;
90
114
  readonly optionValue: string;
91
115
  readonly optionLabel: readonly [{
92
116
  readonly locale: "zh";