@fudanda/workflow 2.20261024.1-beta.2 → 2.20261109.1-beta.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 (293) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +114 -114
  3. package/THIRD-PARTY-NOTICES.md +57 -57
  4. package/dist/{ai-markdown-esl-I5ck.js → ai-markdown--SqEglSn.js} +1 -2
  5. package/dist/chrome.js +46 -53
  6. package/dist/core.js +3 -3
  7. package/dist/{header-shortcuts-BQZuNfpA.js → header-shortcuts-BcwVJV2g.js} +1 -2
  8. package/dist/index.js +925 -1000
  9. package/dist/{schema-tree-CTM6hEdm.js → schema-tree-B4yoWS9A.js} +5 -10
  10. package/dist/{start-form-L6xw9phk.js → start-form-DWlAhZhs.js} +169 -335
  11. package/dist/styles.css +1 -1
  12. package/dist/{test-input-validation-CkORPCfm.js → test-input-validation-Ch9pS4X8.js} +1 -2
  13. package/package.json +108 -106
  14. package/vendor/coze/LICENSE-APACHE +177 -177
  15. package/vendor/coze/UPSTREAM.json +8 -8
  16. package/vendor/coze/original/base-test-button.tsx +22 -22
  17. package/vendor/coze/original/comment-container.tsx +68 -68
  18. package/vendor/coze/original/condition-container.tsx +60 -60
  19. package/vendor/coze/original/condition-tag.tsx +58 -58
  20. package/vendor/coze/original/coze-global.less +234 -234
  21. package/vendor/coze/original/create-loop-function-json.ts +134 -134
  22. package/vendor/coze/original/create-loop-function.ts +56 -56
  23. package/vendor/coze/original/end-registry.ts +41 -41
  24. package/vendor/coze/original/execute-result-panel.less +97 -97
  25. package/vendor/coze/original/execute-result-panel.tsx +171 -171
  26. package/vendor/coze/original/form-item.less +39 -39
  27. package/vendor/coze/original/form-item.tsx +200 -200
  28. package/vendor/coze/original/http-api-field.tsx +42 -42
  29. package/vendor/coze/original/http-form-render.tsx +102 -102
  30. package/vendor/coze/original/icon-add.svg +3 -3
  31. package/vendor/coze/original/icon-arrow-left.svg +3 -3
  32. package/vendor/coze/original/icon-auto-layout.svg +18 -18
  33. package/vendor/coze/original/icon-code.svg +13 -13
  34. package/vendor/coze/original/icon-condition.svg +12 -12
  35. package/vendor/coze/original/icon-database.svg +18 -18
  36. package/vendor/coze/original/icon-delete.svg +5 -5
  37. package/vendor/coze/original/icon-fullscreen.svg +9 -9
  38. package/vendor/coze/original/icon-more.svg +11 -11
  39. package/vendor/coze/original/icon-play-round-outlined.svg +8 -8
  40. package/vendor/coze/original/icon-plugin-tool.svg +6 -6
  41. package/vendor/coze/original/icon-standard-copy.svg +8 -8
  42. package/vendor/coze/original/icon-unknown.svg +7 -7
  43. package/vendor/coze/original/icon-var.svg +6 -6
  44. package/vendor/coze/original/icon-workflow-end.svg +5 -5
  45. package/vendor/coze/original/icon-workflow-start.svg +5 -5
  46. package/vendor/coze/original/icon-workflow.svg +21 -21
  47. package/vendor/coze/original/icon-workflows.svg +5 -5
  48. package/vendor/coze/original/if-form-meta.tsx +88 -88
  49. package/vendor/coze/original/logic-display.tsx +33 -33
  50. package/vendor/coze/original/mouse-icon.tsx +35 -35
  51. package/vendor/coze/original/mouse-pad-selector.tsx +180 -180
  52. package/vendor/coze/original/node-card.tsx +77 -77
  53. package/vendor/coze/original/node-category-panel.less +4 -4
  54. package/vendor/coze/original/node-category-panel.tsx +53 -53
  55. package/vendor/coze/original/node-config-form.tsx +67 -67
  56. package/vendor/coze/original/node-header.less +165 -165
  57. package/vendor/coze/original/node-header.tsx +552 -552
  58. package/vendor/coze/original/node-panel.less +183 -183
  59. package/vendor/coze/original/node-render.less +20 -20
  60. package/vendor/coze/original/node-side-sheet.less +57 -57
  61. package/vendor/coze/original/node-side-sheet.tsx +214 -214
  62. package/vendor/coze/original/node-wrapper.tsx +71 -71
  63. package/vendor/coze/original/pad-icon.tsx +45 -45
  64. package/vendor/coze/original/resizable-side-panel-constants.ts +18 -18
  65. package/vendor/coze/original/resizable-side-panel.tsx +42 -42
  66. package/vendor/coze/original/start-registry.ts +53 -53
  67. package/vendor/coze/original/sub-canvas-background.less +4 -4
  68. package/vendor/coze/original/sub-canvas-background.tsx +48 -48
  69. package/vendor/coze/original/sub-canvas-container.less +16 -16
  70. package/vendor/coze/original/sub-canvas-container.tsx +97 -97
  71. package/vendor/coze/original/sub-canvas-header.less +75 -75
  72. package/vendor/coze/original/sub-canvas-header.tsx +95 -95
  73. package/vendor/coze/original/test-form-sheet-header.tsx +82 -82
  74. package/vendor/coze/original/test-form-sheet.less +178 -178
  75. package/vendor/coze/original/toolbar-add-node.tsx +68 -68
  76. package/vendor/coze/original/toolbar-auto-layout.tsx +61 -61
  77. package/vendor/coze/original/toolbar-comment.tsx +121 -121
  78. package/vendor/coze/original/toolbar-container.tsx +42 -42
  79. package/vendor/coze/original/toolbar-interactive.tsx +98 -98
  80. package/vendor/coze/original/toolbar-minimap-switch.tsx +41 -41
  81. package/vendor/coze/original/toolbar-tools.less +46 -46
  82. package/vendor/coze/original/toolbar-tools.tsx +89 -89
  83. package/vendor/coze/original/toolbar-zoom.tsx +134 -134
  84. package/vendor/coze/original/tree-variable-selector.less +291 -291
  85. package/vendor/coze/original/tree-variable-selector.tsx +298 -298
  86. package/vendor/coze/original/workflow-document-custom-options.ts +151 -151
  87. package/vendor/coze/original/workflow-header.less +65 -65
  88. package/vendor/coze/original/workflow-header.tsx +85 -85
  89. package/vendor/coze/source/agent-models/model-option/index.module.less +18 -18
  90. package/vendor/coze/source/agent-models/model-option/index.tsx +321 -321
  91. package/vendor/coze/source/agent-models/model-option-avatar/index.tsx +175 -175
  92. package/vendor/coze/source/agent-models/model-option-group/index.tsx +87 -87
  93. package/vendor/coze/source/agent-models/model-option-thumb/index.tsx +41 -41
  94. package/vendor/coze/source/agent-models/model-select-ui/index.tsx +238 -238
  95. package/vendor/coze/source/agent-models/popover-model-list-view/index.tsx +146 -146
  96. package/vendor/coze/source/components/code-editor/text-editor.tsx +71 -71
  97. package/vendor/coze/source/components/comment/components/editor/block.tsx +117 -117
  98. package/vendor/coze/source/components/comment/components/editor/leaf.tsx +64 -64
  99. package/vendor/coze/source/components/comment/components/toolbar.tsx +366 -366
  100. package/vendor/coze/source/components/comment/constant.ts +94 -94
  101. package/vendor/coze/source/components/editor-container/expand-editor/index.module.less +107 -107
  102. package/vendor/coze/source/components/editor-container/expand-editor/index.tsx +117 -117
  103. package/vendor/coze/source/components/model-select/components/model-setting.tsx +300 -300
  104. package/vendor/coze/source/components/model-select/components/settings.tsx +144 -144
  105. package/vendor/coze/source/components/model-select/index.module.less +34 -34
  106. package/vendor/coze/source/components/model-select/utils/index.tsx +100 -100
  107. package/vendor/coze/source/components/node-render/node-render-new/fields/constants.tsx +79 -79
  108. package/vendor/coze/source/components/node-render/node-render-new/fields/field-empty.module.less +12 -12
  109. package/vendor/coze/source/components/node-render/node-render-new/fields/field-empty.tsx +37 -37
  110. package/vendor/coze/source/components/node-render/node-render-new/fields/field.module.less +19 -19
  111. package/vendor/coze/source/components/node-render/node-render-new/fields/field.tsx +52 -52
  112. package/vendor/coze/source/components/node-render/node-render-new/fields/http-api-field/index.tsx +42 -42
  113. package/vendor/coze/source/components/node-render/node-render-new/fields/overflow-tag-list.module.less +47 -47
  114. package/vendor/coze/source/components/node-render/node-render-new/fields/overflow-tag-list.tsx +162 -162
  115. package/vendor/coze/source/components/node-render/node-render-new/fields/variable-tag-list.module.less +48 -48
  116. package/vendor/coze/source/components/node-render/node-render-new/fields/variable-tag-list.tsx +126 -126
  117. package/vendor/coze/source/components/node-wrapper/execute-result-panel/index.module.less +97 -97
  118. package/vendor/coze/source/components/node-wrapper/execute-result-panel/index.tsx +171 -171
  119. package/vendor/coze/source/components/sub-canvas/components/background/index.module.less +4 -4
  120. package/vendor/coze/source/components/sub-canvas/components/header/index.module.less +75 -75
  121. package/vendor/coze/source/components/test-run/test-run-button/single-node.tsx +158 -158
  122. package/vendor/coze/source/execution-panel/panel.module.less +48 -48
  123. package/vendor/coze/source/execution-panel/panel.tsx +99 -99
  124. package/vendor/coze/source/execution-panel/use-resize.ts +79 -79
  125. package/vendor/coze/source/external/features/log/components/data-viewer/constants.ts +28 -28
  126. package/vendor/coze/source/external/features/log/components/data-viewer/context/context.ts +21 -21
  127. package/vendor/coze/source/external/features/log/components/data-viewer/context/create-store.ts +48 -48
  128. package/vendor/coze/source/external/features/log/components/data-viewer/context/index.ts +19 -19
  129. package/vendor/coze/source/external/features/log/components/data-viewer/context/provider.tsx +50 -50
  130. package/vendor/coze/source/external/features/log/components/data-viewer/data-viewer.module.less +26 -26
  131. package/vendor/coze/source/external/features/log/components/data-viewer/data-viewer.tsx +79 -79
  132. package/vendor/coze/source/external/features/log/components/data-viewer/hooks/index.ts +18 -18
  133. package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-data-viewer-store.ts +29 -29
  134. package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-expand.ts +35 -35
  135. package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-value.tsx +66 -66
  136. package/vendor/coze/source/external/features/log/components/data-viewer/index.tsx +21 -21
  137. package/vendor/coze/source/external/features/log/components/data-viewer/json-field/index.tsx +186 -186
  138. package/vendor/coze/source/external/features/log/components/data-viewer/json-field/json-field.module.less +79 -79
  139. package/vendor/coze/source/external/features/log/components/data-viewer/types.ts +50 -50
  140. package/vendor/coze/source/external/features/log/components/data-viewer/utils/big-number.ts +35 -35
  141. package/vendor/coze/source/external/features/log/components/data-viewer/utils/generate-field.ts +104 -104
  142. package/vendor/coze/source/external/features/log/components/log-parser/log-wrap.module.less +27 -27
  143. package/vendor/coze/source/external/features/log/components/log-parser/log-wrap.tsx +109 -109
  144. package/vendor/coze/source/external/features/log/components/node-status-bar/node-status-bar.module.less +52 -52
  145. package/vendor/coze/source/external/features/log/components/node-status-bar/node-status-bar.tsx +113 -113
  146. package/vendor/coze/source/form/components/field-empty.tsx +45 -45
  147. package/vendor/coze/source/form/components/section.tsx +91 -91
  148. package/vendor/coze/source/form-extensions/components/add-item-button/index.tsx +64 -64
  149. package/vendor/coze/source/form-extensions/components/form-card/index.module.less +131 -131
  150. package/vendor/coze/source/form-extensions/components/form-card/index.tsx +309 -309
  151. package/vendor/coze/source/form-extensions/components/form-item/index.module.less +39 -39
  152. package/vendor/coze/source/form-extensions/components/form-item/index.tsx +200 -200
  153. package/vendor/coze/source/form-extensions/components/form-item-feedback/index.module.less +7 -7
  154. package/vendor/coze/source/form-extensions/components/form-item-feedback/index.tsx +39 -39
  155. package/vendor/coze/source/form-extensions/components/level-line/index.module.less +346 -346
  156. package/vendor/coze/source/form-extensions/components/level-line/index.ts +17 -17
  157. package/vendor/coze/source/form-extensions/components/level-line/level-line.tsx +460 -460
  158. package/vendor/coze/source/form-extensions/components/level-line/types.ts +38 -38
  159. package/vendor/coze/source/form-extensions/components/level-line/utils.ts +60 -60
  160. package/vendor/coze/source/form-extensions/components/literal-value-input/constants.ts +61 -61
  161. package/vendor/coze/source/form-extensions/components/literal-value-input/input-boolean.tsx +80 -80
  162. package/vendor/coze/source/form-extensions/components/literal-value-input/input-integer.tsx +68 -68
  163. package/vendor/coze/source/form-extensions/components/literal-value-input/input-number.tsx +62 -62
  164. package/vendor/coze/source/form-extensions/components/literal-value-input/input-select.tsx +59 -59
  165. package/vendor/coze/source/form-extensions/components/literal-value-input/input-string.tsx +55 -55
  166. package/vendor/coze/source/form-extensions/components/literal-value-input/literal-value-input.tsx +35 -35
  167. package/vendor/coze/source/form-extensions/components/literal-value-input/styles.module.less +46 -46
  168. package/vendor/coze/source/form-extensions/components/literal-value-input/type.ts +61 -61
  169. package/vendor/coze/source/form-extensions/components/literal-value-input/utils.tsx +117 -117
  170. package/vendor/coze/source/form-extensions/components/node-header/components/close-button.tsx +44 -44
  171. package/vendor/coze/source/form-extensions/components/node-header/description-display.tsx +52 -52
  172. package/vendor/coze/source/form-extensions/components/node-header/description.tsx +131 -131
  173. package/vendor/coze/source/form-extensions/components/node-header/index.module.less +165 -165
  174. package/vendor/coze/source/form-extensions/components/node-header/index.tsx +552 -552
  175. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-btn/index.tsx +43 -43
  176. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/default-value-input.tsx +276 -276
  177. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/index.module.less +124 -124
  178. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/index.tsx +131 -131
  179. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/types.ts +32 -32
  180. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-name/index.module.less +38 -38
  181. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-name/index.tsx +101 -101
  182. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-operator/index.module.less +51 -51
  183. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-operator/index.tsx +107 -107
  184. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-required/index.module.less +17 -17
  185. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-required/index.tsx +53 -53
  186. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/constants.tsx +77 -77
  187. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/index.module.less +97 -97
  188. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/index.tsx +155 -155
  189. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/constants.ts +38 -38
  190. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/index.module.less +138 -138
  191. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/index.tsx +360 -360
  192. package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/type.ts +88 -88
  193. package/vendor/coze/source/form-extensions/components/output-tree/components/header/index.module.less +36 -36
  194. package/vendor/coze/source/form-extensions/components/output-tree/components/header/index.tsx +104 -104
  195. package/vendor/coze/source/form-extensions/components/output-tree/constants.ts +22 -22
  196. package/vendor/coze/source/form-extensions/components/output-tree/context.ts +28 -28
  197. package/vendor/coze/source/form-extensions/components/output-tree/hooks/use-columns-style.ts +39 -39
  198. package/vendor/coze/source/form-extensions/components/output-tree/index.module.less +83 -83
  199. package/vendor/coze/source/form-extensions/components/output-tree/index.tsx +692 -692
  200. package/vendor/coze/source/form-extensions/components/output-tree/utils.ts +185 -185
  201. package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/index.tsx +97 -97
  202. package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/option-item.tsx +30 -30
  203. package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/types.ts +23 -23
  204. package/vendor/coze/source/form-extensions/components/setting-on-error/components/retry-times/index.tsx +45 -45
  205. package/vendor/coze/source/form-extensions/components/setting-on-error/components/timeout/index.tsx +102 -102
  206. package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select-option.tsx +167 -167
  207. package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select-tree-panel.tsx +165 -165
  208. package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select.module.less +96 -96
  209. package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select.tsx +265 -265
  210. package/vendor/coze/source/form-extensions/components/tree-variable-selector/context.tsx +42 -42
  211. package/vendor/coze/source/form-extensions/components/tree-variable-selector/expand-icon.tsx +30 -30
  212. package/vendor/coze/source/form-extensions/components/tree-variable-selector/index.module.less +291 -291
  213. package/vendor/coze/source/form-extensions/components/tree-variable-selector/node-variable-tree.module.less +48 -48
  214. package/vendor/coze/source/form-extensions/components/tree-variable-selector/node-variable-tree.tsx +149 -149
  215. package/vendor/coze/source/form-extensions/components/tree-variable-selector/utils.tsx +500 -500
  216. package/vendor/coze/source/form-extensions/components/tree-variable-selector/value-display.tsx +130 -130
  217. package/vendor/coze/source/form-extensions/components/value-expression-input/const.ts +68 -68
  218. package/vendor/coze/source/form-extensions/components/value-expression-input/context.ts +27 -27
  219. package/vendor/coze/source/form-extensions/components/value-expression-input/index.module.less +144 -144
  220. package/vendor/coze/source/form-extensions/components/value-expression-input/value-expression-input.tsx +418 -418
  221. package/vendor/coze/source/form-extensions/components/variable-type-selector/constants.tsx +77 -77
  222. package/vendor/coze/source/form-extensions/components/variable-type-selector/index.module.less +31 -31
  223. package/vendor/coze/source/form-extensions/components/variable-type-selector/index.tsx +17 -17
  224. package/vendor/coze/source/form-extensions/components/variable-type-selector/utils.tsx +298 -298
  225. package/vendor/coze/source/form-extensions/components/variable-type-selector/variable-type-selector.tsx +235 -235
  226. package/vendor/coze/source/form-extensions/components/variable-type-tag/index.tsx +54 -54
  227. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-branch.module.less +9 -9
  228. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-branch.tsx +249 -249
  229. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-header.tsx +50 -50
  230. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-item-logic.module.less +13 -13
  231. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-item-logic.tsx +73 -73
  232. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/delete/index.module.less +10 -10
  233. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/delete/index.tsx +42 -42
  234. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/index.module.less +9 -9
  235. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/index.tsx +254 -254
  236. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/operator/index.module.less +7 -7
  237. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/operator/index.tsx +144 -144
  238. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/value-expression-with-state/index.tsx +69 -69
  239. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/context.ts +36 -36
  240. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/condition-branch-preview.tsx +44 -44
  241. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/condition-branch.tsx +152 -152
  242. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/container.tsx +19 -19
  243. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/custom-drag-layer.tsx +117 -117
  244. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/types.ts +18 -18
  245. package/vendor/coze/source/form-extensions/setters/condition/multi-condition/types.ts +58 -58
  246. package/vendor/coze/source/node-registries/end/components/terminate-plan-field.tsx +29 -29
  247. package/vendor/coze/source/node-registries/end/constants.ts +34 -34
  248. package/vendor/coze/source/node-registries/end/form.tsx +66 -66
  249. package/vendor/coze/source/node-registries/end/types.ts +45 -45
  250. package/vendor/coze/source/node-registries/http/components/base-editor/raw-text-editor.tsx +80 -80
  251. package/vendor/coze/source/node-registries/http/constants.ts +80 -80
  252. package/vendor/coze/source/node-registries/http/fields/json-import-editor/index.module.less +191 -191
  253. package/vendor/coze/source/node-registries/http/fields/json-import-editor/json-import-components/json-expand-editor.tsx +141 -141
  254. package/vendor/coze/source/node-registries/http/fields/json-import-editor/json-import-components/json-import.tsx +99 -99
  255. package/vendor/coze/source/node-registries/http/form-render.tsx +102 -102
  256. package/vendor/coze/source/node-registries/http/setters/api/curl-expand-editor.tsx +161 -161
  257. package/vendor/coze/source/node-registries/http/setters/api/curl-import.tsx +96 -96
  258. package/vendor/coze/source/node-registries/http/setters/api/index.module.less +199 -199
  259. package/vendor/coze/source/node-registries/http/setters/api/index.tsx +149 -149
  260. package/vendor/coze/source/node-registries/http/setters/api/utils.ts +41 -41
  261. package/vendor/coze/source/node-registries/http/setters/body/index.tsx +201 -201
  262. package/vendor/coze/source/node-registries/http/setters/constants.ts +83 -83
  263. package/vendor/coze/source/node-registries/if/components/else/index.tsx +41 -41
  264. package/vendor/coze/source/node-registries/intent/components/intents/index.module.less +14 -14
  265. package/vendor/coze/source/node-registries/intent/components/intents/option-item/index.tsx +189 -189
  266. package/vendor/coze/source/node-registries/json-stringify/constants.ts +32 -32
  267. package/vendor/coze/source/node-registries/json-stringify/form.tsx +46 -46
  268. package/vendor/coze/source/node-registries/loop/constants.ts +43 -43
  269. package/vendor/coze/source/node-registries/loop/loop-fields/loop-settings-section/index.tsx +48 -48
  270. package/vendor/coze/source/node-registries/loop/loop-fields/loop-type/index.tsx +81 -81
  271. package/vendor/coze/source/node-registries/loop/loop-fields/loop-type/options.ts +34 -34
  272. package/vendor/coze/source/node-registries/start/form.tsx +209 -209
  273. package/vendor/coze/source/node-registries/text-process/components/method-selector/index.tsx +46 -46
  274. package/vendor/coze/source/node-registries/text-process/constants.ts +132 -132
  275. package/vendor/coze/source/nodes-v2/components/form-item-feedback/index.module.less +7 -7
  276. package/vendor/coze/source/nodes-v2/components/form-item-feedback/index.tsx +47 -47
  277. package/vendor/coze/source/nodes-v2/components/system-prompt/index.module.less +66 -66
  278. package/vendor/coze/source/nodes-v2/components/system-prompt/prompt-kit-bar.tsx +129 -129
  279. package/vendor/coze/source/nodes-v2/components/system-prompt/system-prompt-editor.tsx +110 -110
  280. package/vendor/coze/source/nodes-v2/llm/user-prompt/index.tsx +64 -64
  281. package/vendor/coze/source/prompt-kit/input-config-popover/index.tsx +80 -80
  282. package/vendor/coze/source/prompt-kit/input-slot-widget/index.css +34 -34
  283. package/vendor/coze/source/prompt-kit/input-slot-widget/index.ts +169 -169
  284. package/vendor/coze/source/prompt-kit/library-item.tsx +141 -141
  285. package/vendor/coze/source/prompt-kit/prompt-info-input.tsx +90 -90
  286. package/vendor/coze/source/ui-components/add-operation/index.module.less +19 -19
  287. package/vendor/coze/source/ui-components/add-operation/index.tsx +67 -67
  288. package/vendor/coze/source/ui-components/auto-size-tooltip/index.module.less +39 -39
  289. package/vendor/coze/source/ui-components/auto-size-tooltip/index.tsx +74 -74
  290. package/vendor/coze/source/ui-components/workflow-sl-input/index.module.less +36 -36
  291. package/vendor/coze/source/ui-components/workflow-sl-input/index.tsx +194 -194
  292. package/vendor/coze/source/utils/create-slots/index.tsx +126 -126
  293. package/vendor/coze/source/utils/create-slots/use-force-update.ts +23 -23
