UNPKG

ng-zorro-antd-mobile

Version:

An enterprise-class mobile UI components based on Ant Design and Angular

67 lines (66 loc) 5.05 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Injectable, ViewContainerRef } from '@angular/core'; import { Overlay, OverlayConfig } from '@angular/cdk/overlay'; import { ComponentPortal } from '@angular/cdk/portal'; export class PopupService { /** * @param {?} _overlay * @param {?} _viewContainerRef */ constructor(_overlay, _viewContainerRef) { this._overlay = _overlay; this._viewContainerRef = _viewContainerRef; PopupService.viewContainerRef = this._viewContainerRef; PopupService.overlay = this._overlay; } /** * @param {?} component * @param {?=} childInjector * @return {?} */ static showPopup(component, childInjector) { /** @type {?} */ let overlayConfig = new OverlayConfig(); overlayConfig.hasBackdrop = true; PopupService.overlayRef = PopupService.overlay.create(overlayConfig); PopupService.overlayRef.backdropClick().subscribe(() => { PopupService.overlayRef.dispose(); }); PopupService.overlayRef.attach(new ComponentPortal(component, PopupService.viewContainerRef, childInjector)); } /** * @return {?} */ static hidePopup() { if (PopupService.overlayRef) { PopupService.overlayRef.dispose(); } } } PopupService.viewContainerRef = null; PopupService.overlay = null; PopupService.overlayRef = null; PopupService.decorators = [ { type: Injectable } ]; /** @nocollapse */ PopupService.ctorParameters = () => [ { type: Overlay }, { type: ViewContainerRef } ]; if (false) { /** @type {?} */ PopupService.viewContainerRef; /** @type {?} */ PopupService.overlay; /** @type {?} */ PopupService.overlayRef; /** @type {?} */ PopupService.prototype._overlay; /** @type {?} */ PopupService.prototype._viewContainerRef; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXpvcnJvLWFudGQtbW9iaWxlLyIsInNvdXJjZXMiOlsiY29yZS9zZXJ2aWNlcy9wb3B1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR3RELE1BQU07Ozs7O0lBS0osWUFDUyxVQUNBO1FBREEsYUFBUSxHQUFSLFFBQVE7UUFDUixzQkFBaUIsR0FBakIsaUJBQWlCO1FBRXhCLFlBQVksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDdkQsWUFBWSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0tBQ3RDOzs7Ozs7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxhQUF3Qjs7UUFDbEQsSUFBSSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUN4QyxhQUFhLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUNqQyxZQUFZLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JFLFlBQVksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRCxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ25DLENBQUMsQ0FBQztRQUVILFlBQVksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksZUFBZSxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztLQUM5Rzs7OztJQUVELE1BQU0sQ0FBQyxTQUFTO1FBQ2QsSUFBSSxZQUFZLENBQUMsVUFBVSxFQUFFO1lBQzNCLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbkM7S0FDRjs7Z0NBM0IyQyxJQUFJO3VCQUN0QixJQUFJOzBCQUNFLElBQUk7O1lBSnJDLFVBQVU7Ozs7WUFIRixPQUFPO1lBRGUsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBvcHVwU2VydmljZSB7XG4gIHN0YXRpYyB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmID0gbnVsbDtcbiAgc3RhdGljIG92ZXJsYXk6IE92ZXJsYXkgPSBudWxsO1xuICBzdGF0aWMgb3ZlcmxheVJlZjogT3ZlcmxheVJlZiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIF9vdmVybGF5OiBPdmVybGF5LFxuICAgIHB1YmxpYyBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICApIHtcbiAgICBQb3B1cFNlcnZpY2Uudmlld0NvbnRhaW5lclJlZiA9IHRoaXMuX3ZpZXdDb250YWluZXJSZWY7XG4gICAgUG9wdXBTZXJ2aWNlLm92ZXJsYXkgPSB0aGlzLl9vdmVybGF5O1xuICB9XG5cbiAgc3RhdGljIHNob3dQb3B1cChjb21wb25lbnQsIGNoaWxkSW5qZWN0b3I/OiBJbmplY3Rvcik6IHZvaWQge1xuICAgIGxldCBvdmVybGF5Q29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoKTtcbiAgICBvdmVybGF5Q29uZmlnLmhhc0JhY2tkcm9wID0gdHJ1ZTtcbiAgICBQb3B1cFNlcnZpY2Uub3ZlcmxheVJlZiA9IFBvcHVwU2VydmljZS5vdmVybGF5LmNyZWF0ZShvdmVybGF5Q29uZmlnKTtcbiAgICBQb3B1cFNlcnZpY2Uub3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIFBvcHVwU2VydmljZS5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICB9KTtcblxuICAgIFBvcHVwU2VydmljZS5vdmVybGF5UmVmLmF0dGFjaChuZXcgQ29tcG9uZW50UG9ydGFsKGNvbXBvbmVudCwgUG9wdXBTZXJ2aWNlLnZpZXdDb250YWluZXJSZWYsIGNoaWxkSW5qZWN0b3IpKTtcbiAgfVxuXG4gIHN0YXRpYyBoaWRlUG9wdXAoKTogdm9pZCB7XG4gICAgaWYgKFBvcHVwU2VydmljZS5vdmVybGF5UmVmKSB7XG4gICAgICBQb3B1cFNlcnZpY2Uub3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=