@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
61 lines • 7.8 kB
JavaScript
import { Inject, Injectable } from '@angular/core';
import { CliIcon, } from '@qodalis/cli-core';
import { DefaultLibraryAuthor } from '@qodalis/cli-core';
import { ICliUserSessionService_TOKEN } from '../../tokens';
import { firstValueFrom } from 'rxjs';
import * as i0 from "@angular/core";
export class CliWhoamiCommandProcessor {
constructor(userSessionService) {
this.userSessionService = userSessionService;
this.command = 'whoami';
this.description = 'Display current user information';
this.author = DefaultLibraryAuthor;
this.metadata = {
sealed: true,
module: 'users',
icon: CliIcon.User,
};
this.stateConfiguration = {
initialState: {},
storeName: 'users',
};
this.parameters = [
{
name: 'info',
description: 'Display user information',
type: 'boolean',
required: false,
aliases: ['i'],
},
];
}
async processCommand(command, context) {
const user = await firstValueFrom(this.userSessionService.getUserSession());
if (!user) {
context.writer.writeln('No user session found');
return;
}
if (command.args['info'] || command.args['i']) {
context.writer.writeln('User information:');
context.writer.writeObjectsAsTable([user.user]);
}
else {
context.writer.writeln(user?.user.email);
}
}
writeDescription(context) {
context.writer.writeln(this.description);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliWhoamiCommandProcessor, deps: [{ token: ICliUserSessionService_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliWhoamiCommandProcessor, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliWhoamiCommandProcessor, decorators: [{
type: Injectable,
args: [{
providedIn: 'root',
}]
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [ICliUserSessionService_TOKEN]
}] }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLXdob2FtaS1jb21tYW5kLXByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaS9zcmMvbGliL2NsaS9wcm9jZXNzb3JzL3VzZXJzL2NsaS13aG9hbWktY29tbWFuZC1wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNILE9BQU8sR0FTVixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUt0QyxNQUFNLE9BQU8seUJBQXlCO0lBNEJsQyxZQUVxQixrQkFBMEM7UUFBMUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF3QjtRQTdCL0QsWUFBTyxHQUFHLFFBQVEsQ0FBQztRQUVuQixnQkFBVyxHQUF3QixrQ0FBa0MsQ0FBQztRQUV0RSxXQUFNLEdBQW1DLG9CQUFvQixDQUFDO1FBRTlELGFBQVEsR0FBc0M7WUFDMUMsTUFBTSxFQUFFLElBQUk7WUFDWixNQUFNLEVBQUUsT0FBTztZQUNmLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtTQUNyQixDQUFDO1FBRUYsdUJBQWtCLEdBQXVDO1lBQ3JELFlBQVksRUFBRSxFQUFFO1lBQ2hCLFNBQVMsRUFBRSxPQUFPO1NBQ3JCLENBQUM7UUFFRixlQUFVLEdBQWtEO1lBQ3hEO2dCQUNJLElBQUksRUFBRSxNQUFNO2dCQUNaLFdBQVcsRUFBRSwwQkFBMEI7Z0JBQ3ZDLElBQUksRUFBRSxTQUFTO2dCQUNmLFFBQVEsRUFBRSxLQUFLO2dCQUNmLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQzthQUNqQjtTQUNKLENBQUM7SUFLQyxDQUFDO0lBRUosS0FBSyxDQUFDLGNBQWMsQ0FDaEIsT0FBMEIsRUFDMUIsT0FBNkI7UUFFN0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxjQUFjLENBQzdCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsQ0FDM0MsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDUCxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ2hELE9BQU87U0FDVjtRQUVELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDNUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ25EO2FBQU07WUFDSCxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQTZCO1FBQzFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFZLENBQUMsQ0FBQztJQUM5QyxDQUFDOytHQXhEUSx5QkFBeUIsa0JBNkJ0Qiw0QkFBNEI7bUhBN0IvQix5QkFBeUIsY0FGdEIsTUFBTTs7NEZBRVQseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBOEJRLE1BQU07MkJBQUMsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENsaUljb24sXG4gICAgQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgQ2xpUHJvY2Vzc29yTWV0YWRhdGEsXG4gICAgQ2xpU3RhdGVDb25maWd1cmF0aW9uLFxuICAgIElDbGlDb21tYW5kQXV0aG9yLFxuICAgIElDbGlDb21tYW5kUGFyYW1ldGVyRGVzY3JpcHRvcixcbiAgICBJQ2xpQ29tbWFuZFByb2Nlc3NvcixcbiAgICBJQ2xpRXhlY3V0aW9uQ29udGV4dCxcbiAgICBJQ2xpVXNlclNlc3Npb25TZXJ2aWNlLFxufSBmcm9tICdAcW9kYWxpcy9jbGktY29yZSc7XG5pbXBvcnQgeyBEZWZhdWx0TGlicmFyeUF1dGhvciB9IGZyb20gJ0Bxb2RhbGlzL2NsaS1jb3JlJztcbmltcG9ydCB7IElDbGlVc2VyU2Vzc2lvblNlcnZpY2VfVE9LRU4gfSBmcm9tICcuLi8uLi90b2tlbnMnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ2xpV2hvYW1pQ29tbWFuZFByb2Nlc3NvciBpbXBsZW1lbnRzIElDbGlDb21tYW5kUHJvY2Vzc29yIHtcbiAgICBjb21tYW5kID0gJ3dob2FtaSc7XG5cbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHVuZGVmaW5lZCA9ICdEaXNwbGF5IGN1cnJlbnQgdXNlciBpbmZvcm1hdGlvbic7XG5cbiAgICBhdXRob3I/OiBJQ2xpQ29tbWFuZEF1dGhvciB8IHVuZGVmaW5lZCA9IERlZmF1bHRMaWJyYXJ5QXV0aG9yO1xuXG4gICAgbWV0YWRhdGE/OiBDbGlQcm9jZXNzb3JNZXRhZGF0YSB8IHVuZGVmaW5lZCA9IHtcbiAgICAgICAgc2VhbGVkOiB0cnVlLFxuICAgICAgICBtb2R1bGU6ICd1c2VycycsXG4gICAgICAgIGljb246IENsaUljb24uVXNlcixcbiAgICB9O1xuXG4gICAgc3RhdGVDb25maWd1cmF0aW9uPzogQ2xpU3RhdGVDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkID0ge1xuICAgICAgICBpbml0aWFsU3RhdGU6IHt9LFxuICAgICAgICBzdG9yZU5hbWU6ICd1c2VycycsXG4gICAgfTtcblxuICAgIHBhcmFtZXRlcnM/OiBJQ2xpQ29tbWFuZFBhcmFtZXRlckRlc2NyaXB0b3JbXSB8IHVuZGVmaW5lZCA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246ICdEaXNwbGF5IHVzZXIgaW5mb3JtYXRpb24nLFxuICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgYWxpYXNlczogWydpJ10sXG4gICAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KElDbGlVc2VyU2Vzc2lvblNlcnZpY2VfVE9LRU4pXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlclNlc3Npb25TZXJ2aWNlOiBJQ2xpVXNlclNlc3Npb25TZXJ2aWNlLFxuICAgICkge31cblxuICAgIGFzeW5jIHByb2Nlc3NDb21tYW5kKFxuICAgICAgICBjb21tYW5kOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgICAgIHRoaXMudXNlclNlc3Npb25TZXJ2aWNlLmdldFVzZXJTZXNzaW9uKCksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKCF1c2VyKSB7XG4gICAgICAgICAgICBjb250ZXh0LndyaXRlci53cml0ZWxuKCdObyB1c2VyIHNlc3Npb24gZm91bmQnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb21tYW5kLmFyZ3NbJ2luZm8nXSB8fCBjb21tYW5kLmFyZ3NbJ2knXSkge1xuICAgICAgICAgICAgY29udGV4dC53cml0ZXIud3JpdGVsbignVXNlciBpbmZvcm1hdGlvbjonKTtcbiAgICAgICAgICAgIGNvbnRleHQud3JpdGVyLndyaXRlT2JqZWN0c0FzVGFibGUoW3VzZXIudXNlcl0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGV4dC53cml0ZXIud3JpdGVsbih1c2VyPy51c2VyLmVtYWlsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHdyaXRlRGVzY3JpcHRpb24oY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQpOiB2b2lkIHtcbiAgICAgICAgY29udGV4dC53cml0ZXIud3JpdGVsbih0aGlzLmRlc2NyaXB0aW9uISk7XG4gICAgfVxufVxuIl19