import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import {AppRoutingModule} from './app-routing.module'; import {HttpClient, HttpClientModule} from '@angular/common/http'; import {StatusComponent} from './views/status-component/status.component'; import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import { MatButtonModule, MatCheckboxModule, MatIconModule, MatListModule, MatSidenavModule, MatToolbarModule } from '@angular/material'; import {MatProgressBarModule} from '@angular/material/progress-bar'; import {MatExpansionModule} from '@angular/material/expansion'; import {MatTableModule} from '@angular/material/table'; import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core'; import {TranslateHttpLoader} from '@ngx-translate/http-loader'; import {FlexLayoutModule} from '@angular/flex-layout'; import {CgBusyModule} from 'angular-busy2'; import {StatusLedDirective} from './directives/status-led.directive'; export function HttpLoaderFactory(http: HttpClient) { return new TranslateHttpLoader(http, './assets/languages/'); } @NgModule({ declarations: [ AppComponent, StatusComponent, StatusLedDirective ], imports: [ BrowserModule, AppRoutingModule, HttpClientModule, BrowserAnimationsModule, MatButtonModule, MatCheckboxModule, MatToolbarModule, MatSidenavModule, MatIconModule, MatListModule, MatProgressBarModule, MatExpansionModule, MatTableModule, TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }), FlexLayoutModule, CgBusyModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { constructor(translate: TranslateService) { // this language will be used as a fallback when a translation isn't found in the current language translate.setDefaultLang('en'); // the lang to use, if the lang isn't available, it will use the current loader to get them translate.use('en'); } }