weaver-e10-builder 1.2.3 → 1.5.1

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 (351) hide show
  1. package/assets/org-employee-template.xlsx +0 -0
  2. package/dist/commands/actionflow.d.ts.map +1 -1
  3. package/dist/commands/actionflow.js +12 -25
  4. package/dist/commands/actionflow.js.map +1 -1
  5. package/dist/commands/designer-css.d.ts +15 -0
  6. package/dist/commands/designer-css.d.ts.map +1 -0
  7. package/dist/commands/designer-css.js +205 -0
  8. package/dist/commands/designer-css.js.map +1 -0
  9. package/dist/commands/form-button.d.ts.map +1 -1
  10. package/dist/commands/form-button.js +28 -5
  11. package/dist/commands/form-button.js.map +1 -1
  12. package/dist/commands/form-field-lang.d.ts.map +1 -1
  13. package/dist/commands/form-field-lang.js +4 -39
  14. package/dist/commands/form-field-lang.js.map +1 -1
  15. package/dist/commands/form-field-linkage.d.ts.map +1 -1
  16. package/dist/commands/form-field-linkage.js +27 -6
  17. package/dist/commands/form-field-linkage.js.map +1 -1
  18. package/dist/commands/form-formula-linkage.d.ts +3 -0
  19. package/dist/commands/form-formula-linkage.d.ts.map +1 -0
  20. package/dist/commands/form-formula-linkage.js +434 -0
  21. package/dist/commands/form-formula-linkage.js.map +1 -0
  22. package/dist/commands/form-formula.d.ts.map +1 -1
  23. package/dist/commands/form-formula.js +22 -3
  24. package/dist/commands/form-formula.js.map +1 -1
  25. package/dist/commands/form-layout-init.d.ts.map +1 -1
  26. package/dist/commands/form-layout-init.js +15 -10
  27. package/dist/commands/form-layout-init.js.map +1 -1
  28. package/dist/commands/form-layout.js +24 -21
  29. package/dist/commands/form-layout.js.map +1 -1
  30. package/dist/commands/form-list-click.d.ts.map +1 -1
  31. package/dist/commands/form-list-click.js +2 -1
  32. package/dist/commands/form-list-click.js.map +1 -1
  33. package/dist/commands/form-native.d.ts.map +1 -1
  34. package/dist/commands/form-native.js +192 -3
  35. package/dist/commands/form-native.js.map +1 -1
  36. package/dist/commands/form-validate.d.ts.map +1 -1
  37. package/dist/commands/form-validate.js +11 -3
  38. package/dist/commands/form-validate.js.map +1 -1
  39. package/dist/commands/form.d.ts.map +1 -1
  40. package/dist/commands/form.js +323 -192
  41. package/dist/commands/form.js.map +1 -1
  42. package/dist/commands/matrix.d.ts.map +1 -1
  43. package/dist/commands/matrix.js +175 -36
  44. package/dist/commands/matrix.js.map +1 -1
  45. package/dist/commands/menu.d.ts.map +1 -1
  46. package/dist/commands/menu.js +170 -23
  47. package/dist/commands/menu.js.map +1 -1
  48. package/dist/commands/org.d.ts +10 -0
  49. package/dist/commands/org.d.ts.map +1 -0
  50. package/dist/commands/org.js +278 -0
  51. package/dist/commands/org.js.map +1 -0
  52. package/dist/commands/role.d.ts.map +1 -1
  53. package/dist/commands/role.js +106 -62
  54. package/dist/commands/role.js.map +1 -1
  55. package/dist/commands/wf-form.d.ts +1 -0
  56. package/dist/commands/wf-form.d.ts.map +1 -1
  57. package/dist/commands/wf-form.js +545 -39
  58. package/dist/commands/wf-form.js.map +1 -1
  59. package/dist/commands/workflow-auth-resp.d.ts.map +1 -1
  60. package/dist/commands/workflow-auth-resp.js +53 -5
  61. package/dist/commands/workflow-auth-resp.js.map +1 -1
  62. package/dist/commands/workflow-create-auth-resp.d.ts.map +1 -1
  63. package/dist/commands/workflow-create-auth-resp.js +5 -1
  64. package/dist/commands/workflow-create-auth-resp.js.map +1 -1
  65. package/dist/commands/workflow-node-assign-flow.d.ts.map +1 -1
  66. package/dist/commands/workflow-node-assign-flow.js +1 -2
  67. package/dist/commands/workflow-node-assign-flow.js.map +1 -1
  68. package/dist/commands/workflow-node.d.ts.map +1 -1
  69. package/dist/commands/workflow-node.js +147 -2
  70. package/dist/commands/workflow-node.js.map +1 -1
  71. package/dist/commands/workflow-odoc.d.ts.map +1 -1
  72. package/dist/commands/workflow-odoc.js +56 -56
  73. package/dist/commands/workflow-odoc.js.map +1 -1
  74. package/dist/commands/workflow-setting.d.ts.map +1 -1
  75. package/dist/commands/workflow-setting.js +77 -1
  76. package/dist/commands/workflow-setting.js.map +1 -1
  77. package/dist/commands/workflow.d.ts.map +1 -1
  78. package/dist/commands/workflow.js +114 -89
  79. package/dist/commands/workflow.js.map +1 -1
  80. package/dist/core/client.d.ts +14 -0
  81. package/dist/core/client.d.ts.map +1 -1
  82. package/dist/core/client.js +28 -12
  83. package/dist/core/client.js.map +1 -1
  84. package/dist/index.js +6 -0
  85. package/dist/index.js.map +1 -1
  86. package/dist/services/action-detail.d.ts.map +1 -1
  87. package/dist/services/action-detail.js +5 -4
  88. package/dist/services/action-detail.js.map +1 -1
  89. package/dist/services/actionflow/command_output.d.ts +7 -0
  90. package/dist/services/actionflow/command_output.d.ts.map +1 -1
  91. package/dist/services/actionflow/command_output.js +46 -0
  92. package/dist/services/actionflow/command_output.js.map +1 -1
  93. package/dist/services/actionflow/components/action_eb_add.d.ts.map +1 -1
  94. package/dist/services/actionflow/components/action_eb_add.js +14 -4
  95. package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
  96. package/dist/services/actionflow/components/action_eb_add_compiler.d.ts.map +1 -1
  97. package/dist/services/actionflow/components/action_eb_add_compiler.js +29 -0
  98. package/dist/services/actionflow/components/action_eb_add_compiler.js.map +1 -1
  99. package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
  100. package/dist/services/actionflow/components/action_eb_update.js +23 -8
  101. package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
  102. package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +1 -1
  103. package/dist/services/actionflow/components/action_eb_update_compiler.js +261 -13
  104. package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
  105. package/dist/services/actionflow/components/approve_create.d.ts.map +1 -1
  106. package/dist/services/actionflow/components/approve_create.js +6 -3
  107. package/dist/services/actionflow/components/approve_create.js.map +1 -1
  108. package/dist/services/actionflow/components/custom_set_form.d.ts +10 -0
  109. package/dist/services/actionflow/components/custom_set_form.d.ts.map +1 -0
  110. package/dist/services/actionflow/components/custom_set_form.js +99 -0
  111. package/dist/services/actionflow/components/custom_set_form.js.map +1 -0
  112. package/dist/services/actionflow/components/custom_trigger.d.ts +2 -2
  113. package/dist/services/actionflow/components/custom_trigger.d.ts.map +1 -1
  114. package/dist/services/actionflow/components/custom_trigger.js +11 -11
  115. package/dist/services/actionflow/components/custom_trigger.js.map +1 -1
  116. package/dist/services/actionflow/components/dml_execute.d.ts.map +1 -1
  117. package/dist/services/actionflow/components/dml_execute.js +7 -3
  118. package/dist/services/actionflow/components/dml_execute.js.map +1 -1
  119. package/dist/services/actionflow/components/document_actions.d.ts.map +1 -1
  120. package/dist/services/actionflow/components/document_actions.js +7 -3
  121. package/dist/services/actionflow/components/document_actions.js.map +1 -1
  122. package/dist/services/actionflow/components/enquiry_form.js +1 -1
  123. package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
  124. package/dist/services/actionflow/components/hrm_actions.d.ts.map +1 -1
  125. package/dist/services/actionflow/components/hrm_actions.js +7 -3
  126. package/dist/services/actionflow/components/hrm_actions.js.map +1 -1
  127. package/dist/services/actionflow/components/multiple_execution.d.ts.map +1 -1
  128. package/dist/services/actionflow/components/multiple_execution.js +14 -5
  129. package/dist/services/actionflow/components/multiple_execution.js.map +1 -1
  130. package/dist/services/actionflow/components/output.d.ts.map +1 -1
  131. package/dist/services/actionflow/components/output.js +6 -1
  132. package/dist/services/actionflow/components/output.js.map +1 -1
  133. package/dist/services/actionflow/components/send_message.js +2 -2
  134. package/dist/services/actionflow/components/send_message.js.map +1 -1
  135. package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
  136. package/dist/services/actionflow/components/workflow_actions.js +7 -3
  137. package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
  138. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  139. package/dist/services/actionflow/context_preflight.js +25 -8
  140. package/dist/services/actionflow/context_preflight.js.map +1 -1
  141. package/dist/services/actionflow/context_provider.d.ts.map +1 -1
  142. package/dist/services/actionflow/context_provider.js +24 -4
  143. package/dist/services/actionflow/context_provider.js.map +1 -1
  144. package/dist/services/actionflow/custom_trigger_context.d.ts +10 -0
  145. package/dist/services/actionflow/custom_trigger_context.d.ts.map +1 -0
  146. package/dist/services/actionflow/custom_trigger_context.js +46 -0
  147. package/dist/services/actionflow/custom_trigger_context.js.map +1 -0
  148. package/dist/services/actionflow/dynamic_resources.d.ts.map +1 -1
  149. package/dist/services/actionflow/dynamic_resources.js +1 -1
  150. package/dist/services/actionflow/dynamic_resources.js.map +1 -1
  151. package/dist/services/actionflow/ebuilder_source.d.ts +19 -0
  152. package/dist/services/actionflow/ebuilder_source.d.ts.map +1 -0
  153. package/dist/services/actionflow/ebuilder_source.js +78 -0
  154. package/dist/services/actionflow/ebuilder_source.js.map +1 -0
  155. package/dist/services/actionflow/filter_rules.js +2 -2
  156. package/dist/services/actionflow/filter_rules.js.map +1 -1
  157. package/dist/services/actionflow/form_source.d.ts +51 -10
  158. package/dist/services/actionflow/form_source.d.ts.map +1 -1
  159. package/dist/services/actionflow/form_source.js +173 -29
  160. package/dist/services/actionflow/form_source.js.map +1 -1
  161. package/dist/services/actionflow/formula_service.d.ts +13 -2
  162. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  163. package/dist/services/actionflow/formula_service.js +104 -42
  164. package/dist/services/actionflow/formula_service.js.map +1 -1
  165. package/dist/services/actionflow/id_generator.d.ts +2 -0
  166. package/dist/services/actionflow/id_generator.d.ts.map +1 -1
  167. package/dist/services/actionflow/id_generator.js +13 -0
  168. package/dist/services/actionflow/id_generator.js.map +1 -1
  169. package/dist/services/actionflow/preflight_service.d.ts +6 -0
  170. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  171. package/dist/services/actionflow/preflight_service.js +217 -4
  172. package/dist/services/actionflow/preflight_service.js.map +1 -1
  173. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  174. package/dist/services/actionflow/workflow_compiler.js +172 -50
  175. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  176. package/dist/services/auth-resp-condition.d.ts +35 -0
  177. package/dist/services/auth-resp-condition.d.ts.map +1 -0
  178. package/dist/services/auth-resp-condition.js +111 -0
  179. package/dist/services/auth-resp-condition.js.map +1 -0
  180. package/dist/services/condition-rules.d.ts.map +1 -1
  181. package/dist/services/condition-rules.js +4 -1
  182. package/dist/services/condition-rules.js.map +1 -1
  183. package/dist/services/designer-css.d.ts +89 -0
  184. package/dist/services/designer-css.d.ts.map +1 -0
  185. package/dist/services/designer-css.js +163 -0
  186. package/dist/services/designer-css.js.map +1 -0
  187. package/dist/services/dom-structure.d.ts +42 -0
  188. package/dist/services/dom-structure.d.ts.map +1 -0
  189. package/dist/services/dom-structure.js +251 -0
  190. package/dist/services/dom-structure.js.map +1 -0
  191. package/dist/services/esb-interface/document-parser.d.ts.map +1 -1
  192. package/dist/services/esb-interface/document-parser.js +62 -5
  193. package/dist/services/esb-interface/document-parser.js.map +1 -1
  194. package/dist/services/form-association.d.ts +19 -0
  195. package/dist/services/form-association.d.ts.map +1 -1
  196. package/dist/services/form-association.js +64 -0
  197. package/dist/services/form-association.js.map +1 -1
  198. package/dist/services/form-button-action.d.ts +7 -0
  199. package/dist/services/form-button-action.d.ts.map +1 -1
  200. package/dist/services/form-button-action.js +11 -1
  201. package/dist/services/form-button-action.js.map +1 -1
  202. package/dist/services/form-create.d.ts +4 -0
  203. package/dist/services/form-create.d.ts.map +1 -1
  204. package/dist/services/form-create.js +18 -12
  205. package/dist/services/form-create.js.map +1 -1
  206. package/dist/services/form-field-patch.d.ts +25 -1
  207. package/dist/services/form-field-patch.d.ts.map +1 -1
  208. package/dist/services/form-field-patch.js +52 -9
  209. package/dist/services/form-field-patch.js.map +1 -1
  210. package/dist/services/form-formula-linkage.d.ts +349 -0
  211. package/dist/services/form-formula-linkage.d.ts.map +1 -0
  212. package/dist/services/form-formula-linkage.js +546 -0
  213. package/dist/services/form-formula-linkage.js.map +1 -0
  214. package/dist/services/form-i18n-label.d.ts +48 -0
  215. package/dist/services/form-i18n-label.d.ts.map +1 -0
  216. package/dist/services/form-i18n-label.js +91 -0
  217. package/dist/services/form-i18n-label.js.map +1 -0
  218. package/dist/services/form-layout-insert.d.ts +84 -0
  219. package/dist/services/form-layout-insert.d.ts.map +1 -0
  220. package/dist/services/form-layout-insert.js +244 -0
  221. package/dist/services/form-layout-insert.js.map +1 -0
  222. package/dist/services/form-linkage-condition.d.ts +159 -0
  223. package/dist/services/form-linkage-condition.d.ts.map +1 -0
  224. package/dist/services/form-linkage-condition.js +307 -0
  225. package/dist/services/form-linkage-condition.js.map +1 -0
  226. package/dist/services/form-style-template.d.ts +6 -2
  227. package/dist/services/form-style-template.d.ts.map +1 -1
  228. package/dist/services/form-style-template.js +8 -4
  229. package/dist/services/form-style-template.js.map +1 -1
  230. package/dist/services/formula-detail.d.ts +98 -6
  231. package/dist/services/formula-detail.d.ts.map +1 -1
  232. package/dist/services/formula-detail.js +208 -26
  233. package/dist/services/formula-detail.js.map +1 -1
  234. package/dist/services/matrix-rows.d.ts +43 -0
  235. package/dist/services/matrix-rows.d.ts.map +1 -0
  236. package/dist/services/matrix-rows.js +104 -0
  237. package/dist/services/matrix-rows.js.map +1 -0
  238. package/dist/services/menu-catalog.d.ts +84 -0
  239. package/dist/services/menu-catalog.d.ts.map +1 -0
  240. package/dist/services/menu-catalog.js +183 -0
  241. package/dist/services/menu-catalog.js.map +1 -0
  242. package/dist/services/org-department.d.ts +114 -0
  243. package/dist/services/org-department.d.ts.map +1 -0
  244. package/dist/services/org-department.js +209 -0
  245. package/dist/services/org-department.js.map +1 -0
  246. package/dist/services/org-employee.d.ts +87 -0
  247. package/dist/services/org-employee.d.ts.map +1 -0
  248. package/dist/services/org-employee.js +219 -0
  249. package/dist/services/org-employee.js.map +1 -0
  250. package/dist/services/role-member.d.ts +99 -0
  251. package/dist/services/role-member.d.ts.map +1 -0
  252. package/dist/services/role-member.js +206 -0
  253. package/dist/services/role-member.js.map +1 -0
  254. package/dist/services/workflow-add-step.d.ts +45 -0
  255. package/dist/services/workflow-add-step.d.ts.map +1 -0
  256. package/dist/services/workflow-add-step.js +122 -0
  257. package/dist/services/workflow-add-step.js.map +1 -0
  258. package/dist/services/workflow-assign-flow.d.ts +1 -6
  259. package/dist/services/workflow-assign-flow.d.ts.map +1 -1
  260. package/dist/services/workflow-assign-flow.js +3 -8
  261. package/dist/services/workflow-assign-flow.js.map +1 -1
  262. package/dist/services/workflow-drawback.d.ts +19 -0
  263. package/dist/services/workflow-drawback.d.ts.map +1 -0
  264. package/dist/services/workflow-drawback.js +59 -0
  265. package/dist/services/workflow-drawback.js.map +1 -0
  266. package/dist/services/workflow-info.d.ts +83 -0
  267. package/dist/services/workflow-info.d.ts.map +1 -0
  268. package/dist/services/workflow-info.js +97 -0
  269. package/dist/services/workflow-info.js.map +1 -0
  270. package/dist/services/workflow-links.d.ts +51 -0
  271. package/dist/services/workflow-links.d.ts.map +1 -0
  272. package/dist/services/workflow-links.js +162 -0
  273. package/dist/services/workflow-links.js.map +1 -0
  274. package/dist/services/workflow-node-layout.d.ts +45 -4
  275. package/dist/services/workflow-node-layout.d.ts.map +1 -1
  276. package/dist/services/workflow-node-layout.js +142 -41
  277. package/dist/services/workflow-node-layout.js.map +1 -1
  278. package/dist/services/workflow-odoc-setting.d.ts +43 -0
  279. package/dist/services/workflow-odoc-setting.d.ts.map +1 -0
  280. package/dist/services/workflow-odoc-setting.js +109 -0
  281. package/dist/services/workflow-odoc-setting.js.map +1 -0
  282. package/dist/services/workflow-tab-config.d.ts +54 -0
  283. package/dist/services/workflow-tab-config.d.ts.map +1 -0
  284. package/dist/services/workflow-tab-config.js +137 -0
  285. package/dist/services/workflow-tab-config.js.map +1 -0
  286. package/dist/types.d.ts +5 -1
  287. package/dist/types.d.ts.map +1 -1
  288. package/dist/utils/column-name.d.ts +24 -0
  289. package/dist/utils/column-name.d.ts.map +1 -1
  290. package/dist/utils/column-name.js +16 -0
  291. package/dist/utils/column-name.js.map +1 -1
  292. package/ecodecmd/package.json +1 -2
  293. package/ecodecmd/src/loaddep.js +19 -9
  294. package/package.json +48 -48
  295. package/skill-docs/SKILL.md +15 -11
  296. package/skill-docs/_catalog.md +85 -79
  297. package/skill-docs/actionflows/SKILL.md +173 -168
  298. package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +38 -1
  299. package/skill-docs/actionflows/references/components/ebuilder/ActionEbUpdate.md +42 -0
  300. package/skill-docs/actionflows/references/components/ebuilder/EventButton.md +1 -1
  301. package/skill-docs/actionflows/references/components/logic/Output.md +2 -0
  302. package/skill-docs/actionflows/references/components/trigger/CustomTrigger.md +48 -11
  303. package/skill-docs/actionflows/references/components/workflow/ApproveCreate.md +1 -1
  304. package/skill-docs/assets/dom-structure/Bar.json +341 -0
  305. package/skill-docs/assets/dom-structure/BarStack.json +341 -0
  306. package/skill-docs/assets/dom-structure/Bubble.json +323 -0
  307. package/skill-docs/assets/dom-structure/Calendar.json +515 -0
  308. package/skill-docs/assets/dom-structure/Circular.json +337 -0
  309. package/skill-docs/assets/dom-structure/CollapsePanel.json +289 -0
  310. package/skill-docs/assets/dom-structure/Comment.json +617 -0
  311. package/skill-docs/assets/dom-structure/CountDown.json +755 -0
  312. package/skill-docs/assets/dom-structure/DigitalPanel.json +191 -0
  313. package/skill-docs/assets/dom-structure/EbButton.json +387 -0
  314. package/skill-docs/assets/dom-structure/FastCreate.json +242 -0
  315. package/skill-docs/assets/dom-structure/Gauge.json +282 -0
  316. package/skill-docs/assets/dom-structure/HBar.json +336 -0
  317. package/skill-docs/assets/dom-structure/HBarStack.json +337 -0
  318. package/skill-docs/assets/dom-structure/Line.json +341 -0
  319. package/skill-docs/assets/dom-structure/NList.json +712 -0
  320. package/skill-docs/assets/dom-structure/NavBar.json +274 -0
  321. package/skill-docs/assets/dom-structure/NavPanel.json +390 -0
  322. package/skill-docs/assets/dom-structure/NewTab.json +606 -0
  323. package/skill-docs/assets/dom-structure/Nightingale.json +336 -0
  324. package/skill-docs/assets/dom-structure/PageHeader.json +205 -0
  325. package/skill-docs/assets/dom-structure/Picture.json +209 -0
  326. package/skill-docs/assets/dom-structure/Pie.json +338 -0
  327. package/skill-docs/assets/dom-structure/ProgressChart.json +299 -0
  328. package/skill-docs/assets/dom-structure/SearchGlobal.json +628 -0
  329. package/skill-docs/assets/dom-structure/Slide.json +489 -0
  330. package/skill-docs/assets/dom-structure/Treemap.json +324 -0
  331. package/skill-docs/references/common/guide-plan-template.md +10 -4
  332. package/skill-docs/references/common/ref-cli-commands.md +67 -34
  333. package/skill-docs/references/ebuilder-designer/guide-designer-components.md +12 -1
  334. package/skill-docs/references/ebuilder-designer/guide-designer-css.md +127 -0
  335. package/skill-docs/references/ebuilder-designer/guide-designer.md +6 -5
  336. package/skill-docs/references/esb-interface/guide-import.md +4 -1
  337. package/skill-docs/references/form/guide-create-form.md +14 -1
  338. package/skill-docs/references/form/guide-field-linkage.md +2 -0
  339. package/skill-docs/references/form/guide-form-formula-functions.md +36 -0
  340. package/skill-docs/references/form/guide-form-layout-incremental.md +75 -0
  341. package/skill-docs/references/form/guide-form-layout-planning.md +1 -1
  342. package/skill-docs/references/form/guide-form-linkage.md +89 -5
  343. package/skill-docs/references/form/guide-formula-linkage.md +250 -0
  344. package/skill-docs/references/form/ref-form-fields.md +6 -0
  345. package/skill-docs/references/hrm/guide-matrix.md +79 -16
  346. package/skill-docs/references/hrm/guide-org-employee.md +56 -0
  347. package/skill-docs/references/menu/system-menus.md +12 -0
  348. package/skill-docs/references/workflow/guide-workflow-auth-resp.md +48 -22
  349. package/skill-docs/references/workflow/guide-workflow-odoc-setting.md +248 -0
  350. package/skill-docs/references/workflow/guide-workflow-odoc.md +25 -33
  351. package/skill-docs/references/workflow/guide-workflow.md +18 -3
