tree shaking support for services (#3906)

[ADF-3697] tree shaking support for services
This commit is contained in:
Denys Vuika
2018-10-22 11:09:43 +01:00
committed by Eugenio Romano
parent 368f949fc4
commit fee35c98df
77 changed files with 222 additions and 246 deletions

View File

@@ -39,7 +39,9 @@ import { OauthConfigModel } from '../models/oauth-config.model';
/* tslint:disable:adf-file-name */
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AlfrescoApiService {
/**
* Publish/subscribe to events related to node updates.

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { LogService } from './log.service';
import { map, catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AppsProcessService {
constructor(private apiService: AlfrescoApiService,

View File

@@ -21,7 +21,9 @@ import { AppConfigService, AppConfigValues } from '../app-config/app-config.serv
import { AuthenticationService } from './authentication.service';
import { OauthConfigModel } from '../models/oauth-config.model';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AuthGuardBpm implements CanActivate, CanActivateChild {
constructor(private authService: AuthenticationService, private router: Router, private appConfig: AppConfigService) {}

View File

@@ -23,7 +23,9 @@ import { AuthenticationService } from './authentication.service';
import { AppConfigService, AppConfigValues } from '../app-config/app-config.service';
import { OauthConfigModel } from '../models/oauth-config.model';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AuthGuardEcm implements CanActivate {
constructor(private authService: AuthenticationService,
private router: Router,

View File

@@ -25,7 +25,9 @@ import { Observable } from 'rxjs';
import { AppConfigService, AppConfigValues } from '../app-config/app-config.service';
import { OauthConfigModel } from '../models/oauth-config.model';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AuthGuard implements CanActivate, CanActivateChild {
constructor(private authService: AuthenticationService,
private router: Router,

View File

@@ -29,7 +29,9 @@ import { HttpHeaders } from '@angular/common/http';
const REMEMBER_ME_COOKIE_KEY = 'ALFRESCO_REMEMBER_ME';
const REMEMBER_ME_UNTIL = 1000 * 60 * 60 * 24 * 30;
@Injectable()
@Injectable({
providedIn: 'root'
})
export class AuthenticationService {
private redirectUrl: RedirectionModel = null;

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from '../services/alfresco-api.service';
import { LogService } from '../services/log.service';
import { map, catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class CommentContentService {
constructor(private apiService: AlfrescoApiService,

View File

@@ -23,7 +23,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { LogService } from './log.service';
import { map, catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class CommentProcessService {
constructor(private apiService: AlfrescoApiService,

View File

@@ -26,7 +26,9 @@ import { AuthenticationService } from './authentication.service';
import { LogService } from './log.service';
import { catchError, tap } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class ContentService {
private saveData: Function;

View File

@@ -17,7 +17,9 @@
import { Injectable } from '@angular/core';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class CookieService {
/**

View File

@@ -23,7 +23,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { UserPreferencesService } from './user-preferences.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class DeletedNodesApiService {
constructor(
private apiService: AlfrescoApiService,

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { map, catchError } from 'rxjs/operators';
import { Observable } from 'rxjs';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class DiscoveryApiService {
constructor(private apiService: AlfrescoApiService) { }

View File

@@ -24,7 +24,9 @@ import {
import * as alfrescoApi from 'alfresco-js-api';
/* tslint:disable:adf-file-name */
@Injectable()
@Injectable({
providedIn: 'root'
})
export class ExternalAlfrescoApiService {
protected alfrescoApi: AlfrescoApi;

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { UserPreferencesService } from './user-preferences.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class FavoritesApiService {
static remapEntry({ entry }: any): any {

View File

@@ -15,11 +15,16 @@
* limitations under the License.
*/
import { Injectable } from '@angular/core';
export interface HightlightTransformResult {
text: string;
changed: boolean;
}
@Injectable({
providedIn: 'root'
})
export class HighlightTransformService {
/**

View File

@@ -22,7 +22,9 @@ import { AppConfigService, AppConfigValues } from '../app-config/app-config.serv
import { logLevels, LogLevelsEnum } from '../models/log-levels.model';
import { Subject } from 'rxjs';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class LogService {
get currentLogLevel() {

View File

@@ -21,7 +21,9 @@ import { Subject, Observable } from 'rxjs';
import { LoginDialogComponent } from '../login/components/login-dialog.component';
import { LoginDialogComponentData } from '../login/components/login-dialog-component-data.interface';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class LoginDialogService {
constructor(private dialog: MatDialog) {

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { UserPreferencesService } from './user-preferences.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class NodesApiService {
constructor(

View File

@@ -19,7 +19,9 @@ import { Injectable } from '@angular/core';
import { MatSnackBar, MatSnackBarRef, MatSnackBarConfig } from '@angular/material';
import { TranslationService } from './translation.service';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class NotificationService {
static DEFAULT_DURATION_MESSAGE: number = 5000;

View File

@@ -20,7 +20,9 @@ import { Title } from '@angular/platform-browser';
import { AppConfigService } from '../app-config/app-config.service';
import { TranslationService } from './translation.service';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class PageTitleService {
private originalTitle: string = '';

View File

@@ -20,7 +20,9 @@ import { Observable, from, of } from 'rxjs';
import { AlfrescoApiService } from './alfresco-api.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class PeopleContentService {
constructor(private apiService: AlfrescoApiService) {}

View File

@@ -23,7 +23,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { LogService } from './log.service';
import { catchError, map } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class PeopleProcessService {
constructor(private alfrescoJsApi: AlfrescoApiService,

View File

@@ -26,7 +26,9 @@ import { concatMap, switchMap, takeWhile } from 'rxjs/operators';
* RenditionsService
* (this service is deprecated in 2.2.0 and will be removed in future revisions)
*/
@Injectable()
@Injectable({
providedIn: 'root'
})
export class RenditionsService {
constructor(private apiService: AlfrescoApiService) {

View File

@@ -19,7 +19,9 @@ import { Injectable } from '@angular/core';
import { QueryBody } from 'alfresco-js-api';
import { SearchConfigurationInterface } from '../interface/search-configuration.interface';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class SearchConfigurationService implements SearchConfigurationInterface {
constructor() {

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { SearchConfigurationService } from './search-configuration.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class SearchService {
dataLoaded: Subject<NodePaging> = new Subject();

View File

@@ -20,7 +20,9 @@ import { AppConfigService, AppConfigValues } from '../app-config/app-config.serv
import { LogService } from './log.service';
import { StorageService } from './storage.service';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class SettingsService {
constructor(private appConfig: AppConfigService,

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { UserPreferencesService } from './user-preferences.service';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class SharedLinksApiService {
constructor(private apiService: AlfrescoApiService,

View File

@@ -22,7 +22,9 @@ import { AlfrescoApiService } from './alfresco-api.service';
import { SitePaging, SiteEntry } from 'alfresco-js-api';
import { catchError } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class SitesService {
constructor(

View File

@@ -17,7 +17,9 @@
import { Injectable } from '@angular/core';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class StorageService {
private memoryStore: { [key: string]: any } = {};

View File

@@ -20,7 +20,9 @@ import { MatIconRegistry } from '@angular/material';
import { DomSanitizer } from '@angular/platform-browser';
import { ContentService } from './content.service';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class ThumbnailService {
DEFAULT_ICON: string = './assets/images/ft_ic_miscellaneous.svg';

View File

@@ -24,7 +24,9 @@ import { ComponentTranslationModel } from '../models/component.model';
import { ObjectUtils } from '../utils/object-utils';
import { map, catchError, retry } from 'rxjs/operators';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class TranslateLoaderService implements TranslateLoader {
private prefix: string = 'i18n';

View File

@@ -22,11 +22,8 @@ import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { TranslateLoaderService } from './translate-loader.service';
import { TRANSLATION_PROVIDER, TranslationService } from './translation.service';
import { LogService } from './log.service';
import { AppConfigService } from '../app-config/app-config.service';
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
import { UserPreferencesService } from './user-preferences.service';
import { StorageService } from './storage.service';
import { AlfrescoApiService } from './alfresco-api.service';
import { AlfrescoApiServiceMock } from '../mock/alfresco-api.service.mock';
@@ -49,11 +46,7 @@ describe('TranslationService', () => {
],
providers: [
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
LogService,
{ provide: AppConfigService, useClass: AppConfigServiceMock },
UserPreferencesService,
StorageService,
TranslationService,
{
provide: TRANSLATION_PROVIDER,
multi: true,

View File

@@ -28,7 +28,9 @@ export interface TranslationProvider {
source: string;
}
@Injectable()
@Injectable({
providedIn: 'root'
})
export class TranslationService {
defaultLang: string;
userLang: string;

View File

@@ -28,7 +28,9 @@ import {
import { FileModel, FileUploadProgress, FileUploadStatus } from '../models/file.model';
import { AlfrescoApiService } from './alfresco-api.service';
@Injectable()
@Injectable({
providedIn: 'root'
})
export class UploadService {
private cache: { [key: string]: any } = {};

View File

@@ -28,7 +28,9 @@ export enum UserPreferenceValues {
SupportedPageSizes = 'supportedPageSizes'
}
@Injectable()
@Injectable({
providedIn: 'root'
})
export class UserPreferencesService {
defaults = {