1
1
import 'globals' ;
2
- import "zone.js/dist/zone-node"
2
+ import "zone.js/dist/zone-node" ;
3
3
4
4
import 'reflect-metadata' ;
5
5
import './polyfills/array' ;
@@ -14,7 +14,10 @@ import {RootRenderer, Renderer} from '@angular/core/src/render/api';
14
14
import { NativeScriptRootRenderer , NativeScriptRenderer } from './renderer' ;
15
15
import { NativeScriptDomAdapter , NativeScriptElementSchemaRegistry , NativeScriptSanitizationService } from './dom-adapter' ;
16
16
import { ElementSchemaRegistry , XHR , COMPILER_PROVIDERS , CompilerConfig } from '@angular/compiler' ;
17
- import { FileSystemXHR } from './xhr' ;
17
+ import { Http , XHRBackend , BrowserXhr , RequestOptions , ResponseOptions , XSRFStrategy } from '@angular/http' ;
18
+ import { FileSystemXHR } from './http/xhr' ;
19
+ import { NSXSRFStrategy , NSHttp } from './http/ns-http' ;
20
+ import { NSFileSystem } from './file-system/ns-file-system' ;
18
21
import { Parse5DomAdapter } from '@angular/platform-server/src/parse5_adapter' ;
19
22
import { ExceptionHandler } from '@angular/core/src/facade/exception_handler' ;
20
23
import { APPLICATION_COMMON_PROVIDERS } from '@angular/core/src/application_common_providers' ;
@@ -87,15 +90,27 @@ export function bootstrap(appComponentType: any,
87
90
provide ( ElementSchemaRegistry , { useClass : NativeScriptElementSchemaRegistry } ) ,
88
91
NS_COMPILER_PROVIDERS ,
89
92
provide ( ElementSchemaRegistry , { useClass : NativeScriptElementSchemaRegistry } ) ,
90
- provide ( XHR , { useClass : FileSystemXHR } ) ,
93
+ provide ( XHR , { useClass : FileSystemXHR } )
91
94
]
92
95
93
96
var appProviders = [ defaultAppProviders ] ;
94
97
if ( isPresent ( customProviders ) ) {
95
98
appProviders . push ( customProviders ) ;
96
99
}
97
100
98
- var platform = getPlatform ( ) ;
101
+ // Http Setup
102
+ // Since HTTP_PROVIDERS can be added with customProviders above, this must come after
103
+ appProviders . push ( [
104
+ provide ( XSRFStrategy , { useValue : new NSXSRFStrategy ( ) } ) ,
105
+ NSFileSystem ,
106
+ provide ( Http , {
107
+ useFactory : ( backend , options , nsFileSystem ) => {
108
+ return new NSHttp ( backend , options , nsFileSystem ) ;
109
+ } , deps : [ XHRBackend , RequestOptions , NSFileSystem ]
110
+ } )
111
+ ] ) ;
112
+
113
+ var platform = getPlatform ( ) ;
99
114
if ( ! isPresent ( platform ) ) {
100
115
platform = createPlatform ( ReflectiveInjector . resolveAndCreate ( platformProviders ) ) ;
101
116
}
0 commit comments