From e274b54580ca87a6ce99006f3aa909c154913156 Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Fri, 27 Aug 2021 23:39:28 +0300 Subject: [PATCH 1/2] add filterception --- .../dossier-listing-screen.component.html | 5 +-- .../dossier-listing-screen.component.ts | 17 ++++++++-- .../dossier-overview-screen.component.html | 1 - .../dossier-overview-screen.component.ts | 31 ++++++++++--------- apps/red-ui/src/assets/i18n/de.json | 10 ++++-- apps/red-ui/src/assets/i18n/en.json | 10 ++++-- libs/common-ui | 2 +- 7 files changed, 49 insertions(+), 27 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html index ea79b6823..866130f34 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html @@ -1,8 +1,5 @@
- +
diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts index f7f38ee90..ea4a9a13e 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts @@ -16,7 +16,7 @@ import { DossiersDialogService } from '../../services/dossiers-dialog.service'; import { OnAttach, OnDetach } from '@utils/custom-route-reuse.strategy'; import { UserPreferenceService } from '@services/user-preference.service'; import { ButtonConfig } from '@shared/components/page-header/models/button-config.model'; -import { DefaultListingServices, ListingComponent, NestedFilter, TableColumnConfig } from '@iqser/common-ui'; +import { DefaultListingServices, keyChecker, ListingComponent, NestedFilter, TableColumnConfig } from '@iqser/common-ui'; import { workloadTranslations } from '../../translations/workload-translations'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; import { fileStatusTranslations } from '../../translations/file-status-translations'; @@ -247,7 +247,7 @@ export class DossierListingScreenComponent slug: 'dossierTemplateFilters', label: this._translateService.instant('filters.dossier-templates'), icon: 'red:template', - hide: this.filterService.getGroup('dossierTemplateFilters')?.filters?.length <= 1, + hide: dossierTemplateFilters.length <= 1, filters: dossierTemplateFilters, checker: dossierTemplateChecker }); @@ -258,6 +258,19 @@ export class DossierListingScreenComponent filters: quickFilters, checker: (dw: DossierWrapper) => quickFilters.reduce((acc, f) => acc || (f.checked && f.checker(dw)), false) }); + + const dossierFilters = this.entitiesService.all.map(dossier => ({ + key: dossier.dossierName, + label: dossier.dossierName + })); + this.filterService.addFilterGroup({ + slug: 'dossierNameFilter', + label: this._translateService.instant('dossier-listing.filters.label'), + icon: 'red:folder', + filters: dossierFilters, + filterceptionPlaceholder: this._translateService.instant('dossier-listing.filters.search'), + checker: keyChecker('dossierName') + }); } private _createQuickFilters() { diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview-screen/dossier-overview-screen.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview-screen/dossier-overview-screen.component.html index 7b4596c8e..08e38a233 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview-screen/dossier-overview-screen.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview-screen/dossier-overview-screen.component.html @@ -3,7 +3,6 @@ (closeAction)="routerHistoryService.navigateToLastDossiersScreen()" [actionConfigs]="actionConfigs" [fileAttributeConfigs]="fileAttributeConfigs" - [searchPlaceholder]="'dossier-overview.search' | translate" [showCloseButton]="true" > acc || f.checker(file), false)) }); + + const filesNamesFilters = this.entitiesService.all.map(file => ({ + key: file.filename, + label: file.filename + })); + + this.filterService.addFilterGroup({ + slug: 'filesNamesFilter', + label: this._translateService.instant('dossier-overview.filters.label'), + icon: 'red:document', + filters: filesNamesFilters, + checker: keyChecker('filename'), + filterceptionPlaceholder: this._translateService.instant('dossier-overview.filters.search') + }); } private _createQuickFilters() { diff --git a/apps/red-ui/src/assets/i18n/de.json b/apps/red-ui/src/assets/i18n/de.json index 6bc4c7da7..8a70e5f56 100644 --- a/apps/red-ui/src/assets/i18n/de.json +++ b/apps/red-ui/src/assets/i18n/de.json @@ -565,7 +565,10 @@ "reanalyse": { "action": "Analysieren Sie das gesamte Dossier" }, - "search": "Dossiername ...", + "filters": { + "label": "Dossiername", + "search": "Dossiername..." + }, "stats": { "analyzed-pages": "Seiten", "charts": { @@ -658,7 +661,10 @@ "reanalyse": { "action": "Datei analysieren" }, - "search": "Dokumentname...", + "filters": { + "label": "Dokumentname", + "search": "Dokumentname..." + }, "table-col-names": { "added-on": "Hinzugefügt", "assigned-to": "Zugewiesen an", diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index 65a3f04dd..b69d3f774 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -589,7 +589,10 @@ "reanalyse": { "action": "Analyze entire dossier" }, - "search": "Dossier name...", + "filters": { + "label": "Dossier Name", + "search": "Dossier name..." + }, "stats": { "analyzed-pages": "Pages", "charts": { @@ -682,7 +685,10 @@ "reanalyse": { "action": "Analyze File" }, - "search": "Document name...", + "filters": { + "label": "Document Name", + "search": "Document name..." + }, "table-col-names": { "added-on": "Added", "assigned-to": "Assigned to", diff --git a/libs/common-ui b/libs/common-ui index 45f90be54..46b41c15d 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 45f90be54be458341052ee11b2df85c6d8897af4 +Subproject commit 46b41c15d0d282b0e228023b1ac612226fc7de5d From 4b33df59028e7e36dd9849077f584e259893fa1b Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Fri, 27 Aug 2021 23:48:54 +0300 Subject: [PATCH 2/2] fix secondary filters --- .../file-preview-screen/file-preview-screen.component.ts | 5 +++-- libs/common-ui | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) 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 150d04595..72150f1fd 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 @@ -10,7 +10,8 @@ import { FilterService, LoadingService, NestedFilter, - processFilters + processFilters, + Toaster } from '@iqser/common-ui'; import { MatDialogRef, MatDialogState } from '@angular/material/dialog'; import { ManualRedactionEntryWrapper } from '@models/file/manual-redaction-entry.wrapper'; @@ -20,7 +21,6 @@ import { AnnotationData, FileDataModel } from '@models/file/file-data.model'; import { FileActionService } from '../../services/file-action.service'; import { AnnotationDrawService } from '../../services/annotation-draw.service'; import { AnnotationProcessingService } from '../../services/annotation-processing.service'; -import { Toaster } from '@iqser/common-ui'; import { FileStatusWrapper } from '@models/file/file-status.wrapper'; import { PermissionsService } from '@services/permissions.service'; import { timer } from 'rxjs'; @@ -295,6 +295,7 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni const secondaryFilters = this._filterService.getGroup('secondaryFilters')?.filters; this._filterService.addFilterGroup({ slug: 'secondaryFilters', + filterTemplate: this._filterTemplate, filters: processFilters(secondaryFilters, AnnotationProcessingService.secondaryAnnotationFilters) }); console.log('[REDACTION] Process time: ' + (new Date().getTime() - processStartTime) + 'ms'); diff --git a/libs/common-ui b/libs/common-ui index 46b41c15d..67bde73b9 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 46b41c15d0d282b0e228023b1ac612226fc7de5d +Subproject commit 67bde73b9c115f7d5636e034b82083f02b3da0a7