From f4ae28888e3abf9499d6669a65d7a4979a7c26aa Mon Sep 17 00:00:00 2001 From: Bamboo Date: Wed, 15 Dec 2021 11:22:48 +0100 Subject: [PATCH 01/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3208 -> 3208 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 287c958c5..5e74a8890 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.105.0", + "version": "3.106.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index 646cc9b83db5db519130494d41a5937cf7a0ec32..2821cd1e62d8bea2505eb50cad70f633f4671a2c 100644 GIT binary patch literal 3208 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 u&gERr?ZuSYt>4Pyhf0n?@)A literal 3208 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 From e312f40a84c07ca53f004bb5d7dd45752c3e9c1a Mon Sep 17 00:00:00 2001 From: Edi Cziszter Date: Wed, 15 Dec 2021 12:37:02 +0200 Subject: [PATCH 02/13] reload returns promise --- apps/red-ui/src/app/services/user-preference.service.ts | 4 ++-- apps/red-ui/src/app/utils/configuration.initializer.ts | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/red-ui/src/app/services/user-preference.service.ts b/apps/red-ui/src/app/services/user-preference.service.ts index e2ac56f9e..ac318c13d 100644 --- a/apps/red-ui/src/app/services/user-preference.service.ts +++ b/apps/red-ui/src/app/services/user-preference.service.ts @@ -68,8 +68,8 @@ export class UserPreferenceService extends GenericService { window.location.reload(); } - reload(): void { - this.getAll() + reload(): Promise { + return this.getAll() .toPromise() .then(attributes => { this._userAttributes = attributes ?? {}; diff --git a/apps/red-ui/src/app/utils/configuration.initializer.ts b/apps/red-ui/src/app/utils/configuration.initializer.ts index 7350337e9..2f31bef07 100644 --- a/apps/red-ui/src/app/utils/configuration.initializer.ts +++ b/apps/red-ui/src/app/utils/configuration.initializer.ts @@ -23,8 +23,7 @@ export function configurationInitializer( switchMap(loggedIn => (!loggedIn ? throwError('Not Logged In') : of({}))), mergeMapTo(generalSettingsService.getGeneralConfigurations()), tap(configuration => configService.updateDisplayName(configuration.displayName)), - tap(() => userPreferenceService.reload()), - tap(() => languageService.chooseAndSetInitialLanguage()), + tap(() => userPreferenceService.reload().then(() => languageService.chooseAndSetInitialLanguage())), catchError(() => { title.setTitle('RedactManager'); return of({}); From ce13cda5a6370e0fa530fe4c6ef27efc6dd699e3 Mon Sep 17 00:00:00 2001 From: Bamboo Date: Wed, 15 Dec 2021 13:45:16 +0100 Subject: [PATCH 03/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3208 -> 3208 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5e74a8890..7cd69e569 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.106.0", + "version": "3.107.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index 2821cd1e62d8bea2505eb50cad70f633f4671a2c..3bcc7666c27c3fe47bc887701581240d9f565048 100644 GIT binary patch delta 3147 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 Date: Wed, 15 Dec 2021 23:30:45 +0200 Subject: [PATCH 04/13] better fix for RED-2484 --- .../file-workload.component.html | 183 +++++++++--------- .../file-workload.component.scss | 4 + .../file-workload/file-workload.component.ts | 7 +- .../page-exclusion.component.ts | 2 - .../page-indicator.component.ts | 25 +-- .../pdf-viewer/pdf-viewer.component.ts | 6 +- .../file-preview-screen.component.ts | 61 +++--- .../modules/dossier/utils/pdf-viewer.utils.ts | 12 +- .../services/entity-services/files.service.ts | 4 +- 9 files changed, 145 insertions(+), 159 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.html b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.html index 8a063381a..7111f4d66 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.html @@ -19,6 +19,7 @@ iqserHelpMode="bulk-select-annotations" translate="file-preview.tabs.annotations.select" > + @@ -118,99 +119,103 @@
- -
- - +
+ + - - {{ activeViewerPage }} - - {{ activeAnnotations?.length || 0 }} - - + + {{ activeViewerPage }} - + {{ activeAnnotations?.length || 0 }} + + -
-
-
+
+
+
+
+
+ +
+ + + + {{ 'file-preview.tabs.annotations.page-is' | translate }} + . + + + +
+ + +
-
+ -
- - - - {{ 'file-preview.tabs.annotations.page-is' | translate }} - . - - - -
- - - -
-
- - -
- + +
diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.scss b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.scss index 64f58538a..78609b428 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.scss +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.scss @@ -151,3 +151,7 @@ ::ng-deep .page-separator iqser-circle-button mat-icon { color: var(--iqser-primary); } + +[hidden] { + display: none !important; +} diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.ts index 999da819d..0607b4055 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/file-workload/file-workload.component.ts @@ -21,7 +21,6 @@ import { IconButtonTypes, INestedFilter, IqserEventTarget, - Required, shareDistinctLast, shareLast, } from '@iqser/common-ui'; @@ -38,7 +37,7 @@ const COMMAND_KEY_ARRAY = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'E const ALL_HOTKEY_ARRAY = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']; @Component({ - selector: 'redaction-file-workload', + selector: 'redaction-file-workload [file]', templateUrl: './file-workload.component.html', styleUrls: ['./file-workload.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, @@ -53,7 +52,7 @@ export class FileWorkloadComponent { @Input() shouldDeselectAnnotationsOnPageChange: boolean; @Input() dialogRef: MatDialogRef; @Input() viewedPages: IViewedPage[]; - @Input() @Required() file!: File; + @Input() file!: File; @Input() hideSkipped: boolean; @Input() annotationActionsTemplate: TemplateRef; @Input() viewer: WebViewerInstance; @@ -161,7 +160,7 @@ export class FileWorkloadComponent { } } - hasOnlyManualRedactionsAndNotExcluded(pageNumber: number): boolean { + hasOnlyManualRedactionsAndIsExcluded(pageNumber: number): boolean { const hasOnlyManualRedactions = this.displayedAnnotations.get(pageNumber).every(annotation => annotation.manual); return hasOnlyManualRedactions && this.file.excludedPages.includes(pageNumber); } diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-exclusion/page-exclusion.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-exclusion/page-exclusion.component.ts index 58dc2bc0c..ba2eb3b72 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-exclusion/page-exclusion.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-exclusion/page-exclusion.component.ts @@ -67,7 +67,6 @@ export class PageExclusionComponent implements OnChanges { ) .toPromise(); this._inputComponent.reset(); - this.excludedPagesService.toggle(); } catch (e) { this._toaster.error(_('file-preview.tabs.exclude-pages.error')); } @@ -86,7 +85,6 @@ export class PageExclusionComponent implements OnChanges { ) .toPromise(); this._inputComponent.reset(); - this.excludedPagesService.toggle(); this._loadingService.stop(); } } diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-indicator/page-indicator.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-indicator/page-indicator.component.ts index 2ae2b8f06..dc417f73d 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-indicator/page-indicator.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/page-indicator/page-indicator.component.ts @@ -14,12 +14,8 @@ import { FilesMapService } from '@services/entity-services/files-map.service'; changeDetection: ChangeDetectionStrategy.OnPush, }) export class PageIndicatorComponent extends AutoUnsubscribe implements OnDestroy, OnChanges { - @Input() - file: File; - - @Input() - active = false; - + @Input() file: File; + @Input() active = false; @Input() showDottedIcon = false; @Input() number: number; @Input() viewedPages: IViewedPage[]; @@ -84,23 +80,6 @@ export class PageIndicatorComponent extends AutoUnsubscribe implements OnDestroy } } - // @HostListener('window:keydown', ['$event']) - // handleKeyDown(event: KeyboardEvent) { - // if (this.canMarkPagesAsViewed) { - // if (this.active && event.key === ' ') { - // if ( - // document.activeElement && - // document.activeElement.className.indexOf('activePanel') >= 0 - // ) { - // this.toggleReadState(); - // event.stopPropagation(); - // event.preventDefault(); - // return false; - // } - // } - // } - // } - private async _markPageRead() { await this._viewedPagesService.addPage({ page: this.number }, this.file.dossierId, this.file.fileId).toPromise(); if (this.activePage) { diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/pdf-viewer/pdf-viewer.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/pdf-viewer/pdf-viewer.component.ts index daa248d77..059d44dc7 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/pdf-viewer/pdf-viewer.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/pdf-viewer/pdf-viewer.component.ts @@ -284,7 +284,7 @@ export class PdfViewerComponent implements OnInit, OnChanges { this._selectedText = selectedText; const textActions = [dataElements.ADD_DICTIONARY, dataElements.ADD_FALSE_POSITIVE]; - if (selectedText.length > 2 && this.canPerformActions && !this.utils.isCurrentPageExcluded) { + if (selectedText.length > 2 && this.canPerformActions && !this.utils.isCurrentPageExcluded(this.file)) { this.instance.UI.enableElements(textActions); } else { this.instance.UI.disableElements(textActions); @@ -588,7 +588,7 @@ export class PdfViewerComponent implements OnInit, OnChanges { ANNOTATION_POPUP, ]; - if (this.canPerformActions && !this.utils.isCurrentPageExcluded) { + if (this.canPerformActions && !this.utils.isCurrentPageExcluded(this.file)) { try { this.instance.UI.enableTools(['AnnotationCreateRectangle']); } catch (e) { @@ -605,7 +605,7 @@ export class PdfViewerComponent implements OnInit, OnChanges { let elementsToDisable = [...elements, ADD_RECTANGLE]; - if (this.utils.isCurrentPageExcluded) { + if (this.utils.isCurrentPageExcluded(this.file)) { const allowedActionsWhenPageExcluded: string[] = [ANNOTATION_POPUP, ADD_RECTANGLE, ADD_REDACTION, SHAPE_TOOL_GROUP_BUTTON]; elementsToDisable = elementsToDisable.filter(element => !allowedActionsWhenPageExcluded.includes(element)); } else { 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 ec3849327..16976197e 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 @@ -330,7 +330,7 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni .map(p => p.page) .filter((item, pos, self) => self.indexOf(item) === pos); for (const page of distinctPages) { - await this._cleanupAndRedrawManualAnnotationsForEntirePage(page); + await this._reloadAnnotationsForPage(page); } } }, @@ -398,7 +398,7 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni this._instance = $event; this.ready = true; await this._stampPDF(); - await this._cleanupAndRedrawManualAnnotations(); + await this._reloadAnnotations(); this._setExcludedPageStyles(); this._instance.Core.documentViewer.addEventListener('pageComplete', () => { @@ -419,7 +419,7 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni } async annotationsChangedByReviewAction(annotation: AnnotationWrapper) { - await this._cleanupAndRedrawManualAnnotationsForEntirePage(annotation?.pageNumber || this.activeViewerPage); + await this._reloadAnnotationsForPage(annotation?.pageNumber || this.activeViewerPage); } ocredFile(): void { @@ -548,27 +548,32 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni await this._loadFileData(file, !this._reloadFileOnReanalysis); this._reloadFileOnReanalysis = false; this._loadingService.stop(); - await this._cleanupAndRedrawManualAnnotations(); + await this._reloadAnnotations(); }); } - private async _loadFileData(file: File, performUpdate = false): Promise { + private async _loadFileData(file: File, performUpdate = false): Promise { + if (!file || file.isError) { + return this._router.navigate([this._dossiersService.find(this.dossierId).routerLink]); + } + const fileData = await this._fileDownloadService.loadDataFor(file).toPromise(); - if (!file?.isPending && !file?.isError) { + if (!file.isPending) { + let excludedOrIncludedPages = new Set(); + let currentPageAnnotations: AnnotationWrapper[] = []; + if (performUpdate && !!this.fileData) { this.fileData.redactionLog = fileData.redactionLog; this.fileData.viewedPages = fileData.viewedPages; + excludedOrIncludedPages = new Set([...this.fileData.file.excludedPages, ...file.excludedPages]); + currentPageAnnotations = this.annotations.filter(a => excludedOrIncludedPages.has(a.pageNumber)); + this.fileData.file = file; } else { this.fileData = fileData; } - this.rebuildFilters(); - return; - } - - if (file.isError) { - await this._router.navigate([this._dossiersService.find(this.dossierId).routerLink]); + return this._cleanupAndRedrawAnnotations(currentPageAnnotations, a => excludedOrIncludedPages.has(a.pageNumber)); } } @@ -578,36 +583,32 @@ export class FilePreviewScreenComponent extends AutoUnsubscribe implements OnIni this._workloadComponent?.scrollAnnotations(); } - private async _cleanupAndRedrawManualAnnotations() { - const currentAnnotations = this.annotations; + private async _reloadAnnotations() { this.fileData.redactionLog = await this._fileDownloadService.loadRedactionLogFor(this.dossierId, this.fileId).toPromise(); - this.rebuildFilters(); - - if (this.viewModeService.viewMode === 'STANDARD') { - currentAnnotations.forEach(annotation => { - this._findAndDeleteAnnotation(annotation.id); - }); - const newAnnotations = this.annotations; - this._handleDeltaAnnotationFilters(currentAnnotations, newAnnotations); - await this._redrawAnnotations(newAnnotations); - } + await this._cleanupAndRedrawAnnotations(this.annotations); } - private async _cleanupAndRedrawManualAnnotationsForEntirePage(page: number) { + private async _reloadAnnotationsForPage(page: number) { const currentPageAnnotations = this.annotations.filter(a => a.pageNumber === page); - const currentPageAnnotationIds = currentPageAnnotations.map(a => a.id); await this._filesService.reload(this.dossierId, this.fileId).toPromise(); this.fileData.redactionLog = await this._fileDownloadService.loadRedactionLogFor(this.dossierId, this.fileId).toPromise(); + await this._cleanupAndRedrawAnnotations(currentPageAnnotations, annotation => annotation.pageNumber === page); + } + + private async _cleanupAndRedrawAnnotations( + annotationsToDelete: AnnotationWrapper[], + newAnnotationsFilter?: (annotation: AnnotationWrapper) => boolean, + ) { this.rebuildFilters(); if (this.viewModeService.viewMode === 'STANDARD') { - currentPageAnnotationIds.forEach(id => { - this._findAndDeleteAnnotation(id); + annotationsToDelete?.forEach(annotation => { + this._findAndDeleteAnnotation(annotation.id); }); - const newPageAnnotations = this.annotations.filter(item => item.pageNumber === page); - this._handleDeltaAnnotationFilters(currentPageAnnotations, newPageAnnotations); + const newPageAnnotations = newAnnotationsFilter ? this.annotations.filter(newAnnotationsFilter) : this.annotations; + this._handleDeltaAnnotationFilters(annotationsToDelete ?? [], newPageAnnotations); await this._redrawAnnotations(newPageAnnotations); } } diff --git a/apps/red-ui/src/app/modules/dossier/utils/pdf-viewer.utils.ts b/apps/red-ui/src/app/modules/dossier/utils/pdf-viewer.utils.ts index 42bcbf6d6..5b29b9c07 100644 --- a/apps/red-ui/src/app/modules/dossier/utils/pdf-viewer.utils.ts +++ b/apps/red-ui/src/app/modules/dossier/utils/pdf-viewer.utils.ts @@ -2,6 +2,7 @@ import { translateQuads } from '@utils/pdf-coordinates'; import { AnnotationWrapper } from '@models/file/annotation.wrapper'; import { Core, WebViewerInstance } from '@pdftron/webviewer'; import { ViewModeService } from '../screens/file-preview-screen/services/view-mode.service'; +import { File } from '@red/domain'; import Annotation = Core.Annotations.Annotation; const DISABLED_HOTKEYS = [ @@ -39,7 +40,6 @@ const DISABLED_HOTKEYS = [ export class PdfViewerUtils { ready = false; - excludedPages: number[] = []; constructor(readonly instance: WebViewerInstance, readonly viewModeService: ViewModeService) {} @@ -47,11 +47,6 @@ export class PdfViewerUtils { return this.viewModeService.isCompare ? 2 : 1; } - get isCurrentPageExcluded() { - const currentPage = this.currentPage; - return !!this.excludedPages?.includes(currentPage); - } - get currentPage() { try { return this.viewModeService.isCompare ? Math.ceil(this._currentInternalPage / 2) : this._currentInternalPage; @@ -88,6 +83,11 @@ export class PdfViewerUtils { return this.instance?.Core.documentViewer?.getPageCount(); } + isCurrentPageExcluded(file: File) { + const currentPage = this.currentPage; + return !!file?.excludedPages?.includes(currentPage); + } + navigateToPage(pageNumber: string | number) { const parsedNumber = typeof pageNumber === 'string' ? parseInt(pageNumber, 10) : pageNumber; this._navigateToPage(this.paginationOffset === 2 ? parsedNumber * this.paginationOffset - 1 : parsedNumber); diff --git a/apps/red-ui/src/app/services/entity-services/files.service.ts b/apps/red-ui/src/app/services/entity-services/files.service.ts index 485854529..258c93870 100644 --- a/apps/red-ui/src/app/services/entity-services/files.service.ts +++ b/apps/red-ui/src/app/services/entity-services/files.service.ts @@ -42,9 +42,9 @@ export class FilesService extends EntitiesService { } @Validate() - setUnderApprovalFor(@RequiredParam() fileIds: List, @RequiredParam() dossierId: string, asigneeId: string) { + setUnderApprovalFor(@RequiredParam() fileIds: List, @RequiredParam() dossierId: string, assigneeId: string) { const url = `${this._defaultModelPath}/under-approval/${dossierId}/bulk`; - return this._post(fileIds, url, [{ key: 'assigneeId', value: asigneeId }]).pipe(switchMap(() => this.loadAll(dossierId))); + return this._post(fileIds, url, [{ key: 'assigneeId', value: assigneeId }]).pipe(switchMap(() => this.loadAll(dossierId))); } /** From 9f114ada6d66c400da00a0570636bb2254020d17 Mon Sep 17 00:00:00 2001 From: Bamboo Date: Wed, 15 Dec 2021 22:41:05 +0100 Subject: [PATCH 05/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3208 -> 3208 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7cd69e569..31cf1711c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.107.0", + "version": "3.108.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index 3bcc7666c27c3fe47bc887701581240d9f565048..423c999ee8ef950517d399b024e26cbcb27244b2 100644 GIT binary patch literal 3208 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 literal 3208 zcmV;340rP%iwFP!000001MM5za^tpjpZyi6Gws-^DDx`G@?^WoG-+QtohE7f(ie~f zMRX~WA;Go19nbVP`qYYqnF>3xB;erS+;A=cGQTNtMmL4U zQnDpCuRcbzp)CVjd^*AMmF+B{EyQoxUOB!KEWCy7EnFCP9e?=>1s{c)L2GJ;D})Zh z<;A8dn)2fl^wYMvu7CNXW{(-Ee=KV_UH|^l_s;tNDcWBBS0u&}lVkI!uAjFCSMb80 z(!b}}UeM{^30#140b=nA**`9;=JtQC|2I*JtC}!$`R8xHvR0RO7jNjcEGmYYD!aN& z87u4c%}r9|te$U*Vv`YE(s~{h+Z!+l_csaN((LiGKb9o_^*1=L*OcLGcE3s48++#2 z_MJWR#os{uU5LL+@plD(9RcGA7)QW30>%+A4u|Y0Of(g&ZNFr1>3vC70KD1k^iWvYTi{AG-sqT*n-WiLHuVQ z$HF=--br~I3@DEMI1rdF-fT%sF)H%x5!F#eNRDtGqbp^LEct%B7P!p&TGOEKwsJ7< z?SWMb%S>PI6mIKels(|EF%xhib+&d zxOM5Eds1=POjFfl`=kcH}A#)05@fzISG_c_HjmOXBrdzG zk25wxc{_=687U~=HlS8UPzV`k2qwyrCzg+u0f7S5o8khaW&wHMgN5p6NZ|;U3TLGN2KU*qhu8wj1wg`20`* z`RBiCbd`SizDekYpsy-0kNkRwZF)BZk|RCYw<=OM8JkKVlK}oL+j(*VM~Z3Z%Vb3B zBZkZ(_pZ}N!IjN}8~-O}G?`qZg{_t3cp^(XEfdp2qvy7Sj#lj$O(9feJX|UH5N)k$)=0(4}M!9coWT>D@JIV=vxtNb{5 z;y8iRSE+MamV{{n*xk4=?ZLyR&{7!W#DZS8iF*hmY%lil(8mtk=zOg}Xf00a6CHprxdokvCa zD2_YKxOU^}L07=*EzsM#0$?#@SL!-AAq-;z$zSfZ|2bLY& zrXr7!ld2V$Hso@q{5BE|hCCR;7)PNu8uE?e6GOo?84IIi#n95I+zl@U1ogI^B(`CU zlOIGRxYbZTLNZm{i-}1RuDsAN=o+=j>s&{xhj#jGh+r-XVvlGTQ<9b2A||_iB#4u4 zm2c0Q#w5g(XMQ`~K=lI&CV+Nh?{IasN9WfXK&#Pf9g*DqETuUgfQ;wc3P|ADjrjF@ zD77FU!Oy1wwezgl6oykC2)u1}@r(9a18Dk)QqZzlegkSm@|qt?br?DsW+YK_si{d#wr_e@ha53| zKO(=cyjT&T`6hcT)BbWm*gzmx;^PvLD%;n?NvhfTJLE<0D8u5xs#6>n_uWC6>V~UlZVrLro7}da~iEGtsG+e zR1vfVF(OC9E1z5mo9Mkl9Ln zx|l)2q6W3wCD=WPop>_e3BNl^h|4HV5)gljUS?gw_8m|0UC$9n-rZ-#iIAw?+N$W zYSqpw8Q=<*h1!W#14XgSuVYu2Va(55gAVZGwp;y||2i%L3MCI9J_ zJaPRenUN=RlBeCTp0!<<Rl-SfFo&N&jm+tr)3vrOOwU9d)Hf zT&d7jO43@h(HEHrNvi)Ub?4&tK5s6LUk#5&ChcOl6`wjB?FTR!KMq#hD6X}N@bAFn^!1?%)cM$bN35MYQt|^R$oO94LIJ~S&kuZi z2C2XdEdqXc;P}_0#XxhVCVYb!vB(2 z1S;+$9uKJClWzuepyQqj4CWm9LSR77iysCI@x3I2*0tL`0~qkR_xAr3LG}guNrLSC zaak1+iNX3ri8ikpDG$7xok;N$?2D%kR2^zANau7Jb)3 zc9q>{MaC}cIMKDVA9)x%0eadQ>?D$BAH9yGKMZ{*K3IPmD{qLgdnkJlW1wMFbU(!C z9gETTRE&!0yfENDjV*7K^qp2TNQ~p$abNHeQ_K;p8$7!FokWlnQ8RUI{d51%Dd%=> u=XP%Ac5df(Zs&Gx=XP%Ac5df(Zs&Gx=XP%Ac5dhPtoC1+jX$9PPyhhZuR=)x From c78fd322689c9b85dbc43a67a205f7847ebc50fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Fri, 17 Dec 2021 14:26:44 +0200 Subject: [PATCH 06/13] Updated common --- libs/common-ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/common-ui b/libs/common-ui index caf4838be..1febd714c 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit caf4838be63574740e5380c74ad96fe21f7a456b +Subproject commit 1febd714cd690c0615cb62c3d588bb08494e7466 From 396b24dbb4b064bdf0cd6bb4d660f9f59cc24558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Mon, 13 Dec 2021 10:33:17 +0200 Subject: [PATCH 07/13] RED-2659 --- .../src/app/models/file/annotation.wrapper.ts | 21 +++++ .../file/redaction-log-entry.wrapper.ts | 6 ++ .../annotation-details.component.html} | 10 ++- .../annotation-details.component.scss} | 11 +++ .../annotation-details.component.ts | 89 +++++++++++++++++++ .../annotation-source.component.ts | 63 ------------- .../annotations-list.component.html | 4 +- .../annotations-list.component.scss | 6 -- .../file-preview.module.ts | 4 +- .../services/annotation-processing.service.ts | 8 +- .../src/app/modules/icons/icons.module.ts | 1 + .../annotation-changes-translations.ts | 11 +++ apps/red-ui/src/assets/i18n/en.json | 12 ++- .../icons/general/redaction-changes.svg | 10 +++ 14 files changed, 174 insertions(+), 82 deletions(-) rename apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/{annotation-source/annotation-source.component.html => annotation-details/annotation-details.component.html} (69%) rename apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/{annotation-source/annotation-source.component.scss => annotation-details/annotation-details.component.scss} (85%) create mode 100644 apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.ts delete mode 100644 apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.ts create mode 100644 apps/red-ui/src/app/translations/annotation-changes-translations.ts create mode 100644 apps/red-ui/src/assets/icons/general/redaction-changes.svg diff --git a/apps/red-ui/src/app/models/file/annotation.wrapper.ts b/apps/red-ui/src/app/models/file/annotation.wrapper.ts index 7c2876e8f..51a75e509 100644 --- a/apps/red-ui/src/app/models/file/annotation.wrapper.ts +++ b/apps/red-ui/src/app/models/file/annotation.wrapper.ts @@ -58,6 +58,12 @@ export class AnnotationWrapper { changeLogType?: 'ADDED' | 'REMOVED' | 'CHANGED'; engines?: string[]; + hasBeenResized: boolean; + hasBeenRecategorized: boolean; + hasLegalBasisChanged: boolean; + hasBeenForced: boolean; + hasBeenRemovedByManualOverride: boolean; + private _origin: RedactionLogEntryWrapper; get isChangeLogRemoved() { @@ -169,6 +175,16 @@ export class AnnotationWrapper { return this.dictionaryOperation; } + get hasRedactionChanges(): boolean { + return ( + this.hasBeenResized || + this.hasBeenRecategorized || + this.hasLegalBasisChanged || + this.hasBeenForced || + this.hasBeenRemovedByManualOverride + ); + } + get isConvertedRecommendation() { return this.isRecommendation && this.superType === 'suggestion-add-dictionary'; } @@ -221,6 +237,11 @@ export class AnnotationWrapper { annotationWrapper.engines = redactionLogEntry.engines; annotationWrapper.section = redactionLogEntry.section; annotationWrapper.rectangle = redactionLogEntry.rectangle; + annotationWrapper.hasBeenResized = redactionLogEntry.hasBeenResized; + annotationWrapper.hasBeenRecategorized = redactionLogEntry.hasBeenRecategorized; + annotationWrapper.hasLegalBasisChanged = redactionLogEntry.hasLegalBasisChanged; + annotationWrapper.hasBeenForced = redactionLogEntry.hasBeenForced; + annotationWrapper.hasBeenRemovedByManualOverride = redactionLogEntry.hasBeenRemovedByManualOverride; this._createContent(annotationWrapper, redactionLogEntry); this._setSuperType(annotationWrapper, redactionLogEntry); diff --git a/apps/red-ui/src/app/models/file/redaction-log-entry.wrapper.ts b/apps/red-ui/src/app/models/file/redaction-log-entry.wrapper.ts index 9dc800a87..f3bcacbd8 100644 --- a/apps/red-ui/src/app/models/file/redaction-log-entry.wrapper.ts +++ b/apps/red-ui/src/app/models/file/redaction-log-entry.wrapper.ts @@ -46,4 +46,10 @@ export interface RedactionLogEntryWrapper { recategorizationType?: string; legalBasisChangeValue?: string; engines?: string[]; + + hasBeenResized?: boolean; + hasBeenRecategorized?: boolean; + hasLegalBasisChanged?: boolean; + hasBeenForced?: boolean; + hasBeenRemovedByManualOverride?: boolean; } diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.html b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.html similarity index 69% rename from apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.html rename to apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.html index 766e23aa6..01bdc134e 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.html @@ -1,15 +1,19 @@ +
+ +
+ -
+
diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.scss b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.scss similarity index 85% rename from apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.scss rename to apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.scss index c731a1878..d8356a43f 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.scss +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.scss @@ -1,5 +1,12 @@ @use '../../../../../../../assets/styles/variables'; +:host { + display: flex; + position: absolute; + top: 6px; + right: 8px; +} + .popover { width: 260px; padding: 10px; @@ -44,6 +51,10 @@ margin-right: 8px; } } + + &:not(:last-child) { + margin-right: 2px; + } } mat-icon { diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.ts new file mode 100644 index 000000000..745b6212a --- /dev/null +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-details/annotation-details.component.ts @@ -0,0 +1,89 @@ +import { ChangeDetectionStrategy, Component, Input, OnChanges, SimpleChanges } from '@angular/core'; +import { AnnotationWrapper } from '@models/file/annotation.wrapper'; +import { TranslateService } from '@ngx-translate/core'; +import { annotationChangesTranslations } from '../../../../../../translations/annotation-changes-translations'; +import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; + +interface Engine { + readonly icon: string; + readonly description: string; + readonly show: boolean; +} + +const Engines = { + DICTIONARY: 'DICTIONARY', + NER: 'NER', + RULE: 'RULE', +} as const; + +type EngineName = keyof typeof Engines; + +@Component({ + selector: 'redaction-annotation-details', + templateUrl: './annotation-details.component.html', + styleUrls: ['./annotation-details.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, +}) +export class AnnotationDetailsComponent implements OnChanges { + @Input() annotation: AnnotationWrapper; + + isPopoverOpen = false; + hasEnginesToShow: boolean; + engines: readonly Engine[]; + + hasChangesToShow: boolean; + changesTooltip: string; + + constructor(private readonly _translateService: TranslateService) {} + + ngOnChanges(changes: SimpleChanges) { + if (changes.annotation) { + this._updateChanges(); + this._updateEngines(); + } + } + + private _updateChanges(): void { + const changesProperties = [ + 'hasBeenResized', + 'hasBeenRecategorized', + 'hasLegalBasisChanged', + 'hasBeenForced', + 'hasBeenRemovedByManualOverride', + ]; + const changes = changesProperties.filter(key => this.annotation[key]); + const header = this._translateService.instant(_('annotation-changes.header')); + const details = changes + .map(change => this._translateService.instant(annotationChangesTranslations[change])) + .map(change => `• ${change}`); + this.changesTooltip = [header, ...details].join('\n'); + + this.hasChangesToShow = changes.length > 0; + } + + private _updateEngines(): void { + this.engines = [ + { + icon: 'red:dictionary', + description: this._translateService.instant('annotation-engines.dictionary', { isHint: this.annotation.hint }), + show: this._isBasedOn(Engines.DICTIONARY), + }, + { + icon: 'red:ai', + description: this._translateService.instant('annotation-engines.ner'), + show: this._isBasedOn(Engines.NER), + }, + { + icon: 'red:rule', + description: this._translateService.instant('annotation-engines.rule', { rule: this.annotation.legalBasisValue }), + show: this._isBasedOn(Engines.RULE), + }, + ]; + + this.hasEnginesToShow = this.engines.length && this.engines.some(source => source.show); + } + + private _isBasedOn(engineName: EngineName) { + return !!this.annotation.engines?.includes(engineName); + } +} diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.ts deleted file mode 100644 index 434b1dd03..000000000 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotation-source/annotation-source.component.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; -import { AnnotationWrapper } from '@models/file/annotation.wrapper'; -import { OnChange } from '@iqser/common-ui'; -import { TranslateService } from '@ngx-translate/core'; - -interface Engine { - readonly icon: string; - readonly description: string; - readonly show: boolean; -} - -const Engines = { - DICTIONARY: 'DICTIONARY', - NER: 'NER', - RULE: 'RULE', -} as const; - -type EngineName = keyof typeof Engines; - -@Component({ - selector: 'redaction-annotation-source', - templateUrl: './annotation-source.component.html', - styleUrls: ['./annotation-source.component.scss'], - changeDetection: ChangeDetectionStrategy.OnPush, -}) -export class AnnotationSourceComponent { - @Input() - @OnChange('updateEngines') - annotation: AnnotationWrapper; - - isPopoverOpen = false; - engines: readonly Engine[]; - - constructor(private readonly _translateService: TranslateService) {} - - get hasEnginesToShow(): boolean { - return this.engines.length && this.engines.some(source => source.show); - } - - updateEngines(): void { - this.engines = [ - { - icon: 'red:dictionary', - description: this._translateService.instant('annotation-engines.dictionary', { isHint: this.annotation.hint }), - show: this._isBasedOn(Engines.DICTIONARY), - }, - { - icon: 'red:ai', - description: this._translateService.instant('annotation-engines.ner'), - show: this._isBasedOn(Engines.NER), - }, - { - icon: 'red:rule', - description: this._translateService.instant('annotation-engines.rule', { rule: this.annotation.legalBasisValue }), - show: this._isBasedOn(Engines.RULE), - }, - ]; - } - - private _isBasedOn(engineName: EngineName) { - return !!this.annotation.engines?.includes(engineName); - } -} diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.html b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.html index b4a0acb70..368df6874 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.html @@ -4,8 +4,8 @@ [attr.annotation-id]="annotation.id" [attr.annotation-page]="activeViewerPage" [class.active]="isSelected(annotation.annotationId)" - [class.multi-select-active]="multiSelectService.active$ | async" [class.help-mode]="helpModeService.isHelpModeActive$ | async" + [class.multi-select-active]="multiSelectService.active$ | async" class="annotation-wrapper" >
@@ -59,5 +59,5 @@
- +
diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.scss b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.scss index c9df84618..e159e24af 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.scss +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/components/annotations-list/annotations-list.component.scss @@ -90,9 +90,3 @@ } } } - -redaction-annotation-source { - position: absolute; - top: 6px; - right: 8px; -} diff --git a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview.module.ts b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview.module.ts index 1943e4aae..6e9c902ae 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview.module.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/file-preview-screen/file-preview.module.ts @@ -7,7 +7,7 @@ import { SharedModule } from '@shared/shared.module'; import { SharedDossiersModule } from '../../shared/shared-dossiers.module'; import { FilePreviewScreenComponent } from './file-preview-screen.component'; import { FileWorkloadComponent } from './components/file-workload/file-workload.component'; -import { AnnotationSourceComponent } from './components/annotation-source/annotation-source.component'; +import { AnnotationDetailsComponent } from './components/annotation-details/annotation-details.component'; import { AnnotationsListComponent } from './components/annotations-list/annotations-list.component'; import { PageIndicatorComponent } from './components/page-indicator/page-indicator.component'; import { PageExclusionComponent } from './components/page-exclusion/page-exclusion.component'; @@ -33,7 +33,7 @@ const routes: Routes = [ declarations: [ FilePreviewScreenComponent, FileWorkloadComponent, - AnnotationSourceComponent, + AnnotationDetailsComponent, AnnotationsListComponent, PageIndicatorComponent, PageExclusionComponent, diff --git a/apps/red-ui/src/app/modules/dossier/services/annotation-processing.service.ts b/apps/red-ui/src/app/modules/dossier/services/annotation-processing.service.ts index 4c4ac1f28..a8c467bd8 100644 --- a/apps/red-ui/src/app/modules/dossier/services/annotation-processing.service.ts +++ b/apps/red-ui/src/app/modules/dossier/services/annotation-processing.service.ts @@ -19,12 +19,12 @@ export class AnnotationProcessingService { checker: (annotation: AnnotationWrapper) => annotation?.comments?.length > 0, }, { - id: 'with-reason-changes', - icon: 'red:reason', - label: _('filter-menu.with-reason-changes'), + id: 'redaction-changes', + icon: 'red:redaction-changes', + label: _('filter-menu.redaction-changes'), checked: false, topLevelFilter: true, - checker: (annotation: AnnotationWrapper) => annotation?.legalBasisChangeValue?.length > 0, + checker: (annotation: AnnotationWrapper) => annotation?.hasRedactionChanges, }, { id: 'unseen-pages', diff --git a/apps/red-ui/src/app/modules/icons/icons.module.ts b/apps/red-ui/src/app/modules/icons/icons.module.ts index 2448bfd6a..0945fd73e 100644 --- a/apps/red-ui/src/app/modules/icons/icons.module.ts +++ b/apps/red-ui/src/app/modules/icons/icons.module.ts @@ -50,6 +50,7 @@ export class IconsModule { 'ready-for-approval', 'reanalyse', 'reason', + 'redaction-changes', 'remove-from-dict', 'report', 'resize', diff --git a/apps/red-ui/src/app/translations/annotation-changes-translations.ts b/apps/red-ui/src/app/translations/annotation-changes-translations.ts new file mode 100644 index 000000000..7bd481fa1 --- /dev/null +++ b/apps/red-ui/src/app/translations/annotation-changes-translations.ts @@ -0,0 +1,11 @@ +import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; +import { AnnotationWrapper } from '../models/file/annotation.wrapper'; +import { KeysOf } from '@iqser/common-ui'; + +export const annotationChangesTranslations: { [key in KeysOf]?: string } = { + hasBeenResized: _('annotation-changes.resized'), + hasBeenRecategorized: _('annotation-changes.recategorized'), + hasLegalBasisChanged: _('annotation-changes.legal-basis'), + hasBeenForced: _('annotation-changes.forced'), + hasBeenRemovedByManualOverride: _('annotation-changes.removed-manual'), +} as const; diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index aeec13bf8..ad7d27030 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -261,6 +261,14 @@ "show": "Show", "undo": "Undo" }, + "annotation-changes": { + "forced": "Redaction forced", + "header": "Manual changes:", + "legal-basis": "Reason changed", + "recategorized": "Image category changed", + "removed-manual": "Redaction/Hint removed", + "resized": "Redaction area has been modified" + }, "annotation-engines": { "dictionary": "{isHint, select, true{Hint} other{Redaction}} based on dictionary", "ner": "Redaction based on AI", @@ -1111,9 +1119,9 @@ "filter-options": "Filter options", "filter-types": "Filter", "label": "Filter", + "redaction-changes": "Only annotations with redaction changes", "unseen-pages": "Only annotations on unseen pages", - "with-comments": "Only annotations with comments", - "with-reason-changes": "Only redactions with reason changes" + "with-comments": "Only annotations with comments" }, "filter": { "analysis": "Analysis pending", diff --git a/apps/red-ui/src/assets/icons/general/redaction-changes.svg b/apps/red-ui/src/assets/icons/general/redaction-changes.svg new file mode 100644 index 000000000..4e00eeffe --- /dev/null +++ b/apps/red-ui/src/assets/icons/general/redaction-changes.svg @@ -0,0 +1,10 @@ + + + + + + + + From ca94f5346091370141f756aa4a94bf170e02fe0e Mon Sep 17 00:00:00 2001 From: Bamboo Date: Fri, 17 Dec 2021 13:45:51 +0100 Subject: [PATCH 08/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3208 -> 3214 bytes paligo-theme/paligo-styles/redacto-theme.css | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 31cf1711c..e70ff0d6d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.108.0", + "version": "3.109.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index 423c999ee8ef950517d399b024e26cbcb27244b2..4be59414f24ed4b8c9ff2e5d66596b9f5a456051 100644 GIT binary patch literal 3214 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 diff --git a/paligo-theme/paligo-styles/redacto-theme.css b/paligo-theme/paligo-styles/redacto-theme.css index bdb03936c..5ceef3777 100644 --- a/paligo-theme/paligo-styles/redacto-theme.css +++ b/paligo-theme/paligo-styles/redacto-theme.css @@ -319,6 +319,7 @@ li.searchresultitem { --iqser-grey-5: #d3d5da; --iqser-grey-6: #f0f1f4; --iqser-grey-7: #9398a0; + --iqser-grey-8: #f9fafb; --iqser-green-1: #00ff00; --iqser-green-2: #5ce594; --iqser-yellow-1: #ffb83b; From bf118a6bfb93e1bdbef296eee7c7654bd9518694 Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Fri, 17 Dec 2021 15:20:37 +0200 Subject: [PATCH 09/13] fix RED-2656 --- libs/common-ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/common-ui b/libs/common-ui index 1febd714c..f353bd9b5 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 1febd714cd690c0615cb62c3d588bb08494e7466 +Subproject commit f353bd9b50f5031d13e5b1faba7b8bd2aad0b1c1 From e816867d8a5ddcfc8bbb23f278ef38bc365791a4 Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Fri, 17 Dec 2021 16:23:41 +0200 Subject: [PATCH 10/13] update common ui --- libs/common-ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/common-ui b/libs/common-ui index f353bd9b5..0610684e8 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit f353bd9b50f5031d13e5b1faba7b8bd2aad0b1c1 +Subproject commit 0610684e8fb963fab1f7dd51fd850a7b47287fca From f200c2d6d622f2be170ed59f83be96bd6f5778f1 Mon Sep 17 00:00:00 2001 From: Bamboo Date: Fri, 17 Dec 2021 16:11:00 +0100 Subject: [PATCH 11/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3214 -> 3213 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e70ff0d6d..9bae51549 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.109.0", + "version": "3.110.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index 4be59414f24ed4b8c9ff2e5d66596b9f5a456051..dae0be35f43212f8df20f42fbbf7cd15fa5b458a 100644 GIT binary patch delta 3118 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 IbO2BQ07c~pxc~qF delta 3119 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 J%AEjE005(F`bPi& From a7038d25d9e6843b6efcd990d4af0dc5114069ed Mon Sep 17 00:00:00 2001 From: Valentin Date: Fri, 17 Dec 2021 18:43:43 +0200 Subject: [PATCH 12/13] added 'download ready' notification type --- .../app/translations/notifications-translations.ts | 1 + apps/red-ui/src/assets/i18n/en.json | 13 +++++++------ libs/red-domain/src/lib/notifications/types.ts | 1 + 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/apps/red-ui/src/app/translations/notifications-translations.ts b/apps/red-ui/src/app/translations/notifications-translations.ts index adf4ca5bb..aa36fcc86 100644 --- a/apps/red-ui/src/app/translations/notifications-translations.ts +++ b/apps/red-ui/src/app/translations/notifications-translations.ts @@ -13,4 +13,5 @@ export const notificationsTranslations: { [key in NotificationType]: string } = [NotificationTypes.USER_DEGRADED_TO_REVIEWER]: _('notification.user-demoted-to-reviewer'), [NotificationTypes.USER_PROMOTED_TO_APPROVER]: _('notification.user-promoted-to-approver'), [NotificationTypes.USER_REMOVED_AS_DOSSIER_MEMBER]: _('notification.user-removed-as-dossier-member'), + [NotificationTypes.DOWNLOAD_READY]: _('notification.download-ready'), } as const; diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index ad7d27030..54da1734b 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -364,12 +364,12 @@ "save": "Save Changes" }, "content": { + "classification": "Value / Classification", "comment": "Comment", "legalBasis": "Legal Basis", "reason": "Select redaction reason", - "section": "Paragraph / Location", - "classification": "Value / Classification", - "reason-placeholder": "Select a reason..." + "reason-placeholder": "Select a reason...", + "section": "Paragraph / Location" }, "header": "Edit Redaction Reason" }, @@ -1264,14 +1264,14 @@ "save": "Save" }, "content": { + "classification": "Value / Classification", "comment": "Comment", "dictionary": "Dictionary", "legalBasis": "Legal Basis", "reason": "Reason", - "section": "Paragraph / Location", - "classification": "Value / Classification", "reason-placeholder": "Select a reason ...", "rectangle": "Custom Rectangle", + "section": "Paragraph / Location", "text": "Selected text:" }, "header": { @@ -1306,6 +1306,7 @@ "dossier-deleted": "Dossier: {dossierName} has been deleted!", "dossier-owner-removed": "{dossierName} owner removed!", "dossier-owner-set": " {dossierName} owner changed to {user}!", + "download-ready": "Your download is ready!", "no-data": "You currently have no notifications", "unassigned-from-file": "You have been unassigned from {fileName} in the {dossierName}!", "user-becomes-dossier-member": "{user} joined dossier: {dossierName}!", @@ -1498,9 +1499,9 @@ }, "search-screen": { "cols": { + "assignee": "Assignee", "document": "Document", "dossier": "Dossier", - "assignee": "Assignee", "pages": "Pages", "status": "Status" }, diff --git a/libs/red-domain/src/lib/notifications/types.ts b/libs/red-domain/src/lib/notifications/types.ts index fb1465a6f..4e59d8bbb 100644 --- a/libs/red-domain/src/lib/notifications/types.ts +++ b/libs/red-domain/src/lib/notifications/types.ts @@ -10,6 +10,7 @@ export const NotificationTypes = { USER_REMOVED_AS_DOSSIER_MEMBER: 'USER_REMOVED_AS_DOSSIER_MEMBER', // "You have been removed from a dossier" USER_PROMOTED_TO_APPROVER: 'USER_PROMOTED_TO_APPROVER', // "You are promoted to approver" USER_DEGRADED_TO_REVIEWER: 'USER_DEGRADED_TO_REVIEWER', // "You are denoted to reviewer" + DOWNLOAD_READY: 'DOWNLOAD_READY', } as const; export type NotificationType = keyof typeof NotificationTypes; From 35f625b3d8e5c7160755306c78903fb3d43ceb32 Mon Sep 17 00:00:00 2001 From: Bamboo Date: Fri, 17 Dec 2021 17:52:54 +0100 Subject: [PATCH 13/13] chore(release) --- package.json | 2 +- paligo-theme.tar.gz | Bin 3213 -> 3214 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9bae51549..91a9f08b4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "redaction", - "version": "3.110.0", + "version": "3.111.0", "private": true, "license": "MIT", "scripts": { diff --git a/paligo-theme.tar.gz b/paligo-theme.tar.gz index dae0be35f43212f8df20f42fbbf7cd15fa5b458a..840317a80606719a75b1fc26d2b8f74516cfac1c 100644 GIT binary patch delta 2884 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