]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared.module.ts
9bc7ad88b479aa9fc7559410c18fa0049bc33cac
[github/Chocobozzz/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 import { MarkdownTextareaComponent } from '@app/shared/forms/markdown-textarea.component'
7 import { HelpComponent } from '@app/shared/misc/help.component'
8 import { InfiniteScrollerDirective } from '@app/shared/video/infinite-scroller.directive'
9 import { MarkdownService } from '@app/videos/shared'
10
11 import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
12 import { SharedModule as PrimeSharedModule } from 'primeng/components/common/shared'
13
14 import { AUTH_INTERCEPTOR_PROVIDER } from './auth'
15 import { DeleteButtonComponent } from './buttons/delete-button.component'
16 import { EditButtonComponent } from './buttons/edit-button.component'
17 import { FromNowPipe } from './misc/from-now.pipe'
18 import { LoaderComponent } from './misc/loader.component'
19 import { NumberFormatterPipe } from './misc/number-formatter.pipe'
20 import { ObjectLengthPipe } from './misc/object-length.pipe'
21 import { RestExtractor, RestService } from './rest'
22 import { UserService } from './users'
23 import { VideoAbuseService } from './video-abuse'
24 import { VideoBlacklistService } from './video-blacklist'
25 import { VideoMiniatureComponent } from './video/video-miniature.component'
26 import { VideoFeedComponent } from './video/video-feed.component'
27 import { VideoThumbnailComponent } from './video/video-thumbnail.component'
28 import { VideoService } from './video/video.service'
29 import { AccountService } from '@app/shared/account/account.service'
30 import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
31 import { I18n } from '@ngx-translate/i18n-polyfill'
32 import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service'
33 import {
34 CustomConfigValidatorsService,
35 LoginValidatorsService,
36 ReactiveFileComponent,
37 ResetPasswordValidatorsService,
38 UserValidatorsService,
39 VideoAbuseValidatorsService,
40 VideoBlacklistValidatorsService,
41 VideoChannelValidatorsService,
42 VideoCommentValidatorsService,
43 VideoValidatorsService
44 } from '@app/shared/forms'
45 import { I18nPrimengCalendarService } from '@app/shared/i18n/i18n-primeng-calendar'
46 import { ScreenService } from '@app/shared/misc/screen.service'
47 import { VideoCaptionsValidatorsService } from '@app/shared/forms/form-validators/video-captions-validators.service'
48 import { VideoCaptionService } from '@app/shared/video-caption'
49 import { PeertubeCheckboxComponent } from '@app/shared/forms/peertube-checkbox.component'
50 import { VideoImportService } from '@app/shared/video-import/video-import.service'
51 import { ActionDropdownComponent } from '@app/shared/buttons/action-dropdown.component'
52 import { NgbDropdownModule, NgbModalModule, NgbPopoverModule, NgbTabsetModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'
53 import { SubscribeButtonComponent, UserSubscriptionService } from '@app/shared/user-subscription'
54
55 @NgModule({
56 imports: [
57 CommonModule,
58 FormsModule,
59 ReactiveFormsModule,
60 RouterModule,
61 HttpClientModule,
62
63 NgbDropdownModule.forRoot(),
64 NgbModalModule.forRoot(),
65 NgbPopoverModule.forRoot(),
66 NgbTabsetModule.forRoot(),
67 NgbTooltipModule.forRoot(),
68
69 PrimeSharedModule,
70 NgPipesModule
71 ],
72
73 declarations: [
74 LoaderComponent,
75 VideoThumbnailComponent,
76 VideoMiniatureComponent,
77 VideoFeedComponent,
78 DeleteButtonComponent,
79 EditButtonComponent,
80 ActionDropdownComponent,
81 NumberFormatterPipe,
82 ObjectLengthPipe,
83 FromNowPipe,
84 MarkdownTextareaComponent,
85 InfiniteScrollerDirective,
86 HelpComponent,
87 ReactiveFileComponent,
88 PeertubeCheckboxComponent,
89 SubscribeButtonComponent
90 ],
91
92 exports: [
93 CommonModule,
94 FormsModule,
95 ReactiveFormsModule,
96 RouterModule,
97 HttpClientModule,
98
99 NgbDropdownModule,
100 NgbModalModule,
101 NgbPopoverModule,
102 NgbTabsetModule,
103 NgbTooltipModule,
104
105 PrimeSharedModule,
106 BytesPipe,
107 KeysPipe,
108
109 LoaderComponent,
110 VideoThumbnailComponent,
111 VideoMiniatureComponent,
112 VideoFeedComponent,
113 DeleteButtonComponent,
114 EditButtonComponent,
115 ActionDropdownComponent,
116 MarkdownTextareaComponent,
117 InfiniteScrollerDirective,
118 HelpComponent,
119 ReactiveFileComponent,
120 PeertubeCheckboxComponent,
121 SubscribeButtonComponent,
122
123 NumberFormatterPipe,
124 ObjectLengthPipe,
125 FromNowPipe
126 ],
127
128 providers: [
129 AUTH_INTERCEPTOR_PROVIDER,
130 RestExtractor,
131 RestService,
132 VideoAbuseService,
133 VideoBlacklistService,
134 UserService,
135 VideoService,
136 AccountService,
137 MarkdownService,
138 VideoChannelService,
139 VideoCaptionService,
140 VideoImportService,
141 UserSubscriptionService,
142
143 FormValidatorService,
144 CustomConfigValidatorsService,
145 LoginValidatorsService,
146 ResetPasswordValidatorsService,
147 UserValidatorsService,
148 VideoAbuseValidatorsService,
149 VideoChannelValidatorsService,
150 VideoCommentValidatorsService,
151 VideoValidatorsService,
152 VideoCaptionsValidatorsService,
153 VideoBlacklistValidatorsService,
154
155 I18nPrimengCalendarService,
156 ScreenService,
157
158 I18n
159 ]
160 })
161 export class SharedModule { }