in visualize_rules_graph.py [0:0]
def collect_edges(edges_toml_dict):
"""
Groups outgoing edges by rule/group.
All names are sanitized to replace empty spaces by `_`.
"""
for edge_toml in edges_toml_dict['edges']:
from_node = sanitize_name(edge_toml['from'])
to_nodes: 'list[str]' = edge_toml['to']
scope = sanitize_name(edge_toml['scope'])
for to_node in to_nodes:
to_node = sanitize_name(to_node)
edge = Edge(to=to_node, scope=scope)
if from_node in outgoing_edges_by_node:
outgoing_edges_by_node[from_node].append(edge)
else:
outgoing_edges_by_node[from_node] = [edge]