data = {
const {nodes, links} = graph1;
const groupById = new Map;
const nodeById = new Map(nodes.map(node => [node.id, node]));
for (const node of nodes) {
let group = groupById.get(node.group);
if (!group) groupById.set(node.group, group = {id: node.group, children: []});
group.children.push(node);
node.targets = [];
node.commonMetrics = [];
}
for (const {source: sourceId, target: targetId, common_metric_name: commonMetrics} of links) {
nodeById.get(sourceId).targets.push(targetId);
nodeById.get(sourceId).commonMetrics = commonMetrics
nodeById.get(targetId).commonMetrics = commonMetrics
}
return {children: [...groupById.values()]};
}