54 lines
2.0 KiB
TypeScript
54 lines
2.0 KiB
TypeScript
import { BrowserModule } from '@angular/platform-browser';
|
|
import { ErrorHandler, NgModule } from '@angular/core';
|
|
|
|
import { AppRoutingModule } from '@app/app-routing.module';
|
|
import { AppComponent } from '@app/app.component';
|
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
|
|
import { GlobalErrorHandler, MockBackendProvider } from '@app/_helpers';
|
|
import { SharedModule } from '@app/shared/shared.module';
|
|
import { MatTableModule } from '@angular/material/table';
|
|
import { AuthGuard } from '@app/_guards';
|
|
import { LoggerModule } from 'ngx-logger';
|
|
import { environment } from '@src/environments/environment';
|
|
import {
|
|
ConnectionInterceptor,
|
|
ErrorInterceptor,
|
|
HttpConfigInterceptor,
|
|
LoggingInterceptor,
|
|
} from '@app/_interceptors';
|
|
import { MutablePgpKeyStore } from '@app/_pgp';
|
|
import { ServiceWorkerModule } from '@angular/service-worker';
|
|
|
|
@NgModule({
|
|
declarations: [AppComponent],
|
|
imports: [
|
|
BrowserModule,
|
|
AppRoutingModule,
|
|
BrowserAnimationsModule,
|
|
HttpClientModule,
|
|
SharedModule,
|
|
MatTableModule,
|
|
LoggerModule.forRoot({
|
|
level: environment.logLevel,
|
|
serverLogLevel: environment.serverLogLevel,
|
|
serverLoggingUrl: `${environment.loggingUrl}/api/logs/`,
|
|
disableConsoleLogging: false,
|
|
}),
|
|
ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }),
|
|
],
|
|
providers: [
|
|
AuthGuard,
|
|
MutablePgpKeyStore,
|
|
MockBackendProvider,
|
|
GlobalErrorHandler,
|
|
{ provide: ErrorHandler, useClass: GlobalErrorHandler },
|
|
{ provide: HTTP_INTERCEPTORS, useClass: ConnectionInterceptor, multi: true },
|
|
{ provide: HTTP_INTERCEPTORS, useClass: HttpConfigInterceptor, multi: true },
|
|
{ provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },
|
|
{ provide: HTTP_INTERCEPTORS, useClass: LoggingInterceptor, multi: true },
|
|
],
|
|
bootstrap: [AppComponent],
|
|
})
|
|
export class AppModule {}
|