UNPKG

@addapptables/notifier

Version:
113 lines 7.57 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable, ApplicationRef, Inject, Injector, ComponentFactoryResolver } from '@angular/core'; import { NotifierContainerService } from './notifier-container.service'; import { DOCUMENT } from '@angular/common'; import { DomPortalOutlet } from '@angular/cdk/portal'; import { NOTIFIER } from '../constants'; /** @type {?} */ var nextUniqueId = 0; var NotifierPortalService = /** @class */ (function () { function NotifierPortalService(_notifierContainerService, _document, _injector, _componentFactoryResolver) { this._notifierContainerService = _notifierContainerService; this._document = _document; this._injector = _injector; this._componentFactoryResolver = _componentFactoryResolver; } /** * @return {?} */ NotifierPortalService.prototype.create = /** * @return {?} */ function () { /** @type {?} */ var pane = this._createPaneElement(); /** @type {?} */ var portal = this._createPortalOutlet(pane); return portal; }; /** * @private * @param {?} pane * @return {?} */ NotifierPortalService.prototype._createPortalOutlet = /** * @private * @param {?} pane * @return {?} */ function (pane) { if (!this._appRef) { this._appRef = this._injector.get(ApplicationRef); } return new DomPortalOutlet(pane, this._componentFactoryResolver, this._appRef, this._injector); }; /** * @private * @return {?} */ NotifierPortalService.prototype._createPaneElement = /** * @private * @return {?} */ function () { /** @type {?} */ var pane = this._document.createElement('div'); pane.id = "" + (NOTIFIER + nextUniqueId++); this._notifierContainerService.getContainerElement().appendChild(pane); return pane; }; Object.defineProperty(NotifierPortalService.prototype, "getLastUniqueId", { get: /** * @return {?} */ function () { return "" + (NOTIFIER + (nextUniqueId - 1)); }, enumerable: true, configurable: true }); NotifierPortalService.decorators = [ { type: Injectable } ]; /** @nocollapse */ NotifierPortalService.ctorParameters = function () { return [ { type: NotifierContainerService }, { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }, { type: Injector }, { type: ComponentFactoryResolver } ]; }; return NotifierPortalService; }()); export { NotifierPortalService }; if (false) { /** * @type {?} * @private */ NotifierPortalService.prototype._appRef; /** * @type {?} * @private */ NotifierPortalService.prototype._notifierContainerService; /** * @type {?} * @private */ NotifierPortalService.prototype._document; /** * @type {?} * @private */ NotifierPortalService.prototype._injector; /** * @type {?} * @private */ NotifierPortalService.prototype._componentFactoryResolver; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpZXItcG9ydGFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRkYXBwdGFibGVzL25vdGlmaWVyLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL25vdGlmaWVyLXBvcnRhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7SUFFcEMsWUFBWSxHQUFHLENBQUM7QUFFcEI7SUFLRSwrQkFDVSx5QkFBbUQsRUFDakMsU0FBYyxFQUNoQyxTQUFtQixFQUNuQix5QkFBbUQ7UUFIbkQsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEwQjtRQUNqQyxjQUFTLEdBQVQsU0FBUyxDQUFLO1FBQ2hDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEwQjtJQUN6RCxDQUFDOzs7O0lBRUwsc0NBQU07OztJQUFOOztZQUNRLElBQUksR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7O1lBQ2hDLE1BQU0sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1FBQzdDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Ozs7OztJQUVPLG1EQUFtQjs7Ozs7SUFBM0IsVUFBNEIsSUFBaUI7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBaUIsY0FBYyxDQUFDLENBQUM7U0FDbkU7UUFDRCxPQUFPLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakcsQ0FBQzs7Ozs7SUFFTyxrREFBa0I7Ozs7SUFBMUI7O1lBQ1EsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztRQUNoRCxJQUFJLENBQUMsRUFBRSxHQUFHLE1BQUcsUUFBUSxHQUFHLFlBQVksRUFBRSxDQUFFLENBQUM7UUFDekMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLG1CQUFtQixFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELHNCQUFJLGtEQUFlOzs7O1FBQW5CO1lBQ0UsT0FBTyxNQUFHLFFBQVEsR0FBRyxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBRSxDQUFDO1FBQzVDLENBQUM7OztPQUFBOztnQkFsQ0YsVUFBVTs7OztnQkFQRix3QkFBd0I7Z0RBYzVCLE1BQU0sU0FBQyxRQUFRO2dCQWZ5QixRQUFRO2dCQUFFLHdCQUF3Qjs7SUEyQy9FLDRCQUFDO0NBQUEsQUFuQ0QsSUFtQ0M7U0FsQ1kscUJBQXFCOzs7Ozs7SUFFaEMsd0NBQWdDOzs7OztJQUc5QiwwREFBMkQ7Ozs7O0lBQzNELDBDQUF3Qzs7Ozs7SUFDeEMsMENBQTJCOzs7OztJQUMzQiwwREFBMkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBBcHBsaWNhdGlvblJlZiwgSW5qZWN0LCBJbmplY3RvciwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmllckNvbnRhaW5lclNlcnZpY2UgfSBmcm9tICcuL25vdGlmaWVyLWNvbnRhaW5lci5zZXJ2aWNlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERvbVBvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgTk9USUZJRVIgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vdGlmaWVyUG9ydGFsU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBfYXBwUmVmOiBBcHBsaWNhdGlvblJlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9ub3RpZmllckNvbnRhaW5lclNlcnZpY2U6IE5vdGlmaWVyQ29udGFpbmVyU2VydmljZSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogYW55LFxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIF9jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlclxuICApIHsgfVxuXG4gIGNyZWF0ZSgpIHtcbiAgICBjb25zdCBwYW5lID0gdGhpcy5fY3JlYXRlUGFuZUVsZW1lbnQoKTtcbiAgICBjb25zdCBwb3J0YWwgPSB0aGlzLl9jcmVhdGVQb3J0YWxPdXRsZXQocGFuZSk7XG4gICAgcmV0dXJuIHBvcnRhbDtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZVBvcnRhbE91dGxldChwYW5lOiBIVE1MRWxlbWVudCk6IERvbVBvcnRhbE91dGxldCB7XG4gICAgaWYgKCF0aGlzLl9hcHBSZWYpIHtcbiAgICAgIHRoaXMuX2FwcFJlZiA9IHRoaXMuX2luamVjdG9yLmdldDxBcHBsaWNhdGlvblJlZj4oQXBwbGljYXRpb25SZWYpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IERvbVBvcnRhbE91dGxldChwYW5lLCB0aGlzLl9jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIHRoaXMuX2FwcFJlZiwgdGhpcy5faW5qZWN0b3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlUGFuZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IHBhbmUgPSB0aGlzLl9kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBwYW5lLmlkID0gYCR7Tk9USUZJRVIgKyBuZXh0VW5pcXVlSWQrK31gO1xuICAgIHRoaXMuX25vdGlmaWVyQ29udGFpbmVyU2VydmljZS5nZXRDb250YWluZXJFbGVtZW50KCkuYXBwZW5kQ2hpbGQocGFuZSk7XG4gICAgcmV0dXJuIHBhbmU7XG4gIH1cblxuICBnZXQgZ2V0TGFzdFVuaXF1ZUlkKCkge1xuICAgIHJldHVybiBgJHtOT1RJRklFUiArIChuZXh0VW5pcXVlSWQgLSAxKX1gO1xuICB9XG59XG4iXX0=