@pepperi/lib
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.1.
34 lines • 3.88 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class PortalService {
constructor() {
this.targets = new Map();
}
addTarget(targetName, viewContainer) {
this.targets.set(targetName, viewContainer);
}
attach(targetName, template) {
const target = this.getTarget(targetName);
if (target) {
target.createEmbeddedView(template);
}
}
clear(targetName) {
const target = this.getTarget(targetName);
if (target) {
target.clear();
}
}
getTarget(targetName) {
return this.targets.has(targetName) ? this.targets.get(targetName) : null;
}
}
PortalService.ɵfac = function PortalService_Factory(t) { return new (t || PortalService)(); };
PortalService.ɵprov = i0.ɵɵdefineInjectable({ token: PortalService, factory: PortalService.ɵfac, providedIn: 'root' });
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(PortalService, [{
type: Injectable,
args: [{
providedIn: 'root',
}]
}], function () { return []; }, null); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wZXBwZXJpLWxpYi9zcmMvY29yZS9wb3J0YWwvcG9ydGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBZ0MsTUFBTSxlQUFlLENBQUM7O0FBS3hFLE1BQU0sT0FBTyxhQUFhO0lBR3RCO1FBQ0ksSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBNEIsQ0FBQztJQUN2RCxDQUFDO0lBRUQsU0FBUyxDQUFDLFVBQWtCLEVBQUUsYUFBK0I7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxNQUFNLENBQUMsVUFBa0IsRUFBRSxRQUEwQjtRQUNqRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFDLElBQUksTUFBTSxFQUFFO1lBQ1IsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFrQjtRQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFDLElBQUksTUFBTSxFQUFFO1lBQ1IsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2xCO0lBQ0wsQ0FBQztJQUVPLFNBQVMsQ0FBQyxVQUFrQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzlFLENBQUM7OzBFQTdCUSxhQUFhO3FEQUFiLGFBQWEsV0FBYixhQUFhLG1CQUZWLE1BQU07a0RBRVQsYUFBYTtjQUh6QixVQUFVO2VBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcnRhbFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSB0YXJnZXRzOiBNYXA8c3RyaW5nLCBWaWV3Q29udGFpbmVyUmVmPjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLnRhcmdldHMgPSBuZXcgTWFwPHN0cmluZywgVmlld0NvbnRhaW5lclJlZj4oKTtcclxuICAgIH1cclxuXHJcbiAgICBhZGRUYXJnZXQodGFyZ2V0TmFtZTogc3RyaW5nLCB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7XHJcbiAgICAgICAgdGhpcy50YXJnZXRzLnNldCh0YXJnZXROYW1lLCB2aWV3Q29udGFpbmVyKTtcclxuICAgIH1cclxuXHJcbiAgICBhdHRhY2godGFyZ2V0TmFtZTogc3RyaW5nLCB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMuZ2V0VGFyZ2V0KHRhcmdldE5hbWUpO1xyXG5cclxuICAgICAgICBpZiAodGFyZ2V0KSB7XHJcbiAgICAgICAgICAgIHRhcmdldC5jcmVhdGVFbWJlZGRlZFZpZXcodGVtcGxhdGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjbGVhcih0YXJnZXROYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCB0YXJnZXQgPSB0aGlzLmdldFRhcmdldCh0YXJnZXROYW1lKTtcclxuXHJcbiAgICAgICAgaWYgKHRhcmdldCkge1xyXG4gICAgICAgICAgICB0YXJnZXQuY2xlYXIoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRUYXJnZXQodGFyZ2V0TmFtZTogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGFyZ2V0cy5oYXModGFyZ2V0TmFtZSkgPyB0aGlzLnRhcmdldHMuZ2V0KHRhcmdldE5hbWUpIDogbnVsbDtcclxuICAgIH1cclxufVxyXG4iXX0=