Begin video watch design
[oweals/peertube.git] / client / src / app / shared / shared.module.ts
1 import { CommonModule } from '@angular/common'
2 import { HttpClientModule } from '@angular/common/http'
3 import { NgModule } from '@angular/core'
4 import { FormsModule, ReactiveFormsModule } from '@angular/forms'
5 import { RouterModule } from '@angular/router'
6
7 import { BsDropdownModule } from 'ngx-bootstrap/dropdown'
8 import { ModalModule } from 'ngx-bootstrap/modal'
9 import { ProgressbarModule } from 'ngx-bootstrap/progressbar'
10 import { InfiniteScrollModule } from 'ngx-infinite-scroll'
11 import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
12 import { SharedModule as PrimeSharedModule } from 'primeng/components/common/shared'
13 import { DataTableModule } from 'primeng/components/datatable/datatable'
14
15 import { AUTH_INTERCEPTOR_PROVIDER } from './auth'
16 import { FromNowPipe } from './misc/from-now.pipe'
17 import { LoaderComponent } from './misc/loader.component'
18 import { NumberFormatterPipe } from './misc/number-formatter.pipe'
19 import { RestExtractor, RestService } from './rest'
20 import { UserService } from './users'
21 import { VideoAbuseService } from './video-abuse'
22 import { VideoBlacklistService } from './video-blacklist'
23 import { VideoMiniatureComponent } from './video/video-miniature.component'
24 import { VideoThumbnailComponent } from './video/video-thumbnail.component'
25 import { VideoService } from './video/video.service'
26
27 @NgModule({
28   imports: [
29     CommonModule,
30     FormsModule,
31     ReactiveFormsModule,
32     RouterModule,
33     HttpClientModule,
34
35     BsDropdownModule.forRoot(),
36     ModalModule.forRoot(),
37     ProgressbarModule.forRoot(),
38
39     DataTableModule,
40     PrimeSharedModule,
41     InfiniteScrollModule,
42     NgPipesModule
43   ],
44
45   declarations: [
46     LoaderComponent,
47     VideoThumbnailComponent,
48     VideoMiniatureComponent,
49     NumberFormatterPipe,
50     FromNowPipe
51   ],
52
53   exports: [
54     CommonModule,
55     FormsModule,
56     ReactiveFormsModule,
57     RouterModule,
58     HttpClientModule,
59
60     BsDropdownModule,
61     ModalModule,
62     ProgressbarModule,
63     DataTableModule,
64     PrimeSharedModule,
65     InfiniteScrollModule,
66     BytesPipe,
67     KeysPipe,
68
69     LoaderComponent,
70     VideoThumbnailComponent,
71     VideoMiniatureComponent,
72
73     NumberFormatterPipe,
74     FromNowPipe
75   ],
76
77   providers: [
78     AUTH_INTERCEPTOR_PROVIDER,
79     RestExtractor,
80     RestService,
81     VideoAbuseService,
82     VideoBlacklistService,
83     UserService,
84     VideoService
85   ]
86 })
87 export class SharedModule { }