From 28137d8a09a4ec0743d0e36884170854bb678f5a Mon Sep 17 00:00:00 2001 From: Ehsan Rezaei Date: Thu, 15 May 2025 12:07:07 +0200 Subject: [PATCH] Revert "AAE-34641 Fix form loading when tab is changed (#10843)" (#10862) This reverts commit 685bc387b585db77694355378309213cfde356e3. --- .../viewer-render.component.html | 112 ++++++++---------- .../viewer-render.component.spec.ts | 18 ++- .../viewer-render/viewer-render.component.ts | 18 +-- 3 files changed, 62 insertions(+), 86 deletions(-) diff --git a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.html b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.html index 61deb391d8..0e09172cf9 100644 --- a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.html +++ b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.html @@ -1,105 +1,91 @@ -
+
-
+

{{ 'ADF_VIEWER.LOADING' | translate }}

- +
-
+
- + - + - - + - + - + - + - +
diff --git a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.spec.ts b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.spec.ts index 1cd331ab72..f8b3aef4e0 100644 --- a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.spec.ts +++ b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.spec.ts @@ -24,7 +24,7 @@ import { MatDialog, MatDialogModule } from '@angular/material/dialog'; import { NoopTranslateModule, UnitTestingUtils } from '../../../testing'; import { RenderingQueueServices } from '../../services/rendering-queue.services'; import { ViewerRenderComponent } from './viewer-render.component'; -import { ImgViewerComponent, MediaPlayerComponent, PdfViewerComponent, ViewerExtensionDirective } from '@alfresco/adf-core'; +import { ImgViewerComponent, MediaPlayerComponent, ViewerExtensionDirective } from '@alfresco/adf-core'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; @Component({ @@ -504,23 +504,22 @@ describe('ViewerComponent', () => { expect(getMainLoader()).toBeNull(); expect(component.viewerType).toBe('media'); - expect(component.isContentReady).toBeTrue(); }); - it('should show spinner until content is ready when viewerType is pdf', () => { + // eslint-disable-next-line ban/ban + xit('should show spinner until content is ready when viewerType is pdf', () => { component.isLoading = false; component.urlFile = 'some-url.pdf'; - expect(getMainLoader()).toBeNull(); component.ngOnChanges(); fixture.detectChanges(); - const imgViewer = testingUtils.getByDirective(PdfViewerComponent); - imgViewer.triggerEventHandler('pagesLoaded', null); + expect(getMainLoader()).not.toBeNull(); + fixture.detectChanges(); + expect(getMainLoader()).toBeNull(); expect(component.viewerType).toBe('pdf'); - expect(component.isContentReady).toBeTrue(); }); it('should show spinner until content is ready when viewerType is image', () => { @@ -537,10 +536,9 @@ describe('ViewerComponent', () => { expect(getMainLoader()).toBeNull(); expect(component.viewerType).toBe('image'); - expect(component.isContentReady).toBeTrue(); }); - it('should not show spinner and set isContentReady = true for other viewer types different than media/pdf/image', () => { + it('should not show spinner when isLoading = false and isContentReady = false for other viewer types', () => { component.isLoading = false; component.urlFile = 'some-url.txt'; @@ -548,7 +546,7 @@ describe('ViewerComponent', () => { fixture.detectChanges(); expect(getMainLoader()).toBeNull(); - expect(component.isContentReady).toBeTrue(); + expect(component.isContentReady).toBeFalse(); }); }); }); diff --git a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.ts b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.ts index 725159123f..61b41fef69 100644 --- a/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.ts +++ b/lib/core/src/lib/viewer/components/viewer-render/viewer-render.component.ts @@ -29,8 +29,6 @@ import { PdfViewerComponent } from '../pdf-viewer/pdf-viewer.component'; import { TxtViewerComponent } from '../txt-viewer/txt-viewer.component'; import { UnknownFormatComponent } from '../unknown-format/unknown-format.component'; -type ViewerType = 'media' | 'image' | 'pdf' | 'unknown'; - @Component({ selector: 'adf-viewer-render', standalone: true, @@ -143,7 +141,7 @@ export class ViewerRenderComponent implements OnChanges, OnInit { extensionsSupportedByTemplates: string[] = []; extension: string; internalFileName: string; - viewerType: ViewerType = 'unknown'; + viewerType: string = 'unknown'; isContentReady = false; /** @@ -187,25 +185,19 @@ export class ViewerRenderComponent implements OnChanges, OnInit { } ngOnChanges() { - this.updateLoadingState(); + this.isContentReady = false; + this.isLoading = !this.blobFile && !this.urlFile; if (this.blobFile) { this.setUpBlobData(); } else if (this.urlFile) { this.setUpUrlFile(); } - - this.updateLoadingState(); - } - - private updateLoadingState() { - this.isContentReady = !(this.viewerType === 'media' || this.viewerType === 'pdf' || this.viewerType === 'image'); - this.isLoading = !this.blobFile && !this.urlFile; } private setUpBlobData() { this.internalFileName = this.fileName; - this.viewerType = this.viewUtilService.getViewerTypeByMimeType(this.blobFile.type) as ViewerType; + this.viewerType = this.viewUtilService.getViewerTypeByMimeType(this.blobFile.type); this.extensionChange.emit(this.blobFile.type); this.scrollTop(); @@ -214,7 +206,7 @@ export class ViewerRenderComponent implements OnChanges, OnInit { private setUpUrlFile() { this.internalFileName = this.fileName ? this.fileName : this.viewUtilService.getFilenameFromUrl(this.urlFile); this.extension = this.viewUtilService.getFileExtension(this.internalFileName); - this.viewerType = this.viewUtilService.getViewerType(this.extension, this.mimeType, this.extensionsSupportedByTemplates) as ViewerType; + this.viewerType = this.viewUtilService.getViewerType(this.extension, this.mimeType, this.extensionsSupportedByTemplates); this.extensionChange.emit(this.extension); this.scrollTop();