diff --git a/apps/red-ui/src/app/modules/dossier-overview/components/dossier-details/dossier-details.component.ts b/apps/red-ui/src/app/modules/dossier-overview/components/dossier-details/dossier-details.component.ts index 9cac1690d..aa0eb4954 100644 --- a/apps/red-ui/src/app/modules/dossier-overview/components/dossier-details/dossier-details.component.ts +++ b/apps/red-ui/src/app/modules/dossier-overview/components/dossier-details/dossier-details.component.ts @@ -16,9 +16,9 @@ import { UserService } from '@users/user.service'; import { ContextComponent, FilterService, getParam, INestedFilter, ProgressBarConfigModel, shareLast, Toaster } from '@iqser/common-ui'; import { workflowFileStatusTranslations } from '@translations/file-status-translations'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; -import { firstValueFrom, Observable } from 'rxjs'; +import { combineLatestWith, firstValueFrom, Observable } from 'rxjs'; import { DossierStatsService } from '@services/dossiers/dossier-stats.service'; -import { map } from 'rxjs/operators'; +import { map, tap } from 'rxjs/operators'; import { DossiersService } from '@services/dossiers/dossiers.service'; import { FilesMapService } from '@services/files/files-map.service'; @@ -26,6 +26,7 @@ interface DossierDetailsContext { needsWorkFilters: INestedFilter[] | undefined; dossier: Dossier; dossierStats: DossierStats; + filesChanged: boolean; chartConfig: void; statusConfig: ProgressBarConfigModel[]; } @@ -50,6 +51,7 @@ export class DossierDetailsComponent extends ContextComponent; readonly dossierStats$: Observable; + readonly filesChanged$: Observable; readonly chartConfig$: Observable; readonly statusConfig$: Observable; @@ -68,7 +70,11 @@ export class DossierDetailsComponent extends ContextComponent this.#calculateChartConfig(stats))); + this.filesChanged$ = _filesMapService.watchChanged$(this.#dossierId).pipe(shareLast()); + this.chartConfig$ = this.dossierStats$.pipe( + combineLatestWith(this.filesChanged$), + map(([stats]) => this.#calculateChartConfig(stats)), + ); this.statusConfig$ = this.dossierStats$.pipe(map(stats => this.#calculateStatusConfig(stats))); } @@ -77,6 +83,7 @@ export class DossierDetailsComponent extends ContextComponent