UNPKG

@netgrif/components

Version:

Netgrif Application Engine frontend Angular components

62 lines 14 kB
import { Component, Inject, Input, Self, SkipSelf } from '@angular/core'; import { AbstractTaskRefDashboardTileComponent, NAE_TASK_OPERATIONS, TaskContentService, UnlimitedTaskContentService, FrontActionService } from '@netgrif/components-core'; import { ComponentPortal } from '@angular/cdk/portal'; import * as i0 from "@angular/core"; import * as i1 from "@netgrif/components-core"; import * as i2 from "@angular/common"; import * as i3 from "@ngbracket/ngx-layout"; import * as i4 from "@angular/material/button"; import * as i5 from "@angular/material/icon"; import * as i6 from "@angular/cdk/portal"; export class TaskRefDashboardTileComponent extends AbstractTaskRefDashboardTileComponent { _injector; _myTaskContentService; portal; taskContentComponentClassReference; _subTask; constructor(caseResourceService, processService, logger, taskResourceService, callChainService, taskDataService, parentTaskContentService, taskOperations, _injector, _myTaskContentService) { super(caseResourceService, processService, logger, taskResourceService, callChainService, parentTaskContentService, taskDataService, taskOperations); this._injector = _injector; this._myTaskContentService = _myTaskContentService; } ngOnInit() { if (this.tile.isEmpty) { return; } this._subTask = this._parentTaskContentService.task$.subscribe(t => { const fakeTask = Object.assign({}, t); fakeTask.dataGroups = this.tile.dataGroups; this._myTaskContentService.task = fakeTask; this._myTaskContentService.$shouldCreate.next(fakeTask.dataGroups); }); this.portal = new ComponentPortal(this.taskContentComponentClassReference, null, this._injector); } ngOnDestroy() { super.ngOnDestroy(); if (this._subTask !== undefined) { this._subTask.unsubscribe(); } } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskRefDashboardTileComponent, deps: [{ token: i1.CaseResourceService }, { token: i1.ProcessService }, { token: i1.LoggerService }, { token: i1.TaskResourceService }, { token: i1.CallChainService }, { token: i1.TaskDataService }, { token: i1.TaskContentService, skipSelf: true }, { token: NAE_TASK_OPERATIONS }, { token: i0.Injector }, { token: i1.TaskContentService, self: true }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TaskRefDashboardTileComponent, selector: "nc-task-ref-dashboard-tile", inputs: { taskContentComponentClassReference: "taskContentComponentClassReference" }, providers: [ FrontActionService, { provide: TaskContentService, useClass: UnlimitedTaskContentService } ], usesInheritance: true, ngImport: i0, template: "<ng-template [ngIf]=\"!tile.isEmpty\" [ngIfElse]=\"newDashboardTile\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n</ng-template>\n\n<ng-template #newDashboardTile>\n <div class=\"fill-available-space\" [class.new-dashboard-tile]=\"!fc.disabled\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <button mat-icon-button\tcolor=\"primary\" *ngIf=\"!fc.disabled\" (click)=\"createNewDashboardTile()\">\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</ng-template>\n", styles: [".fill-available-space{width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TaskRefDashboardTileComponent, decorators: [{ type: Component, args: [{ selector: 'nc-task-ref-dashboard-tile', providers: [ FrontActionService, { provide: TaskContentService, useClass: UnlimitedTaskContentService } ], template: "<ng-template [ngIf]=\"!tile.isEmpty\" [ngIfElse]=\"newDashboardTile\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n</ng-template>\n\n<ng-template #newDashboardTile>\n <div class=\"fill-available-space\" [class.new-dashboard-tile]=\"!fc.disabled\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <button mat-icon-button\tcolor=\"primary\" *ngIf=\"!fc.disabled\" (click)=\"createNewDashboardTile()\">\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</ng-template>\n", styles: [".fill-available-space{width:100%;height:100%}\n"] }] }], ctorParameters: () => [{ type: i1.CaseResourceService }, { type: i1.ProcessService }, { type: i1.LoggerService }, { type: i1.TaskResourceService }, { type: i1.CallChainService }, { type: i1.TaskDataService }, { type: i1.TaskContentService, decorators: [{ type: SkipSelf }] }, { type: undefined, decorators: [{ type: Inject, args: [NAE_TASK_OPERATIONS] }] }, { type: i0.Injector }, { type: i1.TaskContentService, decorators: [{ type: Self }] }], propDecorators: { taskContentComponentClassReference: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay1yZWYtZGFzaGJvYXJkLXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvZGF0YS1maWVsZHMvdGFzay1yZWYtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLWZpZWxkL3Rhc2stcmVmLWRhc2hib2FyZC10aWxlL3Rhc2stcmVmLWRhc2hib2FyZC10aWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2RhdGEtZmllbGRzL3Rhc2stcmVmLWZpZWxkL3Rhc2stcmVmLWRhc2hib2FyZC1maWVsZC90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZS90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBWSxLQUFLLEVBQXFCLElBQUksRUFBRSxRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDMUcsT0FBTyxFQUNILHFDQUFxQyxFQUlyQyxtQkFBbUIsRUFFbkIsa0JBQWtCLEVBR2xCLDJCQUEyQixFQUMzQixrQkFBa0IsRUFDckIsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7O0FBV3BELE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxxQ0FBcUM7SUFlOUQ7SUFDUTtJQWQ5QixNQUFNLENBQXVCO0lBQ3BCLGtDQUFrQyxDQUFZO0lBRS9DLFFBQVEsQ0FBZTtJQUUvQixZQUFZLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixNQUFxQixFQUNyQixtQkFBd0MsRUFDeEMsZ0JBQWtDLEVBQ2xDLGVBQWdDLEVBQ3BCLHdCQUE0QyxFQUMzQixjQUE4QixFQUNqRCxTQUFtQixFQUNYLHFCQUF5QztRQUNuRSxLQUFLLENBQUMsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsRUFBRSxlQUFlLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFGbkksY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNYLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBb0I7SUFFdkUsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ25CLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEMsUUFBUSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUMzQyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUMzQyxJQUFJLENBQUMscUJBQXFCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUMvQjtJQUNMLENBQUM7d0dBdkNRLDZCQUE2QixvUUFjbEIsbUJBQW1COzRGQWQ5Qiw2QkFBNkIsMklBTDNCO1lBQ1Asa0JBQWtCO1lBQ2xCLEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBQztTQUN2RSxpREN4Qkwsd2dCQVdBOzs0RkRlYSw2QkFBNkI7a0JBVHpDLFNBQVM7K0JBQ0ksNEJBQTRCLGFBRzNCO3dCQUNQLGtCQUFrQjt3QkFDbEIsRUFBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLDJCQUEyQixFQUFDO3FCQUN2RTs7MEJBZVksUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxtQkFBbUI7OzBCQUUxQixJQUFJO3lDQWJSLGtDQUFrQztzQkFBMUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFNlbGYsIFNraXBTZWxmLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUYXNrUmVmRGFzaGJvYXJkVGlsZUNvbXBvbmVudCxcbiAgICBDYWxsQ2hhaW5TZXJ2aWNlLFxuICAgIENhc2VSZXNvdXJjZVNlcnZpY2UsXG4gICAgTG9nZ2VyU2VydmljZSxcbiAgICBOQUVfVEFTS19PUEVSQVRJT05TLFxuICAgIFByb2Nlc3NTZXJ2aWNlLFxuICAgIFRhc2tDb250ZW50U2VydmljZSwgVGFza0RhdGFTZXJ2aWNlLFxuICAgIFRhc2tPcGVyYXRpb25zLFxuICAgIFRhc2tSZXNvdXJjZVNlcnZpY2UsXG4gICAgVW5saW1pdGVkVGFza0NvbnRlbnRTZXJ2aWNlLFxuICAgIEZyb250QWN0aW9uU2VydmljZVxufSBmcm9tICdAbmV0Z3JpZi9jb21wb25lbnRzLWNvcmUnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtDb21wb25lbnRQb3J0YWx9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jLXRhc2stcmVmLWRhc2hib2FyZC10aWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Rhc2stcmVmLWRhc2hib2FyZC10aWxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEZyb250QWN0aW9uU2VydmljZSxcbiAgICAgICAge3Byb3ZpZGU6IFRhc2tDb250ZW50U2VydmljZSwgdXNlQ2xhc3M6IFVubGltaXRlZFRhc2tDb250ZW50U2VydmljZX1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRhc2tSZWZEYXNoYm9hcmRUaWxlQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RUYXNrUmVmRGFzaGJvYXJkVGlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIHBvcnRhbDogQ29tcG9uZW50UG9ydGFsPGFueT47XG4gICAgQElucHV0KCkgdGFza0NvbnRlbnRDb21wb25lbnRDbGFzc1JlZmVyZW5jZTogVHlwZTxhbnk+O1xuXG4gICAgcHJpdmF0ZSBfc3ViVGFzazogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoY2FzZVJlc291cmNlU2VydmljZTogQ2FzZVJlc291cmNlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm9jZXNzU2VydmljZTogUHJvY2Vzc1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHRhc2tSZXNvdXJjZVNlcnZpY2U6IFRhc2tSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgY2FsbENoYWluU2VydmljZTogQ2FsbENoYWluU2VydmljZSxcbiAgICAgICAgICAgICAgICB0YXNrRGF0YVNlcnZpY2U6IFRhc2tEYXRhU2VydmljZSxcbiAgICAgICAgICAgICAgICBAU2tpcFNlbGYoKSBwYXJlbnRUYXNrQ29udGVudFNlcnZpY2U6IFRhc2tDb250ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgICBASW5qZWN0KE5BRV9UQVNLX09QRVJBVElPTlMpIHRhc2tPcGVyYXRpb25zOiBUYXNrT3BlcmF0aW9ucyxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgICBAU2VsZigpIHByb3RlY3RlZCBfbXlUYXNrQ29udGVudFNlcnZpY2U6IFRhc2tDb250ZW50U2VydmljZSkge1xuICAgICAgICBzdXBlcihjYXNlUmVzb3VyY2VTZXJ2aWNlLCBwcm9jZXNzU2VydmljZSwgbG9nZ2VyLCB0YXNrUmVzb3VyY2VTZXJ2aWNlLCBjYWxsQ2hhaW5TZXJ2aWNlLCBwYXJlbnRUYXNrQ29udGVudFNlcnZpY2UsIHRhc2tEYXRhU2VydmljZSwgdGFza09wZXJhdGlvbnMpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy50aWxlLmlzRW1wdHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zdWJUYXNrID0gdGhpcy5fcGFyZW50VGFza0NvbnRlbnRTZXJ2aWNlLnRhc2skLnN1YnNjcmliZSh0ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZha2VUYXNrID0gT2JqZWN0LmFzc2lnbih7fSwgdCk7XG4gICAgICAgICAgICBmYWtlVGFzay5kYXRhR3JvdXBzID0gdGhpcy50aWxlLmRhdGFHcm91cHM7XG4gICAgICAgICAgICB0aGlzLl9teVRhc2tDb250ZW50U2VydmljZS50YXNrID0gZmFrZVRhc2s7XG4gICAgICAgICAgICB0aGlzLl9teVRhc2tDb250ZW50U2VydmljZS4kc2hvdWxkQ3JlYXRlLm5leHQoZmFrZVRhc2suZGF0YUdyb3Vwcyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMucG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbCh0aGlzLnRhc2tDb250ZW50Q29tcG9uZW50Q2xhc3NSZWZlcmVuY2UsIG51bGwsIHRoaXMuX2luamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgaWYgKHRoaXMuX3N1YlRhc2sgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5fc3ViVGFzay51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiIXRpbGUuaXNFbXB0eVwiIFtuZ0lmRWxzZV09XCJuZXdEYXNoYm9hcmRUaWxlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwicG9ydGFsXCI+PC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbmV3RGFzaGJvYXJkVGlsZT5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsbC1hdmFpbGFibGUtc3BhY2VcIiBbY2xhc3MubmV3LWRhc2hib2FyZC10aWxlXT1cIiFmYy5kaXNhYmxlZFwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cdGNvbG9yPVwicHJpbWFyeVwiICpuZ0lmPVwiIWZjLmRpc2FibGVkXCIgKGNsaWNrKT1cImNyZWF0ZU5ld0Rhc2hib2FyZFRpbGUoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==