forked from hazza/dspace-angular
56 lines
1.7 KiB
TypeScript
56 lines
1.7 KiB
TypeScript
import { HttpClient, HttpClientModule } from '@angular/common/http';
|
|
import { NgModule } from '@angular/core';
|
|
import { BrowserModule } from '@angular/platform-browser';
|
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
import { RouterModule } from '@angular/router';
|
|
|
|
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
|
|
|
|
import { IdlePreload, IdlePreloadModule } from 'angular-idle-preload';
|
|
|
|
import { AppComponent } from '../../app/app.component';
|
|
|
|
import { AppModule } from '../../app/app.module';
|
|
import { DSpaceBrowserTransferStateModule } from '../transfer-state/dspace-browser-transfer-state.module';
|
|
import { DSpaceTransferState } from '../transfer-state/dspace-transfer-state.service';
|
|
|
|
export function createTranslateLoader(http: HttpClient) {
|
|
return new TranslateHttpLoader(http, 'assets/i18n/', '.json');
|
|
}
|
|
|
|
@NgModule({
|
|
bootstrap: [AppComponent],
|
|
imports: [
|
|
BrowserModule.withServerTransition({
|
|
appId: 'dspace-angular'
|
|
}),
|
|
HttpClientModule,
|
|
// forRoot ensures the providers are only created once
|
|
IdlePreloadModule.forRoot(),
|
|
RouterModule.forRoot([], {
|
|
// enableTracing: true,
|
|
useHash: false,
|
|
preloadingStrategy:
|
|
IdlePreload
|
|
}),
|
|
BrowserAnimationsModule,
|
|
DSpaceBrowserTransferStateModule,
|
|
TranslateModule.forRoot({
|
|
loader: {
|
|
provide: TranslateLoader,
|
|
useFactory: (createTranslateLoader),
|
|
deps: [HttpClient]
|
|
}
|
|
}),
|
|
AppModule
|
|
],
|
|
})
|
|
export class BrowserAppModule {
|
|
constructor(
|
|
private transferState: DSpaceTransferState,
|
|
) {
|
|
this.transferState.transfer();
|
|
}
|
|
}
|