diff --git a/frontend/src/lib/components/flows/map/FlowCopilotButton.svelte b/frontend/src/lib/components/flows/map/FlowCopilotButton.svelte index 34d3791624..ffc39698e4 100644 --- a/frontend/src/lib/components/flows/map/FlowCopilotButton.svelte +++ b/frontend/src/lib/components/flows/map/FlowCopilotButton.svelte @@ -15,7 +15,7 @@ getContext('FlowCopilotContext') || {} -
+
diff --git a/frontend/src/lib/components/graph/FlowGraphV2.svelte b/frontend/src/lib/components/graph/FlowGraphV2.svelte index 5d31acc260..8ecc48e99c 100644 --- a/frontend/src/lib/components/graph/FlowGraphV2.svelte +++ b/frontend/src/lib/components/graph/FlowGraphV2.svelte @@ -37,7 +37,7 @@ import { Alert, Drawer } from '../common' import Button from '../common/button/Button.svelte' import FlowYamlEditor from '../flows/header/FlowYamlEditor.svelte' - + import CopilotNode from './renderers/nodes/CopilotNode.svelte' export let success: boolean | undefined = undefined export let modules: FlowModule[] | undefined = [] export let failureModule: FlowModule | undefined = undefined @@ -223,7 +223,8 @@ branchOneStart: BranchOneStart, branchOneEnd: BranchAllEndNode, noBranch: NoBranchNode, - trigger: TriggersNode + trigger: TriggersNode, + copilot: CopilotNode } as any const edgeTypes = { diff --git a/frontend/src/lib/components/graph/graphBuilder.ts b/frontend/src/lib/components/graph/graphBuilder.ts index e5a05ac83d..a292ad5281 100644 --- a/frontend/src/lib/components/graph/graphBuilder.ts +++ b/frontend/src/lib/components/graph/graphBuilder.ts @@ -158,6 +158,23 @@ export default function graphBuilder( } } + const copilotNode: Node = { + id: 'Copilot', + position: { x: -1, y: -1 }, + type: 'copilot', + data: {} + } + nodes.push(copilotNode) + if (!!preprocessorModule) { + addEdge('Copilot', preprocessorModule.id, { + type: 'hiddenedge' + }) + } else { + addEdge('Copilot', 'Input', { + type: 'hiddenedge' + }) + } + if (extra.path) { const triggerNode: Node = { id: 'Trigger', @@ -173,16 +190,9 @@ export default function graphBuilder( } nodes.push(triggerNode) - - if (!!preprocessorModule) { - addEdge('Trigger', preprocessorModule.id, { - type: 'hiddenedge' - }) - } else { - addEdge('Trigger', 'Input', { - type: 'hiddenedge' - }) - } + addEdge('Trigger', 'Copilot', { + type: 'hiddenedge' + }) } const resultNode: Node = { diff --git a/frontend/src/lib/components/graph/renderers/nodes/CopilotNode.svelte b/frontend/src/lib/components/graph/renderers/nodes/CopilotNode.svelte new file mode 100644 index 0000000000..f5e0a60435 --- /dev/null +++ b/frontend/src/lib/components/graph/renderers/nodes/CopilotNode.svelte @@ -0,0 +1,11 @@ + + + +
+ +
+
diff --git a/frontend/src/lib/components/graph/renderers/nodes/InputNode.svelte b/frontend/src/lib/components/graph/renderers/nodes/InputNode.svelte index 0cacdbfc47..25a2d5c21b 100644 --- a/frontend/src/lib/components/graph/renderers/nodes/InputNode.svelte +++ b/frontend/src/lib/components/graph/renderers/nodes/InputNode.svelte @@ -8,7 +8,6 @@ import { getContext } from 'svelte' import type { Writable } from 'svelte/store' import { twMerge } from 'tailwind-merge' - import FlowCopilotButton from '$lib/components/flows/map/FlowCopilotButton.svelte' export let data: { insertable: boolean @@ -24,9 +23,6 @@ - {#if data.insertable && !data.disableAi && !data.hasPreprocessor} - - {/if} {#if data.insertable && !data.hasPreprocessor}