@gravity-ui/graph
Version:
Modern graph editor component
27 lines (26 loc) • 740 B
JavaScript
const convertElkEdges = (edges) => {
return edges.reduce((acc, edge) => {
if ("sections" in edge) {
acc[edge.id] = {
points: [edge.sections[0].startPoint, ...(edge.sections[0].bendPoints || []), edge.sections[0].endPoint],
labels: edge.labels,
};
}
return acc;
}, {});
};
const convertElkChildren = (childrens) => {
return childrens.reduce((acc, children) => {
acc[children.id] = {
x: children.x,
y: children.y,
};
return acc;
}, {});
};
export const elkConverter = (node) => {
return {
edges: convertElkEdges(node.edges),
blocks: convertElkChildren(node.children),
};
};