@cisstech/nge
Version:
NG Essentials is a collection of libraries for Angular developers.
21 lines • 2.81 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class InjectorService {
constructor(injector) {
this.injector = injector;
}
get(token) {
const service = this.injector.get(token, []).find((e) => e.injectable());
if (!service) {
throw new Error('[InjectorService]: No provider found for ' + token);
}
return service;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: InjectorService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: InjectorService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: InjectorService, decorators: [{
type: Injectable,
args: [{ providedIn: 'root' }]
}], ctorParameters: () => [{ type: i0.Injector }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nZS9zZXJ2aWNlcy9zcmMvaW5qZWN0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFVBQVUsRUFBa0MsTUFBTSxlQUFlLENBQUE7O0FBT3hGLE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQTZCLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFBRyxDQUFDO0lBRW5ELEdBQUcsQ0FBNEIsS0FBMEQ7UUFDdkYsTUFBTSxPQUFPLEdBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7UUFDakYsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsR0FBRyxLQUFLLENBQUMsQ0FBQTtRQUN0RSxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUE7SUFDaEIsQ0FBQzs4R0FUVSxlQUFlO2tIQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdFR5cGUsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBJbmplY3RvciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUR5bmFtaWNTZXJ2aWNlIHtcbiAgaW5qZWN0YWJsZSgpOiBib29sZWFuXG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgSW5qZWN0b3JTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XG5cbiAgZ2V0PFQgZXh0ZW5kcyBJRHluYW1pY1NlcnZpY2U+KHRva2VuOiBUeXBlPGFueT4gfCBJbmplY3Rpb25Ub2tlbjxhbnk+IHwgQWJzdHJhY3RUeXBlPGFueT4pOiBUIHtcbiAgICBjb25zdCBzZXJ2aWNlID0gKHRoaXMuaW5qZWN0b3IuZ2V0KHRva2VuLCBbXSkgYXMgVFtdKS5maW5kKChlKSA9PiBlLmluamVjdGFibGUoKSlcbiAgICBpZiAoIXNlcnZpY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignW0luamVjdG9yU2VydmljZV06IE5vIHByb3ZpZGVyIGZvdW5kIGZvciAnICsgdG9rZW4pXG4gICAgfVxuICAgIHJldHVybiBzZXJ2aWNlXG4gIH1cbn1cbiJdfQ==