Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
path: FilePath,
fs: FileSystem = nodeFS,
triedInstall: boolean = false
): Promise<[string, ?PackageJSON]> {
let basedir = dirname(path);
let key = basedir + ':' + name;
let resolved = cache.get(key);
if (!resolved) {
try {
resolved = await resolve(fs, name, {
basedir,
extensions: ['.js', '.json']
});
} catch (e) {
if (e.code === 'MODULE_NOT_FOUND' && !triedInstall) {
await installPackage(fs, [name], path);
return localResolve(name, path, fs, true);
}
throw e;
}
cache.set(key, resolved);
}
return resolved;
}