1 | /**
|
2 | * Compute edges which does not refer to existing nodeIds
|
3 | *
|
4 | * @param {Array} edges
|
5 | * @param {Array} nodes
|
6 | * @param {Object} graph
|
7 | * @returns {Array} orphanEdgeIds
|
8 | */
|
9 |
|
10 | const getOrphanEdgeIds = (edges, nodes) => {
|
11 | var orphanEdgeIds = []
|
12 |
|
13 | const nodeIdsNotFound = (nodeId) => {
|
14 | return typeof nodes[nodeId] === 'undefined'
|
15 | }
|
16 |
|
17 | for (var edgeId in edges) {
|
18 | var edge = edges[edgeId]
|
19 |
|
20 | if (edge.filter(nodeIdsNotFound).length > 0) {
|
21 | orphanEdgeIds.push(edgeId)
|
22 | }
|
23 | }
|
24 |
|
25 | return orphanEdgeIds
|
26 | }
|
27 |
|
28 | module.exports = getOrphanEdgeIds
|