50 lines
1.4 KiB
TypeScript
50 lines
1.4 KiB
TypeScript
import {NgModule} from '@angular/core';
|
|
import {CommonModule} from '@angular/common';
|
|
import {TranslateLoader, TranslateModule} from '@ngx-translate/core';
|
|
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
|
|
import {HttpClient, HttpClientModule} from '@angular/common/http';
|
|
import {FontAwesomeModule} from '@fortawesome/angular-fontawesome';
|
|
import {FlexLayoutModule, FlexModule} from '@angular/flex-layout';
|
|
import {MomentModule} from 'ngx-moment';
|
|
import {NotificationService} from '../shared/services/notification.service';
|
|
import {NbToastrModule} from '@nebular/theme';
|
|
import {ThemeModule} from '../assets/@theme/theme.module';
|
|
import {LoadingSpinnerComponent} from '@shared/widgets/loading-spinner/loading-spinner.component';
|
|
|
|
export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {
|
|
return new TranslateHttpLoader(http);
|
|
}
|
|
|
|
@NgModule({
|
|
declarations: [
|
|
LoadingSpinnerComponent
|
|
],
|
|
imports: [
|
|
CommonModule,
|
|
NbToastrModule, // used for notification service
|
|
FontAwesomeModule,
|
|
FlexLayoutModule,
|
|
ThemeModule.forRoot(),
|
|
FlexModule,
|
|
HttpClientModule,
|
|
TranslateModule.forChild({
|
|
loader: {
|
|
provide: TranslateLoader,
|
|
useFactory: HttpLoaderFactory,
|
|
deps: [HttpClient]
|
|
}
|
|
})
|
|
],
|
|
providers: [
|
|
HttpClient,
|
|
NotificationService
|
|
],
|
|
exports: [
|
|
LoadingSpinnerComponent,
|
|
// modules
|
|
MomentModule
|
|
]
|
|
})
|
|
export class CommonAppModule {
|
|
}
|