@shwfed/config 2.3.27 → 2.3.29

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 (178) hide show
  1. package/dist/mcp.mjs +3963 -1597
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{config-CRqRJ0oF.js → config-6IiXCmyu.js} +1 -1
  4. package/dist/preview/assets/{config-C45AT0tt.js → config-BJzUh1_G.js} +1 -1
  5. package/dist/preview/assets/{config-CIcy6Jwg.js → config-Bl80ye-i.js} +1 -1
  6. package/dist/preview/assets/{config-D0YS2Bpj.js → config-CZOeZ8ty.js} +1 -1
  7. package/dist/preview/assets/{config-l3KurfL5.js → config-DaZD4ZSa.js} +1 -1
  8. package/dist/preview/assets/{config-D-i-AFgH.js → config-DhsbcNzx.js} +1 -1
  9. package/dist/preview/assets/{config-CXaH7a2G.js → config-Diuyh0Ex.js} +1 -1
  10. package/dist/preview/assets/{config-Bv_hUugV.js → config-aK67Rsw5.js} +1 -1
  11. package/dist/preview/assets/{config-DrpESRR5.js → config-rpX_Mc6I.js} +1 -1
  12. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-Ck8Pbwem.js → definition.vue_vue_type_script_setup_true_lang-C_jU8d47.js} +1 -1
  13. package/dist/preview/assets/index-2eQR4s3q.css +1 -0
  14. package/dist/preview/assets/index-DEF3_MKr.js +659 -0
  15. package/dist/preview/assets/index-Df-thth9.js +1 -0
  16. package/dist/preview/assets/{runtime-Df715bRA.js → runtime-3p1K6te5.js} +1 -1
  17. package/dist/preview/assets/{runtime-D42ecZyC.js → runtime-BcLnafic.js} +1 -1
  18. package/dist/preview/assets/{runtime-D6twt5H_.js → runtime-CSaV-359.js} +1 -1
  19. package/dist/preview/assets/{runtime-z_QPMN-R.js → runtime-CjR8Vi5N.js} +1 -1
  20. package/dist/preview/assets/{runtime-CvuGnDIa.js → runtime-D_fJCKX_.js} +1 -1
  21. package/dist/preview/assets/{runtime-tobnPKdV.js → runtime-DpeCgGEG.js} +1 -1
  22. package/dist/preview/assets/{runtime-CmCvUWLV.js → runtime-K2a1x0TJ.js} +1 -1
  23. package/dist/preview/assets/{runtime-BSASeqgI.js → runtime-g9Zu3VNQ.js} +1 -1
  24. package/dist/preview/assets/{runtime-DUyUjFqF.js → runtime-jTnh_6Dm.js} +1 -1
  25. package/dist/preview/index.html +2 -2
  26. package/dist/runtime/components/block-layout-editor/index.d.vue.ts +10 -2
  27. package/dist/runtime/components/block-layout-editor/index.vue +44 -8
  28. package/dist/runtime/components/block-layout-editor/index.vue.d.ts +10 -2
  29. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/config.d.vue.ts +2 -0
  30. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/config.vue +57 -3
  31. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/config.vue.d.ts +2 -0
  32. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/runtime.d.vue.ts +2 -0
  33. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/runtime.vue +1 -0
  34. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/runtime.vue.d.ts +2 -0
  35. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/schema.d.ts +2 -0
  36. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.tabs/schema.js +4 -0
  37. package/dist/runtime/components/config/config.vue +35 -0
  38. package/dist/runtime/components/config/use-editor.d.ts +11 -1
  39. package/dist/runtime/components/config/use-editor.js +27 -1
  40. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +4 -4
  41. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +4 -4
  42. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +127 -0
  43. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue +593 -0
  44. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +127 -0
  45. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/runtime.d.vue.ts +8 -0
  46. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/runtime.vue +465 -0
  47. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/runtime.vue.d.ts +8 -0
  48. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +95 -0
  49. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/schema.js +112 -0
  50. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +125 -0
  51. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue +525 -0
  52. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +125 -0
  53. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/runtime.d.vue.ts +8 -0
  54. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/runtime.vue +460 -0
  55. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/runtime.vue.d.ts +8 -0
  56. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/schema.d.ts +92 -0
  57. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/schema.js +104 -0
  58. package/dist/runtime/components/form/fields/2026-05-26/tree-combobox-shared.d.ts +35 -0
  59. package/dist/runtime/components/form/fields/2026-05-26/tree-combobox-shared.js +31 -0
  60. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.d.vue.ts +163 -0
  61. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.vue +745 -0
  62. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/config.vue.d.ts +163 -0
  63. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/runtime.d.vue.ts +8 -0
  64. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/runtime.vue +383 -0
  65. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/runtime.vue.d.ts +8 -0
  66. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/schema.d.ts +264 -0
  67. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.multi/schema.js +183 -0
  68. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.d.vue.ts +163 -0
  69. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.vue +745 -0
  70. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/config.vue.d.ts +163 -0
  71. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/runtime.d.vue.ts +8 -0
  72. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/runtime.vue +402 -0
  73. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/runtime.vue.d.ts +8 -0
  74. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/schema.d.ts +264 -0
  75. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.combobox.single/schema.js +209 -0
  76. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +129 -0
  77. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue +618 -0
  78. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +129 -0
  79. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.d.vue.ts +8 -0
  80. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue +501 -0
  81. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/runtime.vue.d.ts +8 -0
  82. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.d.ts +99 -0
  83. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/schema.js +133 -0
  84. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +127 -0
  85. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue +550 -0
  86. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +127 -0
  87. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.d.vue.ts +8 -0
  88. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue +496 -0
  89. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/runtime.vue.d.ts +8 -0
  90. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.d.ts +96 -0
  91. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/schema.js +125 -0
  92. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +133 -0
  93. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue +605 -0
  94. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +133 -0
  95. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/runtime.d.vue.ts +8 -0
  96. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/runtime.vue +401 -0
  97. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/runtime.vue.d.ts +8 -0
  98. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.d.ts +102 -0
  99. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/schema.js +142 -0
  100. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +131 -0
  101. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue +560 -0
  102. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +131 -0
  103. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/runtime.d.vue.ts +8 -0
  104. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/runtime.vue +395 -0
  105. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/runtime.vue.d.ts +8 -0
  106. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.d.ts +96 -0
  107. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/schema.js +118 -0
  108. package/dist/runtime/components/form/fields/2026-05-28/tree-combobox-shared.d.ts +35 -0
  109. package/dist/runtime/components/form/fields/2026-05-28/tree-combobox-shared.js +31 -0
  110. package/dist/runtime/components/form/unit-config.vue +45 -1
  111. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +131 -0
  112. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue +607 -0
  113. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +131 -0
  114. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/runtime.d.vue.ts +9 -0
  115. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/runtime.vue +447 -0
  116. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/runtime.vue.d.ts +9 -0
  117. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/schema.d.ts +90 -0
  118. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/schema.js +143 -0
  119. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +129 -0
  120. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue +538 -0
  121. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +129 -0
  122. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/runtime.d.vue.ts +9 -0
  123. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/runtime.vue +429 -0
  124. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/runtime.vue.d.ts +9 -0
  125. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/schema.d.ts +87 -0
  126. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/schema.js +135 -0
  127. package/dist/runtime/components/table/columns/2026-05-27/tree-combobox-shared.d.ts +35 -0
  128. package/dist/runtime/components/table/columns/2026-05-27/tree-combobox-shared.js +31 -0
  129. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +183 -0
  130. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue +931 -0
  131. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +183 -0
  132. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/runtime.d.vue.ts +9 -0
  133. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/runtime.vue +463 -0
  134. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/runtime.vue.d.ts +9 -0
  135. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/schema.d.ts +283 -0
  136. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/schema.js +275 -0
  137. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +183 -0
  138. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue +931 -0
  139. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +183 -0
  140. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/runtime.d.vue.ts +9 -0
  141. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/runtime.vue +414 -0
  142. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/runtime.vue.d.ts +9 -0
  143. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/schema.d.ts +283 -0
  144. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/schema.js +275 -0
  145. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +133 -0
  146. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue +632 -0
  147. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +133 -0
  148. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/runtime.d.vue.ts +9 -0
  149. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/runtime.vue +461 -0
  150. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/runtime.vue.d.ts +9 -0
  151. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/schema.d.ts +93 -0
  152. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/schema.js +161 -0
  153. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +131 -0
  154. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue +563 -0
  155. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +131 -0
  156. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/runtime.d.vue.ts +9 -0
  157. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/runtime.vue +443 -0
  158. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/runtime.vue.d.ts +9 -0
  159. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/schema.d.ts +90 -0
  160. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/schema.js +153 -0
  161. package/dist/runtime/components/table/columns/2026-05-28/tree-combobox-shared.d.ts +35 -0
  162. package/dist/runtime/components/table/columns/2026-05-28/tree-combobox-shared.js +31 -0
  163. package/dist/runtime/components/table/config.vue +16 -16
  164. package/dist/runtime/components/ui/command/CommandItem.d.vue.ts +7 -0
  165. package/dist/runtime/components/ui/command/CommandItem.vue +13 -4
  166. package/dist/runtime/components/ui/command/CommandItem.vue.d.ts +7 -0
  167. package/dist/runtime/components/ui/tree/Tree.d.vue.ts +2 -0
  168. package/dist/runtime/components/ui/tree/Tree.vue +7 -2
  169. package/dist/runtime/components/ui/tree/Tree.vue.d.ts +2 -0
  170. package/dist/runtime/components/ui/tree/TreeNode.vue +16 -26
  171. package/dist/runtime/share/clipboard.d.ts +26 -0
  172. package/dist/runtime/share/clipboard.js +82 -0
  173. package/dist/runtime/share/layout.d.ts +4 -0
  174. package/dist/runtime/share/layout.js +35 -0
  175. package/package.json +1 -1
  176. package/dist/preview/assets/index-BCE-G4Ha.css +0 -1
  177. package/dist/preview/assets/index-C3Ycah5_.js +0 -643
  178. package/dist/preview/assets/index-hWT4_I5k.js +0 -1
