Project

General

Profile

1
import {NgModule} from '@angular/core';
2
import {SharedModule} from './shared/shared.module';
3
import {BrowserModule, BrowserTransferStateModule} from '@angular/platform-browser';
4
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
5
import {CommonModule} from '@angular/common';
6
import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http';
7
import {AppComponent} from './app.component';
8
import {NavigationBarModule} from './openaireLibrary/sharedComponents/navigationBar.module';
9
import {CookieLawModule} from './openaireLibrary/sharedComponents/cookie-law/cookie-law.module';
10
import {BottomModule} from './openaireLibrary/sharedComponents/bottom.module';
11
import {FeedbackModule} from './openaireLibrary/sharedComponents/feedback/feedback.module';
12
import {ErrorModule} from './openaireLibrary/error/error.module';
13
import {OpenaireErrorPageComponent} from './error/errorPage.component';
14
import {AppRoutingModule} from './app-routing.module';
15
import {HttpInterceptorService} from "./openaireLibrary/http-interceptor.service";
16
import {ErrorInterceptorService} from "./openaireLibrary/error-interceptor.service";
17
import {DEFAULT_TIMEOUT, TimeoutInterceptor} from "./openaireLibrary/timeout-interceptor.service";
18
import {ConfigurationService} from "./openaireLibrary/utils/configuration/configuration.service";
19

    
20
@NgModule({
21
  imports: [
22
    SharedModule,
23
    BrowserAnimationsModule,
24
    CommonModule,
25
    HttpClientModule,
26
    ErrorModule,
27
    NavigationBarModule, FeedbackModule, BottomModule,
28
    CookieLawModule,
29
    BrowserAnimationsModule,
30
    BrowserTransferStateModule,
31
    BrowserModule.withServerTransition({appId: 'aggregator'}),
32
    AppRoutingModule
33
  ],
34
  declarations: [AppComponent, OpenaireErrorPageComponent],
35
  exports: [AppComponent],
36
  providers: [
37
    ConfigurationService,
38
    {
39
      provide: HTTP_INTERCEPTORS,
40
      useClass: HttpInterceptorService,
41
      multi: true
42
    },
43
    {
44
      provide: HTTP_INTERCEPTORS,
45
      useClass: ErrorInterceptorService,
46
      multi: true
47
    },
48
    [{provide: HTTP_INTERCEPTORS, useClass: TimeoutInterceptor, multi: true}],
49
    [{provide: DEFAULT_TIMEOUT, useValue: 30000}]
50
  ],
51
  bootstrap: [AppComponent]
52
})
53
export class AppModule {
54
}
(3-3/4)