Skip to content
Snippets Groups Projects
app.module.ts 2.6 KiB
Newer Older
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
pnogal's avatar
pnogal committed
import { HttpClientModule } from '@angular/common/http';
import { StoreModule } from '@ngrx/store';
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
import { A11yModule } from '@angular/cdk/a11y';
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed

import { AppRoutingModule } from './app.routing.module';
import { AppComponent } from './app.component';
Joe Van Boxtel's avatar
Joe Van Boxtel committed
import { CoreModule } from '@app/core/core.module';
import { SharedModule } from '@app/shared/shared.module';
pnogal's avatar
pnogal committed
import { HeaderComponent } from './core/header/header.component';
pnogal's avatar
pnogal committed
import { degreePlannerReducer } from '@app/degree-planner/store/reducer';
pnogal's avatar
pnogal committed
import { MatAutocompleteModule } from '@angular/material/autocomplete';
pnogal's avatar
pnogal committed
import { CourseDetailsDialogComponent } from './degree-planner/dialogs/course-details-dialog/course-details-dialog.component';
pnogal's avatar
pnogal committed
import { FeedbackDialogComponent } from './degree-planner/dialogs/feedback-dialog/feedback-dialog.component';
import { CreditOverloadDialogComponent } from './degree-planner/dialogs/credit-overload-dialog/credit-overload-dialog.component';
import { GoogleAnalyticsService } from './shared/services/google-analytics.service';
import { IE11WarningDialogComponent } from './degree-planner/dialogs/ie11-warning-dialog/ie11-warning-dialog.component';
import { darsReducer } from './dars/store/reducer';
import { DARSModule } from './dars/dars.module';
import { DegreePlannerModule } from './degree-planner/degree-planner.module';
import { preferencesReducer } from './core/reducer';
import { UserPreferencesEffects } from './core/effects';
import { EffectsModule } from '@ngrx/effects';
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
@NgModule({
    DARSModule,
    DegreePlannerModule,
    StoreModule.forRoot({
      preferences: preferencesReducer,
      degreePlanner: degreePlannerReducer,
      dars: darsReducer,
    EffectsModule.forFeature([UserPreferencesEffects]),
    BrowserModule,
    BrowserAnimationsModule,
    HttpClientModule,
    CoreModule,
    SharedModule,
    AppRoutingModule,
    MatAutocompleteModule,
    A11yModule,
    StoreDevtoolsModule.instrument({
      maxAge: 5,
    }),
  ],
  declarations: [AppComponent, HeaderComponent],
  entryComponents: [
    CourseDetailsDialogComponent,
    FeedbackDialogComponent,
    CreditOverloadDialogComponent,
    IE11WarningDialogComponent,
  providers: [GoogleAnalyticsService],
  bootstrap: [AppComponent],
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
jvanboxtel@wisc.edu's avatar
jvanboxtel@wisc.edu committed
})
export class AppModule {
  constructor(protected _googleAnalyticsService: GoogleAnalyticsService) {}
}