11/*!
2- * vue-resource v1.3.6
2+ * vue-resource v1.4.0
33 * https://github.com/pagekit/vue-resource
44 * Released under the MIT License.
55 */
@@ -264,11 +264,9 @@ p$1.finally = function (callback) {
264264
265265var ref = { } ;
266266var hasOwnProperty = ref . hasOwnProperty ;
267-
268267var ref$1 = [ ] ;
269268var slice = ref$1 . slice ;
270- var debug = false ;
271- var ntick ;
269+ var debug = false , ntick ;
272270
273271var inBrowser = typeof window !== 'undefined' ;
274272
@@ -327,8 +325,6 @@ function isString(val) {
327325 return typeof val === 'string' ;
328326}
329327
330-
331-
332328function isFunction ( val ) {
333329 return typeof val === 'function' ;
334330}
@@ -827,7 +823,7 @@ function xdrClient (request) {
827823
828824var SUPPORTS_CORS = inBrowser && 'withCredentials' in new XMLHttpRequest ( ) ;
829825
830- function cors ( request , next ) {
826+ function cors ( request ) {
831827
832828 if ( inBrowser ) {
833829
@@ -845,45 +841,40 @@ function cors (request, next) {
845841 }
846842 }
847843
848- next ( ) ;
849844}
850845
851846/**
852847 * Form data Interceptor.
853848 */
854849
855- function form ( request , next ) {
850+ function form ( request ) {
856851
857852 if ( isFormData ( request . body ) ) {
858-
859853 request . headers . delete ( 'Content-Type' ) ;
860-
861854 } else if ( isObject ( request . body ) && request . emulateJSON ) {
862-
863855 request . body = Url . params ( request . body ) ;
864856 request . headers . set ( 'Content-Type' , 'application/x-www-form-urlencoded' ) ;
865857 }
866858
867- next ( ) ;
868859}
869860
870861/**
871862 * JSON Interceptor.
872863 */
873864
874- function json ( request , next ) {
865+ function json ( request ) {
875866
876867 var type = request . headers . get ( 'Content-Type' ) || '' ;
877868
878869 if ( isObject ( request . body ) && type . indexOf ( 'application/json' ) === 0 ) {
879870 request . body = JSON . stringify ( request . body ) ;
880871 }
881872
882- next ( function ( response ) {
873+ return function ( response ) {
883874
884875 return response . bodyText ? when ( response . text ( ) , function ( text ) {
885876
886- type = response . headers . get ( 'Content-Type' ) || '' ;
877+ var type = response . headers . get ( 'Content-Type' ) || '' ;
887878
888879 if ( type . indexOf ( 'application/json' ) === 0 || isJson ( text ) ) {
889880
@@ -901,7 +892,7 @@ function json (request, next) {
901892
902893 } ) : response ;
903894
904- } ) ;
895+ } ;
905896}
906897
907898function isJson ( str ) {
@@ -970,47 +961,44 @@ function jsonpClient (request) {
970961 * JSONP Interceptor.
971962 */
972963
973- function jsonp ( request , next ) {
964+ function jsonp ( request ) {
974965
975966 if ( request . method == 'JSONP' ) {
976967 request . client = jsonpClient ;
977968 }
978969
979- next ( ) ;
980970}
981971
982972/**
983973 * Before Interceptor.
984974 */
985975
986- function before ( request , next ) {
976+ function before ( request ) {
987977
988978 if ( isFunction ( request . before ) ) {
989979 request . before . call ( this , request ) ;
990980 }
991981
992- next ( ) ;
993982}
994983
995984/**
996985 * HTTP method override Interceptor.
997986 */
998987
999- function method ( request , next ) {
988+ function method ( request ) {
1000989
1001990 if ( request . emulateHTTP && / ^ ( P U T | P A T C H | D E L E T E ) $ / i. test ( request . method ) ) {
1002991 request . headers . set ( 'X-HTTP-Method-Override' , request . method ) ;
1003992 request . method = 'POST' ;
1004993 }
1005994
1006- next ( ) ;
1007995}
1008996
1009997/**
1010998 * Header Interceptor.
1011999 */
10121000
1013- function header ( request , next ) {
1001+ function header ( request ) {
10141002
10151003 var headers = assign ( { } , Http . headers . common ,
10161004 ! request . crossOrigin ? Http . headers . custom : { } ,
@@ -1023,7 +1011,6 @@ function header (request, next) {
10231011 }
10241012 } ) ;
10251013
1026- next ( ) ;
10271014}
10281015
10291016/**
@@ -1130,52 +1117,45 @@ function nodeClient (request) {
11301117
11311118function Client ( context ) {
11321119
1133- var reqHandlers = [ sendRequest ] , resHandlers = [ ] , handler ;
1120+ var reqHandlers = [ sendRequest ] , resHandlers = [ ] ;
11341121
11351122 if ( ! isObject ( context ) ) {
11361123 context = null ;
11371124 }
11381125
11391126 function Client ( request ) {
1140- return new PromiseObj ( function ( resolve , reject ) {
1141-
1142- function exec ( ) {
1127+ while ( reqHandlers . length ) {
11431128
1144- handler = reqHandlers . pop ( ) ;
1129+ var handler = reqHandlers . pop ( ) ;
11451130
1146- if ( isFunction ( handler ) ) {
1147- handler . call ( context , request , next ) ;
1148- } else {
1149- warn ( ( "Invalid interceptor of type " + ( typeof handler ) + ", must be a function" ) ) ;
1150- next ( ) ;
1151- }
1152- }
1131+ if ( isFunction ( handler ) ) {
11531132
1154- function next ( response ) {
1133+ var response = ( void 0 ) , next = ( void 0 ) ;
11551134
1156- if ( isFunction ( response ) ) {
1135+ response = handler . call ( context , request , function ( val ) { return next = val ; } ) || next ;
11571136
1158- resHandlers . unshift ( response ) ;
1137+ if ( isObject ( response ) ) {
1138+ return new PromiseObj ( function ( resolve , reject ) {
11591139
1160- } else if ( isObject ( response ) ) {
1140+ resHandlers . forEach ( function ( handler ) {
1141+ response = when ( response , function ( response ) {
1142+ return handler . call ( context , response ) || response ;
1143+ } , reject ) ;
1144+ } ) ;
11611145
1162- resHandlers . forEach ( function ( handler ) {
1163- response = when ( response , function ( response ) {
1164- return handler . call ( context , response ) || response ;
1165- } , reject ) ;
1166- } ) ;
1146+ when ( response , resolve , reject ) ;
11671147
1168- when ( response , resolve , reject ) ;
1148+ } , context ) ;
1149+ }
11691150
1170- return ;
1151+ if ( isFunction ( response ) ) {
1152+ resHandlers . unshift ( response ) ;
11711153 }
11721154
1173- exec ( ) ;
1155+ } else {
1156+ warn ( ( "Invalid interceptor of type " + ( typeof handler ) + ", must be a function" ) ) ;
11741157 }
1175-
1176- exec ( ) ;
1177-
1178- } , context ) ;
1158+ }
11791159 }
11801160
11811161 Client . use = function ( handler ) {
0 commit comments