Skip to content

Commit 8d0c09f

Browse files
authored
fix(core): nesting npm lock file deps should support multi nests (#14949)
1 parent 41a8040 commit 8d0c09f

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

packages/nx/src/lock-file/npm-parser.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -496,9 +496,9 @@ function nestMappedPackages(
496496
}
497497

498498
nestedNodes.forEach((node) => {
499-
if (invertedGraph.dependencies[node.name].length === 1) {
500-
const targetName = invertedGraph.dependencies[node.name][0].target;
501-
const targetNode = invertedGraph.externalNodes[targetName];
499+
let unresolvedParents = invertedGraph.dependencies[node.name].length;
500+
invertedGraph.dependencies[node.name].forEach(({ target }) => {
501+
const targetNode = invertedGraph.externalNodes[target];
502502

503503
if (visitedNodes.has(targetNode)) {
504504
visitedNodes.get(targetNode).forEach((path) => {
@@ -518,8 +518,11 @@ function nestMappedPackages(
518518
}
519519
visitedPaths.add(mappedPackage.path);
520520
});
521-
nestedNodes.delete(node);
521+
unresolvedParents--;
522522
}
523+
});
524+
if (!unresolvedParents) {
525+
nestedNodes.delete(node);
523526
}
524527
});
525528

0 commit comments

Comments
 (0)