@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-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -51,6 +52,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
51
52
  readonly locale: "en" | "ja" | "ko";
52
53
  readonly message: string;
53
54
  }[]] | undefined;
55
+ readonly validations?: readonly {
56
+ readonly message: readonly [{
57
+ readonly locale: "zh";
58
+ readonly message: string;
59
+ }, ...{
60
+ readonly locale: "en" | "ja" | "ko";
61
+ readonly message: string;
62
+ }[]];
63
+ readonly warning?: boolean | undefined;
64
+ readonly when: string;
65
+ }[] | undefined;
54
66
  readonly presets?: readonly {
55
67
  readonly label: readonly [{
56
68
  readonly locale: "zh";
@@ -84,6 +96,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
84
96
  readonly locale: "en" | "ja" | "ko";
85
97
  readonly message: string;
86
98
  }[]] | undefined;
99
+ readonly required?: string | undefined;
87
100
  readonly displayName?: string | undefined;
88
101
  readonly compatibilityDate: "2026-04-27";
89
102
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -113,6 +126,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
113
126
  readonly locale: "en" | "ja" | "ko";
114
127
  readonly message: string;
115
128
  }[]] | undefined;
129
+ readonly validations?: readonly {
130
+ readonly message: readonly [{
131
+ readonly locale: "zh";
132
+ readonly message: string;
133
+ }, ...{
134
+ readonly locale: "en" | "ja" | "ko";
135
+ readonly message: string;
136
+ }[]];
137
+ readonly warning?: boolean | undefined;
138
+ readonly when: string;
139
+ }[] | undefined;
116
140
  readonly presets?: readonly {
117
141
  readonly label: readonly [{
118
142
  readonly locale: "zh";
@@ -5,6 +5,7 @@ import { format as formatDate } from "date-fns";
5
5
  import { Button } from "../../../../ui/button";
6
6
  import { ExpressionEditor } from "../../../../ui/expression-editor";
7
7
  import DerivedValueEditor from "../../../DerivedValueEditor.vue";
8
+ import ValidationRulesField from "../../../ValidationRulesField.vue";
8
9
  import { Field, FieldLabel } from "../../../../ui/field";
9
10
  import { IconPicker } from "../../../../ui/icon-picker";
10
11
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupNumberField, InputGroupText } from "../../../../ui/input-group";
@@ -675,6 +676,26 @@ const valueFormatExample = computed(() => previewFormat(value.value.valueFormat
675
676
  </div>
676
677
 
677
678
  <div class="grid grid-cols-3 gap-3">
679
+ <Field orientation="vertical">
680
+ <FieldLabel class="text-xs text-zinc-500">
681
+ <template #tooltip>
682
+ <Markdown
683
+ :source="fieldDescription('required') ?? '\u8FD4\u56DE `true` \u65F6\u663E\u793A\u5FC5\u586B\u661F\u53F7\u5E76\u8981\u6C42\u975E\u7A7A'"
684
+ block
685
+ class="prose prose-sm prose-zinc"
686
+ />
687
+ </template>
688
+ {{ fieldTitle("required") }}
689
+ </FieldLabel>
690
+ <ExpressionEditor
691
+ :model-value="value.required ?? ''"
692
+ placeholder="例:form.type == 'company'"
693
+ result-type="bool"
694
+ class="min-h-10"
695
+ @update:model-value="(v) => value = { ...value, required: v.length > 0 ? v : void 0 }"
696
+ />
697
+ </Field>
698
+
678
699
  <Field orientation="vertical">
679
700
  <FieldLabel class="text-xs text-zinc-500">
680
701
  <template #tooltip>
@@ -754,5 +775,22 @@ const valueFormatExample = computed(() => previewFormat(value.value.valueFormat
754
775
  @update:model-value="(v) => value = { ...value, derived: v }"
755
776
  />
756
777
  </Field>
778
+
779
+ <Field orientation="vertical">
780
+ <FieldLabel class="text-xs text-zinc-500">
781
+ <template #tooltip>
782
+ <Markdown
783
+ :source="fieldDescription('validations')"
784
+ block
785
+ class="prose prose-sm prose-zinc"
786
+ />
787
+ </template>
788
+ {{ fieldTitle("validations") }}
789
+ </FieldLabel>
790
+ <ValidationRulesField
791
+ :model-value="value.validations"
792
+ @update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
793
+ />
794
+ </Field>
757
795
  </div>
758
796
  </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-04-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -51,6 +52,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
51
52
  readonly locale: "en" | "ja" | "ko";
52
53
  readonly message: string;
53
54
  }[]] | undefined;
55
+ readonly validations?: readonly {
56
+ readonly message: readonly [{
57
+ readonly locale: "zh";
58
+ readonly message: string;
59
+ }, ...{
60
+ readonly locale: "en" | "ja" | "ko";
61
+ readonly message: string;
62
+ }[]];
63
+ readonly warning?: boolean | undefined;
64
+ readonly when: string;
65
+ }[] | undefined;
54
66
  readonly presets?: readonly {
55
67
  readonly label: readonly [{
56
68
  readonly locale: "zh";
@@ -84,6 +96,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
84
96
  readonly locale: "en" | "ja" | "ko";
85
97
  readonly message: string;
86
98
  }[]] | undefined;
99
+ readonly required?: string | undefined;
87
100
  readonly displayName?: string | undefined;
88
101
  readonly compatibilityDate: "2026-04-27";
89
102
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -113,6 +126,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
113
126
  readonly locale: "en" | "ja" | "ko";
114
127
  readonly message: string;
115
128
  }[]] | undefined;
129
+ readonly validations?: readonly {
130
+ readonly message: readonly [{
131
+ readonly locale: "zh";
132
+ readonly message: string;
133
+ }, ...{
134
+ readonly locale: "en" | "ja" | "ko";
135
+ readonly message: string;
136
+ }[]];
137
+ readonly warning?: boolean | undefined;
138
+ readonly when: string;
139
+ }[] | undefined;
116
140
  readonly presets?: readonly {
117
141
  readonly label: readonly [{
118
142
  readonly locale: "zh";
@@ -7,9 +7,10 @@ import { cel as _rawCel } from "../../../../../utils/cel";
7
7
  import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
8
8
  import { getLocalizedText } from "../../../../../share/locale";
9
9
  import { DATE_RANGE_PICKER_DEFAULT_FORMATS, DateRangePicker } from "../../../../ui/date-range-picker";
10
- import { Field, FieldLabel } from "../../../../ui/field";
10
+ import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
11
11
  import { Markdown } from "../../../../ui/markdown";
12
12
  import { DEFAULT_FIELD_ORIENTATION } from "../../../utils/common";
13
+ import { useFieldValidation } from "../../../utils/validation";
13
14
  import { useFormReadonly } from "../../../utils/readonly";
14
15
  import { useFormState } from "../../../utils/state";
15
16
  defineOptions({ name: "ShwfedDateTimeRangeFieldRuntime" });
@@ -104,6 +105,12 @@ const model = computed({
104
105
  setAt(binding[1], next?.[1]);
105
106
  }
106
107
  });
108
+ const { isRequired, errors, warnings, visible } = useFieldValidation({
109
+ fieldId: () => props.fieldId,
110
+ config: () => props.config,
111
+ $cel,
112
+ locale: () => locale.value
113
+ });
107
114
  const readonlyText = computed(() => {
108
115
  const v = model.value;
109
116
  if (!v) return "\u2014";
@@ -130,7 +137,11 @@ const readonlyText = computed(() => {
130
137
  class="prose prose-xs prose-zinc"
131
138
  />
132
139
  </template>
133
- {{ labelText }}
140
+ {{ labelText }}<span
141
+ v-if="isRequired"
142
+ aria-hidden="true"
143
+ class="text-red-600"
144
+ > *</span>
134
145
  </FieldLabel>
135
146
  <div
136
147
  v-if="effectiveReadonly"
@@ -154,5 +165,10 @@ const readonlyText = computed(() => {
154
165
  :disabled="isDisabled"
155
166
  :shortcuts="shortcuts"
156
167
  />
168
+ <FieldMessages
169
+ v-if="visible"
170
+ :errors="errors"
171
+ :warnings="warnings"
172
+ />
157
173
  </Field>
158
174
  </template>
@@ -96,6 +96,24 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
96
96
  id: Schema.refine<string, typeof Schema.String>;
97
97
  displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
98
98
  hidden: Schema.optional<Schema.Schema<string, string, never>>;
99
+ required: Schema.optional<Schema.Schema<string, string, never>>;
100
+ validations: Schema.optional<Schema.Array$<Schema.Struct<{
101
+ when: Schema.Schema<string, string, never>;
102
+ warning: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
103
+ message: Schema.refine<readonly [{
104
+ readonly locale: "zh";
105
+ readonly message: string;
106
+ }, ...{
107
+ readonly locale: "en" | "ja" | "ko";
108
+ readonly message: string;
109
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
110
+ locale: Schema.Literal<["zh"]>;
111
+ message: Schema.SchemaClass<string, string, never>;
112
+ }>], [Schema.Struct<{
113
+ locale: Schema.Literal<["ja", "en", "ko"]>;
114
+ message: Schema.SchemaClass<string, string, never>;
115
+ }>]>>;
116
+ }>>>;
99
117
  type: Schema.Literal<["com.shwfed.form.field.datetimerange"]>;
100
118
  compatibilityDate: Schema.Literal<["2026-04-27"]>;
101
119
  }>;
@@ -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-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -34,6 +35,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
34
35
  readonly hourCycle?: 12 | 24 | undefined;
35
36
  readonly valueFormat?: string | undefined;
36
37
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
38
+ readonly validations?: readonly {
39
+ readonly message: readonly [{
40
+ readonly locale: "zh";
41
+ readonly message: string;
42
+ }, ...{
43
+ readonly locale: "en" | "ja" | "ko";
44
+ readonly message: string;
45
+ }[]];
46
+ readonly warning?: boolean | undefined;
47
+ readonly when: string;
48
+ }[] | undefined;
37
49
  }) => any;
38
50
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
39
51
  "onUpdate:modelValue"?: ((value: {
@@ -55,6 +67,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
55
67
  readonly locale: "en" | "ja" | "ko";
56
68
  readonly message: string;
57
69
  }[]] | undefined;
70
+ readonly required?: string | undefined;
58
71
  readonly displayName?: string | undefined;
59
72
  readonly compatibilityDate: "2026-04-27";
60
73
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -67,6 +80,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
67
80
  readonly hourCycle?: 12 | 24 | undefined;
68
81
  readonly valueFormat?: string | undefined;
69
82
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
83
+ readonly validations?: readonly {
84
+ readonly message: readonly [{
85
+ readonly locale: "zh";
86
+ readonly message: string;
87
+ }, ...{
88
+ readonly locale: "en" | "ja" | "ko";
89
+ readonly message: string;
90
+ }[]];
91
+ readonly warning?: boolean | undefined;
92
+ readonly when: string;
93
+ }[] | undefined;
70
94
  }) => any) | undefined;
71
95
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
72
96
  declare const _default: typeof __VLS_export;
@@ -3,6 +3,7 @@ import { computed } from "vue";
3
3
  import { format as formatDate } from "date-fns";
4
4
  import { ExpressionEditor } from "../../../../ui/expression-editor";
5
5
  import DerivedValueEditor from "../../../DerivedValueEditor.vue";
6
+ import ValidationRulesField from "../../../ValidationRulesField.vue";
6
7
  import { Field, FieldLabel } from "../../../../ui/field";
7
8
  import { InputGroup, InputGroupAddon, InputGroupInput, InputGroupText } from "../../../../ui/input-group";
8
9
  import { Locale as LocaleField } from "../../../../ui/locale";
@@ -299,6 +300,26 @@ const valueFormatExample = computed(() => {
299
300
  </div>
300
301
 
301
302
  <div class="grid grid-cols-3 gap-3">
303
+ <Field orientation="vertical">
304
+ <FieldLabel class="text-xs text-zinc-500">
305
+ <template #tooltip>
306
+ <Markdown
307
+ :source="fieldDescription('required') ?? '\u8FD4\u56DE `true` \u65F6\u663E\u793A\u5FC5\u586B\u661F\u53F7\u5E76\u8981\u6C42\u975E\u7A7A'"
308
+ block
309
+ class="prose prose-sm prose-zinc"
310
+ />
311
+ </template>
312
+ {{ fieldTitle("required") }}
313
+ </FieldLabel>
314
+ <ExpressionEditor
315
+ :model-value="value.required ?? ''"
316
+ placeholder="例:form.type == 'company'"
317
+ result-type="bool"
318
+ class="min-h-10"
319
+ @update:model-value="(v) => value = { ...value, required: v.length > 0 ? v : void 0 }"
320
+ />
321
+ </Field>
322
+
302
323
  <Field orientation="vertical">
303
324
  <FieldLabel class="text-xs text-zinc-500">
304
325
  <template #tooltip>
@@ -378,5 +399,22 @@ const valueFormatExample = computed(() => {
378
399
  @update:model-value="(v) => value = { ...value, derived: v }"
379
400
  />
380
401
  </Field>
402
+
403
+ <Field orientation="vertical">
404
+ <FieldLabel class="text-xs text-zinc-500">
405
+ <template #tooltip>
406
+ <Markdown
407
+ :source="fieldDescription('validations')"
408
+ block
409
+ class="prose prose-sm prose-zinc"
410
+ />
411
+ </template>
412
+ {{ fieldTitle("validations") }}
413
+ </FieldLabel>
414
+ <ValidationRulesField
415
+ :model-value="value.validations"
416
+ @update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
417
+ />
418
+ </Field>
381
419
  </div>
382
420
  </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-04-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -34,6 +35,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
34
35
  readonly hourCycle?: 12 | 24 | undefined;
35
36
  readonly valueFormat?: string | undefined;
36
37
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
38
+ readonly validations?: readonly {
39
+ readonly message: readonly [{
40
+ readonly locale: "zh";
41
+ readonly message: string;
42
+ }, ...{
43
+ readonly locale: "en" | "ja" | "ko";
44
+ readonly message: string;
45
+ }[]];
46
+ readonly warning?: boolean | undefined;
47
+ readonly when: string;
48
+ }[] | undefined;
37
49
  }) => any;
38
50
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
39
51
  "onUpdate:modelValue"?: ((value: {
@@ -55,6 +67,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
55
67
  readonly locale: "en" | "ja" | "ko";
56
68
  readonly message: string;
57
69
  }[]] | undefined;
70
+ readonly required?: string | undefined;
58
71
  readonly displayName?: string | undefined;
59
72
  readonly compatibilityDate: "2026-04-27";
60
73
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -67,6 +80,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
67
80
  readonly hourCycle?: 12 | 24 | undefined;
68
81
  readonly valueFormat?: string | undefined;
69
82
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
83
+ readonly validations?: readonly {
84
+ readonly message: readonly [{
85
+ readonly locale: "zh";
86
+ readonly message: string;
87
+ }, ...{
88
+ readonly locale: "en" | "ja" | "ko";
89
+ readonly message: string;
90
+ }[]];
91
+ readonly warning?: boolean | undefined;
92
+ readonly when: string;
93
+ }[] | undefined;
70
94
  }) => any) | undefined;
71
95
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
72
96
  declare const _default: typeof __VLS_export;
@@ -6,9 +6,10 @@ import { cel as _rawCel } from "../../../../../utils/cel";
6
6
  import { celBindings, injectCELContext } from "../../../../../utils/cel-context";
7
7
  import { getLocalizedText } from "../../../../../share/locale";
8
8
  import { DatePicker } from "../../../../ui/date-picker";
9
- import { Field, FieldLabel } from "../../../../ui/field";
9
+ import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
10
10
  import { Markdown } from "../../../../ui/markdown";
11
11
  import { DEFAULT_FIELD_ORIENTATION } from "../../../utils/common";
12
+ import { useFieldValidation } from "../../../utils/validation";
12
13
  import { useFormReadonly } from "../../../utils/readonly";
13
14
  import { useFormState } from "../../../utils/state";
14
15
  defineOptions({ name: "ShwfedTimeFieldRuntime" });
@@ -56,6 +57,12 @@ const model = computed({
56
57
  setAt(path, next);
57
58
  }
58
59
  });
60
+ const { isRequired, errors, warnings, visible } = useFieldValidation({
61
+ fieldId: () => props.fieldId,
62
+ config: () => props.config,
63
+ $cel,
64
+ locale: () => locale.value
65
+ });
59
66
  </script>
60
67
 
61
68
  <template>
@@ -77,7 +84,11 @@ const model = computed({
77
84
  class="prose prose-xs prose-zinc"
78
85
  />
79
86
  </template>
80
- {{ labelText }}
87
+ {{ labelText }}<span
88
+ v-if="isRequired"
89
+ aria-hidden="true"
90
+ class="text-red-600"
91
+ > *</span>
81
92
  </FieldLabel>
82
93
  <div
83
94
  v-if="effectiveReadonly"
@@ -95,5 +106,10 @@ const model = computed({
95
106
  :hour-cycle="config.hourCycle"
96
107
  :disabled="isDisabled"
97
108
  />
109
+ <FieldMessages
110
+ v-if="visible"
111
+ :errors="errors"
112
+ :warnings="warnings"
113
+ />
98
114
  </Field>
99
115
  </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.time"]>;
59
77
  compatibilityDate: Schema.Literal<["2026-04-27"]>;
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-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -35,6 +36,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
35
36
  readonly valueFormat?: string | undefined;
36
37
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
37
38
  readonly rangeSeparatorIcon?: string | undefined;
39
+ readonly validations?: readonly {
40
+ readonly message: readonly [{
41
+ readonly locale: "zh";
42
+ readonly message: string;
43
+ }, ...{
44
+ readonly locale: "en" | "ja" | "ko";
45
+ readonly message: string;
46
+ }[]];
47
+ readonly warning?: boolean | undefined;
48
+ readonly when: string;
49
+ }[] | undefined;
38
50
  }) => any;
39
51
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
40
52
  "onUpdate:modelValue"?: ((value: {
@@ -56,6 +68,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
56
68
  readonly locale: "en" | "ja" | "ko";
57
69
  readonly message: string;
58
70
  }[]] | undefined;
71
+ readonly required?: string | undefined;
59
72
  readonly displayName?: string | undefined;
60
73
  readonly compatibilityDate: "2026-04-27";
61
74
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -69,6 +82,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
69
82
  readonly valueFormat?: string | undefined;
70
83
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
71
84
  readonly rangeSeparatorIcon?: string | undefined;
85
+ readonly validations?: readonly {
86
+ readonly message: readonly [{
87
+ readonly locale: "zh";
88
+ readonly message: string;
89
+ }, ...{
90
+ readonly locale: "en" | "ja" | "ko";
91
+ readonly message: string;
92
+ }[]];
93
+ readonly warning?: boolean | undefined;
94
+ readonly when: string;
95
+ }[] | undefined;
72
96
  }) => any) | undefined;
73
97
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
74
98
  declare const _default: typeof __VLS_export;
@@ -4,6 +4,7 @@ import { computed } from "vue";
4
4
  import { format as formatDate } from "date-fns";
5
5
  import { ExpressionEditor } from "../../../../ui/expression-editor";
6
6
  import DerivedValueEditor from "../../../DerivedValueEditor.vue";
7
+ import ValidationRulesField from "../../../ValidationRulesField.vue";
7
8
  import { Field, FieldLabel } from "../../../../ui/field";
8
9
  import { IconPicker } from "../../../../ui/icon-picker";
9
10
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText } from "../../../../ui/input-group";
@@ -403,6 +404,26 @@ const valueFormatExample = computed(() => {
403
404
  </div>
404
405
 
405
406
  <div class="grid grid-cols-3 gap-3">
407
+ <Field orientation="vertical">
408
+ <FieldLabel class="text-xs text-zinc-500">
409
+ <template #tooltip>
410
+ <Markdown
411
+ :source="fieldDescription('required') ?? '\u8FD4\u56DE `true` \u65F6\u663E\u793A\u5FC5\u586B\u661F\u53F7\u5E76\u8981\u6C42\u975E\u7A7A'"
412
+ block
413
+ class="prose prose-sm prose-zinc"
414
+ />
415
+ </template>
416
+ {{ fieldTitle("required") }}
417
+ </FieldLabel>
418
+ <ExpressionEditor
419
+ :model-value="value.required ?? ''"
420
+ placeholder="例:form.type == 'company'"
421
+ result-type="bool"
422
+ class="min-h-10"
423
+ @update:model-value="(v) => value = { ...value, required: v.length > 0 ? v : void 0 }"
424
+ />
425
+ </Field>
426
+
406
427
  <Field orientation="vertical">
407
428
  <FieldLabel class="text-xs text-zinc-500">
408
429
  <template #tooltip>
@@ -482,5 +503,22 @@ const valueFormatExample = computed(() => {
482
503
  @update:model-value="(v) => value = { ...value, derived: v }"
483
504
  />
484
505
  </Field>
506
+
507
+ <Field orientation="vertical">
508
+ <FieldLabel class="text-xs text-zinc-500">
509
+ <template #tooltip>
510
+ <Markdown
511
+ :source="fieldDescription('validations')"
512
+ block
513
+ class="prose prose-sm prose-zinc"
514
+ />
515
+ </template>
516
+ {{ fieldTitle("validations") }}
517
+ </FieldLabel>
518
+ <ValidationRulesField
519
+ :model-value="value.validations"
520
+ @update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
521
+ />
522
+ </Field>
485
523
  </div>
486
524
  </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-04-27";
27
28
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -35,6 +36,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
35
36
  readonly valueFormat?: string | undefined;
36
37
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
37
38
  readonly rangeSeparatorIcon?: string | undefined;
39
+ readonly validations?: readonly {
40
+ readonly message: readonly [{
41
+ readonly locale: "zh";
42
+ readonly message: string;
43
+ }, ...{
44
+ readonly locale: "en" | "ja" | "ko";
45
+ readonly message: string;
46
+ }[]];
47
+ readonly warning?: boolean | undefined;
48
+ readonly when: string;
49
+ }[] | undefined;
38
50
  }) => any;
39
51
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
40
52
  "onUpdate:modelValue"?: ((value: {
@@ -56,6 +68,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
56
68
  readonly locale: "en" | "ja" | "ko";
57
69
  readonly message: string;
58
70
  }[]] | undefined;
71
+ readonly required?: string | undefined;
59
72
  readonly displayName?: string | undefined;
60
73
  readonly compatibilityDate: "2026-04-27";
61
74
  readonly orientation?: "vertical" | "floating" | undefined;
@@ -69,6 +82,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
69
82
  readonly valueFormat?: string | undefined;
70
83
  readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
71
84
  readonly rangeSeparatorIcon?: string | undefined;
85
+ readonly validations?: readonly {
86
+ readonly message: readonly [{
87
+ readonly locale: "zh";
88
+ readonly message: string;
89
+ }, ...{
90
+ readonly locale: "en" | "ja" | "ko";
91
+ readonly message: string;
92
+ }[]];
93
+ readonly warning?: boolean | undefined;
94
+ readonly when: string;
95
+ }[] | undefined;
72
96
  }) => any) | undefined;
73
97
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
74
98
  declare const _default: typeof __VLS_export;