|
|
|
import { BrowserModule } from '@angular/platform-browser';
|
|
|
|
import { NgModule } from '@angular/core';
|
|
|
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
|
|
import { HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
|
|
|
|
|
|
import { StoreModule } from '@ngrx/store';
|
|
|
|
import { EffectsModule } from '@ngrx/effects';
|
|
|
|
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
|
|
|
|
|
|
|
|
import { UserIdleModule } from 'angular-user-idle';
|
|
|
|
import { OverlayContainer } from '@angular/cdk/overlay';
|
|
|
|
import { routing } from './app.routing';
|
|
|
|
import { SharedModule } from './shared/shared.module';
|
|
|
|
import { ThemeOverlay } from './shared/theme/overlay-container/theme-overlay';
|
|
|
|
import { AppComponent } from './app.component';
|
|
|
|
|
|
|
|
import { environment } from '../environments/environment';
|
|
|
|
import { SessionService } from './shared/services/session.service';
|
|
|
|
import { CommonService } from './shared/services/common.service';
|
|
|
|
import { LoggerService, ConsoleLoggerService } from './shared/services/logger.service';
|
|
|
|
import { AuthGuard } from './shared/services/auth.guard';
|
|
|
|
import { AuthInterceptor } from './shared/services/auth.interceptor';
|
|
|
|
|
|
|
|
import { RTLReducer } from './store/rtl.reducers';
|
|
|
|
import { RTLEffects } from './store/rtl.effects';
|
|
|
|
import { LNDEffects } from './lnd/store/lnd.effects';
|
|
|
|
import { CLEffects } from './clightning/store/cl.effects';
|
|
|
|
|
|
|
|
@NgModule({
|
|
|
|
imports: [
|
|
|
|
BrowserModule,
|
|
|
|
BrowserAnimationsModule,
|
|
|
|
SharedModule,
|
|
|
|
routing,
|
|
|
|
UserIdleModule.forRoot({idle: 60 * 60, timeout: 1, ping: null}),
|
|
|
|
StoreModule.forRoot(RTLReducer),
|
|
|
|
EffectsModule.forRoot([RTLEffects, LNDEffects, CLEffects]),
|
|
|
|
!environment.production ? StoreDevtoolsModule.instrument() : []
|
|
|
|
],
|
|
|
|
declarations: [
|
|
|
|
AppComponent
|
|
|
|
],
|
|
|
|
providers: [
|
|
|
|
{ provide: LoggerService, useClass: ConsoleLoggerService },
|
|
|
|
{ provide: OverlayContainer, useClass: ThemeOverlay },
|
|
|
|
{ provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true },
|
|
|
|
CommonService, AuthGuard, SessionService
|
|
|
|
],
|
|
|
|
bootstrap: [AppComponent]
|
|
|
|
})
|
|
|
|
export class AppModule {}
|