]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/shared/shared.module.ts
Use travis.com badge now
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared.module.ts
CommitLineData
df98563e 1import { CommonModule } from '@angular/common'
9bf9d2a5
C
2import { HttpClientModule } from '@angular/common/http'
3import { NgModule } from '@angular/core'
df98563e
C
4import { FormsModule, ReactiveFormsModule } from '@angular/forms'
5import { RouterModule } from '@angular/router'
66b16caf 6import { MarkdownTextareaComponent } from '@app/shared/forms/markdown-textarea.component'
8a8e02a4 7import { HelpComponent } from '@app/shared/misc/help.component'
24e7916c 8import { ListOverflowComponent } from '@app/shared/misc/list-overflow.component'
0cd4344f 9import { InfiniteScrollerDirective } from '@app/shared/video/infinite-scroller.directive'
62e23e40 10import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
f77eb73b 11import { SharedModule as PrimeSharedModule } from 'primeng/api'
d592e0a9 12import { AUTH_INTERCEPTOR_PROVIDER } from './auth'
74d63469 13import { ButtonComponent } from './buttons/button.component'
eacb25c4
C
14import { DeleteButtonComponent } from './buttons/delete-button.component'
15import { EditButtonComponent } from './buttons/edit-button.component'
9bf9d2a5 16import { LoaderComponent } from './misc/loader.component'
df98563e 17import { RestExtractor, RestService } from './rest'
df98563e
C
18import { UserService } from './users'
19import { VideoAbuseService } from './video-abuse'
35bf0c83 20import { VideoBlacklistService } from './video-blacklist'
74d63469 21import { VideoOwnershipService } from './video-ownership'
b1fa3eba 22import { VideoMiniatureComponent } from './video/video-miniature.component'
c199c427 23import { FeedComponent } from './video/feed.component'
202f6b6c
C
24import { VideoThumbnailComponent } from './video/video-thumbnail.component'
25import { VideoService } from './video/video.service'
0626e7af 26import { AccountService } from '@app/shared/account/account.service'
d3e91a5f 27import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
989e526a 28import { I18n } from '@ngx-translate/i18n-polyfill'
d18d6478 29import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service'
e309822b
C
30import {
31 CustomConfigValidatorsService,
1506307f 32 InstanceValidatorsService,
57c36b27
C
33 LoginValidatorsService,
34 ReactiveFileComponent,
e309822b 35 ResetPasswordValidatorsService,
2fbe7f19 36 TextareaAutoResizeDirective,
57c36b27 37 UserValidatorsService,
22a16e36 38 VideoAbuseValidatorsService,
2fbe7f19 39 VideoAcceptOwnershipValidatorsService,
22a16e36 40 VideoBlacklistValidatorsService,
2fbe7f19 41 VideoChangeOwnershipValidatorsService,
57c36b27
C
42 VideoChannelValidatorsService,
43 VideoCommentValidatorsService,
830b4faf 44 VideoPlaylistValidatorsService,
2fbe7f19 45 VideoValidatorsService
e309822b 46} from '@app/shared/forms'
bbe0f064 47import { I18nPrimengCalendarService } from '@app/shared/i18n/i18n-primeng-calendar'
f0a39880 48import { InputMaskModule } from 'primeng/inputmask'
bbe0f064 49import { ScreenService } from '@app/shared/misc/screen.service'
d3217560 50import { LocalStorageService, SessionStorageService } from '@app/shared/misc/storage.service'
40e87e9e
C
51import { VideoCaptionsValidatorsService } from '@app/shared/forms/form-validators/video-captions-validators.service'
52import { VideoCaptionService } from '@app/shared/video-caption'
0f7fedc3 53import { PeertubeCheckboxComponent } from '@app/shared/forms/peertube-checkbox.component'
fbad87b0 54import { VideoImportService } from '@app/shared/video-import/video-import.service'
eacb25c4 55import { ActionDropdownComponent } from '@app/shared/buttons/action-dropdown.component'
2f4c784a
C
56import {
57 NgbCollapseModule,
58 NgbDropdownModule,
59 NgbModalModule,
60 NgbPopoverModule,
45c6bcf3 61 NgbNavModule,
2f4c784a
C
62 NgbTooltipModule
63} from '@ng-bootstrap/ng-bootstrap'
2fbe7f19 64import { RemoteSubscribeComponent, SubscribeButtonComponent, UserSubscriptionService } from '@app/shared/user-subscription'
41a676db 65import { InstanceFeaturesTableComponent } from '@app/shared/instance/instance-features-table.component'
3d05209c 66import { InstanceStatisticsComponent } from '@app/shared/instance/instance-statistics.component'
2d3741d6 67import { OverviewService } from '@app/shared/overview'
e724fa93
C
68import { UserBanModalComponent } from '@app/shared/moderation'
69import { UserModerationDropdownComponent } from '@app/shared/moderation/user-moderation-dropdown.component'
af5767ff 70import { BlocklistService } from '@app/shared/blocklist'
dd4f25ee 71import { AvatarComponent } from '@app/shared/channel/avatar.component'
ddb83e49 72import { TopMenuDropdownComponent } from '@app/shared/menu/top-menu-dropdown.component'
80bfd33c 73import { UserHistoryService } from '@app/shared/users/user-history.service'
2f1548fd
C
74import { UserNotificationService } from '@app/shared/users/user-notification.service'
75import { UserNotificationsComponent } from '@app/shared/users/user-notifications.component'
d3e56c0c 76import { InstanceService } from '@app/shared/instance/instance.service'
1506307f 77import { HtmlRendererService, LinkifierService, MarkdownService } from '@app/shared/renderer'
457bb213 78import { ConfirmComponent } from '@app/shared/confirm/confirm.component'
e8050208 79import { DateToggleComponent } from '@app/shared/date/date-toggle.component'
b28e4e5e 80import { SmallLoaderComponent } from '@app/shared/misc/small-loader.component'
830b4faf 81import { VideoPlaylistService } from '@app/shared/video-playlist/video-playlist.service'
7b992a86 82import { PreviewUploadComponent } from '@app/shared/images/preview-upload.component'
830b4faf
C
83import { GlobalIconComponent } from '@app/shared/images/global-icon.component'
84import { VideoPlaylistMiniatureComponent } from '@app/shared/video-playlist/video-playlist-miniature.component'
f0a39880
C
85import { VideoAddToPlaylistComponent } from '@app/shared/video-playlist/video-add-to-playlist.component'
86import { TimestampInputComponent } from '@app/shared/forms/timestamp-input.component'
e2f01c47 87import { VideoPlaylistElementMiniatureComponent } from '@app/shared/video-playlist/video-playlist-element-miniature.component'
693263e9
C
88import { VideosSelectionComponent } from '@app/shared/video/videos-selection.component'
89import { NumberFormatterPipe } from '@app/shared/angular/number-formatter.pipe'
df8340b7 90import { VideoDurationPipe } from '@app/shared/angular/video-duration-formatter.pipe'
693263e9
C
91import { ObjectLengthPipe } from '@app/shared/angular/object-length.pipe'
92import { FromNowPipe } from '@app/shared/angular/from-now.pipe'
8a979d73 93import { HighlightPipe } from '@app/shared/angular/highlight.pipe'
693263e9 94import { PeerTubeTemplateDirective } from '@app/shared/angular/peertube-template.directive'
3a0fb65c
C
95import { VideoActionsDropdownComponent } from '@app/shared/video/video-actions-dropdown.component'
96import { VideoBlacklistComponent } from '@app/shared/video/modals/video-blacklist.component'
97import { VideoDownloadComponent } from '@app/shared/video/modals/video-download.component'
98import { VideoReportComponent } from '@app/shared/video/modals/video-report.component'
a6dbbf03 99import { FollowService } from '@app/shared/instance/follow.service'
ccc00cb2 100import { MultiSelectModule } from 'primeng/multiselect'
a00045a2 101import { FeatureBooleanComponent } from '@app/shared/instance/feature-boolean.component'
3a1fed11 102import { InputReadonlyCopyComponent } from '@app/shared/forms/input-readonly-copy.component'
b764380a 103import { RedundancyService } from '@app/shared/video/redundancy.service'
7811819b 104import { ClipboardModule } from '@angular/cdk/clipboard'
d3217560
RK
105import { InputSwitchModule } from 'primeng/inputswitch'
106
107import { MyAccountVideoSettingsComponent } from '@app/+my-account/my-account-settings/my-account-video-settings'
108import { MyAccountInterfaceSettingsComponent } from '@app/+my-account/my-account-settings/my-account-interface'
76314386 109import { ActorAvatarInfoComponent } from '@app/+my-account/shared/actor-avatar-info.component'
693b1aba
C
110
111@NgModule({
112 imports: [
113 CommonModule,
114 FormsModule,
115 ReactiveFormsModule,
693b1aba 116 RouterModule,
d592e0a9 117 HttpClientModule,
693b1aba 118
d77ad726
C
119 NgbDropdownModule,
120 NgbModalModule,
121 NgbPopoverModule,
45c6bcf3 122 NgbNavModule,
d77ad726 123 NgbTooltipModule,
2f4c784a 124 NgbCollapseModule,
d396a937 125
3a0fb65c
C
126 ClipboardModule,
127
202f6b6c 128 PrimeSharedModule,
f0a39880 129 InputMaskModule,
ccc00cb2 130 NgPipesModule,
d3217560
RK
131 MultiSelectModule,
132 InputSwitchModule
693b1aba
C
133 ],
134
135 declarations: [
9bf9d2a5 136 LoaderComponent,
b28e4e5e 137 SmallLoaderComponent,
830b4faf 138
202f6b6c 139 VideoThumbnailComponent,
b1fa3eba 140 VideoMiniatureComponent,
830b4faf 141 VideoPlaylistMiniatureComponent,
f0a39880 142 VideoAddToPlaylistComponent,
e2f01c47 143 VideoPlaylistElementMiniatureComponent,
693263e9 144 VideosSelectionComponent,
3a0fb65c
C
145 VideoActionsDropdownComponent,
146
147 VideoDownloadComponent,
148 VideoReportComponent,
149 VideoBlacklistComponent,
830b4faf 150
c199c427 151 FeedComponent,
f0a39880 152
74d63469 153 ButtonComponent,
cd83ea1b
C
154 DeleteButtonComponent,
155 EditButtonComponent,
f0a39880 156
9bf9d2a5 157 NumberFormatterPipe,
244e76a5 158 ObjectLengthPipe,
66b16caf 159 FromNowPipe,
f409f0c3 160 HighlightPipe,
693263e9 161 PeerTubeTemplateDirective,
df8340b7 162 VideoDurationPipe,
693263e9
C
163
164 ActionDropdownComponent,
0cd4344f 165 MarkdownTextareaComponent,
8a8e02a4 166 InfiniteScrollerDirective,
2fbe7f19 167 TextareaAutoResizeDirective,
40e87e9e 168 HelpComponent,
24e7916c 169 ListOverflowComponent,
f0a39880 170
0f7fedc3 171 ReactiveFileComponent,
22a16e36 172 PeertubeCheckboxComponent,
f0a39880 173 TimestampInputComponent,
3a1fed11 174 InputReadonlyCopyComponent,
f0a39880 175
dd4f25ee 176 AvatarComponent,
41a676db 177 SubscribeButtonComponent,
660d11e9 178 RemoteSubscribeComponent,
e724fa93 179 InstanceFeaturesTableComponent,
3d05209c 180 InstanceStatisticsComponent,
a00045a2 181 FeatureBooleanComponent,
e724fa93 182 UserBanModalComponent,
ddb83e49 183 UserModerationDropdownComponent,
2f1548fd 184 TopMenuDropdownComponent,
457bb213
C
185 UserNotificationsComponent,
186 ConfirmComponent,
e8050208 187 DateToggleComponent,
830b4faf
C
188
189 GlobalIconComponent,
d3217560
RK
190 PreviewUploadComponent,
191
192 MyAccountVideoSettingsComponent,
76314386
RK
193 MyAccountInterfaceSettingsComponent,
194 ActorAvatarInfoComponent
693b1aba
C
195 ],
196
197 exports: [
198 CommonModule,
199 FormsModule,
200 ReactiveFormsModule,
693b1aba 201 RouterModule,
d592e0a9 202 HttpClientModule,
693b1aba 203
63347a0f
C
204 NgbDropdownModule,
205 NgbModalModule,
206 NgbPopoverModule,
45c6bcf3 207 NgbNavModule,
63347a0f 208 NgbTooltipModule,
2f4c784a 209 NgbCollapseModule,
63347a0f 210
3a0fb65c
C
211 ClipboardModule,
212
d592e0a9 213 PrimeSharedModule,
f0a39880 214 InputMaskModule,
693b1aba 215 BytesPipe,
99fdec46 216 KeysPipe,
ccc00cb2 217 MultiSelectModule,
693b1aba 218
9bf9d2a5 219 LoaderComponent,
b28e4e5e 220 SmallLoaderComponent,
830b4faf 221
202f6b6c 222 VideoThumbnailComponent,
b1fa3eba 223 VideoMiniatureComponent,
830b4faf 224 VideoPlaylistMiniatureComponent,
f0a39880 225 VideoAddToPlaylistComponent,
e2f01c47 226 VideoPlaylistElementMiniatureComponent,
693263e9 227 VideosSelectionComponent,
3a0fb65c
C
228 VideoActionsDropdownComponent,
229
230 VideoDownloadComponent,
231 VideoReportComponent,
232 VideoBlacklistComponent,
830b4faf 233
c199c427 234 FeedComponent,
f0a39880 235
74d63469 236 ButtonComponent,
cd83ea1b
C
237 DeleteButtonComponent,
238 EditButtonComponent,
f0a39880 239
eacb25c4 240 ActionDropdownComponent,
66b16caf 241 MarkdownTextareaComponent,
0cd4344f 242 InfiniteScrollerDirective,
2fbe7f19 243 TextareaAutoResizeDirective,
8a8e02a4 244 HelpComponent,
24e7916c 245 ListOverflowComponent,
3a1fed11 246 InputReadonlyCopyComponent,
f0a39880 247
40e87e9e 248 ReactiveFileComponent,
0f7fedc3 249 PeertubeCheckboxComponent,
f0a39880
C
250 TimestampInputComponent,
251
dd4f25ee 252 AvatarComponent,
22a16e36 253 SubscribeButtonComponent,
660d11e9 254 RemoteSubscribeComponent,
41a676db 255 InstanceFeaturesTableComponent,
3d05209c 256 InstanceStatisticsComponent,
e724fa93
C
257 UserBanModalComponent,
258 UserModerationDropdownComponent,
ddb83e49 259 TopMenuDropdownComponent,
2f1548fd 260 UserNotificationsComponent,
457bb213 261 ConfirmComponent,
e8050208 262 DateToggleComponent,
830b4faf 263
457bb213 264 GlobalIconComponent,
7b992a86 265 PreviewUploadComponent,
9bf9d2a5
C
266
267 NumberFormatterPipe,
244e76a5 268 ObjectLengthPipe,
693263e9 269 FromNowPipe,
f409f0c3 270 HighlightPipe,
df8340b7 271 PeerTubeTemplateDirective,
d3217560
RK
272 VideoDurationPipe,
273
274 MyAccountVideoSettingsComponent,
76314386
RK
275 MyAccountInterfaceSettingsComponent,
276 ActorAvatarInfoComponent
693b1aba
C
277 ],
278
279 providers: [
d592e0a9 280 AUTH_INTERCEPTOR_PROVIDER,
693b1aba
C
281 RestExtractor,
282 RestService,
e2a2d6c8 283 VideoAbuseService,
35bf0c83 284 VideoBlacklistService,
74d63469 285 VideoOwnershipService,
202f6b6c 286 UserService,
66b16caf 287 VideoService,
0626e7af 288 AccountService,
989e526a 289 VideoChannelService,
830b4faf 290 VideoPlaylistService,
40e87e9e 291 VideoCaptionService,
26b7305a 292 VideoImportService,
22a16e36 293 UserSubscriptionService,
e309822b 294
d18d6478 295 FormValidatorService,
e309822b
C
296 CustomConfigValidatorsService,
297 LoginValidatorsService,
298 ResetPasswordValidatorsService,
299 UserValidatorsService,
830b4faf 300 VideoPlaylistValidatorsService,
e309822b
C
301 VideoAbuseValidatorsService,
302 VideoChannelValidatorsService,
303 VideoCommentValidatorsService,
304 VideoValidatorsService,
40e87e9e 305 VideoCaptionsValidatorsService,
26b7305a 306 VideoBlacklistValidatorsService,
2d3741d6 307 OverviewService,
74d63469
GR
308 VideoChangeOwnershipValidatorsService,
309 VideoAcceptOwnershipValidatorsService,
d3e56c0c 310 InstanceValidatorsService,
af5767ff 311 BlocklistService,
80bfd33c 312 UserHistoryService,
d3e56c0c 313 InstanceService,
e309822b 314
1506307f
C
315 MarkdownService,
316 LinkifierService,
317 HtmlRendererService,
318
bbe0f064
C
319 I18nPrimengCalendarService,
320 ScreenService,
d3217560 321 LocalStorageService, SessionStorageService,
bbe0f064 322
2f1548fd
C
323 UserNotificationService,
324
a6dbbf03 325 FollowService,
b764380a 326 RedundancyService,
a6dbbf03 327
989e526a 328 I18n
693b1aba
C
329 ]
330})
331export class SharedModule { }