import {BrowserModule} from '@angular/platform-browser'; import {LOCALE_ID, NgModule} from '@angular/core'; import {AppComponent} from './app.component'; import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http'; import {environment} from '../environments/environment'; import {DataCardComponent} from './data-card/data-card.component'; import {ApiModule, BASE_PATH, DataCardService} from 'facade-api'; import {HttpMockRequestInterceptor} from '../utils/mock.interceptor'; import {HttpRequestInterceptor} from '../utils/interceptor'; import {AngularMaterialModule} from './modules/angular-material.module'; import {NavigationBarComponent} from './navigationbar/navigationbar.component'; import {RoutingModule} from './modules/routing.module'; import {ActivitiesComponent} from './activities/activities.component'; import {MeasurementsScreeningsComponent} from './measurements/measurements-screenings/measurements-screenings.component'; import {MeasurementsScansComponent} from './measurements/measurements-scans/measurements-scans.component'; import {MeasurementsSummaryComponent} from './measurements/measurements-summary/measurements-summary.component'; import {MeasurementsTabComponent} from './measurements/measurements-tab/measurements-tab.component'; import {DialogComponent} from './modals/dialog/dialog.component'; import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import {LoadingComponent} from './modals/loading/loading.component'; import {registerLocaleData} from '@angular/common'; import {LocalizationPipe} from './activities/localize'; import {MeasurementsMidwifeComponent} from './measurements/measurements-midwife/measurements-midwife.component'; import {FeedbackButtonComponent} from './feedback-button/feedback-button.component'; import {FeedbackComponent} from './feedback/feedback.component'; import {FormsModule, ReactiveFormsModule} from '@angular/forms'; import {ActivityCardComponent} from './activities/activity-card/activity-card.component'; import {DataFieldComponent} from './activities/data-field/data-field.component'; import localeDa from '@angular/common/locales/da'; import {CprSearchComponent} from './cpr-search/cpr-search.component'; import {NgxMaskModule} from 'ngx-mask'; import {NoActivePathwayComponent} from './data-card/no-active-pathway/no-active-pathway.component'; import { ModalComponent } from './modals/modal/modal.component'; import {ActivityModalComponent} from './activities/activity-modal/activity-modal.component'; // tslint:disable-next-line:max-line-length import {RoleSelectorComponent} from './role-selector/role-selector.component'; import {HeaderButtonsComponent, TabsComponent} from './tabs/tabs.component'; import { TooltipDirective } from './tooltip/tooltip.directive'; import {PregnancyComponent} from './pregnancy/pregnancy.component'; import {GeneralInformationBarComponent} from './general-information-bar/general-information-bar.component'; import {PatientInformationComponent} from './patient-information/patient-information.component'; import {CardComponent} from './card/card.component'; import {MaskableInputComponent} from './maskable-input/maskable-input.component'; import {OptionalDatePipe} from './patient-information/optional-date.pipe'; import {NamePipe} from './patient-information/name.pipe'; import {EditPlanModalComponent} from './activities/edit-plan-modal/edit-plan-modal.component'; import {WeekNumberPipe} from './pipes/week-number.pipe'; import {PreviousPregnanciesComponent} from './pregnancy/previous-pregnancies/previous-pregnancies.component'; import {TextAreaComponent} from './text-area/text-area.component'; import {DropdownComponent} from './dropdown/dropdown.component'; import {InputComponent} from './input/input.component'; import { CprPipe } from './pipes/cpr.pipe'; import { SemiFixedHeaderComponent } from './semi-fixed-header/semi-fixed-header.component'; import { DatePickerComponent } from './date-picker/date-picker.component'; // tslint:disable-next-line:max-line-length import {FetusRelatedMeasurementsComponent} from './activities/activity-card/fetus-related-measurements/fetus-related-measurements.component'; import {MatMenuModule} from '@angular/material/menu'; import {MedicalHistoryComponent} from './pregnancy/medical-history/medical-history.component'; import {MAT_DATE_FORMATS} from '@angular/material/core'; import {CheckboxComponent, CheckboxListComponent} from './checkbox-list/checkbox-list.component'; import { ScreeningsComponent } from './pregnancy/screenings/screenings.component'; import { InfoBoxComponent } from './info-box/info-box.component'; import {RadioButtonComponent, RadioGroupComponent} from './radio-group/radio-group.component'; import { OverallAssessmentComponent } from './pregnancy/overall-assessment/overall-assessment.component'; registerLocaleData(localeDa); const APP_CUSTOM_DATE_FORMAT = { parse: { dateInput: 'DD MMMM YYYY', }, display: { dateInput: 'DD.MM.YYYY', monthYearLabel: 'MMMM YYYY', dateA11yLabel: 'LL', monthYearA11yLabel: 'MMMM-YYYY', } }; @NgModule({ declarations: [ AppComponent, DataCardComponent, NavigationBarComponent, ActivitiesComponent, DialogComponent, LoadingComponent, CprSearchComponent, NoActivePathwayComponent, MeasurementsMidwifeComponent, MeasurementsTabComponent, MeasurementsScreeningsComponent, MeasurementsScansComponent, MeasurementsSummaryComponent, FeedbackButtonComponent, FeedbackComponent, LocalizationPipe, ActivityCardComponent, DataFieldComponent, ModalComponent, ActivityModalComponent, FetusRelatedMeasurementsComponent, RoleSelectorComponent, EditPlanModalComponent, TabsComponent, HeaderButtonsComponent, PregnancyComponent, GeneralInformationBarComponent, WeekNumberPipe, TooltipDirective, PatientInformationComponent, CardComponent, MaskableInputComponent, InputComponent, OptionalDatePipe, NamePipe, WeekNumberPipe, PreviousPregnanciesComponent, TextAreaComponent, DropdownComponent, TextAreaComponent, CprPipe, SemiFixedHeaderComponent, DatePickerComponent, MedicalHistoryComponent, CheckboxListComponent, CheckboxComponent, ScreeningsComponent, InfoBoxComponent, RadioGroupComponent, RadioButtonComponent, OverallAssessmentComponent, ], imports: [ BrowserModule, BrowserAnimationsModule, HttpClientModule, ApiModule, AngularMaterialModule, RoutingModule, FormsModule, ReactiveFormsModule, NgxMaskModule.forRoot(), ], providers: [ DataCardService, { provide: LOCALE_ID, useValue: 'da' }, { provide: BASE_PATH, useValue: environment.base_path + '/api' }, { provide: HTTP_INTERCEPTORS, useClass: environment.mock ? HttpMockRequestInterceptor : HttpRequestInterceptor, multi: true }, { provide: MAT_DATE_FORMATS, useValue: APP_CUSTOM_DATE_FORMAT }, ], bootstrap: [AppComponent] }) export class AppModule { constructor() { console.log('Environment: ' + JSON.stringify(environment)); } }