From 73b7c3e95bbfe777c25656f0d6caf25cb3385287 Mon Sep 17 00:00:00 2001 From: Timo Bejan Date: Mon, 17 Jan 2022 19:57:10 +0200 Subject: [PATCH] fixed annotation multi-select issues --- .../table-item/file-workload/file-workload.component.html | 7 ++++++- .../table-item/file-workload/file-workload.component.ts | 7 ++++++- .../annotations-list/annotations-list.component.ts | 1 + .../file-preview-screen/file-preview-screen.component.ts | 6 +++++- apps/red-ui/src/assets/config/config.json | 4 ++-- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.html index f5d0bc0e4..9ae92f1b8 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.html @@ -1,6 +1,11 @@
- + diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.ts b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.ts index 0b69ee12a..cd7ceaddc 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/file-workload/file-workload.component.ts @@ -2,6 +2,7 @@ import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import { AppStateService } from '@state/app-state.service'; import { File } from '@red/domain'; import { DossiersService } from '@services/entity-services/dossiers.service'; +import { UserService } from '../../../../../../../services/user.service'; @Component({ selector: 'redaction-file-workload', @@ -12,7 +13,11 @@ import { DossiersService } from '@services/entity-services/dossiers.service'; export class FileWorkloadComponent { @Input() file: File; - constructor(private readonly _appStateService: AppStateService, private readonly _dossiersService: DossiersService) {} + constructor( + public readonly userService: UserService, + private readonly _appStateService: AppStateService, + private readonly _dossiersService: DossiersService, + ) {} get suggestionColor() { return this._getDictionaryColor('suggestion'); diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.ts index 437b31c31..c26966bdb 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.ts @@ -41,6 +41,7 @@ export class AnnotationsListComponent implements OnChanges { if (this.canMultiSelect && ($event.ctrlKey || $event.metaKey) && this.selectedAnnotations.length > 0) { this.multiSelectService.activate(); } + console.log('emit', annotation); this.selectAnnotations.emit([annotation]); } } diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts index 4e508e83f..60812e67a 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview-screen.component.ts @@ -278,7 +278,8 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni @Debounce(10) selectAnnotations(annotations?: AnnotationWrapper[]) { if (annotations) { - this.viewerComponent?.utils?.selectAnnotations(annotations, this.multiSelectService.isActive); + const annotationsToSelect = this.multiSelectService.isActive ? [...this.selectedAnnotations, ...annotations] : annotations; + this.viewerComponent?.utils?.selectAnnotations(annotationsToSelect, this.multiSelectService.isActive); } else { this.viewerComponent?.utils?.deselectAllAnnotations(); } @@ -413,6 +414,7 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni } async annotationsChangedByReviewAction(annotation: AnnotationWrapper) { + this.multiSelectService.deactivate(); await this._reloadAnnotationsForPage(annotation?.pageNumber || this.activeViewerPage); } @@ -655,6 +657,8 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni const oldPageSpecificFilters = this._annotationProcessingService.getAnnotationFilter(currentPageAnnotations); const newPageSpecificFilters = this._annotationProcessingService.getAnnotationFilter(newPageAnnotations); + + console.log(currentPageAnnotations, newPageAnnotations); handleFilterDelta(oldPageSpecificFilters, newPageSpecificFilters, primaryFilters); this._filterService.addFilterGroup({ ...primaryFilterGroup, diff --git a/apps/red-ui/src/assets/config/config.json b/apps/red-ui/src/assets/config/config.json index 01c7d5793..06d1f5e73 100644 --- a/apps/red-ui/src/assets/config/config.json +++ b/apps/red-ui/src/assets/config/config.json @@ -1,7 +1,7 @@ { "ADMIN_CONTACT_NAME": null, "ADMIN_CONTACT_URL": null, - "API_URL": "https://dev-04.iqser.cloud/redaction-gateway-v1", + "API_URL": "https://aks-staging.iqser.cloud/redaction-gateway-v1", "APP_NAME": "RedactManager", "AUTO_READ_TIME": 3, "BACKEND_APP_VERSION": "4.4.40", @@ -17,7 +17,7 @@ "MAX_RETRIES_ON_SERVER_ERROR": 3, "OAUTH_CLIENT_ID": "redaction", "OAUTH_IDP_HINT": null, - "OAUTH_URL": "https://dev-04.iqser.cloud/auth/realms/redaction", + "OAUTH_URL": "https://aks-staging.iqser.cloud/auth/realms/redaction", "RECENT_PERIOD_IN_HOURS": 24, "SELECTION_MODE": "structural" }