@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
40 lines • 5.38 kB
JavaScript
import { Inject, Injectable } from '@angular/core';
import { DefaultLibraryAuthor } from '@qodalis/cli-core';
import { ICliPingServerService_TOKEN } from '../tokens';
import * as i0 from "@angular/core";
export class CliPingCommandProcessor {
constructor(pingServerService) {
this.pingServerService = pingServerService;
this.command = 'ping';
this.description = 'Pings the server';
this.author = DefaultLibraryAuthor;
this.metadata = {
icon: '🏓',
};
}
async processCommand(_, context) {
context.spinner?.show();
context?.spinner?.setText('Pinging server...');
this.pingServerService
.ping()
.then(() => {
context.spinner?.hide();
context.writer.writeln('pong');
context.showPrompt();
})
.catch(() => {
context.spinner?.hide();
context.writer.writeError('Failed to ping the server');
context.showPrompt();
});
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliPingCommandProcessor, deps: [{ token: ICliPingServerService_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliPingCommandProcessor }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliPingCommandProcessor, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [ICliPingServerService_TOKEN]
}] }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLXBpbmctY29tbWFuZC1wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGkvc3JjL2xpYi9jbGkvcHJvY2Vzc29ycy9jbGktcGluZy1jb21tYW5kLXByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQXdCLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFRL0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sV0FBVyxDQUFDOztBQUd4RCxNQUFNLE9BQU8sdUJBQXVCO0lBV2hDLFlBRVksaUJBQXdDO1FBQXhDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBdUI7UUFacEQsWUFBTyxHQUFHLE1BQU0sQ0FBQztRQUVqQixnQkFBVyxHQUF3QixrQkFBa0IsQ0FBQztRQUV0RCxXQUFNLEdBQW1DLG9CQUFvQixDQUFDO1FBRTlELGFBQVEsR0FBc0M7WUFDMUMsSUFBSSxFQUFFLElBQUk7U0FDYixDQUFDO0lBS0MsQ0FBQztJQUVKLEtBQUssQ0FBQyxjQUFjLENBQ2hCLENBQW9CLEVBQ3BCLE9BQTZCO1FBRTdCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDeEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsaUJBQWlCO2FBQ2pCLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUCxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQy9CLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ1IsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUN4QixPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBQ3ZELE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBbENRLHVCQUF1QixrQkFZcEIsMkJBQTJCO21IQVo5Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVU7OzBCQWFGLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGlQcm9jZXNzb3JNZXRhZGF0YSwgRGVmYXVsdExpYnJhcnlBdXRob3IgfSBmcm9tICdAcW9kYWxpcy9jbGktY29yZSc7XG5pbXBvcnQge1xuICAgIENsaVByb2Nlc3NDb21tYW5kLFxuICAgIElDbGlDb21tYW5kQXV0aG9yLFxuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yLFxuICAgIElDbGlFeGVjdXRpb25Db250ZXh0LFxuICAgIElDbGlQaW5nU2VydmVyU2VydmljZSxcbn0gZnJvbSAnQHFvZGFsaXMvY2xpLWNvcmUnO1xuaW1wb3J0IHsgSUNsaVBpbmdTZXJ2ZXJTZXJ2aWNlX1RPS0VOIH0gZnJvbSAnLi4vdG9rZW5zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENsaVBpbmdDb21tYW5kUHJvY2Vzc29yIGltcGxlbWVudHMgSUNsaUNvbW1hbmRQcm9jZXNzb3Ige1xuICAgIGNvbW1hbmQgPSAncGluZyc7XG5cbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHVuZGVmaW5lZCA9ICdQaW5ncyB0aGUgc2VydmVyJztcblxuICAgIGF1dGhvcj86IElDbGlDb21tYW5kQXV0aG9yIHwgdW5kZWZpbmVkID0gRGVmYXVsdExpYnJhcnlBdXRob3I7XG5cbiAgICBtZXRhZGF0YT86IENsaVByb2Nlc3Nvck1ldGFkYXRhIHwgdW5kZWZpbmVkID0ge1xuICAgICAgICBpY29uOiAn8J+PkycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KElDbGlQaW5nU2VydmVyU2VydmljZV9UT0tFTilcbiAgICAgICAgcHJpdmF0ZSBwaW5nU2VydmVyU2VydmljZTogSUNsaVBpbmdTZXJ2ZXJTZXJ2aWNlLFxuICAgICkge31cblxuICAgIGFzeW5jIHByb2Nlc3NDb21tYW5kKFxuICAgICAgICBfOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnRleHQuc3Bpbm5lcj8uc2hvdygpO1xuICAgICAgICBjb250ZXh0Py5zcGlubmVyPy5zZXRUZXh0KCdQaW5naW5nIHNlcnZlci4uLicpO1xuICAgICAgICB0aGlzLnBpbmdTZXJ2ZXJTZXJ2aWNlXG4gICAgICAgICAgICAucGluZygpXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5zcGlubmVyPy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgY29udGV4dC53cml0ZXIud3JpdGVsbigncG9uZycpO1xuICAgICAgICAgICAgICAgIGNvbnRleHQuc2hvd1Byb21wdCgpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5zcGlubmVyPy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgY29udGV4dC53cml0ZXIud3JpdGVFcnJvcignRmFpbGVkIHRvIHBpbmcgdGhlIHNlcnZlcicpO1xuICAgICAgICAgICAgICAgIGNvbnRleHQuc2hvd1Byb21wdCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19