@@ -0,0 +1,264 @@
1
+ import { Schema } from 'effect';
2
+ import type { Environment } from '../../../../../vendor/cel-js/lib/index.js';
3
+ import type { MigrateFn, MigrateSource } from '../../../utils/resolve.js';
4
+ export declare const type: "com.shwfed.form.field.combobox.single";
5
+ export declare const compatibilityDate: "2026-05-28";
6
+ export declare const metadata: {
7
+ readonly name: "下拉单选";
8
+ readonly icon: "fluent:chevron-down-20-regular";
9
+ readonly w: {
10
+ readonly initial: 8;
11
+ readonly min: 4;
12
+ readonly max: number;
13
+ };
14
+ readonly h: {
15
+ readonly initial: 2;
16
+ readonly min: 2;
17
+ readonly max: 2;
18
+ };
19
+ };
20
+ export declare function itemSchema(configure: (env: Environment) => void): Schema.Struct<{
21
+ id: Schema.refine<string, typeof Schema.String>;
22
+ label: Schema.refine<readonly [{
23
+ readonly locale: "zh";
24
+ readonly message: string;
25
+ }, ...{
26
+ readonly locale: "en" | "ja" | "ko";
27
+ readonly message: string;
28
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
29
+ locale: Schema.Literal<["zh"]>;
30
+ message: Schema.SchemaClass<string, string, never>;
31
+ }>], [Schema.Struct<{
32
+ locale: Schema.Literal<["ja", "en", "ko"]>;
33
+ message: Schema.SchemaClass<string, string, never>;
34
+ }>]>>;
35
+ value: Schema.Union<[Schema.Struct<{
36
+ kind: Schema.Literal<["text"]>;
37
+ value: typeof Schema.String;
38
+ }>, Schema.Struct<{
39
+ kind: Schema.Literal<["number"]>;
40
+ value: typeof Schema.Number;
41
+ }>]>;
42
+ tooltip: Schema.optional<Schema.refine<readonly [{
43
+ readonly locale: "zh";
44
+ readonly message: string;
45
+ }, ...{
46
+ readonly locale: "en" | "ja" | "ko";
47
+ readonly message: string;
48
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
49
+ locale: Schema.Literal<["zh"]>;
50
+ message: Schema.SchemaClass<string, string, never>;
51
+ }>], [Schema.Struct<{
52
+ locale: Schema.Literal<["ja", "en", "ko"]>;
53
+ message: Schema.SchemaClass<string, string, never>;
54
+ }>]>>>;
55
+ keywords: Schema.optional<Schema.Array$<typeof Schema.String>>;
56
+ }>;
57
+ export declare function remoteOptionsSchema(configure: (env: Environment) => void): Schema.Struct<{
58
+ kind: Schema.Literal<["remote"]>;
59
+ request: Schema.optional<Schema.Union<[Schema.Literal<[""]>, Schema.Schema<string, string, never>]>>;
60
+ options: Schema.Schema<string, string, never>;
61
+ optionValue: Schema.optionalWith<Schema.Schema<string, string, never>, {
62
+ default: () => string;
63
+ }>;
64
+ optionLabel: Schema.optionalWith<Schema.refine<readonly [{
65
+ readonly locale: "zh";
66
+ readonly message: string;
67
+ }, ...{
68
+ readonly locale: "en" | "ja" | "ko";
69
+ readonly message: string;
70
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
71
+ locale: Schema.Literal<["zh"]>;
72
+ message: Schema.SchemaClass<string, string, never>;
73
+ }>], [Schema.Struct<{
74
+ locale: Schema.Literal<["ja", "en", "ko"]>;
75
+ message: Schema.SchemaClass<string, string, never>;
76
+ }>]>>, {
77
+ default: () => readonly [{
78
+ readonly locale: "zh";
79
+ readonly message: "";
80
+ }];
81
+ }>;
82
+ optionKeywords: Schema.optional<Schema.Schema<string, string, never>>;
83
+ }>;
84
+ export declare function optionsSchema(configure: (env: Environment) => void): Schema.Union<[Schema.Struct<{
85
+ kind: Schema.Literal<["static"]>;
86
+ items: Schema.optionalWith<Schema.Array$<Schema.Struct<{
87
+ id: Schema.refine<string, typeof Schema.String>;
88
+ label: 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
+ value: Schema.Union<[Schema.Struct<{
102
+ kind: Schema.Literal<["text"]>;
103
+ value: typeof Schema.String;
104
+ }>, Schema.Struct<{
105
+ kind: Schema.Literal<["number"]>;
106
+ value: typeof Schema.Number;
107
+ }>]>;
108
+ tooltip: Schema.optional<Schema.refine<readonly [{
109
+ readonly locale: "zh";
110
+ readonly message: string;
111
+ }, ...{
112
+ readonly locale: "en" | "ja" | "ko";
113
+ readonly message: string;
114
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
115
+ locale: Schema.Literal<["zh"]>;
116
+ message: Schema.SchemaClass<string, string, never>;
117
+ }>], [Schema.Struct<{
118
+ locale: Schema.Literal<["ja", "en", "ko"]>;
119
+ message: Schema.SchemaClass<string, string, never>;
120
+ }>]>>>;
121
+ keywords: Schema.optional<Schema.Array$<typeof Schema.String>>;
122
+ }>>, {
123
+ default: () => readonly [];
124
+ }>;
125
+ }>, Schema.Struct<{
126
+ kind: Schema.Literal<["remote"]>;
127
+ request: Schema.optional<Schema.Union<[Schema.Literal<[""]>, Schema.Schema<string, string, never>]>>;
128
+ options: Schema.Schema<string, string, never>;
129
+ optionValue: Schema.optionalWith<Schema.Schema<string, string, never>, {
130
+ default: () => string;
131
+ }>;
132
+ optionLabel: Schema.optionalWith<Schema.refine<readonly [{
133
+ readonly locale: "zh";
134
+ readonly message: string;
135
+ }, ...{
136
+ readonly locale: "en" | "ja" | "ko";
137
+ readonly message: string;
138
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
139
+ locale: Schema.Literal<["zh"]>;
140
+ message: Schema.SchemaClass<string, string, never>;
141
+ }>], [Schema.Struct<{
142
+ locale: Schema.Literal<["ja", "en", "ko"]>;
143
+ message: Schema.SchemaClass<string, string, never>;
144
+ }>]>>, {
145
+ default: () => readonly [{
146
+ readonly locale: "zh";
147
+ readonly message: "";
148
+ }];
149
+ }>;
150
+ optionKeywords: Schema.optional<Schema.Schema<string, string, never>>;
151
+ }>]>;
152
+ export declare function schema(configure: (env: Environment) => void): Schema.Struct<{
153
+ label: Schema.optional<Schema.TupleType<readonly [Schema.Struct<{
154
+ locale: Schema.Literal<["zh"]>;
155
+ message: Schema.SchemaClass<string, string, never>;
156
+ }>], [Schema.Struct<{
157
+ locale: Schema.Literal<["ja", "en", "ko"]>;
158
+ message: Schema.SchemaClass<string, string, never>;
159
+ }>]>>;
160
+ placeholder: Schema.optional<Schema.TupleType<readonly [Schema.Struct<{
161
+ locale: Schema.Literal<["zh"]>;
162
+ message: Schema.SchemaClass<string, string, never>;
163
+ }>], [Schema.Struct<{
164
+ locale: Schema.Literal<["ja", "en", "ko"]>;
165
+ message: Schema.SchemaClass<string, string, never>;
166
+ }>]>>;
167
+ tooltip: Schema.optional<Schema.TupleType<readonly [Schema.Struct<{
168
+ locale: Schema.Literal<["zh"]>;
169
+ message: Schema.SchemaClass<string, string, never>;
170
+ }>], [Schema.Struct<{
171
+ locale: Schema.Literal<["ja", "en", "ko"]>;
172
+ message: Schema.SchemaClass<string, string, never>;
173
+ }>]>>;
174
+ orientation: Schema.optional<Schema.Literal<["vertical", "floating"]>>;
175
+ binding: Schema.optional<Schema.refine<string, typeof Schema.String>>;
176
+ disabled: Schema.optional<Schema.Schema<string, string, never>>;
177
+ readonly: Schema.optional<Schema.Schema<string, string, never>>;
178
+ derived: Schema.optional<Schema.Struct<{
179
+ mode: Schema.Literal<["formula", "prefill"]>;
180
+ expression: Schema.Schema<string, string, never>;
181
+ }>>;
182
+ options: Schema.optionalWith<Schema.Union<[Schema.Struct<{
183
+ kind: Schema.Literal<["static"]>;
184
+ items: Schema.optionalWith<Schema.Array$<Schema.Struct<{
185
+ id: Schema.refine<string, typeof Schema.String>;
186
+ label: Schema.refine<readonly [{
187
+ readonly locale: "zh";
188
+ readonly message: string;
189
+ }, ...{
190
+ readonly locale: "en" | "ja" | "ko";
191
+ readonly message: string;
192
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
193
+ locale: Schema.Literal<["zh"]>;
194
+ message: Schema.SchemaClass<string, string, never>;
195
+ }>], [Schema.Struct<{
196
+ locale: Schema.Literal<["ja", "en", "ko"]>;
197
+ message: Schema.SchemaClass<string, string, never>;
198
+ }>]>>;
199
+ value: Schema.Union<[Schema.Struct<{
200
+ kind: Schema.Literal<["text"]>;
201
+ value: typeof Schema.String;
202
+ }>, Schema.Struct<{
203
+ kind: Schema.Literal<["number"]>;
204
+ value: typeof Schema.Number;
205
+ }>]>;
206
+ tooltip: Schema.optional<Schema.refine<readonly [{
207
+ readonly locale: "zh";
208
+ readonly message: string;
209
+ }, ...{
210
+ readonly locale: "en" | "ja" | "ko";
211
+ readonly message: string;
212
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
213
+ locale: Schema.Literal<["zh"]>;
214
+ message: Schema.SchemaClass<string, string, never>;
215
+ }>], [Schema.Struct<{
216
+ locale: Schema.Literal<["ja", "en", "ko"]>;
217
+ message: Schema.SchemaClass<string, string, never>;
218
+ }>]>>>;
219
+ keywords: Schema.optional<Schema.Array$<typeof Schema.String>>;
220
+ }>>, {
221
+ default: () => readonly [];
222
+ }>;
223
+ }>, Schema.Struct<{
224
+ kind: Schema.Literal<["remote"]>;
225
+ request: Schema.optional<Schema.Union<[Schema.Literal<[""]>, Schema.Schema<string, string, never>]>>;
226
+ options: Schema.Schema<string, string, never>;
227
+ optionValue: Schema.optionalWith<Schema.Schema<string, string, never>, {
228
+ default: () => string;
229
+ }>;
230
+ optionLabel: Schema.optionalWith<Schema.refine<readonly [{
231
+ readonly locale: "zh";
232
+ readonly message: string;
233
+ }, ...{
234
+ readonly locale: "en" | "ja" | "ko";
235
+ readonly message: string;
236
+ }[]], Schema.TupleType<readonly [Schema.Struct<{
237
+ locale: Schema.Literal<["zh"]>;
238
+ message: Schema.SchemaClass<string, string, never>;
239
+ }>], [Schema.Struct<{
240
+ locale: Schema.Literal<["ja", "en", "ko"]>;
241
+ message: Schema.SchemaClass<string, string, never>;
242
+ }>]>>, {
243
+ default: () => readonly [{
244
+ readonly locale: "zh";
245
+ readonly message: "";
246
+ }];
247
+ }>;
248
+ optionKeywords: Schema.optional<Schema.Schema<string, string, never>>;
249
+ }>]>, {
250
+ default: () => {
251
+ kind: "static";
252
+ items: readonly [];
253
+ };
254
+ }>;
255
+ id: Schema.refine<string, typeof Schema.String>;
256
+ displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
257
+ hidden: Schema.optional<Schema.Schema<string, string, never>>;
258
+ type: Schema.Literal<["com.shwfed.form.field.combobox.single"]>;
259
+ compatibilityDate: Schema.Literal<["2026-05-28"]>;
260
+ }>;
261
+ export type Value = Schema.Schema.Type<ReturnType<typeof schema>>;
262
+ export declare function defaults(): Partial<Value>;
263
+ export declare const migrateFrom: ReadonlyArray<MigrateSource>;
264
+ export declare const migrate: MigrateFn;
@@ -0,0 +1,209 @@
1
+ import { Effect, Schema } from "effect";
2
+ import { Expression, LocaleMarkdown } from "../../../../../share/expression.js";
3
+ import { Locale } from "../../../../../share/locale.js";
4
+ import { commonFieldFields, derivedField, FieldOrientationSchema } from "../../../utils/common.js";
5
+ export const type = "com.shwfed.form.field.combobox.single";
6
+ export const compatibilityDate = "2026-05-28";
7
+ export const metadata = {
8
+ name: "\u4E0B\u62C9\u5355\u9009",
9
+ icon: "fluent:chevron-down-20-regular",
10
+ w: { initial: 8, min: 4, max: Infinity },
11
+ h: { initial: 2, min: 2, max: 2 }
12
+ };
13
+ const isListType = (actual) => actual === "dyn" || actual.startsWith("list");
14
+ function configureWithOption(configure) {
15
+ return (env) => {
16
+ configure(env);
17
+ env.registerVariable("option", "dyn", { description: "`\u9009\u9879` \u8868\u8FBE\u5F0F\u4EA7\u51FA\u7684\u6570\u7EC4\u4E2D\u8FED\u4EE3\u5230\u7684\u5355\u4E2A\u5143\u7D20" });
18
+ };
19
+ }
20
+ function configureWithJson(configure) {
21
+ return (env) => {
22
+ configure(env);
23
+ env.registerVariable("json", "dyn", { description: "HTTP \u54CD\u5E94\u4F53\uFF08\u5DF2\u89E3\u6790 JSON\uFF09\uFF1B\u672A\u914D\u7F6E\u8BF7\u6C42\u6216\u8BF7\u6C42\u5931\u8D25\u65F6\u4E3A `null`" });
24
+ };
25
+ }
26
+ export function itemSchema(configure) {
27
+ const LocaleMd = LocaleMarkdown({ configure });
28
+ const TextValue = Schema.Struct({
29
+ kind: Schema.Literal("text"),
30
+ value: Schema.String
31
+ });
32
+ const NumberValue = Schema.Struct({
33
+ kind: Schema.Literal("number"),
34
+ value: Schema.Number
35
+ });
36
+ const ItemValue = Schema.Union(TextValue, NumberValue).annotations({
37
+ title: "\u503C",
38
+ description: "\u9009\u9879\u7ED1\u5B9A\u7684\u503C\uFF0C\u53EF\u4EE5\u662F\u6587\u672C\u6216\u6570\u5B57"
39
+ });
40
+ return Schema.Struct({
41
+ id: Schema.UUID.annotations({ description: "\u9009\u9879\u552F\u4E00\u6807\u8BC6\uFF0C\u7528\u4E8E\u7A33\u5B9A\u7684 v-for key" }),
42
+ label: LocaleMd.annotations({
43
+ title: "\u6807\u7B7E",
44
+ description: "\u9009\u9879\u5C55\u793A\u7684\u672C\u5730\u5316\u6587\u672C\uFF0C\u652F\u6301 Markdown \u4E0E `{{ form.foo }}` \u63D2\u503C"
45
+ }),
46
+ value: ItemValue,
47
+ tooltip: Schema.optional(LocaleMd.annotations({
48
+ title: "\u63D0\u793A",
49
+ description: "\u9F20\u6807\u60AC\u505C\u5728\u9009\u9879\u4E0A\u65F6\u5C55\u793A\u7684\u672C\u5730\u5316\u63D0\u793A\uFF0C\u652F\u6301 Markdown"
50
+ })),
51
+ keywords: Schema.optional(Schema.Array(Schema.String).annotations({
52
+ title: "\u5173\u952E\u8BCD",
53
+ description: "\u9664\u6807\u7B7E\u4E4B\u5916\u53EF\u53C2\u4E0E\u641C\u7D22\u8FC7\u6EE4\u7684\u9644\u52A0\u8BCD\u6761\u5217\u8868\uFF08\u522B\u540D\u3001\u7F16\u7801\u3001\u62FC\u97F3\u7B49\uFF09\uFF1B\u4E0D\u5C55\u793A\uFF0C\u4EC5\u7528\u4E8E\u5339\u914D"
54
+ }))
55
+ }).annotations({
56
+ title: "ComboboxSingleItem"
57
+ });
58
+ }
59
+ export function remoteOptionsSchema(configure) {
60
+ const CelRequest = Schema.Union(
61
+ Schema.Literal(""),
62
+ Expression({ configure, resultType: "HttpRequest" })
63
+ );
64
+ const CelOptions = Expression({ configure: configureWithJson(configure), resultType: isListType });
65
+ const CelOptionValue = Expression({ configure: configureWithOption(configure), resultType: "dyn" });
66
+ const LocaleOptionLabel = LocaleMarkdown({ configure: configureWithOption(configure) });
67
+ const CelKeywords = Expression({
68
+ configure: configureWithOption(configure),
69
+ resultType: (actual) => actual === "dyn" || actual.startsWith("list") || actual.startsWith("optional")
70
+ });
71
+ return Schema.Struct({
72
+ kind: Schema.Literal("remote"),
73
+ request: Schema.optional(CelRequest.annotations({
74
+ title: "\u8BF7\u6C42",
75
+ description: "\u8FD4\u56DE `HttpRequest` \u7684 CEL \u8868\u8FBE\u5F0F\uFF1B\u53EF\u8BBF\u95EE `form` \u5F53\u524D\u72B6\u6001\u3002\u7559\u7A7A\u5219\u4E0D\u53D1\u8D77\u8BF7\u6C42\uFF0C\u76F4\u63A5\u5BF9 `form` \u6C42\u503C `\u9009\u9879` \u8868\u8FBE\u5F0F\uFF08\u6B64\u65F6 `json` \u4E3A `null`\uFF09"
76
+ })),
77
+ options: CelOptions.annotations({
78
+ title: "\u9009\u9879",
79
+ description: "\u63D0\u53D6\u9009\u9879\u6570\u7EC4\u7684 CEL \u8868\u8FBE\u5F0F\uFF1B\u53EF\u8BBF\u95EE `form` \u4E0E `json`\u3002\u4F8B\uFF1A`json.data` \u6216 `[{value: 'a', label: 'A'}]`"
80
+ }),
81
+ optionValue: Schema.optionalWith(CelOptionValue.annotations({
82
+ title: "\u9009\u9879\u503C",
83
+ description: "\u4ECE\u5F53\u524D `option` \u63D0\u53D6\u5199\u5165\u7ED1\u5B9A\u7684\u503C\uFF1B\u4F8B\uFF1A`option.value`"
84
+ }), { default: () => "option" }),
85
+ optionLabel: Schema.optionalWith(LocaleOptionLabel.annotations({
86
+ title: "\u9009\u9879\u6807\u7B7E",
87
+ description: "\u6BCF\u4E2A\u9009\u9879\u5C55\u793A\u7684\u672C\u5730\u5316\u6587\u672C\uFF0C\u652F\u6301 `{{ string(option.foo) }}` \u63D2\u503C"
88
+ }), { default: () => [{ locale: "zh", message: "" }] }),
89
+ optionKeywords: Schema.optional(CelKeywords.annotations({
90
+ title: "\u5173\u952E\u8BCD",
91
+ description: "\u8FD4\u56DE\u5B57\u7B26\u4E32\u5217\u8868\u7684 CEL \u8868\u8FBE\u5F0F\uFF0C\u53EF\u8BBF\u95EE `option`\uFF1B\u8FD9\u4E9B\u8BCD\u6761\u53C2\u4E0E\u641C\u7D22\u8FC7\u6EE4\u4F46\u4E0D\u5C55\u793A\u3002\u4F8B\uFF1A`[option.code, option.pinyin]`"
92
+ }))
93
+ }).annotations({ title: "ComboboxSingleOptionsRemote", description: "\u7531 CEL \u8868\u8FBE\u5F0F\uFF08\u53EF\u9009\u8FDC\u7A0B\u62C9\u53D6\uFF09\u4EA7\u51FA\u7684\u9009\u9879\u5217\u8868" });
94
+ }
95
+ export function optionsSchema(configure) {
96
+ const Item = itemSchema(configure);
97
+ const StaticSpec = Schema.Struct({
98
+ kind: Schema.Literal("static"),
99
+ items: Schema.optionalWith(Schema.Array(Item).annotations({
100
+ title: "\u9009\u9879",
101
+ description: "\u4E0B\u62C9\u6846\u53EF\u9009\u9879\u5217\u8868"
102
+ }), { default: () => [] })
103
+ }).annotations({ title: "ComboboxSingleOptionsStatic", description: "\u9759\u6001\u914D\u7F6E\u7684\u9009\u9879\u5217\u8868" });
104
+ const RemoteSpec = remoteOptionsSchema(configure);
105
+ return Schema.Union(StaticSpec, RemoteSpec).annotations({
106
+ title: "\u9009\u9879\u6765\u6E90",
107
+ description: '\u9009\u9879\u53EF\u4EE5\u662F\u9759\u6001\u914D\u7F6E\uFF08`kind: "static"`\uFF09\u6216\u7531 CEL \u8868\u8FBE\u5F0F / \u8FDC\u7A0B\u63A5\u53E3\u4EA7\u51FA\uFF08`kind: "remote"`\uFF09'
108
+ });
109
+ }
110
+ export function schema(configure) {
111
+ const CelBool = Expression({ configure, resultType: "bool" });
112
+ const Options = optionsSchema(configure);
113
+ return Schema.Struct({
114
+ type: Schema.Literal(type),
115
+ compatibilityDate: Schema.Literal(compatibilityDate),
116
+ ...commonFieldFields(configure),
117
+ label: Schema.optional(Locale.annotations({
118
+ title: "\u6807\u7B7E",
119
+ description: "\u5B57\u6BB5\u524D\u5C55\u793A\u7684\u6587\u672C\uFF1B\u7559\u7A7A\u5219\u4E0D\u6E32\u67D3\u6807\u7B7E"
120
+ })),
121
+ placeholder: Schema.optional(Locale.annotations({
122
+ title: "\u5360\u4F4D\u7B26",
123
+ description: "\u672A\u9009\u4E2D\u4EFB\u4F55\u9009\u9879\u65F6\u8F93\u5165\u6846\u4E2D\u7684\u5360\u4F4D\u6587\u672C"
124
+ })),
125
+ tooltip: Schema.optional(Locale.annotations({
126
+ title: "\u63D0\u793A",
127
+ description: "\u9F20\u6807\u60AC\u505C\u5728\u6807\u7B7E\u4E0A\u65F6\u5C55\u793A\u7684\u8BF4\u660E"
128
+ })),
129
+ orientation: Schema.optional(FieldOrientationSchema),
130
+ binding: Schema.optional(Schema.String.pipe(Schema.minLength(1)).annotations({
131
+ title: "\u7ED1\u5B9A\u8DEF\u5F84",
132
+ description: "\u5199\u5165\u8868\u5355\u72B6\u6001\u7684 `dot-prop` \u8DEF\u5F84\uFF0C\u4F8B\u5982 `user.role`\uFF1B\u7559\u7A7A\u5219\u4E3A\u975E\u53D7\u63A7\u5B57\u6BB5"
133
+ })),
134
+ disabled: Schema.optional(CelBool.annotations({
135
+ title: "\u7981\u7528\u6761\u4EF6",
136
+ description: "\u8FD4\u56DE `true` \u65F6\u4E0B\u62C9\u6846\u4ECD\u7136\u6E32\u67D3\u4F46\u4E0D\u53EF\u9009\u62E9"
137
+ })),
138
+ readonly: Schema.optional(CelBool.annotations({
139
+ title: "\u53EA\u8BFB\u6761\u4EF6",
140
+ description: "\u8FD4\u56DE `true` \u65F6\u4EC5\u4EE5\u7EAF\u6587\u672C\u5C55\u793A\u5F53\u524D\u9009\u9879\u7684\u6807\u7B7E"
141
+ })),
142
+ derived: derivedField(configure, "dyn"),
143
+ options: Schema.optionalWith(Options, {
144
+ default: () => ({ kind: "static", items: [] })
145
+ })
146
+ }).annotations({
147
+ title: "ComboboxSingleField",
148
+ description: "\u4E0B\u62C9\u5355\u9009\u8F93\u5165"
149
+ });
150
+ }
151
+ export function defaults() {
152
+ return {
153
+ options: { kind: "static", items: [] }
154
+ };
155
+ }
156
+ export const migrateFrom = [
157
+ { type: "com.shwfed.form.field.combobox.single", compatibilityDate: "2026-04-24" },
158
+ { type: "com.shwfed.form.field.combobox.single", compatibilityDate: "2026-04-29" },
159
+ { type: "com.shwfed.form.field.combobox.single.remote", compatibilityDate: "2026-05-13" }
160
+ ];
161
+ export const migrate = (prev) => Effect.try({
162
+ try: () => {
163
+ if (!prev || typeof prev !== "object") {
164
+ throw new Error("\u4E0B\u62C9\u5355\u9009\u8FC1\u79FB\u5931\u8D25\uFF1A\u539F\u503C\u4E0D\u662F\u5BF9\u8C61");
165
+ }
166
+ const src = prev;
167
+ const srcType = src.type;
168
+ const srcDate = src.compatibilityDate;
169
+ if (srcType === "com.shwfed.form.field.combobox.single" && srcDate === "2026-04-29") {
170
+ const { items, type: _t, compatibilityDate: _c, ...rest } = src;
171
+ const itemsArr = Array.isArray(items) ? items : [];
172
+ return {
173
+ ...rest,
174
+ type,
175
+ compatibilityDate,
176
+ options: { kind: "static", items: itemsArr }
177
+ };
178
+ }
179
+ if (srcType === "com.shwfed.form.field.combobox.single" && srcDate === "2026-04-24") {
180
+ const { options, optionValue, optionLabel, type: _t, compatibilityDate: _c, ...rest } = src;
181
+ const remote = { kind: "remote", request: "" };
182
+ if (typeof options === "string") remote.options = options;
183
+ if (typeof optionValue === "string") remote.optionValue = optionValue;
184
+ if (Array.isArray(optionLabel)) remote.optionLabel = optionLabel;
185
+ return {
186
+ ...rest,
187
+ type,
188
+ compatibilityDate,
189
+ options: remote
190
+ };
191
+ }
192
+ if (srcType === "com.shwfed.form.field.combobox.single.remote" && srcDate === "2026-05-13") {
193
+ const { request, options, optionValue, optionLabel, type: _t, compatibilityDate: _c, ...rest } = src;
194
+ const remote = { kind: "remote" };
195
+ if (typeof request === "string") remote.request = request;
196
+ if (typeof options === "string") remote.options = options;
197
+ if (typeof optionValue === "string") remote.optionValue = optionValue;
198
+ if (Array.isArray(optionLabel)) remote.optionLabel = optionLabel;
199
+ return {
200
+ ...rest,
201
+ type,
202
+ compatibilityDate,
203
+ options: remote
204
+ };
205
+ }
206
+ throw new Error(`\u4E0B\u62C9\u5355\u9009\u8FC1\u79FB\u5931\u8D25\uFF1A\u672A\u8BC6\u522B\u7684\u6765\u6E90 ${String(srcType)}@${String(srcDate)}`);
207
+ },
208
+ catch: (e) => e instanceof Error ? e : new Error(String(e))
209
+ });
@@ -0,0 +1,129 @@
1
+ import { type Value } from './schema.js';
2
+ type __VLS_ModelProps = {
3
+ modelValue: Value;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ "update:modelValue": (value: {
7
+ readonly label?: readonly [{
8
+ readonly locale: "zh";
9
+ readonly message: string;
10
+ }, ...{
11
+ readonly locale: "en" | "ja" | "ko";
12
+ readonly message: string;
13
+ }[]] | undefined;
14
+ readonly disabled?: string | undefined;
15
+ readonly type: "com.shwfed.form.field.tree.combobox.multi";
16
+ readonly id: string;
17
+ readonly hidden?: string | undefined;
18
+ readonly tooltip?: readonly [{
19
+ readonly locale: "zh";
20
+ readonly message: string;
21
+ }, ...{
22
+ readonly locale: "en" | "ja" | "ko";
23
+ readonly message: string;
24
+ }[]] | undefined;
25
+ readonly displayName?: string | undefined;
26
+ readonly compatibilityDate: "2026-05-28";
27
+ readonly orientation?: "vertical" | "floating" | undefined;
28
+ readonly placeholder?: readonly [{
29
+ readonly locale: "zh";
30
+ readonly message: string;
31
+ }, ...{
32
+ readonly locale: "en" | "ja" | "ko";
33
+ readonly message: string;
34
+ }[]] | undefined;
35
+ readonly keywords?: string | undefined;
36
+ readonly readonly?: string | undefined;
37
+ readonly binding?: string | undefined;
38
+ readonly derived?: {
39
+ readonly mode: "formula" | "prefill";
40
+ readonly expression: string;
41
+ } | undefined;
42
+ readonly dataSource: {
43
+ readonly data: string;
44
+ readonly request?: string | undefined;
45
+ };
46
+ readonly nodeKey: string;
47
+ readonly nodeChildren: string;
48
+ readonly nodeLabel: readonly [{
49
+ readonly locale: "zh";
50
+ readonly message: string;
51
+ }, ...{
52
+ readonly locale: "en" | "ja" | "ko";
53
+ readonly message: string;
54
+ }[]];
55
+ readonly expandAll: boolean;
56
+ readonly cascade: "independent" | "cascade-down" | "cascade-both";
57
+ readonly nodeTooltip?: readonly [{
58
+ readonly locale: "zh";
59
+ readonly message: string;
60
+ }, ...{
61
+ readonly locale: "en" | "ja" | "ko";
62
+ readonly message: string;
63
+ }[]] | undefined;
64
+ readonly nodeSelectable?: string | undefined;
65
+ }) => any;
66
+ }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
67
+ "onUpdate:modelValue"?: ((value: {
68
+ readonly label?: readonly [{
69
+ readonly locale: "zh";
70
+ readonly message: string;
71
+ }, ...{
72
+ readonly locale: "en" | "ja" | "ko";
73
+ readonly message: string;
74
+ }[]] | undefined;
75
+ readonly disabled?: string | undefined;
76
+ readonly type: "com.shwfed.form.field.tree.combobox.multi";
77
+ readonly id: string;
78
+ readonly hidden?: string | undefined;
79
+ readonly tooltip?: readonly [{
80
+ readonly locale: "zh";
81
+ readonly message: string;
82
+ }, ...{
83
+ readonly locale: "en" | "ja" | "ko";
84
+ readonly message: string;
85
+ }[]] | undefined;
86
+ readonly displayName?: string | undefined;
87
+ readonly compatibilityDate: "2026-05-28";
88
+ readonly orientation?: "vertical" | "floating" | undefined;
89
+ readonly placeholder?: readonly [{
90
+ readonly locale: "zh";
91
+ readonly message: string;
92
+ }, ...{
93
+ readonly locale: "en" | "ja" | "ko";
94
+ readonly message: string;
95
+ }[]] | undefined;
96
+ readonly keywords?: string | undefined;
97
+ readonly readonly?: string | undefined;
98
+ readonly binding?: string | undefined;
99
+ readonly derived?: {
100
+ readonly mode: "formula" | "prefill";
101
+ readonly expression: string;
102
+ } | undefined;
103
+ readonly dataSource: {
104
+ readonly data: string;
105
+ readonly request?: string | undefined;
106
+ };
107
+ readonly nodeKey: string;
108
+ readonly nodeChildren: string;
109
+ readonly nodeLabel: readonly [{
110
+ readonly locale: "zh";
111
+ readonly message: string;
112
+ }, ...{
113
+ readonly locale: "en" | "ja" | "ko";
114
+ readonly message: string;
115
+ }[]];
116
+ readonly expandAll: boolean;
117
+ readonly cascade: "independent" | "cascade-down" | "cascade-both";
118
+ readonly nodeTooltip?: readonly [{
119
+ readonly locale: "zh";
120
+ readonly message: string;
121
+ }, ...{
122
+ readonly locale: "en" | "ja" | "ko";
123
+ readonly message: string;
124
+ }[]] | undefined;
125
+ readonly nodeSelectable?: string | undefined;
126
+ }) => any) | undefined;
127
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
128
+ declare const _default: typeof __VLS_export;
129
+ export default _default;