fix: Fix translation gaps

v3.2
wangdan-fit2cloud 2025-08-27 19:06:18 +08:00
parent ce8f907932
commit 27f0250aaf
8 changed files with 130 additions and 109 deletions

View File

@ -669,12 +669,12 @@
<template v-if="item.type === WorkflowType.McpNode"> <template v-if="item.type === WorkflowType.McpNode">
<div class="card-never border-r-6"> <div class="card-never border-r-6">
<h5 class="p-8-12"> <h5 class="p-8-12">
{{ $t('views.applicationWorkflow.nodes.mcpNode.tool') }} {{ $t('views.tool.title') }}
</h5> </h5>
<div class="p-8-12 border-t-dashed lighter"> <div class="p-8-12 border-t-dashed lighter">
<div class="mb-8"> <div class="mb-8">
<span class="color-secondary"> <span class="color-secondary">
{{ $t('views.applicationWorkflow.nodes.mcpNode.tool') }}: {{ $t('views.tool.title') }}:
</span> </span>
{{ item.mcp_tool }} {{ item.mcp_tool }}
</div> </div>

View File

@ -5,11 +5,11 @@ export default {
nodeSetting: 'Node Settings', nodeSetting: 'Node Settings',
workflow: 'Workflow', workflow: 'Workflow',
searchBar: { searchBar: {
placeholder: 'Search by name' placeholder: 'Search by name',
}, },
info: { info: {
previewVersion: 'Preview Version:', previewVersion: 'Preview Version:',
saveTime: 'Last Saved:' saveTime: 'Last Saved:',
}, },
setting: { setting: {
restoreVersion: 'Restore Previous Version"', restoreVersion: 'Restore Previous Version"',
@ -39,7 +39,7 @@ export default {
}, },
delete: { delete: {
confirmTitle: 'Confirm to delete this node?', confirmTitle: 'Confirm to delete this node?',
deleteMessage: 'This node cannot be deleted' deleteMessage: 'This node cannot be deleted',
}, },
control: { control: {
zoomOut: 'Zoom Out', zoomOut: 'Zoom Out',
@ -47,7 +47,7 @@ export default {
fitView: 'Fit to Screen', fitView: 'Fit to Screen',
retract: 'Collapse All', retract: 'Collapse All',
extend: 'Expand All', extend: 'Expand All',
beautify: 'Auto-Arrange' beautify: 'Auto-Arrange',
}, },
variable: { variable: {
label: 'Variable', label: 'Variable',
@ -56,14 +56,14 @@ export default {
ReferencingRequired: 'Referenced variable is required', ReferencingRequired: 'Referenced variable is required',
ReferencingError: 'Invalid referenced variable', ReferencingError: 'Invalid referenced variable',
NoReferencing: 'Referenced variable does not exist', NoReferencing: 'Referenced variable does not exist',
placeholder: 'Please select a variable' placeholder: 'Please select a variable',
}, },
condition: { condition: {
title: 'Execution Condition', title: 'Execution Condition',
front: 'Precondition', front: 'Precondition',
AND: 'All', AND: 'All',
OR: 'Any', OR: 'Any',
text: 'After the connected node is executed, execute the current node' text: 'After the connected node is executed, execute the current node',
}, },
validate: { validate: {
startNodeRequired: 'Start node is required', startNodeRequired: 'Start node is required',
@ -74,30 +74,30 @@ export default {
noNextNode: 'Next node does not exist', noNextNode: 'Next node does not exist',
nodeUnavailable: 'Node unavailable', nodeUnavailable: 'Node unavailable',
needConnect1: 'The branch of the node needs to be connected', needConnect1: 'The branch of the node needs to be connected',
cannotEndNode: 'This node cannot be used as an end node' cannotEndNode: 'This node cannot be used as an end node',
}, },
nodes: { nodes: {
classify: { classify: {
aiCapability: 'AI capability', aiCapability: 'AI capability',
businessLogic: 'Business logic', businessLogic: 'Business logic',
other: 'Other' other: 'Other',
}, },
startNode: { startNode: {
label: 'Start', label: 'Start',
question: 'User Question', question: 'User Question',
currentTime: 'Current Time' currentTime: 'Current Time',
}, },
baseNode: { baseNode: {
label: 'Base Information', label: 'Base Information',
appName: { appName: {
label: 'App Name' label: 'App Name',
}, },
appDescription: { appDescription: {
label: 'App Description' label: 'App Description',
}, },
fileUpload: { fileUpload: {
label: 'File Upload', label: 'File Upload',
tooltip: 'When enabled, the Q&A page will display a file upload button.' tooltip: 'When enabled, the Q&A page will display a file upload button.',
}, },
FileUploadSetting: { FileUploadSetting: {
title: 'File Upload Settings', title: 'File Upload Settings',
@ -107,9 +107,9 @@ export default {
label: 'File types allowed for upload', label: 'File types allowed for upload',
documentText: 'Requires "Document Content Extraction" node to parse document content', documentText: 'Requires "Document Content Extraction" node to parse document content',
imageText: 'Requires "Image Understanding" node to parse image content', imageText: 'Requires "Image Understanding" node to parse image content',
audioText: 'Requires "Speech-to-Text" node to parse audio content' audioText: 'Requires "Speech-to-Text" node to parse audio content',
} },
} },
}, },
aiChatNode: { aiChatNode: {
label: 'AI Chat', label: 'AI Chat',
@ -118,10 +118,10 @@ export default {
returnContent: { returnContent: {
label: 'Return Content', label: 'Return Content',
tooltip: `If turned off, the content of this node will not be output to the user. tooltip: `If turned off, the content of this node will not be output to the user.
If you want the user to see the output of this node, please turn on the switch.` If you want the user to see the output of this node, please turn on the switch.`,
}, },
defaultPrompt: 'Known Information', defaultPrompt: 'Known Information',
think: 'Thinking Process' think: 'Thinking Process',
}, },
searchKnowledgeNode: { searchKnowledgeNode: {
label: 'Knowledge Retrieval', label: 'Knowledge Retrieval',
@ -134,8 +134,8 @@ export default {
searchQuestion: { searchQuestion: {
label: 'Question', label: 'Question',
placeholder: 'Please select a search question', placeholder: 'Please select a search question',
requiredMessage: 'Please select a search question' requiredMessage: 'Please select a search question',
} },
}, },
questionNode: { questionNode: {
label: 'Question Optimization', label: 'Question Optimization',
@ -143,7 +143,7 @@ export default {
result: 'Optimized Question Result', result: 'Optimized Question Result',
defaultPrompt1: `Optimize and improve the user's question based on context:`, defaultPrompt1: `Optimize and improve the user's question based on context:`,
defaultPrompt2: `Please output an optimized question.`, defaultPrompt2: `Please output an optimized question.`,
systemDefault: 'You are a question optimization expert' systemDefault: 'You are a question optimization expert',
}, },
conditionNode: { conditionNode: {
label: 'Conditional Branch', label: 'Conditional Branch',
@ -152,11 +152,11 @@ export default {
conditions: { conditions: {
label: 'Conditions', label: 'Conditions',
info: 'Meets the following', info: 'Meets the following',
requiredMessage: 'Please select conditions' requiredMessage: 'Please select conditions',
}, },
valueMessage: 'Please enter a value', valueMessage: 'Please enter a value',
addCondition: 'Add Condition', addCondition: 'Add Condition',
addBranch: 'Add Branch' addBranch: 'Add Branch',
}, },
replyNode: { replyNode: {
label: 'Specified Reply', label: 'Specified Reply',
@ -164,8 +164,8 @@ export default {
content: 'Content', content: 'Content',
replyContent: { replyContent: {
label: 'Reply Content', label: 'Reply Content',
reference: 'Reference Variable' reference: 'Reference Variable',
} },
}, },
rerankerNode: { rerankerNode: {
label: 'Multi-path Recall', label: 'Multi-path Recall',
@ -174,15 +174,15 @@ export default {
result: 'Re-ranking Result', result: 'Re-ranking Result',
rerankerContent: { rerankerContent: {
label: 'Re-ranking Content', label: 'Re-ranking Content',
requiredMessage: 'Please select re-ranking content' requiredMessage: 'Please select re-ranking content',
}, },
higher: 'Higher', higher: 'Higher',
ScoreTooltip: 'The higher the Score, the stronger the relevance.', ScoreTooltip: 'The higher the Score, the stronger the relevance.',
max_paragraph_char_number: 'Maximum Character', max_paragraph_char_number: 'Maximum Character',
reranker_model: { reranker_model: {
label: 'Rerank', label: 'Rerank',
placeholder: 'Please select a rerank' placeholder: 'Please select a rerank',
} },
}, },
formNode: { formNode: {
label: 'Form Input', label: 'Form Input',
@ -194,15 +194,15 @@ export default {
label: 'Form Output Content', label: 'Form Output Content',
requiredMessage: requiredMessage:
'Please set the output content of this node, { form } is a placeholder for the form.', 'Please set the output content of this node, { form } is a placeholder for the form.',
tooltip: 'Define the output content of this node. { form } is a placeholder for the form' tooltip: 'Define the output content of this node. { form } is a placeholder for the form',
}, },
formAllContent: 'All Form Content', formAllContent: 'All Form Content',
formSetting: 'Form Configuration' formSetting: 'Form Configuration',
}, },
documentExtractNode: { documentExtractNode: {
label: 'Document Content Extraction', label: 'Document Content Extraction',
text: 'Extract content from documents', text: 'Extract content from documents',
content: 'Document Content' content: 'Document Content',
}, },
imageUnderstandNode: { imageUnderstandNode: {
label: 'Image Understanding', label: 'Image Understanding',
@ -210,17 +210,28 @@ export default {
answer: 'AI Content', answer: 'AI Content',
model: { model: {
label: 'Vision Model', label: 'Vision Model',
requiredMessage: 'Please select a vision model' requiredMessage: 'Please select a vision model',
}, },
image: { image: {
label: 'Select Image', label: 'Select Image',
requiredMessage: 'Please select an image' requiredMessage: 'Please select an image',
} },
}, },
variableAssignNode: { variableAssignNode: {
label: 'Variable Assign', label: 'Variable Assign',
text: 'Update the value of the global variable', text: 'Update the value of the global variable',
assign: 'Set Value' assign: 'Set Value',
},
mcpNode: {
label: 'MCP Node',
text: 'Call external MCP services to process data',
getToolsSuccess: 'Tools fetched successfully',
getTool: 'Fetch Tools',
toolParam: 'Tool Parameters',
mcpServerTip: 'Please enter MCP server configuration in JSON format',
mcpToolTip: 'Please select a tool',
configLabel: 'MCP Server Config (Only SSE/Streamable HTTP calls are supported)',
reference: 'Reference MCP',
}, },
imageGenerateNode: { imageGenerateNode: {
label: 'Image Generation', label: 'Image Generation',
@ -228,47 +239,47 @@ export default {
answer: 'AI Content', answer: 'AI Content',
model: { model: {
label: 'Image Generation Model', label: 'Image Generation Model',
requiredMessage: 'Please select an image generation model' requiredMessage: 'Please select an image generation model',
}, },
prompt: { prompt: {
label: 'Positive Prompt', label: 'Positive Prompt',
tooltip: 'Describe elements and visual features you want in the generated image' tooltip: 'Describe elements and visual features you want in the generated image',
}, },
negative_prompt: { negative_prompt: {
label: 'Negative Prompt', label: 'Negative Prompt',
tooltip: 'Describe elements you want to exclude from the generated image', tooltip: 'Describe elements you want to exclude from the generated image',
placeholder: placeholder:
'Please describe content you do not want to generate, such as color, bloody content' 'Please describe content you do not want to generate, such as color, bloody content',
} },
}, },
speechToTextNode: { speechToTextNode: {
label: 'Speech2Text', label: 'Speech2Text',
text: 'Convert audio to text through speech recognition model', text: 'Convert audio to text through speech recognition model',
stt_model: { stt_model: {
label: 'Speech Recognition Model' label: 'Speech Recognition Model',
}, },
audio: { audio: {
label: 'Select Audio File', label: 'Select Audio File',
placeholder: 'Please select an audio file' placeholder: 'Please select an audio file',
} },
}, },
textToSpeechNode: { textToSpeechNode: {
label: 'TTS', label: 'TTS',
text: 'Convert text to audio through speech synthesis model', text: 'Convert text to audio through speech synthesis model',
tts_model: { tts_model: {
label: 'Speech Synthesis Model' label: 'Speech Synthesis Model',
}, },
content: { content: {
label: 'Select Text Content' label: 'Select Text Content',
} },
}, },
toolNode: { toolNode: {
label: 'Custom Tool', label: 'Custom Tool',
text: 'Execute custom scripts to achieve data processing' text: 'Execute custom scripts to achieve data processing',
}, },
applicationNode: { applicationNode: {
label: 'APP Node' label: 'APP Node',
} },
}, },
compare: { compare: {
is_null: 'Is null', is_null: 'Is null',
@ -284,7 +295,7 @@ export default {
len_ge: 'Length greater than or equal to', len_ge: 'Length greater than or equal to',
len_gt: 'Length greater than', len_gt: 'Length greater than',
len_le: 'Length less than or equal to', len_le: 'Length less than or equal to',
len_lt: 'Length less than' len_lt: 'Length less than',
}, },
FileUploadSetting: {} FileUploadSetting: {},
} }

View File

@ -233,7 +233,6 @@ export default {
text: '通过SSE/Streamable HTTP方式执行MCP服务中的工具', text: '通过SSE/Streamable HTTP方式执行MCP服务中的工具',
getToolsSuccess: '获取工具成功', getToolsSuccess: '获取工具成功',
getTool: '获取工具', getTool: '获取工具',
tool: '工具',
toolParam: '工具参数', toolParam: '工具参数',
mcpServerTip: '请输入JSON格式的MCP服务器配置', mcpServerTip: '请输入JSON格式的MCP服务器配置',
mcpToolTip: '请选择工具', mcpToolTip: '请选择工具',

View File

@ -5,11 +5,11 @@ export default {
nodeSetting: '節點設置', nodeSetting: '節點設置',
workflow: '工作流', workflow: '工作流',
searchBar: { searchBar: {
placeholder: '按名稱搜索' placeholder: '按名稱搜索',
}, },
info: { info: {
previewVersion: '預覽版本:', previewVersion: '預覽版本:',
saveTime: '保存時間:' saveTime: '保存時間:',
}, },
setting: { setting: {
restoreVersion: '恢復版本', restoreVersion: '恢復版本',
@ -39,7 +39,7 @@ export default {
}, },
delete: { delete: {
confirmTitle: '確定刪除該節點?', confirmTitle: '確定刪除該節點?',
deleteMessage: '節點不允許刪除' deleteMessage: '節點不允許刪除',
}, },
control: { control: {
zoomOut: '縮小', zoomOut: '縮小',
@ -47,7 +47,7 @@ export default {
fitView: '適應', fitView: '適應',
retract: '收起全部節點', retract: '收起全部節點',
extend: '展開全部節點', extend: '展開全部節點',
beautify: '一鍵美化' beautify: '一鍵美化',
}, },
variable: { variable: {
label: '變量', label: '變量',
@ -56,14 +56,14 @@ export default {
ReferencingRequired: '引用變量必填', ReferencingRequired: '引用變量必填',
ReferencingError: '引用變量錯誤', ReferencingError: '引用變量錯誤',
NoReferencing: '不存在的引用變量', NoReferencing: '不存在的引用變量',
placeholder: '請選擇變量' placeholder: '請選擇變量',
}, },
condition: { condition: {
title: '執行條件', title: '執行條件',
front: '前置', front: '前置',
AND: '所有', AND: '所有',
OR: '任一', OR: '任一',
text: '連線節點執行完,執行當前節點' text: '連線節點執行完,執行當前節點',
}, },
validate: { validate: {
startNodeRequired: '開始節點必填', startNodeRequired: '開始節點必填',
@ -75,30 +75,30 @@ export default {
nodeUnavailable: '節點不可用', nodeUnavailable: '節點不可用',
needConnect1: '節點的', needConnect1: '節點的',
needConnect2: '分支需要連接', needConnect2: '分支需要連接',
cannotEndNode: '節點不能當做結束節點' cannotEndNode: '節點不能當做結束節點',
}, },
nodes: { nodes: {
classify: { classify: {
aiCapability: 'AI能力', aiCapability: 'AI能力',
businessLogic: '業務邏輯', businessLogic: '業務邏輯',
other: '其他' other: '其他',
}, },
startNode: { startNode: {
label: '開始', label: '開始',
question: '用戶問題', question: '用戶問題',
currentTime: '當前時間' currentTime: '當前時間',
}, },
baseNode: { baseNode: {
label: '基本信息', label: '基本信息',
appName: { appName: {
label: '應用名稱' label: '應用名稱',
}, },
appDescription: { appDescription: {
label: '應用描述' label: '應用描述',
}, },
fileUpload: { fileUpload: {
label: '文件上傳', label: '文件上傳',
tooltip: '開啟後,問答頁面會顯示上傳文件的按鈕。' tooltip: '開啟後,問答頁面會顯示上傳文件的按鈕。',
}, },
FileUploadSetting: { FileUploadSetting: {
title: '文件上傳設置', title: '文件上傳設置',
@ -108,9 +108,9 @@ export default {
label: '上傳的文件類型', label: '上傳的文件類型',
documentText: '需要使用「文檔內容提取」節點解析文檔內容', documentText: '需要使用「文檔內容提取」節點解析文檔內容',
imageText: '需要使用「圖片理解」節點解析圖片內容', imageText: '需要使用「圖片理解」節點解析圖片內容',
audioText: '需要使用「語音轉文本」節點解析音頻內容' audioText: '需要使用「語音轉文本」節點解析音頻內容',
} },
} },
}, },
aiChatNode: { aiChatNode: {
label: 'AI 對話', label: 'AI 對話',
@ -119,10 +119,10 @@ export default {
returnContent: { returnContent: {
label: '返回內容', label: '返回內容',
tooltip: `關閉後該節點的內容則不輸出給用戶。 tooltip: `關閉後該節點的內容則不輸出給用戶。
` `,
}, },
defaultPrompt: '已知信息', defaultPrompt: '已知信息',
think: '思考過程' think: '思考過程',
}, },
searchKnowledgeNode: { searchKnowledgeNode: {
label: '知識庫檢索', label: '知識庫檢索',
@ -135,8 +135,8 @@ export default {
searchQuestion: { searchQuestion: {
label: '檢索問題', label: '檢索問題',
placeholder: '請選擇檢索問題', placeholder: '請選擇檢索問題',
requiredMessage: '請選擇檢索問題' requiredMessage: '請選擇檢索問題',
} },
}, },
questionNode: { questionNode: {
label: '問題優化', label: '問題優化',
@ -144,7 +144,7 @@ export default {
result: '問題優化結果', result: '問題優化結果',
defaultPrompt1: `根據上下文優化和完善用戶問題:`, defaultPrompt1: `根據上下文優化和完善用戶問題:`,
defaultPrompt2: `請輸出一個優化後的問題。`, defaultPrompt2: `請輸出一個優化後的問題。`,
systemDefault: '你是一個問題優化大師' systemDefault: '你是一個問題優化大師',
}, },
conditionNode: { conditionNode: {
label: '判斷器', label: '判斷器',
@ -153,11 +153,11 @@ export default {
conditions: { conditions: {
label: '條件', label: '條件',
info: '符合以下', info: '符合以下',
requiredMessage: '請選擇條件' requiredMessage: '請選擇條件',
}, },
valueMessage: '請輸入值', valueMessage: '請輸入值',
addCondition: '添加條件', addCondition: '添加條件',
addBranch: '添加分支' addBranch: '添加分支',
}, },
replyNode: { replyNode: {
label: '指定回覆', label: '指定回覆',
@ -165,8 +165,8 @@ export default {
content: '內容', content: '內容',
replyContent: { replyContent: {
label: '回覆內容', label: '回覆內容',
reference: '引用變量' reference: '引用變量',
} },
}, },
rerankerNode: { rerankerNode: {
label: '多路召回', label: '多路召回',
@ -175,15 +175,15 @@ export default {
result: '重排結果', result: '重排結果',
rerankerContent: { rerankerContent: {
label: '重排內容', label: '重排內容',
requiredMessage: '請選擇重排內容' requiredMessage: '請選擇重排內容',
}, },
higher: '高於', higher: '高於',
ScoreTooltip: 'Score越高相關性越強。', ScoreTooltip: 'Score越高相關性越強。',
max_paragraph_char_number: '最大引用字符數', max_paragraph_char_number: '最大引用字符數',
reranker_model: { reranker_model: {
label: '重排模型', label: '重排模型',
placeholder: '請選擇重排模型' placeholder: '請選擇重排模型',
} },
}, },
formNode: { formNode: {
label: '表單收集', label: '表單收集',
@ -194,15 +194,15 @@ export default {
formContent: { formContent: {
label: '表單輸出內容', label: '表單輸出內容',
requiredMessage: '請表單輸出內容', requiredMessage: '請表單輸出內容',
tooltip: '設置執行該節點輸出的內容,{ form } 為表單的佔位符。' tooltip: '設置執行該節點輸出的內容,{ form } 為表單的佔位符。',
}, },
formAllContent: '表單全部內容', formAllContent: '表單全部內容',
formSetting: '表單配置' formSetting: '表單配置',
}, },
documentExtractNode: { documentExtractNode: {
label: '文檔內容提取', label: '文檔內容提取',
text: '提取文檔中的內容', text: '提取文檔中的內容',
content: '文檔內容' content: '文檔內容',
}, },
imageUnderstandNode: { imageUnderstandNode: {
label: '圖片理解', label: '圖片理解',
@ -210,17 +210,28 @@ export default {
answer: 'AI 回答內容', answer: 'AI 回答內容',
model: { model: {
label: '圖片理解模型', label: '圖片理解模型',
requiredMessage: '請選擇圖片理解模型' requiredMessage: '請選擇圖片理解模型',
}, },
image: { image: {
label: '選擇圖片', label: '選擇圖片',
requiredMessage: '請選擇圖片' requiredMessage: '請選擇圖片',
} },
}, },
variableAssignNode: { variableAssignNode: {
label: '變數賦值', label: '變數賦值',
text: '更新全域變數的值', text: '更新全域變數的值',
assign: '賦值' assign: '賦值',
},
mcpNode: {
label: 'MCP 調用',
text: '通過SSE/Streamable HTTP方式執行MCP服務中的工具',
getToolsSuccess: '獲取工具成功',
getTool: '獲取工具',
toolParam: '工具參數',
mcpServerTip: '請輸入JSON格式的MCP服務器配置',
mcpToolTip: '請選擇工具',
configLabel: 'MCP Server Config (僅支持SSE/Streamable HTTP調用方式)',
reference: '引用MCP',
}, },
imageGenerateNode: { imageGenerateNode: {
label: '圖片生成', label: '圖片生成',
@ -228,46 +239,46 @@ export default {
answer: 'AI 回答內容', answer: 'AI 回答內容',
model: { model: {
label: '圖片生成模型', label: '圖片生成模型',
requiredMessage: '請選擇圖片生成模型' requiredMessage: '請選擇圖片生成模型',
}, },
prompt: { prompt: {
label: '提示詞(正向)', label: '提示詞(正向)',
tooltip: '正向提示詞,用來描述生成圖像中期望包含的元素和視覺特點' tooltip: '正向提示詞,用來描述生成圖像中期望包含的元素和視覺特點',
}, },
negative_prompt: { negative_prompt: {
label: '提示詞(負向)', label: '提示詞(負向)',
tooltip: '反向提示詞,用來描述不希望在畫面中看到的內容,可以對畫面進行限制。', tooltip: '反向提示詞,用來描述不希望在畫面中看到的內容,可以對畫面進行限制。',
placeholder: '請描述不想生成的圖片內容,比如:顏色、血腥內容' placeholder: '請描述不想生成的圖片內容,比如:顏色、血腥內容',
} },
}, },
speechToTextNode: { speechToTextNode: {
label: '語音轉文本', label: '語音轉文本',
text: '將音頻通過語音識別模型轉換為文本', text: '將音頻通過語音識別模型轉換為文本',
stt_model: { stt_model: {
label: '語音識別模型' label: '語音識別模型',
}, },
audio: { audio: {
label: '選擇語音文件', label: '選擇語音文件',
placeholder: '請選擇語音文件' placeholder: '請選擇語音文件',
} },
}, },
textToSpeechNode: { textToSpeechNode: {
label: '文本轉語音', label: '文本轉語音',
text: '將文本通過語音合成模型轉換為音頻', text: '將文本通過語音合成模型轉換為音頻',
tts_model: { tts_model: {
label: '語音合成模型' label: '語音合成模型',
}, },
content: { content: {
label: '選擇文本內容' label: '選擇文本內容',
} },
}, },
toolNode: { toolNode: {
label: '自定義工具', label: '自定義工具',
text: '通過執行自定義腳本,實現數據處理' text: '通過執行自定義腳本,實現數據處理',
}, },
applicationNode: { applicationNode: {
label: '應用節點' label: '應用節點',
} },
}, },
compare: { compare: {
is_null: '為空', is_null: '為空',
@ -283,7 +294,7 @@ export default {
len_ge: '長度大於等於', len_ge: '長度大於等於',
len_gt: '長度大於', len_gt: '長度大於',
len_le: '長度小於等於', len_le: '長度小於等於',
len_lt: '長度小於' len_lt: '長度小於',
}, },
FileUploadSetting: {} FileUploadSetting: {},
} }

View File

@ -23,7 +23,7 @@
<AppIcon iconName="app-copy"></AppIcon> <AppIcon iconName="app-copy"></AppIcon>
</el-button> </el-button>
</div> </div>
<el-scrollbar height="150" always> <el-scrollbar height="180" always>
<div class="pre-wrap p-8 pt-0"> <div class="pre-wrap p-8 pt-0">
{{ source1 }} {{ source1 }}
</div> </div>
@ -46,7 +46,7 @@
<AppIcon iconName="app-copy"></AppIcon> <AppIcon iconName="app-copy"></AppIcon>
</el-button> </el-button>
</div> </div>
<el-scrollbar height="150" always> <el-scrollbar height="180" always>
<div class="pre-wrap p-8 pt-0"> <div class="pre-wrap p-8 pt-0">
{{ source3 }} {{ source3 }}
</div> </div>
@ -69,7 +69,7 @@
<AppIcon iconName="app-copy"></AppIcon> <AppIcon iconName="app-copy"></AppIcon>
</el-button> </el-button>
</div> </div>
<el-scrollbar height="150" always> <el-scrollbar height="180" always>
<div class="pre-wrap p-8 pt-0"> <div class="pre-wrap p-8 pt-0">
{{ source2 }} {{ source2 }}
</div> </div>
@ -157,7 +157,7 @@ defineExpose({ open })
font-weight: 400; font-weight: 400;
font-size: 13px; font-size: 13px;
white-space: pre; white-space: pre;
height: 188px; height: 210px;
} }
} }
</style> </style>

View File

@ -31,13 +31,13 @@
required: true, required: true,
message: message:
$t('common.selectPlaceholder') + $t('common.selectPlaceholder') +
` MCP ${$t('views.applicationWorkflow.nodes.mcpNode.tool')}`, ` MCP ${$t('views.tool.title')}`,
}, },
]" ]"
prop="mcp_tool_id" prop="mcp_tool_id"
> >
<template #label> <template #label>
{{ `MCP ${$t('views.applicationWorkflow.nodes.mcpNode.tool')}` }} {{ `MCP ${$t('views.tool.title')}` }}
<span class="color-danger">*</span> <span class="color-danger">*</span>
</template> </template>
<el-select v-model="form.mcp_tool_id" filterable> <el-select v-model="form.mcp_tool_id" filterable>

View File

@ -158,7 +158,7 @@
</div> </div>
<!-- 工具 --> <!-- 工具 -->
<div class="flex-between mb-16"> <div class="flex-between mb-16">
<div class="lighter">{{ $t('views.applicationWorkflow.nodes.mcpNode.tool') }}</div> <div class="lighter">{{ $t('views.tool.title') }}</div>
<div> <div>
<el-button <el-button
type="primary" type="primary"

View File

@ -59,7 +59,7 @@
<el-form-item> <el-form-item>
<template v-slot:label> <template v-slot:label>
<div class="flex-between"> <div class="flex-between">
<span>{{ $t('views.applicationWorkflow.nodes.mcpNode.tool') }}</span> <span>{{ $t('views.tool.title') }}</span>
<el-button type="primary" link @click="getTools()"> <el-button type="primary" link @click="getTools()">
<el-icon class="mr-4"> <el-icon class="mr-4">
<Plus/> <Plus/>