UNPKG

@netgrif/components

Version:

Netgrif Application Engine frontend Angular components

37 lines 15.6 kB
import { Component, Inject, Optional } from '@angular/core'; import { AbstractCaseListComponent, NAE_TAB_DATA } from '@netgrif/components-core'; import * as i0 from "@angular/core"; import * as i1 from "@netgrif/components-core"; import * as i2 from "@angular/router"; import * as i3 from "@angular/common"; import * as i4 from "@ngbracket/ngx-layout"; import * as i5 from "@ngbracket/ngx-layout/extended"; import * as i6 from "@angular/material/expansion"; import * as i7 from "@angular/material/icon"; import * as i8 from "@angular/material/progress-spinner"; import * as i9 from "@angular/cdk/scrolling"; import * as i10 from "../../../../panel/case-panel/case-panel.component"; import * as i11 from "@ngx-translate/core"; export class CaseListComponent extends AbstractCaseListComponent { _caseViewService; _log; route; constructor(_caseViewService, _log, injectedTabData, route) { super(_caseViewService, _log, injectedTabData, route); this._caseViewService = _caseViewService; this._log = _log; this.route = route; } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CaseListComponent, deps: [{ token: i1.CaseViewService }, { token: i1.LoggerService }, { token: NAE_TAB_DATA, optional: true }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CaseListComponent, selector: "nc-case-list", usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"showVirtualScroll\" fxLayout=\"column\" fxLayoutAlign=\"start center\" fxFlex>\n <ng-container *ngIf=\"cases$ | async as cases\">\n\n <div *ngIf=\"(loading$ | async) === false && cases.length === 0\" fxLayout=\"column\"\n fxLayoutAlign=\"center center\" fxFlex>\n <mat-icon color=\"accent\" class=\"margin-bottom-default\">storage</mat-icon>\n <span class=\"font-size-20\">{{ 'view-list.noCasesSatisfyingThisFilter' | translate}}</span>\n </div>\n\n <mat-accordion multi=\"true\" class=\"full-width panel-list-content\" fxFlex=\"100\">\n <cdk-virtual-scroll-viewport itemSize=\"50\" (scrolledIndexChange)=\"loadNextPage()\"\n class=\"full-height scroll-container dashboard-case-list\"\n [ngStyle]=\"{'width': width ? width : '100%' }\">\n\n <nc-case-panel [responsiveBody]=\"responsiveBody\"\n [textEllipsis]=\"textEllipsis\"\n *cdkVirtualFor=\"let case_ of cases;\n let i = index;\n let first = first;\n let last = last;\n trackBy: trackBy;\n templateCacheSize: 0\"\n [showCasePanelIcon]=\"showCasePanelIcon\"\n [showDeleteMenu]=\"showDeleteMenu\"\n [case_]=\"case_\" [selectedHeaders$]=\"selectedHeaders$\" (click)=\"onCaseClick(case_)\"\n [first]=\"first\" [last]=\"last\">\n </nc-case-panel>\n\n <div *ngIf=\"loading$ | async\" fxLayout=\"column\" fxLayoutAlign=\"center center\"\n class=\"margin-top-default\">\n <mat-spinner color=\"primary\" diameter=\"50\"></mat-spinner>\n </div>\n\n </cdk-virtual-scroll-viewport>\n </mat-accordion>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.font-size-40{font-size:40px}.block-size-40{width:40px;height:40px}.margin-bottom-default{margin-bottom:8px}.margin-top-default{margin-top:8px}.full-width{width:100%}.full-height{height:100%}.scroll-container{padding:0 1px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.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: i4.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: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }, { kind: "directive", type: i6.MatAccordion, selector: "mat-accordion", inputs: ["hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i9.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i9.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i9.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: i10.CasePanelComponent, selector: "nc-case-panel" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CaseListComponent, decorators: [{ type: Component, args: [{ selector: 'nc-case-list', template: "<div *ngIf=\"showVirtualScroll\" fxLayout=\"column\" fxLayoutAlign=\"start center\" fxFlex>\n <ng-container *ngIf=\"cases$ | async as cases\">\n\n <div *ngIf=\"(loading$ | async) === false && cases.length === 0\" fxLayout=\"column\"\n fxLayoutAlign=\"center center\" fxFlex>\n <mat-icon color=\"accent\" class=\"margin-bottom-default\">storage</mat-icon>\n <span class=\"font-size-20\">{{ 'view-list.noCasesSatisfyingThisFilter' | translate}}</span>\n </div>\n\n <mat-accordion multi=\"true\" class=\"full-width panel-list-content\" fxFlex=\"100\">\n <cdk-virtual-scroll-viewport itemSize=\"50\" (scrolledIndexChange)=\"loadNextPage()\"\n class=\"full-height scroll-container dashboard-case-list\"\n [ngStyle]=\"{'width': width ? width : '100%' }\">\n\n <nc-case-panel [responsiveBody]=\"responsiveBody\"\n [textEllipsis]=\"textEllipsis\"\n *cdkVirtualFor=\"let case_ of cases;\n let i = index;\n let first = first;\n let last = last;\n trackBy: trackBy;\n templateCacheSize: 0\"\n [showCasePanelIcon]=\"showCasePanelIcon\"\n [showDeleteMenu]=\"showDeleteMenu\"\n [case_]=\"case_\" [selectedHeaders$]=\"selectedHeaders$\" (click)=\"onCaseClick(case_)\"\n [first]=\"first\" [last]=\"last\">\n </nc-case-panel>\n\n <div *ngIf=\"loading$ | async\" fxLayout=\"column\" fxLayoutAlign=\"center center\"\n class=\"margin-top-default\">\n <mat-spinner color=\"primary\" diameter=\"50\"></mat-spinner>\n </div>\n\n </cdk-virtual-scroll-viewport>\n </mat-accordion>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.font-size-40{font-size:40px}.block-size-40{width:40px;height:40px}.margin-bottom-default{margin-bottom:8px}.margin-top-default{margin-top:8px}.full-width{width:100%}.full-height{height:100%}.scroll-container{padding:0 1px}\n"] }] }], ctorParameters: () => [{ type: i1.CaseViewService }, { type: i1.LoggerService }, { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [NAE_TAB_DATA] }] }, { type: i2.ActivatedRoute }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL3ZpZXcvY2FzZS12aWV3L2NvbXBvbmVudHMvY2FzZS1saXN0L2Nhc2UtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi92aWV3L2Nhc2Utdmlldy9jb21wb25lbnRzL2Nhc2UtbGlzdC9jYXNlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBQyx5QkFBeUIsRUFBbUQsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFRbEksTUFBTSxPQUFPLGlCQUFrQixTQUFRLHlCQUF5QjtJQUV0QztJQUNBO0lBRUE7SUFIdEIsWUFBc0IsZ0JBQWlDLEVBQ2pDLElBQW1CLEVBQ0ssZUFBZ0MsRUFDeEQsS0FBc0I7UUFDeEMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFKcEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxTQUFJLEdBQUosSUFBSSxDQUFlO1FBRW5CLFVBQUssR0FBTCxLQUFLLENBQWlCO0lBRTVDLENBQUM7d0dBUFEsaUJBQWlCLDhFQUlNLFlBQVk7NEZBSm5DLGlCQUFpQiwyRUNUOUIseWlFQXFDQTs7NEZENUJhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDSSxjQUFjOzswQkFRWCxRQUFROzswQkFBSSxNQUFNOzJCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0Q2FzZUxpc3RDb21wb25lbnQsIENhc2VWaWV3U2VydmljZSwgSW5qZWN0ZWRUYWJEYXRhLCBMb2dnZXJTZXJ2aWNlLCBOQUVfVEFCX0RBVEF9IGZyb20gJ0BuZXRncmlmL2NvbXBvbmVudHMtY29yZSc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jLWNhc2UtbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Nhc2UtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FzZS1saXN0LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2FzZUxpc3RDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENhc2VMaXN0Q29tcG9uZW50IHtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfY2FzZVZpZXdTZXJ2aWNlOiBDYXNlVmlld1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9sb2c6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfVEFCX0RBVEEpIGluamVjdGVkVGFiRGF0YTogSW5qZWN0ZWRUYWJEYXRhLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCByb3V0ZT86IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgICAgIHN1cGVyKF9jYXNlVmlld1NlcnZpY2UsIF9sb2csIGluamVjdGVkVGFiRGF0YSwgcm91dGUpO1xuICAgIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJzaG93VmlydHVhbFNjcm9sbFwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIGZ4RmxleD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FzZXMkIHwgYXN5bmMgYXMgY2FzZXNcIj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiKGxvYWRpbmckIHwgYXN5bmMpID09PSBmYWxzZSAmJiBjYXNlcy5sZW5ndGggPT09IDBcIiBmeExheW91dD1cImNvbHVtblwiXG4gICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBmeEZsZXg+XG4gICAgICAgICAgICA8bWF0LWljb24gY29sb3I9XCJhY2NlbnRcIiBjbGFzcz1cIm1hcmdpbi1ib3R0b20tZGVmYXVsdFwiPnN0b3JhZ2U8L21hdC1pY29uPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LXNpemUtMjBcIj57eyAndmlldy1saXN0Lm5vQ2FzZXNTYXRpc2Z5aW5nVGhpc0ZpbHRlcicgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPG1hdC1hY2NvcmRpb24gbXVsdGk9XCJ0cnVlXCIgY2xhc3M9XCJmdWxsLXdpZHRoIHBhbmVsLWxpc3QtY29udGVudFwiIGZ4RmxleD1cIjEwMFwiPlxuICAgICAgICAgICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCBpdGVtU2l6ZT1cIjUwXCIgKHNjcm9sbGVkSW5kZXhDaGFuZ2UpPVwibG9hZE5leHRQYWdlKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ1bGwtaGVpZ2h0IHNjcm9sbC1jb250YWluZXIgZGFzaGJvYXJkLWNhc2UtbGlzdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnd2lkdGgnOiB3aWR0aCA/IHdpZHRoIDogJzEwMCUnIH1cIj5cblxuICAgICAgICAgICAgICAgIDxuYy1jYXNlLXBhbmVsIFtyZXNwb25zaXZlQm9keV09XCJyZXNwb25zaXZlQm9keVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRFbGxpcHNpc109XCJ0ZXh0RWxsaXBzaXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpjZGtWaXJ0dWFsRm9yPVwibGV0IGNhc2VfIG9mIGNhc2VzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaSA9IGluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlyc3QgPSBmaXJzdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxhc3QgPSBsYXN0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFja0J5OiB0cmFja0J5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZUNhY2hlU2l6ZTogMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dDYXNlUGFuZWxJY29uXT1cInNob3dDYXNlUGFuZWxJY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0RlbGV0ZU1lbnVdPVwic2hvd0RlbGV0ZU1lbnVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjYXNlX109XCJjYXNlX1wiIFtzZWxlY3RlZEhlYWRlcnMkXT1cInNlbGVjdGVkSGVhZGVycyRcIiAoY2xpY2spPVwib25DYXNlQ2xpY2soY2FzZV8pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlyc3RdPVwiZmlyc3RcIiBbbGFzdF09XCJsYXN0XCI+XG4gICAgICAgICAgICAgICAgPC9uYy1jYXNlLXBhbmVsPlxuXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImxvYWRpbmckIHwgYXN5bmNcIiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWFyZ2luLXRvcC1kZWZhdWx0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtc3Bpbm5lciBjb2xvcj1cInByaW1hcnlcIiBkaWFtZXRlcj1cIjUwXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG4gICAgICAgIDwvbWF0LWFjY29yZGlvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19