mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-2569] fix reload app.config.json (#3124)
* fix reload app.config.json * improve style mobile fix test * test karma setup update * fix core providers test * remove unused providers * use mock api in service test * skip test in the wrong place * remove comma * remove fdescribe
This commit is contained in:
committed by
Denys Vuika
parent
21b8cd30ce
commit
9e2969b955
@@ -28,7 +28,7 @@ import { StorageService } from './storage.service';
|
||||
@Injectable()
|
||||
export class AlfrescoApiService {
|
||||
|
||||
private alfrescoApi: AlfrescoApi;
|
||||
protected alfrescoApi: AlfrescoApi;
|
||||
|
||||
getInstance(): AlfrescoApi {
|
||||
return this.alfrescoApi;
|
||||
@@ -74,13 +74,21 @@ export class AlfrescoApiService {
|
||||
return this.getInstance().core.classesApi;
|
||||
}
|
||||
|
||||
constructor(private appConfig: AppConfigService,
|
||||
private storage: StorageService) {
|
||||
|
||||
this.reset();
|
||||
constructor(protected appConfig: AppConfigService,
|
||||
protected storage: StorageService) {
|
||||
}
|
||||
|
||||
reset() {
|
||||
async load() {
|
||||
await this.appConfig.load().then(() => {
|
||||
this.initAlfrescoApi();
|
||||
});
|
||||
}
|
||||
|
||||
async reset() {
|
||||
this.initAlfrescoApi();
|
||||
}
|
||||
|
||||
protected initAlfrescoApi() {
|
||||
this.alfrescoApi = <AlfrescoApi> new alfrescoApi({
|
||||
provider: this.storage.getItem('AUTH_TYPE'),
|
||||
ticketEcm: this.storage.getItem('ticket-ECM'),
|
||||
@@ -89,7 +97,7 @@ export class AlfrescoApiService {
|
||||
hostBpm: this.appConfig.get<string>('bpmHost'),
|
||||
contextRoot: 'alfresco',
|
||||
disableCsrf: this.storage.getItem('DISABLE_CSRF') === 'true',
|
||||
oauth2 : this.appConfig.get<any>('oauth2')
|
||||
oauth2: this.appConfig.get<any>('oauth2')
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@@ -16,13 +16,8 @@
|
||||
*/
|
||||
|
||||
import { TestBed } from '@angular/core/testing';
|
||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||
import { fakeApps } from '../mock/apps-service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AppsProcessService } from './apps-process.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
describe('Apps Service', () => {
|
||||
@@ -32,11 +27,7 @@ describe('Apps Service', () => {
|
||||
beforeEach((() => {
|
||||
TestBed.configureTestingModule({
|
||||
providers: [
|
||||
AppsProcessService,
|
||||
AlfrescoApiService,
|
||||
StorageService,
|
||||
LogService,
|
||||
{provide: AppConfigService, useClass: AppConfigServiceMock}
|
||||
AppsProcessService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -19,17 +19,12 @@ import { async, TestBed } from '@angular/core/testing';
|
||||
import { RouterTestingModule } from '@angular/router/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { CookieServiceMock } from './../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AuthGuardBpm } from './auth-guard-bpm.service';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
import { RouterStateSnapshot, Router } from '@angular/router';
|
||||
|
||||
describe('AuthGuardService BPM', () => {
|
||||
@@ -53,13 +48,7 @@ describe('AuthGuardService BPM', () => {
|
||||
],
|
||||
providers: [
|
||||
AuthGuardBpm,
|
||||
SettingsService,
|
||||
AlfrescoApiService,
|
||||
AuthenticationService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
{ provide: CookieService, useClass: CookieServiceMock },
|
||||
LogService
|
||||
{ provide: CookieService, useClass: CookieServiceMock }
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -21,17 +21,12 @@ import { RouterTestingModule } from '@angular/router/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { CookieServiceMock } from './../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AuthGuard } from './auth-guard.service';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
describe('AuthGuardService', () => {
|
||||
let state;
|
||||
@@ -54,13 +49,8 @@ describe('AuthGuardService', () => {
|
||||
],
|
||||
providers: [
|
||||
AuthGuard,
|
||||
SettingsService,
|
||||
AlfrescoApiService,
|
||||
AuthenticationService,
|
||||
UserPreferencesService,
|
||||
StorageService,
|
||||
{ provide: CookieService, useClass: CookieServiceMock },
|
||||
LogService
|
||||
{ provide: CookieService, useClass: CookieServiceMock }
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -19,11 +19,9 @@ import { async, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { CookieServiceMock } from './../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
@@ -49,13 +47,10 @@ describe('AuthenticationService', () => {
|
||||
})
|
||||
],
|
||||
providers: [
|
||||
SettingsService,
|
||||
AlfrescoApiService,
|
||||
AuthenticationService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
{ provide: CookieService, useClass: CookieServiceMock },
|
||||
LogService
|
||||
{ provide: CookieService, useClass: CookieServiceMock }
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -17,13 +17,9 @@
|
||||
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { CommentProcessModel } from '../models';
|
||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||
import { fakeProcessComment, fakeTasksComment, fakeUser1 } from '../mock/comment-process-service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { CommentProcessService } from './comment-process.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
describe('Comment ProcessService Service', () => {
|
||||
@@ -34,11 +30,7 @@ describe('Comment ProcessService Service', () => {
|
||||
beforeEach((() => {
|
||||
TestBed.configureTestingModule({
|
||||
providers: [
|
||||
CommentProcessService,
|
||||
AlfrescoApiService,
|
||||
StorageService,
|
||||
LogService,
|
||||
{provide: AppConfigService, useClass: AppConfigServiceMock}
|
||||
CommentProcessService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -18,14 +18,12 @@
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { CookieServiceMock } from '../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { ContentService } from './content.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
@@ -55,14 +53,12 @@ describe('ContentService', () => {
|
||||
],
|
||||
declarations: [],
|
||||
providers: [
|
||||
AlfrescoApiService,
|
||||
ContentService,
|
||||
AuthenticationService,
|
||||
SettingsService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
{provide: CookieService, useClass: CookieServiceMock},
|
||||
LogService
|
||||
{provide: CookieService, useClass: CookieServiceMock}
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -17,14 +17,9 @@
|
||||
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { BpmProductVersionModel, EcmProductVersionModel } from '../models/product-version.model';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { DiscoveryApiService } from './discovery-api.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -101,12 +96,7 @@ describe('Discovery Api Service', () => {
|
||||
AppConfigModule
|
||||
],
|
||||
providers: [
|
||||
DiscoveryApiService,
|
||||
AlfrescoApiService,
|
||||
UserPreferencesService,
|
||||
AuthenticationService,
|
||||
SettingsService,
|
||||
StorageService
|
||||
DiscoveryApiService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -17,12 +17,7 @@
|
||||
|
||||
import { TestBed } from '@angular/core/testing';
|
||||
import { UserProcessModel } from '../models';
|
||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { LogService } from './log.service';
|
||||
import { PeopleProcessService } from './people-process.service';
|
||||
import { StorageService } from './storage.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -49,11 +44,7 @@ describe('PeopleProcessService', () => {
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
providers: [
|
||||
PeopleProcessService,
|
||||
AlfrescoApiService,
|
||||
StorageService,
|
||||
LogService,
|
||||
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||
PeopleProcessService
|
||||
]
|
||||
});
|
||||
service = TestBed.get(PeopleProcessService);
|
||||
|
@@ -17,12 +17,8 @@
|
||||
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { fakeRedition, fakeReditionCreated, fakeReditionsList } from '../mock/renditionsService.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { LogService } from './log.service';
|
||||
import { RenditionsService } from './renditions.service';
|
||||
import { StorageService } from './storage.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -34,14 +30,8 @@ describe('RenditionsService', () => {
|
||||
imports: [
|
||||
AppConfigModule
|
||||
],
|
||||
declarations: [
|
||||
],
|
||||
providers: [
|
||||
AlfrescoApiService,
|
||||
RenditionsService,
|
||||
SettingsService,
|
||||
StorageService,
|
||||
LogService
|
||||
RenditionsService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -20,15 +20,10 @@ import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { searchMockApi, mockError, fakeSearch } from '../mock/search.service.mock';
|
||||
import { CookieServiceMock } from './../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { SearchService } from './search.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
describe('SearchService', () => {
|
||||
|
||||
@@ -48,14 +43,7 @@ describe('SearchService', () => {
|
||||
],
|
||||
providers: [
|
||||
SearchService,
|
||||
AuthenticationService,
|
||||
AlfrescoApiService,
|
||||
SettingsService,
|
||||
AuthenticationService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
{ provide: CookieService, useClass: CookieServiceMock },
|
||||
LogService
|
||||
{ provide: CookieService, useClass: CookieServiceMock }
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -17,13 +17,9 @@
|
||||
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
describe('SettingsService', () => {
|
||||
|
||||
@@ -41,11 +37,7 @@ describe('SettingsService', () => {
|
||||
})
|
||||
],
|
||||
providers: [
|
||||
AlfrescoApiService,
|
||||
SettingsService,
|
||||
UserPreferencesService,
|
||||
StorageService,
|
||||
LogService
|
||||
SettingsService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
@@ -17,16 +17,10 @@
|
||||
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { LogService } from './log.service';
|
||||
import { SitesService } from './sites.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -46,13 +40,7 @@ describe('Sites service', () => {
|
||||
})
|
||||
],
|
||||
providers: [
|
||||
SitesService,
|
||||
AlfrescoApiService,
|
||||
UserPreferencesService,
|
||||
AuthenticationService,
|
||||
SettingsService,
|
||||
StorageService,
|
||||
LogService
|
||||
SitesService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
22
lib/core/services/startup-service-factory.ts
Normal file
22
lib/core/services/startup-service-factory.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2016 Alfresco Software, Ltd.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
|
||||
export function startupServiceFactory(alfrescoApiService: AlfrescoApiService): Function {
|
||||
return () => alfrescoApiService.load();
|
||||
}
|
@@ -21,17 +21,10 @@ import { MatIconRegistry } from '@angular/material';
|
||||
import { BrowserModule } from '@angular/platform-browser';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { CookieServiceMock } from './../mock/cookie.service.mock';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { ContentService } from './content.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { CookieService } from './cookie.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { ThumbnailService } from './thumbnail.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
describe('ThumbnailService', () => {
|
||||
|
||||
@@ -50,17 +43,9 @@ describe('ThumbnailService', () => {
|
||||
})
|
||||
],
|
||||
providers: [
|
||||
UserPreferencesService,
|
||||
AuthenticationService,
|
||||
ContentService,
|
||||
SettingsService,
|
||||
AppConfigService,
|
||||
{ provide: CookieService, useClass: CookieServiceMock },
|
||||
ThumbnailService,
|
||||
AlfrescoApiService,
|
||||
SettingsService,
|
||||
StorageService,
|
||||
LogService,
|
||||
MatIconRegistry
|
||||
]
|
||||
}).compileComponents();
|
||||
|
@@ -19,14 +19,9 @@ import { HttpClientModule } from '@angular/common/http';
|
||||
import { Injector } from '@angular/core';
|
||||
import { getTestBed, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
|
||||
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { TRANSLATION_PROVIDER, TranslationService } from './translation.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
let componentJson1 = ' {"TEST": "This is a test", "TEST2": "This is another test"} ' ;
|
||||
|
||||
@@ -50,11 +45,6 @@ describe('TranslateLoader', () => {
|
||||
],
|
||||
providers: [
|
||||
TranslationService,
|
||||
LogService,
|
||||
AlfrescoApiService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
AppConfigService,
|
||||
{
|
||||
provide: TRANSLATION_PROVIDER,
|
||||
multi: true,
|
||||
|
@@ -20,13 +20,8 @@ import { Injector } from '@angular/core';
|
||||
import { getTestBed, TestBed } from '@angular/core/testing';
|
||||
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { LogService } from './log.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { TranslateLoaderService } from './translate-loader.service';
|
||||
import { TRANSLATION_PROVIDER, TranslationService } from './translation.service';
|
||||
import { UserPreferencesService } from './user-preferences.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -47,11 +42,6 @@ describe('TranslationService', () => {
|
||||
],
|
||||
providers: [
|
||||
TranslationService,
|
||||
LogService,
|
||||
AlfrescoApiService,
|
||||
StorageService,
|
||||
UserPreferencesService,
|
||||
AppConfigService,
|
||||
{
|
||||
provide: TRANSLATION_PROVIDER,
|
||||
multi: true,
|
||||
|
@@ -18,13 +18,9 @@
|
||||
import { EventEmitter } from '@angular/core';
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { FileModel, FileUploadOptions, FileUploadStatus } from '../models/file.model';
|
||||
import { AlfrescoApiService } from './alfresco-api.service';
|
||||
import { SettingsService } from './settings.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
import { AppConfigModule } from '../app-config/app-config.module';
|
||||
import { AuthenticationService } from './authentication.service';
|
||||
import { StorageService } from './storage.service';
|
||||
import { UploadService } from './upload.service';
|
||||
import { AppConfigService } from '../app-config/app-config.service';
|
||||
|
||||
declare let jasmine: any;
|
||||
|
||||
@@ -37,11 +33,7 @@ describe('UploadService', () => {
|
||||
AppConfigModule
|
||||
],
|
||||
providers: [
|
||||
UploadService,
|
||||
AlfrescoApiService,
|
||||
SettingsService,
|
||||
AuthenticationService,
|
||||
StorageService
|
||||
UploadService
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
Reference in New Issue
Block a user