UNPKG

@rnm/pm

Version:

Unified Package Manager for Node.js

11 lines 2.33 kB
import { detect, run } from "../base.js"; export async function executeShim(pm, args, execute) { // Corepack has transparent configs: https://github.com/nodejs/corepack/blob/main/config.json. // That means we can use npx/pnpx in any project, which is confused. So we disallow it. const result = await detect(); if (result && result.name !== pm) { throw new Error(`Current project should use ${result.name} as package manager.`); } return await run({ name: pm, ...(result?.version && { version: result.version }) }, args, execute); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0ZS1zaGltLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NoaW1zL2V4ZWN1dGUtc2hpbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBb0IsTUFBTSxZQUFZLENBQUM7QUFFM0QsTUFBTSxDQUFDLEtBQUssVUFBVSxXQUFXLENBQy9CLEVBQWUsRUFDZixJQUFjLEVBQ2QsT0FBaUI7SUFFakIsOEZBQThGO0lBQzlGLHVGQUF1RjtJQUN2RixNQUFNLE1BQU0sR0FBRyxNQUFNLE1BQU0sRUFBRSxDQUFDO0lBQzlCLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDakMsTUFBTSxJQUFJLEtBQUssQ0FDYiw4QkFBOEIsTUFBTSxDQUFDLElBQUksc0JBQXNCLENBQ2hFLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxNQUFNLEdBQUcsQ0FDZCxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFDakUsSUFBSSxFQUNKLE9BQU8sQ0FDUixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRldGVjdCwgcnVuLCB0eXBlIFN1cHBvcnRlZFBtIH0gZnJvbSBcIi4uL2Jhc2UudHNcIjtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4ZWN1dGVTaGltKFxuICBwbTogU3VwcG9ydGVkUG0sXG4gIGFyZ3M6IHN0cmluZ1tdLFxuICBleGVjdXRlPzogYm9vbGVhbixcbikge1xuICAvLyBDb3JlcGFjayBoYXMgdHJhbnNwYXJlbnQgY29uZmlnczogaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9jb3JlcGFjay9ibG9iL21haW4vY29uZmlnLmpzb24uXG4gIC8vIFRoYXQgbWVhbnMgd2UgY2FuIHVzZSBucHgvcG5weCBpbiBhbnkgcHJvamVjdCwgd2hpY2ggaXMgY29uZnVzZWQuIFNvIHdlIGRpc2FsbG93IGl0LlxuICBjb25zdCByZXN1bHQgPSBhd2FpdCBkZXRlY3QoKTtcbiAgaWYgKHJlc3VsdCAmJiByZXN1bHQubmFtZSAhPT0gcG0pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgQ3VycmVudCBwcm9qZWN0IHNob3VsZCB1c2UgJHtyZXN1bHQubmFtZX0gYXMgcGFja2FnZSBtYW5hZ2VyLmAsXG4gICAgKTtcbiAgfVxuICByZXR1cm4gYXdhaXQgcnVuKFxuICAgIHsgbmFtZTogcG0sIC4uLihyZXN1bHQ/LnZlcnNpb24gJiYgeyB2ZXJzaW9uOiByZXN1bHQudmVyc2lvbiB9KSB9LFxuICAgIGFyZ3MsXG4gICAgZXhlY3V0ZSxcbiAgKTtcbn1cbiJdfQ==