diff --git a/lib/core/src/lib/app-config/app-config.service.spec.ts b/lib/core/src/lib/app-config/app-config.service.spec.ts index d7352fba3e..a6b045da5f 100644 --- a/lib/core/src/lib/app-config/app-config.service.spec.ts +++ b/lib/core/src/lib/app-config/app-config.service.spec.ts @@ -188,4 +188,14 @@ describe('AppConfigService', () => { expect(appConfigService.get('files.excluded')[0]).toBe('excluded'); }); + + it('should execute callback function if is passed to the load method', async () => { + const fakeCallBack = jasmine.createSpy('fakeCallBack'); + fakeCallBack.and.returnValue(()=>{}); + + await appConfigService.load(fakeCallBack); + + expect(fakeCallBack).toHaveBeenCalled(); + }); + }); diff --git a/lib/core/src/lib/app-config/app-config.service.ts b/lib/core/src/lib/app-config/app-config.service.ts index e169ce696b..7b570471e1 100644 --- a/lib/core/src/lib/app-config/app-config.service.ts +++ b/lib/core/src/lib/app-config/app-config.service.ts @@ -165,8 +165,7 @@ export class AppConfigService { this.onLoadSubject.next(this.config); } - protected onDataLoaded(data: any) { - this.config = Object.assign({}, this.config, data || {}); + protected onDataLoaded() { this.onLoadSubject.next(this.config); this.extensionService.setup$ @@ -198,9 +197,10 @@ export class AppConfigService { this.http.get(configUrl).subscribe( (data: any) => { this.status = Status.LOADED; + this.config = Object.assign({}, this.config, data || {}); callback?.(); resolve(data); - this.onDataLoaded(data); + this.onDataLoaded(); }, () => { // eslint-disable-next-line no-console diff --git a/lib/core/src/lib/auth/basic-auth/basic-alfresco-auth.service.ts b/lib/core/src/lib/auth/basic-auth/basic-alfresco-auth.service.ts index 3d9cb459ba..a053b878b8 100644 --- a/lib/core/src/lib/auth/basic-auth/basic-alfresco-auth.service.ts +++ b/lib/core/src/lib/auth/basic-auth/basic-alfresco-auth.service.ts @@ -15,19 +15,18 @@ * limitations under the License. */ -import { Injectable, inject } from '@angular/core'; +import { Injectable } from '@angular/core'; import { AppConfigService, AppConfigValues } from '../../app-config/app-config.service'; import { Authentication } from '../interfaces/authentication.interface'; import { CookieService } from '../../common/services/cookie.service'; import { ContentAuth } from './content-auth'; import { ProcessAuth } from './process-auth'; import { catchError, map } from 'rxjs/operators'; -import { from, Observable, zip } from 'rxjs'; +import { from, Observable } from 'rxjs'; import { RedirectionModel } from '../models/redirection.model'; import { BaseAuthenticationService } from '../services/base-authentication.service'; import { LogService } from '../../common'; import { HttpHeaders } from '@angular/common/http'; -import { AlfrescoApiService } from '../../../..'; const REMEMBER_ME_COOKIE_KEY = 'ALFRESCO_REMEMBER_ME'; const REMEMBER_ME_UNTIL = 1000 * 60 * 60 * 24 * 30; @@ -36,7 +35,6 @@ const REMEMBER_ME_UNTIL = 1000 * 60 * 60 * 24 * 30; providedIn: 'root' }) export class BasicAlfrescoAuthService extends BaseAuthenticationService { - alfrescoApiService = inject(AlfrescoApiService); protected redirectUrl: RedirectionModel = null; @@ -56,7 +54,7 @@ export class BasicAlfrescoAuthService extends BaseAuthenticationService { ) { super(appConfig, cookie, logService); - zip(this.alfrescoApiService.alfrescoApiInitialized, this.appConfig.onLoad) + this.appConfig.onLoad .subscribe(() => { if (this.isLoggedIn()) { this.onLogin.next('logged-in'); diff --git a/lib/core/src/lib/common/mock/app-config.service.mock.ts b/lib/core/src/lib/common/mock/app-config.service.mock.ts index e9a63d2bac..ca88d1be65 100644 --- a/lib/core/src/lib/common/mock/app-config.service.mock.ts +++ b/lib/core/src/lib/common/mock/app-config.service.mock.ts @@ -38,7 +38,7 @@ export class AppConfigServiceMock extends AppConfigService { load(): Promise { return new Promise((resolve) => { this.status = Status.LOADED; - this.onDataLoaded(this.config); + this.onDataLoaded(); resolve(this.config); }); }