import {BrowserModule} from '@angular/platform-browser'; import {NgModule} from '@angular/core'; import {AppRoutingModule} from './app-routing.module'; import {AppComponent} from './app.component'; import {BaseComponent} from './pages/base-page/base.component'; import {KindComponent} from './pages/kind/kind.component'; import {HeaderComponent} from './header/header.component'; import {FormsModule} from '@angular/forms'; import {NavigationComponent} from './ui/navigation/navigation.component'; import {RouterModule} from '@angular/router'; import {Routes} from './config/Routes'; import {CommonModule, registerLocaleData} from '@angular/common'; import {DatesComponent} from './pages/dates/dates.component'; import {DebuggerComponent} from './debugger/debugger.component'; import {VisibilityComponent} from './pages/visibility/visibility.component'; import {ResumeComponent} from './pages/resume/resume.component'; import {PicturesComponent} from './pages/pictures/pictures.component'; import {AnswersComponent} from './pages/answers/answers.component'; import {EndConfirmationComponent} from './pages/end-confirmation/end-confirmation.component'; import {CreateOrRetrieveComponent} from './pages/create-or-retrieve/create-or-retrieve.component'; import localeFr from '@angular/common/locales/fr'; import localeEn from '@angular/common/locales/en'; import {VotingSummaryComponent} from './pages/voting/voting-summary/voting-summary.component'; import {VotingGraphComponent} from './pages/voting/voting-graph/voting-graph.component'; import {VotingChoiceComponent} from './pages/voting/voting-choice/voting-choice.component'; import {PasswordComponent} from './pages/password/password.component'; import {HomeComponent} from './pages/home/home.component'; import {VoteChoiceComponent} from './ui/vote-choice/vote-choice.component'; import {HttpClient, HttpClientModule} from '@angular/common/http'; import {MarkdownModule} from 'ngx-markdown'; import { MissingTranslationHandler, MissingTranslationHandlerParams, TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core'; import {TranslateHttpLoader} from '@ngx-translate/http-loader'; import {PollGraphicComponent} from './poll-graphic/poll-graphic.component'; import {AdminComponent} from './pages/admin/admin.component'; import {SelectorComponent} from './ui/selector/selector.component'; import {BrowserAnimationsModule} from "@angular/platform-browser/animations"; import {ConfigService} from "./services/config.service"; import {PollService} from "./services/poll.service"; import {ToastModule} from 'primeng/toast'; import {ConfirmationService, MessageModule, MessageService} from "primeng"; import {PollDisplayComponent} from './pages/poll-display/poll-display.component'; import {VotingComponent} from './pages/voting/voting.component'; import {VotingCommentComponent} from './pages/voting/voting-comment/voting-comment.component'; import {ResettableInputDirective} from './ui/directives/resettable-input.directive'; import {ClipboardModule} from "ngx-clipboard"; import {ErasableInputComponent} from './ui/erasable-input/erasable-input.component'; import {ConfirmDialogModule} from 'primeng/confirmdialog'; import {DialogModule} from 'primeng/dialog'; import {DateValueAccessorModule} from "angular-date-value-accessor"; import {CopyTextComponent} from './ui/copy-text/copy-text.component'; export class MyMissingTranslationHandler implements MissingTranslationHandler { handle(params: MissingTranslationHandlerParams) { return 'some value'; } } registerLocaleData(localeFr, 'fr'); registerLocaleData(localeEn, 'en'); export function HttpLoaderFactory(http: HttpClient) { return new TranslateHttpLoader(http); } @NgModule({ declarations: [ AppComponent, BaseComponent, KindComponent, HeaderComponent, NavigationComponent, DatesComponent, DebuggerComponent, VisibilityComponent, ResumeComponent, PicturesComponent, AnswersComponent, EndConfirmationComponent, CreateOrRetrieveComponent, VotingSummaryComponent, VotingGraphComponent, VotingChoiceComponent, PasswordComponent, HomeComponent, PollGraphicComponent, VoteChoiceComponent, AdminComponent, SelectorComponent, PollDisplayComponent, VotingComponent, VotingCommentComponent, ResettableInputDirective, ErasableInputComponent, CopyTextComponent, ], imports: [ ConfirmDialogModule, ClipboardModule, CommonModule, BrowserModule, DialogModule, DateValueAccessorModule, BrowserAnimationsModule, AppRoutingModule, ToastModule, MessageModule, MarkdownModule.forRoot(), TranslateModule.forRoot({ missingTranslationHandler: { provide: MissingTranslationHandler, useClass: MyMissingTranslationHandler, }, // useDefaultLang: false, loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }), HttpClientModule, FormsModule, RouterModule.forRoot(Routes, {useHash: true}) ], providers: [TranslateService, ConfigService, PollService, MessageService, ConfirmationService], bootstrap: [AppComponent] }) export class AppModule { }