feat(web): 增加节点分组

This commit is contained in:
v-zhangjc9
2025-07-12 19:09:47 +08:00
parent 528e66c497
commit 60f6b79167
3 changed files with 40 additions and 22 deletions

View File

@@ -14,7 +14,7 @@ const inputVariableChecker: NodeChecker = (id, inputSchema, nodes, edges, data)
if (!isEmpty(inputs)) {
let outputVariables = new Set([
...getAllIncomerNodeOutputVariables(id, nodes, edges, data).map(i => `${i.id}.${i.variable}`),
...Object.keys(inputSchema)
...Object.keys(inputSchema),
])
for (const key of Object.keys(inputs)) {
let variable = inputs[key]?.variable ?? ''
@@ -31,43 +31,55 @@ const inputVariableChecker: NodeChecker = (id, inputSchema, nodes, edges, data)
}
type NodeDefine = {
key: string,
group: string,
name: string,
description: string,
component: any,
checkers: NodeChecker[],
}
const NodeRegistry: Record<string, NodeDefine> = {
'output-node': {
name: '输出',
description: '定义输出变量',
component: OutputNode,
checkers: [inputVariableChecker],
},
'llm-node': {
export const NodeRegistry: NodeDefine[] = [
{
key: 'llm-node',
group: '普通节点',
name: '大模型',
description: '使用大模型对话',
component: LlmNode,
checkers: [inputVariableChecker],
},
'knowledge-node': {
{
key: 'knowledge-node',
group: '普通节点',
name: '知识库',
description: '',
component: KnowledgeNode,
checkers: [inputVariableChecker],
},
'code-node': {
{
key: 'code-node',
group: '普通节点',
name: '代码执行',
description: '执行自定义的处理代码',
component: CodeNode,
checkers: [inputVariableChecker],
},
'switch-node': {
name: '分支节点',
{
key: 'switch-node',
group: '逻辑节点',
name: '分支',
description: '根据不同的情况前往不同的分支',
component: SwitchNode,
checkers: [],
},
}
{
key: 'output-node',
group: '输出节点',
name: '输出',
description: '定义输出变量',
component: OutputNode,
checkers: [inputVariableChecker],
},
]
export default NodeRegistry
export const NodeRegistryMap: Record<string, NodeDefine> = NodeRegistry.reduce((a, v) => ({...a, [v.key]: v}), {})