ACS-8572: Switch to using ADF document list reload (#4021)

This commit is contained in:
Denys Vuika
2024-08-12 08:37:18 -04:00
committed by GitHub
parent 73f47b7d79
commit 435ea6e358
14 changed files with 72 additions and 87 deletions

View File

@@ -25,8 +25,8 @@
import { Router, ActivatedRoute } from '@angular/router';
import { TestBed, ComponentFixture, fakeAsync, tick } from '@angular/core/testing';
import { AuthenticationService } from '@alfresco/adf-core';
import { UploadService, NodesApiService, DiscoveryApiService } from '@alfresco/adf-content-services';
import { ClosePreviewAction, RefreshPreviewAction, ReloadDocumentListAction, ViewNodeAction } from '@alfresco/aca-shared/store';
import { UploadService, NodesApiService, DiscoveryApiService, DocumentListService } from '@alfresco/adf-content-services';
import { ClosePreviewAction, RefreshPreviewAction, ViewNodeAction } from '@alfresco/aca-shared/store';
import { AcaViewerComponent } from './viewer.component';
import { of } from 'rxjs';
import {
@@ -42,7 +42,7 @@ import { Node } from '@alfresco/js-api';
import { AcaViewerModule } from '../../viewer.module';
const apiError = `{
"error": {
"error": {
"errorKey":"EntityNotFound",
"statusCode":404,
"briefSummary":"The entity with id: someId was not found",
@@ -63,6 +63,7 @@ describe('AcaViewerComponent', () => {
let uploadService: UploadService;
let nodesApiService: NodesApiService;
let appHookService: AppHookService;
let documentListService: DocumentListService;
let store: Store<any>;
beforeEach(() => {
@@ -84,6 +85,7 @@ describe('AcaViewerComponent', () => {
uploadService = TestBed.inject(UploadService);
nodesApiService = TestBed.inject(NodesApiService);
appHookService = TestBed.inject(AppHookService);
documentListService = TestBed.inject(DocumentListService);
store = TestBed.inject(Store);
});
@@ -122,11 +124,11 @@ describe('AcaViewerComponent', () => {
});
it('should reload document list and navigate to node location upon close', async () => {
spyOn(store, 'dispatch');
spyOn(documentListService, 'reload');
component.onViewerVisibilityChanged();
expect(store.dispatch).toHaveBeenCalledWith(new ReloadDocumentListAction());
expect(documentListService.reload).toHaveBeenCalled();
expect(component['navigateToFileLocation']).toHaveBeenCalled();
expect(router.navigateByUrl).toHaveBeenCalledWith(fakeLocation);
});

View File

@@ -36,7 +36,6 @@ import {
getAppSelection,
isInfoDrawerOpened,
RefreshPreviewAction,
ReloadDocumentListAction,
SetCurrentNodeVersionAction,
SetSelectedNodesAction,
ViewerActionTypes,
@@ -44,14 +43,14 @@ import {
} from '@alfresco/aca-shared/store';
import { ContentActionRef, SelectionState } from '@alfresco/adf-extensions';
import { Node, VersionEntry, VersionsApi } from '@alfresco/js-api';
import { Component, HostListener, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { Component, HostListener, inject, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, PRIMARY_OUTLET, Router } from '@angular/router';
import { AlfrescoApiService, AppConfigPipe, ViewerModule } from '@alfresco/adf-core';
import { Store } from '@ngrx/store';
import { from, Observable, Subject } from 'rxjs';
import { debounceTime, takeUntil } from 'rxjs/operators';
import { Actions, ofType } from '@ngrx/effects';
import { AlfrescoViewerModule, NodesApiService, UploadService } from '@alfresco/adf-content-services';
import { AlfrescoViewerModule, DocumentListService, NodesApiService, UploadService } from '@alfresco/adf-content-services';
import { CommonModule } from '@angular/common';
import { ViewerService } from '../../services/viewer.service';
@@ -65,6 +64,8 @@ import { ViewerService } from '../../services/viewer.service';
host: { class: 'app-viewer' }
})
export class AcaViewerComponent implements OnInit, OnDestroy {
private documentListService = inject(DocumentListService);
private _versionsApi: VersionsApi;
get versionsApi(): VersionsApi {
this._versionsApi = this._versionsApi ?? new VersionsApi(this.apiService.getInstance());
@@ -189,7 +190,7 @@ export class AcaViewerComponent implements OnInit, OnDestroy {
}
onViewerVisibilityChanged() {
this.store.dispatch(new ReloadDocumentListAction());
this.documentListService.reload();
this.navigateToFileLocation();
}