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).

128 lines 12.4 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc */ /** * Una referencia a un modal activo (actualmente abierto). Instancias de esta clase * puede ser inyectado en componentes pasados ​​como contenido modal. */ export class LambActiveModal { /** * Se puede usar para cerrar un modal, pasando un resultado opcional. * @param {?=} result * @return {?} */ close(result) { } /** * Se puede usar para descartar un modal, pasando un motivo opcional. * @param {?=} reason razon por que se descarto. * @return {?} */ dismiss(reason) { } } /** * Una referencia a un modal recientemente abierto. */ export class LambModalRef { /** * @param {?} windowComponentRef * @param {?} contentRef * @param {?=} backdropComponentRef * @param {?=} beforeDismiss */ constructor(windowComponentRef, contentRef, backdropComponentRef, beforeDismiss) { this.windowComponentRef = windowComponentRef; this.contentRef = contentRef; this.backdropComponentRef = backdropComponentRef; this.beforeDismiss = beforeDismiss; windowComponentRef.instance.dismissEvent.subscribe((reason) => { this.dismiss(reason); }); this.result = new Promise((resolve, reject) => { this.resolve = resolve; this.reject = reject; }); this.result.then(null, () => { }); } /** * La instancia de componente utilizada como contenido modal. * Indefinido cuando se utiliza un TemplateRef como contenido modal. * @return {?} */ get componentInstance() { if (this.contentRef.componentRef) { return this.contentRef.componentRef.instance; } } // solo es necesario para mantener la compatibilidad con TS1.8 /** * @param {?} instance * @return {?} */ set componentInstance(instance) { } /** * Se puede usar para cerrar un modal, pasando un resultado opcional. * @param {?=} result * @return {?} */ close(result) { if (this.windowComponentRef) { this.resolve(result); this.removeModalElements(); } } /** * Se puede usar para descartar un modal, pasando un motivo opcional. * @param {?=} reason * @return {?} */ dismiss(reason) { // console.log('reason'); // console.log(reason); if (this.windowComponentRef) { if (!this.beforeDismiss || this.beforeDismiss() !== false) { this.reject(reason); this.removeModalElements(); } } } /** * @return {?} */ removeModalElements() { /** @type {?} */ const windowNativeEl = this.windowComponentRef.location.nativeElement; windowNativeEl.parentNode.removeChild(windowNativeEl); this.windowComponentRef.destroy(); if (this.backdropComponentRef) { /** @type {?} */ const backdropNativeEl = this.backdropComponentRef.location.nativeElement; backdropNativeEl.parentNode.removeChild(backdropNativeEl); this.backdropComponentRef.destroy(); } if (this.contentRef && this.contentRef.viewRef) { this.contentRef.viewRef.destroy(); } this.windowComponentRef = null; this.backdropComponentRef = null; this.contentRef = null; } } if (false) { /** @type {?} */ LambModalRef.prototype.resolve; /** @type {?} */ LambModalRef.prototype.reject; /** * Una promesa que se resuelve cuando se cierra un modal y se rechaza cuando se desestima un modal. * @type {?} */ LambModalRef.prototype.result; /** @type {?} */ LambModalRef.prototype.windowComponentRef; /** @type {?} */ LambModalRef.prototype.contentRef; /** @type {?} */ LambModalRef.prototype.backdropComponentRef; /** @type {?} */ LambModalRef.prototype.beforeDismiss; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtcmVmLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbGFtYi13ZWItbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBU0EsTUFBTTs7Ozs7O0lBS0YsS0FBSyxDQUFDLE1BQVksSUFBVSxDQUFDOzs7Ozs7SUFNN0IsT0FBTyxDQUFDLE1BQVksSUFBVSxDQUFDO0NBQ2xDOzs7O0FBS0QsTUFBTTs7Ozs7OztJQXNCRixZQUNZLGtCQUEwRCxFQUMxRCxVQUFzQixFQUN0QixvQkFBK0QsRUFDL0QsYUFBd0I7UUFIeEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF3QztRQUMxRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMkM7UUFDL0Qsa0JBQWEsR0FBYixhQUFhLENBQVc7UUFFaEMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUvRixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Ozs7OztJQTNCRCxJQUFJLGlCQUFpQjtRQUNqQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDL0IsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUNqRCxDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBR0QsSUFBSSxpQkFBaUIsQ0FBQyxRQUFhLElBQUksQ0FBQzs7Ozs7O0lBMEJ4QyxLQUFLLENBQUMsTUFBWTtRQUVkLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMvQixDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBTUQsT0FBTyxDQUFDLE1BQVk7UUFDaEIseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUV2QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1lBQzFCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDL0IsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOzs7O0lBRU8sbUJBQW1COztjQUNqQixjQUFjLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxhQUFhO1FBQ3JFLGNBQWMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVsQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDOztrQkFDdEIsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxhQUFhO1lBQ3pFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDeEMsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztDQUNKOzs7SUFuRkcsK0JBQXdDOztJQUN4Qyw4QkFBdUM7Ozs7O0lBa0J2Qyw4QkFBcUI7O0lBR2pCLDBDQUFrRTs7SUFDbEUsa0NBQThCOztJQUM5Qiw0Q0FBdUU7O0lBQ3ZFLHFDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMYW1iTW9kYWxCYWNrZHJvcENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtYmFja2Ryb3AuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGFtYk1vZGFsV2luZG93Q29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbC13aW5kb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29udGVudFJlZiB9IGZyb20gJy4vdXRpbC9wb3B1cCc7XHJcblxyXG4vKipcclxuICogVW5hIHJlZmVyZW5jaWEgYSB1biBtb2RhbCBhY3Rpdm8gKGFjdHVhbG1lbnRlIGFiaWVydG8pLiBJbnN0YW5jaWFzIGRlIGVzdGEgY2xhc2VcclxuICogcHVlZGUgc2VyIGlueWVjdGFkbyBlbiBjb21wb25lbnRlcyBwYXNhZG9zIOKAi+KAi2NvbW8gY29udGVuaWRvIG1vZGFsLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIExhbWJBY3RpdmVNb2RhbCB7XHJcbiAgICAvKipcclxuICAgICAqIFNlIHB1ZWRlIHVzYXIgcGFyYSBjZXJyYXIgdW4gbW9kYWwsIHBhc2FuZG8gdW4gcmVzdWx0YWRvIG9wY2lvbmFsLlxyXG4gICAgICogIEBwYXJhbSByZWFzb24gcmFzdWx0YWRvLlxyXG4gICAgICovXHJcbiAgICBjbG9zZShyZXN1bHQ/OiBhbnkpOiB2b2lkIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2UgcHVlZGUgdXNhciBwYXJhIGRlc2NhcnRhciB1biBtb2RhbCwgcGFzYW5kbyB1biBtb3Rpdm8gb3BjaW9uYWwuXHJcbiAgICAgKiBAcGFyYW0gcmVhc29uIHJhem9uIHBvciBxdWUgc2UgZGVzY2FydG8uXHJcbiAgICAgKi9cclxuICAgIGRpc21pc3MocmVhc29uPzogYW55KTogdm9pZCB7IH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFVuYSByZWZlcmVuY2lhIGEgdW4gbW9kYWwgcmVjaWVudGVtZW50ZSBhYmllcnRvLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIExhbWJNb2RhbFJlZiB7XHJcbiAgICBwcml2YXRlIHJlc29sdmU6IChyZXN1bHQ/OiBhbnkpID0+IHZvaWQ7XHJcbiAgICBwcml2YXRlIHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIExhIGluc3RhbmNpYSBkZSBjb21wb25lbnRlIHV0aWxpemFkYSBjb21vIGNvbnRlbmlkbyBtb2RhbC5cclxuICAgICAqIEluZGVmaW5pZG8gY3VhbmRvIHNlIHV0aWxpemEgdW4gVGVtcGxhdGVSZWYgY29tbyBjb250ZW5pZG8gbW9kYWwuXHJcbiAgICAgKi9cclxuICAgIGdldCBjb21wb25lbnRJbnN0YW5jZSgpOiBhbnkge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRSZWYuY29tcG9uZW50UmVmKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnRSZWYuY29tcG9uZW50UmVmLmluc3RhbmNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBzb2xvIGVzIG5lY2VzYXJpbyBwYXJhIG1hbnRlbmVyIGxhIGNvbXBhdGliaWxpZGFkIGNvbiBUUzEuOFxyXG4gICAgc2V0IGNvbXBvbmVudEluc3RhbmNlKGluc3RhbmNlOiBhbnkpIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVW5hIHByb21lc2EgcXVlIHNlIHJlc3VlbHZlIGN1YW5kbyBzZSBjaWVycmEgdW4gbW9kYWwgeSBzZSByZWNoYXphIGN1YW5kbyBzZSBkZXNlc3RpbWEgdW4gbW9kYWwuXHJcbiAgICAgKi9cclxuICAgIHJlc3VsdDogUHJvbWlzZTxhbnk+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgd2luZG93Q29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8TGFtYk1vZGFsV2luZG93Q29tcG9uZW50PixcclxuICAgICAgICBwcml2YXRlIGNvbnRlbnRSZWY6IENvbnRlbnRSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBiYWNrZHJvcENvbXBvbmVudFJlZj86IENvbXBvbmVudFJlZjxMYW1iTW9kYWxCYWNrZHJvcENvbXBvbmVudD4sXHJcbiAgICAgICAgcHJpdmF0ZSBiZWZvcmVEaXNtaXNzPzogRnVuY3Rpb24sXHJcbiAgICApIHtcclxuICAgICAgICB3aW5kb3dDb21wb25lbnRSZWYuaW5zdGFuY2UuZGlzbWlzc0V2ZW50LnN1YnNjcmliZSgocmVhc29uOiBhbnkpID0+IHsgdGhpcy5kaXNtaXNzKHJlYXNvbik7IH0pO1xyXG5cclxuICAgICAgICB0aGlzLnJlc3VsdCA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZXNvbHZlID0gcmVzb2x2ZTtcclxuICAgICAgICAgICAgdGhpcy5yZWplY3QgPSByZWplY3Q7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5yZXN1bHQudGhlbihudWxsLCAoKSA9PiB7IH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2UgcHVlZGUgdXNhciBwYXJhIGNlcnJhciB1biBtb2RhbCwgcGFzYW5kbyB1biByZXN1bHRhZG8gb3BjaW9uYWwuXHJcbiAgICAgKiBAcGFyYW0gcmVzdWx0XHJcbiAgICAgKi9cclxuICAgIGNsb3NlKHJlc3VsdD86IGFueSk6IGFueSB7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLndpbmRvd0NvbXBvbmVudFJlZikge1xyXG4gICAgICAgICAgICB0aGlzLnJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICAgICAgdGhpcy5yZW1vdmVNb2RhbEVsZW1lbnRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2UgcHVlZGUgdXNhciBwYXJhIGRlc2NhcnRhciB1biBtb2RhbCwgcGFzYW5kbyB1biBtb3Rpdm8gb3BjaW9uYWwuXHJcbiAgICAgKiBAcGFyYW0gcmVhc29uXHJcbiAgICAgKi9cclxuICAgIGRpc21pc3MocmVhc29uPzogYW55KTogdm9pZCB7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3JlYXNvbicpO1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKHJlYXNvbik7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLndpbmRvd0NvbXBvbmVudFJlZikge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuYmVmb3JlRGlzbWlzcyB8fCB0aGlzLmJlZm9yZURpc21pc3MoKSAhPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVqZWN0KHJlYXNvbik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZU1vZGFsRWxlbWVudHMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlbW92ZU1vZGFsRWxlbWVudHMoKSB7XHJcbiAgICAgICAgY29uc3Qgd2luZG93TmF0aXZlRWwgPSB0aGlzLndpbmRvd0NvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIHdpbmRvd05hdGl2ZUVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQod2luZG93TmF0aXZlRWwpO1xyXG4gICAgICAgIHRoaXMud2luZG93Q29tcG9uZW50UmVmLmRlc3Ryb3koKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuYmFja2Ryb3BDb21wb25lbnRSZWYpIHtcclxuICAgICAgICAgICAgY29uc3QgYmFja2Ryb3BOYXRpdmVFbCA9IHRoaXMuYmFja2Ryb3BDb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICAgICAgYmFja2Ryb3BOYXRpdmVFbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGJhY2tkcm9wTmF0aXZlRWwpO1xyXG4gICAgICAgICAgICB0aGlzLmJhY2tkcm9wQ29tcG9uZW50UmVmLmRlc3Ryb3koKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRSZWYgJiYgdGhpcy5jb250ZW50UmVmLnZpZXdSZWYpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50UmVmLnZpZXdSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy53aW5kb3dDb21wb25lbnRSZWYgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuYmFja2Ryb3BDb21wb25lbnRSZWYgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuY29udGVudFJlZiA9IG51bGw7XHJcbiAgICB9XHJcbn1cclxuIl19