toJson method

Map<String, dynamic> toJson()

Implementation

Map<String, dynamic> toJson() {
  // Generate edges from node dependencies
  final edges = <Edge>[];
  for (final node in nodes) {
    for (final dep in node.dependencies) {
      edges.add(Edge(source: node.id, target: dep, type: 'imports'));
    }
  }

  return {
    'nodes': nodes.map((e) => e.toJson()).toList(),
    'edges': edges.map((e) => e.toJson()).toList(),
  };
}