medusa-dev-cli
Version:
CLI helpers for contributors working on Medusa
43 lines • 1.78 kB
TypeScript
export type TraversePackagesDepsReturn = {
/**
* Lookup table to check dependants for given package.
* Used to determine which packages need to be published.
*/
depTree: any;
};
/**
* @typedef {Object} TraversePackagesDepsReturn
* @property {Object} depTree Lookup table to check dependants for given package.
* Used to determine which packages need to be published.
* @example
* ```
* {
* "medusa-cli": Set(["medusa"]),
* "medusa-telemetry": Set(["medusa", "medusa-cli"]),
* }
* ```
*/
/**
* Compile final list of packages to watch
* This will include packages explicitly defined packages and all their dependencies
* Also creates dependency graph that is used later to determine which packages
* would need to be published when their dependencies change
* @param {Object} $0
* @param {String} $0.root Path to root of medusa monorepo repository
* @param {String[]} $0.packages Initial array of packages to watch
* This can be extracted from project dependencies or explicitly set by `--packages` flag
* @param {String[]} $0.monoRepoPackages Array of packages in medusa monorepo
* @param {String[]} [$0.seenPackages] Array of packages that were already traversed.
* This makes sure dependencies are extracted one time for each package and avoid any
* infinite loops.
* @param {DepTree} [$0.depTree] Used internally to recursively construct dependency graph.
* @return {TraversePackagesDepsReturn}
*/
export function traversePackagesDeps({ packages, monoRepoPackages, seenPackages, depTree, packageNameToPath, }: {
root: string;
packages: string[];
monoRepoPackages: string[];
seenPackages?: string[] | undefined;
depTree?: any;
}): TraversePackagesDepsReturn;
//# sourceMappingURL=traverse-package-deps.d.ts.map