From eb1204ad7e767bce92323c2dc4eac67ebdd4619c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Thu, 14 Oct 2021 01:47:47 +0300 Subject: [PATCH] Fixed workflow multiplying items --- src/lib/listing/workflow/workflow.component.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/lib/listing/workflow/workflow.component.ts b/src/lib/listing/workflow/workflow.component.ts index b0bc1a5..2035962 100644 --- a/src/lib/listing/workflow/workflow.component.ts +++ b/src/lib/listing/workflow/workflow.component.ts @@ -13,7 +13,7 @@ import { } from '@angular/core'; import { ListingComponent } from '../listing-component.directive'; import { CdkDrag, CdkDragDrop, CdkDropList } from '@angular/cdk/drag-drop'; -import { Required } from '../../utils'; +import { AutoUnsubscribe, Required } from '../../utils'; import { LoadingService } from '../../loading'; import { IListable } from '../models'; import { EntitiesService, ListingService } from '../services'; @@ -39,7 +39,7 @@ export interface WorkflowConfig { styleUrls: ['./workflow.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, }) -export class WorkflowComponent implements OnInit { +export class WorkflowComponent extends AutoUnsubscribe implements OnInit { @Input() headerTemplate?: TemplateRef; @Input() @Required() itemTemplate!: TemplateRef; @Input() @Required() config!: WorkflowConfig; @@ -66,6 +66,7 @@ export class WorkflowComponent implements readonly listingService: ListingService, readonly entitiesService: EntitiesService, ) { + super(); } get tableHeaderLabel(): string | undefined { @@ -90,7 +91,8 @@ export class WorkflowComponent implements } ngOnInit(): void { - this.listingService.displayed$.subscribe(entities => this._updateConfigItems(entities)); + this.config.columns.forEach(c => (c.entities = [])); + this.addSubscription = this.listingService.displayed$.subscribe(entities => this._updateConfigItems(entities)); } canMoveTo(column: WorkflowColumn): (item: CdkDrag) => boolean {