MCPcopy Create free account
hub / github.com/FlowiseAI/Flowise / syncNodes

Function syncNodes

packages/ui/src/views/canvas/index.jsx:326–347  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

324 )
325
326 const syncNodes = () => {
327 const componentNodes = canvas.componentNodes
328
329 const cloneNodes = cloneDeep(nodes)
330 const cloneEdges = cloneDeep(edges)
331 let toBeRemovedEdges = []
332
333 for (let i = 0; i < cloneNodes.length; i++) {
334 const node = cloneNodes[i]
335 const componentNode = componentNodes.find((cn) => cn.name === node.data.name)
336 if (componentNode && componentNode.version > node.data.version) {
337 const clonedComponentNode = cloneDeep(componentNode)
338 cloneNodes[i].data = updateOutdatedNodeData(clonedComponentNode, node.data)
339 toBeRemovedEdges.push(...updateOutdatedNodeEdge(cloneNodes[i].data, cloneEdges))
340 }
341 }
342
343 setNodes(cloneNodes)
344 setEdges(cloneEdges.filter((edge) => !toBeRemovedEdges.includes(edge)))
345 setDirty()
346 setIsSyncNodesButtonEnabled(false)
347 }
348
349 const saveChatflowSuccess = () => {
350 dispatch({ type: REMOVE_DIRTY })

Callers 1

CanvasFunction · 0.70

Calls 3

updateOutdatedNodeDataFunction · 0.90
updateOutdatedNodeEdgeFunction · 0.90
setDirtyFunction · 0.70

Tested by

no test coverage detected