npm-reinstall
Version:
Just reinstall npm package.
101 lines (100 loc) • 2.82 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extractPackageInfo_1 = __importDefault(require("./extractPackageInfo"));
/**
* Create installation arguments.
*
* @export
* @param {Command} command Command
* @param {Mode} mode Installation mode
* @param {string[]} packages Packages name
* @returns {string[]} Installation arguments
*/
function createInstallArgs(command, mode, packages) {
var args = [];
if (command === 'npm') {
args.push('install');
switch (mode) {
case 'GLOBAL':
args.push('-g');
break;
case 'SAVE':
args.push('-S');
break;
case 'SAVE_DEV':
args.push('-D');
break;
}
}
else if (command === 'yarn') {
args.push('add');
switch (mode) {
case 'GLOBAL':
args.unshift('global');
break;
case 'SAVE_DEV':
args.push('-D');
break;
}
}
else {
args.push('install');
switch (mode) {
case 'SAVE':
args.push('-P');
break;
case 'SAVE_DEV':
args.push('-D');
break;
}
}
args = args.concat(packages);
return args;
}
exports.createInstallArgs = createInstallArgs;
/**
* Create uninstallation arguments.
*
* @export
* @param {Command} command Command
* @param {Mode} mode Uninstallation mode
* @param {string[]} packages Packages name
* @returns {string[]} Uninstallation arguments
*/
function createUninstallArgs(command, mode, packages) {
// Don't include package version in uninstall args
packages = packages.map(function (packageName) {
var name = extractPackageInfo_1.default(packageName).name;
return name;
});
var args = [];
if (command === 'npm') {
args.push('uninstall');
switch (mode) {
case 'GLOBAL':
args.push('-g');
break;
case 'SAVE':
args.push('-S');
break;
case 'SAVE_DEV':
args.push('-D');
break;
}
}
else if (command === 'yarn') {
args.push('remove');
if (mode === 'GLOBAL') {
args.unshift('global');
}
}
else {
args.push('uninstall');
}
args = args.concat(packages);
return args;
}
exports.createUninstallArgs = createUninstallArgs;