@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
39 lines • 5.07 kB
JavaScript
import { DefaultLibraryAuthor, } from '@qodalis/cli-core';
export class CliUnAliasCommandProcessor {
constructor() {
this.command = 'unalias';
this.author = DefaultLibraryAuthor;
this.description = 'Remove aliases for commands';
this.valueRequired = true;
this.stateConfiguration = {
initialState: {},
storeName: 'aliases',
};
this.metadata = {
icon: '🔥',
module: 'misc',
sealed: true,
};
}
async processCommand(command, context) {
const { writer } = context;
const aliasToRemove = command.value;
const { aliases } = context.state.getState();
if (!aliases[aliasToRemove]) {
writer.writeError(`Alias ${aliasToRemove} not found`);
context.process.exit(-1);
return;
}
const updated = {};
Object.keys(aliases)
.filter((alias) => alias !== aliasToRemove)
.forEach((alias) => {
updated[alias] = aliases[alias];
});
context.state.updateState({
aliases: updated,
});
await context.state.persist();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLXVuYWxpYXMtY29tbWFuZC1wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGkvc3JjL2xpYi9jbGkvcHJvY2Vzc29ycy9taXNjL2NsaS11bmFsaWFzLWNvbW1hbmQtcHJvY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJSCxvQkFBb0IsR0FHdkIsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixNQUFNLE9BQU8sMEJBQTBCO0lBQXZDO1FBQ0ksWUFBTyxHQUFHLFNBQVMsQ0FBQztRQUVwQixXQUFNLEdBQUcsb0JBQW9CLENBQUM7UUFFOUIsZ0JBQVcsR0FBRyw2QkFBNkIsQ0FBQztRQUU1QyxrQkFBYSxHQUF5QixJQUFJLENBQUM7UUFFM0MsdUJBQWtCLEdBQXVDO1lBQ3JELFlBQVksRUFBRSxFQUFFO1lBQ2hCLFNBQVMsRUFBRSxTQUFTO1NBQ3ZCLENBQUM7UUFFRixhQUFRLEdBQXNDO1lBQzFDLElBQUksRUFBRSxJQUFJO1lBQ1YsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsSUFBSTtTQUNmLENBQUM7SUFnQ04sQ0FBQztJQTlCVSxLQUFLLENBQUMsY0FBYyxDQUN2QixPQUEwQixFQUMxQixPQUE2QjtRQUU3QixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRTNCLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxLQUFNLENBQUM7UUFFckMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUN6QixNQUFNLENBQUMsVUFBVSxDQUFDLFNBQVMsYUFBYSxZQUFZLENBQUMsQ0FBQztZQUN0RCxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLE9BQU87U0FDVjtRQUVELE1BQU0sT0FBTyxHQUF3QixFQUFFLENBQUM7UUFFeEMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDZixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxhQUFhLENBQUM7YUFDMUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO1FBRVAsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7WUFDdEIsT0FBTyxFQUFFLE9BQU87U0FDbkIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2xDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgQ2xpUHJvY2Vzc29yTWV0YWRhdGEsXG4gICAgQ2xpU3RhdGVDb25maWd1cmF0aW9uLFxuICAgIERlZmF1bHRMaWJyYXJ5QXV0aG9yLFxuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yLFxuICAgIElDbGlFeGVjdXRpb25Db250ZXh0LFxufSBmcm9tICdAcW9kYWxpcy9jbGktY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBDbGlVbkFsaWFzQ29tbWFuZFByb2Nlc3NvciBpbXBsZW1lbnRzIElDbGlDb21tYW5kUHJvY2Vzc29yIHtcbiAgICBjb21tYW5kID0gJ3VuYWxpYXMnO1xuXG4gICAgYXV0aG9yID0gRGVmYXVsdExpYnJhcnlBdXRob3I7XG5cbiAgICBkZXNjcmlwdGlvbiA9ICdSZW1vdmUgYWxpYXNlcyBmb3IgY29tbWFuZHMnO1xuXG4gICAgdmFsdWVSZXF1aXJlZD86IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB0cnVlO1xuXG4gICAgc3RhdGVDb25maWd1cmF0aW9uPzogQ2xpU3RhdGVDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkID0ge1xuICAgICAgICBpbml0aWFsU3RhdGU6IHt9LFxuICAgICAgICBzdG9yZU5hbWU6ICdhbGlhc2VzJyxcbiAgICB9O1xuXG4gICAgbWV0YWRhdGE/OiBDbGlQcm9jZXNzb3JNZXRhZGF0YSB8IHVuZGVmaW5lZCA9IHtcbiAgICAgICAgaWNvbjogJ/CflKUnLFxuICAgICAgICBtb2R1bGU6ICdtaXNjJyxcbiAgICAgICAgc2VhbGVkOiB0cnVlLFxuICAgIH07XG5cbiAgICBwdWJsaWMgYXN5bmMgcHJvY2Vzc0NvbW1hbmQoXG4gICAgICAgIGNvbW1hbmQ6IENsaVByb2Nlc3NDb21tYW5kLFxuICAgICAgICBjb250ZXh0OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCxcbiAgICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyB3cml0ZXIgfSA9IGNvbnRleHQ7XG5cbiAgICAgICAgY29uc3QgYWxpYXNUb1JlbW92ZSA9IGNvbW1hbmQudmFsdWUhO1xuXG4gICAgICAgIGNvbnN0IHsgYWxpYXNlcyB9ID0gY29udGV4dC5zdGF0ZS5nZXRTdGF0ZSgpO1xuXG4gICAgICAgIGlmICghYWxpYXNlc1thbGlhc1RvUmVtb3ZlXSkge1xuICAgICAgICAgICAgd3JpdGVyLndyaXRlRXJyb3IoYEFsaWFzICR7YWxpYXNUb1JlbW92ZX0gbm90IGZvdW5kYCk7XG4gICAgICAgICAgICBjb250ZXh0LnByb2Nlc3MuZXhpdCgtMSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB1cGRhdGVkOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG5cbiAgICAgICAgT2JqZWN0LmtleXMoYWxpYXNlcylcbiAgICAgICAgICAgIC5maWx0ZXIoKGFsaWFzKSA9PiBhbGlhcyAhPT0gYWxpYXNUb1JlbW92ZSlcbiAgICAgICAgICAgIC5mb3JFYWNoKChhbGlhcykgPT4ge1xuICAgICAgICAgICAgICAgIHVwZGF0ZWRbYWxpYXNdID0gYWxpYXNlc1thbGlhc107XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBjb250ZXh0LnN0YXRlLnVwZGF0ZVN0YXRlKHtcbiAgICAgICAgICAgIGFsaWFzZXM6IHVwZGF0ZWQsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGF3YWl0IGNvbnRleHQuc3RhdGUucGVyc2lzdCgpO1xuICAgIH1cbn1cbiJdfQ==