@cliz/nrm
Version:
NPM Registry Manager
49 lines (48 loc) • 1.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const cli_1 = require("@cliz/cli");
const config_1 = require("../config");
const core = require("../core");
exports.default = (0, cli_1.defineSubCommand)(createCommand => {
return createCommand('Remove an exist registry')
.argument('[registry]', 'Registry name')
.option('-f, --force', 'Force remove')
.action(async ({ args }) => {
let name = args.registry;
const force = args.force;
if (!name) {
const _current = core.current();
const answers = await cli_1.inquirer
.prompt([
{
name: 'name',
type: 'list',
message: '请选择',
choices: config_1.default.registries.map(e => ({ name: `${e.name.padEnd(10)} ${e.description || '无'}`, value: e.name })),
default: _current,
loop: false,
validate: v => !!v,
},
]);
name = answers.name;
}
if (!core.has(name)) {
throw new Error(`registry(${name}) not found`);
}
if (!!force) {
return await core.remove(name);
}
const answers = await cli_1.inquirer
.prompt([
{
name: 'confirm',
type: 'confirm',
message: `确认删除 ${name}?`,
},
]);
if (answers.confirm === true) {
await core.remove(name);
}
});
});