Files
SkydiveLogs/Front/skydivelogs-app/src/app/app.module.ts
2020-02-20 12:31:34 +01:00

115 lines
4.4 KiB
TypeScript

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 { DefaultComponent } from './default/default.component';
import { DateService } from '../services/date.service';
import { AircraftService } from '../services/aircraft.service';
import { DropzoneService } from '../services/dropzone.service';
import { GearService } from '../services/gear.service';
import { JumpService } from '../services/jump.service';
import { JumpTypeService } from '../services/jump-type.service';
import { StatsService } from '../services/stats.service';
import { ServiceComm } from '../services/service-comm.service';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { MatAutocompleteModule } from '@angular/material/autocomplete';
import { MatButtonModule } from '@angular/material/button';
import { MatCheckboxModule } from '@angular/material/checkbox';
import { MatOptionModule, MatNativeDateModule } from '@angular/material/core';
import { MatDatepickerModule } from '@angular/material/datepicker';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatIconModule } from '@angular/material/icon';
import { MatInputModule } from '@angular/material/input';
import { MatPaginatorModule } from '@angular/material/paginator';
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
import { MatSelectModule } from '@angular/material/select';
import { MatTableModule } from '@angular/material/table';
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 },
{ path: '**', component: DefaultComponent }
];
@NgModule({
declarations: [
AppComponent,
SummaryComponent,
ListOfJumpsComponent,
ListOfDzsComponent,
NewJumpComponent,
ListOfAircraftsComponent,
ListOfJumpTypesComponent,
ListOfGearsComponent,
NewAircraftComponent,
NewGearComponent,
NewDropZoneComponent,
NewJumpTypeComponent,
DefaultComponent
],
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,
MatProgressSpinnerModule
],
exports: [HttpClientModule],
providers: [
AircraftService,
DropzoneService,
GearService,
JumpService,
JumpTypeService,
StatsService,
ServiceComm,
DateService,
RequestCache,
// { provide: HTTP_INTERCEPTORS, useClass: CachingInterceptor, multi: true }
],
bootstrap: [AppComponent]
})
export class AppModule { }