UNPKG

@stratio/egeo

Version:
128 lines 7.51 kB
/** * @fileoverview added by tsickle * Generated from: lib/utils/event-window-manager.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @abstract */ var /** * @abstract */ EventWindowManager = /** @class */ (function () { function EventWindowManager(_renderer, _cd, _elementRef) { this._renderer = _renderer; this._cd = _cd; this._elementRef = _elementRef; } /** * @protected * @return {?} */ EventWindowManager.prototype.openElement = /** * @protected * @return {?} */ function () { var _this = this; if (this.isActive) { this.closeElement(); } else { this.isActive = !this.isActive; setTimeout((/** * @return {?} */ function () { _this.globalListener = _this._renderer.listen('document', 'click', _this.onClickOutside.bind(_this)); _this.forceClose = _this._renderer.listen('document', 'stForceClose', _this.onForceClose.bind(_this)); })); } }; /** * @protected * @return {?} */ EventWindowManager.prototype.closeElement = /** * @protected * @return {?} */ function () { if (this.isActive) { this.isActive = !this.isActive; this._cd.markForCheck(); if (this.globalListener !== undefined && typeof (this.globalListener) === 'function') { this.globalListener(); this.forceClose(); } } }; /** * @private * @param {?} event * @return {?} */ EventWindowManager.prototype.onClickOutside = /** * @private * @param {?} event * @return {?} */ function (event) { if (!this._elementRef.nativeElement.contains(event.target)) { this.closeElement(); } }; /** * @private * @param {?} event * @return {?} */ EventWindowManager.prototype.onForceClose = /** * @private * @param {?} event * @return {?} */ function (event) { this.closeElement(); }; return EventWindowManager; }()); /** * @abstract */ export { EventWindowManager }; if (false) { /** @type {?} */ EventWindowManager.prototype.isActive; /** * @type {?} * @private */ EventWindowManager.prototype.globalListener; /** * @type {?} * @private */ EventWindowManager.prototype.forceClose; /** * @type {?} * @private */ EventWindowManager.prototype._renderer; /** * @type {?} * @private */ EventWindowManager.prototype._cd; /** * @type {?} * @private */ EventWindowManager.prototype._elementRef; /** * @abstract * @return {?} */ EventWindowManager.prototype.ngOnDestroy = function () { }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtd2luZG93LW1hbmFnZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3RyYXRpby9lZ2VvLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL2V2ZW50LXdpbmRvdy1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBWUE7Ozs7SUFLRyw0QkFBb0IsU0FBb0IsRUFBVSxHQUFzQixFQUFVLFdBQXVCO1FBQXJGLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBQUksQ0FBQzs7Ozs7SUFJcEcsd0NBQVc7Ozs7SUFBckI7UUFBQSxpQkFVQztRQVRFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdEI7YUFBTTtZQUNKLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQy9CLFVBQVU7OztZQUFDO2dCQUNSLEtBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxLQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNqRyxLQUFJLENBQUMsVUFBVSxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxjQUFjLEVBQUUsS0FBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSSxDQUFDLENBQUMsQ0FBQztZQUNyRyxDQUFDLEVBQUMsQ0FBQztTQUNMO0lBQ0osQ0FBQzs7Ozs7SUFFUyx5Q0FBWTs7OztJQUF0QjtRQUNHLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUMvQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxVQUFVLEVBQUU7Z0JBQ25GLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ3BCO1NBQ0g7SUFDSixDQUFDOzs7Ozs7SUFFTywyQ0FBYzs7Ozs7SUFBdEIsVUFBdUIsS0FBaUI7UUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3RCO0lBQ0osQ0FBQzs7Ozs7O0lBRU8seUNBQVk7Ozs7O0lBQXBCLFVBQXFCLEtBQWlCO1FBQ25DLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0oseUJBQUM7QUFBRCxDQUFDLEFBekNELElBeUNDOzs7Ozs7O0lBeENFLHNDQUF5Qjs7Ozs7SUFDekIsNENBQWlDOzs7OztJQUNqQyx3Q0FBNkI7Ozs7O0lBRWpCLHVDQUE0Qjs7Ozs7SUFBRSxpQ0FBOEI7Ozs7O0lBQUUseUNBQStCOzs7OztJQUV6RywyREFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogwqkgMjAxNyBTdHJhdGlvIEJpZyBEYXRhIEluYy4sIFN1Y3Vyc2FsIGVuIEVzcGHDsWEuXG4gKlxuICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wLlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTtcbiAqIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuXG4gKiBTZWUgdGhlIHRlcm1zIG9mIHRoZSBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAuXG4gKi9cbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBFbGVtZW50UmVmLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEV2ZW50V2luZG93TWFuYWdlciB7XG4gICBwdWJsaWMgaXNBY3RpdmU6IGJvb2xlYW47XG4gICBwcml2YXRlIGdsb2JhbExpc3RlbmVyOiBGdW5jdGlvbjtcbiAgIHByaXZhdGUgZm9yY2VDbG9zZTogRnVuY3Rpb247XG5cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikgeyB9XG5cbiAgIGFic3RyYWN0IG5nT25EZXN0cm95KCk6IHZvaWQ7XG5cbiAgIHByb3RlY3RlZCBvcGVuRWxlbWVudCgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgICB0aGlzLmNsb3NlRWxlbWVudCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5nbG9iYWxMaXN0ZW5lciA9IHRoaXMuX3JlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCB0aGlzLm9uQ2xpY2tPdXRzaWRlLmJpbmQodGhpcykpO1xuICAgICAgICAgICAgdGhpcy5mb3JjZUNsb3NlID0gdGhpcy5fcmVuZGVyZXIubGlzdGVuKCdkb2N1bWVudCcsICdzdEZvcmNlQ2xvc2UnLCB0aGlzLm9uRm9yY2VDbG9zZS5iaW5kKHRoaXMpKTtcbiAgICAgICAgIH0pO1xuICAgICAgfVxuICAgfVxuXG4gICBwcm90ZWN0ZWQgY2xvc2VFbGVtZW50KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgaWYgKHRoaXMuZ2xvYmFsTGlzdGVuZXIgIT09IHVuZGVmaW5lZCAmJiB0eXBlb2YgKHRoaXMuZ2xvYmFsTGlzdGVuZXIpID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aGlzLmdsb2JhbExpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmZvcmNlQ2xvc2UoKTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBvbkNsaWNrT3V0c2lkZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgaWYgKCF0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgdGhpcy5jbG9zZUVsZW1lbnQoKTtcbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBvbkZvcmNlQ2xvc2UoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgIHRoaXMuY2xvc2VFbGVtZW50KCk7XG4gICB9XG59XG4iXX0=