(nodes: Map<string, GraphNode>)
| 187 | * Groups nodes by their layer number |
| 188 | */ |
| 189 | export function groupByLayer(nodes: Map<string, GraphNode>): Map<number, GraphNode[]> { |
| 190 | const layers = new Map<number, GraphNode[]>() |
| 191 | |
| 192 | for (const node of nodes.values()) { |
| 193 | if (!layers.has(node.layer)) { |
| 194 | layers.set(node.layer, []) |
| 195 | } |
| 196 | layers.get(node.layer)!.push(node) |
| 197 | } |
| 198 | |
| 199 | return layers |
| 200 | } |
| 201 | |
| 202 | /** |
| 203 | * Resolves vertical overlaps between nodes in the same layer. |
no test coverage detected