UNPKG

@stratio/egeo

Version:
124 lines 7.42 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) { this._renderer = _renderer; this._cd = _cd; } /** * @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._eventElementRef.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 {?} */ EventWindowManager.prototype._eventElementRef; /** * @type {?} * @private */ EventWindowManager.prototype.globalListener; /** * @type {?} * @private */ EventWindowManager.prototype.forceClose; /** * @type {?} * @private */ EventWindowManager.prototype._renderer; /** * @type {?} * @private */ EventWindowManager.prototype._cd; /** * @abstract * @return {?} */ EventWindowManager.prototype.ngOnDestroy = function () { }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtd2luZG93LW1hbmFnZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3RyYXRpby9lZ2VvLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL2V2ZW50LXdpbmRvdy1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBWUE7Ozs7SUFPRyw0QkFBb0IsU0FBb0IsRUFBVSxHQUFzQjtRQUFwRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFBSSxDQUFDOzs7OztJQUluRSx3Q0FBVzs7OztJQUFyQjtRQUFBLGlCQVVDO1FBVEUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUN0QjthQUFNO1lBQ0osSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDL0IsVUFBVTs7O1lBQUM7Z0JBQ1IsS0FBSSxDQUFDLGNBQWMsR0FBRyxLQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ2pHLEtBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsRUFBRSxLQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3JHLENBQUMsRUFBQyxDQUFDO1NBQ0w7SUFDSixDQUFDOzs7OztJQUVTLHlDQUFZOzs7O0lBQXRCO1FBQ0csSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLFVBQVUsRUFBRTtnQkFDbkYsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDcEI7U0FDSDtJQUNKLENBQUM7Ozs7OztJQUVPLDJDQUFjOzs7OztJQUF0QixVQUF1QixLQUFpQjtRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzlELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUN0QjtJQUNKLENBQUM7Ozs7OztJQUVPLHlDQUFZOzs7OztJQUFwQixVQUFxQixLQUFpQjtRQUNuQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUNKLHlCQUFDO0FBQUQsQ0FBQyxBQTNDRCxJQTJDQzs7Ozs7OztJQTFDRSxzQ0FBeUI7O0lBRXpCLDhDQUE2Qzs7Ozs7SUFDN0MsNENBQWlDOzs7OztJQUNqQyx3Q0FBNkI7Ozs7O0lBRWpCLHVDQUE0Qjs7Ozs7SUFBRSxpQ0FBOEI7Ozs7O0lBRXhFLDJEQUE2QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiDCqSAyMDE3IFN0cmF0aW8gQmlnIERhdGEgSW5jLiwgU3VjdXJzYWwgZW4gRXNwYcOxYS5cbiAqXG4gKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAuXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZO1xuICogd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS5cbiAqIFNlZSB0aGUgdGVybXMgb2YgdGhlIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMC5cbiAqL1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRXZlbnRXaW5kb3dNYW5hZ2VyIHtcbiAgIHB1YmxpYyBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAgcHVibGljIGFic3RyYWN0IF9ldmVudEVsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gICBwcml2YXRlIGdsb2JhbExpc3RlbmVyOiBGdW5jdGlvbjtcbiAgIHByaXZhdGUgZm9yY2VDbG9zZTogRnVuY3Rpb247XG5cbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgIGFic3RyYWN0IG5nT25EZXN0cm95KCk6IHZvaWQ7XG5cbiAgIHByb3RlY3RlZCBvcGVuRWxlbWVudCgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKSB7XG4gICAgICAgICB0aGlzLmNsb3NlRWxlbWVudCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5nbG9iYWxMaXN0ZW5lciA9IHRoaXMuX3JlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCB0aGlzLm9uQ2xpY2tPdXRzaWRlLmJpbmQodGhpcykpO1xuICAgICAgICAgICAgdGhpcy5mb3JjZUNsb3NlID0gdGhpcy5fcmVuZGVyZXIubGlzdGVuKCdkb2N1bWVudCcsICdzdEZvcmNlQ2xvc2UnLCB0aGlzLm9uRm9yY2VDbG9zZS5iaW5kKHRoaXMpKTtcbiAgICAgICAgIH0pO1xuICAgICAgfVxuICAgfVxuXG4gICBwcm90ZWN0ZWQgY2xvc2VFbGVtZW50KCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUpIHtcbiAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcbiAgICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgaWYgKHRoaXMuZ2xvYmFsTGlzdGVuZXIgIT09IHVuZGVmaW5lZCAmJiB0eXBlb2YgKHRoaXMuZ2xvYmFsTGlzdGVuZXIpID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aGlzLmdsb2JhbExpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmZvcmNlQ2xvc2UoKTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgIH1cblxuICAgcHJpdmF0ZSBvbkNsaWNrT3V0c2lkZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgaWYgKCF0aGlzLl9ldmVudEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpKSB7XG4gICAgICAgICB0aGlzLmNsb3NlRWxlbWVudCgpO1xuICAgICAgfVxuICAgfVxuXG4gICBwcml2YXRlIG9uRm9yY2VDbG9zZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgdGhpcy5jbG9zZUVsZW1lbnQoKTtcbiAgIH1cbn1cbiJdfQ==