@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
31 lines • 4.09 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "../../registry/front-action-registry.service";
import * as i2 from "../../logger/services/logger.service";
export class FrontActionService {
_injector;
_frontActionRegistry;
_log;
constructor(_injector, _frontActionRegistry, _log) {
this._injector = _injector;
this._frontActionRegistry = _frontActionRegistry;
this._log = _log;
}
run(frontAction) {
const fn = this._frontActionRegistry.get(frontAction.id);
if (!fn) {
this._log.error("Frontend action is not defined for ID [" + frontAction.id + "]");
return;
}
fn.call(this._injector, frontAction);
}
runAll(frontAction) {
frontAction.forEach(a => this.run(a));
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FrontActionService, deps: [{ token: i0.Injector }, { token: i1.FrontActionRegistryService }, { token: i2.LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FrontActionService });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FrontActionService, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.FrontActionRegistryService }, { type: i2.LoggerService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbnQtYWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2FjdGlvbnMvc2VydmljZXMvZnJvbnQtYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBVyxNQUFNLGVBQWUsQ0FBQzs7OztBQU1uRCxNQUFNLE9BQU8sa0JBQWtCO0lBRUw7SUFDQTtJQUNBO0lBRnRCLFlBQXNCLFNBQW1CLEVBQ25CLG9CQUFnRCxFQUNoRCxJQUFtQjtRQUZuQixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBNEI7UUFDaEQsU0FBSSxHQUFKLElBQUksQ0FBZTtJQUV6QyxDQUFDO0lBRU0sR0FBRyxDQUFDLFdBQXdCO1FBQy9CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1FBQ3hELElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx5Q0FBeUMsR0FBRyxXQUFXLENBQUMsRUFBRSxHQUFFLEdBQUcsQ0FBQyxDQUFBO1lBQ2hGLE9BQU87U0FDVjtRQUNELEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUN4QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQTBCO1FBQ3BDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDekMsQ0FBQzt3R0FuQlEsa0JBQWtCOzRHQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RnJvbnRBY3Rpb25SZWdpc3RyeVNlcnZpY2V9IGZyb20gXCIuLi8uLi9yZWdpc3RyeS9mcm9udC1hY3Rpb24tcmVnaXN0cnkuc2VydmljZVwiO1xuaW1wb3J0IHtGcm9udEFjdGlvbn0gZnJvbSBcIi4uLy4uL2RhdGEtZmllbGRzL21vZGVscy9jaGFuZ2VkLWZpZWxkc1wiO1xuaW1wb3J0IHtMb2dnZXJTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGcm9udEFjdGlvblNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9mcm9udEFjdGlvblJlZ2lzdHJ5OiBGcm9udEFjdGlvblJlZ2lzdHJ5U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgcHVibGljIHJ1bihmcm9udEFjdGlvbjogRnJvbnRBY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZm4gPSB0aGlzLl9mcm9udEFjdGlvblJlZ2lzdHJ5LmdldChmcm9udEFjdGlvbi5pZClcbiAgICAgICAgaWYgKCFmbikge1xuICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKFwiRnJvbnRlbmQgYWN0aW9uIGlzIG5vdCBkZWZpbmVkIGZvciBJRCBbXCIgKyBmcm9udEFjdGlvbi5pZCArXCJdXCIpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZm4uY2FsbCh0aGlzLl9pbmplY3RvciwgZnJvbnRBY3Rpb24pXG4gICAgfVxuXG4gICAgcHVibGljIHJ1bkFsbChmcm9udEFjdGlvbjogRnJvbnRBY3Rpb25bXSk6IHZvaWQge1xuICAgICAgICBmcm9udEFjdGlvbi5mb3JFYWNoKGEgPT4gdGhpcy5ydW4oYSkpXG4gICAgfVxuXG59XG4iXX0=