@@ -0,0 +1,162 @@
1
+ /**
2
+ * 流程出口(连线)的增补。`add-link` / `add-links` 共用这一份逻辑。
3
+ *
4
+ * **关键坑:改已有行必须在 `updateRowIds` 里点名,否则静默无效。**
5
+ * `saveNodeLinkEditTable` 只对 `flag:'add'` 的行做新增;把一条**已有**行的字段改掉
6
+ * 再整体回传,服务端照样回「保存成功!」 `code:200` / `data.status:true`,
7
+ * **但那一行纹丝不动**(2026-09-22 实测,见 `test/workflow-links.test.ts`)。
8
+ * 传 `updateRowIds:[id]` 之后同一份报文立刻就生效。
9
+ *
10
+ * 这条直接决定「默认出口同源节点只一条」能不能落地:新加一条默认出口时,
11
+ * 必须把该源节点上原有的默认出口改成非默认 —— 那是一次**改已有行**,
12
+ * 漏了 `updateRowIds` 就会出现一个节点两条默认出口,而命令报「已添加」。
13
+ */
14
+ const BASE = '/api/bs/workflow/pathdef';
15
+ /** 服务端能接受的字段白名单。回读行里有十几个只读键,原样回传会「系统错误」。 */
16
+ const WRITABLE_KEYS = [
17
+ 'flag', 'id', 'srcNodeId', 'destNodeId', 'linkName',
18
+ 'isReject', 'isDefault', 'orderId', 'publicSegmentId',
19
+ ];
20
+ /** 清洗一条回读行为可写行:只留白名单键,`conditionKey` 单独重建。 */
21
+ export function toWritableRow(row) {
22
+ const out = {};
23
+ for (const k of WRITABLE_KEYS)
24
+ if (row?.[k] !== undefined)
25
+ out[k] = row[k];
26
+ out.conditionKey = {
27
+ conditionKey: row?.conditionKey?.conditionKey || '',
28
+ source: row?.conditionKey?.source || '2',
29
+ };
30
+ return out;
31
+ }
32
+ const isDefaultRow = (row) => String(row?.isDefault) === '1';
33
+ /**
34
+ * 规划一次批量增补:读回的行 + 新连线定义 + 已生成的 id → 完整提交行。
35
+ *
36
+ * 同一批里**同一源节点出现两条默认出口**直接报错。平台允许存两条,
37
+ * 但那是几乎必然是笔误的配置,且「谁把谁覆盖了」取决于批次内顺序、从结果上看不出来,
38
+ * 所以宁可挡住,也不静默取后者。
39
+ */
40
+ export function planLinks(existing, defs, newIds, global = {}) {
41
+ if (defs.length !== newIds.length) {
42
+ throw new Error(`内部错误: 连线定义 ${defs.length} 条、已生成 ID ${newIds.length} 个,数量不一致`);
43
+ }
44
+ const rows = existing.map(toWritableRow);
45
+ const byId = new Map(rows.map((r) => [String(r.id), r]));
46
+ const updateRowIds = new Set();
47
+ const expected = [];
48
+ // 先算每条的目标标志,才能判断同源多默认
49
+ const resolved = defs.map((d, i) => ({
50
+ def: d,
51
+ id: newIds[i],
52
+ reject: d.reject ?? global.reject ?? false,
53
+ isDefault: d.default ?? global.default ?? false,
54
+ }));
55
+ const defaultsBySource = new Map();
56
+ for (const r of resolved) {
57
+ if (!r.isDefault)
58
+ continue;
59
+ const src = String(r.def.from);
60
+ defaultsBySource.set(src, [...(defaultsBySource.get(src) ?? []), r.def.label]);
61
+ }
62
+ for (const [src, labels] of defaultsBySource) {
63
+ if (labels.length > 1) {
64
+ throw new Error(`源节点 ${src} 上一次性指定了 ${labels.length} 条默认出口(${labels.join('、')})。`
65
+ + '一个节点只能有一条默认出口,请只保留一条。');
66
+ }
67
+ }
68
+ for (const r of resolved) {
69
+ if (r.isDefault) {
70
+ // 该源节点上原有的默认出口要让位 —— 这是一次「改已有行」
71
+ for (const row of rows) {
72
+ if (String(row.srcNodeId) === String(r.def.from) && isDefaultRow(row)) {
73
+ row.isDefault = '0';
74
+ updateRowIds.add(String(row.id));
75
+ }
76
+ }
77
+ }
78
+ const newRow = {
79
+ flag: 'add',
80
+ id: r.id,
81
+ conditionKey: { conditionKey: '', source: '2' },
82
+ isReject: r.reject ? '1' : '0',
83
+ isDefault: r.isDefault ? '1' : '0',
84
+ srcNodeId: r.def.from,
85
+ destNodeId: r.def.to,
86
+ publicSegmentId: '',
87
+ linkName: r.def.label,
88
+ orderId: String(rows.length),
89
+ };
90
+ rows.push(newRow);
91
+ byId.set(r.id, newRow);
92
+ expected.push({ id: r.id, reject: r.reject, isDefault: r.isDefault });
93
+ }
94
+ return { rows, updateRowIds: [...updateRowIds], newIds, expected };
95
+ }
96
+ /** 提交。`updateRowIds` 为空时也要发(服务端接受空数组)。 */
97
+ export async function saveLinkRows(client, baseUrl, workflowId, plan) {
98
+ const res = await client.post(`${baseUrl}${BASE}/nodeLink/saveNodeLinkEditTable`, {
99
+ workflowId,
100
+ datas: JSON.stringify(plan.rows),
101
+ deleteRows: '',
102
+ changedLinkIds: '',
103
+ updateRowIds: plan.updateRowIds,
104
+ });
105
+ if (res?.code !== 200 || !res?.status || res?.fail !== false || res?.data?.status !== true) {
106
+ return { ok: false, message: res?.data?.msg || res?.msg || '未知错误' };
107
+ }
108
+ return { ok: true };
109
+ }
110
+ export async function fetchLinks(client, baseUrl, workflowId) {
111
+ const res = await client.get(`${baseUrl}${BASE}/nodeLink/getWfpNodeLinkTable?workflowId=${workflowId}&_=${Date.now()}`);
112
+ if (res?.code !== 200 || !res?.status) {
113
+ throw new Error(`读取出口列表失败: ${res?.msg || '未知错误'}`);
114
+ }
115
+ return res?.data?.data || [];
116
+ }
117
+ /**
118
+ * 回读比对 —— 保存回 `code:200` 不算数,**读回来一致才算数**。
119
+ *
120
+ * 校验两件事:新连线带上了预期的退回/默认标志;被让位的旧默认出口确实不再是默认。
121
+ * 另外兜一道「同源节点只能有一条默认出口」,因为那正是 `updateRowIds` 漏传时会破的地方。
122
+ */
123
+ export function verifyLinkPlan(after, plan) {
124
+ const byId = new Map(after.map((r) => [String(r.id), r]));
125
+ const problems = [];
126
+ for (const e of plan.expected) {
127
+ const row = byId.get(e.id);
128
+ if (!row) {
129
+ problems.push(`新连线 ${e.id} 保存后读不到`);
130
+ continue;
131
+ }
132
+ if (String(row.isReject) !== (e.reject ? '1' : '0')) {
133
+ problems.push(`连线 ${e.id} 的「退回」标志没生效(期望 ${e.reject ? '是' : '否'})`);
134
+ }
135
+ if (String(row.isDefault) !== (e.isDefault ? '1' : '0')) {
136
+ problems.push(`连线 ${e.id} 的「默认出口」标志没生效(期望 ${e.isDefault ? '是' : '否'})`);
137
+ }
138
+ }
139
+ for (const id of plan.updateRowIds) {
140
+ const row = byId.get(id);
141
+ if (row && isDefaultRow(row)) {
142
+ problems.push(`原默认出口 ${id} 没有被让位,现在同一节点存在多条默认出口`);
143
+ }
144
+ }
145
+ for (const [src, ids] of groupBySource(after)) {
146
+ if (ids.length > 1) {
147
+ problems.push(`源节点 ${src} 上有 ${ids.length} 条默认出口(应为 1 条)`);
148
+ }
149
+ }
150
+ return problems;
151
+ }
152
+ function groupBySource(rows) {
153
+ const out = new Map();
154
+ for (const r of rows) {
155
+ if (!isDefaultRow(r))
156
+ continue;
157
+ const src = String(r.srcNodeId);
158
+ out.set(src, [...(out.get(src) ?? []), String(r.id)]);
159
+ }
160
+ return out;
161
+ }
162
+ //# sourceMappingURL=workflow-links.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-links.js","sourceRoot":"","sources":["../../src/services/workflow-links.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,45 @@
13
13
  * - 布局视角:`pathLayoutManage/getLayoutInfoParams` → 每套布局被哪些节点引用;
