From 8b3e3c8044053690a3a942f4f32d4fbfe868bc15 Mon Sep 17 00:00:00 2001 From: zhaoying Date: Tue, 21 Apr 2026 18:30:51 +0800 Subject: [PATCH 1/2] feat(web): add output node --- web/src/assets/images/workflow/output.svg | 18 ++++++++++++++++++ web/src/i18n/en.ts | 11 ++++++++--- web/src/i18n/zh.ts | 11 ++++++++--- .../views/Workflow/components/Chat/Runtime.tsx | 4 ++-- .../Properties/MappingList/index.tsx | 11 +++++++++-- .../Workflow/components/Properties/index.tsx | 16 +++++++++++++--- web/src/views/Workflow/constant.ts | 11 ++++++++++- 7 files changed, 68 insertions(+), 14 deletions(-) create mode 100644 web/src/assets/images/workflow/output.svg diff --git a/web/src/assets/images/workflow/output.svg b/web/src/assets/images/workflow/output.svg new file mode 100644 index 00000000..bd16a7f1 --- /dev/null +++ b/web/src/assets/images/workflow/output.svg @@ -0,0 +1,18 @@ + + + 编组 13备份 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/i18n/en.ts b/web/src/i18n/en.ts index dfc42973..80727bd2 100644 --- a/web/src/i18n/en.ts +++ b/web/src/i18n/en.ts @@ -2243,6 +2243,7 @@ Memory Bear: After the rebellion, regional warlordism intensified for several re coreNode: 'Core Nodes', start: 'Start', end: 'End', + output: 'Output', answer: 'Answer', aiAndCognitiveProcessing: 'AI & Cognitive Processing', llm: 'Large Language Model (LLM)', @@ -2494,12 +2495,15 @@ Memory Bear: After the rebellion, regional warlordism intensified for several re ne: 'Not In', } }, + output: { + outputs: 'Output Variable', + }, name: 'Key', type: 'Type', value: 'Value', addCase: 'Add Condition', addVariable: 'Add Variables', - output: 'Output Variable', + outputVariable: 'Output Variable', duplicateName: 'Variable name cannot be duplicated', }, @@ -2516,8 +2520,8 @@ Memory Bear: After the rebellion, regional warlordism intensified for several re redo: 'Redo', undo: 'Undo', - input: 'Input', - output: 'Output', + input_result: 'Input', + output_result: 'Output', error: 'Error Message', loopNum: ' loops', iterationNum: ' iterations', @@ -2564,6 +2568,7 @@ Memory Bear: After the rebellion, regional warlordism intensified for several re 'jinja-render.template': 'Template', 'document-extractor.file_selector': 'File variable', 'list-operator.input_list': 'Input list', + 'output.outputs': 'Output Variable', }, checkListHasErrors: 'Please resolve all issues in the checklist before publishing', variableSelect: { diff --git a/web/src/i18n/zh.ts b/web/src/i18n/zh.ts index ae0181c9..11108ae6 100644 --- a/web/src/i18n/zh.ts +++ b/web/src/i18n/zh.ts @@ -2204,6 +2204,7 @@ export const zh = { coreNode: '核心节点', start: '开始(Start)', end: '结束(End)', + output: '输出(Output)', answer: '回复(Answer)', aiAndCognitiveProcessing: 'AI与认知处理', llm: '大语言模型 (LLM)', @@ -2458,12 +2459,15 @@ export const zh = { ne: '不在', } }, + output: { + outputs: '输出变量', + }, name: '键', type: '类型', value: '值', addCase: '添加条件', addVariable: '添加变量', - output: '输出变量', + outputVariable: '输出变量', duplicateName: '变量名不能重复', }, @@ -2480,8 +2484,8 @@ export const zh = { redo: '重做', undo: '撤销', - input: '输入', - output: '输出', + input_result: '输入', + output_result: '输出', error: '错误信息', loopNum: '个循环', iterationNum: '个迭代', @@ -2528,6 +2532,7 @@ export const zh = { 'jinja-render.template': '模板', 'document-extractor.file_selector': '文件变量', 'list-operator.input_list': '输入变量', + 'output.outputs': '输出变量', }, checkListHasErrors: '发布前确认检查清单中所有问题均已解决', variableSelect: { diff --git a/web/src/views/Workflow/components/Chat/Runtime.tsx b/web/src/views/Workflow/components/Chat/Runtime.tsx index 4a5be793..d403e828 100644 --- a/web/src/views/Workflow/components/Chat/Runtime.tsx +++ b/web/src/views/Workflow/components/Chat/Runtime.tsx @@ -2,7 +2,7 @@ * @Author: ZhaoYing * @Date: 2026-02-24 17:57:08 * @Last Modified by: ZhaoYing - * @Last Modified time: 2026-04-14 16:33:33 + * @Last Modified time: 2026-04-20 15:33:48 */ /* * Runtime Component @@ -187,7 +187,7 @@ const Runtime: FC<{ item: ChatItem; index: number;}> = ({ {['input', 'output'].map(key => (
- {isLoop ? t(`workflow.runtime.${key}_cycle_vars`) : t(`workflow.${key}`)} + {isLoop ? t(`workflow.runtime.${key}_cycle_vars`) : t(`workflow.${key}_result`)}