]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared.module.ts
Merge branch 'release/v1.2.0'
[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 { FromNowPipe } from './misc/from-now.pipe'
18 import { LoaderComponent } from './misc/loader.component'
19 import { NumberFormatterPipe } from './misc/number-formatter.pipe'
20 import { ObjectLengthPipe } from './misc/object-length.pipe'
21 import { RestExtractor, RestService } from './rest'
22 import { UserService } from './users'
23 import { VideoAbuseService } from './video-abuse'
24 import { VideoBlacklistService } from './video-blacklist'
25 import { VideoOwnershipService } from './video-ownership'
26 import { VideoMiniatureComponent } from './video/video-miniature.component'
27 import { FeedComponent } from './video/feed.component'
28 import { VideoThumbnailComponent } from './video/video-thumbnail.component'
29 import { VideoService } from './video/video.service'
30 import { AccountService } from '@app/shared/account/account.service'
31 import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
32 import { I18n } from '@ngx-translate/i18n-polyfill'
33 import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service'
34 import {
35 CustomConfigValidatorsService,
36 InstanceValidatorsService,
37 LoginValidatorsService,
38 ReactiveFileComponent,
39 ResetPasswordValidatorsService,
40 TextareaAutoResizeDirective,
41 UserValidatorsService,
42 VideoAbuseValidatorsService,
43 VideoAcceptOwnershipValidatorsService,
44 VideoBlacklistValidatorsService,
45 VideoChangeOwnershipValidatorsService,
46 VideoChannelValidatorsService,
47 VideoCommentValidatorsService,
48 VideoValidatorsService
49 } from '@app/shared/forms'
50 import { I18nPrimengCalendarService } from '@app/shared/i18n/i18n-primeng-calendar'
51 import { ScreenService } from '@app/shared/misc/screen.service'
52 import { VideoCaptionsValidatorsService } from '@app/shared/forms/form-validators/video-captions-validators.service'
53 import { VideoCaptionService } from '@app/shared/video-caption'
54 import { PeertubeCheckboxComponent } from '@app/shared/forms/peertube-checkbox.component'
55 import { VideoImportService } from '@app/shared/video-import/video-import.service'
56 import { ActionDropdownComponent } from '@app/shared/buttons/action-dropdown.component'
57 import { NgbDropdownModule, NgbModalModule, NgbPopoverModule, NgbTabsetModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'
58 import { RemoteSubscribeComponent, SubscribeButtonComponent, UserSubscriptionService } from '@app/shared/user-subscription'
59 import { InstanceFeaturesTableComponent } from '@app/shared/instance/instance-features-table.component'
60 import { OverviewService } from '@app/shared/overview'
61 import { UserBanModalComponent } from '@app/shared/moderation'
62 import { UserModerationDropdownComponent } from '@app/shared/moderation/user-moderation-dropdown.component'
63 import { BlocklistService } from '@app/shared/blocklist'
64 import { TopMenuDropdownComponent } from '@app/shared/menu/top-menu-dropdown.component'
65 import { UserHistoryService } from '@app/shared/users/user-history.service'
66 import { UserNotificationService } from '@app/shared/users/user-notification.service'
67 import { UserNotificationsComponent } from '@app/shared/users/user-notifications.component'
68 import { InstanceService } from '@app/shared/instance/instance.service'
69 import { HtmlRendererService, LinkifierService, MarkdownService } from '@app/shared/renderer'
70 import { ConfirmComponent } from '@app/shared/confirm/confirm.component'
71 import { GlobalIconComponent } from '@app/shared/icons/global-icon.component'
72
73 @NgModule({
74 imports: [
75 CommonModule,
76 FormsModule,
77 ReactiveFormsModule,
78 RouterModule,
79 HttpClientModule,
80
81 NgbDropdownModule,
82 NgbModalModule,
83 NgbPopoverModule,
84 NgbTabsetModule,
85 NgbTooltipModule,
86
87 PrimeSharedModule,
88 NgPipesModule
89 ],
90
91 declarations: [
92 LoaderComponent,
93 VideoThumbnailComponent,
94 VideoMiniatureComponent,
95 FeedComponent,
96 ButtonComponent,
97 DeleteButtonComponent,
98 EditButtonComponent,
99 ActionDropdownComponent,
100 NumberFormatterPipe,
101 ObjectLengthPipe,
102 FromNowPipe,
103 MarkdownTextareaComponent,
104 InfiniteScrollerDirective,
105 TextareaAutoResizeDirective,
106 HelpComponent,
107 ReactiveFileComponent,
108 PeertubeCheckboxComponent,
109 SubscribeButtonComponent,
110 RemoteSubscribeComponent,
111 InstanceFeaturesTableComponent,
112 UserBanModalComponent,
113 UserModerationDropdownComponent,
114 TopMenuDropdownComponent,
115 UserNotificationsComponent,
116 ConfirmComponent,
117 GlobalIconComponent
118 ],
119
120 exports: [
121 CommonModule,
122 FormsModule,
123 ReactiveFormsModule,
124 RouterModule,
125 HttpClientModule,
126
127 NgbDropdownModule,
128 NgbModalModule,
129 NgbPopoverModule,
130 NgbTabsetModule,
131 NgbTooltipModule,
132
133 PrimeSharedModule,
134 BytesPipe,
135 KeysPipe,
136
137 LoaderComponent,
138 VideoThumbnailComponent,
139 VideoMiniatureComponent,
140 FeedComponent,
141 ButtonComponent,
142 DeleteButtonComponent,
143 EditButtonComponent,
144 ActionDropdownComponent,
145 MarkdownTextareaComponent,
146 InfiniteScrollerDirective,
147 TextareaAutoResizeDirective,
148 HelpComponent,
149 ReactiveFileComponent,
150 PeertubeCheckboxComponent,
151 SubscribeButtonComponent,
152 RemoteSubscribeComponent,
153 InstanceFeaturesTableComponent,
154 UserBanModalComponent,
155 UserModerationDropdownComponent,
156 TopMenuDropdownComponent,
157 UserNotificationsComponent,
158 ConfirmComponent,
159 GlobalIconComponent,
160
161 NumberFormatterPipe,
162 ObjectLengthPipe,
163 FromNowPipe
164 ],
165
166 providers: [
167 AUTH_INTERCEPTOR_PROVIDER,
168 RestExtractor,
169 RestService,
170 VideoAbuseService,
171 VideoBlacklistService,
172 VideoOwnershipService,
173 UserService,
174 VideoService,
175 AccountService,
176 VideoChannelService,
177 VideoCaptionService,
178 VideoImportService,
179 UserSubscriptionService,
180
181 FormValidatorService,
182 CustomConfigValidatorsService,
183 LoginValidatorsService,
184 ResetPasswordValidatorsService,
185 UserValidatorsService,
186 VideoAbuseValidatorsService,
187 VideoChannelValidatorsService,
188 VideoCommentValidatorsService,
189 VideoValidatorsService,
190 VideoCaptionsValidatorsService,
191 VideoBlacklistValidatorsService,
192 OverviewService,
193 VideoChangeOwnershipValidatorsService,
194 VideoAcceptOwnershipValidatorsService,
195 InstanceValidatorsService,
196 BlocklistService,
197 UserHistoryService,
198 InstanceService,
199
200 MarkdownService,
201 LinkifierService,
202 HtmlRendererService,
203
204 I18nPrimengCalendarService,
205 ScreenService,
206
207 UserNotificationService,
208
209 I18n
210 ]
211 })
212 export class SharedModule { }