app.module.ts 9.35 KiB
import { BrowserModule } from "@angular/platform-browser";
import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
import {
  MatButtonModule,
  MatCheckboxModule,
  MatIconModule,
  MatSelectModule,
  MatTabsModule,
  MatSidenavModule,
  MatToolbarModule,
  MatTooltipModule,
  MatMenuModule,
  MatDialogModule,
  MatFormFieldModule,
  MatInputModule,
  MatListModule,
  MatCardModule,
  MatProgressBarModule,
  MatRadioModule,
  MatTableModule,
  MatSnackBarModule,
  MatBadgeModule,
  ErrorStateMatcher,
  MatButtonToggleModule
} from "@angular/material";
import { MaterialFileInputModule } from "ngx-material-file-input";
import {TableModule} from "primeng/components/table/table";
import { FlexLayoutModule } from "@angular/flex-layout";
import {
  CustomBreakPointsProvider,
  FlexGtXxsShowHideDirective,
  FlexXxsShowHideDirective,
  FlexLtXsShowHideDirective
} from "./directives/flex-xxs.directive";
import { HttpClientModule } from "@angular/common/http";
import { FormsModule, ReactiveFormsModule } from "@angular/forms"; // <-- NgModel lives here
import { ChartModule } from "angular2-chartjs";
import { RouterModule, Routes } from "@angular/router";
import { NgxMdModule } from "ngx-md";
import { StorageServiceModule } from "ngx-webstorage-service";
import { FormulaireService } from "./services/formulaire/formulaire.service";
import { I18nService } from "./services/internationalisation/internationalisation.service";
import { HttpService } from "./services/http/http.service";
import { ApplicationSetupService } from "./services/app-setup/app-setup.service";
import { NotificationsService } from "./services/notifications/notifications.service";
import { AppComponent } from "./app.component";
import { NgParamInputComponent } from "./components/ngparam-input/ngparam-input.component";
import { FieldSetComponent } from "./components/field-set/field-set.component";
import { FieldsetContainerComponent } from "./components/fieldset-container/fieldset-container.component";
import { ParamComputedComponent } from "./components/param-computed/param-computed.component";
import { ParamFieldLineComponent } from "./components/param-field-line/param-field-line.component";
import { ParamValuesComponent } from "./components/param-values/param-values.component";
import { SelectFieldLineComponent } from "./components/select-field-line/select-field-line.component";
import { CalculatorResultsComponent } from "./components/calculator-results/calculator-results.component";
import { FixedVarResultsComponent } from "./components/fixedvar-results/fixedvar-results.component";
import { SectionResultsComponent } from "./components/section-results/section-results.component";
import { GenericCalculatorComponent } from "./components/generic-calculator/calculator.component";
import { CalculatorNameComponent } from "./components/generic-calculator/calc-name.component";
import { CalcCanvasComponent } from "./components/canvas/canvas.component";
import { SectionCanvasComponent } from "./components/section-canvas/section-canvas.component";
import { RemousResultsComponent } from "./components/remous-results/remous-results.component";
import { ResultsGraphComponent } from "./components/results-graph/results-graph.component";
import { PabResultsComponent } from "./components/pab-results/pab-results.component";
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
import { PabResultsTableComponent } from "./components/pab-results/pab-results-table.component"; import { GraphTypeSelectComponent } from "./components/results-graph/graph-type.component"; import { LogComponent } from "./components/log/log.component"; import { CalculatorListComponent } from "./components/calculator-list/calculator-list.component"; import { ApplicationSetupComponent } from "./components/app-setup/app-setup.component"; import { BaseParamInputComponent } from "./components/base-param-input/base-param-input.component"; import { FixedResultsComponent } from "./components/fixedvar-results/fixed-results.component"; import { VarResultsComponent } from "./components/fixedvar-results/var-results.component"; import { LogEntryComponent } from "./components/log-entry/log-entry.component"; import { ParamLinkComponent } from "./components/param-link/param-link.component"; import { SelectModelFieldLineComponent } from "./components/select-model-field-line/select-model-field-line.component"; import { PabTableComponent } from "./components/pab-table/pab-table.component"; import { PabVariableResultsSelectorComponent } from "./components/pab-results/pab-variable-results-selector.component"; import { DialogConfirmEmptySessionComponent } from "./components/dialog-confirm-empty-session/dialog-confirm-empty-session.component"; import { DialogConfirmCloseCalcComponent } from "./components/dialog-confirm-close-calc/dialog-confirm-close-calc.component"; import { DialogEditPabComponent } from "./components/dialog-edit-pab/dialog-edit-pab.component"; import { DialogEditParamComputedComponent } from "./components/dialog-edit-param-computed/dialog-edit-param-computed.component"; import { DialogEditParamValuesComponent } from "./components/dialog-edit-param-values/dialog-edit-param-values.component"; import { DialogGeneratePABComponent } from "./components/dialog-generate-pab/dialog-generate-pab.component"; import { DialogLoadSessionComponent } from "./components/dialog-load-session/dialog-load-session.component"; import { DialogLogEntriesDetailsComponent } from "./components/dialog-log-entries-details/dialog-log-entries-details.component"; import { DialogSaveSessionComponent } from "./components/dialog-save-session/dialog-save-session.component"; import { JalhydAsyncModelValidationDirective } from "./directives/jalhyd-async-model-validation.directive"; import { JalhydModelValidationDirective, JalhydModelValidationMinDirective, JalhydModelValidationMaxDirective, JalhydModelValidationStepDirective } from "./directives/jalhyd-model-validation.directive"; import { ImmediateErrorStateMatcher } from "./formulaire/immediate-error-state-matcher"; const appRoutes: Routes = [ { path: "list", component: CalculatorListComponent }, { path: "calculator/:uid", component: GenericCalculatorComponent }, { path: "setup", component: ApplicationSetupComponent }, { path: "**", redirectTo: "list", pathMatch: "full" } ]; @NgModule({ imports: [ FormsModule, // <-- import the FormsModule before binding with [(ngModel)] ReactiveFormsModule, BrowserAnimationsModule, BrowserModule, ChartModule, HttpClientModule, FlexLayoutModule, MatBadgeModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatDialogModule, MaterialFileInputModule, MatFormFieldModule, MatIconModule, MatInputModule, MatListModule, MatMenuModule, MatProgressBarModule, MatRadioModule, MatSelectModule, MatSidenavModule, MatSnackBarModule, MatTableModule, MatTabsModule, MatToolbarModule, MatTooltipModule,
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
NgxMdModule.forRoot(), RouterModule.forRoot( appRoutes, { useHash: true, // prevents reloading whole app when typing url in browser's navigation bar enableTracing: false // debugging purposes only } ), StorageServiceModule, TableModule ], declarations: [ // composants, pipes et directives AppComponent, ApplicationSetupComponent, BaseParamInputComponent, CalcCanvasComponent, CalculatorListComponent, CalculatorNameComponent, CalculatorResultsComponent, DialogConfirmCloseCalcComponent, DialogConfirmEmptySessionComponent, DialogEditPabComponent, DialogEditParamComputedComponent, DialogEditParamValuesComponent, DialogGeneratePABComponent, DialogLoadSessionComponent, DialogLogEntriesDetailsComponent, DialogSaveSessionComponent, FieldSetComponent, FieldsetContainerComponent, FixedResultsComponent, FixedVarResultsComponent, FlexGtXxsShowHideDirective, FlexLtXsShowHideDirective, FlexXxsShowHideDirective, GenericCalculatorComponent, GraphTypeSelectComponent, JalhydAsyncModelValidationDirective, JalhydModelValidationDirective, JalhydModelValidationMinDirective, JalhydModelValidationMaxDirective, JalhydModelValidationStepDirective, LogComponent, LogEntryComponent, NgParamInputComponent, PabResultsComponent, PabResultsTableComponent, PabTableComponent, PabVariableResultsSelectorComponent, ParamComputedComponent, ParamFieldLineComponent, ParamLinkComponent, ParamValuesComponent, RemousResultsComponent, ResultsGraphComponent, SectionCanvasComponent, SectionResultsComponent, SelectFieldLineComponent, SelectModelFieldLineComponent, VarResultsComponent ], entryComponents: [ DialogConfirmCloseCalcComponent, DialogConfirmEmptySessionComponent, DialogEditPabComponent, DialogEditParamComputedComponent, DialogEditParamValuesComponent, DialogGeneratePABComponent, DialogSaveSessionComponent, DialogLoadSessionComponent,
211212213214215216217218219220221222223224225226227228229230
DialogLogEntriesDetailsComponent ], providers: [ // services ApplicationSetupService, CustomBreakPointsProvider, FormulaireService, HttpService, I18nService, NotificationsService, { provide: ErrorStateMatcher, useClass: ImmediateErrorStateMatcher } ], schemas: [ NO_ERRORS_SCHEMA ], bootstrap: [ AppComponent ] }) export class AppModule { }