Skip to content
Snippets Groups Projects
app.module.ts 1.3 KiB
Newer Older
Florent Poittevin's avatar
Florent Poittevin committed
import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http';
import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';
import {NgxsModule} from '@ngxs/store';
Florent Poittevin's avatar
Florent Poittevin committed

Florent Poittevin's avatar
Florent Poittevin committed
import {AuthConfig, JwksValidationHandler, OAuthModule, OAuthModuleConfig, OAuthStorage, ValidationHandler} from 'angular-oauth2-oidc';

import {AppRoutingModule} from './app-routing.module';
import {AppComponent} from './app.component';
import {HomeComponent} from './home/home.component';
import {DlcmInterceptor} from './dlcm.interceptor';
import {authConfig, authModuleConfig} from './auth.config';
Florent Poittevin's avatar
Florent Poittevin committed

@NgModule({
  declarations: [
Florent Poittevin's avatar
Florent Poittevin committed
    AppComponent,
    HomeComponent,
Florent Poittevin's avatar
Florent Poittevin committed
  ],
  imports: [
    BrowserModule,
Florent Poittevin's avatar
Florent Poittevin committed
    AppRoutingModule,
    NgxsModule.forRoot([
      // MyState
    ]),
    HttpClientModule,
    OAuthModule.forRoot(authModuleConfig),
  ],
  providers: [
    {provide: OAuthModuleConfig, useValue: authModuleConfig},
    {provide: ValidationHandler, useClass: JwksValidationHandler},
Florent Poittevin's avatar
Florent Poittevin committed
    // {provide: OAuthStorage, useClass: DlcmStorage},
    {provide: OAuthStorage, useValue: sessionStorage},
Florent Poittevin's avatar
Florent Poittevin committed
    {provide: AuthConfig, useValue: authConfig},
    {
      provide: HTTP_INTERCEPTORS,
      useClass: DlcmInterceptor,
      multi: true,
    },
Florent Poittevin's avatar
Florent Poittevin committed
  ],
Florent Poittevin's avatar
Florent Poittevin committed
  bootstrap: [AppComponent],
Florent Poittevin's avatar
Florent Poittevin committed
})
Florent Poittevin's avatar
Florent Poittevin committed
export class AppModule {
}