export function fromElk()

in visual/react/lib/util_elk.tsx [21:47]


export function fromElk(elkNode: ElkNode): { nodes: Node[], edges: Edge[] } {
    let nodes: Node[] = [];
    let edges: Edge[] = [];
    traverseElk(
        { elkNode },
        ({ elkNode, parentNode, zIndex = 0 }: traverseOption) => {
            if (elkNode.id !== rootID) {
                nodes.push({
                    id: elkNode.id,
                    data: { label: elkNode.labels && elkNode.labels[0].text },
                    position: { x: elkNode.x || 0, y: elkNode.y || 0 },
                    parentId: parentNode && parentNode.id !== rootID ? parentNode.id : undefined,
                    zIndex: zIndex,
                });
            }
            elkNode.edges && elkNode.edges.forEach((edge: ElkExtendedEdge) => {
                edges.push({
                    id: edge.id,
                    source: edge.sources[0],
                    target: edge.targets[0],
                    zIndex: zIndex + 1,
                });
            });
        },
    )
    return { nodes, edges }
}