mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-04-08 03:00:28 -04:00
Feat(Builder): Fix delete block is non-undoable (#7922)
* Feat(Builder): Fix delete block is non-undoable * prettier
This commit is contained in:
@@ -195,9 +195,19 @@ const FlowEditor: React.FC<{
|
||||
|
||||
// Remove all edges that were connected to deleted nodes
|
||||
nodeChanges
|
||||
.filter((change) => change.type == "remove")
|
||||
.filter((change) => change.type === "remove")
|
||||
.forEach((deletedNode) => {
|
||||
const nodeID = deletedNode.id;
|
||||
const deletedNodeData = nodes.find((node) => node.id === nodeID);
|
||||
|
||||
if (deletedNodeData) {
|
||||
history.push({
|
||||
type: "DELETE_NODE",
|
||||
payload: { node: deletedNodeData },
|
||||
undo: () => addNodes(deletedNodeData),
|
||||
redo: () => deleteElements({ nodes: [{ id: nodeID }] }),
|
||||
});
|
||||
}
|
||||
|
||||
const connectedEdges = edges.filter((edge) =>
|
||||
[edge.source, edge.target].includes(nodeID),
|
||||
@@ -207,7 +217,7 @@ const FlowEditor: React.FC<{
|
||||
});
|
||||
});
|
||||
},
|
||||
[deleteElements, setNodes],
|
||||
[deleteElements, setNodes, nodes, edges, addNodes],
|
||||
);
|
||||
|
||||
const formatEdgeID = useCallback((conn: Link | Connection): string => {
|
||||
|
||||
Reference in New Issue
Block a user