Files
iptvnator/src/app/app.module.ts
T
2020-08-23 20:57:07 +02:00

62 lines
2.1 KiB
TypeScript

import 'reflect-metadata';
import '../polyfills';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpClientModule, HttpClient } from '@angular/common/http';
import { SharedModule } from './shared/shared.module';
import { AppRoutingModule } from './app-routing.module';
// NG Translate
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { AppComponent } from './app.component';
import { CommonModule } from '@angular/common';
import { PlaylistUploaderComponent } from './playlist-uploader/playlist-uploader.component';
import { NgxUploaderModule } from 'ngx-uploader';
import { VideoPlayerComponent } from './video-player/video-player.component';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { RecentPlaylistsComponent } from './recent-playlists/recent-playlists.component';
import { ChannelListContainerComponent } from './channel-list-container/channel-list-container.component';
import { FilterPipeModule } from 'ngx-filter-pipe';
import { M3uService } from './services/m3u-service.service';
// AoT requires an exported function for factories
export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
@NgModule({
declarations: [
AppComponent,
ChannelListContainerComponent,
PlaylistUploaderComponent,
VideoPlayerComponent,
RecentPlaylistsComponent,
],
imports: [
CommonModule,
BrowserAnimationsModule,
BrowserModule,
FormsModule,
HttpClientModule,
SharedModule,
AppRoutingModule,
FilterPipeModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient],
},
}),
NgxUploaderModule,
],
providers: [M3uService],
bootstrap: [AppComponent],
})
export class AppModule {}