]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/core/core.module.ts
5943af4da527c4ac62f341bba5b9e6dec5fc99ff
[github/Chocobozzz/PeerTube.git] / client / src / app / core / core.module.ts
1 import { CommonModule } from '@angular/common'
2 import { NgModule, Optional, SkipSelf } from '@angular/core'
3 import { FormsModule } from '@angular/forms'
4 import { BrowserAnimationsModule } from '@angular/platform-browser/animations'
5 import { RouterModule } from '@angular/router'
6 import { LoadingBarModule } from '@ngx-loading-bar/core'
7 import { LoadingBarHttpClientModule } from '@ngx-loading-bar/http-client'
8 import { LoadingBarRouterModule } from '@ngx-loading-bar/router'
9
10 import { AuthService } from './auth'
11 import { ConfirmService } from './confirm'
12 import { throwIfAlreadyLoaded } from './module-import-guard'
13 import { LoginGuard, RedirectService, UserRightGuard } from './routing'
14 import { ServerService } from './server'
15 import { ThemeService } from './theme'
16 import { HotkeyModule } from 'angular2-hotkeys'
17 import { CheatSheetComponent } from './hotkeys'
18 import { ToastModule } from 'primeng/toast'
19 import { Notifier } from './notification'
20 import { MessageService } from 'primeng/api'
21 import { UserNotificationSocket } from '@app/core/notification/user-notification-socket.service'
22 import { ServerConfigResolver } from './routing/server-config-resolver.service'
23 import { UnloggedGuard } from '@app/core/routing/unlogged-guard.service'
24 import { PluginService } from '@app/core/plugins/plugin.service'
25 import { HooksService } from '@app/core/plugins/hooks.service'
26
27 @NgModule({
28 imports: [
29 CommonModule,
30 RouterModule,
31 FormsModule,
32 BrowserAnimationsModule,
33
34 LoadingBarHttpClientModule,
35 LoadingBarRouterModule,
36 LoadingBarModule,
37 ToastModule,
38
39 HotkeyModule.forRoot({
40 cheatSheetCloseEsc: true
41 })
42 ],
43
44 declarations: [
45 CheatSheetComponent
46 ],
47
48 exports: [
49 LoadingBarHttpClientModule,
50 LoadingBarModule,
51
52 ToastModule,
53
54 CheatSheetComponent
55 ],
56
57 providers: [
58 AuthService,
59 ConfirmService,
60 ServerService,
61 ThemeService,
62 LoginGuard,
63 UserRightGuard,
64 UnloggedGuard,
65
66 PluginService,
67 HooksService,
68
69 RedirectService,
70 Notifier,
71 MessageService,
72 UserNotificationSocket,
73 ServerConfigResolver
74 ]
75 })
76 export class CoreModule {
77 constructor (@Optional() @SkipSelf() parentModule: CoreModule) {
78 throwIfAlreadyLoaded(parentModule, 'CoreModule')
79 }
80 }