@qodalis/angular-cli
Version:
A lightweight and flexible command-line interface (CLI) tool designed to streamline workflows and automate tasks for developers.
31 lines • 5.21 kB
JavaScript
import { CliStateStore } from './cli-state-store';
import { Inject, Injectable } from '@angular/core';
import { CliProcessorsRegistry_TOKEN, CliServiceProvider_TOKEN, } from '../tokens';
import * as i0 from "@angular/core";
export class CliStateStoreManager {
constructor(services) {
this.services = services;
this.stores = new Map();
}
getStateStore(name, defaultState) {
if (!this.stores.has(name)) {
this.stores.set(name, new CliStateStore(this.services, name, defaultState ?? {}));
}
return this.stores.get(name);
}
getProcessorStateStore(processor) {
const registry = this.services.get(CliProcessorsRegistry_TOKEN);
const rootProcessor = registry.getRootProcessor(processor);
return this.getStateStore(rootProcessor.stateConfiguration?.storeName ||
rootProcessor.command, rootProcessor.stateConfiguration?.initialState);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliStateStoreManager, deps: [{ token: CliServiceProvider_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliStateStoreManager }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliStateStoreManager, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [CliServiceProvider_TOKEN]
}] }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLXN0YXRlLXN0b3JlLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGkvc3JjL2xpYi9jbGkvc3RhdGUvY2xpLXN0YXRlLXN0b3JlLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFDSCwyQkFBMkIsRUFDM0Isd0JBQXdCLEdBQzNCLE1BQU0sV0FBVyxDQUFDOztBQUduQixNQUFNLE9BQU8sb0JBQW9CO0lBRzdCLFlBRXFCLFFBQTZCO1FBQTdCLGFBQVEsR0FBUixRQUFRLENBQXFCO1FBSjFDLFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBMEIsQ0FBQztJQUtoRCxDQUFDO0lBRUcsYUFBYSxDQUNoQixJQUFZLEVBQ1osWUFBa0M7UUFFbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUNYLElBQUksRUFDSixJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxZQUFZLElBQUksRUFBRSxDQUFDLENBQzdELENBQUM7U0FDTDtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVNLHNCQUFzQixDQUN6QixTQUErQjtRQUUvQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FDOUIsMkJBQTJCLENBQzlCLENBQUM7UUFFRixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFM0QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUNyQixhQUFhLENBQUMsa0JBQWtCLEVBQUUsU0FBUztZQUN2QyxhQUFhLENBQUMsT0FBTyxFQUN6QixhQUFhLENBQUMsa0JBQWtCLEVBQUUsWUFBWSxDQUNqRCxDQUFDO0lBQ04sQ0FBQzsrR0FwQ1Esb0JBQW9CLGtCQUlqQix3QkFBd0I7bUhBSjNCLG9CQUFvQjs7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVTs7MEJBS0YsTUFBTTsyQkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yLFxuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yUmVnaXN0cnksXG4gICAgSUNsaVNlcnZpY2VQcm92aWRlcixcbiAgICBJQ2xpU3RhdGVTdG9yZSxcbn0gZnJvbSAnQHFvZGFsaXMvY2xpLWNvcmUnO1xuaW1wb3J0IHsgQ2xpU3RhdGVTdG9yZSB9IGZyb20gJy4vY2xpLXN0YXRlLXN0b3JlJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDbGlQcm9jZXNzb3JzUmVnaXN0cnlfVE9LRU4sXG4gICAgQ2xpU2VydmljZVByb3ZpZGVyX1RPS0VOLFxufSBmcm9tICcuLi90b2tlbnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2xpU3RhdGVTdG9yZU1hbmFnZXIge1xuICAgIHByaXZhdGUgc3RvcmVzID0gbmV3IE1hcDxzdHJpbmcsIElDbGlTdGF0ZVN0b3JlPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoQ2xpU2VydmljZVByb3ZpZGVyX1RPS0VOKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2VzOiBJQ2xpU2VydmljZVByb3ZpZGVyLFxuICAgICkge31cblxuICAgIHB1YmxpYyBnZXRTdGF0ZVN0b3JlKFxuICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgIGRlZmF1bHRTdGF0ZT86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICAgKTogSUNsaVN0YXRlU3RvcmUge1xuICAgICAgICBpZiAoIXRoaXMuc3RvcmVzLmhhcyhuYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZXMuc2V0KFxuICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgbmV3IENsaVN0YXRlU3RvcmUodGhpcy5zZXJ2aWNlcywgbmFtZSwgZGVmYXVsdFN0YXRlID8/IHt9KSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZXMuZ2V0KG5hbWUpITtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UHJvY2Vzc29yU3RhdGVTdG9yZShcbiAgICAgICAgcHJvY2Vzc29yOiBJQ2xpQ29tbWFuZFByb2Nlc3NvcixcbiAgICApOiBJQ2xpU3RhdGVTdG9yZSB7XG4gICAgICAgIGNvbnN0IHJlZ2lzdHJ5ID0gdGhpcy5zZXJ2aWNlcy5nZXQ8SUNsaUNvbW1hbmRQcm9jZXNzb3JSZWdpc3RyeT4oXG4gICAgICAgICAgICBDbGlQcm9jZXNzb3JzUmVnaXN0cnlfVE9LRU4sXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgcm9vdFByb2Nlc3NvciA9IHJlZ2lzdHJ5LmdldFJvb3RQcm9jZXNzb3IocHJvY2Vzc29yKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGF0ZVN0b3JlKFxuICAgICAgICAgICAgcm9vdFByb2Nlc3Nvci5zdGF0ZUNvbmZpZ3VyYXRpb24/LnN0b3JlTmFtZSB8fFxuICAgICAgICAgICAgICAgIHJvb3RQcm9jZXNzb3IuY29tbWFuZCxcbiAgICAgICAgICAgIHJvb3RQcm9jZXNzb3Iuc3RhdGVDb25maWd1cmF0aW9uPy5pbml0aWFsU3RhdGUsXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19