clone method
Create a deep copy of this graph.
Implementation
ProjectGraph clone() {
final clonedNodes = <String, DependencyNode>{};
for (final entry in _nodes.entries) {
final node = entry.value;
clonedNodes[entry.key] = DependencyNode(
id: node.id,
type: node.type,
widgetClassKey: node.widgetClassKey,
imports: Set<String>.from(node.imports),
importedBy: Set<String>.from(node.importedBy),
componentClassKeys: Set<String>.from(node.componentClassKeys),
navigationTargetPageKeys: Set<String>.from(
node.navigationTargetPageKeys,
),
sheetDialogComponentKeys: Set<String>.from(
node.sheetDialogComponentKeys,
),
);
}
return ProjectGraph(nodes: clonedNodes);
}