import {BrowserModule} from '@angular/platform-browser'; import {ErrorHandler, 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 {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 './loading/loading.component'; import {registerLocaleData} from '@angular/common'; import {LocalizationPipe} from './activities/localize'; import {ClinicalExamsComponent} from './measurements/measurements-midwife/clinical-exams.component'; import {FeedbackButtonComponent} from './feedback-button/feedback-button.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 './no-active-pathway/no-active-pathway.component'; import {ModalComponent, ModalControlsComponent} 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 {MedicalHistoryComponent} from './pregnancy/medical-history/medical-history.component'; import {MAT_DATE_FORMATS, MatRippleModule} 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'; import {FetusTableComponent} from './measurements/measurements-midwife/fetus-table/fetus-table.component'; import {DirtyGuard, RouterOutletDirtyWatchDirective} from './confirm-navigation-if-dirty.framework'; import { SummaryCardComponent } from './measurements/measurements-summary/summary-card/summary-card.component'; import { ClinicalExamsLineChartComponent } from './measurements/measurements-midwife/clinical-exams-line-chart/clinical-exams-line-chart.component'; import { AddSummaryDialogComponent } from './measurements/measurements-summary/add-summary-dialog/add-summary-dialog.component'; import { HighlightOnNavigationDirective } from './highlight-on-navigation.directive'; import { ShowRelatedActivityModalComponent } from './measurements/show-related-activity-modal/show-related-activity-modal.component'; import { ActivityStatusComponent } from './activities/activity-card/activity-status/activity-status.component'; import { EditMeasurementsModalComponent } from './measurements/edit-measurements-modal/edit-measurements-modal.component'; import { TieToActivityModalComponent } from './measurements/tie-to-activity-modal/tie-to-activity-modal.component'; import { TrimToLengthPipe } from './pipes/trim-to-length.pipe'; import { EditUltrasoundComponent } from './measurements/edit-measurements-modal/edit-ultrasound/edit-ultrasound.component'; import { EditRegularComponent } from './measurements/edit-measurements-modal/edit-regular/edit-regular.component'; import {OptionComponent, ToggleComponent} from './toggle/toggle.component'; import { BloodPressureInputComponent } from './measurements/edit-measurements-modal/edit-regular/blood-pressure-input/blood-pressure-input.component'; import { TriageOverviewComponent } from './triage-overview/triage-overview.component'; import { VersionedSectionDirective } from './versioned-section.directive'; import { FeedbackModalComponent } from './feedback-modal/feedback-modal.component'; import {SmileyComponent, SmileySelectComponent} from './feedback-modal/smiley-select/smiley-select.component'; import {UserContextHolder} from './services/user-context.service'; import {ActiveRequests} from './services/active-requests.service'; import {PatientContextService} from './services/patient-context.service'; import {MatListModule} from '@angular/material/list'; import { PrivatelyMarkedComponent } from './privately-marked/privately-marked.component'; import { PrivatelyMarkedDialogComponent } from './privately-marked/privately-marked-dialog/privately-marked-dialog.component'; import { SomethingWentWrongComponent } from './something-went-wrong/something-went-wrong.component'; import {ErrorService} from './services/error.service'; import { CprDoesNotExistComponent } from './cpr-does-not-exist/cpr-does-not-exist.component'; import { CprSearchFabComponent } from './cpr-search-fab/cpr-search-fab.component'; import {CprSearchEventService} from './services/cpr-search-event.service'; import {DataCardService} from './api/data-card.service'; import {ObservationService} from './api/observation.service'; import {CarePlanService} from './api/care-plan.service'; import {ApiService} from './api/api.service'; import { ResumeModalComponent } from './activities/resume-modal/resume-modal.component'; registerLocaleData(localeDa); const APP_CUSTOM_DATE_FORMAT = { parse: { dateInput: 'DD.MM.YYYY', }, display: { dateInput: 'DD.MM.YYYY', monthYearLabel: 'MMMM YYYY', dateA11yLabel: 'LL', monthYearA11yLabel: 'MMMM-YYYY', } }; @NgModule({ declarations: [ AppComponent, NavigationBarComponent, ActivitiesComponent, DialogComponent, LoadingComponent, CprSearchComponent, NoActivePathwayComponent, ClinicalExamsComponent, MeasurementsTabComponent, MeasurementsScreeningsComponent, MeasurementsScansComponent, MeasurementsSummaryComponent, FeedbackButtonComponent, LocalizationPipe, ActivityCardComponent, DataFieldComponent, ModalComponent, ModalControlsComponent, 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, RouterOutletDirtyWatchDirective, FetusTableComponent, SummaryCardComponent, ClinicalExamsLineChartComponent, AddSummaryDialogComponent, HighlightOnNavigationDirective, ShowRelatedActivityModalComponent, ActivityStatusComponent, EditMeasurementsModalComponent, TieToActivityModalComponent, TrimToLengthPipe, EditUltrasoundComponent, EditRegularComponent, ToggleComponent, OptionComponent, BloodPressureInputComponent, TriageOverviewComponent, VersionedSectionDirective, FeedbackModalComponent, SmileySelectComponent, SmileyComponent, PrivatelyMarkedComponent, PrivatelyMarkedDialogComponent, SomethingWentWrongComponent, CprDoesNotExistComponent, CprSearchFabComponent, ResumeModalComponent, ], entryComponents: [ PrivatelyMarkedComponent ], imports: [ BrowserModule, BrowserAnimationsModule, HttpClientModule, MatListModule, AngularMaterialModule, RoutingModule, FormsModule, ReactiveFormsModule, NgxMaskModule.forRoot(), MatRippleModule, ], providers: [ ApiService, CprSearchEventService, CarePlanService, DataCardService, DirtyGuard, ObservationService, PrivatelyMarkedDialogComponent, { provide: LOCALE_ID, useValue: 'da' }, { provide: HTTP_INTERCEPTORS, useClass: environment.mock ? HttpMockRequestInterceptor : HttpRequestInterceptor, multi: true, deps: [ActiveRequests, PatientContextService, UserContextHolder, ErrorService] }, { provide: MAT_DATE_FORMATS, useValue: APP_CUSTOM_DATE_FORMAT }, { provide: ErrorHandler, useClass: ErrorService }, ], bootstrap: [AppComponent] }) export class AppModule { constructor() { console.log('Environment: ' + JSON.stringify(environment)); } }