UNPKG

lamb-web-lib

Version:

LambWebLib. Es un proyecto angular de tipo Librería. que contiene una Suit de componentes reutilizables para el proyecto [Lamb Financial](https://lamb.upeu.edu.pe).

102 lines 8.84 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc */ import { TemplateRef, } from '@angular/core'; export class ContentRef { /** * @param {?} nodes * @param {?=} viewRef * @param {?=} componentRef */ constructor(nodes, viewRef, componentRef) { this.nodes = nodes; this.viewRef = viewRef; this.componentRef = componentRef; } } if (false) { /** @type {?} */ ContentRef.prototype.nodes; /** @type {?} */ ContentRef.prototype.viewRef; /** @type {?} */ ContentRef.prototype.componentRef; } /** * @template T */ export class PopupService { /** * @param {?} type * @param {?} injector * @param {?} viewContainerRef * @param {?} renderer * @param {?} componentFactoryResolver */ constructor(type, injector, viewContainerRef, renderer, componentFactoryResolver) { this.injector = injector; this.viewContainerRef = viewContainerRef; this.renderer = renderer; this.windowFactory = componentFactoryResolver.resolveComponentFactory(type); } /** * @param {?=} content * @param {?=} context * @return {?} */ open(content, context) { if (!this.windowRef) { this.contentRef = this.getContentRef(content, context); this.windowRef = this.viewContainerRef.createComponent(this.windowFactory, 0, this.injector, this.contentRef.nodes); } return this.windowRef; } /** * @return {?} */ close() { if (this.windowRef) { this.viewContainerRef.remove(this.viewContainerRef.indexOf(this.windowRef.hostView)); this.windowRef = null; if (this.contentRef.viewRef) { this.viewContainerRef.remove(this.viewContainerRef.indexOf(this.contentRef.viewRef)); this.contentRef = null; } } } /** * @param {?} content * @param {?=} context * @return {?} */ getContentRef(content, context) { if (!content) { return new ContentRef([]); } else if (content instanceof TemplateRef) { /** @type {?} */ const viewRef = this.viewContainerRef.createEmbeddedView((/** @type {?} */ (content)), context); return new ContentRef([viewRef.rootNodes], viewRef); } else { return new ContentRef([[this.renderer.createText(`${content}`)]]); } } } if (false) { /** @type {?} */ PopupService.prototype.windowFactory; /** @type {?} */ PopupService.prototype.windowRef; /** @type {?} */ PopupService.prototype.contentRef; /** @type {?} */ PopupService.prototype.injector; /** @type {?} */ PopupService.prototype.viewContainerRef; /** @type {?} */ PopupService.prototype.renderer; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9sYW1iLXdlYi1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC91dGlsL3BvcHVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBRUgsV0FBVyxHQU9kLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE1BQU07Ozs7OztJQUNGLFlBQW1CLEtBQVksRUFBUyxPQUFpQixFQUFTLFlBQWdDO1FBQS9FLFVBQUssR0FBTCxLQUFLLENBQU87UUFBUyxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBQVMsaUJBQVksR0FBWixZQUFZLENBQW9CO0lBQUksQ0FBQztDQUMxRzs7O0lBRGUsMkJBQW1COztJQUFFLDZCQUF3Qjs7SUFBRSxrQ0FBdUM7Ozs7O0FBR3RHLE1BQU07Ozs7Ozs7O0lBS0YsWUFDSSxJQUFTLEVBQ0QsUUFBa0IsRUFDbEIsZ0JBQWtDLEVBQ2xDLFFBQW1CLEVBQzNCLHdCQUFrRDtRQUgxQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUczQixJQUFJLENBQUMsYUFBYSxHQUFHLHdCQUF3QixDQUFDLHVCQUF1QixDQUFJLElBQUksQ0FBQyxDQUFDO0lBQ25GLENBQUM7Ozs7OztJQUVELElBQUksQ0FBQyxPQUFtQyxFQUFFLE9BQWE7UUFDbkQsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxTQUFTO2dCQUNWLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNHLENBQUM7UUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDOzs7O0lBRUQsS0FBSztRQUNELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDckYsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFFdEIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUMxQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUMzQixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUVPLGFBQWEsQ0FBQyxPQUFrQyxFQUFFLE9BQWE7UUFDbkUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ1gsTUFBTSxDQUFDLElBQUksVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLENBQUM7UUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxZQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUM7O2tCQUNsQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLG1CQUFnQixPQUFPLEVBQUEsRUFBRSxPQUFPLENBQUM7WUFDMUYsTUFBTSxDQUFDLElBQUksVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLE1BQU0sQ0FBQyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLENBQUM7SUFDTCxDQUFDO0NBQ0o7OztJQTlDRyxxQ0FBMkM7O0lBQzNDLGlDQUFtQzs7SUFDbkMsa0NBQStCOztJQUkzQixnQ0FBMEI7O0lBQzFCLHdDQUEwQzs7SUFDMUMsZ0NBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEluamVjdG9yLFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3UmVmLFxyXG4gICAgVmlld0NvbnRhaW5lclJlZixcclxuICAgIFJlbmRlcmVyMixcclxuICAgIENvbXBvbmVudFJlZixcclxuICAgIENvbXBvbmVudEZhY3RvcnksXHJcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ29udGVudFJlZiB7XHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbm9kZXM6IGFueVtdLCBwdWJsaWMgdmlld1JlZj86IFZpZXdSZWYsIHB1YmxpYyBjb21wb25lbnRSZWY/OiBDb21wb25lbnRSZWY8YW55PikgeyB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBQb3B1cFNlcnZpY2U8VD4ge1xyXG4gICAgcHJpdmF0ZSB3aW5kb3dGYWN0b3J5OiBDb21wb25lbnRGYWN0b3J5PFQ+O1xyXG4gICAgcHJpdmF0ZSB3aW5kb3dSZWY6IENvbXBvbmVudFJlZjxUPjtcclxuICAgIHByaXZhdGUgY29udGVudFJlZjogQ29udGVudFJlZjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICB0eXBlOiBhbnksXHJcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgICAgICBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMud2luZG93RmFjdG9yeSA9IGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeTxUPih0eXBlKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKGNvbnRlbnQ/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+LCBjb250ZXh0PzogYW55KTogQ29tcG9uZW50UmVmPFQ+IHtcclxuICAgICAgICBpZiAoIXRoaXMud2luZG93UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGVudFJlZiA9IHRoaXMuZ2V0Q29udGVudFJlZihjb250ZW50LCBjb250ZXh0KTtcclxuICAgICAgICAgICAgdGhpcy53aW5kb3dSZWYgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudCh0aGlzLndpbmRvd0ZhY3RvcnksIDAsIHRoaXMuaW5qZWN0b3IsIHRoaXMuY29udGVudFJlZi5ub2Rlcyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy53aW5kb3dSZWY7XHJcbiAgICB9XHJcblxyXG4gICAgY2xvc2UoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMud2luZG93UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZi5yZW1vdmUodGhpcy52aWV3Q29udGFpbmVyUmVmLmluZGV4T2YodGhpcy53aW5kb3dSZWYuaG9zdFZpZXcpKTtcclxuICAgICAgICAgICAgdGhpcy53aW5kb3dSZWYgPSBudWxsO1xyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudFJlZi52aWV3UmVmKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYucmVtb3ZlKHRoaXMudmlld0NvbnRhaW5lclJlZi5pbmRleE9mKHRoaXMuY29udGVudFJlZi52aWV3UmVmKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRSZWYgPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0Q29udGVudFJlZihjb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+LCBjb250ZXh0PzogYW55KTogQ29udGVudFJlZiB7XHJcbiAgICAgICAgaWYgKCFjb250ZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBuZXcgQ29udGVudFJlZihbXSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChjb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcclxuICAgICAgICAgICAgY29uc3Qgdmlld1JlZiA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoPFRlbXBsYXRlUmVmPFQ+PmNvbnRlbnQsIGNvbnRleHQpO1xyXG4gICAgICAgICAgICByZXR1cm4gbmV3IENvbnRlbnRSZWYoW3ZpZXdSZWYucm9vdE5vZGVzXSwgdmlld1JlZik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5ldyBDb250ZW50UmVmKFtbdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KGAke2NvbnRlbnR9YCldXSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==