UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

169 lines (168 loc) 12.4 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ const /** @type {?} */ TYPE_UNDEFINED = 'undefined'; const /** @type {?} */ MIN_TIMEOUT = 4500; const /** @type {?} */ DEFAULT_TIMEOUT = 6500; /** * <p style="text-indent: 2em;"> * A <code>model</code> class representing an <code>application</code> notification message. A notification message may consist of its <code>body * component</code> which will be displayed when the user hovers a mouse over the message for a period of time (less than a second). * </p> * * @author shiorin, tee4cute * @see [[INotificationManager]] * @see [[NotificationAction]] */ export class Notification { /** * @param {?} iconURL * @param {?} title * @param {?} description * @param {?} show * @param {?=} label * @param {?=} occurringTime * @param {?=} timeout * @param {?=} bodyComponent */ constructor(iconURL, title, description, show, label, occurringTime, timeout, bodyComponent) { this.iconURL = iconURL; this.title = title; this.description = description; this.actions = []; this.createdTime = new Date(); this.occurringTime = occurringTime; this.timeout = timeout; this.bodyComponent = bodyComponent; this.show = show; this.label = label; if (occurringTime === null || typeof occurringTime === 'undefined') { this.occurringTime = new Date(this.createdTime); } } /** * @return {?} */ get type() { return this._type; } /** * @param {?} value * @return {?} */ set type(value) { this._type = value; if (this._type === null || typeof this._type === 'undefined') { this._type = Notification.TYPE_UNDEFINED; } } /** * @return {?} */ get name() { return this._name; } /** * @param {?} value * @return {?} */ set name(value) { this._name = value; if (this._name === null || typeof this._name === 'undefined') { this._name = Notification.TYPE_UNDEFINED; } } /** * @return {?} */ get group() { return this._group; } /** * @param {?} value * @return {?} */ set group(value) { this._group = value; if (this._group === null || typeof this._group === 'undefined') { this._group = Notification.TYPE_UNDEFINED; } } /** * @return {?} */ get timeout() { return this._timeout; } /** * @param {?} value * @return {?} */ set timeout(value) { this._timeout = value; if (this._timeout === null || typeof this._timeout === 'undefined') { this._timeout = DEFAULT_TIMEOUT; } if (this._timeout < MIN_TIMEOUT) { this._timeout = MIN_TIMEOUT; } } /** * @param {?} action * @return {?} */ addAction(action) { this.actions.push(action); } /** * @param {?} action * @return {?} */ removeAction(action) { let /** @type {?} */ index = this.actions.indexOf(action); if (index >= 0) { this.actions.splice(index, 1); } } /** * @return {?} */ getActions() { return this.actions; } } Notification.TYPE_UNDEFINED = TYPE_UNDEFINED; function Notification_tsickle_Closure_declarations() { /** @type {?} */ Notification.TYPE_UNDEFINED; /** @type {?} */ Notification.prototype._type; /** @type {?} */ Notification.prototype._name; /** @type {?} */ Notification.prototype._group; /** @type {?} */ Notification.prototype._timeout; /** @type {?} */ Notification.prototype.iconURL; /** @type {?} */ Notification.prototype.label; /** @type {?} */ Notification.prototype.title; /** @type {?} */ Notification.prototype.description; /** @type {?} */ Notification.prototype.bodyComponent; /** @type {?} */ Notification.prototype.createdTime; /** @type {?} */ Notification.prototype.occurringTime; /** @type {?} */ Notification.prototype.clickHandler; /** @type {?} */ Notification.prototype.actions; /** @type {?} */ Notification.prototype.show; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvbW9kZWwvTm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSx1QkFBTSxjQUFjLEdBQVcsV0FBVyxDQUFDO0FBQzNDLHVCQUFNLFdBQVcsR0FBVyxJQUFJLENBQUM7QUFDakMsdUJBQU0sZUFBZSxHQUFXLElBQUksQ0FBQzs7Ozs7Ozs7Ozs7QUFZckMsTUFBTTs7Ozs7Ozs7Ozs7SUFtQkYsWUFBWSxPQUFlLEVBQUUsS0FBYSxFQUFFLFdBQW1CLEVBQUUsSUFBYSxFQUFFLEtBQWMsRUFBRSxhQUFvQixFQUFFLE9BQWdCLEVBQUUsYUFBeUI7UUFFN0osSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLEVBQUUsQ0FBQSxDQUFDLGFBQWEsS0FBSyxJQUFJLElBQUksT0FBTyxhQUFhLEtBQUssV0FBVyxDQUFDLENBQUEsQ0FBQztZQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNuRDtLQUNKOzs7O0lBRUQsSUFBSSxJQUFJO1FBQ0osTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7S0FDckI7Ozs7O0lBRUQsSUFBSSxJQUFJLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQUM7U0FDNUM7S0FDSjs7OztJQUVELElBQUksSUFBSTtRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0tBQ3JCOzs7OztJQUVELElBQUksSUFBSSxDQUFDLEtBQWE7UUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsY0FBYyxDQUFDO1NBQzVDO0tBQ0o7Ozs7SUFFRCxJQUFJLEtBQUs7UUFDTCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztLQUN0Qjs7Ozs7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxNQUFNLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FBQztTQUM3QztLQUNKOzs7O0lBRUQsSUFBSSxPQUFPO1FBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7S0FDeEI7Ozs7O0lBRUQsSUFBSSxPQUFPLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQztTQUNuQztRQUNELEVBQUUsQ0FBQSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUEsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsQ0FBQztTQUMvQjtLQUNKOzs7OztJQUVNLFNBQVMsQ0FBQyxNQUEwQjtRQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzs7Ozs7O0lBR3ZCLFlBQVksQ0FBQyxNQUEwQjtRQUMxQyxxQkFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDYixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDakM7Ozs7O0lBR0UsVUFBVTtRQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDOzs7OEJBL0Z3QixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQWN0aW9uIH0gZnJvbSAnLi9Ob3RpZmljYXRpb25BY3Rpb24nO1xuXG5jb25zdCBUWVBFX1VOREVGSU5FRDogc3RyaW5nID0gJ3VuZGVmaW5lZCc7XG5jb25zdCBNSU5fVElNRU9VVDogbnVtYmVyID0gNDUwMDtcbmNvbnN0IERFRkFVTFRfVElNRU9VVDogbnVtYmVyID0gNjUwMDtcblxuLyoqXG4gKiA8cCBzdHlsZT1cInRleHQtaW5kZW50OiAyZW07XCI+XG4gKiBBIDxjb2RlPm1vZGVsPC9jb2RlPiBjbGFzcyByZXByZXNlbnRpbmcgYW4gPGNvZGU+YXBwbGljYXRpb248L2NvZGU+IG5vdGlmaWNhdGlvbiBtZXNzYWdlLiBBIG5vdGlmaWNhdGlvbiBtZXNzYWdlIG1heSBjb25zaXN0IG9mIGl0cyA8Y29kZT5ib2R5XG4gKiBjb21wb25lbnQ8L2NvZGU+IHdoaWNoIHdpbGwgYmUgZGlzcGxheWVkIHdoZW4gdGhlIHVzZXIgaG92ZXJzIGEgbW91c2Ugb3ZlciB0aGUgbWVzc2FnZSBmb3IgYSBwZXJpb2Qgb2YgdGltZSAobGVzcyB0aGFuIGEgc2Vjb25kKS5cbiAqIDwvcD5cbiAqXG4gKiBAYXV0aG9yIHNoaW9yaW4sIHRlZTRjdXRlXG4gKiBAc2VlIFtbSU5vdGlmaWNhdGlvbk1hbmFnZXJdXVxuICogQHNlZSBbW05vdGlmaWNhdGlvbkFjdGlvbl1dXG4gKi9cbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb24ge1xuXG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBUWVBFX1VOREVGSU5FRDogc3RyaW5nID0gVFlQRV9VTkRFRklORUQ7XG5cbiAgICBwcml2YXRlIF90eXBlOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgX2dyb3VwOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBfdGltZW91dDogbnVtYmVyOyAvLyBhcyBtaWxsaXNlY1xuICAgIHB1YmxpYyBpY29uVVJMOiBzdHJpbmc7XG4gICAgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gICAgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gICAgcHVibGljIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgcHVibGljIGJvZHlDb21wb25lbnQ6IFR5cGU8YW55PjtcbiAgICBwdWJsaWMgY3JlYXRlZFRpbWU6IERhdGU7XG4gICAgcHVibGljIG9jY3VycmluZ1RpbWU6IERhdGU7XG4gICAgcHVibGljIGNsaWNrSGFuZGxlcjogRnVuY3Rpb247XG4gICAgcHVibGljIGFjdGlvbnM6IE5vdGlmaWNhdGlvbkFjdGlvbltdO1xuICAgIHB1YmxpYyBzaG93OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoaWNvblVSTDogc3RyaW5nLCB0aXRsZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBzaG93OiBib29sZWFuLCBsYWJlbD86IHN0cmluZywgb2NjdXJyaW5nVGltZT86IERhdGUsIHRpbWVvdXQ/OiBudW1iZXIsIGJvZHlDb21wb25lbnQ/OiBUeXBlPGFueT4pIHtcblxuICAgICAgICB0aGlzLmljb25VUkwgPSBpY29uVVJMO1xuICAgICAgICB0aGlzLnRpdGxlID0gdGl0bGU7XG4gICAgICAgIHRoaXMuZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbjtcbiAgICAgICAgdGhpcy5hY3Rpb25zID0gW107XG4gICAgICAgIHRoaXMuY3JlYXRlZFRpbWUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICB0aGlzLm9jY3VycmluZ1RpbWUgPSBvY2N1cnJpbmdUaW1lO1xuICAgICAgICB0aGlzLnRpbWVvdXQgPSB0aW1lb3V0O1xuICAgICAgICB0aGlzLmJvZHlDb21wb25lbnQgPSBib2R5Q29tcG9uZW50O1xuICAgICAgICB0aGlzLnNob3cgPSBzaG93O1xuICAgICAgICB0aGlzLmxhYmVsID0gbGFiZWw7XG5cbiAgICAgICAgaWYob2NjdXJyaW5nVGltZSA9PT0gbnVsbCB8fCB0eXBlb2Ygb2NjdXJyaW5nVGltZSA9PT0gJ3VuZGVmaW5lZCcpe1xuICAgICAgICAgICAgdGhpcy5vY2N1cnJpbmdUaW1lID0gbmV3IERhdGUodGhpcy5jcmVhdGVkVGltZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgICB9XG5cbiAgICBzZXQgdHlwZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3R5cGUgPSB2YWx1ZTtcbiAgICAgICAgaWYgKHRoaXMuX3R5cGUgPT09IG51bGwgfHwgdHlwZW9mIHRoaXMuX3R5cGUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICB0aGlzLl90eXBlID0gTm90aWZpY2F0aW9uLlRZUEVfVU5ERUZJTkVEO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25hbWU7XG4gICAgfVxuXG4gICAgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9uYW1lID0gdmFsdWU7XG4gICAgICAgIGlmICh0aGlzLl9uYW1lID09PSBudWxsIHx8IHR5cGVvZiB0aGlzLl9uYW1lID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgdGhpcy5fbmFtZSA9IE5vdGlmaWNhdGlvbi5UWVBFX1VOREVGSU5FRDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBncm91cCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fZ3JvdXA7XG4gICAgfVxuXG4gICAgc2V0IGdyb3VwKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fZ3JvdXAgPSB2YWx1ZTtcbiAgICAgICAgaWYgKHRoaXMuX2dyb3VwID09PSBudWxsIHx8IHR5cGVvZiB0aGlzLl9ncm91cCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHRoaXMuX2dyb3VwID0gTm90aWZpY2F0aW9uLlRZUEVfVU5ERUZJTkVEO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHRpbWVvdXQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpbWVvdXQ7XG4gICAgfVxuXG4gICAgc2V0IHRpbWVvdXQodmFsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLl90aW1lb3V0ID0gdmFsdWU7XG4gICAgICAgIGlmICh0aGlzLl90aW1lb3V0ID09PSBudWxsIHx8IHR5cGVvZiB0aGlzLl90aW1lb3V0ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgdGhpcy5fdGltZW91dCA9IERFRkFVTFRfVElNRU9VVDtcbiAgICAgICAgfVxuICAgICAgICBpZih0aGlzLl90aW1lb3V0IDwgTUlOX1RJTUVPVVQpe1xuICAgICAgICAgICAgdGhpcy5fdGltZW91dCA9IE1JTl9USU1FT1VUO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFkZEFjdGlvbihhY3Rpb246IE5vdGlmaWNhdGlvbkFjdGlvbik6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGlvbnMucHVzaChhY3Rpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVBY3Rpb24oYWN0aW9uOiBOb3RpZmljYXRpb25BY3Rpb24pOiB2b2lkIHtcbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5hY3Rpb25zLmluZGV4T2YoYWN0aW9uKTtcblxuICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgdGhpcy5hY3Rpb25zLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QWN0aW9ucygpOiBOb3RpZmljYXRpb25BY3Rpb25bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFjdGlvbnM7XG4gICAgfVxufVxuIl19