14
14
  * - 列表视角:`ebuilder/flow/form/layout/list` → 这个表单有哪些布局。
15
15
  */
16
- import type { ApiClient } from '../core/client.js';
16
+ import { ApiClient } from '../core/client.js';
17
+ /**
18
+ * 表单有**两套互斥的路由**,同一件事要看表单是哪种:
19
+ *
20
+ * | | eb 表关联流程的表单 | 原生流程表单(不挂应用) |
21
+ * |---|---|---|
22
+ * | module | `ebuildercard` / `ebuilderform` | `workflow` |
23
+ * | 布局列表 | `/api/ebuilder/flow/form/layout/list` | `/api/workflow/core/form/layout/list` |
24
+ * | getFormLayout | `/api/ebuilder/form/builder/...` | `/api/workflow/core/form/builder/...` |
25
+ * | getConfig / initLayout | `/api/ebuilder/form/form/view/relate/...` | `/api/workflow/core/form/view/relate/...` |
26
+ *
27
+ * 走错一整套**不是报「不支持」,而是 500**:原生表单打 ebuilder 路由会回
28
+ * `appId is null` 或 `程序异常`(原生表单在 ebuilder 侧没有记录,服务端取 appId 时炸)。
29
+ * 表现就是「布局建得出来、也绑得上节点,但**排不了字段**」—— 因为排版那两个调用走的是 ebuilder。
30
+ *
31
+ * 所以**不能写死一套**,要按表单探测。两套的返回体形状是一致的(都是
32
+ * `formLayoutMultiplePage.result` / `configs`),所以只有路径和 module 分叉。
33
+ */
34
+ interface FormRoute {
35
+ kind: 'ebuilder' | 'workflow';
36
+ /** 布局列表 / 新建 / 删除走的 module。 */
37
+ cardModule: string;
38
+ /** 表单与视图类接口(getFormLayout / getConfig / initLayout)走的 module。 */
39
+ formModule: string;
40
+ /** getConfig / initLayout 的 apiModule。 */
41
+ apiModule: string;
42
+ /** getConfig 的 designerParam.sourceModule。 */
43
+ designerSource: string;
44
+ listLayouts: string;
45
+ saveLayout: string;
46
+ getFormLayout: string;
47
+ getConfig: string;
48
+ initLayout: string;
49
+ }
50
+ /**
51
+ * 探测该表单走哪套路由。**先试 ebuilder 再回落 workflow** —— eb 表关联流程的表单
52
+ * 打 core 路由会回「无工作流修改权限或工作流维护权限」,反过来同理,两套都试过才算数。
53
+ */
54
+ export declare function resolveFormRoute(client: ApiClient, formId: string): Promise<FormRoute>;
17
55
  /** 终端类型。移动端的「独立布局」与 PC 是两套独立的关系。 */
