18d3f3824SCedric van Putten"use strict";
28d3f3824SCedric van Puttenvar __importDefault = (this && this.__importDefault) || function (mod) {
38d3f3824SCedric van Putten    return (mod && mod.__esModule) ? mod : { "default": mod };
48d3f3824SCedric van Putten};
58d3f3824SCedric van PuttenObject.defineProperty(exports, "__esModule", { value: true });
68d3f3824SCedric van Puttenexports.PnpmPackageManager = void 0;
78a424bebSJames Ideconst BasePackageManager_1 = require("./BasePackageManager");
88d3f3824SCedric van Puttenconst env_1 = __importDefault(require("../utils/env"));
98d3f3824SCedric van Puttenconst nodeWorkspaces_1 = require("../utils/nodeWorkspaces");
108d3f3824SCedric van Puttenclass PnpmPackageManager extends BasePackageManager_1.BasePackageManager {
11*1a3a1db5SEvan Bacon    name = 'pnpm';
12*1a3a1db5SEvan Bacon    bin = 'pnpm';
13*1a3a1db5SEvan Bacon    lockFile = nodeWorkspaces_1.PNPM_LOCK_FILE;
148d3f3824SCedric van Putten    workspaceRoot() {
158d3f3824SCedric van Putten        const root = (0, nodeWorkspaces_1.findPnpmWorkspaceRoot)(this.ensureCwdDefined('workspaceRoot'));
168d3f3824SCedric van Putten        if (root) {
178d3f3824SCedric van Putten            return new PnpmPackageManager({
188d3f3824SCedric van Putten                ...this.options,
198d3f3824SCedric van Putten                silent: this.silent,
208d3f3824SCedric van Putten                log: this.log,
218d3f3824SCedric van Putten                cwd: root,
228d3f3824SCedric van Putten            });
238d3f3824SCedric van Putten        }
248d3f3824SCedric van Putten        return null;
258d3f3824SCedric van Putten    }
268d3f3824SCedric van Putten    installAsync(namesOrFlags = []) {
278d3f3824SCedric van Putten        if (env_1.default.CI && !namesOrFlags.join(' ').includes('frozen-lockfile')) {
288d3f3824SCedric van Putten            namesOrFlags.unshift('--no-frozen-lockfile');
298d3f3824SCedric van Putten        }
308d3f3824SCedric van Putten        return this.runAsync(['install', ...namesOrFlags]);
318d3f3824SCedric van Putten    }
328d3f3824SCedric van Putten    addAsync(namesOrFlags = []) {
338d3f3824SCedric van Putten        if (!namesOrFlags.length) {
348d3f3824SCedric van Putten            return this.installAsync();
358d3f3824SCedric van Putten        }
368d3f3824SCedric van Putten        return this.runAsync(['add', ...namesOrFlags]);
378d3f3824SCedric van Putten    }
388d3f3824SCedric van Putten    addDevAsync(namesOrFlags = []) {
398d3f3824SCedric van Putten        if (!namesOrFlags.length) {
408d3f3824SCedric van Putten            return this.installAsync();
418d3f3824SCedric van Putten        }
428d3f3824SCedric van Putten        return this.runAsync(['add', '--save-dev', ...namesOrFlags]);
438d3f3824SCedric van Putten    }
448d3f3824SCedric van Putten    addGlobalAsync(namesOrFlags = []) {
458d3f3824SCedric van Putten        if (!namesOrFlags.length) {
468d3f3824SCedric van Putten            return this.installAsync();
478d3f3824SCedric van Putten        }
488d3f3824SCedric van Putten        return this.runAsync(['add', '--global', ...namesOrFlags]);
498d3f3824SCedric van Putten    }
508d3f3824SCedric van Putten    removeAsync(namesOrFlags) {
518d3f3824SCedric van Putten        return this.runAsync(['remove', ...namesOrFlags]);
528d3f3824SCedric van Putten    }
538d3f3824SCedric van Putten    removeDevAsync(namesOrFlags) {
548d3f3824SCedric van Putten        return this.runAsync(['remove', '--save-dev', ...namesOrFlags]);
558d3f3824SCedric van Putten    }
568d3f3824SCedric van Putten    removeGlobalAsync(namesOrFlags) {
578d3f3824SCedric van Putten        return this.runAsync(['remove', '--global', ...namesOrFlags]);
588d3f3824SCedric van Putten    }
598d3f3824SCedric van Putten}
608d3f3824SCedric van Puttenexports.PnpmPackageManager = PnpmPackageManager;
618d3f3824SCedric van Putten//# sourceMappingURL=PnpmPackageManager.js.map