From e92cbbf94db2918886df09eb3f7bfb2468a47331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Thu, 16 Mar 2023 21:47:07 +0200 Subject: [PATCH] RED-6316: Small refactor --- .../file-preview-screen.component.ts | 12 +++++++----- .../services/viewer-header.service.ts | 18 +++++++----------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/apps/red-ui/src/app/modules/file-preview/file-preview-screen.component.ts b/apps/red-ui/src/app/modules/file-preview/file-preview-screen.component.ts index 415f14fa1..73fb3e88f 100644 --- a/apps/red-ui/src/app/modules/file-preview/file-preview-screen.component.ts +++ b/apps/red-ui/src/app/modules/file-preview/file-preview-screen.component.ts @@ -690,12 +690,14 @@ export class FilePreviewScreenComponent .subscribe(); this.addActiveScreenSubscription = this._readableRedactionsService.active$.pipe(switchMap(() => this.updateViewMode())).subscribe(); - this.addActiveScreenSubscription = combineLatest([this._viewModeService.viewMode$, this._documentViewer.loaded$, this.state.file$]) + + this.addActiveScreenSubscription = combineLatest([this._viewModeService.viewMode$, this.state.file$, this._documentViewer.loaded$]) .pipe( - tap(([viewMode]) => - viewMode === 'STANDARD' || viewMode === 'TEXT_HIGHLIGHTS' - ? this._viewerHeaderService.updateRotationButtons(true) - : this._viewerHeaderService.updateRotationButtons(false), + map( + ([viewMode, file]) => ['STANDARD', 'TEXT_HIGHLIGHTS'].includes(viewMode) && this.permissionsService.canRotatePage(file), + ), + tap(canRotate => + canRotate ? this._viewerHeaderService.enableRotationButtons() : this._viewerHeaderService.disableRotationButtons(), ), ) .subscribe(); diff --git a/apps/red-ui/src/app/modules/pdf-viewer/services/viewer-header.service.ts b/apps/red-ui/src/app/modules/pdf-viewer/services/viewer-header.service.ts index aab9e08fc..226bae523 100644 --- a/apps/red-ui/src/app/modules/pdf-viewer/services/viewer-header.service.ts +++ b/apps/red-ui/src/app/modules/pdf-viewer/services/viewer-header.service.ts @@ -14,7 +14,6 @@ import { fromEvent, Observable, Subject } from 'rxjs'; import { ViewerEvent, VisibilityChangedEvent } from '../utils/types'; import { ReadableRedactionsService } from './readable-redactions.service'; import { filter, map, tap } from 'rxjs/operators'; -import { PermissionsService } from '@services/permissions.service'; const divider: IHeaderElement = { type: 'divider', @@ -50,7 +49,6 @@ export class ViewerHeaderService { private readonly _tooltipsService: TooltipsService, private readonly _readableRedactionsService: ReadableRedactionsService, private readonly _userPreferenceService: UserPreferenceService, - private readonly _permissionsService: PermissionsService, ) { this.events$ = this.#events$.asObservable(); } @@ -299,15 +297,13 @@ export class ViewerHeaderService { }); } - updateRotationButtons(show: boolean): void { - const { dossierId, fileId } = this._pdf; - const file = this._filesMapService.get(dossierId, fileId); - if (show && this._permissionsService.canRotatePage(file)) { - this.enable(ROTATION_BUTTONS); - } else { - this.disable(ROTATION_BUTTONS); - this.#discardRotation(); - } + enableRotationButtons(): void { + this.enable(ROTATION_BUTTONS); + } + + disableRotationButtons(): void { + this.disable(ROTATION_BUTTONS); + this.#discardRotation(); } resetCompareButtons() {