@fudanda/workflow 1.20261015.1-beta.1 → 2.20261024.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.
- package/LICENSE +21 -21
- package/README.md +114 -114
- package/THIRD-PARTY-NOTICES.md +57 -57
- package/dist/chrome.js +1 -1
- package/dist/flowgram-designer.d.ts +2 -1
- package/dist/graph-scope.d.ts +16 -85
- package/dist/index.js +2 -2
- package/dist/observation-types.d.ts +6 -0
- package/dist/{start-form-D_J3UIoE.js → start-form-L6xw9phk.js} +125 -125
- package/package.json +2 -2
- package/vendor/coze/LICENSE-APACHE +177 -177
- package/vendor/coze/UPSTREAM.json +2 -2
- package/vendor/coze/original/base-test-button.tsx +22 -22
- package/vendor/coze/original/comment-container.tsx +68 -68
- package/vendor/coze/original/condition-container.tsx +60 -60
- package/vendor/coze/original/condition-tag.tsx +58 -58
- package/vendor/coze/original/coze-global.less +234 -234
- package/vendor/coze/original/create-loop-function-json.ts +134 -134
- package/vendor/coze/original/create-loop-function.ts +56 -56
- package/vendor/coze/original/end-registry.ts +41 -41
- package/vendor/coze/original/execute-result-panel.less +97 -97
- package/vendor/coze/original/execute-result-panel.tsx +171 -171
- package/vendor/coze/original/form-item.less +39 -39
- package/vendor/coze/original/form-item.tsx +200 -200
- package/vendor/coze/original/http-api-field.tsx +42 -42
- package/vendor/coze/original/http-form-render.tsx +102 -102
- package/vendor/coze/original/icon-add.svg +3 -3
- package/vendor/coze/original/icon-arrow-left.svg +3 -3
- package/vendor/coze/original/icon-auto-layout.svg +18 -18
- package/vendor/coze/original/icon-code.svg +13 -13
- package/vendor/coze/original/icon-condition.svg +12 -12
- package/vendor/coze/original/icon-database.svg +18 -18
- package/vendor/coze/original/icon-delete.svg +5 -5
- package/vendor/coze/original/icon-fullscreen.svg +9 -9
- package/vendor/coze/original/icon-more.svg +11 -11
- package/vendor/coze/original/icon-play-round-outlined.svg +8 -8
- package/vendor/coze/original/icon-plugin-tool.svg +6 -6
- package/vendor/coze/original/icon-standard-copy.svg +8 -8
- package/vendor/coze/original/icon-unknown.svg +7 -7
- package/vendor/coze/original/icon-var.svg +6 -6
- package/vendor/coze/original/icon-workflow-end.svg +5 -5
- package/vendor/coze/original/icon-workflow-start.svg +5 -5
- package/vendor/coze/original/icon-workflow.svg +21 -21
- package/vendor/coze/original/icon-workflows.svg +5 -5
- package/vendor/coze/original/if-form-meta.tsx +88 -88
- package/vendor/coze/original/logic-display.tsx +33 -33
- package/vendor/coze/original/mouse-icon.tsx +35 -35
- package/vendor/coze/original/mouse-pad-selector.tsx +180 -180
- package/vendor/coze/original/node-card.tsx +77 -77
- package/vendor/coze/original/node-category-panel.less +4 -4
- package/vendor/coze/original/node-category-panel.tsx +53 -53
- package/vendor/coze/original/node-config-form.tsx +67 -67
- package/vendor/coze/original/node-header.less +165 -165
- package/vendor/coze/original/node-header.tsx +552 -552
- package/vendor/coze/original/node-panel.less +183 -183
- package/vendor/coze/original/node-render.less +20 -20
- package/vendor/coze/original/node-side-sheet.less +57 -57
- package/vendor/coze/original/node-side-sheet.tsx +214 -214
- package/vendor/coze/original/node-wrapper.tsx +71 -71
- package/vendor/coze/original/pad-icon.tsx +45 -45
- package/vendor/coze/original/resizable-side-panel-constants.ts +18 -18
- package/vendor/coze/original/resizable-side-panel.tsx +42 -42
- package/vendor/coze/original/start-registry.ts +53 -53
- package/vendor/coze/original/sub-canvas-background.less +4 -4
- package/vendor/coze/original/sub-canvas-background.tsx +48 -48
- package/vendor/coze/original/sub-canvas-container.less +16 -16
- package/vendor/coze/original/sub-canvas-container.tsx +97 -97
- package/vendor/coze/original/sub-canvas-header.less +75 -75
- package/vendor/coze/original/sub-canvas-header.tsx +95 -95
- package/vendor/coze/original/test-form-sheet-header.tsx +82 -82
- package/vendor/coze/original/test-form-sheet.less +178 -178
- package/vendor/coze/original/toolbar-add-node.tsx +68 -68
- package/vendor/coze/original/toolbar-auto-layout.tsx +61 -61
- package/vendor/coze/original/toolbar-comment.tsx +121 -121
- package/vendor/coze/original/toolbar-container.tsx +42 -42
- package/vendor/coze/original/toolbar-interactive.tsx +98 -98
- package/vendor/coze/original/toolbar-minimap-switch.tsx +41 -41
- package/vendor/coze/original/toolbar-tools.less +46 -46
- package/vendor/coze/original/toolbar-tools.tsx +89 -89
- package/vendor/coze/original/toolbar-zoom.tsx +134 -134
- package/vendor/coze/original/tree-variable-selector.less +291 -291
- package/vendor/coze/original/tree-variable-selector.tsx +298 -298
- package/vendor/coze/original/workflow-document-custom-options.ts +151 -151
- package/vendor/coze/original/workflow-header.less +65 -65
- package/vendor/coze/original/workflow-header.tsx +85 -85
- package/vendor/coze/source/agent-models/model-option/index.module.less +18 -18
- package/vendor/coze/source/agent-models/model-option/index.tsx +321 -321
- package/vendor/coze/source/agent-models/model-option-avatar/index.tsx +175 -175
- package/vendor/coze/source/agent-models/model-option-group/index.tsx +87 -87
- package/vendor/coze/source/agent-models/model-option-thumb/index.tsx +41 -41
- package/vendor/coze/source/agent-models/model-select-ui/index.tsx +238 -238
- package/vendor/coze/source/agent-models/popover-model-list-view/index.tsx +146 -146
- package/vendor/coze/source/components/code-editor/text-editor.tsx +71 -71
- package/vendor/coze/source/components/comment/components/editor/block.tsx +117 -117
- package/vendor/coze/source/components/comment/components/editor/leaf.tsx +64 -64
- package/vendor/coze/source/components/comment/components/toolbar.tsx +366 -366
- package/vendor/coze/source/components/comment/constant.ts +94 -94
- package/vendor/coze/source/components/editor-container/expand-editor/index.module.less +107 -107
- package/vendor/coze/source/components/editor-container/expand-editor/index.tsx +117 -117
- package/vendor/coze/source/components/model-select/components/model-setting.tsx +300 -300
- package/vendor/coze/source/components/model-select/components/settings.tsx +144 -144
- package/vendor/coze/source/components/model-select/index.module.less +34 -34
- package/vendor/coze/source/components/model-select/utils/index.tsx +100 -100
- package/vendor/coze/source/components/node-render/node-render-new/fields/constants.tsx +79 -79
- package/vendor/coze/source/components/node-render/node-render-new/fields/field-empty.module.less +12 -12
- package/vendor/coze/source/components/node-render/node-render-new/fields/field-empty.tsx +37 -37
- package/vendor/coze/source/components/node-render/node-render-new/fields/field.module.less +19 -19
- package/vendor/coze/source/components/node-render/node-render-new/fields/field.tsx +52 -52
- package/vendor/coze/source/components/node-render/node-render-new/fields/http-api-field/index.tsx +42 -42
- package/vendor/coze/source/components/node-render/node-render-new/fields/overflow-tag-list.module.less +47 -47
- package/vendor/coze/source/components/node-render/node-render-new/fields/overflow-tag-list.tsx +162 -162
- package/vendor/coze/source/components/node-render/node-render-new/fields/variable-tag-list.module.less +48 -48
- package/vendor/coze/source/components/node-render/node-render-new/fields/variable-tag-list.tsx +126 -126
- package/vendor/coze/source/components/node-wrapper/execute-result-panel/index.module.less +97 -97
- package/vendor/coze/source/components/node-wrapper/execute-result-panel/index.tsx +171 -171
- package/vendor/coze/source/components/sub-canvas/components/background/index.module.less +4 -4
- package/vendor/coze/source/components/sub-canvas/components/header/index.module.less +75 -75
- package/vendor/coze/source/components/test-run/test-run-button/single-node.tsx +158 -158
- package/vendor/coze/source/execution-panel/panel.module.less +48 -48
- package/vendor/coze/source/execution-panel/panel.tsx +99 -99
- package/vendor/coze/source/execution-panel/use-resize.ts +79 -79
- package/vendor/coze/source/external/features/log/components/data-viewer/constants.ts +28 -28
- package/vendor/coze/source/external/features/log/components/data-viewer/context/context.ts +21 -21
- package/vendor/coze/source/external/features/log/components/data-viewer/context/create-store.ts +48 -48
- package/vendor/coze/source/external/features/log/components/data-viewer/context/index.ts +19 -19
- package/vendor/coze/source/external/features/log/components/data-viewer/context/provider.tsx +50 -50
- package/vendor/coze/source/external/features/log/components/data-viewer/data-viewer.module.less +26 -26
- package/vendor/coze/source/external/features/log/components/data-viewer/data-viewer.tsx +79 -79
- package/vendor/coze/source/external/features/log/components/data-viewer/hooks/index.ts +18 -18
- package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-data-viewer-store.ts +29 -29
- package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-expand.ts +35 -35
- package/vendor/coze/source/external/features/log/components/data-viewer/hooks/use-value.tsx +66 -66
- package/vendor/coze/source/external/features/log/components/data-viewer/index.tsx +21 -21
- package/vendor/coze/source/external/features/log/components/data-viewer/json-field/index.tsx +186 -186
- package/vendor/coze/source/external/features/log/components/data-viewer/json-field/json-field.module.less +79 -79
- package/vendor/coze/source/external/features/log/components/data-viewer/types.ts +50 -50
- package/vendor/coze/source/external/features/log/components/data-viewer/utils/big-number.ts +35 -35
- package/vendor/coze/source/external/features/log/components/data-viewer/utils/generate-field.ts +104 -104
- package/vendor/coze/source/external/features/log/components/log-parser/log-wrap.module.less +27 -27
- package/vendor/coze/source/external/features/log/components/log-parser/log-wrap.tsx +109 -109
- package/vendor/coze/source/external/features/log/components/node-status-bar/node-status-bar.module.less +52 -52
- package/vendor/coze/source/external/features/log/components/node-status-bar/node-status-bar.tsx +113 -113
- package/vendor/coze/source/form/components/field-empty.tsx +45 -45
- package/vendor/coze/source/form/components/section.tsx +91 -91
- package/vendor/coze/source/form-extensions/components/add-item-button/index.tsx +64 -64
- package/vendor/coze/source/form-extensions/components/form-card/index.module.less +131 -131
- package/vendor/coze/source/form-extensions/components/form-card/index.tsx +309 -309
- package/vendor/coze/source/form-extensions/components/form-item/index.module.less +39 -39
- package/vendor/coze/source/form-extensions/components/form-item/index.tsx +200 -200
- package/vendor/coze/source/form-extensions/components/form-item-feedback/index.module.less +7 -7
- package/vendor/coze/source/form-extensions/components/form-item-feedback/index.tsx +39 -39
- package/vendor/coze/source/form-extensions/components/level-line/index.module.less +346 -346
- package/vendor/coze/source/form-extensions/components/level-line/index.ts +17 -17
- package/vendor/coze/source/form-extensions/components/level-line/level-line.tsx +460 -460
- package/vendor/coze/source/form-extensions/components/level-line/types.ts +38 -38
- package/vendor/coze/source/form-extensions/components/level-line/utils.ts +60 -60
- package/vendor/coze/source/form-extensions/components/literal-value-input/constants.ts +61 -61
- package/vendor/coze/source/form-extensions/components/literal-value-input/input-boolean.tsx +80 -80
- package/vendor/coze/source/form-extensions/components/literal-value-input/input-integer.tsx +68 -68
- package/vendor/coze/source/form-extensions/components/literal-value-input/input-number.tsx +62 -62
- package/vendor/coze/source/form-extensions/components/literal-value-input/input-select.tsx +59 -59
- package/vendor/coze/source/form-extensions/components/literal-value-input/input-string.tsx +55 -55
- package/vendor/coze/source/form-extensions/components/literal-value-input/literal-value-input.tsx +35 -35
- package/vendor/coze/source/form-extensions/components/literal-value-input/styles.module.less +46 -46
- package/vendor/coze/source/form-extensions/components/literal-value-input/type.ts +61 -61
- package/vendor/coze/source/form-extensions/components/literal-value-input/utils.tsx +117 -117
- package/vendor/coze/source/form-extensions/components/node-header/components/close-button.tsx +44 -44
- package/vendor/coze/source/form-extensions/components/node-header/description-display.tsx +52 -52
- package/vendor/coze/source/form-extensions/components/node-header/description.tsx +131 -131
- package/vendor/coze/source/form-extensions/components/node-header/index.module.less +165 -165
- package/vendor/coze/source/form-extensions/components/node-header/index.tsx +552 -552
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-btn/index.tsx +43 -43
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/default-value-input.tsx +276 -276
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/index.module.less +124 -124
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/index.tsx +131 -131
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/expand-content/types.ts +32 -32
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-name/index.module.less +38 -38
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-name/index.tsx +101 -101
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-operator/index.module.less +51 -51
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-operator/index.tsx +107 -107
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-required/index.module.less +17 -17
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-required/index.tsx +53 -53
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/constants.tsx +77 -77
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/index.module.less +97 -97
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/components/param-type/index.tsx +155 -155
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/constants.ts +38 -38
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/index.module.less +138 -138
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/index.tsx +360 -360
- package/vendor/coze/source/form-extensions/components/output-tree/components/custom-tree-node/type.ts +88 -88
- package/vendor/coze/source/form-extensions/components/output-tree/components/header/index.module.less +36 -36
- package/vendor/coze/source/form-extensions/components/output-tree/components/header/index.tsx +104 -104
- package/vendor/coze/source/form-extensions/components/output-tree/constants.ts +22 -22
- package/vendor/coze/source/form-extensions/components/output-tree/context.ts +28 -28
- package/vendor/coze/source/form-extensions/components/output-tree/hooks/use-columns-style.ts +39 -39
- package/vendor/coze/source/form-extensions/components/output-tree/index.module.less +83 -83
- package/vendor/coze/source/form-extensions/components/output-tree/index.tsx +692 -692
- package/vendor/coze/source/form-extensions/components/output-tree/utils.ts +185 -185
- package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/index.tsx +97 -97
- package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/option-item.tsx +30 -30
- package/vendor/coze/source/form-extensions/components/setting-on-error/components/process-type/types.ts +23 -23
- package/vendor/coze/source/form-extensions/components/setting-on-error/components/retry-times/index.tsx +45 -45
- package/vendor/coze/source/form-extensions/components/setting-on-error/components/timeout/index.tsx +102 -102
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select-option.tsx +167 -167
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select-tree-panel.tsx +165 -165
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select.module.less +96 -96
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/composite-select.tsx +265 -265
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/context.tsx +42 -42
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/expand-icon.tsx +30 -30
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/index.module.less +291 -291
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/node-variable-tree.module.less +48 -48
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/node-variable-tree.tsx +149 -149
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/utils.tsx +500 -500
- package/vendor/coze/source/form-extensions/components/tree-variable-selector/value-display.tsx +130 -130
- package/vendor/coze/source/form-extensions/components/value-expression-input/const.ts +68 -68
- package/vendor/coze/source/form-extensions/components/value-expression-input/context.ts +27 -27
- package/vendor/coze/source/form-extensions/components/value-expression-input/index.module.less +144 -144
- package/vendor/coze/source/form-extensions/components/value-expression-input/value-expression-input.tsx +418 -418
- package/vendor/coze/source/form-extensions/components/variable-type-selector/constants.tsx +77 -77
- package/vendor/coze/source/form-extensions/components/variable-type-selector/index.module.less +31 -31
- package/vendor/coze/source/form-extensions/components/variable-type-selector/index.tsx +17 -17
- package/vendor/coze/source/form-extensions/components/variable-type-selector/utils.tsx +298 -298
- package/vendor/coze/source/form-extensions/components/variable-type-selector/variable-type-selector.tsx +235 -235
- package/vendor/coze/source/form-extensions/components/variable-type-tag/index.tsx +54 -54
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-branch.module.less +9 -9
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-branch.tsx +249 -249
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-header.tsx +50 -50
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-item-logic.module.less +13 -13
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-item-logic.tsx +73 -73
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/delete/index.module.less +10 -10
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/delete/index.tsx +42 -42
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/index.module.less +9 -9
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/index.tsx +254 -254
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/operator/index.module.less +7 -7
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/operator/index.tsx +144 -144
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/condition-params-item/value-expression-with-state/index.tsx +69 -69
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/context.ts +36 -36
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/condition-branch-preview.tsx +44 -44
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/condition-branch.tsx +152 -152
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/container.tsx +19 -19
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/custom-drag-layer.tsx +117 -117
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/draggable/types.ts +18 -18
- package/vendor/coze/source/form-extensions/setters/condition/multi-condition/types.ts +58 -58
- package/vendor/coze/source/node-registries/end/components/terminate-plan-field.tsx +29 -29
- package/vendor/coze/source/node-registries/end/constants.ts +34 -34
- package/vendor/coze/source/node-registries/end/form.tsx +66 -66
- package/vendor/coze/source/node-registries/end/types.ts +45 -45
- package/vendor/coze/source/node-registries/http/components/base-editor/raw-text-editor.tsx +80 -80
- package/vendor/coze/source/node-registries/http/constants.ts +80 -80
- package/vendor/coze/source/node-registries/http/fields/json-import-editor/index.module.less +191 -191
- package/vendor/coze/source/node-registries/http/fields/json-import-editor/json-import-components/json-expand-editor.tsx +141 -141
- package/vendor/coze/source/node-registries/http/fields/json-import-editor/json-import-components/json-import.tsx +99 -99
- package/vendor/coze/source/node-registries/http/form-render.tsx +102 -102
- package/vendor/coze/source/node-registries/http/setters/api/curl-expand-editor.tsx +161 -161
- package/vendor/coze/source/node-registries/http/setters/api/curl-import.tsx +96 -96
- package/vendor/coze/source/node-registries/http/setters/api/index.module.less +199 -199
- package/vendor/coze/source/node-registries/http/setters/api/index.tsx +149 -149
- package/vendor/coze/source/node-registries/http/setters/api/utils.ts +41 -41
- package/vendor/coze/source/node-registries/http/setters/body/index.tsx +201 -201
- package/vendor/coze/source/node-registries/http/setters/constants.ts +83 -83
- package/vendor/coze/source/node-registries/if/components/else/index.tsx +41 -41
- package/vendor/coze/source/node-registries/intent/components/intents/index.module.less +14 -14
- package/vendor/coze/source/node-registries/intent/components/intents/option-item/index.tsx +189 -189
- package/vendor/coze/source/node-registries/json-stringify/constants.ts +32 -32
- package/vendor/coze/source/node-registries/json-stringify/form.tsx +46 -46
- package/vendor/coze/source/node-registries/loop/constants.ts +43 -43
- package/vendor/coze/source/node-registries/loop/loop-fields/loop-settings-section/index.tsx +48 -48
- package/vendor/coze/source/node-registries/loop/loop-fields/loop-type/index.tsx +81 -81
- package/vendor/coze/source/node-registries/loop/loop-fields/loop-type/options.ts +34 -34
- package/vendor/coze/source/node-registries/start/form.tsx +209 -209
- package/vendor/coze/source/node-registries/text-process/components/method-selector/index.tsx +46 -46
- package/vendor/coze/source/node-registries/text-process/constants.ts +132 -132
- package/vendor/coze/source/nodes-v2/components/form-item-feedback/index.module.less +7 -7
- package/vendor/coze/source/nodes-v2/components/form-item-feedback/index.tsx +47 -47
- package/vendor/coze/source/nodes-v2/components/system-prompt/index.module.less +66 -66
- package/vendor/coze/source/nodes-v2/components/system-prompt/prompt-kit-bar.tsx +129 -129
- package/vendor/coze/source/nodes-v2/components/system-prompt/system-prompt-editor.tsx +110 -110
- package/vendor/coze/source/nodes-v2/llm/user-prompt/index.tsx +64 -64
- package/vendor/coze/source/prompt-kit/input-config-popover/index.tsx +80 -80
- package/vendor/coze/source/prompt-kit/input-slot-widget/index.css +34 -34
- package/vendor/coze/source/prompt-kit/input-slot-widget/index.ts +169 -169
- package/vendor/coze/source/prompt-kit/library-item.tsx +141 -141
- package/vendor/coze/source/prompt-kit/prompt-info-input.tsx +90 -90
- package/vendor/coze/source/ui-components/add-operation/index.module.less +19 -19
- package/vendor/coze/source/ui-components/add-operation/index.tsx +67 -67
- package/vendor/coze/source/ui-components/auto-size-tooltip/index.module.less +39 -39
- package/vendor/coze/source/ui-components/auto-size-tooltip/index.tsx +74 -74
- package/vendor/coze/source/ui-components/workflow-sl-input/index.module.less +36 -36
- package/vendor/coze/source/ui-components/workflow-sl-input/index.tsx +194 -194
- package/vendor/coze/source/utils/create-slots/index.tsx +126 -126
- 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);
|