refactor: nodes as builder pattern
This commit is contained in:
26
frontend/src/components/nodes/render/descriptor.tsx
Normal file
26
frontend/src/components/nodes/render/descriptor.tsx
Normal file
@@ -0,0 +1,26 @@
|
||||
import React from 'react'
|
||||
import { Sparkles } from 'lucide-react'
|
||||
import { createNodeTypeBuilder } from '@/lib/nodeTypeBuilder'
|
||||
import { NODE_HELP } from '@/lib/nodeHelp'
|
||||
import type { NodeTypeDescriptor } from '@/lib/nodeRegistry'
|
||||
import RenderingNode from './RenderingNode'
|
||||
|
||||
const ICON_CLASS = 'mr-2 h-4 w-4'
|
||||
|
||||
export function getRenderNodeDescriptor(): NodeTypeDescriptor {
|
||||
return createNodeTypeBuilder(
|
||||
'render',
|
||||
RenderingNode,
|
||||
{ width: 384, height: 320 },
|
||||
{ viewportWidth: 1200, viewportHeight: 800 }
|
||||
)
|
||||
.idPrefix('rnd_')
|
||||
.withInputOutput(true, false)
|
||||
.classification('pneuma')
|
||||
.allowedSourceTypes(['config', 'agent'])
|
||||
.help(NODE_HELP.render)
|
||||
.menu('Renderer', <Sparkles className={ICON_CLASS} />)
|
||||
.connectionLabel('rendering')
|
||||
.withFullscreen()
|
||||
.build()
|
||||
}
|
||||
Reference in New Issue
Block a user