import { TranslateHttpLoader } from '@ngx-translate/http-loader'; import { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core'; import { UsersCriteriaComponent } from '../shared/components/criteria/users/users-criteria.component'; import { MaterialModule } from '../shared/material/material.module'; import { SharedModule } from '../shared/shared.module'; import { CommonModule } from '@angular/common'; import { HttpClient, HttpClientModule } from '@angular/common/http'; import { NgModule } from '@angular/core'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { UsersComponent } from './components/users.component'; import { UserRoleEditorComponent } from './components/roles/user-role-editor.component'; import { RecentActivityComponent } from '../users/activity/recent-activity.component'; import { UserReferenceService } from '../services/user-reference/user-reference-data.service'; import { RouterModule } from '@angular/router'; import { UsersRoutes } from './users.routes'; import { BaseHttpModule } from '../utilities/cite-http-service-module/cite-http.module'; import { BaseHttpService } from '../utilities/cite-http-service-module/base-http.service'; import { UserProfileComponent } from './profile/user-profile.component'; import { TimezoneInfoDisplayPipe } from '../utilities/culture/pipes/TimezoneInfoDisplayPipe'; @NgModule({ imports: [ CommonModule, SharedModule, BaseHttpModule.forRoot(), RouterModule.forChild(UsersRoutes), TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }), ReactiveFormsModule, MaterialModule ], declarations: [ UsersComponent, UsersCriteriaComponent, UserRoleEditorComponent, UserProfileComponent, TimezoneInfoDisplayPipe ], providers: [ BaseHttpService, UserReferenceService ], exports: [ UsersComponent ] }) export class UsersModule { constructor(private translate: TranslateService) { translate.setDefaultLang('en'); translate.use('en'); } } export function HttpLoaderFactory(httpClient: HttpClient) { return new TranslateHttpLoader(httpClient, 'assets/lang/', '.json'); }