]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared.module.ts
Support playlists in share modal
[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 import { InputReadonlyCopyComponent } from '@app/shared/forms/input-readonly-copy.component'
99
100 @NgModule({
101 imports: [
102 CommonModule,
103 FormsModule,
104 ReactiveFormsModule,
105 RouterModule,
106 HttpClientModule,
107
108 NgbDropdownModule,
109 NgbModalModule,
110 NgbPopoverModule,
111 NgbTabsetModule,
112 NgbTooltipModule,
113 NgbCollapseModule,
114
115 ClipboardModule,
116
117 PrimeSharedModule,
118 InputMaskModule,
119 NgPipesModule,
120 MultiSelectModule
121 ],
122
123 declarations: [
124 LoaderComponent,
125 SmallLoaderComponent,
126
127 VideoThumbnailComponent,
128 VideoMiniatureComponent,
129 VideoPlaylistMiniatureComponent,
130 VideoAddToPlaylistComponent,
131 VideoPlaylistElementMiniatureComponent,
132 VideosSelectionComponent,
133 VideoActionsDropdownComponent,
134
135 VideoDownloadComponent,
136 VideoReportComponent,
137 VideoBlacklistComponent,
138
139 FeedComponent,
140
141 ButtonComponent,
142 DeleteButtonComponent,
143 EditButtonComponent,
144
145 NumberFormatterPipe,
146 ObjectLengthPipe,
147 FromNowPipe,
148 PeerTubeTemplateDirective,
149
150 ActionDropdownComponent,
151 MarkdownTextareaComponent,
152 InfiniteScrollerDirective,
153 TextareaAutoResizeDirective,
154 HelpComponent,
155
156 ReactiveFileComponent,
157 PeertubeCheckboxComponent,
158 TimestampInputComponent,
159 InputReadonlyCopyComponent,
160
161 SubscribeButtonComponent,
162 RemoteSubscribeComponent,
163 InstanceFeaturesTableComponent,
164 InstanceStatisticsComponent,
165 FeatureBooleanComponent,
166 UserBanModalComponent,
167 UserModerationDropdownComponent,
168 TopMenuDropdownComponent,
169 UserNotificationsComponent,
170 ConfirmComponent,
171 DateToggleComponent,
172
173 GlobalIconComponent,
174 PreviewUploadComponent
175 ],
176
177 exports: [
178 CommonModule,
179 FormsModule,
180 ReactiveFormsModule,
181 RouterModule,
182 HttpClientModule,
183
184 NgbDropdownModule,
185 NgbModalModule,
186 NgbPopoverModule,
187 NgbTabsetModule,
188 NgbTooltipModule,
189 NgbCollapseModule,
190
191 ClipboardModule,
192
193 PrimeSharedModule,
194 InputMaskModule,
195 BytesPipe,
196 KeysPipe,
197 MultiSelectModule,
198
199 LoaderComponent,
200 SmallLoaderComponent,
201
202 VideoThumbnailComponent,
203 VideoMiniatureComponent,
204 VideoPlaylistMiniatureComponent,
205 VideoAddToPlaylistComponent,
206 VideoPlaylistElementMiniatureComponent,
207 VideosSelectionComponent,
208 VideoActionsDropdownComponent,
209
210 VideoDownloadComponent,
211 VideoReportComponent,
212 VideoBlacklistComponent,
213
214 FeedComponent,
215
216 ButtonComponent,
217 DeleteButtonComponent,
218 EditButtonComponent,
219
220 ActionDropdownComponent,
221 MarkdownTextareaComponent,
222 InfiniteScrollerDirective,
223 TextareaAutoResizeDirective,
224 HelpComponent,
225 InputReadonlyCopyComponent,
226
227 ReactiveFileComponent,
228 PeertubeCheckboxComponent,
229 TimestampInputComponent,
230
231 SubscribeButtonComponent,
232 RemoteSubscribeComponent,
233 InstanceFeaturesTableComponent,
234 InstanceStatisticsComponent,
235 UserBanModalComponent,
236 UserModerationDropdownComponent,
237 TopMenuDropdownComponent,
238 UserNotificationsComponent,
239 ConfirmComponent,
240 DateToggleComponent,
241
242 GlobalIconComponent,
243 PreviewUploadComponent,
244
245 NumberFormatterPipe,
246 ObjectLengthPipe,
247 FromNowPipe,
248 PeerTubeTemplateDirective
249 ],
250
251 providers: [
252 AUTH_INTERCEPTOR_PROVIDER,
253 RestExtractor,
254 RestService,
255 VideoAbuseService,
256 VideoBlacklistService,
257 VideoOwnershipService,
258 UserService,
259 VideoService,
260 AccountService,
261 VideoChannelService,
262 VideoPlaylistService,
263 VideoCaptionService,
264 VideoImportService,
265 UserSubscriptionService,
266
267 FormValidatorService,
268 CustomConfigValidatorsService,
269 LoginValidatorsService,
270 ResetPasswordValidatorsService,
271 UserValidatorsService,
272 VideoPlaylistValidatorsService,
273 VideoAbuseValidatorsService,
274 VideoChannelValidatorsService,
275 VideoCommentValidatorsService,
276 VideoValidatorsService,
277 VideoCaptionsValidatorsService,
278 VideoBlacklistValidatorsService,
279 OverviewService,
280 VideoChangeOwnershipValidatorsService,
281 VideoAcceptOwnershipValidatorsService,
282 InstanceValidatorsService,
283 BlocklistService,
284 UserHistoryService,
285 InstanceService,
286
287 MarkdownService,
288 LinkifierService,
289 HtmlRendererService,
290
291 I18nPrimengCalendarService,
292 ScreenService,
293
294 UserNotificationService,
295
296 FollowService,
297
298 I18n
299 ]
300 })
301 export class SharedModule { }