UNPKG

ngx-modialog-10

Version:
88 lines 6.84 kB
/** * @fileoverview added by tsickle * Generated from: lib/providers/dom-modal-renderer.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { ApplicationRef, Injector, Injectable } from '@angular/core'; import { createComponent } from '../framework/createComponent'; import { DialogRef } from '../models/dialog-ref'; import { ModalOverlay } from '../overlay/index'; var DOMOverlayRenderer = /** @class */ (function () { function DOMOverlayRenderer(appRef, injector) { this.appRef = appRef; this.injector = injector; this.isDoc = !(typeof document === 'undefined' || !document); } /** * @param {?} dialog * @param {?} vcRef * @param {?=} injector * @return {?} */ DOMOverlayRenderer.prototype.render = /** * @param {?} dialog * @param {?} vcRef * @param {?=} injector * @return {?} */ function (dialog, vcRef, injector) { var _this = this; if (!injector) { injector = this.injector; } /** @type {?} */ var cmpRef = createComponent({ component: ModalOverlay, vcRef: vcRef, injector: Injector.create({ providers: [ { provide: DialogRef, useValue: dialog } ], parent: injector }) }); if (!vcRef) { this.appRef.attachView(cmpRef.hostView); // TODO: doesn't look like this is needed, explore. leaving now to be on the safe side. dialog.onDestroy.subscribe((/** * @return {?} */ function () { return _this.appRef.detachView(cmpRef.hostView); })); } if (vcRef && dialog.inElement) { vcRef.element.nativeElement.appendChild(cmpRef.location.nativeElement); } else if (this.isDoc) { document.body.appendChild(cmpRef.location.nativeElement); } return cmpRef; }; DOMOverlayRenderer.decorators = [ { type: Injectable } ]; /** @nocollapse */ DOMOverlayRenderer.ctorParameters = function () { return [ { type: ApplicationRef }, { type: Injector } ]; }; return DOMOverlayRenderer; }()); export { DOMOverlayRenderer }; if (false) { /** * @type {?} * @private */ DOMOverlayRenderer.prototype.isDoc; /** * @type {?} * @private */ DOMOverlayRenderer.prototype.appRef; /** * @type {?} * @private */ DOMOverlayRenderer.prototype.injector; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLW1vZGFsLXJlbmRlcmVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW1vZGlhbG9nLTEwLyIsInNvdXJjZXMiOlsibGliL3Byb3ZpZGVycy9kb20tbW9kYWwtcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsY0FBYyxFQUdkLFFBQVEsRUFDUixVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQ7SUFLRSw0QkFBb0IsTUFBc0IsRUFBVSxRQUFrQjtRQUFsRCxXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGOUQsVUFBSyxHQUFZLENBQUMsQ0FBQyxPQUFPLFFBQVEsS0FBSyxXQUFXLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUd6RSxDQUFDOzs7Ozs7O0lBRUQsbUNBQU07Ozs7OztJQUFOLFVBQU8sTUFBc0IsRUFBRSxLQUF1QixFQUFFLFFBQW1CO1FBQTNFLGlCQThCQztRQTdCQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7U0FDMUI7O1lBRUssTUFBTSxHQUFHLGVBQWUsQ0FBQztZQUM3QixTQUFTLEVBQUUsWUFBWTtZQUN2QixLQUFLLE9BQUE7WUFDTCxRQUFRLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQztnQkFDeEIsU0FBUyxFQUFFO29CQUNULEVBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFDO2lCQUN2QztnQkFDRCxNQUFNLEVBQUUsUUFBUTthQUNqQixDQUFDO1NBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFeEMsdUZBQXVGO1lBQ3ZGLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUzs7O1lBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBdkMsQ0FBdUMsRUFBQyxDQUFDO1NBQzNFO1FBRUQsSUFBSSxLQUFLLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRTtZQUM3QixLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUN4RTthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNyQixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzFEO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7Z0JBdENGLFVBQVU7Ozs7Z0JBWlQsY0FBYztnQkFHZCxRQUFROztJQWdEVix5QkFBQztDQUFBLEFBdkNELElBdUNDO1NBdENZLGtCQUFrQjs7Ozs7O0lBRTdCLG1DQUF5RTs7Ozs7SUFFN0Qsb0NBQThCOzs7OztJQUFFLHNDQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBDb21wb25lbnRSZWYsXG4gIEluamVjdG9yLFxuICBJbmplY3RhYmxlXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBjcmVhdGVDb21wb25lbnQgfSBmcm9tICcuLi9mcmFtZXdvcmsvY3JlYXRlQ29tcG9uZW50JztcbmltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJy4uL21vZGVscy9kaWFsb2ctcmVmJztcbmltcG9ydCB7IE92ZXJsYXlSZW5kZXJlciB9IGZyb20gJy4uL21vZGVscy90b2tlbnMnO1xuaW1wb3J0IHsgTW9kYWxPdmVybGF5IH0gZnJvbSAnLi4vb3ZlcmxheS9pbmRleCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBET01PdmVybGF5UmVuZGVyZXIgaW1wbGVtZW50cyBPdmVybGF5UmVuZGVyZXIge1xuXG4gIHByaXZhdGUgaXNEb2M6IGJvb2xlYW4gPSAhKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcgfHwgIWRvY3VtZW50KTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWYsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gIH1cblxuICByZW5kZXIoZGlhbG9nOiBEaWFsb2dSZWY8YW55PiwgdmNSZWY6IFZpZXdDb250YWluZXJSZWYsIGluamVjdG9yPzogSW5qZWN0b3IpOiBDb21wb25lbnRSZWY8TW9kYWxPdmVybGF5PiB7XG4gICAgaWYgKCFpbmplY3Rvcikge1xuICAgICAgaW5qZWN0b3IgPSB0aGlzLmluamVjdG9yO1xuICAgIH1cblxuICAgIGNvbnN0IGNtcFJlZiA9IGNyZWF0ZUNvbXBvbmVudCh7XG4gICAgICBjb21wb25lbnQ6IE1vZGFsT3ZlcmxheSxcbiAgICAgIHZjUmVmLFxuICAgICAgaW5qZWN0b3I6IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgIHtwcm92aWRlOiBEaWFsb2dSZWYsIHVzZVZhbHVlOiBkaWFsb2d9XG4gICAgICAgIF0sXG4gICAgICAgIHBhcmVudDogaW5qZWN0b3JcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBpZiAoIXZjUmVmKSB7XG4gICAgICB0aGlzLmFwcFJlZi5hdHRhY2hWaWV3KGNtcFJlZi5ob3N0Vmlldyk7XG5cbiAgICAgIC8vIFRPRE86IGRvZXNuJ3QgbG9vayBsaWtlIHRoaXMgaXMgbmVlZGVkLCBleHBsb3JlLiBsZWF2aW5nIG5vdyB0byBiZSBvbiB0aGUgc2FmZSBzaWRlLlxuICAgICAgZGlhbG9nLm9uRGVzdHJveS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5hcHBSZWYuZGV0YWNoVmlldyhjbXBSZWYuaG9zdFZpZXcpKTtcbiAgICB9XG5cbiAgICBpZiAodmNSZWYgJiYgZGlhbG9nLmluRWxlbWVudCkge1xuICAgICAgdmNSZWYuZWxlbWVudC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGNtcFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNEb2MpIHtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoY21wUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIHJldHVybiBjbXBSZWY7XG4gIH1cbn1cblxuIl19