@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
68 lines • 8.23 kB
JavaScript
import { Inject, Injectable } from '@angular/core';
import { CliIcon, } from '@qodalis/cli-core';
import { DefaultLibraryAuthor } from '@qodalis/cli-core';
import { ICliUsersStoreService_TOKEN } from '../../tokens';
import { firstValueFrom } from 'rxjs';
import * as i0 from "@angular/core";
export class CliListUsersCommandProcessor {
constructor(usersStore) {
this.usersStore = usersStore;
this.command = 'listusers';
this.description = 'List all users';
this.author = DefaultLibraryAuthor;
this.metadata = {
sealed: true,
module: 'users',
icon: CliIcon.User,
};
this.stateConfiguration = {
initialState: {},
storeName: 'users',
};
this.parameters = [
{
name: 'query',
description: 'The query to filter the users',
type: 'string',
required: false,
},
{
name: 'skip',
description: 'The number of users to skip',
type: 'number',
required: false,
},
{
name: 'take',
description: 'The maximum number of users to return',
type: 'number',
required: false,
},
];
}
async processCommand(command, { writer }) {
const users = await firstValueFrom(this.usersStore.getUsers({
query: command.args['query'],
skip: command.args['skip'],
take: command.args['take'],
}));
writer.writeln('Users:');
writer.writeObjectsAsTable(users);
}
writeDescription({ writer }) {
writer.writeln(this.description);
writer.writeln('Usage: listusers');
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliListUsersCommandProcessor, deps: [{ token: ICliUsersStoreService_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliListUsersCommandProcessor, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliListUsersCommandProcessor, decorators: [{
type: Injectable,
args: [{
providedIn: 'root',
}]
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [ICliUsersStoreService_TOKEN]
}] }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLWxpc3QtdXNlcnMtY29tbWFuZC1wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGkvc3JjL2xpYi9jbGkvcHJvY2Vzc29ycy91c2Vycy9jbGktbGlzdC11c2Vycy1jb21tYW5kLXByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQ0gsT0FBTyxHQVFWLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3RDLE1BQU0sT0FBTyw0QkFBNEI7SUF1Q3JDLFlBRXFCLFVBQWlDO1FBQWpDLGVBQVUsR0FBVixVQUFVLENBQXVCO1FBeEN0RCxZQUFPLEdBQUcsV0FBVyxDQUFDO1FBRXRCLGdCQUFXLEdBQXdCLGdCQUFnQixDQUFDO1FBRXBELFdBQU0sR0FBRyxvQkFBb0IsQ0FBQztRQUU5QixhQUFRLEdBQXNDO1lBQzFDLE1BQU0sRUFBRSxJQUFJO1lBQ1osTUFBTSxFQUFFLE9BQU87WUFDZixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7U0FDckIsQ0FBQztRQUVGLHVCQUFrQixHQUF1QztZQUNyRCxZQUFZLEVBQUUsRUFBRTtZQUNoQixTQUFTLEVBQUUsT0FBTztTQUNyQixDQUFDO1FBRUYsZUFBVSxHQUFrRDtZQUN4RDtnQkFDSSxJQUFJLEVBQUUsT0FBTztnQkFDYixXQUFXLEVBQUUsK0JBQStCO2dCQUM1QyxJQUFJLEVBQUUsUUFBUTtnQkFDZCxRQUFRLEVBQUUsS0FBSzthQUNsQjtZQUNEO2dCQUNJLElBQUksRUFBRSxNQUFNO2dCQUNaLFdBQVcsRUFBRSw2QkFBNkI7Z0JBQzFDLElBQUksRUFBRSxRQUFRO2dCQUNkLFFBQVEsRUFBRSxLQUFLO2FBQ2xCO1lBQ0Q7Z0JBQ0ksSUFBSSxFQUFFLE1BQU07Z0JBQ1osV0FBVyxFQUFFLHVDQUF1QztnQkFDcEQsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsUUFBUSxFQUFFLEtBQUs7YUFDbEI7U0FDSixDQUFDO0lBS0MsQ0FBQztJQUVKLEtBQUssQ0FBQyxjQUFjLENBQ2hCLE9BQTBCLEVBQzFCLEVBQUUsTUFBTSxFQUF3QjtRQUVoQyxNQUFNLEtBQUssR0FBRyxNQUFNLGNBQWMsQ0FDOUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDckIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzVCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMxQixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDN0IsQ0FBQyxDQUNMLENBQUM7UUFFRixNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLEVBQXdCO1FBQzdDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVksQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN2QyxDQUFDOytHQS9EUSw0QkFBNEIsa0JBd0N6QiwyQkFBMkI7bUhBeEM5Qiw0QkFBNEIsY0FGekIsTUFBTTs7NEZBRVQsNEJBQTRCO2tCQUh4QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBeUNRLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENsaUljb24sXG4gICAgQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgQ2xpUHJvY2Vzc29yTWV0YWRhdGEsXG4gICAgQ2xpU3RhdGVDb25maWd1cmF0aW9uLFxuICAgIElDbGlDb21tYW5kUGFyYW1ldGVyRGVzY3JpcHRvcixcbiAgICBJQ2xpQ29tbWFuZFByb2Nlc3NvcixcbiAgICBJQ2xpRXhlY3V0aW9uQ29udGV4dCxcbiAgICBJQ2xpVXNlcnNTdG9yZVNlcnZpY2UsXG59IGZyb20gJ0Bxb2RhbGlzL2NsaS1jb3JlJztcbmltcG9ydCB7IERlZmF1bHRMaWJyYXJ5QXV0aG9yIH0gZnJvbSAnQHFvZGFsaXMvY2xpLWNvcmUnO1xuaW1wb3J0IHsgSUNsaVVzZXJzU3RvcmVTZXJ2aWNlX1RPS0VOIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENsaUxpc3RVc2Vyc0NvbW1hbmRQcm9jZXNzb3IgaW1wbGVtZW50cyBJQ2xpQ29tbWFuZFByb2Nlc3NvciB7XG4gICAgY29tbWFuZCA9ICdsaXN0dXNlcnMnO1xuXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCB1bmRlZmluZWQgPSAnTGlzdCBhbGwgdXNlcnMnO1xuXG4gICAgYXV0aG9yID0gRGVmYXVsdExpYnJhcnlBdXRob3I7XG5cbiAgICBtZXRhZGF0YT86IENsaVByb2Nlc3Nvck1ldGFkYXRhIHwgdW5kZWZpbmVkID0ge1xuICAgICAgICBzZWFsZWQ6IHRydWUsXG4gICAgICAgIG1vZHVsZTogJ3VzZXJzJyxcbiAgICAgICAgaWNvbjogQ2xpSWNvbi5Vc2VyLFxuICAgIH07XG5cbiAgICBzdGF0ZUNvbmZpZ3VyYXRpb24/OiBDbGlTdGF0ZUNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQgPSB7XG4gICAgICAgIGluaXRpYWxTdGF0ZToge30sXG4gICAgICAgIHN0b3JlTmFtZTogJ3VzZXJzJyxcbiAgICB9O1xuXG4gICAgcGFyYW1ldGVycz86IElDbGlDb21tYW5kUGFyYW1ldGVyRGVzY3JpcHRvcltdIHwgdW5kZWZpbmVkID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncXVlcnknLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgcXVlcnkgdG8gZmlsdGVyIHRoZSB1c2VycycsXG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3NraXAnLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgbnVtYmVyIG9mIHVzZXJzIHRvIHNraXAnLFxuICAgICAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICd0YWtlJyxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIG1heGltdW0gbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybicsXG4gICAgICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICBdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoSUNsaVVzZXJzU3RvcmVTZXJ2aWNlX1RPS0VOKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJzU3RvcmU6IElDbGlVc2Vyc1N0b3JlU2VydmljZSxcbiAgICApIHt9XG5cbiAgICBhc3luYyBwcm9jZXNzQ29tbWFuZChcbiAgICAgICAgY29tbWFuZDogQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgICAgIHsgd3JpdGVyIH06IElDbGlFeGVjdXRpb25Db250ZXh0LFxuICAgICk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB1c2VycyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAgICAgdGhpcy51c2Vyc1N0b3JlLmdldFVzZXJzKHtcbiAgICAgICAgICAgICAgICBxdWVyeTogY29tbWFuZC5hcmdzWydxdWVyeSddLFxuICAgICAgICAgICAgICAgIHNraXA6IGNvbW1hbmQuYXJnc1snc2tpcCddLFxuICAgICAgICAgICAgICAgIHRha2U6IGNvbW1hbmQuYXJnc1sndGFrZSddLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG5cbiAgICAgICAgd3JpdGVyLndyaXRlbG4oJ1VzZXJzOicpO1xuICAgICAgICB3cml0ZXIud3JpdGVPYmplY3RzQXNUYWJsZSh1c2Vycyk7XG4gICAgfVxuXG4gICAgd3JpdGVEZXNjcmlwdGlvbih7IHdyaXRlciB9OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCk6IHZvaWQge1xuICAgICAgICB3cml0ZXIud3JpdGVsbih0aGlzLmRlc2NyaXB0aW9uISk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCdVc2FnZTogbGlzdHVzZXJzJyk7XG4gICAgfVxufVxuIl19