INNER CODE UNIT · TypeScript
getPackageManagerRequestFromCli
nodejs/corepack · sources/main.ts:24
function getPackageManagerRequestFromCli(parameter: string | undefined, engine: Engine): PackageManagerRequest | null {
if (!parameter)
return null;
const match = parameter.match(/^([^@]*)(?:@(.*))?$/);
if (!match)
return null;
const [, binaryName, binaryVersion] = match;
const packageManager = engine.getPackageManagerFor(binaryName)!;
if (packageManager == null && binaryVersion == null) return null;
return {
packageManager,
binaryName,
binaryVersion: binaryVersion || null,
};