1- import { CancellationToken , Nullish } from "builder-util-runtime"
1+ import { Nullish } from "builder-util-runtime"
22import { TmpDir } from "temp-file"
33import { NpmNodeModulesCollector } from "./npmNodeModulesCollector"
44import { detectPackageManager , getPackageManagerCommand , PM } from "./packageManager"
@@ -8,9 +8,10 @@ import { YarnBerryNodeModulesCollector } from "./yarnBerryNodeModulesCollector"
88import { YarnNodeModulesCollector } from "./yarnNodeModulesCollector"
99import { BunNodeModulesCollector } from "./bunNodeModulesCollector"
1010import { Lazy } from "lazy-val"
11- import { spawn , log , exists } from "builder-util"
11+ import { spawn , log , exists , isEmptyOrSpaces } from "builder-util"
1212import * as fs from "fs-extra"
1313import * as path from "path"
14+ import { TraversalNodeModulesCollector } from "./traversalNodeModulesCollector"
1415
1516export { getPackageManagerCommand , PM }
1617
@@ -26,6 +27,8 @@ export function getCollectorByPackageManager(pm: PM, rootDir: string, tempDirMan
2627 return new BunNodeModulesCollector ( rootDir , tempDirManager )
2728 case PM . NPM :
2829 return new NpmNodeModulesCollector ( rootDir , tempDirManager )
30+ case PM . TRAVERSAL :
31+ return new TraversalNodeModulesCollector ( rootDir , tempDirManager )
2932 }
3033}
3134
@@ -34,22 +37,20 @@ export function getNodeModules(
3437 {
3538 rootDir,
3639 tempDirManager,
37- cancellationToken,
3840 packageName,
3941 } : {
4042 rootDir : string
4143 tempDirManager : TmpDir
42- cancellationToken : CancellationToken
4344 packageName : string
4445 }
4546) : Promise < NodeModuleInfo [ ] > {
4647 const collector = getCollectorByPackageManager ( pm , rootDir , tempDirManager )
47- return collector . getNodeModules ( { cancellationToken , packageName } )
48+ return collector . getNodeModules ( { packageName } )
4849}
4950
5051export const determinePackageManagerEnv = ( { projectDir, appDir, workspaceRoot } : { projectDir : string ; appDir : string ; workspaceRoot : string | Nullish } ) =>
5152 new Lazy ( async ( ) => {
52- const availableDirs = [ projectDir , appDir , workspaceRoot ] . filter ( ( it ) : it is string => it != null )
53+ const availableDirs = [ workspaceRoot , projectDir , appDir ] . filter ( ( it ) : it is string => ! isEmptyOrSpaces ( it ) )
5354 const pm = await detectPackageManager ( availableDirs )
5455 const root = await findWorkspaceRoot ( pm . pm , projectDir )
5556 if ( root != null ) {
0 commit comments