@@ -1,151 +1,151 @@
1
- /*
2
- * Copyright 2025 coze-dev Authors
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- import { inject, injectable } from 'inversify';
18
- import { FlowNodeBaseType } from '@flowgram-adapter/free-layout-editor';
19
- import {
20
- type WorkflowDocumentOptions,
21
- type WorkflowLineEntity,
22
- type WorkflowPortEntity,
23
- } from '@flowgram-adapter/free-layout-editor';
24
- import { StandardNodeType } from '@coze-workflow/base/types';
25
-
26
- import {
27
- WorkflowLinesServiceProvider,
28
- type WorkflowLinesService,
29
- } from '../services/workflow-line-service';
30
-
31
- @injectable()
32
- export class WorkflowDocumentCustomOptions implements WorkflowDocumentOptions {
33
- @inject(WorkflowLinesServiceProvider)
34
- linesServiceProvider: () => WorkflowLinesService;
35
-
36
- // copy form packages/workflow-sdk/core/src/workflow-document-container-module.ts
37
- cursors: {
38
- grab: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC40ODczIDIuNjIzNzhDOS45MDczMSAyLjYyMzc4IDkuNDM3MTMgMy4wOTM5NiA5LjQzNzEzIDMuNjczOTZWNS4xNDM3NkM5LjM5NDI4IDQuNDAyNzQgOC43Nzk3OCAzLjgxNTA0IDguMDI4MDIgMy44MTUwNEM3LjI0ODQ4IDMuODE1MDQgNi42MTY1MyA0LjQ0Njk5IDYuNjE2NTMgNS4yMjY1M1YxMS44Mjg5TDUuNjc0MTggMTEuMDA0OUM1LjE1NDg3IDEwLjU1MDkgNC40MDk1IDEwLjQ2MzYgMy43OTkzOCAxMC43ODU1TDMuNjk2OTQgMTAuODM5NkMzLjA2MjE3IDExLjE3NDUgMi45MjI2IDEyLjAyMjggMy40MTY2MiAxMi41NDM0TDcuMzM5NTkgMTYuNjc3NVYxNy4zMjU5QzcuMzM5NTkgMTcuNzg2MiA3LjcxMjY5IDE4LjE1OTMgOC4xNzI5MiAxOC4xNTkzSDEzLjgwODRDMTQuMjY4NyAxOC4xNTkzIDE0LjY0MTcgMTcuNzg2MiAxNC42NDE3IDE3LjMyNTlWMTYuNzkzNUMxNS44MDk0IDE1LjY0ODUgMTYuNDY3MyAxNC4wODE5IDE2LjQ2NzMgMTIuNDQ2NVYxMS40OTY3TDE2LjQ2NzEgNi42MzY4NUMxNi40NjcxIDUuOTU2MyAxNS45MTU0IDUuNDA0NjEgMTUuMjM0OCA1LjQwNDYxQzE0LjU1NDMgNS40MDQ2MSAxNC4wMDI2IDUuOTU2MyAxNC4wMDI2IDYuNjM2ODVMMTQuMDAyMSA1LjA0NzI4QzE0LjAwMjEgNC4zNjY3MyAxMy40NTA0IDMuODE1MDQgMTIuNzY5OCAzLjgxNTA0QzEyLjA4OTMgMy44MTUwNCAxMS41Mzc2IDQuMzY2NzMgMTEuNTM3NiA1LjA0NzI4TDExLjUzNzUgMy42NzM5NUMxMS41Mzc1IDMuMDkzOTYgMTEuMDY3MyAyLjYyMzc4IDEwLjQ4NzMgMi42MjM3OFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTAuNDg3NCAxLjM3NDAyQzExLjM2MTIgMS4zNzQwMiAxMi4xMjExIDEuODYxMTggMTIuNTEwNSAyLjU3ODY4QzEyLjU5NTggMi41Njk4MyAxMi42ODIzIDIuNTY1MjggMTIuNzcgMi41NjUyOEMxMy44Mjc4IDIuNTY1MjggMTQuNzMxMSAzLjIyNzAxIDE1LjA4ODUgNC4xNTkxMUMxNS4xMzcgNC4xNTYyOSAxNS4xODU4IDQuMTU0ODYgMTUuMjM1IDQuMTU0ODZDMTYuNjA1OSA0LjE1NDg2IDE3LjcxNzIgNS4yNjYxOSAxNy43MTcyIDYuNjM3MDlMMTcuNzE3NCAxMi40NDY3QzE3LjcxNzQgMTQuMjM1NSAxNy4wNjQ0IDE1Ljk1NTkgMTUuODkxOSAxNy4yOTA0VjE3LjMyNjJDMTUuODkxOSAxOC40NzY4IDE0Ljk1OTEgMTkuNDA5NSAxMy44MDg1IDE5LjQwOTVIOC4xNzMwNkM3LjAyMjQ3IDE5LjQwOTUgNi4wODk3MyAxOC40NzY4IDYuMDg5NzMgMTcuMzI2MlYxNy4xNzY0TDIuNTEwMDMgMTMuNDA0MUMxLjQ0NTk5IDEyLjI4MjggMS43NDY2IDEwLjQ1NTUgMy4xMTM3OSA5LjczNDI0TDMuMjE2MjQgOS42ODAxOUMzLjg5MTY4IDkuMzIzODMgNC42NjE4NSA5LjI1NDAxIDUuMzY2NjYgOS40NTE5OFY1LjIyNjc4QzUuMzY2NjYgMy43NTY4NyA2LjU1ODI2IDIuNTY1MjggOC4wMjgxNiAyLjU2NTI4QzguMTcyOTMgMi41NjUyOCA4LjMxNDk5IDIuNTc2ODQgOC40NTM0NyAyLjU5OTA3QzguODM5NDMgMS44NzA0MiA5LjYwNTQ2IDEuMzc0MDIgMTAuNDg3NCAxLjM3NDAyWk0xMi40NDc2IDMuODU3ODdWOS40NzY0NkMxMi40NDc2IDkuNzI4NTIgMTIuMjQzMyA5LjkzMjg1IDExLjk5MTMgOS45MzI4NUMxMS43MzkyIDkuOTMyODUgMTEuNTM0OSA5LjcyODUyIDExLjUzNDkgOS40NzY0NlYzLjc5NjU1QzExLjUzNDkgMy43Nzk1NiAxMS41MzU4IDMuNzYyNzcgMTEuNTM3NiAzLjc0NjI2VjMuNjc0MkMxMS41Mzc2IDMuNDMyODIgMTEuNDU2MiAzLjIxMDQ2IDExLjMxOTMgMy4wMzMwOUMxMS4xMjcyIDIuNzg0MjggMTAuODI2MSAyLjYyNDAyIDEwLjQ4NzQgMi42MjQwMkMxMC4xMjM4IDIuNjI0MDIgOS44MDMzMiAyLjgwODg2IDkuNjE0ODMgMy4wODk3QzkuNTAyNjkgMy4yNTY3OSA5LjQzNzI2IDMuNDU3ODUgOS40MzcyNiAzLjY3NDJWMy43ODU3M0M5LjQzNzM1IDMuNzg5MzMgOS40MzczOSAzLjc5Mjk0IDkuNDM3MzkgMy43OTY1NVY5LjkwMTdDOS40MzczOSAxMC4xNTM3IDkuMjMzMDYgMTAuMzU4MSA4Ljk4MTAxIDEwLjM1ODFDOC43Mjg5NSAxMC4zNTgxIDguNTI0NjIgMTAuMTUzNyA4LjUyNDYyIDkuOTAxN1YzLjkwNTA3QzguNDE3NzMgMy44NjQ5IDguMzA0NjggMy44MzczMiA4LjE4NzI2IDMuODI0MTVDOC4xMzUwNCAzLjgxODI5IDguMDgxOTUgMy44MTUyOCA4LjAyODE2IDMuODE1MjhDNy4yNDg2MSAzLjgxNTI4IDYuNjE2NjYgNC40NDcyMyA2LjYxNjY2IDUuMjI2NzhWMTEuODI5Mkw1LjY3NDMxIDExLjAwNTJDNS41Nzg2OCAxMC45MjE2IDUuNDc1MzcgMTAuODUwNCA1LjM2NjY2IDEwLjc5MTlDNC44ODUwNiAxMC41MzI5IDQuMjk3MjggMTAuNTIzMSAzLjc5OTUyIDEwLjc4NThMMy42OTcwNyAxMC44Mzk4QzMuMDYyMzEgMTEuMTc0NyAyLjkyMjczIDEyLjAyMzEgMy40MTY3NSAxMi41NDM3TDcuMzM5NzMgMTYuNjc3N1YxNy4zMjYyQzcuMzM5NzMgMTcuNzg2NCA3LjcxMjgyIDE4LjE1OTUgOC4xNzMwNiAxOC4xNTk1SDEzLjgwODVDMTQuMjY4OCAxOC4xNTk1IDE0LjY0MTkgMTcuNzg2NCAxNC42NDE5IDE3LjMyNjJWMTYuNzkzOEMxNS43Mzc5IDE1LjcxOSAxNi4zODQ3IDE0LjI3MjggMTYuNDYgMTIuNzQ3QzE2LjQ2NDEgMTIuNjY0MSAxNi40NjY1IDEyLjU4MDkgMTYuNDY3MiAxMi40OTc1TDE2LjQ2NzQgMTIuNDQ2N0wxNi40NjcyIDYuNjM3MDlDMTYuNDY3MiA1Ljk2MjMgMTUuOTI0OCA1LjQxNDE5IDE1LjI1MjIgNS40MDQ5N0wxNS4yMzUgNS40MDQ4NkMxNS4xMjQ2IDUuNDA0ODYgMTUuMDE3NyA1LjQxOTM2IDE0LjkxNTkgNS40NDY1NlY5LjYwMjI2QzE0LjkxNTkgOS44NTQzMSAxNC43MTE2IDEwLjA1ODYgMTQuNDU5NSAxMC4wNTg2QzE0LjIwNzUgMTAuMDU4NiAxNC4wMDMxIDkuODU0MzEgMTQuMDAzMSA5LjYwMjI2VjYuNjA1MTRDMTQuMDAyOSA2LjYxNTc2IDE0LjAwMjcgNi42MjY0MSAxNC4wMDI3IDYuNjM3MDlWOS4yNzcwNUwxNC4wMDIyIDUuMDQ3NTJDMTQuMDAyMiA0Ljg2OTEzIDEzLjk2NDMgNC42OTk2IDEzLjg5NjEgNC41NDY1M0MxMy43MDY0IDQuMTIwNzIgMTMuMjgyMiAzLjgyMjM1IDEyLjc4NzYgMy44MTU0MUwxMi43NyAzLjgxNTI4QzEyLjY1ODQgMy44MTUyOCAxMi41NTA0IDMuODMwMSAxMi40NDc2IDMuODU3ODdaIiBmaWxsPSIjMUQxQzIzIi8+Cjwvc3ZnPg=="), auto';
39
- grabbing: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjYxODE3IDUuNTk4NzVDNi42MTgxNyA0LjgxOTIgNy4yNTAxMiA0LjE4NzI2IDguMDI5NjcgNC4xODcyNkM4Ljc3ODczIDQuMTg3MjYgOS4zOTE1MiA0Ljc3MDc1IDkuNDM4MjkgNS41MDgwMUM5LjQ1OTkyIDQuOTQ3MSA5LjkyMTQ3IDQuNDk5MDIgMTAuNDg3NyA0LjQ5OTAyQzExLjA2NzcgNC40OTkwMiAxMS41Mzc4IDQuOTY5MiAxMS41Mzc4IDUuNTQ5MTlWOC43NjI0NkwxMS41Mzc5IDYuNzExNUMxMS41Mzc5IDYuMDMwOTUgMTIuMDg5NiA1LjQ3OTI2IDEyLjc3MDIgNS40NzkyNkMxMy40NTA3IDUuNDc5MjYgMTQuMDAyNCA2LjAzMDk1IDE0LjAwMjQgNi43MTE1TDE0LjAwMjQgOC43NjI0NkwxNC4wMDI5IDguMDE5ODNDMTQuMDAyOSA3LjMzOTI5IDE0LjU1NDYgNi43ODc1OSAxNS4yMzUyIDYuNzg3NTlDMTUuOTE1NyA2Ljc4NzU5IDE2LjQ2NzQgNy4zMzkyOCAxNi40Njc0IDguMDE5ODNWMTEuNDk3TDE2LjQ2NzUgMTIuNDQ2N0MxNi40Njc1IDE0LjA4MjEgMTUuODA5NiAxNS42NDg3IDE0LjY0MiAxNi43OTM4VjE3LjMyNjJDMTQuNjQyIDE3Ljc4NjQgMTQuMjY4OSAxOC4xNTk1IDEzLjgwODcgMTguMTU5NUg4LjE3MzE3QzcuNzEyOTMgMTguMTU5NSA3LjMzOTg0IDE3Ljc4NjQgNy4zMzk4NCAxNy4zMjYyVjE1Ljk0MjRMNS4zNDU2MiAxNC43NTM0QzQuNTg5MjQgMTQuMzAyNCA0LjEyNTkxIDEzLjQ4NjcgNC4xMjU4OSAxMi42MDYxTDQuMTI1ODMgOS4yODM4M0M0LjEyNTgyIDguOTU0MjcgNC4zMjAwMyA4LjY1NTY2IDQuNjIxMjkgOC41MjIwNUw2LjYxODE3IDcuNjM2MzRWNS41OTg3NVoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTAuNDg3OCAzLjI0OTAyQzExLjI3OTYgMy4yNDkwMiAxMS45Nzc4IDMuNjQ5MDIgMTIuMzkxNyA0LjI1Nzk2QzEyLjUxNTEgNC4yMzkwNiAxMi42NDE2IDQuMjI5MjYgMTIuNzcwMyA0LjIyOTI2QzEzLjcyMjQgNC4yMjkyNiAxNC41NDkzIDQuNzY1MzEgMTQuOTY1NyA1LjU1MjA3QzE1LjA1NDMgNS41NDI1IDE1LjE0NDIgNS41Mzc1OSAxNS4yMzUzIDUuNTM3NTlDMTYuNjA2MiA1LjUzNzU5IDE3LjcxNzYgNi42NDg5MyAxNy43MTc2IDguMDE5ODNMMTcuNzE3NyAxMi40NDY3QzE3LjcxNzcgMTQuMjM1NSAxNy4wNjQ3IDE1Ljk1NTkgMTUuODkyMSAxNy4yOTA0VjE3LjMyNjJDMTUuODkyMSAxOC40NzY4IDE0Ljk1OTQgMTkuNDA5NSAxMy44MDg4IDE5LjQwOTVIOC4xNzMzMkM3LjAyMjczIDE5LjQwOTUgNi4wODk5OCAxOC40NzY4IDYuMDg5OTggMTcuMzI2MlYxNi42NTI0TDQuNzA1NjMgMTUuODI3QzMuNTcxMDYgMTUuMTUwNSAyLjg3NjA3IDEzLjkyNzEgMi44NzYwNCAxMi42MDYxTDIuODc1OTggOS4yODM4NUMyLjg3NTk2IDguNDU5OTYgMy4zNjE0OSA3LjcxMzQ1IDQuMTE0NjIgNy4zNzk0TDUuMzY4MzIgNi44MjMzM1Y1LjU5ODc1QzUuMzY4MzIgNC4xMjg4NSA2LjU1OTkxIDIuOTM3MjYgOC4wMjk4MiAyLjkzNzI2QzguNjA4MzEgMi45MzcyNiA5LjE0MzU1IDMuMTIxNyA5LjU4MDA1IDMuNDM1MDVDOS44NTg1MyAzLjMxNTMyIDEwLjE2NTQgMy4yNDkwMiAxMC40ODc4IDMuMjQ5MDJaTTEyLjQ0NzkgNS41MjE4NlY5LjQ3NTU3QzEyLjQ0NzkgOS43Mjc2MiAxMi4yNDM2IDkuOTMxOTUgMTEuOTkxNiA5LjkzMTk1QzExLjc1NjggOS45MzE5NSAxMS41NjM0IDkuNzU0NjUgMTEuNTM4IDkuNTI2NjNDMTEuNTM2MSA5LjUwOTg3IDExLjUzNTIgOS40OTI4MyAxMS41MzUyIDkuNDc1NTdWNS40NzE1OEMxMS41MTU0IDUuMjAwODMgMTEuMzkzIDQuOTU4NTggMTEuMjA2NiA0Ljc4MzU4QzExLjAxODggNC42MDcxMSAxMC43NjU5IDQuNDk5MDIgMTAuNDg3OCA0LjQ5OTAyQzEwLjQ3NjYgNC40OTkwMiAxMC40NjU0IDQuNDk5MTkgMTAuNDU0MiA0LjQ5OTU0QzkuOTAzNDcgNC41MTY4NCA5LjQ1OTY0IDQuOTU4MjQgOS40Mzg0NCA1LjUwODAxQzkuNDM4MiA1LjUwNDMgOS40Mzc5NSA1LjUwMDU4IDkuNDM3NjkgNS40OTY4OFY5LjkwMjQzQzkuNDM3NjkgMTAuMTU0NSA5LjIzMzM2IDEwLjM1ODggOC45ODEzMSAxMC4zNTg4QzguNzI5MjUgMTAuMzU4OCA4LjUyNDkyIDEwLjE1NDUgOC41MjQ5MiA5LjkwMjQzVjQuMjc2NTNDOC4zNzA4NiA0LjIxODgyIDguMjA0MDIgNC4xODcyNiA4LjAyOTgyIDQuMTg3MjZDNy4yNTAyNyA0LjE4NzI2IDYuNjE4MzIgNC44MTkyIDYuNjE4MzIgNS41OTg3NUw2LjYxODI3IDkuOTc1OTlDNi42MTgyNyAxMC4yMjggNi40MTM5NCAxMC40MzI0IDYuMTYxODkgMTAuNDMyNEM1LjkwOTgzIDEwLjQzMjQgNS43MDU1IDEwLjIyOCA1LjcwNTUgOS45NzU5OVY4LjA0MTIyTDQuNjIxNDQgOC41MjIwNUM0LjMyMDE4IDguNjU1NjYgNC4xMjU5NyA4Ljk1NDI3IDQuMTI1OTggOS4yODM4M0w0LjEyNjA0IDEyLjYwNjFDNC4xMjYwNiAxMy40ODY3IDQuNTg5MzkgMTQuMzAyNCA1LjM0NTc2IDE0Ljc1MzRMNy4zMzk5OCAxNS45NDI0VjE3LjMyNjJDNy4zMzk5OCAxNy43ODY0IDcuNzEzMDggMTguMTU5NSA4LjE3MzMyIDE4LjE1OTVIMTMuODA4OEMxNC4yNjkgMTguMTU5NSAxNC42NDIxIDE3Ljc4NjQgMTQuNjQyMSAxNy4zMjYyVjE2Ljc5MzhDMTUuNzM4MSAxNS43MTkgMTYuMzg1IDE0LjI3MjggMTYuNDYwMyAxMi43NDdDMTYuNDY0NiAxMi42NiAxNi40NjcgMTIuNTcyOCAxNi40Njc2IDEyLjQ4NTRMMTYuNDY3NyAxMi40NDY3TDE2LjQ2NzYgOC4wMTk4M0MxNi40Njc2IDcuMzQ1MDQgMTUuOTI1MiA2Ljc5NjkzIDE1LjI1MjUgNi43ODc3MUwxNS4yMzUzIDYuNzg3NTlDMTUuMTI1IDYuNzg3NTkgMTUuMDE4IDYuODAyMSAxNC45MTYyIDYuODI5MzFWOS42MDEzNkMxNC45MTYyIDkuODUzNDIgMTQuNzExOSAxMC4wNTc3IDE0LjQ1OTggMTAuMDU3N0MxNC4yMDc4IDEwLjA1NzcgMTQuMDAzNCA5Ljg1MzQxIDE0LjAwMzQgOS42MDEzNlY3Ljk4OTg1QzE0LjAwMzIgNy45OTk4MiAxNC4wMDMxIDguMDA5ODEgMTQuMDAzMSA4LjAxOTgzTDE0LjAwMzQgOS42MDEzNkwxNC4wMDI1IDYuNzExNUMxNC4wMDI1IDYuNDQ5NzQgMTMuOTIwOSA2LjIwNzA1IDEzLjc4MTggNi4wMDc0OEMxMy41NjIgNS42OTI0MiAxMy4xOTg5IDUuNDg0ODMgMTIuNzg3IDUuNDc5MzdMMTIuNzcwMyA1LjQ3OTI2QzEyLjY1ODggNS40NzkyNiAxMi41NTA3IDUuNDk0MDggMTIuNDQ3OSA1LjUyMTg2WiIgZmlsbD0iIzFEMUMyMyIvPgo8L3N2Zz4="), auto';
40
- };
41
-
42
- /** Is there an error in the connection? */
43
- isErrorLine(
44
- fromPort?: WorkflowPortEntity,
45
- toPort?: WorkflowPortEntity,
46
- ): boolean {
47
- const linesService = this.linesServiceProvider();
48
- return linesService.isError(fromPort?.node?.id, toPort?.node?.id);
49
- }
50
-
51
- /** Are the lines vertical? */
52
- isVerticalLine(line: WorkflowLineEntity): boolean {
53
- return this.isSubCanvasLinkLine(line);
54
- }
55
-
56
- /** Does the line hide the arrow? */
57
- isHideArrowLine(line: WorkflowLineEntity): boolean {
58
- return this.isSubCanvasLinkLine(line);
59
- }
60
-
61
- /** Is the line disabled? */
62
- isDisabledLine(line: WorkflowLineEntity): boolean {
63
- return this.isSubCanvasLinkLine(line);
64
- }
65
-
66
- /** Can lines be deleted? */
67
- canDeleteLine(line: WorkflowLineEntity): boolean {
68
- if (
69
- line.from?.flowNodeType === StandardNodeType.Loop &&
70
- line.to?.flowNodeType === FlowNodeBaseType.SUB_CANVAS
71
- ) {
72
- return false;
73
- }
74
- if (
75
- line.from?.flowNodeType === StandardNodeType.Batch &&
76
- line.to?.flowNodeType === FlowNodeBaseType.SUB_CANVAS
77
- ) {
78
- return false;
79
- }
80
- return true;
81
- }
82
-
83
- /** Are the two ports allowed to connect? */
84
- // eslint-disable-next-line complexity -- TODO configuration move to node
85
- canAddLine(
86
- fromPort: WorkflowPortEntity,
87
- toPort: WorkflowPortEntity,
88
- ): boolean {
89
- // Cannot be the same node self-looping
90
- if (fromPort.node === toPort.node) {
91
- return false;
92
- }
93
- if (toPort.node.flowNodeType === StandardNodeType.Comment) {
94
- return false;
95
- }
96
- // Child canvas nodes connect to sub-nodes
97
- if (
98
- (fromPort.node.flowNodeType === FlowNodeBaseType.SUB_CANVAS &&
99
- fromPort.node === toPort.node.parent) ||
100
- (toPort.node.flowNodeType === FlowNodeBaseType.SUB_CANVAS &&
101
- toPort.node === fromPort.node.parent)
102
- ) {
103
- return true;
104
- }
105
- // Loop and loopFunction connections cannot be changed
106
- if (
107
- toPort.portID === 'loop-function-inline-input' ||
108
- fromPort.portID === 'loop-function-inline-output' ||
109
- fromPort.portID === 'loop-output-to-function'
110
- ) {
111
- return false;
112
- }
113
- if (
114
- toPort.portID === 'batch-function-inline-input' ||
115
- fromPort.portID === 'batch-function-inline-output' ||
116
- fromPort.portID === 'batch-output-to-function'
117
- ) {
118
- return false;
119
- }
120
- // Not in different containers
121
- if (fromPort.node.parent?.id !== toPort.node.parent?.id) {
122
- return false;
123
- }
124
- // Unable to connect to wrong port
125
- if (
126
- fromPort.node.flowNodeType === 'error' ||
127
- toPort.node.flowNodeType === 'error'
128
- ) {
129
- return false;
130
- }
131
- return true;
132
- }
133
-
134
- private isSubCanvasLinkLine(line: WorkflowLineEntity): boolean {
135
- if (
136
- line.fromPort.portID === 'loop-output-to-function' &&
137
- line.toPort?.portID === 'loop-function-input'
138
- ) {
139
- return true;
140
- }
141
- if (
142
- line.fromPort.portID === 'batch-output-to-function' &&
143
- line.toPort?.portID === 'batch-function-input'
144
- ) {
145
- return true;
146
- }
147
- return false;
148
- }
149
-
150
- allNodesDefaultExpanded = false;
151
- }
1
+ /*
2
+ * Copyright 2025 coze-dev Authors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import { inject, injectable } from 'inversify';
18
+ import { FlowNodeBaseType } from '@flowgram-adapter/free-layout-editor';
19
+ import {
20
+ type WorkflowDocumentOptions,
21
+ type WorkflowLineEntity,
22
+ type WorkflowPortEntity,
23
+ } from '@flowgram-adapter/free-layout-editor';
24
+ import { StandardNodeType } from '@coze-workflow/base/types';
25
+
26
+ import {
27
+ WorkflowLinesServiceProvider,
28
+ type WorkflowLinesService,
29
+ } from '../services/workflow-line-service';
30
+
31
+ @injectable()
32
+ export class WorkflowDocumentCustomOptions implements WorkflowDocumentOptions {
33
+ @inject(WorkflowLinesServiceProvider)
34
+ linesServiceProvider: () => WorkflowLinesService;
35
+
36
+ // copy form packages/workflow-sdk/core/src/workflow-document-container-module.ts
37
+ cursors: {
38
+ grab: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC40ODczIDIuNjIzNzhDOS45MDczMSAyLjYyMzc4IDkuNDM3MTMgMy4wOTM5NiA5LjQzNzEzIDMuNjczOTZWNS4xNDM3NkM5LjM5NDI4IDQuNDAyNzQgOC43Nzk3OCAzLjgxNTA0IDguMDI4MDIgMy44MTUwNEM3LjI0ODQ4IDMuODE1MDQgNi42MTY1MyA0LjQ0Njk5IDYuNjE2NTMgNS4yMjY1M1YxMS44Mjg5TDUuNjc0MTggMTEuMDA0OUM1LjE1NDg3IDEwLjU1MDkgNC40MDk1IDEwLjQ2MzYgMy43OTkzOCAxMC43ODU1TDMuNjk2OTQgMTAuODM5NkMzLjA2MjE3IDExLjE3NDUgMi45MjI2IDEyLjAyMjggMy40MTY2MiAxMi41NDM0TDcuMzM5NTkgMTYuNjc3NVYxNy4zMjU5QzcuMzM5NTkgMTcuNzg2MiA3LjcxMjY5IDE4LjE1OTMgOC4xNzI5MiAxOC4xNTkzSDEzLjgwODRDMTQuMjY4NyAxOC4xNTkzIDE0LjY0MTcgMTcuNzg2MiAxNC42NDE3IDE3LjMyNTlWMTYuNzkzNUMxNS44MDk0IDE1LjY0ODUgMTYuNDY3MyAxNC4wODE5IDE2LjQ2NzMgMTIuNDQ2NVYxMS40OTY3TDE2LjQ2NzEgNi42MzY4NUMxNi40NjcxIDUuOTU2MyAxNS45MTU0IDUuNDA0NjEgMTUuMjM0OCA1LjQwNDYxQzE0LjU1NDMgNS40MDQ2MSAxNC4wMDI2IDUuOTU2MyAxNC4wMDI2IDYuNjM2ODVMMTQuMDAyMSA1LjA0NzI4QzE0LjAwMjEgNC4zNjY3MyAxMy40NTA0IDMuODE1MDQgMTIuNzY5OCAzLjgxNTA0QzEyLjA4OTMgMy44MTUwNCAxMS41Mzc2IDQuMzY2NzMgMTEuNTM3NiA1LjA0NzI4TDExLjUzNzUgMy42NzM5NUMxMS41Mzc1IDMuMDkzOTYgMTEuMDY3MyAyLjYyMzc4IDEwLjQ4NzMgMi42MjM3OFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTAuNDg3NCAxLjM3NDAyQzExLjM2MTIgMS4zNzQwMiAxMi4xMjExIDEuODYxMTggMTIuNTEwNSAyLjU3ODY4QzEyLjU5NTggMi41Njk4MyAxMi42ODIzIDIuNTY1MjggMTIuNzcgMi41NjUyOEMxMy44Mjc4IDIuNTY1MjggMTQuNzMxMSAzLjIyNzAxIDE1LjA4ODUgNC4xNTkxMUMxNS4xMzcgNC4xNTYyOSAxNS4xODU4IDQuMTU0ODYgMTUuMjM1IDQuMTU0ODZDMTYuNjA1OSA0LjE1NDg2IDE3LjcxNzIgNS4yNjYxOSAxNy43MTcyIDYuNjM3MDlMMTcuNzE3NCAxMi40NDY3QzE3LjcxNzQgMTQuMjM1NSAxNy4wNjQ0IDE1Ljk1NTkgMTUuODkxOSAxNy4yOTA0VjE3LjMyNjJDMTUuODkxOSAxOC40NzY4IDE0Ljk1OTEgMTkuNDA5NSAxMy44MDg1IDE5LjQwOTVIOC4xNzMwNkM3LjAyMjQ3IDE5LjQwOTUgNi4wODk3MyAxOC40NzY4IDYuMDg5NzMgMTcuMzI2MlYxNy4xNzY0TDIuNTEwMDMgMTMuNDA0MUMxLjQ0NTk5IDEyLjI4MjggMS43NDY2IDEwLjQ1NTUgMy4xMTM3OSA5LjczNDI0TDMuMjE2MjQgOS42ODAxOUMzLjg5MTY4IDkuMzIzODMgNC42NjE4NSA5LjI1NDAxIDUuMzY2NjYgOS40NTE5OFY1LjIyNjc4QzUuMzY2NjYgMy43NTY4NyA2LjU1ODI2IDIuNTY1MjggOC4wMjgxNiAyLjU2NTI4QzguMTcyOTMgMi41NjUyOCA4LjMxNDk5IDIuNTc2ODQgOC40NTM0NyAyLjU5OTA3QzguODM5NDMgMS44NzA0MiA5LjYwNTQ2IDEuMzc0MDIgMTAuNDg3NCAxLjM3NDAyWk0xMi40NDc2IDMuODU3ODdWOS40NzY0NkMxMi40NDc2IDkuNzI4NTIgMTIuMjQzMyA5LjkzMjg1IDExLjk5MTMgOS45MzI4NUMxMS43MzkyIDkuOTMyODUgMTEuNTM0OSA5LjcyODUyIDExLjUzNDkgOS40NzY0NlYzLjc5NjU1QzExLjUzNDkgMy43Nzk1NiAxMS41MzU4IDMuNzYyNzcgMTEuNTM3NiAzLjc0NjI2VjMuNjc0MkMxMS41Mzc2IDMuNDMyODIgMTEuNDU2MiAzLjIxMDQ2IDExLjMxOTMgMy4wMzMwOUMxMS4xMjcyIDIuNzg0MjggMTAuODI2MSAyLjYyNDAyIDEwLjQ4NzQgMi42MjQwMkMxMC4xMjM4IDIuNjI0MDIgOS44MDMzMiAyLjgwODg2IDkuNjE0ODMgMy4wODk3QzkuNTAyNjkgMy4yNTY3OSA5LjQzNzI2IDMuNDU3ODUgOS40MzcyNiAzLjY3NDJWMy43ODU3M0M5LjQzNzM1IDMuNzg5MzMgOS40MzczOSAzLjc5Mjk0IDkuNDM3MzkgMy43OTY1NVY5LjkwMTdDOS40MzczOSAxMC4xNTM3IDkuMjMzMDYgMTAuMzU4MSA4Ljk4MTAxIDEwLjM1ODFDOC43Mjg5NSAxMC4zNTgxIDguNTI0NjIgMTAuMTUzNyA4LjUyNDYyIDkuOTAxN1YzLjkwNTA3QzguNDE3NzMgMy44NjQ5IDguMzA0NjggMy44MzczMiA4LjE4NzI2IDMuODI0MTVDOC4xMzUwNCAzLjgxODI5IDguMDgxOTUgMy44MTUyOCA4LjAyODE2IDMuODE1MjhDNy4yNDg2MSAzLjgxNTI4IDYuNjE2NjYgNC40NDcyMyA2LjYxNjY2IDUuMjI2NzhWMTEuODI5Mkw1LjY3NDMxIDExLjAwNTJDNS41Nzg2OCAxMC45MjE2IDUuNDc1MzcgMTAuODUwNCA1LjM2NjY2IDEwLjc5MTlDNC44ODUwNiAxMC41MzI5IDQuMjk3MjggMTAuNTIzMSAzLjc5OTUyIDEwLjc4NThMMy42OTcwNyAxMC44Mzk4QzMuMDYyMzEgMTEuMTc0NyAyLjkyMjczIDEyLjAyMzEgMy40MTY3NSAxMi41NDM3TDcuMzM5NzMgMTYuNjc3N1YxNy4zMjYyQzcuMzM5NzMgMTcuNzg2NCA3LjcxMjgyIDE4LjE1OTUgOC4xNzMwNiAxOC4xNTk1SDEzLjgwODVDMTQuMjY4OCAxOC4xNTk1IDE0LjY0MTkgMTcuNzg2NCAxNC42NDE5IDE3LjMyNjJWMTYuNzkzOEMxNS43Mzc5IDE1LjcxOSAxNi4zODQ3IDE0LjI3MjggMTYuNDYgMTIuNzQ3QzE2LjQ2NDEgMTIuNjY0MSAxNi40NjY1IDEyLjU4MDkgMTYuNDY3MiAxMi40OTc1TDE2LjQ2NzQgMTIuNDQ2N0wxNi40NjcyIDYuNjM3MDlDMTYuNDY3MiA1Ljk2MjMgMTUuOTI0OCA1LjQxNDE5IDE1LjI1MjIgNS40MDQ5N0wxNS4yMzUgNS40MDQ4NkMxNS4xMjQ2IDUuNDA0ODYgMTUuMDE3NyA1LjQxOTM2IDE0LjkxNTkgNS40NDY1NlY5LjYwMjI2QzE0LjkxNTkgOS44NTQzMSAxNC43MTE2IDEwLjA1ODYgMTQuNDU5NSAxMC4wNTg2QzE0LjIwNzUgMTAuMDU4NiAxNC4wMDMxIDkuODU0MzEgMTQuMDAzMSA5LjYwMjI2VjYuNjA1MTRDMTQuMDAyOSA2LjYxNTc2IDE0LjAwMjcgNi42MjY0MSAxNC4wMDI3IDYuNjM3MDlWOS4yNzcwNUwxNC4wMDIyIDUuMDQ3NTJDMTQuMDAyMiA0Ljg2OTEzIDEzLjk2NDMgNC42OTk2IDEzLjg5NjEgNC41NDY1M0MxMy43MDY0IDQuMTIwNzIgMTMuMjgyMiAzLjgyMjM1IDEyLjc4NzYgMy44MTU0MUwxMi43NyAzLjgxNTI4QzEyLjY1ODQgMy44MTUyOCAxMi41NTA0IDMuODMwMSAxMi40NDc2IDMuODU3ODdaIiBmaWxsPSIjMUQxQzIzIi8+Cjwvc3ZnPg=="), auto';
39
+ grabbing: 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjYxODE3IDUuNTk4NzVDNi42MTgxNyA0LjgxOTIgNy4yNTAxMiA0LjE4NzI2IDguMDI5NjcgNC4xODcyNkM4Ljc3ODczIDQuMTg3MjYgOS4zOTE1MiA0Ljc3MDc1IDkuNDM4MjkgNS41MDgwMUM5LjQ1OTkyIDQuOTQ3MSA5LjkyMTQ3IDQuNDk5MDIgMTAuNDg3NyA0LjQ5OTAyQzExLjA2NzcgNC40OTkwMiAxMS41Mzc4IDQuOTY5MiAxMS41Mzc4IDUuNTQ5MTlWOC43NjI0NkwxMS41Mzc5IDYuNzExNUMxMS41Mzc5IDYuMDMwOTUgMTIuMDg5NiA1LjQ3OTI2IDEyLjc3MDIgNS40NzkyNkMxMy40NTA3IDUuNDc5MjYgMTQuMDAyNCA2LjAzMDk1IDE0LjAwMjQgNi43MTE1TDE0LjAwMjQgOC43NjI0NkwxNC4wMDI5IDguMDE5ODNDMTQuMDAyOSA3LjMzOTI5IDE0LjU1NDYgNi43ODc1OSAxNS4yMzUyIDYuNzg3NTlDMTUuOTE1NyA2Ljc4NzU5IDE2LjQ2NzQgNy4zMzkyOCAxNi40Njc0IDguMDE5ODNWMTEuNDk3TDE2LjQ2NzUgMTIuNDQ2N0MxNi40Njc1IDE0LjA4MjEgMTUuODA5NiAxNS42NDg3IDE0LjY0MiAxNi43OTM4VjE3LjMyNjJDMTQuNjQyIDE3Ljc4NjQgMTQuMjY4OSAxOC4xNTk1IDEzLjgwODcgMTguMTU5NUg4LjE3MzE3QzcuNzEyOTMgMTguMTU5NSA3LjMzOTg0IDE3Ljc4NjQgNy4zMzk4NCAxNy4zMjYyVjE1Ljk0MjRMNS4zNDU2MiAxNC43NTM0QzQuNTg5MjQgMTQuMzAyNCA0LjEyNTkxIDEzLjQ4NjcgNC4xMjU4OSAxMi42MDYxTDQuMTI1ODMgOS4yODM4M0M0LjEyNTgyIDguOTU0MjcgNC4zMjAwMyA4LjY1NTY2IDQuNjIxMjkgOC41MjIwNUw2LjYxODE3IDcuNjM2MzRWNS41OTg3NVoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTAuNDg3OCAzLjI0OTAyQzExLjI3OTYgMy4yNDkwMiAxMS45Nzc4IDMuNjQ5MDIgMTIuMzkxNyA0LjI1Nzk2QzEyLjUxNTEgNC4yMzkwNiAxMi42NDE2IDQuMjI5MjYgMTIuNzcwMyA0LjIyOTI2QzEzLjcyMjQgNC4yMjkyNiAxNC41NDkzIDQuNzY1MzEgMTQuOTY1NyA1LjU1MjA3QzE1LjA1NDMgNS41NDI1IDE1LjE0NDIgNS41Mzc1OSAxNS4yMzUzIDUuNTM3NTlDMTYuNjA2MiA1LjUzNzU5IDE3LjcxNzYgNi42NDg5MyAxNy43MTc2IDguMDE5ODNMMTcuNzE3NyAxMi40NDY3QzE3LjcxNzcgMTQuMjM1NSAxNy4wNjQ3IDE1Ljk1NTkgMTUuODkyMSAxNy4yOTA0VjE3LjMyNjJDMTUuODkyMSAxOC40NzY4IDE0Ljk1OTQgMTkuNDA5NSAxMy44MDg4IDE5LjQwOTVIOC4xNzMzMkM3LjAyMjczIDE5LjQwOTUgNi4wODk5OCAxOC40NzY4IDYuMDg5OTggMTcuMzI2MlYxNi42NTI0TDQuNzA1NjMgMTUuODI3QzMuNTcxMDYgMTUuMTUwNSAyLjg3NjA3IDEzLjkyNzEgMi44NzYwNCAxMi42MDYxTDIuODc1OTggOS4yODM4NUMyLjg3NTk2IDguNDU5OTYgMy4zNjE0OSA3LjcxMzQ1IDQuMTE0NjIgNy4zNzk0TDUuMzY4MzIgNi44MjMzM1Y1LjU5ODc1QzUuMzY4MzIgNC4xMjg4NSA2LjU1OTkxIDIuOTM3MjYgOC4wMjk4MiAyLjkzNzI2QzguNjA4MzEgMi45MzcyNiA5LjE0MzU1IDMuMTIxNyA5LjU4MDA1IDMuNDM1MDVDOS44NTg1MyAzLjMxNTMyIDEwLjE2NTQgMy4yNDkwMiAxMC40ODc4IDMuMjQ5MDJaTTEyLjQ0NzkgNS41MjE4NlY5LjQ3NTU3QzEyLjQ0NzkgOS43Mjc2MiAxMi4yNDM2IDkuOTMxOTUgMTEuOTkxNiA5LjkzMTk1QzExLjc1NjggOS45MzE5NSAxMS41NjM0IDkuNzU0NjUgMTEuNTM4IDkuNTI2NjNDMTEuNTM2MSA5LjUwOTg3IDExLjUzNTIgOS40OTI4MyAxMS41MzUyIDkuNDc1NTdWNS40NzE1OEMxMS41MTU0IDUuMjAwODMgMTEuMzkzIDQuOTU4NTggMTEuMjA2NiA0Ljc4MzU4QzExLjAxODggNC42MDcxMSAxMC43NjU5IDQuNDk5MDIgMTAuNDg3OCA0LjQ5OTAyQzEwLjQ3NjYgNC40OTkwMiAxMC40NjU0IDQuNDk5MTkgMTAuNDU0MiA0LjQ5OTU0QzkuOTAzNDcgNC41MTY4NCA5LjQ1OTY0IDQuOTU4MjQgOS40Mzg0NCA1LjUwODAxQzkuNDM4MiA1LjUwNDMgOS40Mzc5NSA1LjUwMDU4IDkuNDM3NjkgNS40OTY4OFY5LjkwMjQzQzkuNDM3NjkgMTAuMTU0NSA5LjIzMzM2IDEwLjM1ODggOC45ODEzMSAxMC4zNTg4QzguNzI5MjUgMTAuMzU4OCA4LjUyNDkyIDEwLjE1NDUgOC41MjQ5MiA5LjkwMjQzVjQuMjc2NTNDOC4zNzA4NiA0LjIxODgyIDguMjA0MDIgNC4xODcyNiA4LjAyOTgyIDQuMTg3MjZDNy4yNTAyNyA0LjE4NzI2IDYuNjE4MzIgNC44MTkyIDYuNjE4MzIgNS41OTg3NUw2LjYxODI3IDkuOTc1OTlDNi42MTgyNyAxMC4yMjggNi40MTM5NCAxMC40MzI0IDYuMTYxODkgMTAuNDMyNEM1LjkwOTgzIDEwLjQzMjQgNS43MDU1IDEwLjIyOCA1LjcwNTUgOS45NzU5OVY4LjA0MTIyTDQuNjIxNDQgOC41MjIwNUM0LjMyMDE4IDguNjU1NjYgNC4xMjU5NyA4Ljk1NDI3IDQuMTI1OTggOS4yODM4M0w0LjEyNjA0IDEyLjYwNjFDNC4xMjYwNiAxMy40ODY3IDQuNTg5MzkgMTQuMzAyNCA1LjM0NTc2IDE0Ljc1MzRMNy4zMzk5OCAxNS45NDI0VjE3LjMyNjJDNy4zMzk5OCAxNy43ODY0IDcuNzEzMDggMTguMTU5NSA4LjE3MzMyIDE4LjE1OTVIMTMuODA4OEMxNC4yNjkgMTguMTU5NSAxNC42NDIxIDE3Ljc4NjQgMTQuNjQyMSAxNy4zMjYyVjE2Ljc5MzhDMTUuNzM4MSAxNS43MTkgMTYuMzg1IDE0LjI3MjggMTYuNDYwMyAxMi43NDdDMTYuNDY0NiAxMi42NiAxNi40NjcgMTIuNTcyOCAxNi40Njc2IDEyLjQ4NTRMMTYuNDY3NyAxMi40NDY3TDE2LjQ2NzYgOC4wMTk4M0MxNi40Njc2IDcuMzQ1MDQgMTUuOTI1MiA2Ljc5NjkzIDE1LjI1MjUgNi43ODc3MUwxNS4yMzUzIDYuNzg3NTlDMTUuMTI1IDYuNzg3NTkgMTUuMDE4IDYuODAyMSAxNC45MTYyIDYuODI5MzFWOS42MDEzNkMxNC45MTYyIDkuODUzNDIgMTQuNzExOSAxMC4wNTc3IDE0LjQ1OTggMTAuMDU3N0MxNC4yMDc4IDEwLjA1NzcgMTQuMDAzNCA5Ljg1MzQxIDE0LjAwMzQgOS42MDEzNlY3Ljk4OTg1QzE0LjAwMzIgNy45OTk4MiAxNC4wMDMxIDguMDA5ODEgMTQuMDAzMSA4LjAxOTgzTDE0LjAwMzQgOS42MDEzNkwxNC4wMDI1IDYuNzExNUMxNC4wMDI1IDYuNDQ5NzQgMTMuOTIwOSA2LjIwNzA1IDEzLjc4MTggNi4wMDc0OEMxMy41NjIgNS42OTI0MiAxMy4xOTg5IDUuNDg0ODMgMTIuNzg3IDUuNDc5MzdMMTIuNzcwMyA1LjQ3OTI2QzEyLjY1ODggNS40NzkyNiAxMi41NTA3IDUuNDk0MDggMTIuNDQ3OSA1LjUyMTg2WiIgZmlsbD0iIzFEMUMyMyIvPgo8L3N2Zz4="), auto';
40
+ };
41
+
42
+ /** Is there an error in the connection? */
43
+ isErrorLine(
44
+ fromPort?: WorkflowPortEntity,
45
+ toPort?: WorkflowPortEntity,
46
+ ): boolean {
47
+ const linesService = this.linesServiceProvider();
48
+ return linesService.isError(fromPort?.node?.id, toPort?.node?.id);
49
+ }
50
+
51
+ /** Are the lines vertical? */
52
+ isVerticalLine(line: WorkflowLineEntity): boolean {
53
+ return this.isSubCanvasLinkLine(line);
54
+ }
55
+
56
+ /** Does the line hide the arrow? */
57
+ isHideArrowLine(line: WorkflowLineEntity): boolean {
58
+ return this.isSubCanvasLinkLine(line);
59
+ }
60
+
61
+ /** Is the line disabled? */
62
+ isDisabledLine(line: WorkflowLineEntity): boolean {
63
+ return this.isSubCanvasLinkLine(line);
64
+ }
65
+
66
+ /** Can lines be deleted? */
67
+ canDeleteLine(line: WorkflowLineEntity): boolean {
68
+ if (
69
+ line.from?.flowNodeType === StandardNodeType.Loop &&
70
+ line.to?.flowNodeType === FlowNodeBaseType.SUB_CANVAS
71
+ ) {
72
+ return false;
73
+ }
74
+ if (
75
+ line.from?.flowNodeType === StandardNodeType.Batch &&
76
+ line.to?.flowNodeType === FlowNodeBaseType.SUB_CANVAS
77
+ ) {
78
+ return false;
79
+ }
80
+ return true;
81
+ }
82
+
83
+ /** Are the two ports allowed to connect? */
84
+ // eslint-disable-next-line complexity -- TODO configuration move to node
85
+ canAddLine(
86
+ fromPort: WorkflowPortEntity,
87
+ toPort: WorkflowPortEntity,
88
+ ): boolean {
89
+ // Cannot be the same node self-looping
90
+ if (fromPort.node === toPort.node) {
91
+ return false;
92
+ }
93
+ if (toPort.node.flowNodeType === StandardNodeType.Comment) {
94
+ return false;
95
+ }
96
+ // Child canvas nodes connect to sub-nodes
97
+ if (
98
+ (fromPort.node.flowNodeType === FlowNodeBaseType.SUB_CANVAS &&
99
+ fromPort.node === toPort.node.parent) ||
100
+ (toPort.node.flowNodeType === FlowNodeBaseType.SUB_CANVAS &&
101
+ toPort.node === fromPort.node.parent)
102
+ ) {
103
+ return true;
104
+ }
105
+ // Loop and loopFunction connections cannot be changed
106
+ if (
107
+ toPort.portID === 'loop-function-inline-input' ||
108
+ fromPort.portID === 'loop-function-inline-output' ||
109
+ fromPort.portID === 'loop-output-to-function'
110
+ ) {
111
+ return false;
112
+ }
113
+ if (
114
+ toPort.portID === 'batch-function-inline-input' ||
115
+ fromPort.portID === 'batch-function-inline-output' ||
116
+ fromPort.portID === 'batch-output-to-function'
117
+ ) {
118
+ return false;
119
+ }
120
+ // Not in different containers
121
+ if (fromPort.node.parent?.id !== toPort.node.parent?.id) {
122
+ return false;
123
+ }
124
+ // Unable to connect to wrong port
125
+ if (
126
+ fromPort.node.flowNodeType === 'error' ||
127
+ toPort.node.flowNodeType === 'error'
128
+ ) {
129
+ return false;
130
+ }
131
+ return true;
132
+ }
133
+
134
+ private isSubCanvasLinkLine(line: WorkflowLineEntity): boolean {
135
+ if (
136
+ line.fromPort.portID === 'loop-output-to-function' &&
137
+ line.toPort?.portID === 'loop-function-input'
138
+ ) {
139
+ return true;
140
+ }
141
+ if (
142
+ line.fromPort.portID === 'batch-output-to-function' &&
143
+ line.toPort?.portID === 'batch-function-input'
144
+ ) {
145
+ return true;
146
+ }
147
+ return false;
148
+ }
149
+
150
+ allNodesDefaultExpanded = false;
151
+ }
@@ -1,65 +1,65 @@
1
- .container {
2
- display: flex;
3
- flex-direction: row;
4
- align-items: center;
5
- justify-content: space-between;
6
-
7
- // coze 2.0 css
8
- height: 64px;
9
- padding: 0 16px;
10
-
11
- background: var(--coz-bg-primary);
12
- border-bottom: 1px solid var(--coz-stroke-primary);
13
-
14
- .left {
15
- display: flex;
16
- flex-direction: row;
17
- flex-shrink: 0;
18
- column-gap: 4px;
19
- align-items: center;
20
- }
21
-
22
-
23
- .right {
24
- display: flex;
25
- flex-direction: row;
26
- flex-shrink: 0;
27
- column-gap: 12px;
28
- align-items: center;
29
-
30
- .spin-container {
31
- display: flex;
32
-
33
- svg {
34
- margin-top: 0;
35
- }
36
-
37
- :global {
38
- .semi-spin-wrapper {
39
- top: 76%;
40
- display: flex;
41
- }
42
- }
43
- }
44
-
45
- .icon-copy {
46
- padding: 6px 7px;
47
- color: #6B6B75;
48
- }
49
-
50
- .show-info {
51
- display: inline-flex;
52
- align-items: center;
53
-
54
- font-size: 12px;
55
- font-weight: 500;
56
- font-style: normal;
57
- line-height: 16px;
58
- }
59
-
60
- .last-run-btn {
61
- color: #1D1C2399;
62
- }
63
- }
64
- }
65
-
1
+ .container {
2
+ display: flex;
3
+ flex-direction: row;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+
7
+ // coze 2.0 css
8
+ height: 64px;
9
+ padding: 0 16px;
10
+
11
+ background: var(--coz-bg-primary);
12
+ border-bottom: 1px solid var(--coz-stroke-primary);
13
+
14
+ .left {
15
+ display: flex;
16
+ flex-direction: row;
17
+ flex-shrink: 0;
18
+ column-gap: 4px;
19
+ align-items: center;
20
+ }
21
+
22
+
23
+ .right {
24
+ display: flex;
25
+ flex-direction: row;
26
+ flex-shrink: 0;
27
+ column-gap: 12px;
28
+ align-items: center;
29
+
30
+ .spin-container {
31
+ display: flex;
32
+
33
+ svg {
34
+ margin-top: 0;
35
+ }
36
+
37
+ :global {
38
+ .semi-spin-wrapper {
39
+ top: 76%;
40
+ display: flex;
41
+ }
42
+ }
43
+ }
44
+
45
+ .icon-copy {
46
+ padding: 6px 7px;
47
+ color: #6B6B75;
48
+ }
49
+
50
+ .show-info {
51
+ display: inline-flex;
52
+ align-items: center;
53
+
54
+ font-size: 12px;
55
+ font-weight: 500;
56
+ font-style: normal;
57
+ line-height: 16px;
58
+ }
59
+
60
+ .last-run-btn {
61
+ color: #1D1C2399;
62
+ }
63
+ }
64
+ }
65
+
@@ -1,85 +1,85 @@
1
- /*
2
- * Copyright 2025 coze-dev Authors
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- import React from 'react';
18
-
19
- import { IconCozArrowLeft } from '@coze-arch/coze-design/icons';
20
- import { IconButton, CozAvatar } from '@coze-arch/coze-design';
21
-
22
- import { WorkflowInfo } from '../workflow-header-info';
23
- import { useGlobalState } from '../../hooks';
24
- import { getWorkflowHeaderTestId } from './utils';
25
- import { PublishButton } from './components/publish-button-v2';
26
- import {
27
- CollaboratorsButton,
28
- SubmitButton,
29
- DuplicateButton,
30
- HistoryButton,
31
- CreditButton,
32
- ReferenceButton,
33
- } from './components';
34
-
35
- import styles from './index.module.less';
36
-
37
- const WorkFlowHeader: React.FC = () => {
38
- const globalState = useGlobalState();
39
- const { readonly, info, playgroundProps, workflowId } = globalState;
40
-
41
- return (
42
- <div className={styles.container}>
43
- <div
44
- className={styles.left}
45
- data-testid={getWorkflowHeaderTestId('info')}
46
- >
47
- <IconButton
48
- icon={<IconCozArrowLeft />}
49
- color="secondary"
50
- data-testid={getWorkflowHeaderTestId('back')}
51
- onClick={() => {
52
- playgroundProps.onBackClick?.(globalState);
53
- }}
54
- />
55
-
56
- <CozAvatar src={info.url || ''} type="platform" alt="Avatar" />
57
-
58
- <WorkflowInfo />
59
- </div>
60
-
61
- <div className={styles.right}>
62
- {/* will support soon */}
63
- {IS_OPEN_SOURCE ? null : <ReferenceButton workflowId={workflowId} />}
64
-
65
- {IS_OPEN_SOURCE ? null : (
66
- <>
67
- {!readonly && <CreditButton />}
68
-
69
- <HistoryButton />
70
-
71
- <CollaboratorsButton />
72
-
73
- <SubmitButton />
74
- </>
75
- )}
76
-
77
- <PublishButton />
78
-
79
- <DuplicateButton mode={readonly ? 'button' : 'icon'} />
80
- </div>
81
- </div>
82
- );
83
- };
84
-
85
- export default React.memo(WorkFlowHeader);
1
+ /*
2
+ * Copyright 2025 coze-dev Authors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import React from 'react';
18
+
19
+ import { IconCozArrowLeft } from '@coze-arch/coze-design/icons';
20
+ import { IconButton, CozAvatar } from '@coze-arch/coze-design';
21
+
22
+ import { WorkflowInfo } from '../workflow-header-info';
23
+ import { useGlobalState } from '../../hooks';
24
+ import { getWorkflowHeaderTestId } from './utils';
25
+ import { PublishButton } from './components/publish-button-v2';
26
+ import {
27
+ CollaboratorsButton,
28
+ SubmitButton,
29
+ DuplicateButton,
30
+ HistoryButton,
31
+ CreditButton,
32
+ ReferenceButton,
33
+ } from './components';
34
+
35
+ import styles from './index.module.less';
36
+
37
+ const WorkFlowHeader: React.FC = () => {
38
+ const globalState = useGlobalState();
39
+ const { readonly, info, playgroundProps, workflowId } = globalState;
40
+
41
+ return (
42
+ <div className={styles.container}>
43
+ <div
44
+ className={styles.left}
45
+ data-testid={getWorkflowHeaderTestId('info')}
46
+ >
47
+ <IconButton
48
+ icon={<IconCozArrowLeft />}
49
+ color="secondary"
50
+ data-testid={getWorkflowHeaderTestId('back')}
51
+ onClick={() => {
52
+ playgroundProps.onBackClick?.(globalState);
53
+ }}
54
+ />
55
+
56
+ <CozAvatar src={info.url || ''} type="platform" alt="Avatar" />
57
+
58
+ <WorkflowInfo />
59
+ </div>
60
+
61
+ <div className={styles.right}>
62
+ {/* will support soon */}
63
+ {IS_OPEN_SOURCE ? null : <ReferenceButton workflowId={workflowId} />}
64
+
65
+ {IS_OPEN_SOURCE ? null : (
66
+ <>
67
+ {!readonly && <CreditButton />}
68
+
69
+ <HistoryButton />
70
+
71
+ <CollaboratorsButton />
72
+
73
+ <SubmitButton />
74
+ </>
75
+ )}
76
+
77
+ <PublishButton />
78
+
79
+ <DuplicateButton mode={readonly ? 'button' : 'icon'} />
80
+ </div>
81
+ </div>
82
+ );
83
+ };
84
+
85
+ export default React.memo(WorkFlowHeader);