Client: Add authHttp service that authentificates the http request and
[oweals/peertube.git] / client / src / main.ts
1 import { enableProdMode, provide } from '@angular/core';
2 import {
3   HTTP_PROVIDERS,
4   RequestOptions,
5   XHRBackend
6 } from '@angular/http';
7 import { bootstrap }    from '@angular/platform-browser-dynamic';
8 import { provideRouter } from '@angular/router';
9
10 import { AppComponent } from './app/app.component';
11 import { routes } from './app/app.routes';
12 import { AuthHttp, AuthService } from './app/shared';
13
14 if (process.env.ENV === 'production') {
15   enableProdMode();
16 }
17
18 bootstrap(AppComponent, [
19   HTTP_PROVIDERS,
20   provide(AuthHttp, {
21     useFactory: (backend: XHRBackend, defaultOptions: RequestOptions, authService: AuthService) => {
22       return new AuthHttp(backend, defaultOptions, authService);
23     },
24     deps: [ XHRBackend, RequestOptions, AuthService ]
25   }),
26   AuthService,
27   provideRouter(routes)
28 ]);