UNPKG

@stratio/egeo

Version:
208 lines 12.4 kB
/** * @fileoverview added by tsickle * Generated from: lib/st-alerts/st-alerts.model.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /* * © 2017 Stratio Big Data Inc., Sucursal en España. * * This software is licensed under the Apache License, Version 2.0. * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the terms of the License for more details. * * SPDX-License-Identifier: Apache-2.0. */ import { Subject } from 'rxjs'; /** @enum {number} */ const STALERT_SEVERITY = { SUCCESS: 0, WARNING: 1, ERROR: 2, }; export { STALERT_SEVERITY }; STALERT_SEVERITY[STALERT_SEVERITY.SUCCESS] = 'SUCCESS'; STALERT_SEVERITY[STALERT_SEVERITY.WARNING] = 'WARNING'; STALERT_SEVERITY[STALERT_SEVERITY.ERROR] = 'ERROR'; export class StAlertLink { } if (false) { /** @type {?} */ StAlertLink.prototype.title; /** @type {?} */ StAlertLink.prototype.link; } export class StAlert { /** * @param {?} id * @param {?} title * @param {?} message * @param {?} severity * @param {?} timeout * @param {?} extendedTimeout * @param {?} link */ constructor(id, title, message, severity, timeout, extendedTimeout, link) { this.id = id; this.title = title; this.message = message; this.severity = severity; this.timeout = timeout; this.extendedTimeout = extendedTimeout; this.link = link; this._readed = false; this._opacity = 0; this._opacityState = new Subject(); this._removeEvent = new Subject(); } /** * @return {?} */ get opacity() { return this._opacityState.asObservable(); } /** * @return {?} */ get removeAlertEvent() { return this._removeEvent.asObservable(); } /** * @return {?} */ notify() { this.setVisible(true); } /** * @return {?} */ pauseNotify() { this._opacity = 1; this._readed = true; this.clearAnimation(); this.stopLife(); this._opacityState.next(this._opacity); } /** * @return {?} */ continueNotify() { this.startLife(); } /** * @return {?} */ cancel() { this.setVisible(false); } /** * @private * @param {?} increase * @return {?} */ setVisible(increase) { this.clearAnimation(); this._changeVisibilityInterval = window.setInterval((/** * @return {?} */ () => this.modifyVisibility(increase)), 50); } /** * @private * @param {?} increase * @return {?} */ modifyVisibility(increase) { this._opacity += increase ? 0.1 : -0.1; if (this._opacity >= 1 || this._opacity <= 0) { this.clearAnimation(); if (increase) { this.startLife(); } else { this.notifyForRemove(); } } this._opacityState.next(this._opacity); } /** * @private * @return {?} */ notifyForRemove() { this._opacityState.complete(); this._removeEvent.next(this); this._removeEvent.complete(); } /** * @private * @return {?} */ clearAnimation() { window.clearInterval(this._changeVisibilityInterval); } /** * @private * @return {?} */ stopLife() { window.clearTimeout(this._lifeTimeout); } /** * @private * @return {?} */ startLife() { /** @type {?} */ let timeout = this._readed ? this.extendedTimeout : this.timeout; this._lifeTimeout = window.setTimeout((/** * @return {?} */ () => this.setVisible(false)), timeout); } } if (false) { /** * @type {?} * @private */ StAlert.prototype._changeVisibilityInterval; /** * @type {?} * @private */ StAlert.prototype._lifeTimeout; /** * @type {?} * @private */ StAlert.prototype._readed; /** * @type {?} * @private */ StAlert.prototype._opacity; /** * @type {?} * @private */ StAlert.prototype._opacityState; /** * @type {?} * @private */ StAlert.prototype._removeEvent; /** @type {?} */ StAlert.prototype.id; /** @type {?} */ StAlert.prototype.title; /** @type {?} */ StAlert.prototype.message; /** @type {?} */ StAlert.prototype.severity; /** @type {?} */ StAlert.prototype.timeout; /** @type {?} */ StAlert.prototype.extendedTimeout; /** @type {?} */ StAlert.prototype.link; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3QtYWxlcnRzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHN0cmF0aW8vZWdlby8iLCJzb3VyY2VzIjpbImxpYi9zdC1hbGVydHMvc3QtYWxlcnRzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQVVBLE9BQU8sRUFBNEIsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUd6RCxNQUFZLGdCQUFnQjtJQUFHLE9BQU8sR0FBQSxFQUFFLE9BQU8sR0FBQSxFQUFFLEtBQUssR0FBQTtFQUFFOzs7OztBQUV4RCxNQUFNLE9BQU8sV0FBVztDQUd2Qjs7O0lBRkUsNEJBQXFCOztJQUNyQiwyQkFBb0I7O0FBR3ZCLE1BQU0sT0FBTyxPQUFPOzs7Ozs7Ozs7O0lBUWpCLFlBQ1UsRUFBVSxFQUNWLEtBQWEsRUFDYixPQUFlLEVBQ2YsUUFBMEIsRUFDMUIsT0FBZSxFQUNmLGVBQXVCLEVBQ3ZCLElBQWlCO1FBTmpCLE9BQUUsR0FBRixFQUFFLENBQVE7UUFDVixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixvQkFBZSxHQUFmLGVBQWUsQ0FBUTtRQUN2QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBWm5CLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFXLENBQUMsQ0FBQztRQUNyQixrQkFBYSxHQUFvQixJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ3ZELGlCQUFZLEdBQXFCLElBQUksT0FBTyxFQUFXLENBQUM7SUFVNUQsQ0FBQzs7OztJQUVMLElBQUksT0FBTztRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7O0lBRUQsSUFBSSxnQkFBZ0I7UUFDakIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNDLENBQUM7Ozs7SUFFRCxNQUFNO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDOzs7O0lBRUQsV0FBVztRQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7SUFFRCxjQUFjO1FBQ1gsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Ozs7SUFFRCxNQUFNO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDOzs7Ozs7SUFHTyxVQUFVLENBQUMsUUFBaUI7UUFDakMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxNQUFNLENBQUMsV0FBVzs7O1FBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7Ozs7OztJQUVPLGdCQUFnQixDQUFDLFFBQWlCO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ3ZDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLEVBQUU7WUFDM0MsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RCLElBQUksUUFBUSxFQUFFO2dCQUNYLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQzthQUNuQjtpQkFBTTtnQkFDSixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7YUFDekI7U0FDSDtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDOzs7OztJQUVPLGVBQWU7UUFDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7Ozs7O0lBRU8sY0FBYztRQUNuQixNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3hELENBQUM7Ozs7O0lBRU8sUUFBUTtRQUNiLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7O0lBRU8sU0FBUzs7WUFDVixPQUFPLEdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU87UUFDeEUsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsVUFBVTs7O1FBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRSxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDO0NBQ0g7Ozs7OztJQWxGRSw0Q0FBMEM7Ozs7O0lBQzFDLCtCQUE2Qjs7Ozs7SUFDN0IsMEJBQWlDOzs7OztJQUNqQywyQkFBNkI7Ozs7O0lBQzdCLGdDQUErRDs7Ozs7SUFDL0QsK0JBQWdFOztJQUc3RCxxQkFBaUI7O0lBQ2pCLHdCQUFvQjs7SUFDcEIsMEJBQXNCOztJQUN0QiwyQkFBaUM7O0lBQ2pDLDBCQUFzQjs7SUFDdEIsa0NBQThCOztJQUM5Qix1QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogwqkgMjAxNyBTdHJhdGlvIEJpZyBEYXRhIEluYy4sIFN1Y3Vyc2FsIGVuIEVzcGHDsWEuXG4gKlxuICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wLlxuICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTtcbiAqIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuXG4gKiBTZWUgdGhlIHRlcm1zIG9mIHRoZSBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAuXG4gKi9cbmltcG9ydCB7IE9ic2VydmFibGUgLCAgT2JzZXJ2ZXIgLCAgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTptYXgtY2xhc3Nlcy1wZXItZmlsZVxuZXhwb3J0IGVudW0gU1RBTEVSVF9TRVZFUklUWSB7IFNVQ0NFU1MsIFdBUk5JTkcsIEVSUk9SIH1cblxuZXhwb3J0IGNsYXNzIFN0QWxlcnRMaW5rIHtcbiAgIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuICAgcHVibGljIGxpbms6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFN0QWxlcnQge1xuICAgcHJpdmF0ZSBfY2hhbmdlVmlzaWJpbGl0eUludGVydmFsOiBudW1iZXI7XG4gICBwcml2YXRlIF9saWZlVGltZW91dDogbnVtYmVyO1xuICAgcHJpdmF0ZSBfcmVhZGVkOiBib29sZWFuID0gZmFsc2U7XG4gICBwcml2YXRlIF9vcGFjaXR5OiBudW1iZXIgPSAwO1xuICAgcHJpdmF0ZSBfb3BhY2l0eVN0YXRlOiBTdWJqZWN0PG51bWJlcj4gPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG4gICBwcml2YXRlIF9yZW1vdmVFdmVudDogU3ViamVjdDxTdEFsZXJ0PiA9IG5ldyBTdWJqZWN0PFN0QWxlcnQ+KCk7XG5cbiAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIGlkOiBudW1iZXIsXG4gICAgICBwdWJsaWMgdGl0bGU6IHN0cmluZyxcbiAgICAgIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmcsXG4gICAgICBwdWJsaWMgc2V2ZXJpdHk6IFNUQUxFUlRfU0VWRVJJVFksXG4gICAgICBwdWJsaWMgdGltZW91dDogbnVtYmVyLFxuICAgICAgcHVibGljIGV4dGVuZGVkVGltZW91dDogbnVtYmVyLFxuICAgICAgcHVibGljIGxpbms6IFN0QWxlcnRMaW5rXG4gICApIHsgfVxuXG4gICBnZXQgb3BhY2l0eSgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgcmV0dXJuIHRoaXMuX29wYWNpdHlTdGF0ZS5hc09ic2VydmFibGUoKTtcbiAgIH1cblxuICAgZ2V0IHJlbW92ZUFsZXJ0RXZlbnQoKTogT2JzZXJ2YWJsZTxTdEFsZXJ0PiB7XG4gICAgICByZXR1cm4gdGhpcy5fcmVtb3ZlRXZlbnQuYXNPYnNlcnZhYmxlKCk7XG4gICB9XG5cbiAgIG5vdGlmeSgpOiB2b2lkIHtcbiAgICAgIHRoaXMuc2V0VmlzaWJsZSh0cnVlKTtcbiAgIH1cblxuICAgcGF1c2VOb3RpZnkoKTogdm9pZCB7XG4gICAgICB0aGlzLl9vcGFjaXR5ID0gMTtcbiAgICAgIHRoaXMuX3JlYWRlZCA9IHRydWU7XG4gICAgICB0aGlzLmNsZWFyQW5pbWF0aW9uKCk7XG4gICAgICB0aGlzLnN0b3BMaWZlKCk7XG4gICAgICB0aGlzLl9vcGFjaXR5U3RhdGUubmV4dCh0aGlzLl9vcGFjaXR5KTtcbiAgIH1cblxuICAgY29udGludWVOb3RpZnkoKTogdm9pZCB7XG4gICAgICB0aGlzLnN0YXJ0TGlmZSgpO1xuICAgfVxuXG4gICBjYW5jZWwoKTogdm9pZCB7XG4gICAgICB0aGlzLnNldFZpc2libGUoZmFsc2UpO1xuICAgfVxuXG5cbiAgIHByaXZhdGUgc2V0VmlzaWJsZShpbmNyZWFzZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgdGhpcy5jbGVhckFuaW1hdGlvbigpO1xuICAgICAgdGhpcy5fY2hhbmdlVmlzaWJpbGl0eUludGVydmFsID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHRoaXMubW9kaWZ5VmlzaWJpbGl0eShpbmNyZWFzZSksIDUwKTtcbiAgIH1cblxuICAgcHJpdmF0ZSBtb2RpZnlWaXNpYmlsaXR5KGluY3JlYXNlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICB0aGlzLl9vcGFjaXR5ICs9IGluY3JlYXNlID8gMC4xIDogLTAuMTtcbiAgICAgIGlmICh0aGlzLl9vcGFjaXR5ID49IDEgfHwgdGhpcy5fb3BhY2l0eSA8PSAwKSB7XG4gICAgICAgICB0aGlzLmNsZWFyQW5pbWF0aW9uKCk7XG4gICAgICAgICBpZiAoaW5jcmVhc2UpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhcnRMaWZlKCk7XG4gICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlGb3JSZW1vdmUoKTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMuX29wYWNpdHlTdGF0ZS5uZXh0KHRoaXMuX29wYWNpdHkpO1xuICAgfVxuXG4gICBwcml2YXRlIG5vdGlmeUZvclJlbW92ZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMuX29wYWNpdHlTdGF0ZS5jb21wbGV0ZSgpO1xuICAgICAgdGhpcy5fcmVtb3ZlRXZlbnQubmV4dCh0aGlzKTtcbiAgICAgIHRoaXMuX3JlbW92ZUV2ZW50LmNvbXBsZXRlKCk7XG4gICB9XG5cbiAgIHByaXZhdGUgY2xlYXJBbmltYXRpb24oKTogdm9pZCB7XG4gICAgICB3aW5kb3cuY2xlYXJJbnRlcnZhbCh0aGlzLl9jaGFuZ2VWaXNpYmlsaXR5SW50ZXJ2YWwpO1xuICAgfVxuXG4gICBwcml2YXRlIHN0b3BMaWZlKCk6IHZvaWQge1xuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9saWZlVGltZW91dCk7XG4gICB9XG5cbiAgIHByaXZhdGUgc3RhcnRMaWZlKCk6IHZvaWQge1xuICAgICAgbGV0IHRpbWVvdXQ6IG51bWJlciA9IHRoaXMuX3JlYWRlZCA/IHRoaXMuZXh0ZW5kZWRUaW1lb3V0IDogdGhpcy50aW1lb3V0O1xuICAgICAgdGhpcy5fbGlmZVRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB0aGlzLnNldFZpc2libGUoZmFsc2UpLCB0aW1lb3V0KTtcbiAgIH1cbn1cbiJdfQ==