]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared.module.ts
8cbb15bfaf955ecb1ca66e5dc914ab03fb65e4d6
[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 { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
10 import { SharedModule as PrimeSharedModule } from 'primeng/components/common/shared'
11 import { AUTH_INTERCEPTOR_PROVIDER } from './auth'
12 import { ButtonComponent } from './buttons/button.component'
13 import { DeleteButtonComponent } from './buttons/delete-button.component'
14 import { EditButtonComponent } from './buttons/edit-button.component'
15 import { LoaderComponent } from './misc/loader.component'
16 import { RestExtractor, RestService } from './rest'
17 import { UserService } from './users'
18 import { VideoAbuseService } from './video-abuse'
19 import { VideoBlacklistService } from './video-blacklist'
20 import { VideoOwnershipService } from './video-ownership'
21 import { VideoMiniatureComponent } from './video/video-miniature.component'
22 import { FeedComponent } from './video/feed.component'
23 import { VideoThumbnailComponent } from './video/video-thumbnail.component'
24 import { VideoService } from './video/video.service'
25 import { AccountService } from '@app/shared/account/account.service'
26 import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
27 import { I18n } from '@ngx-translate/i18n-polyfill'
28 import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service'
29 import {
30 CustomConfigValidatorsService,
31 InstanceValidatorsService,
32 LoginValidatorsService,
33 ReactiveFileComponent,
34 ResetPasswordValidatorsService,
35 TextareaAutoResizeDirective,
36 UserValidatorsService,
37 VideoAbuseValidatorsService,
38 VideoAcceptOwnershipValidatorsService,
39 VideoBlacklistValidatorsService,
40 VideoChangeOwnershipValidatorsService,
41 VideoChannelValidatorsService,
42 VideoCommentValidatorsService,
43 VideoPlaylistValidatorsService,
44 VideoValidatorsService
45 } from '@app/shared/forms'
46 import { I18nPrimengCalendarService } from '@app/shared/i18n/i18n-primeng-calendar'
47 import { InputMaskModule } from 'primeng/inputmask'
48 import { ScreenService } from '@app/shared/misc/screen.service'
49 import { VideoCaptionsValidatorsService } from '@app/shared/forms/form-validators/video-captions-validators.service'
50 import { VideoCaptionService } from '@app/shared/video-caption'
51 import { PeertubeCheckboxComponent } from '@app/shared/forms/peertube-checkbox.component'
52 import { VideoImportService } from '@app/shared/video-import/video-import.service'
53 import { ActionDropdownComponent } from '@app/shared/buttons/action-dropdown.component'
54 import {
55 NgbCollapseModule,
56 NgbDropdownModule,
57 NgbModalModule,
58 NgbPopoverModule,
59 NgbTabsetModule,
60 NgbTooltipModule
61 } from '@ng-bootstrap/ng-bootstrap'
62 import { RemoteSubscribeComponent, SubscribeButtonComponent, UserSubscriptionService } from '@app/shared/user-subscription'
63 import { InstanceFeaturesTableComponent } from '@app/shared/instance/instance-features-table.component'
64 import { InstanceStatisticsComponent } from '@app/shared/instance/instance-statistics.component'
65 import { OverviewService } from '@app/shared/overview'
66 import { UserBanModalComponent } from '@app/shared/moderation'
67 import { UserModerationDropdownComponent } from '@app/shared/moderation/user-moderation-dropdown.component'
68 import { BlocklistService } from '@app/shared/blocklist'
69 import { TopMenuDropdownComponent } from '@app/shared/menu/top-menu-dropdown.component'
70 import { UserHistoryService } from '@app/shared/users/user-history.service'
71 import { UserNotificationService } from '@app/shared/users/user-notification.service'
72 import { UserNotificationsComponent } from '@app/shared/users/user-notifications.component'
73 import { InstanceService } from '@app/shared/instance/instance.service'
74 import { HtmlRendererService, LinkifierService, MarkdownService } from '@app/shared/renderer'
75 import { ConfirmComponent } from '@app/shared/confirm/confirm.component'
76 import { DateToggleComponent } from '@app/shared/date/date-toggle.component'
77 import { SmallLoaderComponent } from '@app/shared/misc/small-loader.component'
78 import { VideoPlaylistService } from '@app/shared/video-playlist/video-playlist.service'
79 import { PreviewUploadComponent } from '@app/shared/images/preview-upload.component'
80 import { GlobalIconComponent } from '@app/shared/images/global-icon.component'
81 import { VideoPlaylistMiniatureComponent } from '@app/shared/video-playlist/video-playlist-miniature.component'
82 import { VideoAddToPlaylistComponent } from '@app/shared/video-playlist/video-add-to-playlist.component'
83 import { TimestampInputComponent } from '@app/shared/forms/timestamp-input.component'
84 import { VideoPlaylistElementMiniatureComponent } from '@app/shared/video-playlist/video-playlist-element-miniature.component'
85 import { VideosSelectionComponent } from '@app/shared/video/videos-selection.component'
86 import { NumberFormatterPipe } from '@app/shared/angular/number-formatter.pipe'
87 import { ObjectLengthPipe } from '@app/shared/angular/object-length.pipe'
88 import { FromNowPipe } from '@app/shared/angular/from-now.pipe'
89 import { PeerTubeTemplateDirective } from '@app/shared/angular/peertube-template.directive'
90 import { VideoActionsDropdownComponent } from '@app/shared/video/video-actions-dropdown.component'
91 import { VideoBlacklistComponent } from '@app/shared/video/modals/video-blacklist.component'
92 import { VideoDownloadComponent } from '@app/shared/video/modals/video-download.component'
93 import { VideoReportComponent } from '@app/shared/video/modals/video-report.component'
94 import { ClipboardModule } from 'ngx-clipboard'
95 import { FollowService } from '@app/shared/instance/follow.service'
96 import { MultiSelectModule } from 'primeng/multiselect'
97 import { FeatureBooleanComponent } from '@app/shared/instance/feature-boolean.component'
98
99 @NgModule({
100 imports: [
101 CommonModule,
102 FormsModule,
103 ReactiveFormsModule,
104 RouterModule,
105 HttpClientModule,
106
107 NgbDropdownModule,
108 NgbModalModule,
109 NgbPopoverModule,
110 NgbTabsetModule,
111 NgbTooltipModule,
112 NgbCollapseModule,
113
114 ClipboardModule,
115
116 PrimeSharedModule,
117 InputMaskModule,
118 NgPipesModule,
119 MultiSelectModule
120 ],
121
122 declarations: [
123 LoaderComponent,
124 SmallLoaderComponent,
125
126 VideoThumbnailComponent,
127 VideoMiniatureComponent,
128 VideoPlaylistMiniatureComponent,
129 VideoAddToPlaylistComponent,
130 VideoPlaylistElementMiniatureComponent,
131 VideosSelectionComponent,
132 VideoActionsDropdownComponent,
133
134 VideoDownloadComponent,
135 VideoReportComponent,
136 VideoBlacklistComponent,
137
138 FeedComponent,
139
140 ButtonComponent,
141 DeleteButtonComponent,
142 EditButtonComponent,
143
144 NumberFormatterPipe,
145 ObjectLengthPipe,
146 FromNowPipe,
147 PeerTubeTemplateDirective,
148
149 ActionDropdownComponent,
150 MarkdownTextareaComponent,
151 InfiniteScrollerDirective,
152 TextareaAutoResizeDirective,
153 HelpComponent,
154
155 ReactiveFileComponent,
156 PeertubeCheckboxComponent,
157 TimestampInputComponent,
158
159 SubscribeButtonComponent,
160 RemoteSubscribeComponent,
161 InstanceFeaturesTableComponent,
162 InstanceStatisticsComponent,
163 FeatureBooleanComponent,
164 UserBanModalComponent,
165 UserModerationDropdownComponent,
166 TopMenuDropdownComponent,
167 UserNotificationsComponent,
168 ConfirmComponent,
169 DateToggleComponent,
170
171 GlobalIconComponent,
172 PreviewUploadComponent
173 ],
174
175 exports: [
176 CommonModule,
177 FormsModule,
178 ReactiveFormsModule,
179 RouterModule,
180 HttpClientModule,
181
182 NgbDropdownModule,
183 NgbModalModule,
184 NgbPopoverModule,
185 NgbTabsetModule,
186 NgbTooltipModule,
187 NgbCollapseModule,
188
189 ClipboardModule,
190
191 PrimeSharedModule,
192 InputMaskModule,
193 BytesPipe,
194 KeysPipe,
195 MultiSelectModule,
196
197 LoaderComponent,
198 SmallLoaderComponent,
199
200 VideoThumbnailComponent,
201 VideoMiniatureComponent,
202 VideoPlaylistMiniatureComponent,
203 VideoAddToPlaylistComponent,
204 VideoPlaylistElementMiniatureComponent,
205 VideosSelectionComponent,
206 VideoActionsDropdownComponent,
207
208 VideoDownloadComponent,
209 VideoReportComponent,
210 VideoBlacklistComponent,
211
212 FeedComponent,
213
214 ButtonComponent,
215 DeleteButtonComponent,
216 EditButtonComponent,
217
218 ActionDropdownComponent,
219 MarkdownTextareaComponent,
220 InfiniteScrollerDirective,
221 TextareaAutoResizeDirective,
222 HelpComponent,
223
224 ReactiveFileComponent,
225 PeertubeCheckboxComponent,
226 TimestampInputComponent,
227
228 SubscribeButtonComponent,
229 RemoteSubscribeComponent,
230 InstanceFeaturesTableComponent,
231 InstanceStatisticsComponent,
232 UserBanModalComponent,
233 UserModerationDropdownComponent,
234 TopMenuDropdownComponent,
235 UserNotificationsComponent,
236 ConfirmComponent,
237 DateToggleComponent,
238
239 GlobalIconComponent,
240 PreviewUploadComponent,
241
242 NumberFormatterPipe,
243 ObjectLengthPipe,
244 FromNowPipe,
245 PeerTubeTemplateDirective
246 ],
247
248 providers: [
249 AUTH_INTERCEPTOR_PROVIDER,
250 RestExtractor,
251 RestService,
252 VideoAbuseService,
253 VideoBlacklistService,
254 VideoOwnershipService,
255 UserService,
256 VideoService,
257 AccountService,
258 VideoChannelService,
259 VideoPlaylistService,
260 VideoCaptionService,
261 VideoImportService,
262 UserSubscriptionService,
263
264 FormValidatorService,
265 CustomConfigValidatorsService,
266 LoginValidatorsService,
267 ResetPasswordValidatorsService,
268 UserValidatorsService,
269 VideoPlaylistValidatorsService,
270 VideoAbuseValidatorsService,
271 VideoChannelValidatorsService,
272 VideoCommentValidatorsService,
273 VideoValidatorsService,
274 VideoCaptionsValidatorsService,
275 VideoBlacklistValidatorsService,
276 OverviewService,
277 VideoChangeOwnershipValidatorsService,
278 VideoAcceptOwnershipValidatorsService,
279 InstanceValidatorsService,
280 BlocklistService,
281 UserHistoryService,
282 InstanceService,
283
284 MarkdownService,
285 LinkifierService,
286 HtmlRendererService,
287
288 I18nPrimengCalendarService,
289 ScreenService,
290
291 UserNotificationService,
292
293 FollowService,
294
295 I18n
296 ]
297 })
298 export class SharedModule { }