import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; import { AppComponent } from './app.component'; import { SummaryComponent } from './summary/summary.component'; import { ListOfJumpsComponent } from './list-of-jumps/list-of-jumps.component'; import { ListOfDzsComponent } from './list-of-dzs/list-of-dzs.component'; import { NewJumpComponent } from './new-jump/new-jump.component'; import { ListOfAircraftsComponent } from './list-of-aircrafts/list-of-aircrafts.component'; import { ListOfJumpTypesComponent } from './list-of-jump-types/list-of-jump-types.component'; import { ListOfGearsComponent } from './list-of-gears/list-of-gears.component'; import { NewAircraftComponent } from './new-aircraft/new-aircraft.component'; import { NewGearComponent } from './new-gear/new-gear.component'; import { NewDropZoneComponent } from './new-drop-zone/new-drop-zone.component'; import { NewJumpTypeComponent } from './new-jump-type/new-jump-type.component'; import { DateService } from '../services/date.service'; import { ServiceApiPut } from '../services/service-api-put.service'; import { ServiceApiGet } from '../services/service-api-get.service'; import { ServiceApiPost } from '../services/service-api-post.service'; import { ServiceComm } from '../services/service-comm.service'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatPaginatorModule, MatTableModule, MatSelectModule, MatOptionModule, MatFormFieldModule, MatCheckboxModule, MatDatepickerModule, MatNativeDateModule, MatInputModule, MatButtonModule, MatIconModule, MatAutocompleteModule } from '@angular/material'; import { RequestCache } from '../services/request-cache.service'; import { CachingInterceptor } from '../services/caching-interceptor.service'; const appRoutes: Routes = [ { path: 'summary', component: SummaryComponent }, { path: 'jumps', component: ListOfJumpsComponent }, { path: 'dzs', component: ListOfDzsComponent }, { path: 'newjump', component: NewJumpComponent }, { path: 'aircrafts', component: ListOfAircraftsComponent }, { path: 'jumpTypes', component: ListOfJumpTypesComponent }, { path: 'gears', component: ListOfGearsComponent } ]; @NgModule({ declarations: [ AppComponent, SummaryComponent, ListOfJumpsComponent, ListOfDzsComponent, NewJumpComponent, ListOfAircraftsComponent, ListOfJumpTypesComponent, ListOfGearsComponent, NewAircraftComponent, NewGearComponent, NewDropZoneComponent, NewJumpTypeComponent ], imports: [ RouterModule.forRoot( appRoutes, { enableTracing: true } // <-- debugging purposes only ), ReactiveFormsModule, FormsModule, BrowserModule, BrowserAnimationsModule, MatPaginatorModule, MatTableModule, MatSelectModule, MatOptionModule, MatFormFieldModule, MatCheckboxModule, MatDatepickerModule, MatNativeDateModule, MatInputModule, MatButtonModule, MatIconModule, MatAutocompleteModule ], exports: [HttpClientModule], providers: [ ServiceApiPut, ServiceApiPost, ServiceApiGet, ServiceComm, DateService, RequestCache, // { provide: HTTP_INTERCEPTORS, useClass: CachingInterceptor, multi: true } ], bootstrap: [AppComponent] }) export class AppModule { }