8
8
let { DSUtils } = JSData
9
9
let { deepMixIn, removeCircular, copy, makePath, isString, isNumber } = DSUtils
10
10
11
+ function isUndefined ( value ) {
12
+ return value === undefined
13
+ }
14
+
11
15
class Defaults {
12
16
queryTransform ( resourceConfig , params ) {
13
17
return params
@@ -38,7 +42,7 @@ defaultsPrototype.verbsUseBasePath = false
38
42
39
43
class DSHttpAdapter {
40
44
constructor ( options ) {
41
- options = options || { }
45
+ options || ( options = { } )
42
46
this . defaults = new Defaults ( )
43
47
if ( console ) {
44
48
this . defaults . log = ( a , b ) => console [ typeof console . info === 'function' ? 'info' : 'log' ] ( a , b )
@@ -51,8 +55,8 @@ class DSHttpAdapter {
51
55
}
52
56
53
57
getEndpoint ( resourceConfig , id , options ) {
54
- options = options || { }
55
- options . params = options . params || { }
58
+ options || ( options = { } )
59
+ options . params = isUndefined ( options . params ) ? { } : options . params
56
60
57
61
let endpoint = options . hasOwnProperty ( 'endpoint' ) ? options . endpoint : resourceConfig . endpoint
58
62
let parents = resourceConfig . parents || ( resourceConfig . parent ? {
@@ -81,7 +85,6 @@ class DSHttpAdapter {
81
85
} else if ( DSUtils . _o ( id ) ) {
82
86
item = id
83
87
}
84
- console . log ( 'item' , item )
85
88
86
89
if ( item ) {
87
90
parentId = parentId || item [ parentKey ] || ( item [ parentField ] ? item [ parentField ] [ parentDef . idAttribute ] : null )
@@ -103,7 +106,7 @@ class DSHttpAdapter {
103
106
104
107
getPath ( method , resourceConfig , id , options ) {
105
108
let _this = this
106
- options = options || { }
109
+ options || ( options = { } )
107
110
if ( isString ( options . urlPath ) ) {
108
111
return makePath . apply ( DSUtils , [ options . basePath || _this . defaults . basePath || resourceConfig . basePath , options . urlPath ] )
109
112
} else {
@@ -144,7 +147,7 @@ class DSHttpAdapter {
144
147
config . data = removeCircular ( config . data )
145
148
}
146
149
config . method = config . method . toUpperCase ( )
147
- let suffix = config . suffix || _this . defaults . suffix
150
+ let suffix = isUndefined ( config . suffix ) ? _this . defaults . suffix : config . suffix
148
151
if ( suffix && config . url . substr ( config . url . length - suffix . length ) !== suffix && ! config . urlOverride ) {
149
152
config . url += suffix
150
153
}
@@ -223,9 +226,9 @@ class DSHttpAdapter {
223
226
224
227
find ( resourceConfig , id , options ) {
225
228
let _this = this
226
- options = options ? copy ( options ) : { }
227
- options . suffix = options . suffix || resourceConfig . suffix
228
- options . params = options . params || { }
229
+ options || ( options = { } )
230
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
231
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
229
232
options . params = _this . defaults . queryTransform ( resourceConfig , options . params )
230
233
return _this . GET (
231
234
_this . getPath ( 'find' , resourceConfig , id , options ) ,
@@ -238,9 +241,9 @@ class DSHttpAdapter {
238
241
239
242
findAll ( resourceConfig , params , options ) {
240
243
let _this = this
241
- options = options ? copy ( options ) : { }
242
- options . suffix = options . suffix || resourceConfig . suffix
243
- options . params = options . params || { }
244
+ options || ( options = { } )
245
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
246
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
244
247
if ( params ) {
245
248
params = _this . defaults . queryTransform ( resourceConfig , params )
246
249
deepMixIn ( options . params , params )
@@ -253,9 +256,9 @@ class DSHttpAdapter {
253
256
254
257
create ( resourceConfig , attrs , options ) {
255
258
let _this = this
256
- options = options ? copy ( options ) : { }
257
- options . suffix = options . suffix || resourceConfig . suffix
258
- options . params = options . params || { }
259
+ options || ( options = { } )
260
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
261
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
259
262
options . params = _this . defaults . queryTransform ( resourceConfig , options . params )
260
263
return _this . POST (
261
264
_this . getPath ( 'create' , resourceConfig , attrs , options ) ,
@@ -266,9 +269,9 @@ class DSHttpAdapter {
266
269
267
270
update ( resourceConfig , id , attrs , options ) {
268
271
let _this = this
269
- options = options ? copy ( options ) : { }
270
- options . suffix = options . suffix || resourceConfig . suffix
271
- options . params = options . params || { }
272
+ options || ( options = { } )
273
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
274
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
272
275
options . params = _this . defaults . queryTransform ( resourceConfig , options . params )
273
276
return _this . PUT (
274
277
_this . getPath ( 'update' , resourceConfig , id , options ) ,
@@ -279,9 +282,9 @@ class DSHttpAdapter {
279
282
280
283
updateAll ( resourceConfig , attrs , params , options ) {
281
284
let _this = this
282
- options = options ? copy ( options ) : { }
283
- options . suffix = options . suffix || resourceConfig . suffix
284
- options . params = options . params || { }
285
+ options || ( options = { } )
286
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
287
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
285
288
if ( params ) {
286
289
params = _this . defaults . queryTransform ( resourceConfig , params )
287
290
deepMixIn ( options . params , params )
@@ -295,9 +298,9 @@ class DSHttpAdapter {
295
298
296
299
destroy ( resourceConfig , id , options ) {
297
300
let _this = this
298
- options = options ? copy ( options ) : { }
299
- options . suffix = options . suffix || resourceConfig . suffix
300
- options . params = options . params || { }
301
+ options || ( options = { } )
302
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
303
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
301
304
options . params = _this . defaults . queryTransform ( resourceConfig , options . params )
302
305
return _this . DEL (
303
306
_this . getPath ( 'destroy' , resourceConfig , id , options ) ,
@@ -307,9 +310,9 @@ class DSHttpAdapter {
307
310
308
311
destroyAll ( resourceConfig , params , options ) {
309
312
let _this = this
310
- options = options ? copy ( options ) : { }
311
- options . suffix = options . suffix || resourceConfig . suffix
312
- options . params = options . params || { }
313
+ options || ( options = { } )
314
+ options . suffix = isUndefined ( options . suffix ) ? resourceConfig . suffix : options . suffix
315
+ options . params = isUndefined ( options . params ) ? { } : copy ( options . params )
313
316
if ( params ) {
314
317
params = _this . defaults . queryTransform ( resourceConfig , params )
315
318
deepMixIn ( options . params , params )
0 commit comments