UNPKG

@universis/common

Version:

Universis - common directives and services

126 lines (125 loc) 14.6 kB
import { Input, EventEmitter } from '@angular/core'; import { RouterModal } from './RouterModal'; import { ButtonTypes } from './ButtonTypes'; export class RouterModalAbortRetryIgnore extends RouterModal { constructor() { super(...arguments); this.buttonChanges = new EventEmitter(); // abort button (start) this._abortButtonText = ButtonTypes.abort.buttonText; this._abortButtonClass = ButtonTypes.abort.buttonClass; this._abortButtonDisabled = ButtonTypes.abort.buttonDisabled; // abort button (end) // retry button (start) this._retryButtonText = ButtonTypes.retry.buttonText; this._retryButtonClass = ButtonTypes.retry.buttonClass; this._retryButtonDisabled = ButtonTypes.retry.buttonDisabled; // retry button (end) // ignore button (start) this._ignoreButtonText = ButtonTypes.ignore.buttonText; this._ignoreButtonClass = ButtonTypes.ignore.buttonClass; this._ignoreButtonDisabled = ButtonTypes.ignore.buttonDisabled; } get abortButtonState() { return { abort: { buttonText: this._abortButtonText, buttonClass: this._abortButtonClass, buttonDisabled: this._abortButtonDisabled } }; } get retryButtonState() { return { retry: { buttonText: this._retryButtonText, buttonClass: this._retryButtonClass, buttonDisabled: this._retryButtonDisabled } }; } get ignoreButtonState() { return { ignore: { buttonText: this._ignoreButtonText, buttonClass: this._ignoreButtonClass, buttonDisabled: this._ignoreButtonDisabled } }; } get abortButtonText() { return this._abortButtonText; } set abortButtonText(value) { this._abortButtonText = value; this.buttonChanges.emit(this.abortButtonState); } get abortButtonClass() { return this._abortButtonClass; } set abortButtonClass(value) { this._abortButtonClass = value; this.buttonChanges.emit(this.abortButtonState); } get abortButtonDisabled() { return this._abortButtonDisabled; } set abortButtonDisabled(value) { this._abortButtonDisabled = value; this.buttonChanges.emit(this.abortButtonState); } get retryButtonText() { return this._retryButtonText; } set retryButtonText(value) { this._retryButtonText = value; this.buttonChanges.emit(this.retryButtonState); } get retryButtonClass() { return this._retryButtonClass; } set retryButtonClass(value) { this._retryButtonClass = value; this.buttonChanges.emit(this.retryButtonState); } get retryButtonDisabled() { return this._retryButtonDisabled; } set retryButtonDisabled(value) { this._retryButtonDisabled = value; this.buttonChanges.emit(this.retryButtonState); } get ignoreButtonText() { return this._ignoreButtonText; } set ignoreButtonText(value) { this._ignoreButtonText = value; this.buttonChanges.emit(this.ignoreButtonState); } get ignoreButtonClass() { return this._ignoreButtonClass; } set ignoreButtonClass(value) { this._ignoreButtonClass = value; this.buttonChanges.emit(this.ignoreButtonState); } get ignoreButtonDisabled() { return this._ignoreButtonDisabled; } set ignoreButtonDisabled(value) { this._ignoreButtonDisabled = value; this.buttonChanges.emit(this.ignoreButtonState); } } RouterModalAbortRetryIgnore.propDecorators = { abortButtonText: [{ type: Input }], abortButtonClass: [{ type: Input }], abortButtonDisabled: [{ type: Input }], retryButtonText: [{ type: Input }], retryButtonClass: [{ type: Input }], retryButtonDisabled: [{ type: Input }], ignoreButtonText: [{ type: Input }], ignoreButtonClass: [{ type: Input }], ignoreButtonDisabled: [{ type: Input }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm91dGVyTW9kYWxBYm9ydFJldHJ5SWdub3JlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHVuaXZlcnNpcy9jb21tb24vcm91dGluZy8iLCJzb3VyY2VzIjpbIlJvdXRlck1vZGFsQWJvcnRSZXRyeUlnbm9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBYSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEQsTUFBTSxrQ0FBNEMsU0FBUSxXQUFXO0lBQXJFOztRQUVvQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFxQyxDQUFDO1FBOEJ0Rix1QkFBdUI7UUFDZixxQkFBZ0IsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQVNoRCxzQkFBaUIsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQVNsRCx5QkFBb0IsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQVNoRSxxQkFBcUI7UUFFckIsdUJBQXVCO1FBQ2YscUJBQWdCLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFTaEQsc0JBQWlCLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFTbEQseUJBQW9CLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7UUFTaEUscUJBQXFCO1FBRXJCLHdCQUF3QjtRQUNoQixzQkFBaUIsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQVNsRCx1QkFBa0IsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQVNwRCwwQkFBcUIsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztJQWV0RSxDQUFDO0lBMUhHLElBQWMsZ0JBQWdCO1FB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QUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQ1csaUJBQWlCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFDRCxJQUFXLGlCQUFpQixDQUFDLEtBQUs7UUFDOUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUNoQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsSUFDVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUM7SUFDdEMsQ0FBQztJQUNELElBQVcsb0JBQW9CLENBQUMsS0FBSztRQUNqQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs4QkFyRkEsS0FBSzsrQkFTTCxLQUFLO2tDQVNMLEtBQUs7OEJBWUwsS0FBSzsrQkFTTCxLQUFLO2tDQVNMLEtBQUs7K0JBWUwsS0FBSztnQ0FTTCxLQUFLO21DQVNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgRXZlbnRFbWl0dGVyLCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZGFsIH0gZnJvbSAnLi9Sb3V0ZXJNb2RhbCc7XG5pbXBvcnQge0J1dHRvblR5cGUsIEJ1dHRvblR5cGVzfSBmcm9tICcuL0J1dHRvblR5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJvdXRlck1vZGFsQWJvcnRSZXRyeUlnbm9yZSBleHRlbmRzIFJvdXRlck1vZGFsIHtcblxuICAgIHB1YmxpYyByZWFkb25seSBidXR0b25DaGFuZ2VzID0gbmV3IEV2ZW50RW1pdHRlcjx7IFsgYnV0dG9uOiBzdHJpbmddOiBCdXR0b25UeXBlIH0+KCk7XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGFib3J0QnV0dG9uU3RhdGUoKTogeyBhYm9ydDogQnV0dG9uVHlwZSB9IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFib3J0OiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uVGV4dDogdGhpcy5fYWJvcnRCdXR0b25UZXh0LFxuICAgICAgICAgICAgICAgIGJ1dHRvbkNsYXNzOiB0aGlzLl9hYm9ydEJ1dHRvbkNsYXNzLFxuICAgICAgICAgICAgICAgIGJ1dHRvbkRpc2FibGVkOiB0aGlzLl9hYm9ydEJ1dHRvbkRpc2FibGVkXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuICAgIHByb3RlY3RlZCBnZXQgcmV0cnlCdXR0b25TdGF0ZSgpOiB7IHJldHJ5OiBCdXR0b25UeXBlIH0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcmV0cnk6IHtcbiAgICAgICAgICAgICAgICBidXR0b25UZXh0OiB0aGlzLl9yZXRyeUJ1dHRvblRleHQsXG4gICAgICAgICAgICAgICAgYnV0dG9uQ2xhc3M6IHRoaXMuX3JldHJ5QnV0dG9uQ2xhc3MsXG4gICAgICAgICAgICAgICAgYnV0dG9uRGlzYWJsZWQ6IHRoaXMuX3JldHJ5QnV0dG9uRGlzYWJsZWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIGdldCBpZ25vcmVCdXR0b25TdGF0ZSgpOiB7IGlnbm9yZTogQnV0dG9uVHlwZSB9IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlnbm9yZToge1xuICAgICAgICAgICAgICAgIGJ1dHRvblRleHQ6IHRoaXMuX2lnbm9yZUJ1dHRvblRleHQsXG4gICAgICAgICAgICAgICAgYnV0dG9uQ2xhc3M6IHRoaXMuX2lnbm9yZUJ1dHRvbkNsYXNzLFxuICAgICAgICAgICAgICAgIGJ1dHRvbkRpc2FibGVkOiB0aGlzLl9pZ25vcmVCdXR0b25EaXNhYmxlZFxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8vIGFib3J0IGJ1dHRvbiAoc3RhcnQpXG4gICAgcHJpdmF0ZSBfYWJvcnRCdXR0b25UZXh0ID0gQnV0dG9uVHlwZXMuYWJvcnQuYnV0dG9uVGV4dDtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBnZXQgYWJvcnRCdXR0b25UZXh0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWJvcnRCdXR0b25UZXh0O1xuICAgIH1cbiAgICBwdWJsaWMgc2V0IGFib3J0QnV0dG9uVGV4dCh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9hYm9ydEJ1dHRvblRleHQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5idXR0b25DaGFuZ2VzLmVtaXQodGhpcy5hYm9ydEJ1dHRvblN0YXRlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfYWJvcnRCdXR0b25DbGFzcyA9IEJ1dHRvblR5cGVzLmFib3J0LmJ1dHRvbkNsYXNzO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBhYm9ydEJ1dHRvbkNsYXNzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWJvcnRCdXR0b25DbGFzcztcbiAgICB9XG4gICAgcHVibGljIHNldCBhYm9ydEJ1dHRvbkNsYXNzKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2Fib3J0QnV0dG9uQ2xhc3MgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5idXR0b25DaGFuZ2VzLmVtaXQodGhpcy5hYm9ydEJ1dHRvblN0YXRlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfYWJvcnRCdXR0b25EaXNhYmxlZCA9IEJ1dHRvblR5cGVzLmFib3J0LmJ1dHRvbkRpc2FibGVkO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBhYm9ydEJ1dHRvbkRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWJvcnRCdXR0b25EaXNhYmxlZDtcbiAgICB9XG4gICAgcHVibGljIHNldCBhYm9ydEJ1dHRvbkRpc2FibGVkKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2Fib3J0QnV0dG9uRGlzYWJsZWQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5idXR0b25DaGFuZ2VzLmVtaXQodGhpcy5hYm9ydEJ1dHRvblN0YXRlKTtcbiAgICB9XG4gICAgLy8gYWJvcnQgYnV0dG9uIChlbmQpXG5cbiAgICAvLyByZXRyeSBidXR0b24gKHN0YXJ0KVxuICAgIHByaXZhdGUgX3JldHJ5QnV0dG9uVGV4dCA9IEJ1dHRvblR5cGVzLnJldHJ5LmJ1dHRvblRleHQ7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZ2V0IHJldHJ5QnV0dG9uVGV4dCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JldHJ5QnV0dG9uVGV4dDtcbiAgICB9XG4gICAgcHVibGljIHNldCByZXRyeUJ1dHRvblRleHQodmFsdWUpIHtcbiAgICAgICAgdGhpcy5fcmV0cnlCdXR0b25UZXh0ID0gdmFsdWU7XG4gICAgICAgIHRoaXMuYnV0dG9uQ2hhbmdlcy5lbWl0KHRoaXMucmV0cnlCdXR0b25TdGF0ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3JldHJ5QnV0dG9uQ2xhc3MgPSBCdXR0b25UeXBlcy5yZXRyeS5idXR0b25DbGFzcztcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBnZXQgcmV0cnlCdXR0b25DbGFzcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JldHJ5QnV0dG9uQ2xhc3M7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgcmV0cnlCdXR0b25DbGFzcyh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9yZXRyeUJ1dHRvbkNsYXNzID0gdmFsdWU7XG4gICAgICAgIHRoaXMuYnV0dG9uQ2hhbmdlcy5lbWl0KHRoaXMucmV0cnlCdXR0b25TdGF0ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3JldHJ5QnV0dG9uRGlzYWJsZWQgPSBCdXR0b25UeXBlcy5yZXRyeS5idXR0b25EaXNhYmxlZDtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBnZXQgcmV0cnlCdXR0b25EaXNhYmxlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JldHJ5QnV0dG9uRGlzYWJsZWQ7XG4gICAgfVxuICAgIHB1YmxpYyBzZXQgcmV0cnlCdXR0b25EaXNhYmxlZCh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9yZXRyeUJ1dHRvbkRpc2FibGVkID0gdmFsdWU7XG4gICAgICAgIHRoaXMuYnV0dG9uQ2hhbmdlcy5lbWl0KHRoaXMucmV0cnlCdXR0b25TdGF0ZSk7XG4gICAgfVxuICAgIC8vIHJldHJ5IGJ1dHRvbiAoZW5kKVxuXG4gICAgLy8gaWdub3JlIGJ1dHRvbiAoc3RhcnQpXG4gICAgcHJpdmF0ZSBfaWdub3JlQnV0dG9uVGV4dCA9IEJ1dHRvblR5cGVzLmlnbm9yZS5idXR0b25UZXh0O1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBpZ25vcmVCdXR0b25UZXh0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faWdub3JlQnV0dG9uVGV4dDtcbiAgICB9XG4gICAgcHVibGljIHNldCBpZ25vcmVCdXR0b25UZXh0KHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2lnbm9yZUJ1dHRvblRleHQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5idXR0b25DaGFuZ2VzLmVtaXQodGhpcy5pZ25vcmVCdXR0b25TdGF0ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lnbm9yZUJ1dHRvbkNsYXNzID0gQnV0dG9uVHlwZXMuaWdub3JlLmJ1dHRvbkNsYXNzO1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBpZ25vcmVCdXR0b25DbGFzcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lnbm9yZUJ1dHRvbkNsYXNzO1xuICAgIH1cbiAgICBwdWJsaWMgc2V0IGlnbm9yZUJ1dHRvbkNsYXNzKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2lnbm9yZUJ1dHRvbkNsYXNzID0gdmFsdWU7XG4gICAgICAgIHRoaXMuYnV0dG9uQ2hhbmdlcy5lbWl0KHRoaXMuaWdub3JlQnV0dG9uU3RhdGUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pZ25vcmVCdXR0b25EaXNhYmxlZCA9IEJ1dHRvblR5cGVzLmlnbm9yZS5idXR0b25EaXNhYmxlZDtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBnZXQgaWdub3JlQnV0dG9uRGlzYWJsZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pZ25vcmVCdXR0b25EaXNhYmxlZDtcbiAgICB9XG4gICAgcHVibGljIHNldCBpZ25vcmVCdXR0b25EaXNhYmxlZCh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9pZ25vcmVCdXR0b25EaXNhYmxlZCA9IHZhbHVlO1xuICAgICAgICB0aGlzLmJ1dHRvbkNoYW5nZXMuZW1pdCh0aGlzLmlnbm9yZUJ1dHRvblN0YXRlKTtcbiAgICB9XG4gICAgLy8gaWdub3JlIGJ1dHRvbiAoZW5kKVxuXG4gICAgLy8gbm9pbnNwZWN0aW9uIEpTVW51c2VkR2xvYmFsU3ltYm9sc1xuICAgIGFic3RyYWN0IGFib3J0KCk6IFByb21pc2U8YW55PjtcbiAgICBhYnN0cmFjdCByZXRyeSgpOiBQcm9taXNlPGFueT47XG4gICAgYWJzdHJhY3QgaWdub3JlKCk6IFByb21pc2U8YW55Pjtcbn1cbiJdfQ==