(workflow: { graph: { edges: BackendEdge[] } })
| 229 | * Preserves edge type to maintain curved arrow appearance |
| 230 | */ |
| 231 | export function deserializeEdges(workflow: { graph: { edges: BackendEdge[] } }): ReactFlowEdge[] { |
| 232 | const edges = workflow.graph.edges; |
| 233 | return edges.map((edge) => { |
| 234 | const normalizedSourceHandle = |
| 235 | edge.sourceHandle === 'tool-export' ? 'tools' : edge.sourceHandle; |
| 236 | // Use saved type if available, otherwise default to 'default' for bezier curves (curved arrows) |
| 237 | return { |
| 238 | id: edge.id, |
| 239 | source: edge.source, |
| 240 | target: edge.target, |
| 241 | sourceHandle: normalizedSourceHandle, |
| 242 | targetHandle: edge.targetHandle, |
| 243 | type: (edge.type || 'default') as 'default' | 'smoothstep' | 'step' | 'straight' | 'bezier', |
| 244 | animated: false, // Default for ReactFlow, backend doesn't store this |
| 245 | markerEnd: { |
| 246 | type: MarkerType.Arrow, |
| 247 | width: 22, |
| 248 | height: 22, |
| 249 | }, |
| 250 | }; |
| 251 | }); |
| 252 | } |
no outgoing calls
no test coverage detected