66import 'rxjs' ;
77import { Http , HttpModule } from '@angular/http' ;
88
9- import { stripTrailingSlash } from './utils' ;
109import { WpApiApp , WpApiConfig } from './tokens' ;
1110
1211import { WpApiPosts } from './Posts' ;
@@ -20,16 +19,16 @@ import { WpApiStatuses } from './Statuses';
2019import { WpApiTerms } from './Terms' ;
2120import { WpApiCustom } from './Custom' ;
2221
23- export * from './Posts' ;
24- export * from './Pages' ;
25- export * from './Comments' ;
26- export * from './Types' ;
27- export * from './Media' ;
28- export * from './Users' ;
29- export * from './Taxonomies' ;
30- export * from './Statuses' ;
31- export * from './Terms' ;
32- export * from './Custom' ;
22+ export { WpApiPosts } from './Posts' ;
23+ export { WpApiPages } from './Pages' ;
24+ export { WpApiComments } from './Comments' ;
25+ export { WpApiTypes } from './Types' ;
26+ export { WpApiMedia } from './Media' ;
27+ export { WpApiUsers } from './Users' ;
28+ export { WpApiTaxonomies } from './Taxonomies' ;
29+ export { WpApiStatuses } from './Statuses' ;
30+ export { WpApiTerms } from './Terms' ;
31+ export { WpApiCustom } from './Custom' ;
3332
3433export interface WpApiAppConfig {
3534 baseUrl : string ;
@@ -42,37 +41,27 @@ export interface WpApiAppConfig {
4241 ] ,
4342 exports : [
4443 HttpModule
44+ ] ,
45+ providers : [
46+ WpApiPosts ,
47+ WpApiPages ,
48+ WpApiComments ,
49+ WpApiTypes ,
50+ WpApiMedia ,
51+ WpApiUsers ,
52+ WpApiTaxonomies ,
53+ WpApiStatuses ,
54+ WpApiTerms ,
55+ WpApiCustom
4556 ]
4657} )
4758export class WpApiModule {
4859 static initializeApp ( config : WpApiAppConfig ) : ModuleWithProviders {
49- config . baseUrl = stripTrailingSlash ( config . baseUrl ) ;
50- config . namespace = config . namespace || '/wp/v2' ;
51-
5260 return {
5361 ngModule : WpApiModule ,
5462 providers : [
55- { provide : WpApiConfig , useValue : config } ,
56- createProvider ( WpApiPosts ) ,
57- createProvider ( WpApiPages ) ,
58- createProvider ( WpApiComments ) ,
59- createProvider ( WpApiTypes ) ,
60- createProvider ( WpApiMedia ) ,
61- createProvider ( WpApiUsers ) ,
62- createProvider ( WpApiTaxonomies ) ,
63- createProvider ( WpApiStatuses ) ,
64- createProvider ( WpApiTerms ) ,
65- createProvider ( WpApiCustom )
63+ { provide : WpApiConfig , useValue : config }
6664 ]
6765 } ;
6866 }
6967}
70-
71- function createProvider ( service ) {
72- return {
73- provide : service ,
74- useFactory : ( config : WpApiAppConfig , http : Http ) => new service ( config , http ) ,
75- deps : [ WpApiConfig , Http ]
76- }
77- }
78-
0 commit comments