import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { MatButtonModule } from '@angular/material/button'; import { MatCheckboxModule } from '@angular/material/checkbox'; import { MatDatepickerModule } from '@angular/material/datepicker'; import { MatDialogModule } from '@angular/material/dialog'; import { MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { MatSidenavModule } from '@angular/material/sidenav'; import { MatSlideToggleModule } from '@angular/material/slide-toggle'; import { MatSnackBarModule } from '@angular/material/snack-bar'; import { MatStepperModule } from '@angular/material/stepper'; import { TranslateModule } from '@ngx-translate/core'; import { ChartsModule } from 'ng2-charts'; import { ChoiceDetailsComponent } from './components/choice-details/choice-details.component'; import { CommentsComponent } from './components/comments/comments.component'; import { FeedbackComponent } from './components/feedback/feedback.component'; import { PageNotFoundComponent } from './components/page-not-found/page-not-found.component'; import { LanguageSelectorComponent } from './components/selectors/language-selector/language-selector.component'; import { ThemeSelectorComponent } from './components/selectors/theme-selector/theme-selector.component'; import { SettingsComponent } from './components/settings/settings.component'; import { SpinnerComponent } from './components/spinner/spinner.component'; const COMPONENTS = [ ChoiceDetailsComponent, CommentsComponent, FeedbackComponent, LanguageSelectorComponent, PageNotFoundComponent, SettingsComponent, SpinnerComponent, ThemeSelectorComponent, ]; const ANGULAR_MODULES = [CommonModule, ChartsModule, FormsModule, TranslateModule]; const MATERIAL_MODULES = [ MatButtonModule, MatCheckboxModule, MatDatepickerModule, MatDialogModule, MatFormFieldModule, MatInputModule, MatProgressSpinnerModule, MatSidenavModule, MatSlideToggleModule, MatSnackBarModule, MatStepperModule, ]; @NgModule({ declarations: COMPONENTS, imports: [...ANGULAR_MODULES, ...MATERIAL_MODULES], exports: [...ANGULAR_MODULES, ...MATERIAL_MODULES, ...COMPONENTS], }) export class SharedModule {}