From 75f33b19909c6dbb76e4b21dc9f67cccf450ce1d Mon Sep 17 00:00:00 2001 From: tamaragruszka <156320606+tamaragruszka@users.noreply.github.com> Date: Thu, 7 Mar 2024 13:48:52 +0100 Subject: [PATCH] [ACS-6587] ACA: Viewer does not update after restoring version and the toolbar disappears (#9383) * [ACS-6587] reload files after update * [ACS-6587] update view after version change * [ACS-6587] update view after version change * [ACS-6587] update tests * AAE-0000 e2e affected were not running on ADF pipeline' (#9409) * AAE-14727 Removed unused css rule (#9408) * [ACS-6587] update tests * [ACS-6587] rearrange tests description --------- Co-authored-by: Vito Albano Co-authored-by: Ehsan Rezaei --- .../file-view/file-view.component.ts | 13 +++++-- .../version-list.component.html | 22 +++++++---- .../alfresco-viewer.component.spec.ts | 38 +++---------------- .../components/alfresco-viewer.component.ts | 8 ++-- .../components/img-viewer.component.html | 13 ++++++- .../components/img-viewer.component.spec.ts | 12 +++--- .../viewer/components/img-viewer.component.ts | 9 +++-- .../components/viewer-render.component.ts | 4 +- .../lib/viewer/components/viewer.component.ts | 2 +- 9 files changed, 56 insertions(+), 65 deletions(-) diff --git a/demo-shell/src/app/components/file-view/file-view.component.ts b/demo-shell/src/app/components/file-view/file-view.component.ts index fbba5a7215..27a2e30c99 100644 --- a/demo-shell/src/app/components/file-view/file-view.component.ts +++ b/demo-shell/src/app/components/file-view/file-view.component.ts @@ -16,9 +16,15 @@ */ import { Component, OnInit, ViewEncapsulation } from '@angular/core'; -import { ActivatedRoute, Router, PRIMARY_OUTLET } from '@angular/router'; +import { ActivatedRoute, PRIMARY_OUTLET, Router } from '@angular/router'; import { NotificationService } from '@alfresco/adf-core'; -import { ContentService, AllowableOperationsEnum, PermissionsEnum, NodesApiService, FileUploadErrorEvent } from '@alfresco/adf-content-services'; +import { + AllowableOperationsEnum, + ContentService, + FileUploadErrorEvent, + NodesApiService, + PermissionsEnum +} from '@alfresco/adf-content-services'; import { PreviewService } from '../../services/preview.service'; @Component({ @@ -87,8 +93,7 @@ export class FileViewComponent implements OnInit { } onUploadError(event: FileUploadErrorEvent) { - const errorMessage = event.error; - this.notificationService.showError(errorMessage); + this.notificationService.showError(event.error); } toggleEmptyMetadata() { diff --git a/lib/content-services/src/lib/version-manager/version-list.component.html b/lib/content-services/src/lib/version-manager/version-list.component.html index 572b0e2afa..2efb034452 100644 --- a/lib/content-services/src/lib/version-manager/version-list.component.html +++ b/lib/content-services/src/lib/version-manager/version-list.component.html @@ -8,43 +8,49 @@ {{version.entry.id}} - {{version.entry.modifiedAt | date}}

-

{{version.entry.versionComment}}

- + -
diff --git a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts index 886b8d1809..ac5a5ce642 100644 --- a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts +++ b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.spec.ts @@ -291,7 +291,6 @@ describe('AlfrescoViewerComponent', () => { component.nodeId = 'id1'; component.showViewer = true; - component.versionId = '1.0'; component.ngOnChanges(); tick(); @@ -305,34 +304,6 @@ describe('AlfrescoViewerComponent', () => { expect(component.fileName).toBe('file2'); })); - it('should update node only if node name changed', fakeAsync(() => { - spyOn(component['nodesApi'], 'getNode').and.returnValues( - Promise.resolve(new NodeEntry({ entry: new Node({ name: 'file1', content: new ContentInfo() }) })) - ); - - component.showViewer = true; - - component.nodeId = 'id1'; - fixture.detectChanges(); - component.ngOnChanges(); - tick(); - - expect(component.fileName).toBe('file1'); - - nodesApiService.nodeUpdated.next({ id: 'id1', name: 'file2' } as any); - fixture.detectChanges(); - expect(component.fileName).toBe('file2'); - - nodesApiService.nodeUpdated.next({ id: 'id1', name: 'file3' } as any); - fixture.detectChanges(); - expect(component.fileName).toBe('file3'); - - nodesApiService.nodeUpdated.next({ id: 'id2', name: 'file4' } as any); - fixture.detectChanges(); - expect(component.fileName).toBe('file3'); - expect(component.nodeId).toBe('id1'); - })); - it('should download file when downloadFile event is emitted', () => { spyOn(nodeActionsService, 'downloadNode'); const viewerComponent = fixture.debugElement.query(By.directive(ViewerComponent)); @@ -501,12 +472,13 @@ describe('AlfrescoViewerComponent', () => { fixture.detectChanges(); nodesApiService.nodeUpdated.next({ + ...defaultNode, id: '123', name: 'file2', - content: { - mimeType: 'application/msWord' - } - } as any); + content: { mimeType: 'application/msWord' }, + properties: { 'cm:versionLabel': 'mock-version-label2' } + } as Node); + await fixture.whenStable(); expect(component.originalMimeType).toEqual('application/msWord'); }); diff --git a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts index 80d72aa48b..12959a50b0 100644 --- a/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts +++ b/lib/content-services/src/lib/viewer/components/alfresco-viewer.component.ts @@ -258,7 +258,7 @@ export class AlfrescoViewerComponent implements OnChanges, OnInit, OnDestroy { (node) => node && node.id === this.nodeId && - (node.name !== this.fileName || this.getNodeVersionProperty(this.nodeEntry.entry) !== this.getNodeVersionProperty(node)) + this.getNodeVersionProperty(this.nodeEntry.entry) !== this.getNodeVersionProperty(node) ), takeUntil(this.onDestroy$) ) @@ -323,9 +323,7 @@ export class AlfrescoViewerComponent implements OnChanges, OnInit, OnDestroy { : encodeURI('1.0'); urlFileContent = versionData ? this.contentApi.getVersionContentUrl(this.nodeId, versionData.id) : this.contentApi.getContentUrl(this.nodeId); - urlFileContent = this.cacheBusterNumber - ? urlFileContent + '&' + currentFileVersion + '&' + this.cacheBusterNumber - : urlFileContent + '&' + currentFileVersion; + urlFileContent = urlFileContent + '&' + currentFileVersion; const fileExtension = this.viewUtilService.getFileExtension(versionData ? versionData.name : nodeData.name); this.fileName = versionData ? versionData.name : nodeData.name; @@ -348,7 +346,7 @@ export class AlfrescoViewerComponent implements OnChanges, OnInit, OnDestroy { } this.mimeType = mimeType; - this.urlFileContent = urlFileContent; + this.urlFileContent = urlFileContent + (this.cacheBusterNumber ? '&' + this.cacheBusterNumber : ''); this.sidebarRightTemplateContext.node = nodeData; this.sidebarLeftTemplateContext.node = nodeData; } diff --git a/lib/core/src/lib/viewer/components/img-viewer.component.html b/lib/core/src/lib/viewer/components/img-viewer.component.html index 42248d27de..d95060ad46 100644 --- a/lib/core/src/lib/viewer/components/img-viewer.component.html +++ b/lib/core/src/lib/viewer/components/img-viewer.component.html @@ -1,5 +1,14 @@ -