import { BrowserModule } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; import { HttpClientModule } from '@angular/common/http'; import { StoreModule } from '@ngrx/store'; import { StoreDevtoolsModule } from '@ngrx/store-devtools'; import { EffectsModule } from '@ngrx/effects'; import { AppRoutingModule } from './app.routing.module'; import { AppComponent } from './app.component'; import { CoreModule } from '@app/core/core.module'; import { SharedModule } from '@app/shared/shared.module'; import { HeaderComponent } from './core/header/header.component'; import { SidenavService } from './core/service/sidenav.service'; import { degreePlannerReducer } from '@app/degree-planner/store/reducer'; import { DegreePlanEffects } from '@app/degree-planner/store/effects/plan.effects'; import { NoteEffects } from '@app/degree-planner/store/effects/note.effects'; import { MatAutocompleteModule } from '@angular/material/autocomplete'; import { CourseDetailsDialogComponent } from './degree-planner/dialogs/course-details-dialog/course-details-dialog.component'; @NgModule({ imports: [ StoreModule.forRoot({ degreePlanner: degreePlannerReducer, }), EffectsModule.forRoot([DegreePlanEffects, NoteEffects]), BrowserModule, BrowserAnimationsModule, HttpClientModule, CoreModule, SharedModule, AppRoutingModule, MatAutocompleteModule, StoreDevtoolsModule.instrument({ maxAge: 5, }), ], declarations: [AppComponent, HeaderComponent], entryComponents: [CourseDetailsDialogComponent], providers: [SidenavService], bootstrap: [AppComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA], }) export class AppModule {}