18
56
  export type Terminal = 'PC' | 'MOBILE';
19
57
  /**
@@ -201,9 +239,11 @@ export declare function listLayoutFields(client: ApiClient, formId: string): Pro
201
239
  * **只动目标布局**:`getFormLayout` 按 `layoutMultiId` 精确定位到目标布局,
202
240
  * `initLayout` 的 `formLayoutMultiple` 也带同一个 id。表单默认布局与其它布局不受影响。
203
241
  *
204
- * ⚠️ 必须走 **ebuilder 路径**(`/api/ebuilder/form/...` + `module:'ebuilderform'`)。
205
- * 流程表单那套 `/api/workflow/core/form/...` 在 eb 表关联流程的表单上会直接
206
- * 「无工作流修改权限或工作流维护权限」500,用不了。
242
+ * ⚠️ 路由**按表单探测**(见文件头的两套路由说明),不能写死:
243
+ * - eb 表关联流程的表单 → ebuilder 路径;
244
+ * - 原生流程表单(不挂应用)→ `/api/workflow/core/form/...`。
245
+ * 走错哪一套都是 500(`appId is null` / `程序异常` / 「无工作流修改权限」,视端点而定),
246
+ * 而不是回一句「不支持」—— 这正是「布局建得出来却排不了字段」的成因。
207
247
  */
