IK
Interview Knowledge Book
Topics
Practice
Examples
Playground
RU
browser
Affected monorepo graph
Walk a dependency graph to find packages affected by a shared package change.
index.js
const dependents = new Map([ ['shared', ['ui']], ['ui', ['app']], ]); function affected(pkg, seen = new Set()) { for (const next of dependents.get(pkg) ?? []) { if (!seen.has(next)) { seen.add(next); affected(next, seen); } } return [...seen]; } console.log('affected', affected('shared').join(','));
Run
Stop
Reset