UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

43 lines 5.32 kB
import { Injectable } from '@angular/core'; import { TaskHandlingService } from '../../task/services/task-handling-service'; import { Subject } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "./task-content.service"; /** * Holds logic about the available operations on a {@link Task} object based on it's state. * * Beware that it gets the Task from (@link TaskContentService) instance and thus the task might not be always initialized. * If the task is not initialized this class cannot work properly. */ export class TaskEventService extends TaskHandlingService { _taskEventNotifications$; constructor(_taskContentService) { super(_taskContentService); this._taskEventNotifications$ = new Subject(); } /** * Completes the stream */ ngOnDestroy() { this._taskEventNotifications$.complete(); } /** * Provides information about results of events executed on the managed {@link Task} */ get taskEventNotifications$() { return this._taskEventNotifications$.asObservable(); } /** * Emits a new {@link TaskEventNotification} into the notifications stream * @param event the event information that will be pushed into the stream */ publishTaskEvent(event) { this._taskEventNotifications$.next(event); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskEventService, deps: [{ token: i1.TaskContentService }], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskEventService }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskEventService, decorators: [{ type: Injectable }], ctorParameters: () => [{ type: i1.TaskContentService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1ldmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi90YXNrLWNvbnRlbnQvc2VydmljZXMvdGFzay1ldmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDOUUsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBR3pDOzs7OztHQUtHO0FBRUgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG1CQUFtQjtJQUUzQyx3QkFBd0IsQ0FBaUM7SUFFbkUsWUFBWSxtQkFBdUM7UUFDL0MsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksT0FBTyxFQUF5QixDQUFDO0lBQ3pFLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDUCxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyx1QkFBdUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGdCQUFnQixDQUFDLEtBQTRCO1FBQ2hELElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQzt3R0E3QlEsZ0JBQWdCOzRHQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Rhc2tDb250ZW50U2VydmljZX0gZnJvbSAnLi90YXNrLWNvbnRlbnQuc2VydmljZSc7XG5pbXBvcnQge1Rhc2tIYW5kbGluZ1NlcnZpY2V9IGZyb20gJy4uLy4uL3Rhc2svc2VydmljZXMvdGFzay1oYW5kbGluZy1zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1Rhc2tFdmVudE5vdGlmaWNhdGlvbn0gZnJvbSAnLi4vbW9kZWwvdGFzay1ldmVudC1ub3RpZmljYXRpb24nO1xuXG4vKipcbiAqIEhvbGRzIGxvZ2ljIGFib3V0IHRoZSBhdmFpbGFibGUgb3BlcmF0aW9ucyBvbiBhIHtAbGluayBUYXNrfSBvYmplY3QgYmFzZWQgb24gaXQncyBzdGF0ZS5cbiAqXG4gKiBCZXdhcmUgdGhhdCBpdCBnZXRzIHRoZSBUYXNrIGZyb20gKEBsaW5rIFRhc2tDb250ZW50U2VydmljZSkgaW5zdGFuY2UgYW5kIHRodXMgdGhlIHRhc2sgbWlnaHQgbm90IGJlIGFsd2F5cyBpbml0aWFsaXplZC5cbiAqIElmIHRoZSB0YXNrIGlzIG5vdCBpbml0aWFsaXplZCB0aGlzIGNsYXNzIGNhbm5vdCB3b3JrIHByb3Blcmx5LlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFza0V2ZW50U2VydmljZSBleHRlbmRzIFRhc2tIYW5kbGluZ1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgcHJvdGVjdGVkIF90YXNrRXZlbnROb3RpZmljYXRpb25zJDogU3ViamVjdDxUYXNrRXZlbnROb3RpZmljYXRpb24+O1xuXG4gICAgY29uc3RydWN0b3IoX3Rhc2tDb250ZW50U2VydmljZTogVGFza0NvbnRlbnRTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKF90YXNrQ29udGVudFNlcnZpY2UpO1xuICAgICAgICB0aGlzLl90YXNrRXZlbnROb3RpZmljYXRpb25zJCA9IG5ldyBTdWJqZWN0PFRhc2tFdmVudE5vdGlmaWNhdGlvbj4oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb21wbGV0ZXMgdGhlIHN0cmVhbVxuICAgICAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90YXNrRXZlbnROb3RpZmljYXRpb25zJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IHJlc3VsdHMgb2YgZXZlbnRzIGV4ZWN1dGVkIG9uIHRoZSBtYW5hZ2VkIHtAbGluayBUYXNrfVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgdGFza0V2ZW50Tm90aWZpY2F0aW9ucyQoKTogT2JzZXJ2YWJsZTxUYXNrRXZlbnROb3RpZmljYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Rhc2tFdmVudE5vdGlmaWNhdGlvbnMkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtaXRzIGEgbmV3IHtAbGluayBUYXNrRXZlbnROb3RpZmljYXRpb259IGludG8gdGhlIG5vdGlmaWNhdGlvbnMgc3RyZWFtXG4gICAgICogQHBhcmFtIGV2ZW50IHRoZSBldmVudCBpbmZvcm1hdGlvbiB0aGF0IHdpbGwgYmUgcHVzaGVkIGludG8gdGhlIHN0cmVhbVxuICAgICAqL1xuICAgIHB1YmxpYyBwdWJsaXNoVGFza0V2ZW50KGV2ZW50OiBUYXNrRXZlbnROb3RpZmljYXRpb24pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFza0V2ZW50Tm90aWZpY2F0aW9ucyQubmV4dChldmVudCk7XG4gICAgfVxufVxuIl19