Update a little bit user dropdown message
[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 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 { AvatarComponent } from '@app/shared/channel/avatar.component'
70 import { TopMenuDropdownComponent } from '@app/shared/menu/top-menu-dropdown.component'
71 import { UserHistoryService } from '@app/shared/users/user-history.service'
72 import { UserNotificationService } from '@app/shared/users/user-notification.service'
73 import { UserNotificationsComponent } from '@app/shared/users/user-notifications.component'
74 import { InstanceService } from '@app/shared/instance/instance.service'
75 import { HtmlRendererService, LinkifierService, MarkdownService } from '@app/shared/renderer'
76 import { ConfirmComponent } from '@app/shared/confirm/confirm.component'
77 import { DateToggleComponent } from '@app/shared/date/date-toggle.component'
78 import { SmallLoaderComponent } from '@app/shared/misc/small-loader.component'
79 import { VideoPlaylistService } from '@app/shared/video-playlist/video-playlist.service'
80 import { PreviewUploadComponent } from '@app/shared/images/preview-upload.component'
81 import { GlobalIconComponent } from '@app/shared/images/global-icon.component'
82 import { VideoPlaylistMiniatureComponent } from '@app/shared/video-playlist/video-playlist-miniature.component'
83 import { VideoAddToPlaylistComponent } from '@app/shared/video-playlist/video-add-to-playlist.component'
84 import { TimestampInputComponent } from '@app/shared/forms/timestamp-input.component'
85 import { VideoPlaylistElementMiniatureComponent } from '@app/shared/video-playlist/video-playlist-element-miniature.component'
86 import { VideosSelectionComponent } from '@app/shared/video/videos-selection.component'
87 import { NumberFormatterPipe } from '@app/shared/angular/number-formatter.pipe'
88 import { VideoDurationPipe } from '@app/shared/angular/video-duration-formatter.pipe'
89 import { ObjectLengthPipe } from '@app/shared/angular/object-length.pipe'
90 import { FromNowPipe } from '@app/shared/angular/from-now.pipe'
91 import { PeerTubeTemplateDirective } from '@app/shared/angular/peertube-template.directive'
92 import { VideoActionsDropdownComponent } from '@app/shared/video/video-actions-dropdown.component'
93 import { VideoBlacklistComponent } from '@app/shared/video/modals/video-blacklist.component'
94 import { VideoDownloadComponent } from '@app/shared/video/modals/video-download.component'
95 import { VideoReportComponent } from '@app/shared/video/modals/video-report.component'
96 import { ClipboardModule } from 'ngx-clipboard'
97 import { FollowService } from '@app/shared/instance/follow.service'
98 import { MultiSelectModule } from 'primeng/multiselect'
99 import { FeatureBooleanComponent } from '@app/shared/instance/feature-boolean.component'
100 import { InputReadonlyCopyComponent } from '@app/shared/forms/input-readonly-copy.component'
101
102 @NgModule({
103   imports: [
104     CommonModule,
105     FormsModule,
106     ReactiveFormsModule,
107     RouterModule,
108     HttpClientModule,
109
110     NgbDropdownModule,
111     NgbModalModule,
112     NgbPopoverModule,
113     NgbTabsetModule,
114     NgbTooltipModule,
115     NgbCollapseModule,
116
117     ClipboardModule,
118
119     PrimeSharedModule,
120     InputMaskModule,
121     NgPipesModule,
122     MultiSelectModule
123   ],
124
125   declarations: [
126     LoaderComponent,
127     SmallLoaderComponent,
128
129     VideoThumbnailComponent,
130     VideoMiniatureComponent,
131     VideoPlaylistMiniatureComponent,
132     VideoAddToPlaylistComponent,
133     VideoPlaylistElementMiniatureComponent,
134     VideosSelectionComponent,
135     VideoActionsDropdownComponent,
136
137     VideoDownloadComponent,
138     VideoReportComponent,
139     VideoBlacklistComponent,
140
141     FeedComponent,
142
143     ButtonComponent,
144     DeleteButtonComponent,
145     EditButtonComponent,
146
147     NumberFormatterPipe,
148     ObjectLengthPipe,
149     FromNowPipe,
150     PeerTubeTemplateDirective,
151     VideoDurationPipe,
152
153     ActionDropdownComponent,
154     MarkdownTextareaComponent,
155     InfiniteScrollerDirective,
156     TextareaAutoResizeDirective,
157     HelpComponent,
158
159     ReactiveFileComponent,
160     PeertubeCheckboxComponent,
161     TimestampInputComponent,
162     InputReadonlyCopyComponent,
163
164     AvatarComponent,
165     SubscribeButtonComponent,
166     RemoteSubscribeComponent,
167     InstanceFeaturesTableComponent,
168     InstanceStatisticsComponent,
169     FeatureBooleanComponent,
170     UserBanModalComponent,
171     UserModerationDropdownComponent,
172     TopMenuDropdownComponent,
173     UserNotificationsComponent,
174     ConfirmComponent,
175     DateToggleComponent,
176
177     GlobalIconComponent,
178     PreviewUploadComponent
179   ],
180
181   exports: [
182     CommonModule,
183     FormsModule,
184     ReactiveFormsModule,
185     RouterModule,
186     HttpClientModule,
187
188     NgbDropdownModule,
189     NgbModalModule,
190     NgbPopoverModule,
191     NgbTabsetModule,
192     NgbTooltipModule,
193     NgbCollapseModule,
194
195     ClipboardModule,
196
197     PrimeSharedModule,
198     InputMaskModule,
199     BytesPipe,
200     KeysPipe,
201     MultiSelectModule,
202
203     LoaderComponent,
204     SmallLoaderComponent,
205
206     VideoThumbnailComponent,
207     VideoMiniatureComponent,
208     VideoPlaylistMiniatureComponent,
209     VideoAddToPlaylistComponent,
210     VideoPlaylistElementMiniatureComponent,
211     VideosSelectionComponent,
212     VideoActionsDropdownComponent,
213
214     VideoDownloadComponent,
215     VideoReportComponent,
216     VideoBlacklistComponent,
217
218     FeedComponent,
219
220     ButtonComponent,
221     DeleteButtonComponent,
222     EditButtonComponent,
223
224     ActionDropdownComponent,
225     MarkdownTextareaComponent,
226     InfiniteScrollerDirective,
227     TextareaAutoResizeDirective,
228     HelpComponent,
229     InputReadonlyCopyComponent,
230
231     ReactiveFileComponent,
232     PeertubeCheckboxComponent,
233     TimestampInputComponent,
234
235     AvatarComponent,
236     SubscribeButtonComponent,
237     RemoteSubscribeComponent,
238     InstanceFeaturesTableComponent,
239     InstanceStatisticsComponent,
240     UserBanModalComponent,
241     UserModerationDropdownComponent,
242     TopMenuDropdownComponent,
243     UserNotificationsComponent,
244     ConfirmComponent,
245     DateToggleComponent,
246
247     GlobalIconComponent,
248     PreviewUploadComponent,
249
250     NumberFormatterPipe,
251     ObjectLengthPipe,
252     FromNowPipe,
253     PeerTubeTemplateDirective,
254     VideoDurationPipe
255   ],
256
257   providers: [
258     AUTH_INTERCEPTOR_PROVIDER,
259     RestExtractor,
260     RestService,
261     VideoAbuseService,
262     VideoBlacklistService,
263     VideoOwnershipService,
264     UserService,
265     VideoService,
266     AccountService,
267     VideoChannelService,
268     VideoPlaylistService,
269     VideoCaptionService,
270     VideoImportService,
271     UserSubscriptionService,
272
273     FormValidatorService,
274     CustomConfigValidatorsService,
275     LoginValidatorsService,
276     ResetPasswordValidatorsService,
277     UserValidatorsService,
278     VideoPlaylistValidatorsService,
279     VideoAbuseValidatorsService,
280     VideoChannelValidatorsService,
281     VideoCommentValidatorsService,
282     VideoValidatorsService,
283     VideoCaptionsValidatorsService,
284     VideoBlacklistValidatorsService,
285     OverviewService,
286     VideoChangeOwnershipValidatorsService,
287     VideoAcceptOwnershipValidatorsService,
288     InstanceValidatorsService,
289     BlocklistService,
290     UserHistoryService,
291     InstanceService,
292
293     MarkdownService,
294     LinkifierService,
295     HtmlRendererService,
296
297     I18nPrimengCalendarService,
298     ScreenService,
299
300     UserNotificationService,
301
302     FollowService,
303
304     I18n
305   ]
306 })
307 export class SharedModule { }