import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { DevuiCommonsModule } from 'devui-commons/src/devui-commons.module';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { OverviewComponent } from './overview/overview.component';
import { CardModule, SearchModule, TagsModule } from 'ng-devui';
import { ThemePickerModule } from './theme-picker/theme-picker.module';
import { Observable, of } from 'rxjs';
import { I18N } from './language-config';
class I18NLoader implements TranslateLoader {
getTranslation(lang: string): Observable<Object> {
return of(I18N[lang]);
}
}
@NgModule({
declarations: [AppComponent, OverviewComponent],
imports: [
BrowserModule,
AppRoutingModule,
BrowserAnimationsModule,
DevuiCommonsModule,
CardModule,
SearchModule,
TagsModule,
ThemePickerModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useClass: I18NLoader,
},
}),
],
providers: [],
bootstrap: [AppComponent],
})
export class AppModule {}