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'
10 import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
11 import { SharedModule as PrimeSharedModule } from 'primeng/components/common/shared'
13 import { AUTH_INTERCEPTOR_PROVIDER } from './auth'
14 import { ButtonComponent } from './buttons/button.component'
15 import { DeleteButtonComponent } from './buttons/delete-button.component'
16 import { EditButtonComponent } from './buttons/edit-button.component'
17 import { LoaderComponent } from './misc/loader.component'
18 import { RestExtractor, RestService } from './rest'
19 import { UserService } from './users'
20 import { VideoAbuseService } from './video-abuse'
21 import { VideoBlacklistService } from './video-blacklist'
22 import { VideoOwnershipService } from './video-ownership'
23 import { VideoMiniatureComponent } from './video/video-miniature.component'
24 import { FeedComponent } from './video/feed.component'
25 import { VideoThumbnailComponent } from './video/video-thumbnail.component'
26 import { VideoService } from './video/video.service'
27 import { AccountService } from '@app/shared/account/account.service'
28 import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
29 import { I18n } from '@ngx-translate/i18n-polyfill'
30 import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service'
32 CustomConfigValidatorsService,
33 InstanceValidatorsService,
34 LoginValidatorsService,
35 ReactiveFileComponent,
36 ResetPasswordValidatorsService,
37 TextareaAutoResizeDirective,
38 UserValidatorsService,
39 VideoAbuseValidatorsService,
40 VideoAcceptOwnershipValidatorsService,
41 VideoBlacklistValidatorsService,
42 VideoChangeOwnershipValidatorsService,
43 VideoChannelValidatorsService,
44 VideoCommentValidatorsService,
45 VideoPlaylistValidatorsService,
46 VideoValidatorsService
47 } from '@app/shared/forms'
48 import { I18nPrimengCalendarService } from '@app/shared/i18n/i18n-primeng-calendar'
49 import { InputMaskModule } from 'primeng/inputmask'
50 import { ScreenService } from '@app/shared/misc/screen.service'
51 import { VideoCaptionsValidatorsService } from '@app/shared/forms/form-validators/video-captions-validators.service'
52 import { VideoCaptionService } from '@app/shared/video-caption'
53 import { PeertubeCheckboxComponent } from '@app/shared/forms/peertube-checkbox.component'
54 import { VideoImportService } from '@app/shared/video-import/video-import.service'
55 import { ActionDropdownComponent } from '@app/shared/buttons/action-dropdown.component'
56 import { NgbDropdownModule, NgbModalModule, NgbPopoverModule, NgbTabsetModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'
57 import { RemoteSubscribeComponent, SubscribeButtonComponent, UserSubscriptionService } from '@app/shared/user-subscription'
58 import { InstanceFeaturesTableComponent } from '@app/shared/instance/instance-features-table.component'
59 import { OverviewService } from '@app/shared/overview'
60 import { UserBanModalComponent } from '@app/shared/moderation'
61 import { UserModerationDropdownComponent } from '@app/shared/moderation/user-moderation-dropdown.component'
62 import { BlocklistService } from '@app/shared/blocklist'
63 import { TopMenuDropdownComponent } from '@app/shared/menu/top-menu-dropdown.component'
64 import { UserHistoryService } from '@app/shared/users/user-history.service'
65 import { UserNotificationService } from '@app/shared/users/user-notification.service'
66 import { UserNotificationsComponent } from '@app/shared/users/user-notifications.component'
67 import { InstanceService } from '@app/shared/instance/instance.service'
68 import { HtmlRendererService, LinkifierService, MarkdownService } from '@app/shared/renderer'
69 import { ConfirmComponent } from '@app/shared/confirm/confirm.component'
70 import { SmallLoaderComponent } from '@app/shared/misc/small-loader.component'
71 import { VideoPlaylistService } from '@app/shared/video-playlist/video-playlist.service'
72 import { ImageUploadComponent } from '@app/shared/images/image-upload.component'
73 import { GlobalIconComponent } from '@app/shared/images/global-icon.component'
74 import { VideoPlaylistMiniatureComponent } from '@app/shared/video-playlist/video-playlist-miniature.component'
75 import { VideoAddToPlaylistComponent } from '@app/shared/video-playlist/video-add-to-playlist.component'
76 import { TimestampInputComponent } from '@app/shared/forms/timestamp-input.component'
77 import { VideoPlaylistElementMiniatureComponent } from '@app/shared/video-playlist/video-playlist-element-miniature.component'
78 import { VideosSelectionComponent } from '@app/shared/video/videos-selection.component'
79 import { NumberFormatterPipe } from '@app/shared/angular/number-formatter.pipe'
80 import { ObjectLengthPipe } from '@app/shared/angular/object-length.pipe'
81 import { FromNowPipe } from '@app/shared/angular/from-now.pipe'
82 import { PeerTubeTemplateDirective } from '@app/shared/angular/peertube-template.directive'
105 SmallLoaderComponent,
107 VideoThumbnailComponent,
108 VideoMiniatureComponent,
109 VideoPlaylistMiniatureComponent,
110 VideoAddToPlaylistComponent,
111 VideoPlaylistElementMiniatureComponent,
112 VideosSelectionComponent,
117 DeleteButtonComponent,
123 PeerTubeTemplateDirective,
125 ActionDropdownComponent,
126 MarkdownTextareaComponent,
127 InfiniteScrollerDirective,
128 TextareaAutoResizeDirective,
131 ReactiveFileComponent,
132 PeertubeCheckboxComponent,
133 TimestampInputComponent,
135 SubscribeButtonComponent,
136 RemoteSubscribeComponent,
137 InstanceFeaturesTableComponent,
138 UserBanModalComponent,
139 UserModerationDropdownComponent,
140 TopMenuDropdownComponent,
141 UserNotificationsComponent,
167 SmallLoaderComponent,
169 VideoThumbnailComponent,
170 VideoMiniatureComponent,
171 VideoPlaylistMiniatureComponent,
172 VideoAddToPlaylistComponent,
173 VideoPlaylistElementMiniatureComponent,
174 VideosSelectionComponent,
179 DeleteButtonComponent,
182 ActionDropdownComponent,
183 MarkdownTextareaComponent,
184 InfiniteScrollerDirective,
185 TextareaAutoResizeDirective,
188 ReactiveFileComponent,
189 PeertubeCheckboxComponent,
190 TimestampInputComponent,
192 SubscribeButtonComponent,
193 RemoteSubscribeComponent,
194 InstanceFeaturesTableComponent,
195 UserBanModalComponent,
196 UserModerationDropdownComponent,
197 TopMenuDropdownComponent,
198 UserNotificationsComponent,
202 ImageUploadComponent,
207 PeerTubeTemplateDirective
211 AUTH_INTERCEPTOR_PROVIDER,
215 VideoBlacklistService,
216 VideoOwnershipService,
221 VideoPlaylistService,
224 UserSubscriptionService,
226 FormValidatorService,
227 CustomConfigValidatorsService,
228 LoginValidatorsService,
229 ResetPasswordValidatorsService,
230 UserValidatorsService,
231 VideoPlaylistValidatorsService,
232 VideoAbuseValidatorsService,
233 VideoChannelValidatorsService,
234 VideoCommentValidatorsService,
235 VideoValidatorsService,
236 VideoCaptionsValidatorsService,
237 VideoBlacklistValidatorsService,
239 VideoChangeOwnershipValidatorsService,
240 VideoAcceptOwnershipValidatorsService,
241 InstanceValidatorsService,
250 I18nPrimengCalendarService,
253 UserNotificationService,
258 export class SharedModule { }