1"use strict"; 2var __importDefault = (this && this.__importDefault) || function (mod) { 3 return (mod && mod.__esModule) ? mod : { "default": mod }; 4}; 5Object.defineProperty(exports, "__esModule", { value: true }); 6exports.PnpmPackageManager = void 0; 7const BasePackageManager_1 = require("./BasePackageManager"); 8const env_1 = __importDefault(require("../utils/env")); 9const nodeWorkspaces_1 = require("../utils/nodeWorkspaces"); 10class PnpmPackageManager extends BasePackageManager_1.BasePackageManager { 11 name = 'pnpm'; 12 bin = 'pnpm'; 13 lockFile = nodeWorkspaces_1.PNPM_LOCK_FILE; 14 workspaceRoot() { 15 const root = (0, nodeWorkspaces_1.findPnpmWorkspaceRoot)(this.ensureCwdDefined('workspaceRoot')); 16 if (root) { 17 return new PnpmPackageManager({ 18 ...this.options, 19 silent: this.silent, 20 log: this.log, 21 cwd: root, 22 }); 23 } 24 return null; 25 } 26 installAsync(namesOrFlags = []) { 27 if (env_1.default.CI && !namesOrFlags.join(' ').includes('frozen-lockfile')) { 28 namesOrFlags.unshift('--no-frozen-lockfile'); 29 } 30 return this.runAsync(['install', ...namesOrFlags]); 31 } 32 addAsync(namesOrFlags = []) { 33 if (!namesOrFlags.length) { 34 return this.installAsync(); 35 } 36 return this.runAsync(['add', ...namesOrFlags]); 37 } 38 addDevAsync(namesOrFlags = []) { 39 if (!namesOrFlags.length) { 40 return this.installAsync(); 41 } 42 return this.runAsync(['add', '--save-dev', ...namesOrFlags]); 43 } 44 addGlobalAsync(namesOrFlags = []) { 45 if (!namesOrFlags.length) { 46 return this.installAsync(); 47 } 48 return this.runAsync(['add', '--global', ...namesOrFlags]); 49 } 50 removeAsync(namesOrFlags) { 51 return this.runAsync(['remove', ...namesOrFlags]); 52 } 53 removeDevAsync(namesOrFlags) { 54 return this.runAsync(['remove', '--save-dev', ...namesOrFlags]); 55 } 56 removeGlobalAsync(namesOrFlags) { 57 return this.runAsync(['remove', '--global', ...namesOrFlags]); 58 } 59} 60exports.PnpmPackageManager = PnpmPackageManager; 61//# sourceMappingURL=PnpmPackageManager.js.map