]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared.module.ts
Refactor videos selection components
[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
10 import { BytesPipe, KeysPipe, NgPipesModule } from 'ngx-pipes'
11 import { SharedModule as PrimeSharedModule } from 'primeng/components/common/shared'
12
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'
31 import {
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'
83
84 @NgModule({
85 imports: [
86 CommonModule,
87 FormsModule,
88 ReactiveFormsModule,
89 RouterModule,
90 HttpClientModule,
91
92 NgbDropdownModule,
93 NgbModalModule,
94 NgbPopoverModule,
95 NgbTabsetModule,
96 NgbTooltipModule,
97
98 PrimeSharedModule,
99 InputMaskModule,
100 NgPipesModule
101 ],
102
103 declarations: [
104 LoaderComponent,
105 SmallLoaderComponent,
106
107 VideoThumbnailComponent,
108 VideoMiniatureComponent,
109 VideoPlaylistMiniatureComponent,
110 VideoAddToPlaylistComponent,
111 VideoPlaylistElementMiniatureComponent,
112 VideosSelectionComponent,
113
114 FeedComponent,
115
116 ButtonComponent,
117 DeleteButtonComponent,
118 EditButtonComponent,
119
120 NumberFormatterPipe,
121 ObjectLengthPipe,
122 FromNowPipe,
123 PeerTubeTemplateDirective,
124
125 ActionDropdownComponent,
126 MarkdownTextareaComponent,
127 InfiniteScrollerDirective,
128 TextareaAutoResizeDirective,
129 HelpComponent,
130
131 ReactiveFileComponent,
132 PeertubeCheckboxComponent,
133 TimestampInputComponent,
134
135 SubscribeButtonComponent,
136 RemoteSubscribeComponent,
137 InstanceFeaturesTableComponent,
138 UserBanModalComponent,
139 UserModerationDropdownComponent,
140 TopMenuDropdownComponent,
141 UserNotificationsComponent,
142 ConfirmComponent,
143
144 GlobalIconComponent,
145 ImageUploadComponent
146 ],
147
148 exports: [
149 CommonModule,
150 FormsModule,
151 ReactiveFormsModule,
152 RouterModule,
153 HttpClientModule,
154
155 NgbDropdownModule,
156 NgbModalModule,
157 NgbPopoverModule,
158 NgbTabsetModule,
159 NgbTooltipModule,
160
161 PrimeSharedModule,
162 InputMaskModule,
163 BytesPipe,
164 KeysPipe,
165
166 LoaderComponent,
167 SmallLoaderComponent,
168
169 VideoThumbnailComponent,
170 VideoMiniatureComponent,
171 VideoPlaylistMiniatureComponent,
172 VideoAddToPlaylistComponent,
173 VideoPlaylistElementMiniatureComponent,
174 VideosSelectionComponent,
175
176 FeedComponent,
177
178 ButtonComponent,
179 DeleteButtonComponent,
180 EditButtonComponent,
181
182 ActionDropdownComponent,
183 MarkdownTextareaComponent,
184 InfiniteScrollerDirective,
185 TextareaAutoResizeDirective,
186 HelpComponent,
187
188 ReactiveFileComponent,
189 PeertubeCheckboxComponent,
190 TimestampInputComponent,
191
192 SubscribeButtonComponent,
193 RemoteSubscribeComponent,
194 InstanceFeaturesTableComponent,
195 UserBanModalComponent,
196 UserModerationDropdownComponent,
197 TopMenuDropdownComponent,
198 UserNotificationsComponent,
199 ConfirmComponent,
200
201 GlobalIconComponent,
202 ImageUploadComponent,
203
204 NumberFormatterPipe,
205 ObjectLengthPipe,
206 FromNowPipe,
207 PeerTubeTemplateDirective
208 ],
209
210 providers: [
211 AUTH_INTERCEPTOR_PROVIDER,
212 RestExtractor,
213 RestService,
214 VideoAbuseService,
215 VideoBlacklistService,
216 VideoOwnershipService,
217 UserService,
218 VideoService,
219 AccountService,
220 VideoChannelService,
221 VideoPlaylistService,
222 VideoCaptionService,
223 VideoImportService,
224 UserSubscriptionService,
225
226 FormValidatorService,
227 CustomConfigValidatorsService,
228 LoginValidatorsService,
229 ResetPasswordValidatorsService,
230 UserValidatorsService,
231 VideoPlaylistValidatorsService,
232 VideoAbuseValidatorsService,
233 VideoChannelValidatorsService,
234 VideoCommentValidatorsService,
235 VideoValidatorsService,
236 VideoCaptionsValidatorsService,
237 VideoBlacklistValidatorsService,
238 OverviewService,
239 VideoChangeOwnershipValidatorsService,
240 VideoAcceptOwnershipValidatorsService,
241 InstanceValidatorsService,
242 BlocklistService,
243 UserHistoryService,
244 InstanceService,
245
246 MarkdownService,
247 LinkifierService,
248 HtmlRendererService,
249
250 I18nPrimengCalendarService,
251 ScreenService,
252
253 UserNotificationService,
254
255 I18n
256 ]
257 })
258 export class SharedModule { }