208
248
  export declare function initNodeLayout(client: ApiClient, opts: InitLayoutOptions): Promise<{
209
249
  comps: number;
@@ -211,4 +251,5 @@ export declare function initNodeLayout(client: ApiClient, opts: InitLayoutOption
211
251
  layoutType: string;
212
252
  styleTemplateId: string;
213
253
  }>;
254
+ export {};
214
255
  //# sourceMappingURL=workflow-node-layout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-node-layout.d.ts","sourceRoot":"","sources":["../../src/services/workflow-node-layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-node-layout.d.ts","sourceRoot":"","sources":["../../src/services/workflow-node-layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9C;;;;;;;;;;;;;;;;GAgBG;AACH,UAAU,SAAS;IACjB,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;IAC9B,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAsDD;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAe5F;AAED,oCAAoC;AACpC,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,QAAQ,CAAC;AAEvC;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;AAE1C,wBAAwB;AACxB,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,uBAAuB;AACvB,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,mBAAmB;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AASD,wBAAwB;AACxB,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAO,GACtD,OAAO,CAAC,aAAa,EAAE,CAAC,CA6B1B;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,QAAe,GACxB,OAAO,CAAC;IACT,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACnE,CAAC,CAsBD;AAED,0CAA0C;AAC1C,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,QAAe,GACxB,OAAO,CAAC,eAAe,EAAE,CAAC,CAU5B;AAED,kBAAkB;AAClB,wBAAsB,aAAa,CACjC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED,oCAAoC;AACpC,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,GAC9G,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,GAClF,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAgB3E;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,GAChE,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAiBpE;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;CACxB;AAsBD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;IACJ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAClC,GACA,OAAO,CAAC,aAAa,CAAC,CAqExB;AAED,mCAAmC;AACnC,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC,CAwB/C;AAED,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAKD,oBAAoB;AACpB,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAiB9B;AAyBD;;;;;;;;;;;GAWG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC,CA6F3F"}
@@ -1,6 +1,87 @@
1
+ /**
2
+ * 流程节点独立布局 —— 节点上挂一套自己的表单布局,与表单默认布局并存。
3
+ *
4
+ * 关系是**互斥**的:一个节点同时只属于一套布局。把节点从 A 挪到 B 时,
5
+ * 服务端会自动把它从 A 摘掉,摘掉后该节点回落到表单默认布局(`layoutId` 置空)。
6
+ * 所以「绑定」这件事在接口层是**整集合覆盖**,不是增量追加:
7
+ * 1. 读目标布局当前的引用节点全集;
8
+ * 2. 加上/去掉本次要动的节点;
9
+ * 3. `updateQuoteNode(nodeIds=新集合, sourceNodeIds=旧集合)` 整包提交。
10
+ *
11
+ * 端点分工(同一件事的三个视角):
12
+ * - 节点视角:`nodeLayout/getDisplayLayoutForm` → 这个节点挂的是哪套;
13
+ * - 布局视角:`pathLayoutManage/getLayoutInfoParams` → 每套布局被哪些节点引用;
14
+ * - 列表视角:`ebuilder/flow/form/layout/list` → 这个表单有哪些布局。
15
+ */
16
+ import { ApiClient } from '../core/client.js';
1
17
  const PATHDEF = '/api/bs/workflow/pathdef';
2
18
  const FLOW_FORM = '/api/ebuilder/flow/form';
3
19
  const FORM_BUILDER = '/api/ebuilder/form/builder';
20
+ const ROUTE_EBUILDER = {
21
+ kind: 'ebuilder',
22
+ cardModule: 'ebuildercard',
23
+ formModule: 'ebuilderform',
24
+ apiModule: 'ebuilder/form',
25
+ designerSource: 'ebuilderform',
26
+ listLayouts: `${FLOW_FORM}/layout/list`,
27
+ saveLayout: `${FLOW_FORM}/layout/save`,
28
+ getFormLayout: `${FORM_BUILDER}/getFormLayout`,
29
+ getConfig: '/api/ebuilder/form/form/view/relate/getConfig',
30
+ initLayout: '/api/ebuilder/form/form/view/relate/initLayout',
31
+ };
32
+ const ROUTE_WORKFLOW = {
33
+ kind: 'workflow',
34
+ cardModule: 'workflow',
35
+ formModule: 'workflow',
36
+ apiModule: 'workflow/form',
37
+ designerSource: 'workflow',
38
+ listLayouts: '/api/workflow/core/form/layout/list',
39
+ saveLayout: '/api/workflow/core/form/layout/save',
40
+ getFormLayout: '/api/workflow/core/form/builder/getFormLayout',
41
+ getConfig: '/api/workflow/core/form/view/relate/getConfig',
42
+ initLayout: '/api/workflow/core/form/view/relate/initLayout',
43
+ };
44
+ /** 探测结果按 formId 缓存 —— 一个命令进程里同一表单只探一次。 */
45
+ const routeCache = new Map();
46
+ function getFormLayoutBody(formId, layoutMultiId) {
47
+ const body = {
48
+ formId, customParam: {}, formTableIdList: [],
49
+ designerParam: { onlyLayout: false, convert: false }, form: { id: formId },
50
+ };
51
+ if (layoutMultiId)
52
+ body.layoutMultiId = layoutMultiId;
53
+ return body;
54
+ }
55
+ async function probeRoute(client, formId, route) {
56
+ try {
57
+ const r = await client.post(`${client.getBaseUrl()}${route.getFormLayout}`, { ...getFormLayoutBody(formId), module: route.formModule },
58
+ // 探测失败**就是答案**(这表单不走这套路由),不该在用户眼前留一行像报错的东西
59
+ { ebbusinessid: formId, [ApiClient.SILENT]: '1' });
60
+ return r?.code === 200 && r?.status !== false ? r : null;
61
+ }
62
+ catch {
63
+ return null;
64
+ }
65
+ }
66
+ /**
67
+ * 探测该表单走哪套路由。**先试 ebuilder 再回落 workflow** —— eb 表关联流程的表单
68
+ * 打 core 路由会回「无工作流修改权限或工作流维护权限」,反过来同理,两套都试过才算数。
69
+ */
70
+ export async function resolveFormRoute(client, formId) {
71
+ const key = String(formId);
72
+ const cached = routeCache.get(key);
73
+ if (cached)
74
+ return cached;
75
+ if (await probeRoute(client, formId, ROUTE_EBUILDER)) {
76
+ routeCache.set(key, ROUTE_EBUILDER);
77
+ return ROUTE_EBUILDER;
78
+ }
79
+ if (await probeRoute(client, formId, ROUTE_WORKFLOW)) {
80
+ routeCache.set(key, ROUTE_WORKFLOW);
81
+ return ROUTE_WORKFLOW;
82
+ }
83
+ throw new Error(`表单 ${formId} 在 ebuilder 与 workflow 两套路由上都不通(都不是能读布局的表单,或当前账号无权限)`);
84
+ }
4
85
  function ok(res, op) {
5
86
  if (!res || res.code !== 200 || res.status === false) {
6
87
  throw new Error(`${op}失败:${res?.msg || '无响应'}`);
@@ -10,9 +91,10 @@ function ok(res, op) {
10
91
  /** 这个表单有哪些布局(含默认布局)。 */
11
92
  export async function listFormLayouts(client, formId, opts = {}) {
12
93
  const base = client.getBaseUrl();
13
- const d = ok(await client.post(`${base}${FLOW_FORM}/layout/list`, {
94
+ const route = await resolveFormRoute(client, formId);
95
+ const d = ok(await client.post(`${base}${route.listLayouts}`, {
14
96
  formId,
15
- module: 'ebuildercard',
97
+ module: route.cardModule,
16
98
  pageNo: 1,
17
99
  pageSize: 200,
18
100
  customParam: { workflowId: opts.workflowId || '', layoutIds: [], quoteNode: '' },
@@ -78,7 +160,12 @@ export async function getNodeLayout(client, workflowId, nodeId) {
78
160
  formId: String(d.formId),
79
161
  layoutId: String(d.layoutId || ''),
80
162
  defaultLayoutId: String(d.defaultLayoutId || ''),
81
- mLayoutId: String(d.mLayoutId || ''),
163
+ // ⚠️ 移动端独立布局的键是 **`mLayoutIdValue`** —— 接口压根不返回 `mLayoutId`
164
+ // (实测 `getDisplayLayoutForm` 的返回里只有前者)。原先读 `mLayoutId` 恒为空串,
165
+ // 于是「移动端独立布局」永远显示「(无)」,明明绑上了也看不出来。
166
+ mLayoutId: String(d.mLayoutIdValue ?? d.mLayoutId ?? ''),
167
+ // `mLayoutMode`(0=独立布局 / 1=读取PC端)**接口不回读**,所以别拿它显示状态,
168
+ // 那只会显示成「(未设)」——看着像没配,其实是读不到。
82
169
  mLayoutMode: String(d.mLayoutMode ?? ''),
83
170
  nodeFormRelateId: String(d.nodeFormRelateId || '-1'),
84
171
  permissionId: String(d.permissionId || '-1'),
@@ -149,6 +236,17 @@ const COPY_ALL = {
149
236
  viewLinkage: true,
150
237
  displayFormat: true,
151
238
  };
239
+ /** PC + MOBILE 两个终端的布局并集(按 id 去重)。跨终端找布局用,见 createFormLayout。 */
240
+ async function collectLayoutsBothTerminals(client, formId, workflowId) {
241
+ const byId = new Map();
242
+ for (const terminal of ['PC', 'MOBILE']) {
243
+ for (const row of await listFormLayouts(client, formId, { workflowId, terminal })) {
244
+ if (!byId.has(row.id))
245
+ byId.set(row.id, row);
246
+ }
247
+ }
248
+ return [...byId.values()];
249
+ }
152
250
  /**
153
251
  * 新建一套布局。返回新布局。
154
252
  *
@@ -163,13 +261,12 @@ export async function createFormLayout(client, opts) {
163
261
  // 复制模式下,类型默认跟来源走 —— 否则复制 EXCEL 的内容却声明成 FLOW,出来是坏的
164
262
  let srcLayoutType = '';
165
263
  if (opts.from) {
166
- const src = await listFormLayouts(client, opts.formId, {
167
- workflowId: opts.workflowId,
168
- terminal: opts.terminal,
169
- });
264
+ // **来源可能不在目标终端的列表里**:最常见的场景是「建一套移动端布局,内容抄 PC 默认布局」,
265
+ // 而移动端此刻一套布局都没有,只按 MOBILE 去列必然找不到。所以两个终端都列一遍再找。
266
+ const src = await collectLayoutsBothTerminals(client, opts.formId, opts.workflowId);
170
267
  const hit = src.find((x) => x.id === String(opts.from));
171
268
  if (!hit) {
172
- throw new Error(`复制来源布局 ${opts.from} 不在该表单的布局列表里。现有:${src.map((x) => `${x.name}(${x.id})`).join('、')}`);
269
+ throw new Error(`复制来源布局 ${opts.from} 不在该表单的布局列表里。现有:${src.map((x) => `${x.name}(${x.id})`).join('、') || '(该表单还没有任何布局)'}`);
173
270
  }
174
271
  srcLayoutType = hit.layoutType;
175
272
  }
@@ -177,8 +274,17 @@ export async function createFormLayout(client, opts) {
177
274
  if (layoutType !== 'FLOW' && layoutType !== 'EXCEL') {
178
275
  throw new Error(`布局类型只支持 FLOW(流式) / EXCEL(表格式),收到:${opts.layoutType}`);
179
276
  }
180
- const d = ok(await client.post(`${base}${FLOW_FORM}/layout/save`, {
181
- module: 'ebuildercard',
277
+ // **复制会锁类型**:平台按来源布局的类型定新布局的类型,显式传的 layoutType 压不过它
278
+ // (实测从 FLOW 来源复制 + 要求 EXCEL,落库仍是 FLOW)。冲突时必须拦下 ——
279
+ // 否则命令回一句「已新建」,用户拿到的是另一种类型,又是一次假成功。
280
+ if (opts.from && opts.layoutType && srcLayoutType && layoutType !== srcLayoutType) {
281
+ throw new Error(`复制布局时新布局的类型会跟来源走:来源 ${opts.from} 是 ${srcLayoutType},` +
282
+ `而你要求 ${layoutType},复制出来仍会是 ${srcLayoutType}。` +
283
+ `要建 ${layoutType} 布局请改加 --empty(空白布局,排版随后用 --init 配)。`);
284
+ }
285
+ const route = await resolveFormRoute(client, opts.formId);
286
+ const d = ok(await client.post(`${base}${route.saveLayout}`, {
287
+ module: route.cardModule,
182
288
  customParam: {
183
289
  workflowId: opts.workflowId,
184
290
  quoteNode: (opts.nodeIds || []).map((x) => String(x)),
@@ -210,17 +316,8 @@ export async function createFormLayout(client, opts) {
210
316
  /** 读某套布局的内容(不传 layoutId 读默认布局)。 */
211
317
  export async function getLayoutContent(client, formId, layoutId) {
212
318
  const base = client.getBaseUrl();
213
- const payload = {
214
- formId,
215
- module: 'ebuilderform',
216
- customParam: {},
217
- formTableIdList: [],
218
- designerParam: { onlyLayout: false, convert: false },
219
- form: { id: formId },
220
- };
221
- if (layoutId)
222
- payload.layoutMultiId = layoutId;
223
- const d = ok(await client.post(`${base}${FORM_BUILDER}/getFormLayout`, payload, { ebbusinessid: formId }), '读取布局内容');
319
+ const route = await resolveFormRoute(client, formId);
320
+ const d = ok(await client.post(`${base}${route.getFormLayout}`, { ...getFormLayoutBody(formId, layoutId), module: route.formModule }, { ebbusinessid: formId }), '读取布局内容');
224
321
  const fl = d?.formLayout || {};
225
322
  const flm = d?.formLayoutMultiple || {};
226
323
  return {
@@ -240,10 +337,8 @@ const TEMPLATE_EXCEL = '700000000000000008';
240
337
  /** 读某套布局的可摆字段清单。 */
241
338
  export async function listLayoutFields(client, formId) {
242
339
  const base = client.getBaseUrl();
243
- const d = ok(await client.post(`${base}${FORM_BUILDER}/getFormLayout`, {
244
- formId, module: 'ebuilderform', customParam: {}, formTableIdList: [],
245
- designerParam: { onlyLayout: false, convert: false }, form: { id: formId },
246
- }, { ebbusinessid: formId }), '读取表单字段');
340
+ const route = await resolveFormRoute(client, formId);
341
+ const d = ok(await client.post(`${base}${route.getFormLayout}`, { ...getFormLayoutBody(formId), module: route.formModule }, { ebbusinessid: formId }), '读取表单字段');
247
342
  const configs = await readConfigs(client, formId, d?.formLayout?.id || '');
248
343
  return configs.map((c) => ({
249
344
  label: fieldLabel(c),
@@ -257,10 +352,11 @@ function fieldLabel(c) {
257
352
  }
258
353
  async function readConfigs(client, formId, layoutId) {
259
354
  const base = client.getBaseUrl();
260
- const d = ok(await client.post(`${base}/api/ebuilder/form/form/view/relate/getConfig`, {
261
- formId, module: 'ebuilderform', apiModule: 'ebuilder/form', layoutId,
355
+ const route = await resolveFormRoute(client, formId);
356
+ const d = ok(await client.post(`${base}${route.getConfig}`, {
357
+ formId, module: route.formModule, apiModule: route.apiModule, layoutId,
262
358
  customParam: { terminal: '', objId: formId }, initMode: 5, groupFieldIds: [],
263
- designerParam: { sourceModule: 'ebuilderform' },
359
+ designerParam: { sourceModule: route.designerSource },
264
360
  }, { ebbusinessid: formId }), '读取布局字段配置');
265
361
  return d?.configs || [];
266
362
  }
@@ -270,19 +366,18 @@ async function readConfigs(client, formId, layoutId) {
270
366
  * **只动目标布局**:`getFormLayout` 按 `layoutMultiId` 精确定位到目标布局,
271
367
  * `initLayout` 的 `formLayoutMultiple` 也带同一个 id。表单默认布局与其它布局不受影响。
272
368
  *
273
- * ⚠️ 必须走 **ebuilder 路径**(`/api/ebuilder/form/...` + `module:'ebuilderform'`)。
274
- * 流程表单那套 `/api/workflow/core/form/...` 在 eb 表关联流程的表单上会直接
275
- * 「无工作流修改权限或工作流维护权限」500,用不了。
369
+ * ⚠️ 路由**按表单探测**(见文件头的两套路由说明),不能写死:
370
+ * - eb 表关联流程的表单 → ebuilder 路径;
371
+ * - 原生流程表单(不挂应用)→ `/api/workflow/core/form/...`。
372
+ * 走错哪一套都是 500(`appId is null` / `程序异常` / 「无工作流修改权限」,视端点而定),
373
+ * 而不是回一句「不支持」—— 这正是「布局建得出来却排不了字段」的成因。
276
374
  */
277
375
  export async function initNodeLayout(client, opts) {
278
376
  const base = client.getBaseUrl();
279
377
  const ebb = { ebbusinessid: opts.formId };
280
- // 1. 按 layoutMultiId 精确定位目标布局
281
- const meta = ok(await client.post(`${base}${FORM_BUILDER}/getFormLayout`, {
282
- formId: opts.formId, module: 'ebuilderform', customParam: {}, formTableIdList: [],
283
- designerParam: { onlyLayout: false, convert: false }, form: { id: opts.formId },
284
- layoutMultiId: opts.layoutId,
285
- }, ebb), '定位目标布局');
378
+ const route = await resolveFormRoute(client, opts.formId);
379
+ // 1. 按 layoutMultiId 精确定位目标布局(拿到的是**运行时 layoutId**,比 multiId 大 1)
380
+ const meta = ok(await client.post(`${base}${route.getFormLayout}`, { ...getFormLayoutBody(opts.formId, opts.layoutId), module: route.formModule }, ebb), '定位目标布局');
286
381
  const layoutId = String(meta?.formLayout?.id || '');
287
382
  const flm = meta?.formLayoutMultiple || {};
288
383
  if (!layoutId || String(flm.id || '') !== String(opts.layoutId)) {
@@ -290,8 +385,14 @@ export async function initNodeLayout(client, opts) {
290
385
  '为避免误改默认布局,已中止。');
291
386
  }
292
387
  const layoutType = String(flm.layoutType || 'FLOW');
293
- // 2. getConfig 恒返回表单全量字段(与布局无关),作为「全摆」的基准
294
- const all = await readConfigs(client, opts.formId, layoutId);
388
+ // 2. 摆哪些字段:**必须取「默认布局」那份 configs**,不是目标布局自己的。
389
+ //
390
+ // 这一步踩过一次,别改回去:拿目标布局的 runtime id 去 getConfig 也能回一份 configs
391
+ // (字段数看着一样),但拿它 initLayout **写不进目标布局** —— 接口回 200、回读仍是
392
+ // `comps: 0`,是个**静默失败**。换成默认布局那份立刻落库。
393
+ // 表现就是「布局建得出来、节点也绑上了,就是字段怎么也排不进去」。
394
+ const defMeta = ok(await client.post(`${base}${route.getFormLayout}`, { ...getFormLayoutBody(opts.formId), module: route.formModule }, ebb), '读取默认布局');
395
+ const all = await readConfigs(client, opts.formId, String(defMeta?.formLayout?.id || ''));
295
396
  // 3. 只摆指定字段:业务字段按名单过滤;系统字段保留在 configs 里(不会变成组件),
296
397
  // 与平台自身的提交形态一致。
297
398
  let configs = all;
@@ -315,8 +416,8 @@ export async function initNodeLayout(client, opts) {
315
416
  }
316
417
  }
317
418
  const styleTemplateId = opts.styleTemplateId || (layoutType === 'EXCEL' ? TEMPLATE_EXCEL : TEMPLATE_FLOW);
318
- const res = ok(await client.post(`${base}/api/ebuilder/form/form/view/relate/initLayout`, {
319
- formId: opts.formId, module: 'ebuilderform', apiModule: 'ebuilder/form',
419
+ const res = ok(await client.post(`${base}${route.initLayout}`, {
420
+ formId: opts.formId, module: route.formModule, apiModule: route.apiModule,
320
421
  layoutId, generateCollapse: true,
321
422
  styleTemplateId, styleTemplateType: 1,
322
423
  configs, addLayout: false, ecodeType: ['js', 'css'], initMode: '1',
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-node-layout.js","sourceRoot":"","sources":["../../src/services/workflow-node-layout.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,GAAG,0BAA0B,CAAC;AAC3C,MAAM,SAAS,GAAG,yBAAyB,CAAC;AAC5C,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAwDlD,SAAS,EAAE,CAAC,GAAQ,EAAE,EAAU;IAC9B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,EAAE,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,wBAAwB;AACxB,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAiB,EACjB,MAAc,EACd,OAAqD,EAAE;IAEvD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,GAAG,SAAS,cAAc,EACjC;QACE,MAAM;QACN,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,GAAG;QACb,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;QAChF,mBAAmB,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE;QAC5D,KAAK,EAAE,IAAI;KACZ,EACD,EAAE,YAAY,EAAE,MAAM,EAAE,CACzB,EACD,QAAQ,CACT,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,EAAE,sBAAsB,IAAI,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAU,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IACnE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtB,GAAG,CAAC;QACJ,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC;QAC1C,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;QACtC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;KACzB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAiB,EACjB,UAAkB,EAClB,WAAqB,IAAI;IASzB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,GAAG,CACd,GAAG,IAAI,GAAG,OAAO,sDAAsD,QAAQ,eAAe,UAAU,EAAE,CAC3G,EACD,UAAU,CACX,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsD,CAAC;IAC/E,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAM,CAAC,EAAE,mBAAmB,IAAI,EAAE,CAAC,EAAE,CAAC;QACzE,MAAM,OAAO,GAAa,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAa,CAAC,CAAC,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9F,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChG,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC;QACjC,eAAe,EAAE,KAAK,CAAC,iBAAiB,CAAC;QACzC,iBAAiB,EAAE,MAAM,CAAC,CAAC,EAAE,iBAAiB,IAAI,EAAE,CAAC;QACrD,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAiB,EACjB,MAAc,EACd,UAAkB,EAClB,WAAqB,IAAI;IAEzB,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;QACzD,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;KACpE,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzB,GAAG,CAAC;QACJ,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,IAAI,EAAE;QACjD,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,IAAI,EAAE;KACtD,CAAC,CAAC,CAAC;AACN,CAAC;AAED,kBAAkB;AAClB,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAiB,EACjB,UAAkB,EAClB,MAAc;IAEd,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,GAAG,CACd,GAAG,IAAI,GAAG,OAAO,+CAA+C,UAAU,WAAW,MAAM,EAAE,CAC9F,EACD,QAAQ,CACT,CAAC;IACF,IAAI,CAAC,CAAC,EAAE,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,WAAW,MAAM,GAAG,CAAC,CAAC;IACxF,OAAO;QACL,GAAG,CAAC;QACJ,MAAM;QACN,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;QAChD,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;QACpC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;QACxC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,gBAAgB,IAAI,IAAI,CAAC;QACpD,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC;QAC5C,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB;KAC/C,CAAC;AACJ,CAAC;AAED,oCAAoC;AACpC,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAiB,EACjB,IAA+G;IAE/G,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,EAAE,CACA,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,8BAA8B,EAAE;QACjE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;QAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,aAAa,EAAE,IAAI,CAAC,aAAa;KAClC,CAAC,EACF,UAAU,CACX,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAiB,EACjB,IAAmF;IAEnF,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;IACvC,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;IACzE,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;IACtE,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/C,MAAM,eAAe,CAAC,MAAM,EAAE;QAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,OAAO;QACtB,QAAQ;KACT,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAiB,EACjB,IAAiE;IAEjE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAEpE,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9D,MAAM,eAAe,CAAC,MAAM,EAAE;QAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ;QACR,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,OAAO;QACtB,QAAQ;KACT,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACpD,CAAC;AAeD,MAAM,QAAQ,GAAe;IAC3B,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,WAAW,EAAE,IAAI;IACjB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAiB,EACjB,IAaC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAEjC,kDAAkD;IAClD,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACrD,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,CAAC,IAAI,mBAAmB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACvF,CAAC;QACJ,CAAC;QACD,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC;IACjC,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,aAAa,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACpF,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,GAAG,SAAS,cAAc,EACjC;QACE,MAAM,EAAE,cAAc;QACtB,WAAW,EAAE;YACX,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACrD,YAAY,EAAE,IAAI;SACnB;QACD,kBAAkB,EAAE;YAClB,YAAY,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;YACnC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC7B,UAAU;SACX;QACD,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE;QACvD,0BAA0B;QAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,EACD,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAC9B,EACD,MAAM,CACP,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,EAAE,kBAAkB,IAAI,EAAE,CAAC;IACxC,OAAO;QACL,GAAG,GAAG;QACN,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;QACxB,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QACnC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC/D,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC;QAChD,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS;KAC3B,CAAC;AACJ,CAAC;AAED,mCAAmC;AACnC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAiB,EACjB,MAAc,EACd,QAAiB;IAEjB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,OAAO,GAA4B;QACvC,MAAM;QACN,MAAM,EAAE,cAAc;QACtB,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,EAAE;QACnB,aAAa,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;QACpD,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;KACrB,CAAC;IACF,IAAI,QAAQ;QAAE,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC;IAC/C,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,YAAY,gBAAgB,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAC5F,QAAQ,CACT,CAAC;IACF,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,CAAC,EAAE,kBAAkB,IAAI,EAAE,CAAC;IACxC,OAAO;QACL,MAAM,EAAE,EAAE;QACV,IAAI,EAAE;YACJ,GAAG,GAAG;YACN,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,QAAQ,IAAI,EAAE,CAAC;YACpC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAC5B,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;YAC5C,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;YACxC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS;SAC3B;KACF,CAAC;AACJ,CAAC;AA8BD,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAE5C,oBAAoB;AACpB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAiB,EACjB,MAAc;IAEd,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,GAAG,YAAY,gBAAgB,EACtC;QACE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE;QACpE,aAAa,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;KAC3E,EACD,EAAE,YAAY,EAAE,MAAM,EAAE,CACzB,EACD,QAAQ,CACT,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;KACnB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,6DAA6D;AAC7D,SAAS,UAAU,CAAC,CAAM;IACxB,OAAO,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,SAAS,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACxF,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,MAAiB,EAAE,MAAc,EAAE,QAAgB;IAC5E,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,+CAA+C,EACtD;QACE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ;QACpE,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE;QAC5E,aAAa,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE;KAChD,EACD,EAAE,YAAY,EAAE,MAAM,EAAE,CACzB,EACD,UAAU,CACX,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAiB,EACjB,IAAuB;IAEvB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,GAAG,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IAE1C,8BAA8B;IAC9B,MAAM,IAAI,GAAG,EAAE,CACb,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,GAAG,YAAY,gBAAgB,EACtC;QACE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE;QACjF,aAAa,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;QAC/E,aAAa,EAAE,IAAI,CAAC,QAAQ;KAC7B,EACD,GAAG,CACJ,EACD,QAAQ,CACT,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,EAAE,kBAAkB,IAAI,EAAE,CAAC;IAC3C,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,mBAAmB,IAAI,CAAC,QAAQ,cAAc,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI;YAC7D,gBAAgB,CACnB,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAE7D,iDAAiD;IACjD,mBAAmB;IACnB,IAAI,OAAO,GAAG,GAAG,CAAC;IAClB,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE;YAC9B,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChF,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBACjC,QAAQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC5B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAEpF,MAAM,GAAG,GAAG,EAAE,CACZ,MAAM,MAAM,CAAC,IAAI,CACf,GAAG,IAAI,gDAAgD,EACvD;QACE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe;QACvE,QAAQ,EAAE,gBAAgB,EAAE,IAAI;QAChC,eAAe,EAAE,iBAAiB,EAAE,CAAC;QACrC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG;QAClE,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;QACjD,kBAAkB,EAAE;YAClB,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YACpE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,UAAU;SAC3D;QACD,aAAa,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE;KACrC,EACD,GAAG,CACJ,EACD,MAAM,CACP,CAAC;IAEF,MAAM,KAAK,GAAG,GAAG,EAAE,WAAW,IAAI,GAAG,EAAE,UAAU,EAAE,WAAW,CAAC;IAC/D,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACrE,MAAM,KAAK,GAAU,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,KAAK;SACjB,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;SAC7E,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"workflow-node-layout.js","sourceRoot":"","sources":["../../src/services/workflow-node-layout.ts"],"names":[],"mappings":"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"}