1 import { ApplicationRef, NgModule } from '@angular/core';
2 import { BrowserModule } from '@angular/platform-browser';
3 import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
4 import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5 import { AppComponent } from './app.component';
6 import { HomeComponent } from './home/home.component';
7 import { ApiService } from './shared';
8 import { routing } from './app.routing';
9 import { createNewHosts, removeNgStyles } from '@angularclass/hmr';
10 import { BrowseSdcModule } from './browseSdc/browseSdc.module';
11 import { VlanTaggingModule } from './vlanTagging/vlan-tagging.module'
12 import { BootstrapModalModule } from 'ng2-bootstrap-modal';
13 import { HashLocationStrategy, LocationStrategy } from "@angular/common";
14 import { InstantiationStatusModule } from './instantiationStatus/InstantiationStatus.module';
15 import { SharedModule } from './shared/shared.module';
16 import { AngularSvgIconModule } from 'angular-svg-icon';
17 import { NgReduxModule } from '@angular-redux/store';
18 import { StoreModule } from "./store/module";
19 import { HttpInterceptorService } from './shared/utils/httpInterceptor/httpInterceptor.service';
20 import { DrawingBoardModule } from './drawingBoard/drawingBoard.module';
21 import { HealthStatusComponent } from './healthStatus/health-status.component';
22 import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
23 import { LogService } from './shared/utils/log/log.service';
31 SharedModule.forRoot(),
32 ScrollToModule.forRoot(),
35 InstantiationStatusModule,
52 { provide: LocationStrategy, useClass: HashLocationStrategy },
53 { provide: HTTP_INTERCEPTORS, useClass: HttpInterceptorService, multi: true }
55 bootstrap: [AppComponent]
57 export class AppModule {
58 private static CustomLoader: any;
60 constructor(public appRef: ApplicationRef) {
61 //for ng2-bootstrap-modal in angualar 5
62 Object.defineProperty(appRef, '_rootComponents', { get: () => appRef['components'] });
65 console.log('HMR store', store);
68 let cmpLocation = this.appRef.components.map(cmp => cmp.location.nativeElement);
70 store.disposeOldHosts = createNewHosts(cmpLocation);
74 hmrAfterDestroy(store) {
75 // display new elements
76 store.disposeOldHosts();
77 delete store.disposeOldHosts;