diff --git a/ui/src/workflow-canvas/component/NodeMenu.vue b/ui/src/workflow-canvas/component/NodeMenu.vue index 3ff818f6a9a..44f7863ecd5 100644 --- a/ui/src/workflow-canvas/component/NodeMenu.vue +++ b/ui/src/workflow-canvas/component/NodeMenu.vue @@ -28,6 +28,7 @@ const workflowComponentGroups = [ list: [ { icon: aiChatIcon, iconClass: 'bg-primary-gradient', label: 'AI 对话', value: WorkflowNodeType.AiChat }, { icon: aiChatIcon, iconClass: 'bg-primary-gradient', label: '意图识别', value: WorkflowNodeType.IntentNode }, + { icon: aiChatIcon, iconClass: 'bg-primary-gradient', label: '文本转语音', value: WorkflowNodeType.TextToSpeechNode }, ], }, { diff --git a/ui/src/workflow-canvas/icons/text-to-speech-node-icon.vue b/ui/src/workflow-canvas/icons/text-to-speech-node-icon.vue new file mode 100644 index 00000000000..7a220814144 --- /dev/null +++ b/ui/src/workflow-canvas/icons/text-to-speech-node-icon.vue @@ -0,0 +1,6 @@ + + diff --git a/ui/src/workflow-canvas/nodes/text-to-speech-node/index.ts b/ui/src/workflow-canvas/nodes/text-to-speech-node/index.ts new file mode 100644 index 00000000000..1cc46334c43 --- /dev/null +++ b/ui/src/workflow-canvas/nodes/text-to-speech-node/index.ts @@ -0,0 +1,15 @@ +import TextToSpeechNodeVue from './index.vue' +import { WorkflowNodeModel, WorkflowNodeView } from '@/workflow-canvas/core/workflow-node' +import { WorkflowNodeType } from '@/workflow-canvas/types.ts' + +class TextToSpeechNodeView extends WorkflowNodeView { + constructor(props: ConstructorParameters[0]) { + super(props, TextToSpeechNodeVue) + } +} + +export default { + type: WorkflowNodeType.TextToSpeechNode, + model: WorkflowNodeModel, + view: TextToSpeechNodeView, +} diff --git a/ui/src/workflow-canvas/nodes/text-to-speech-node/index.vue b/ui/src/workflow-canvas/nodes/text-to-speech-node/index.vue new file mode 100644 index 00000000000..34f91b98eeb --- /dev/null +++ b/ui/src/workflow-canvas/nodes/text-to-speech-node/index.vue @@ -0,0 +1,126 @@ + + + +