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'
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'
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 { ObjectLengthPipe } from '@app/shared/angular/object-length.pipe'
89 import { FromNowPipe } from '@app/shared/angular/from-now.pipe'
90 import { PeerTubeTemplateDirective } from '@app/shared/angular/peertube-template.directive'
91 import { VideoActionsDropdownComponent } from '@app/shared/video/video-actions-dropdown.component'
92 import { VideoBlacklistComponent } from '@app/shared/video/modals/video-blacklist.component'
93 import { VideoDownloadComponent } from '@app/shared/video/modals/video-download.component'
94 import { VideoReportComponent } from '@app/shared/video/modals/video-report.component'
95 import { ClipboardModule } from 'ngx-clipboard'
96 import { FollowService } from '@app/shared/instance/follow.service'
97 import { MultiSelectModule } from 'primeng/multiselect'
98 import { FeatureBooleanComponent } from '@app/shared/instance/feature-boolean.component'
99 import { InputReadonlyCopyComponent } from '@app/shared/forms/input-readonly-copy.component'
126 SmallLoaderComponent,
128 VideoThumbnailComponent,
129 VideoMiniatureComponent,
130 VideoPlaylistMiniatureComponent,
131 VideoAddToPlaylistComponent,
132 VideoPlaylistElementMiniatureComponent,
133 VideosSelectionComponent,
134 VideoActionsDropdownComponent,
136 VideoDownloadComponent,
137 VideoReportComponent,
138 VideoBlacklistComponent,
143 DeleteButtonComponent,
149 PeerTubeTemplateDirective,
151 ActionDropdownComponent,
152 MarkdownTextareaComponent,
153 InfiniteScrollerDirective,
154 TextareaAutoResizeDirective,
157 ReactiveFileComponent,
158 PeertubeCheckboxComponent,
159 TimestampInputComponent,
160 InputReadonlyCopyComponent,
163 SubscribeButtonComponent,
164 RemoteSubscribeComponent,
165 InstanceFeaturesTableComponent,
166 InstanceStatisticsComponent,
167 FeatureBooleanComponent,
168 UserBanModalComponent,
169 UserModerationDropdownComponent,
170 TopMenuDropdownComponent,
171 UserNotificationsComponent,
176 PreviewUploadComponent
202 SmallLoaderComponent,
204 VideoThumbnailComponent,
205 VideoMiniatureComponent,
206 VideoPlaylistMiniatureComponent,
207 VideoAddToPlaylistComponent,
208 VideoPlaylistElementMiniatureComponent,
209 VideosSelectionComponent,
210 VideoActionsDropdownComponent,
212 VideoDownloadComponent,
213 VideoReportComponent,
214 VideoBlacklistComponent,
219 DeleteButtonComponent,
222 ActionDropdownComponent,
223 MarkdownTextareaComponent,
224 InfiniteScrollerDirective,
225 TextareaAutoResizeDirective,
227 InputReadonlyCopyComponent,
229 ReactiveFileComponent,
230 PeertubeCheckboxComponent,
231 TimestampInputComponent,
234 SubscribeButtonComponent,
235 RemoteSubscribeComponent,
236 InstanceFeaturesTableComponent,
237 InstanceStatisticsComponent,
238 UserBanModalComponent,
239 UserModerationDropdownComponent,
240 TopMenuDropdownComponent,
241 UserNotificationsComponent,
246 PreviewUploadComponent,
251 PeerTubeTemplateDirective
255 AUTH_INTERCEPTOR_PROVIDER,
259 VideoBlacklistService,
260 VideoOwnershipService,
265 VideoPlaylistService,
268 UserSubscriptionService,
270 FormValidatorService,
271 CustomConfigValidatorsService,
272 LoginValidatorsService,
273 ResetPasswordValidatorsService,
274 UserValidatorsService,
275 VideoPlaylistValidatorsService,
276 VideoAbuseValidatorsService,
277 VideoChannelValidatorsService,
278 VideoCommentValidatorsService,
279 VideoValidatorsService,
280 VideoCaptionsValidatorsService,
281 VideoBlacklistValidatorsService,
283 VideoChangeOwnershipValidatorsService,
284 VideoAcceptOwnershipValidatorsService,
285 InstanceValidatorsService,
294 I18nPrimengCalendarService,
297 UserNotificationService,
304 export class SharedModule { }