(parameter: string | undefined, engine: Engine)
| 19 | export type Context = BaseContext & CustomContext; |
| 20 | |
| 21 | function getPackageManagerRequestFromCli(parameter: string | undefined, engine: Engine): PackageManagerRequest | null { |
| 22 | if (!parameter) |
| 23 | return null; |
| 24 | |
| 25 | const match = parameter.match(/^([^@]*)(?:@(.*))?$/); |
| 26 | if (!match) |
| 27 | return null; |
| 28 | |
| 29 | const [, binaryName, binaryVersion] = match; |
| 30 | const packageManager = engine.getPackageManagerFor(binaryName)!; |
| 31 | |
| 32 | if (packageManager == null && binaryVersion == null) return null; |
| 33 | |
| 34 | return { |
| 35 | packageManager, |
| 36 | binaryName, |
| 37 | binaryVersion: binaryVersion || null, |
| 38 | }; |
| 39 | } |
| 40 | |
| 41 | function isUsageError(error: any): error is UsageError { |
| 42 | return error?.name === `UsageError`; |
no test coverage detected
searching dependent graphs…