diff --git a/dist/adapter/dsbridge.js b/dist/adapter/dsbridge.js index 7d40a02..3f0f922 100644 --- a/dist/adapter/dsbridge.js +++ b/dist/adapter/dsbridge.js @@ -94,7 +94,7 @@ function KEEP(_,cb){cb();} "use strict"; var handleImgBase64Data = __webpack_require__(0); - var adapter = void 0; +var adapter = void 0; if (window.dsBridge) { adapter = function adapter(request, responseCallBack) { dsBridge.call("onAjaxRequest", request, function (responseData) { @@ -116,4 +116,4 @@ KEEP("cdn||cdn-min", function () { module.exports = adapter; /***/ }) -/******/ ]); +/******/ ]); \ No newline at end of file diff --git a/dist/fly.js b/dist/fly.js index 6c6061d..37d3be2 100644 --- a/dist/fly.js +++ b/dist/fly.js @@ -311,7 +311,7 @@ var Fly = function () { } var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; var dataType = utils.type(data); var params = options.params || {}; @@ -415,9 +415,9 @@ var Fly = function () { // The xhr of IE9 has not response field var response = engine.response || engine.responseText; if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { response = JSON.parse(response); } @@ -435,7 +435,7 @@ var Fly = function () { } var status = engine.status; var statusText = engine.statusText; - var _data = {data: response, headers: headers, status: status, statusText: statusText}; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; // The _response filed of engine is set in adapter which be called in engine-wrapper.js utils.merge(_data, engine._response); if (status >= 200 && status < 300 || status === 304) { @@ -523,11 +523,11 @@ Fly.default = Fly; return this.request(url, data, utils.merge({ method: e }, option)); }; }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader KEEP("cdn||cdn-min", function () { // This code block will be removed besides the "CDN" and "cdn-min" build environment @@ -538,4 +538,4 @@ module.exports = Fly; /***/ }) -/******/ }); +/******/ }); \ No newline at end of file diff --git a/dist/fly.min.js b/dist/fly.min.js index 70ca22d..23455fe 100644 --- a/dist/fly.min.js +++ b/dist/fly.min.js @@ -1 +1 @@ -!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=5)}({1:function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,i+"%5B"+n+"%5D")});else if("object"==a)for(var c in e)i?t(e[c],i+"%5B"+s(c)+"%5D"):t(e[c],s(c));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},5:function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+P.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==w&&(o.responseType=w)}catch(e){}var E=n.headers[a]||n.headers[c],T="application/x-www-form-urlencoded";i.trim((E||"").toLowerCase())===T?t=i.formatParams(t):i.isFormData(t)||-1===["object","array"].indexOf(i.type(t))||(T="application/json;charset=utf-8",t=JSON.stringify(t)),E||O||(n.headers[a]=T);for(var C in n.headers)if(C===a&&i.isFormData(t))delete n.headers[C];else try{o.setRequestHeader(C,n.headers[C])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(a)||"").indexOf("json")&&!i.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var s=(o.getAllResponseHeaders()||"").split("\r\n");s.pop(),s.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var c=o.status,u=o.statusText,h={data:e,headers:t,status:c,statusText:u};if(i.merge(h,o._response),c>=200&&c<300||304===c)h.engine=o,h.request=n,r(l.handler,h,0);else{var d=new p(u,c);d.response=h,f(d)}}catch(d){f(new p(d.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(O?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[a]=o[a]||o[c]||"",delete o[c],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):u(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),function(e,t){t()}(0,function(){window.fly=new a,window.Fly=a}),e.exports=a}}); \ No newline at end of file +!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=5)}({1:function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,i+"%5B"+n+"%5D")});else if("object"==a)for(var c in e)i?t(e[c],i+"%5B"+s(c)+"%5D"):t(e[c],s(c));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},5:function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+P.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==w&&(o.responseType=w)}catch(e){}var C=n.headers[a]||n.headers[c],T="application/x-www-form-urlencoded";i.trim((C||"").toLowerCase())===T?t=i.formatParams(t):i.isFormData(t)||-1===["object","array"].indexOf(i.type(t))||(T="application/json;charset=utf-8",t=JSON.stringify(t)),C||O||(n.headers[a]=T);for(var q in n.headers)if(q===a&&i.isFormData(t))delete n.headers[q];else try{o.setRequestHeader(q,n.headers[q])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(a)||"").indexOf("json")&&!i.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var s=(o.getAllResponseHeaders()||"").split("\r\n");s.pop(),s.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var c=o.status,u=o.statusText,h={data:e,headers:t,status:c,statusText:u};if(i.merge(h,o._response),c>=200&&c<300||304===c)h.engine=o,h.request=n,r(l.handler,h,0);else{var d=new p(u,c);d.response=h,f(d)}}catch(d){f(new p(d.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(O?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[a]=o[a]||o[c]||"",delete o[c],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;p&&(s=p.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):u(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),function(e,t){t()}(0,function(){window.fly=new a,window.Fly=a}),e.exports=a}}); \ No newline at end of file diff --git a/dist/npm/adapter/dsbridge.js b/dist/npm/adapter/dsbridge.js index 152787a..5d4fc0e 100644 --- a/dist/npm/adapter/dsbridge.js +++ b/dist/npm/adapter/dsbridge.js @@ -73,8 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 8); +/******/ return __webpack_require__(__webpack_require__.s = 8); /******/ }) /************************************************************************/ /******/ ({ @@ -99,14 +98,14 @@ module.exports = function handleImgBase64Data(responseData) { /***/ }), - /***/ 8: +/***/ 8: /***/ (function(module, exports, __webpack_require__) { function KEEP(_,cb){cb();} "use strict"; var handleImgBase64Data = __webpack_require__(3); - var adapter = void 0; +var adapter = void 0; if (window.dsBridge) { adapter = function adapter(request, responseCallBack) { dsBridge.call("onAjaxRequest", request, function (responseData) { @@ -128,4 +127,4 @@ module.exports = adapter; /***/ }) /******/ }); -}); +}); \ No newline at end of file diff --git a/dist/npm/adapter/webviewjsbridge.js b/dist/npm/adapter/webviewjsbridge.js index 10a4e22..4574d14 100644 --- a/dist/npm/adapter/webviewjsbridge.js +++ b/dist/npm/adapter/webviewjsbridge.js @@ -73,8 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 9); +/******/ return __webpack_require__(__webpack_require__.s = 9); /******/ }) /************************************************************************/ /******/ ({ @@ -99,7 +98,7 @@ module.exports = function handleImgBase64Data(responseData) { /***/ }), - /***/ 9: +/***/ 9: /***/ (function(module, exports, __webpack_require__) { function KEEP(_,cb){cb();} @@ -144,4 +143,4 @@ module.exports = adapter; /***/ }) /******/ }); -}); +}); \ No newline at end of file diff --git a/dist/npm/ap.js b/dist/npm/ap.js index 227659b..b961d6f 100644 --- a/dist/npm/ap.js +++ b/dist/npm/ap.js @@ -1,912 +1,808 @@ (function webpackUniversalModuleDefinition(root, factory) { - if (typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if (typeof define === 'function' && define.amd) - define([], factory); - else { - var a = factory(); - for (var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; - } -})(this, function () { - return /******/ (function (modules) { // webpackBootstrap - /******/ // The module cache - /******/ - var installedModules = {}; - /******/ - /******/ // The require function - /******/ - function __webpack_require__(moduleId) { - /******/ - /******/ // Check if module is in cache - /******/ - if (installedModules[moduleId]) { - /******/ - return installedModules[moduleId].exports; - /******/ - } - /******/ // Create a new module (and put it into the cache) - /******/ - var module = installedModules[moduleId] = { - /******/ i: moduleId, - /******/ l: false, - /******/ exports: {} - /******/ - }; - /******/ - /******/ // Execute the module function - /******/ - modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); - /******/ - /******/ // Flag the module as loaded - /******/ - module.l = true; - /******/ - /******/ // Return the exports of the module - /******/ - return module.exports; - /******/ + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else { + var a = factory(); + for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; + } +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // identity function for calling harmony imports with the correct context +/******/ __webpack_require__.i = function(value) { return value; }; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 10); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +module.exports = { + type: function type(ob) { + return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); + }, + isObject: function isObject(ob, real) { + if (real) { + return this.type(ob) === "object"; + } else { + return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; + } + }, + isFormData: function isFormData(val) { + return typeof FormData !== 'undefined' && val instanceof FormData; + }, + trim: function trim(str) { + return str.replace(/(^\s*)|(\s*$)/g, ''); + }, + encode: function encode(val) { + return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); + }, + formatParams: function formatParams(data) { + var str = ""; + var first = true; + var that = this; + if (!this.isObject(data)) { + return data; } - /******/ - /******/ - /******/ // expose the modules object (__webpack_modules__) - /******/ - __webpack_require__.m = modules; - /******/ - /******/ // expose the module cache - /******/ - __webpack_require__.c = installedModules; - /******/ - /******/ // identity function for calling harmony imports with the correct context - /******/ - __webpack_require__.i = function (value) { - return value; - }; - /******/ - /******/ // define getter function for harmony exports - /******/ - __webpack_require__.d = function (exports, name, getter) { - /******/ - if (!__webpack_require__.o(exports, name)) { - /******/ - Object.defineProperty(exports, name, { - /******/ configurable: false, - /******/ enumerable: true, - /******/ get: getter - /******/ + function _encode(sub, path) { + var encode = that.encode; + var type = that.type(sub); + if (type == "array") { + sub.forEach(function (e, i) { + if (!that.isObject(e)) i = ""; + _encode(e, path + ('%5B' + i + '%5D')); }); - /******/ - } - /******/ - }; - /******/ - /******/ // getDefaultExport function for compatibility with non-harmony modules - /******/ - __webpack_require__.n = function (module) { - /******/ - var getter = module && module.__esModule ? - /******/ function getDefault() { - return module['default']; - } : - /******/ function getModuleExports() { - return module; - }; - /******/ - __webpack_require__.d(getter, 'a', getter); - /******/ - return getter; - /******/ - }; - /******/ - /******/ // Object.prototype.hasOwnProperty.call - /******/ - __webpack_require__.o = function (object, property) { - return Object.prototype.hasOwnProperty.call(object, property); - }; - /******/ - /******/ // __webpack_public_path__ - /******/ - __webpack_require__.p = ""; - /******/ - /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 10); - /******/ - }) - /************************************************************************/ - /******/([ - /* 0 */ - /***/ (function (module, exports, __webpack_require__) { - - "use strict"; - - - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; - - module.exports = { - type: function type(ob) { - return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); - }, - isObject: function isObject(ob, real) { - if (real) { - return this.type(ob) === "object"; + } else if (type == "object") { + for (var key in sub) { + if (path) { + _encode(sub[key], path + "%5B" + encode(key) + "%5D"); } else { - return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; - } - }, - isFormData: function isFormData(val) { - return typeof FormData !== 'undefined' && val instanceof FormData; - }, - trim: function trim(str) { - return str.replace(/(^\s*)|(\s*$)/g, ''); - }, - encode: function encode(val) { - return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); - }, - formatParams: function formatParams(data) { - var str = ""; - var first = true; - var that = this; - if (!this.isObject(data)) { - return data; + _encode(sub[key], encode(key)); } + } + } else { + if (!first) { + str += "&"; + } + first = false; + str += path + "=" + encode(sub); + } + } - function _encode(sub, path) { - var encode = that.encode; - var type = that.type(sub); - if (type == "array") { - sub.forEach(function (e, i) { - if (!that.isObject(e)) i = ""; - _encode(e, path + ('%5B' + i + '%5D')); - }); - } else if (type == "object") { - for (var key in sub) { - if (path) { - _encode(sub[key], path + "%5B" + encode(key) + "%5D"); - } else { - _encode(sub[key], encode(key)); - } - } - } else { - if (!first) { - str += "&"; - } - first = false; - str += path + "=" + encode(sub); - } - } + _encode(data, ""); + return str; + }, + + // Do not overwrite existing attributes + merge: function merge(a, b) { + for (var key in b) { + if (!a.hasOwnProperty(key)) { + a[key] = b[key]; + } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { + this.merge(a[key], b[key]); + } + } + return a; + } +}; - _encode(data, ""); - return str; - }, +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { - // Do not overwrite existing attributes - merge: function merge(a, b) { - for (var key in b) { - if (!a.hasOwnProperty(key)) { - a[key] = b[key]; - } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { - this.merge(a[key], b[key]); - } - } - return a; - } - }; +function KEEP(_,cb){cb();} +"use strict"; - /***/ - }), - /* 1 */ - /***/ (function (module, exports, __webpack_require__) { +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - function KEEP(_, cb) { - cb(); - } +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - "use strict"; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; +/* + * author: wendu + * email: 824783146@qq.com + **/ - var _createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } +var util = __webpack_require__(0); +var isBrowser = typeof document !== "undefined"; - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - }(); +//EngineWrapper can help generating a http engine quickly through a adapter +function EngineWrapper(adapter) { + var AjaxEngine = function () { + function AjaxEngine() { + _classCallCheck(this, AjaxEngine); + + this.requestHeaders = {}; + this.readyState = 0; + this.timeout = 0; // 0 stands for no timeout + this.responseURL = ""; + this.responseHeaders = {}; + } - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); + _createClass(AjaxEngine, [{ + key: "_call", + value: function _call(name) { + this[name] && this[name].apply(this, [].splice.call(arguments, 1)); + } + }, { + key: "_changeReadyState", + value: function _changeReadyState(state) { + this.readyState = state; + this._call("onreadystatechange"); + } + }, { + key: "open", + value: function open(method, url) { + this.method = method; + if (!url) { + url = location.href; + } else { + url = util.trim(url); + if (url.indexOf("http") !== 0) { + // Normalize the request url + if (isBrowser) { + var t = document.createElement("a"); + t.href = url; + url = t.href; + } + } } + this.responseURL = url; + this._changeReadyState(1); } + }, { + key: "send", + value: function send(arg) { + var _this = this; + + arg = arg || null; + var self = this; + if (adapter) { + var request = { + method: self.method, + url: self.responseURL, + headers: self.requestHeaders || {}, + body: arg + }; + util.merge(request, self._options || {}); + if (request.method === "GET") { + request.body = null; + } + self._changeReadyState(3); + var timer = void 0; + self.timeout = self.timeout || 0; + if (self.timeout > 0) { + timer = setTimeout(function () { + if (self.readyState === 3) { + _this._call("onloadend"); + self._changeReadyState(0); + self._call("ontimeout"); + } + }, self.timeout); + } + request.timeout = self.timeout; + adapter(request, function (response) { - /* - * author: wendu - * email: 824783146@qq.com - **/ + function getAndDelete(key) { + var t = response[key]; + delete response[key]; + return t; + } - var util = __webpack_require__(0); - var isBrowser = typeof document !== "undefined"; + // If the request has already timeout, return + if (self.readyState !== 3) return; + clearTimeout(timer); -//EngineWrapper can help generating a http engine quickly through a adapter - function EngineWrapper(adapter) { - var AjaxEngine = function () { - function AjaxEngine() { - _classCallCheck(this, AjaxEngine); - - this.requestHeaders = {}; - this.readyState = 0; - this.timeout = 0; // 0 stands for no timeout - this.responseURL = ""; - this.responseHeaders = {}; - } + // Make sure the type of status is integer + self.status = getAndDelete("statusCode") - 0; - _createClass(AjaxEngine, [{ - key: "_call", - value: function _call(name) { - this[name] && this[name].apply(this, [].splice.call(arguments, 1)); - } - }, { - key: "_changeReadyState", - value: function _changeReadyState(state) { - this.readyState = state; - this._call("onreadystatechange"); - } - }, { - key: "open", - value: function open(method, url) { - this.method = method; - if (!url) { - url = location.href; - } else { - url = util.trim(url); - if (url.indexOf("http") !== 0) { - // Normalize the request url - if (isBrowser) { - var t = document.createElement("a"); - t.href = url; - url = t.href; - } + var responseText = getAndDelete("responseText"); + var statusMessage = getAndDelete("statusMessage"); + + // Network error, set the status code 0 + if (!self.status) { + self.statusText = responseText; + self._call("onerror", { msg: statusMessage }); + } else { + // Parsing the response headers to array in a object, because + // there may be multiple values with the same header name + var responseHeaders = getAndDelete("headers"); + var headers = {}; + for (var field in responseHeaders) { + var value = responseHeaders[field]; + var key = field.toLowerCase(); + // Is array + if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { + headers[key] = value; + } else { + headers[key] = headers[key] || []; + headers[key].push(value); } } - this.responseURL = url; - this._changeReadyState(1); - } - }, { - key: "send", - value: function send(arg) { - var _this = this; - - arg = arg || null; - var self = this; - if (adapter) { - var request = { - method: self.method, - url: self.responseURL, - headers: self.requestHeaders || {}, - body: arg - }; - util.merge(request, self._options || {}); - if (request.method === "GET") { - request.body = null; - } - self._changeReadyState(3); - var timer = void 0; - self.timeout = self.timeout || 0; - if (self.timeout > 0) { - timer = setTimeout(function () { - if (self.readyState === 3) { - _this._call("onloadend"); - self._changeReadyState(0); - self._call("ontimeout"); - } - }, self.timeout); - } - request.timeout = self.timeout; - adapter(request, function (response) { - - function getAndDelete(key) { - var t = response[key]; - delete response[key]; - return t; - } - - // If the request has already timeout, return - if (self.readyState !== 3) return; - clearTimeout(timer); - - // Make sure the type of status is integer - self.status = getAndDelete("statusCode") - 0; - - var responseText = getAndDelete("responseText"); - var statusMessage = getAndDelete("statusMessage"); - - // Network error, set the status code 0 - if (!self.status) { - self.statusText = responseText; - self._call("onerror", {msg: statusMessage}); - } else { - // Parsing the response headers to array in a object, because - // there may be multiple values with the same header name - var responseHeaders = getAndDelete("headers"); - var headers = {}; - for (var field in responseHeaders) { - var value = responseHeaders[field]; - var key = field.toLowerCase(); - // Is array - if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { - headers[key] = value; - } else { - headers[key] = headers[key] || []; - headers[key].push(value); - } - } - var cookies = headers["set-cookie"]; - if (isBrowser && cookies) { - cookies.forEach(function (e) { - // Remove the http-Only property of the cookie - // so that JavaScript can operate it. - document.cookie = e.replace(/;\s*httpOnly/ig, ""); - }); - } - self.responseHeaders = headers; - // Set the fields of engine from response - self.statusText = statusMessage || ""; - self.response = self.responseText = responseText; - self._response = response; - self._changeReadyState(4); - self._call("onload"); - } - self._call("onloadend"); + var cookies = headers["set-cookie"]; + if (isBrowser && cookies) { + cookies.forEach(function (e) { + // Remove the http-Only property of the cookie + // so that JavaScript can operate it. + document.cookie = e.replace(/;\s*httpOnly/ig, ""); }); - } else { - console.error("Ajax require adapter"); - } - } - }, { - key: "setRequestHeader", - value: function setRequestHeader(key, value) { - this.requestHeaders[util.trim(key)] = value; - } - }, { - key: "getResponseHeader", - value: function getResponseHeader(key) { - return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; - } - }, { - key: "getAllResponseHeaders", - value: function getAllResponseHeaders() { - var str = ""; - for (var key in this.responseHeaders) { - str += key + ":" + this.getResponseHeader(key) + "\r\n"; } - return str || null; - } - }, { - key: "abort", - value: function abort(msg) { - this._changeReadyState(0); - this._call("onerror", {msg: msg}); - this._call("onloadend"); + self.responseHeaders = headers; + // Set the fields of engine from response + self.statusText = statusMessage || ""; + self.response = self.responseText = responseText; + self._response = response; + self._changeReadyState(4); + self._call("onload"); } - }], [{ - key: "setAdapter", - value: function setAdapter(requestAdapter) { - adapter = requestAdapter; - } - }]); - - return AjaxEngine; - }(); - - return AjaxEngine; + self._call("onloadend"); + }); + } else { + console.error("Ajax require adapter"); + } + } + }, { + key: "setRequestHeader", + value: function setRequestHeader(key, value) { + this.requestHeaders[util.trim(key)] = value; + } + }, { + key: "getResponseHeader", + value: function getResponseHeader(key) { + return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; + } + }, { + key: "getAllResponseHeaders", + value: function getAllResponseHeaders() { + var str = ""; + for (var key in this.responseHeaders) { + str += key + ":" + this.getResponseHeader(key) + "\r\n"; + } + return str || null; + } + }, { + key: "abort", + value: function abort(msg) { + this._changeReadyState(0); + this._call("onerror", { msg: msg }); + this._call("onloadend"); } + }], [{ + key: "setAdapter", + value: function setAdapter(requestAdapter) { + adapter = requestAdapter; + } + }]); -// learn more about keep-loader: https://github.com/wendux/keep-loader - ; - module.exports = EngineWrapper; + return AjaxEngine; + }(); - /***/ - }), - /* 2 */ - /***/ (function (module, exports, __webpack_require__) { + return AjaxEngine; +} - function KEEP(_, cb) { - cb(); - } +// learn more about keep-loader: https://github.com/wendux/keep-loader +; +module.exports = EngineWrapper; - "use strict"; +/***/ }), +/* 2 */ +/***/ (function(module, exports, __webpack_require__) { - var _createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } +function KEEP(_,cb){cb();} +"use strict"; - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - }(); +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } - } +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - var utils = __webpack_require__(0); - var isBrowser = typeof document !== "undefined"; +var utils = __webpack_require__(0); +var isBrowser = typeof document !== "undefined"; - var Fly = function () { - function Fly(engine) { - _classCallCheck(this, Fly); +var Fly = function () { + function Fly(engine) { + _classCallCheck(this, Fly); - this.engine = engine || XMLHttpRequest; + this.engine = engine || XMLHttpRequest; - this.default = this; //For typeScript + this.default = this; //For typeScript - /** - * Add lock/unlock API for interceptor. - * - * Once an request/response interceptor is locked, the incoming request/response - * will be added to a queue before they enter the interceptor, they will not be - * continued until the interceptor is unlocked. - * - * @param [interceptor] either is interceptors.request or interceptors.response - */ - function wrap(interceptor) { - var resolve = void 0; - var reject = void 0; + /** + * Add lock/unlock API for interceptor. + * + * Once an request/response interceptor is locked, the incoming request/response + * will be added to a queue before they enter the interceptor, they will not be + * continued until the interceptor is unlocked. + * + * @param [interceptor] either is interceptors.request or interceptors.response + */ + function wrap(interceptor) { + var resolve = void 0; + var reject = void 0; - function _clear() { - interceptor.p = resolve = reject = null; - } + function _clear() { + interceptor.p = resolve = reject = null; + } - utils.merge(interceptor, { - lock: function lock() { - if (!resolve) { - interceptor.p = new Promise(function (_resolve, _reject) { - resolve = _resolve; - reject = _reject; - }); - } - }, - unlock: function unlock() { - if (resolve) { - resolve(); - _clear(); - } - }, - clear: function clear() { - if (reject) { - reject("cancel"); - _clear(); - } - } + utils.merge(interceptor, { + lock: function lock() { + if (!resolve) { + interceptor.p = new Promise(function (_resolve, _reject) { + resolve = _resolve; + reject = _reject; }); } + }, + unlock: function unlock() { + if (resolve) { + resolve(); + _clear(); + } + }, + clear: function clear() { + if (reject) { + reject("cancel"); + _clear(); + } + } + }); + } - var interceptors = this.interceptors = { - response: { - use: function use(handler, onerror) { - this.handler = handler; - this.onerror = onerror; - } - }, - request: { - use: function use(handler) { - this.handler = handler; - } - } - }; - - var irq = interceptors.request; - var irp = interceptors.response; - wrap(irp); - wrap(irq); - - this.config = { - method: "GET", - baseURL: "", - headers: {}, - timeout: 0, - params: {}, // Default Url params - parseJson: true, // Convert response data to JSON object automatically. - withCredentials: false - }; + var interceptors = this.interceptors = { + response: { + use: function use(handler, onerror) { + this.handler = handler; + this.onerror = onerror; } + }, + request: { + use: function use(handler) { + this.handler = handler; + } + } + }; - _createClass(Fly, [{ - key: "request", - value: function request(url, data, options) { - var _this = this; - - var engine = new this.engine(); - var contentType = "Content-Type"; - var contentTypeLowerCase = contentType.toLowerCase(); - var interceptors = this.interceptors; - var requestInterceptor = interceptors.request; - var responseInterceptor = interceptors.response; - var requestInterceptorHandler = requestInterceptor.handler; - var promise = new Promise(function (resolve, reject) { - if (utils.isObject(url)) { - options = url; - url = options.url; - } - options = options || {}; - options.headers = options.headers || {}; + var irq = interceptors.request; + var irp = interceptors.response; + wrap(irp); + wrap(irq); + + this.config = { + method: "GET", + baseURL: "", + headers: {}, + timeout: 0, + params: {}, // Default Url params + parseJson: true, // Convert response data to JSON object automatically. + withCredentials: false + }; + } - function isPromise(p) { - // some polyfill implementation of Promise may be not standard, - // so, we test by duck-typing - return p && p.then && p.catch; - } + _createClass(Fly, [{ + key: "request", + value: function request(url, data, options) { + var _this = this; + + var engine = new this.engine(); + var contentType = "Content-Type"; + var contentTypeLowerCase = contentType.toLowerCase(); + var interceptors = this.interceptors; + var requestInterceptor = interceptors.request; + var responseInterceptor = interceptors.response; + var requestInterceptorHandler = requestInterceptor.handler; + var promise = new Promise(function (resolve, reject) { + if (utils.isObject(url)) { + options = url; + url = options.url; + } + options = options || {}; + options.headers = options.headers || {}; - /** - * If the request/response interceptor has been locked, - * the new request/response will enter a queue. otherwise, it will be performed directly. - * @param [promise] if the promise exist, means the interceptor is locked. - * @param [callback] - */ - function enqueueIfLocked(promise, callback) { - if (promise) { - promise.then(function () { - callback(); - }); - } else { - callback(); - } - } + function isPromise(p) { + // some polyfill implementation of Promise may be not standard, + // so, we test by duck-typing + return p && p.then && p.catch; + } - // make the http request - function makeRequest(options) { - data = options.body; - // Normalize the request url - url = utils.trim(options.url); - var baseUrl = utils.trim(options.baseURL || ""); - if (!url && isBrowser && !baseUrl) url = location.href; - if (url.indexOf("http") !== 0) { - var isAbsolute = url[0] === "/"; - if (!baseUrl && isBrowser) { - var arr = location.pathname.split("/"); - arr.pop(); - baseUrl = location.protocol + "//" + location.host + (isAbsolute ? "" : arr.join("/")); - } - if (baseUrl[baseUrl.length - 1] !== "/") { - baseUrl += "/"; - } - url = baseUrl + (isAbsolute ? url.substr(1) : url); - if (isBrowser) { - - // Normalize the url which contains the ".." or ".", such as - // "http://xx.com/aa/bb/../../xx" to "http://xx.com/xx" . - var t = document.createElement("a"); - t.href = url; - url = t.href; - } - } + /** + * If the request/response interceptor has been locked, + * the new request/response will enter a queue. otherwise, it will be performed directly. + * @param [promise] if the promise exist, means the interceptor is locked. + * @param [callback] + */ + function enqueueIfLocked(promise, callback) { + if (promise) { + promise.then(function () { + callback(); + }); + } else { + callback(); + } + } - var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; - var dataType = utils.type(data); - var params = options.params || {}; + // make the http request + function makeRequest(options) { + data = options.body; + // Normalize the request url + url = utils.trim(options.url); + var baseUrl = utils.trim(options.baseURL || ""); + if (!url && isBrowser && !baseUrl) url = location.href; + if (url.indexOf("http") !== 0) { + var isAbsolute = url[0] === "/"; + if (!baseUrl && isBrowser) { + var arr = location.pathname.split("/"); + arr.pop(); + baseUrl = location.protocol + "//" + location.host + (isAbsolute ? "" : arr.join("/")); + } + if (baseUrl[baseUrl.length - 1] !== "/") { + baseUrl += "/"; + } + url = baseUrl + (isAbsolute ? url.substr(1) : url); + if (isBrowser) { + + // Normalize the url which contains the ".." or ".", such as + // "http://xx.com/aa/bb/../../xx" to "http://xx.com/xx" . + var t = document.createElement("a"); + t.href = url; + url = t.href; + } + } - // merge url params when the method is "GET" (data is object) - if (needQuery && dataType === "object") { - params = utils.merge(data, params); - } - // encode params to String - params = utils.formatParams(params); + var responseType = utils.trim(options.responseType || ""); + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; + var dataType = utils.type(data); + var params = options.params || {}; - // save url params - var _params = []; - if (params) { - _params.push(params); - } - // Add data to url params when the method is "GET" (data is String) - if (needQuery && data && dataType === "string") { - _params.push(data); - } + // merge url params when the method is "GET" (data is object) + if (needQuery && dataType === "object") { + params = utils.merge(data, params); + } + // encode params to String + params = utils.formatParams(params); - // make the final url - if (_params.length > 0) { - url += (url.indexOf("?") === -1 ? "?" : "&") + _params.join("&"); - } + // save url params + var _params = []; + if (params) { + _params.push(params); + } + // Add data to url params when the method is "GET" (data is String) + if (needQuery && data && dataType === "string") { + _params.push(data); + } - engine.open(options.method, url); + // make the final url + if (_params.length > 0) { + url += (url.indexOf("?") === -1 ? "?" : "&") + _params.join("&"); + } - // try catch for ie >=9 - try { - engine.withCredentials = !!options.withCredentials; - engine.timeout = options.timeout || 0; - if (responseType !== "stream") { - engine.responseType = responseType; - } - } catch (e) { - } + engine.open(options.method, url); - var customContentType = options.headers[contentType] || options.headers[contentTypeLowerCase]; - - // default content type - var _contentType = "application/x-www-form-urlencoded"; - // If the request data is json object, transforming it to json string, - // and set request content-type to "json". In browser, the data will - // be sent as RequestBody instead of FormData - if (utils.trim((customContentType || "").toLowerCase()) === _contentType) { - data = utils.formatParams(data); - } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - _contentType = 'application/json;charset=utf-8'; - data = JSON.stringify(data); - } - //If user doesn't set content-type, set default. - if (!(customContentType || needQuery)) { - options.headers[contentType] = _contentType; - } + // try catch for ie >=9 + try { + engine.withCredentials = !!options.withCredentials; + engine.timeout = options.timeout || 0; + if (responseType !== "stream") { + engine.responseType = responseType; + } + } catch (e) {} + + var customContentType = options.headers[contentType] || options.headers[contentTypeLowerCase]; + + // default content type + var _contentType = "application/x-www-form-urlencoded"; + // If the request data is json object, transforming it to json string, + // and set request content-type to "json". In browser, the data will + // be sent as RequestBody instead of FormData + if (utils.trim((customContentType || "").toLowerCase()) === _contentType) { + data = utils.formatParams(data); + } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { + _contentType = 'application/json;charset=utf-8'; + data = JSON.stringify(data); + } + //If user doesn't set content-type, set default. + if (!(customContentType || needQuery)) { + options.headers[contentType] = _contentType; + } - for (var k in options.headers) { - if (k === contentType && utils.isFormData(data)) { - // Delete the content-type, Let the browser set it - delete options.headers[k]; - } else { - try { - // In browser environment, some header fields are readonly, - // write will cause the exception . - engine.setRequestHeader(k, options.headers[k]); - } catch (e) { - } - } - } + for (var k in options.headers) { + if (k === contentType && utils.isFormData(data)) { + // Delete the content-type, Let the browser set it + delete options.headers[k]; + } else { + try { + // In browser environment, some header fields are readonly, + // write will cause the exception . + engine.setRequestHeader(k, options.headers[k]); + } catch (e) {} + } + } - function onresult(handler, data, type) { - enqueueIfLocked(responseInterceptor.p, function () { - if (handler) { - //如果失败,添加请求信息 - if (type) { - data.request = options; - } - var ret = handler.call(responseInterceptor, data, Promise); - data = ret === undefined ? data : ret; - } - if (!isPromise(data)) { - data = Promise[type === 0 ? "resolve" : "reject"](data); - } - data.then(function (d) { - resolve(d); - }).catch(function (e) { - reject(e); - }); - }); + function onresult(handler, data, type) { + enqueueIfLocked(responseInterceptor.p, function () { + if (handler) { + //如果失败,添加请求信息 + if (type) { + data.request = options; } + var ret = handler.call(responseInterceptor, data, Promise); + data = ret === undefined ? data : ret; + } + if (!isPromise(data)) { + data = Promise[type === 0 ? "resolve" : "reject"](data); + } + data.then(function (d) { + resolve(d); + }).catch(function (e) { + reject(e); + }); + }); + } - function onerror(e) { - e.engine = engine; - onresult(responseInterceptor.onerror, e, -1); - } + function onerror(e) { + e.engine = engine; + onresult(responseInterceptor.onerror, e, -1); + } - function Err(msg, status) { - this.message = msg; - this.status = status; - } + function Err(msg, status) { + this.message = msg; + this.status = status; + } - engine.onload = function () { - try { - // The xhr of IE9 has not response field - var response = engine.response || engine.responseText; - if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { - response = JSON.parse(response); - } - - var headers = engine.responseHeaders; - // In browser - if (!headers) { - headers = {}; - var items = (engine.getAllResponseHeaders() || "").split("\r\n"); - items.pop(); - items.forEach(function (e) { - if (!e) return; - var key = e.split(":")[0]; - headers[key] = engine.getResponseHeader(key); - }); - } - var status = engine.status; - var statusText = engine.statusText; - var _data = { - data: response, - headers: headers, - status: status, - statusText: statusText - }; - // The _response filed of engine is set in adapter which be called in engine-wrapper.js - utils.merge(_data, engine._response); - if (status >= 200 && status < 300 || status === 304) { - _data.engine = engine; - _data.request = options; - onresult(responseInterceptor.handler, _data, 0); - } else { - var e = new Err(statusText, status); - e.response = _data; - onerror(e); - } - } catch (e) { - onerror(new Err(e.msg, engine.status)); - } - }; - - engine.onerror = function (e) { - onerror(new Err(e.msg || "Network Error", 0)); - }; - - engine.ontimeout = function () { - onerror(new Err("timeout [ " + engine.timeout + "ms ]", 1)); - }; - engine._options = options; - setTimeout(function () { - engine.send(needQuery ? null : data); - }, 0); + engine.onload = function () { + try { + // The xhr of IE9 has not response field + var response = engine.response || engine.responseText; + if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { + response = JSON.parse(response); } - enqueueIfLocked(requestInterceptor.p, function () { - utils.merge(options, JSON.parse(JSON.stringify(_this.config))); - var headers = options.headers; - headers[contentType] = headers[contentType] || headers[contentTypeLowerCase] || ""; - delete headers[contentTypeLowerCase]; - options.body = data || options.body; - url = utils.trim(url || ""); - options.method = options.method.toUpperCase(); - options.url = url; - var ret = options; - if (requestInterceptorHandler) { - ret = requestInterceptorHandler.call(requestInterceptor, options, Promise) || options; - } - if (!isPromise(ret)) { - ret = Promise.resolve(ret); - } - ret.then(function (d) { - //if options continue - if (d === options) { - makeRequest(d); - } else { - resolve(d); - } - }, function (err) { - reject(err); + var headers = engine.responseHeaders; + // In browser + if (!headers) { + headers = {}; + var items = (engine.getAllResponseHeaders() || "").split("\r\n"); + items.pop(); + items.forEach(function (e) { + if (!e) return; + var key = e.split(":")[0]; + headers[key] = engine.getResponseHeader(key); }); - }); - }); - promise.engine = engine; - return promise; - } - }, { - key: "all", - value: function all(promises) { - return Promise.all(promises); + } + var status = engine.status; + var statusText = engine.statusText; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; + // The _response filed of engine is set in adapter which be called in engine-wrapper.js + utils.merge(_data, engine._response); + if (status >= 200 && status < 300 || status === 304) { + _data.engine = engine; + _data.request = options; + onresult(responseInterceptor.handler, _data, 0); + } else { + var e = new Err(statusText, status); + e.response = _data; + onerror(e); + } + } catch (e) { + onerror(new Err(e.msg, engine.status)); + } + }; + + engine.onerror = function (e) { + onerror(new Err(e.msg || "Network Error", 0)); + }; + + engine.ontimeout = function () { + onerror(new Err("timeout [ " + engine.timeout + "ms ]", 1)); + }; + engine._options = options; + setTimeout(function () { + engine.send(needQuery ? null : data); + }, 0); + } + + enqueueIfLocked(requestInterceptor.p, function () { + utils.merge(options, JSON.parse(JSON.stringify(_this.config))); + var headers = options.headers; + headers[contentType] = headers[contentType] || headers[contentTypeLowerCase] || ""; + delete headers[contentTypeLowerCase]; + options.body = data || options.body; + url = utils.trim(url || ""); + options.method = options.method.toUpperCase(); + options.url = url; + var ret = options; + if (requestInterceptorHandler) { + ret = requestInterceptorHandler.call(requestInterceptor, options, Promise) || options; } - }, { - key: "spread", - value: function spread(callback) { - return function (arr) { - return callback.apply(null, arr); - }; + if (!isPromise(ret)) { + ret = Promise.resolve(ret); } - }]); + ret.then(function (d) { + //if options continue + if (d === options) { + makeRequest(d); + } else { + resolve(d); + } + }, function (err) { + reject(err); + }); + }); + }); + promise.engine = engine; + return promise; + } + }, { + key: "all", + value: function all(promises) { + return Promise.all(promises); + } + }, { + key: "spread", + value: function spread(callback) { + return function (arr) { + return callback.apply(null, arr); + }; + } + }]); - return Fly; - }(); + return Fly; +}(); //For typeScript - Fly.default = Fly; +Fly.default = Fly; - ["get", "post", "put", "patch", "head", "delete"].forEach(function (e) { - Fly.prototype[e] = function (url, data, option) { - return this.request(url, data, utils.merge({method: e}, option)); - }; - }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["get", "post", "put", "patch", "head", "delete"].forEach(function (e) { + Fly.prototype[e] = function (url, data, option) { + return this.request(url, data, utils.merge({ method: e }, option)); + }; +}); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader - ; - module.exports = Fly; +; +module.exports = Fly; - /***/ - }), - /* 3 */, - /* 4 */ - /***/ (function (module, exports, __webpack_require__) { +/***/ }), +/* 3 */, +/* 4 */ +/***/ (function(module, exports, __webpack_require__) { - "use strict"; +"use strict"; //支付宝小程序适配器 - var statusList = { - 11: '无权跨域', - 12: '网络出错', - 13: '超时', - 14: '解码失败', - 19: 'HTTP错误' - }; - module.exports = function (request, responseCallback) { - var con = { - method: request.method, - url: request.url, - dataType: 'text', - headers: request.headers, - data: request.body || {}, - timeout: request.timeout || 20000, - success: function success(res) { - responseCallback({ - statusCode: res.status, - responseText: res.data, - headers: res.headers - }); - }, - fail: function fail(res) { - responseCallback({ - statusCode: res.status || 0, - responseText: res.data, - headers: res.headers, - errMsg: statusList[res.status] || "" - }); - } - }; - my.httpRequest(con); - }; +var statusList = { + 11: '无权跨域', + 12: '网络出错', + 13: '超时', + 14: '解码失败', + 19: 'HTTP错误' +}; +module.exports = function (request, responseCallback) { + var con = { + method: request.method, + url: request.url, + dataType: 'text', + headers: request.headers, + data: request.body || {}, + timeout: request.timeout || 20000, + success: function success(res) { + responseCallback({ + statusCode: res.status, + responseText: res.data, + headers: res.headers + }); + }, + fail: function fail(res) { + responseCallback({ + statusCode: res.status || 0, + responseText: res.data, + headers: res.headers, + errMsg: statusList[res.status] || "" + }); + } + }; + my.httpRequest(con); +}; - /***/ - }), - /* 5 */, - /* 6 */, - /* 7 */, - /* 8 */, - /* 9 */, - /* 10 */ - /***/ (function (module, exports, __webpack_require__) { +/***/ }), +/* 5 */, +/* 6 */, +/* 7 */, +/* 8 */, +/* 9 */, +/* 10 */ +/***/ (function(module, exports, __webpack_require__) { - "use strict"; +"use strict"; //支付宝小程序入口 - var _Fly = __webpack_require__(2); - var EngineWrapper = __webpack_require__(1); - var adapter = __webpack_require__(4); - var aliPayEngine = EngineWrapper(adapter); - module.exports = function (engine) { - return new _Fly(engine || aliPayEngine); - }; - - /***/ - }) - /******/]); -}); +var _Fly = __webpack_require__(2); +var EngineWrapper = __webpack_require__(1); +var adapter = __webpack_require__(4); +var aliPayEngine = EngineWrapper(adapter); +module.exports = function (engine) { + return new _Fly(engine || aliPayEngine); +}; + +/***/ }) +/******/ ]); +}); \ No newline at end of file diff --git a/dist/npm/fly.js b/dist/npm/fly.js index cc1075f..6a2d815 100644 --- a/dist/npm/fly.js +++ b/dist/npm/fly.js @@ -320,7 +320,7 @@ var Fly = function () { } var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; var dataType = utils.type(data); var params = options.params || {}; @@ -424,9 +424,9 @@ var Fly = function () { // The xhr of IE9 has not response field var response = engine.response || engine.responseText; if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { response = JSON.parse(response); } @@ -444,7 +444,7 @@ var Fly = function () { } var status = engine.status; var statusText = engine.statusText; - var _data = {data: response, headers: headers, status: status, statusText: statusText}; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; // The _response filed of engine is set in adapter which be called in engine-wrapper.js utils.merge(_data, engine._response); if (status >= 200 && status < 300 || status === 304) { @@ -532,15 +532,15 @@ Fly.default = Fly; return this.request(url, data, utils.merge({ method: e }, option)); }; }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader ; module.exports = Fly; /***/ }) /******/ ]); -}); +}); \ No newline at end of file diff --git a/dist/npm/hap.js b/dist/npm/hap.js index 7cce652..ec3a584 100644 --- a/dist/npm/hap.js +++ b/dist/npm/hap.js @@ -73,8 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 11); +/******/ return __webpack_require__(__webpack_require__.s = 11); /******/ }) /************************************************************************/ /******/ ([ @@ -519,7 +518,7 @@ var Fly = function () { } var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; var dataType = utils.type(data); var params = options.params || {}; @@ -623,9 +622,9 @@ var Fly = function () { // The xhr of IE9 has not response field var response = engine.response || engine.responseText; if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { response = JSON.parse(response); } @@ -643,7 +642,7 @@ var Fly = function () { } var status = engine.status; var statusText = engine.statusText; - var _data = {data: response, headers: headers, status: status, statusText: statusText}; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; // The _response filed of engine is set in adapter which be called in engine-wrapper.js utils.merge(_data, engine._response); if (status >= 200 && status < 300 || status === 304) { @@ -731,19 +730,19 @@ Fly.default = Fly; return this.request(url, data, utils.merge({ method: e }, option)); }; }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader ; module.exports = Fly; /***/ }), /* 3 */, - /* 4 */, - /* 5 */ +/* 4 */, +/* 5 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -778,9 +777,9 @@ module.exports = function (fetch) { /* 6 */, /* 7 */, /* 8 */, - /* 9 */, - /* 10 */, - /* 11 */ +/* 9 */, +/* 10 */, +/* 11 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -789,7 +788,7 @@ module.exports = function (fetch) { //quick app entry var Fly = __webpack_require__(2); var EngineWrapper = __webpack_require__(1); - var adapter = __webpack_require__(5); +var adapter = __webpack_require__(5); module.exports = function (fetch) { var hapEngine = EngineWrapper(adapter(fetch)); return new Fly(hapEngine); @@ -797,4 +796,4 @@ module.exports = function (fetch) { /***/ }) /******/ ]); -}); +}); \ No newline at end of file diff --git a/dist/npm/weex.js b/dist/npm/weex.js index 1f188ac..ddc61b2 100644 --- a/dist/npm/weex.js +++ b/dist/npm/weex.js @@ -73,8 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 12); +/******/ return __webpack_require__(__webpack_require__.s = 12); /******/ }) /************************************************************************/ /******/ ([ @@ -519,7 +518,7 @@ var Fly = function () { } var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; var dataType = utils.type(data); var params = options.params || {}; @@ -623,9 +622,9 @@ var Fly = function () { // The xhr of IE9 has not response field var response = engine.response || engine.responseText; if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { response = JSON.parse(response); } @@ -643,7 +642,7 @@ var Fly = function () { } var status = engine.status; var statusText = engine.statusText; - var _data = {data: response, headers: headers, status: status, statusText: statusText}; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; // The _response filed of engine is set in adapter which be called in engine-wrapper.js utils.merge(_data, engine._response); if (status >= 200 && status < 300 || status === 304) { @@ -731,11 +730,11 @@ Fly.default = Fly; return this.request(url, data, utils.merge({ method: e }, option)); }; }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader ; module.exports = Fly; @@ -743,8 +742,8 @@ module.exports = Fly; /***/ }), /* 3 */, /* 4 */, - /* 5 */, - /* 6 */ +/* 5 */, +/* 6 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -777,9 +776,9 @@ module.exports = function (request, responseCallback) { /* 7 */, /* 8 */, /* 9 */, - /* 10 */, - /* 11 */, - /* 12 */ +/* 10 */, +/* 11 */, +/* 12 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -788,7 +787,7 @@ module.exports = function (request, responseCallback) { //weex entry var Fly = __webpack_require__(2); var EngineWrapper = __webpack_require__(1); - var adapter = __webpack_require__(6); +var adapter = __webpack_require__(6); var weexEngine = EngineWrapper(adapter); module.exports = function (engine) { return new Fly(engine || weexEngine); @@ -796,4 +795,4 @@ module.exports = function (engine) { /***/ }) /******/ ]); -}); +}); \ No newline at end of file diff --git a/dist/npm/wx.js b/dist/npm/wx.js index b6bebd3..72b1ca2 100644 --- a/dist/npm/wx.js +++ b/dist/npm/wx.js @@ -73,8 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 13); +/******/ return __webpack_require__(__webpack_require__.s = 13); /******/ }) /************************************************************************/ /******/ ([ @@ -519,7 +518,7 @@ var Fly = function () { } var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; var dataType = utils.type(data); var params = options.params || {}; @@ -623,9 +622,9 @@ var Fly = function () { // The xhr of IE9 has not response field var response = engine.response || engine.responseText; if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { response = JSON.parse(response); } @@ -643,7 +642,7 @@ var Fly = function () { } var status = engine.status; var statusText = engine.statusText; - var _data = {data: response, headers: headers, status: status, statusText: statusText}; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; // The _response filed of engine is set in adapter which be called in engine-wrapper.js utils.merge(_data, engine._response); if (status >= 200 && status < 300 || status === 304) { @@ -731,11 +730,11 @@ Fly.default = Fly; return this.request(url, data, utils.merge({ method: e }, option)); }; }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader ; module.exports = Fly; @@ -744,8 +743,8 @@ module.exports = Fly; /* 3 */, /* 4 */, /* 5 */, - /* 6 */, - /* 7 */ +/* 6 */, +/* 7 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -782,18 +781,18 @@ module.exports = function (request, responseCallback) { /* 8 */, /* 9 */, /* 10 */, - /* 11 */, - /* 12 */, - /* 13 */ +/* 11 */, +/* 12 */, +/* 13 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; //微信小程序入口 - var _Fly = __webpack_require__(2); +var _Fly = __webpack_require__(2); var EngineWrapper = __webpack_require__(1); - var adapter = __webpack_require__(7); +var adapter = __webpack_require__(7); var wxEngine = EngineWrapper(adapter); module.exports = function (engine) { return new _Fly(engine || wxEngine); @@ -801,4 +800,4 @@ module.exports = function (engine) { /***/ }) /******/ ]); -}); +}); \ No newline at end of file diff --git a/dist/umd/ap.umd.min.js b/dist/umd/ap.umd.min.js index b93b3de..7d3f091 100644 --- a/dist/umd/ap.umd.min.js +++ b/dist/umd/ap.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=10)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var T=n.headers[i]||n.headers[u],R="application/x-www-form-urlencoded";s.trim((T||"").toLowerCase())===R?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(R="application/json;charset=utf-8",t=JSON.stringify(t)),T||w||(n.headers[i]=R);for(var k in n.headers)if(k===i&&s.isFormData(t))delete n.headers[k];else try{o.setRequestHeader(k,n.headers[k])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,function(e,t,n){"use strict";var r={11:"无权跨域",12:"网络出错",13:"超时",14:"解码失败",19:"HTTP错误"};e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:"text",headers:e.headers,data:e.body||{},timeout:e.timeout||2e4,success:function(e){t({statusCode:e.status,responseText:e.data,headers:e.headers})},fail:function(e){t({statusCode:e.status||0,responseText:e.data,headers:e.headers,errMsg:r[e.status]||""})}};my.httpRequest(n)}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(4),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=10)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var T=n.headers[i]||n.headers[u],R="application/x-www-form-urlencoded";s.trim((T||"").toLowerCase())===R?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(R="application/json;charset=utf-8",t=JSON.stringify(t)),T||w||(n.headers[i]=R);for(var k in n.headers)if(k===i&&s.isFormData(t))delete n.headers[k];else try{o.setRequestHeader(k,n.headers[k])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,function(e,t,n){"use strict";var r={11:"无权跨域",12:"网络出错",13:"超时",14:"解码失败",19:"HTTP错误"};e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:"text",headers:e.headers,data:e.body||{},timeout:e.timeout||2e4,success:function(e){t({statusCode:e.status,responseText:e.data,headers:e.headers})},fail:function(e){t({statusCode:e.status||0,responseText:e.data,headers:e.headers,errMsg:r[e.status]||""})}};my.httpRequest(n)}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(4),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file diff --git a/dist/umd/fly.umd.min.js b/dist/umd/fly.umd.min.js index 7d1cb8a..5b4b871 100644 --- a/dist/umd/fly.umd.min.js +++ b/dist/umd/fly.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,i+"%5B"+n+"%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},,function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+P.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==j&&(o.responseType=j)}catch(e){}var E=n.headers[a]||n.headers[u],T="application/x-www-form-urlencoded";i.trim((E||"").toLowerCase())===T?t=i.formatParams(t):i.isFormData(t)||-1===["object","array"].indexOf(i.type(t))||(T="application/json;charset=utf-8",t=JSON.stringify(t)),E||O||(n.headers[a]=T);for(var C in n.headers)if(C===a&&i.isFormData(t))delete n.headers[C];else try{o.setRequestHeader(C,n.headers[C])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(a)||"").indexOf("json")&&!i.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var s=(o.getAllResponseHeaders()||"").split("\r\n");s.pop(),s.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,h={data:e,headers:t,status:u,statusText:c};if(i.merge(h,o._response),u>=200&&u<300||304===u)h.engine=o,h.request=n,r(p.handler,h,0);else{var d=new l(c,u);d.response=h,f(d)}}catch(d){f(new l(d.msg,o.status))}},o.onerror=function(e){f(new l(e.msg||"Network Error",0))},o.ontimeout=function(){f(new l("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(O?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;l&&(s=l.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=a}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,i){var s=o.encode,a=o.type(e);if("array"==a)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,i+"%5B"+n+"%5D")});else if("object"==a)for(var u in e)i?t(e[u],i+"%5B"+s(u)+"%5D"):t(e[u],s(u));else r||(n+="&"),r=!1,n+=i+"="+s(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},,function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var o=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+P.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==j&&(o.responseType=j)}catch(e){}var C=n.headers[a]||n.headers[u],T="application/x-www-form-urlencoded";i.trim((C||"").toLowerCase())===T?t=i.formatParams(t):i.isFormData(t)||-1===["object","array"].indexOf(i.type(t))||(T="application/json;charset=utf-8",t=JSON.stringify(t)),C||O||(n.headers[a]=T);for(var q in n.headers)if(q===a&&i.isFormData(t))delete n.headers[q];else try{o.setRequestHeader(q,n.headers[q])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(a)||"").indexOf("json")&&!i.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var s=(o.getAllResponseHeaders()||"").split("\r\n");s.pop(),s.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,h={data:e,headers:t,status:u,statusText:c};if(i.merge(h,o._response),u>=200&&u<300||304===u)h.engine=o,h.request=n,r(p.handler,h,0);else{var d=new l(c,u);d.response=h,f(d)}}catch(d){f(new l(d.msg,o.status))}},o.onerror=function(e){f(new l(e.msg||"Network Error",0))},o.ontimeout=function(){f(new l("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(O?null:t)},0)}i.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){i.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[a]=o[a]||o[u]||"",delete o[u],n.body=t||n.body,e=i.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var s=n;l&&(s=l.call(f,n,Promise)||n),d(s)||(s=Promise.resolve(s)),s.then(function(e){e===n?y(e):c(e)},function(e){h(e)})})});return h.engine=o,h}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,r){return this.request(t,n,i.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=a}])}); \ No newline at end of file diff --git a/dist/umd/hap.umd.min.js b/dist/umd/hap.umd.min.js index 72d8d16..799746f 100644 --- a/dist/umd/hap.umd.min.js +++ b/dist/umd/hap.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=11)}([function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":o(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var i=r.encode,a=r.type(e);if("array"==a)e.forEach(function(e,n){r.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==a)for(var u in e)s?t(e[u],s+"%5B"+i(u)+"%5D"):t(e[u],i(u));else o||(n+="&"),o=!1,n+=s+"="+i(e)}var n="",o=!0,r=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return function(){function t(){o(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return i(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=a.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var o=this;if(e){var r={method:o.method,url:o.responseURL,headers:o.requestHeaders||{},body:t};a.merge(r,o._options||{}),"GET"===r.method&&(r.body=null),o._changeReadyState(3);var i=void 0;o.timeout=o.timeout||0,o.timeout>0&&(i=setTimeout(function(){3===o.readyState&&(n._call("onloadend"),o._changeReadyState(0),o._call("ontimeout"))},o.timeout)),r.timeout=o.timeout,e(r,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===o.readyState){clearTimeout(i),o.status=t("statusCode")-0;var n=t("responseText"),r=t("statusMessage");if(o.status){var a=t("headers"),c={};for(var f in a){var l=a[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),o.responseHeaders=c,o.statusText=r||"",o.response=o.responseText=n,o._response=e,o._changeReadyState(4),o._call("onload")}else o.statusText=n,o._call("onerror",{msg:r});o._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[a.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+O.join("&")),r.open(n.method,e);try{r.withCredentials=!!n.withCredentials,r.timeout=n.timeout||0,"stream"!==S&&(r.responseType=S)}catch(e){}var k=n.headers[a]||n.headers[u],R="application/x-www-form-urlencoded";s.trim((k||"").toLowerCase())===R?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(R="application/json;charset=utf-8",t=JSON.stringify(t)),k||x||(n.headers[a]=R);for(var T in n.headers)if(T===a&&s.isFormData(t))delete n.headers[T];else try{r.setRequestHeader(T,n.headers[T])}catch(e){}r.onload=function(){try{var e=r.response||r.responseText;e&&n.parseJson&&-1!==(r.getResponseHeader(a)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=r.responseHeaders;if(!t){t={};var i=(r.getAllResponseHeaders()||"").split("\r\n");i.pop(),i.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=r.getResponseHeader(n)}})}var u=r.status,c=r.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,r._response),u>=200&&u<300||304===u)d.engine=r,d.request=n,o(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,r.status))}},r.onerror=function(e){f(new p(e.msg||"Network Error",0))},r.ontimeout=function(){f(new p("timeout [ "+r.timeout+"ms ]",1))},r._options=n,setTimeout(function(){r.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(o.config)));var r=n.headers;r[a]=r[a]||r[u]||"",delete r[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var i=n;p&&(i=p.call(f,n,Promise)||n),h(i)||(i=Promise.resolve(i)),i.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=r,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,o){return this.request(t,n,s.merge({method:e},o))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=a},,,function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports=function(e){return function(t,n){t.data=t.body,t.header=t.headers,t.complete=function(e){"object"!==(void 0===e?"undefined":o(e))&&(e={code:0,msg:e}),n({statusCode:e.code||0,responseText:e.data,headers:e.headers,statusMessage:e.msg})},e.fetch(t)}}},,,,,,function(e,t,n){"use strict";var o=n(2),r=n(1),s=n(5);e.exports=function(e){var t=r(s(e));return new o(t)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var o in n)("object"==typeof exports?exports:e)[o]=n[o]}}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=11)}([function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":o(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var i=r.encode,a=r.type(e);if("array"==a)e.forEach(function(e,n){r.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==a)for(var u in e)s?t(e[u],s+"%5B"+i(u)+"%5D"):t(e[u],i(u));else o||(n+="&"),o=!1,n+=s+"="+i(e)}var n="",o=!0,r=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return function(){function t(){o(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return i(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=a.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var o=this;if(e){var r={method:o.method,url:o.responseURL,headers:o.requestHeaders||{},body:t};a.merge(r,o._options||{}),"GET"===r.method&&(r.body=null),o._changeReadyState(3);var i=void 0;o.timeout=o.timeout||0,o.timeout>0&&(i=setTimeout(function(){3===o.readyState&&(n._call("onloadend"),o._changeReadyState(0),o._call("ontimeout"))},o.timeout)),r.timeout=o.timeout,e(r,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===o.readyState){clearTimeout(i),o.status=t("statusCode")-0;var n=t("responseText"),r=t("statusMessage");if(o.status){var a=t("headers"),c={};for(var f in a){var l=a[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),o.responseHeaders=c,o.statusText=r||"",o.response=o.responseText=n,o._response=e,o._changeReadyState(4),o._call("onload")}else o.statusText=n,o._call("onerror",{msg:r});o._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[a.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+O.join("&")),r.open(n.method,e);try{r.withCredentials=!!n.withCredentials,r.timeout=n.timeout||0,"stream"!==S&&(r.responseType=S)}catch(e){}var k=n.headers[a]||n.headers[u],R="application/x-www-form-urlencoded";s.trim((k||"").toLowerCase())===R?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(R="application/json;charset=utf-8",t=JSON.stringify(t)),k||x||(n.headers[a]=R);for(var _ in n.headers)if(_===a&&s.isFormData(t))delete n.headers[_];else try{r.setRequestHeader(_,n.headers[_])}catch(e){}r.onload=function(){try{var e=r.response||r.responseText;e&&n.parseJson&&-1!==(r.getResponseHeader(a)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=r.responseHeaders;if(!t){t={};var i=(r.getAllResponseHeaders()||"").split("\r\n");i.pop(),i.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=r.getResponseHeader(n)}})}var u=r.status,c=r.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,r._response),u>=200&&u<300||304===u)d.engine=r,d.request=n,o(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,r.status))}},r.onerror=function(e){f(new p(e.msg||"Network Error",0))},r.ontimeout=function(){f(new p("timeout [ "+r.timeout+"ms ]",1))},r._options=n,setTimeout(function(){r.send(x?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(o.config)));var r=n.headers;r[a]=r[a]||r[u]||"",delete r[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var i=n;p&&(i=p.call(f,n,Promise)||n),h(i)||(i=Promise.resolve(i)),i.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=r,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();a.default=a,["get","post","put","patch","head","delete"].forEach(function(e){a.prototype[e]=function(t,n,o){return this.request(t,n,s.merge({method:e},o))}}),["lock","unlock","clear"].forEach(function(e){a.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=a},,,function(e,t,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports=function(e){return function(t,n){t.data=t.body,t.header=t.headers,t.complete=function(e){"object"!==(void 0===e?"undefined":o(e))&&(e={code:0,msg:e}),n({statusCode:e.code||0,responseText:e.data,headers:e.headers,statusMessage:e.msg})},e.fetch(t)}}},,,,,,function(e,t,n){"use strict";var o=n(2),r=n(1),s=n(5);e.exports=function(e){var t=r(s(e));return new o(t)}}])}); \ No newline at end of file diff --git a/dist/umd/weex.umd.min.js b/dist/umd/weex.umd.min.js index 561b870..fa63a28 100644 --- a/dist/umd/weex.umd.min.js +++ b/dist/umd/weex.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=12)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var T=n.headers[i]||n.headers[u],k="application/x-www-form-urlencoded";s.trim((T||"").toLowerCase())===k?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(k="application/json;charset=utf-8",t=JSON.stringify(t)),T||w||(n.headers[i]=k);for(var R in n.headers)if(R===i&&s.isFormData(t))delete n.headers[R];else try{o.setRequestHeader(R,n.headers[R])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,,,function(e,t,n){"use strict";var r=weex.requireModule("stream");e.exports=function(e,t){e.body||delete e.body,r.fetch(e,function(e){t(e.ok?{statusCode:e.status,responseText:e.data,headers:e.headers,statusMessage:e.statusText}:{statusCode:e.status||0,statusMessage:e.statusText})})}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(6),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=12)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var k=n.headers[i]||n.headers[u],T="application/x-www-form-urlencoded";s.trim((k||"").toLowerCase())===T?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(T="application/json;charset=utf-8",t=JSON.stringify(t)),k||w||(n.headers[i]=T);for(var R in n.headers)if(R===i&&s.isFormData(t))delete n.headers[R];else try{o.setRequestHeader(R,n.headers[R])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,,,function(e,t,n){"use strict";var r=weex.requireModule("stream");e.exports=function(e,t){e.body||delete e.body,r.fetch(e,function(e){t(e.ok?{statusCode:e.status,responseText:e.data,headers:e.headers,statusMessage:e.statusText}:{statusCode:e.status||0,statusMessage:e.statusText})})}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(6),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file diff --git a/dist/umd/wx.umd.min.js b/dist/umd/wx.umd.min.js index 2b5acc3..bdecec9 100644 --- a/dist/umd/wx.umd.min.js +++ b/dist/umd/wx.umd.min.js @@ -1 +1 @@ -!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=13)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var T=n.headers[i]||n.headers[u],k="application/x-www-form-urlencoded";s.trim((T||"").toLowerCase())===k?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(k="application/json;charset=utf-8",t=JSON.stringify(t)),T||w||(n.headers[i]=k);for(var R in n.headers)if(R===i&&s.isFormData(t))delete n.headers[R];else try{o.setRequestHeader(R,n.headers[R])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,,,,function(e,t,n){"use strict";e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:e.dataType||void 0,header:e.headers,data:e.body||{},responseType:e.responseType||"text",success:function(e){t({statusCode:e.statusCode,responseText:e.data,headers:e.header,statusMessage:e.errMsg})},fail:function(e){t({statusCode:e.statusCode||0,statusMessage:e.errMsg})}};wx.request(n)}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(7),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=13)}([function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};e.exports={type:function(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()},isObject:function(e,t){return t?"object"===this.type(e):e&&"object"===(void 0===e?"undefined":r(e))},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},trim:function(e){return e.replace(/(^\s*)|(\s*$)/g,"")},encode:function(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")},formatParams:function(e){function t(e,s){var a=o.encode,i=o.type(e);if("array"==i)e.forEach(function(e,n){o.isObject(e)||(n=""),t(e,s+"%5B"+n+"%5D")});else if("object"==i)for(var u in e)s?t(e[u],s+"%5B"+a(u)+"%5D"):t(e[u],a(u));else r||(n+="&"),r=!1,n+=s+"="+a(e)}var n="",r=!0,o=this;return this.isObject(e)?(t(e,""),n):e},merge:function(e,t){for(var n in t)e.hasOwnProperty(n)?this.isObject(t[n],1)&&this.isObject(e[n],1)&&this.merge(e[n],t[n]):e[n]=t[n];return e}}},function(e,t,n){function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){return function(){function t(){r(this,t),this.requestHeaders={},this.readyState=0,this.timeout=0,this.responseURL="",this.responseHeaders={}}return a(t,[{key:"_call",value:function(e){this[e]&&this[e].apply(this,[].splice.call(arguments,1))}},{key:"_changeReadyState",value:function(e){this.readyState=e,this._call("onreadystatechange")}},{key:"open",value:function(e,t){if(this.method=e,t){if(t=i.trim(t),0!==t.indexOf("http")&&u){var n=document.createElement("a");n.href=t,t=n.href}}else t=location.href;this.responseURL=t,this._changeReadyState(1)}},{key:"send",value:function(t){var n=this;t=t||null;var r=this;if(e){var o={method:r.method,url:r.responseURL,headers:r.requestHeaders||{},body:t};i.merge(o,r._options||{}),"GET"===o.method&&(o.body=null),r._changeReadyState(3);var a=void 0;r.timeout=r.timeout||0,r.timeout>0&&(a=setTimeout(function(){3===r.readyState&&(n._call("onloadend"),r._changeReadyState(0),r._call("ontimeout"))},r.timeout)),o.timeout=r.timeout,e(o,function(e){function t(t){var n=e[t];return delete e[t],n}if(3===r.readyState){clearTimeout(a),r.status=t("statusCode")-0;var n=t("responseText"),o=t("statusMessage");if(r.status){var i=t("headers"),c={};for(var f in i){var l=i[f],p=f.toLowerCase();"object"===(void 0===l?"undefined":s(l))?c[p]=l:(c[p]=c[p]||[],c[p].push(l))}var d=c["set-cookie"];u&&d&&d.forEach(function(e){document.cookie=e.replace(/;\s*httpOnly/gi,"")}),r.responseHeaders=c,r.statusText=o||"",r.response=r.responseText=n,r._response=e,r._changeReadyState(4),r._call("onload")}else r.statusText=n,r._call("onerror",{msg:o});r._call("onloadend")}})}else console.error("Ajax require adapter")}},{key:"setRequestHeader",value:function(e,t){this.requestHeaders[i.trim(e)]=t}},{key:"getResponseHeader",value:function(e){return(this.responseHeaders[e.toLowerCase()]||"").toString()||null}},{key:"getAllResponseHeaders",value:function(){var e="";for(var t in this.responseHeaders)e+=t+":"+this.getResponseHeader(t)+"\r\n";return e||null}},{key:"abort",value:function(e){this._changeReadyState(0),this._call("onerror",{msg:e}),this._call("onloadend")}}],[{key:"setAdapter",value:function(t){e=t}}]),t}()}var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var n=0;n0&&(e+=(-1===e.indexOf("?")?"?":"&")+S.join("&")),o.open(n.method,e);try{o.withCredentials=!!n.withCredentials,o.timeout=n.timeout||0,"stream"!==x&&(o.responseType=x)}catch(e){}var T=n.headers[i]||n.headers[u],k="application/x-www-form-urlencoded";s.trim((T||"").toLowerCase())===k?t=s.formatParams(t):s.isFormData(t)||-1===["object","array"].indexOf(s.type(t))||(k="application/json;charset=utf-8",t=JSON.stringify(t)),T||w||(n.headers[i]=k);for(var R in n.headers)if(R===i&&s.isFormData(t))delete n.headers[R];else try{o.setRequestHeader(R,n.headers[R])}catch(e){}o.onload=function(){try{var e=o.response||o.responseText;e&&n.parseJson&&-1!==(o.getResponseHeader(i)||"").indexOf("json")&&!s.isObject(e)&&(e=JSON.parse(e));var t=o.responseHeaders;if(!t){t={};var a=(o.getAllResponseHeaders()||"").split("\r\n");a.pop(),a.forEach(function(e){if(e){var n=e.split(":")[0];t[n]=o.getResponseHeader(n)}})}var u=o.status,c=o.statusText,d={data:e,headers:t,status:u,statusText:c};if(s.merge(d,o._response),u>=200&&u<300||304===u)d.engine=o,d.request=n,r(l.handler,d,0);else{var h=new p(c,u);h.response=d,f(h)}}catch(h){f(new p(h.msg,o.status))}},o.onerror=function(e){f(new p(e.msg||"Network Error",0))},o.ontimeout=function(){f(new p("timeout [ "+o.timeout+"ms ]",1))},o._options=n,setTimeout(function(){o.send(w?null:t)},0)}s.isObject(e)&&(n=e,e=n.url),n=n||{},n.headers=n.headers||{},m(f.p,function(){s.merge(n,JSON.parse(JSON.stringify(r.config)));var o=n.headers;o[i]=o[i]||o[u]||"",delete o[u],n.body=t||n.body,e=s.trim(e||""),n.method=n.method.toUpperCase(),n.url=e;var a=n;p&&(a=p.call(f,n,Promise)||n),h(a)||(a=Promise.resolve(a)),a.then(function(e){e===n?y(e):c(e)},function(e){d(e)})})});return d.engine=o,d}},{key:"all",value:function(e){return Promise.all(e)}},{key:"spread",value:function(e){return function(t){return e.apply(null,t)}}}]),e}();i.default=i,["get","post","put","patch","head","delete"].forEach(function(e){i.prototype[e]=function(t,n,r){return this.request(t,n,s.merge({method:e},r))}}),["lock","unlock","clear"].forEach(function(e){i.prototype[e]=function(){this.interceptors.request[e]()}}),e.exports=i},,,,,function(e,t,n){"use strict";e.exports=function(e,t){var n={method:e.method,url:e.url,dataType:e.dataType||void 0,header:e.headers,data:e.body||{},responseType:e.responseType||"text",success:function(e){t({statusCode:e.statusCode,responseText:e.data,headers:e.header,statusMessage:e.errMsg})},fail:function(e){t({statusCode:e.statusCode||0,statusMessage:e.errMsg})}};wx.request(n)}},,,,,,function(e,t,n){"use strict";var r=n(2),o=n(1),s=n(7),a=o(s);e.exports=function(e){return new r(e||a)}}])}); \ No newline at end of file diff --git a/miniprogram_dist/engine-wrapper.js b/miniprogram_dist/engine-wrapper.js index 9478900..466bc1f 100644 --- a/miniprogram_dist/engine-wrapper.js +++ b/miniprogram_dist/engine-wrapper.js @@ -1,430 +1,359 @@ (function webpackUniversalModuleDefinition(root, factory) { - if (typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if (typeof define === 'function' && define.amd) - define([], factory); - else { - var a = factory(); - for (var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; - } -})(this, function () { - return /******/ (function (modules) { // webpackBootstrap - /******/ // The module cache - /******/ - var installedModules = {}; - /******/ - /******/ // The require function - /******/ - function __webpack_require__(moduleId) { - /******/ - /******/ // Check if module is in cache - /******/ - if (installedModules[moduleId]) { - /******/ - return installedModules[moduleId].exports; - /******/ - } - /******/ // Create a new module (and put it into the cache) - /******/ - var module = installedModules[moduleId] = { - /******/ i: moduleId, - /******/ l: false, - /******/ exports: {} - /******/ - }; - /******/ - /******/ // Execute the module function - /******/ - modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); - /******/ - /******/ // Flag the module as loaded - /******/ - module.l = true; - /******/ - /******/ // Return the exports of the module - /******/ - return module.exports; - /******/ - } + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else { + var a = factory(); + for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; + } +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // identity function for calling harmony imports with the correct context +/******/ __webpack_require__.i = function(value) { return value; }; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 1); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { - /******/ - /******/ - /******/ // expose the modules object (__webpack_modules__) - /******/ - __webpack_require__.m = modules; - /******/ - /******/ // expose the module cache - /******/ - __webpack_require__.c = installedModules; - /******/ - /******/ // identity function for calling harmony imports with the correct context - /******/ - __webpack_require__.i = function (value) { - return value; - }; - /******/ - /******/ // define getter function for harmony exports - /******/ - __webpack_require__.d = function (exports, name, getter) { - /******/ - if (!__webpack_require__.o(exports, name)) { - /******/ - Object.defineProperty(exports, name, { - /******/ configurable: false, - /******/ enumerable: true, - /******/ get: getter - /******/ - }); - /******/ - } - /******/ - }; - /******/ - /******/ // getDefaultExport function for compatibility with non-harmony modules - /******/ - __webpack_require__.n = function (module) { - /******/ - var getter = module && module.__esModule ? - /******/ function getDefault() { - return module['default']; - } : - /******/ function getModuleExports() { - return module; - }; - /******/ - __webpack_require__.d(getter, 'a', getter); - /******/ - return getter; - /******/ - }; - /******/ - /******/ // Object.prototype.hasOwnProperty.call - /******/ - __webpack_require__.o = function (object, property) { - return Object.prototype.hasOwnProperty.call(object, property); - }; - /******/ - /******/ // __webpack_public_path__ - /******/ - __webpack_require__.p = ""; - /******/ - /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 1); - /******/ - }) - /************************************************************************/ - /******/([ - /* 0 */ - /***/ (function (module, exports, __webpack_require__) { +"use strict"; - "use strict"; +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; +module.exports = { + type: function type(ob) { + return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); + }, + isObject: function isObject(ob, real) { + if (real) { + return this.type(ob) === "object"; + } else { + return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; + } + }, + isFormData: function isFormData(val) { + return typeof FormData !== 'undefined' && val instanceof FormData; + }, + trim: function trim(str) { + return str.replace(/(^\s*)|(\s*$)/g, ''); + }, + encode: function encode(val) { + return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); + }, + formatParams: function formatParams(data) { + var str = ""; + var first = true; + var that = this; + if (!this.isObject(data)) { + return data; + } - module.exports = { - type: function type(ob) { - return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); - }, - isObject: function isObject(ob, real) { - if (real) { - return this.type(ob) === "object"; + function _encode(sub, path) { + var encode = that.encode; + var type = that.type(sub); + if (type == "array") { + sub.forEach(function (e, i) { + if (!that.isObject(e)) i = ""; + _encode(e, path + ('%5B' + i + '%5D')); + }); + } else if (type == "object") { + for (var key in sub) { + if (path) { + _encode(sub[key], path + "%5B" + encode(key) + "%5D"); } else { - return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; - } - }, - isFormData: function isFormData(val) { - return typeof FormData !== 'undefined' && val instanceof FormData; - }, - trim: function trim(str) { - return str.replace(/(^\s*)|(\s*$)/g, ''); - }, - encode: function encode(val) { - return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); - }, - formatParams: function formatParams(data) { - var str = ""; - var first = true; - var that = this; - if (!this.isObject(data)) { - return data; - } - - function _encode(sub, path) { - var encode = that.encode; - var type = that.type(sub); - if (type == "array") { - sub.forEach(function (e, i) { - if (!that.isObject(e)) i = ""; - _encode(e, path + ('%5B' + i + '%5D')); - }); - } else if (type == "object") { - for (var key in sub) { - if (path) { - _encode(sub[key], path + "%5B" + encode(key) + "%5D"); - } else { - _encode(sub[key], encode(key)); - } - } - } else { - if (!first) { - str += "&"; - } - first = false; - str += path + "=" + encode(sub); - } + _encode(sub[key], encode(key)); } - - _encode(data, ""); - return str; - }, - - // Do not overwrite existing attributes - merge: function merge(a, b) { - for (var key in b) { - if (!a.hasOwnProperty(key)) { - a[key] = b[key]; - } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { - this.merge(a[key], b[key]); - } - } - return a; } - }; + } else { + if (!first) { + str += "&"; + } + first = false; + str += path + "=" + encode(sub); + } + } - /***/ - }), - /* 1 */ - /***/ (function (module, exports, __webpack_require__) { + _encode(data, ""); + return str; + }, - function KEEP(_, cb) { - cb(); + // Do not overwrite existing attributes + merge: function merge(a, b) { + for (var key in b) { + if (!a.hasOwnProperty(key)) { + a[key] = b[key]; + } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { + this.merge(a[key], b[key]); } + } + return a; + } +}; - "use strict"; +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; +function KEEP(_,cb){cb();} +"use strict"; - var _createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - }(); +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } - } +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - /* - * author: wendu - * email: 824783146@qq.com - **/ +/* + * author: wendu + * email: 824783146@qq.com + **/ - var util = __webpack_require__(0); - var isBrowser = typeof document !== "undefined"; +var util = __webpack_require__(0); +var isBrowser = typeof document !== "undefined"; //EngineWrapper can help generating a http engine quickly through a adapter - function EngineWrapper(adapter) { - var AjaxEngine = function () { - function AjaxEngine() { - _classCallCheck(this, AjaxEngine); +function EngineWrapper(adapter) { + var AjaxEngine = function () { + function AjaxEngine() { + _classCallCheck(this, AjaxEngine); - this.requestHeaders = {}; - this.readyState = 0; - this.timeout = 0; // 0 stands for no timeout - this.responseURL = ""; - this.responseHeaders = {}; - } + this.requestHeaders = {}; + this.readyState = 0; + this.timeout = 0; // 0 stands for no timeout + this.responseURL = ""; + this.responseHeaders = {}; + } - _createClass(AjaxEngine, [{ - key: "_call", - value: function _call(name) { - this[name] && this[name].apply(this, [].splice.call(arguments, 1)); - } - }, { - key: "_changeReadyState", - value: function _changeReadyState(state) { - this.readyState = state; - this._call("onreadystatechange"); - } - }, { - key: "open", - value: function open(method, url) { - this.method = method; - if (!url) { - url = location.href; - } else { - url = util.trim(url); - if (url.indexOf("http") !== 0) { - // Normalize the request url - if (isBrowser) { - var t = document.createElement("a"); - t.href = url; - url = t.href; - } - } - } - this.responseURL = url; - this._changeReadyState(1); + _createClass(AjaxEngine, [{ + key: "_call", + value: function _call(name) { + this[name] && this[name].apply(this, [].splice.call(arguments, 1)); + } + }, { + key: "_changeReadyState", + value: function _changeReadyState(state) { + this.readyState = state; + this._call("onreadystatechange"); + } + }, { + key: "open", + value: function open(method, url) { + this.method = method; + if (!url) { + url = location.href; + } else { + url = util.trim(url); + if (url.indexOf("http") !== 0) { + // Normalize the request url + if (isBrowser) { + var t = document.createElement("a"); + t.href = url; + url = t.href; } - }, { - key: "send", - value: function send(arg) { - var _this = this; + } + } + this.responseURL = url; + this._changeReadyState(1); + } + }, { + key: "send", + value: function send(arg) { + var _this = this; - arg = arg || null; - var self = this; - if (adapter) { - var request = { - method: self.method, - url: self.responseURL, - headers: self.requestHeaders || {}, - body: arg - }; - util.merge(request, self._options || {}); - if (request.method === "GET") { - request.body = null; - } - self._changeReadyState(3); - var timer = void 0; - self.timeout = self.timeout || 0; - if (self.timeout > 0) { - timer = setTimeout(function () { - if (self.readyState === 3) { - _this._call("onloadend"); - self._changeReadyState(0); - self._call("ontimeout"); - } - }, self.timeout); - } - request.timeout = self.timeout; - adapter(request, function (response) { + arg = arg || null; + var self = this; + if (adapter) { + var request = { + method: self.method, + url: self.responseURL, + headers: self.requestHeaders || {}, + body: arg + }; + util.merge(request, self._options || {}); + if (request.method === "GET") { + request.body = null; + } + self._changeReadyState(3); + var timer = void 0; + self.timeout = self.timeout || 0; + if (self.timeout > 0) { + timer = setTimeout(function () { + if (self.readyState === 3) { + _this._call("onloadend"); + self._changeReadyState(0); + self._call("ontimeout"); + } + }, self.timeout); + } + request.timeout = self.timeout; + adapter(request, function (response) { - function getAndDelete(key) { - var t = response[key]; - delete response[key]; - return t; - } + function getAndDelete(key) { + var t = response[key]; + delete response[key]; + return t; + } - // If the request has already timeout, return - if (self.readyState !== 3) return; - clearTimeout(timer); + // If the request has already timeout, return + if (self.readyState !== 3) return; + clearTimeout(timer); - // Make sure the type of status is integer - self.status = getAndDelete("statusCode") - 0; + // Make sure the type of status is integer + self.status = getAndDelete("statusCode") - 0; - var responseText = getAndDelete("responseText"); - var statusMessage = getAndDelete("statusMessage"); + var responseText = getAndDelete("responseText"); + var statusMessage = getAndDelete("statusMessage"); - // Network error, set the status code 0 - if (!self.status) { - self.statusText = responseText; - self._call("onerror", {msg: statusMessage}); - } else { - // Parsing the response headers to array in a object, because - // there may be multiple values with the same header name - var responseHeaders = getAndDelete("headers"); - var headers = {}; - for (var field in responseHeaders) { - var value = responseHeaders[field]; - var key = field.toLowerCase(); - // Is array - if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { - headers[key] = value; - } else { - headers[key] = headers[key] || []; - headers[key].push(value); - } - } - var cookies = headers["set-cookie"]; - if (isBrowser && cookies) { - cookies.forEach(function (e) { - // Remove the http-Only property of the cookie - // so that JavaScript can operate it. - document.cookie = e.replace(/;\s*httpOnly/ig, ""); - }); - } - self.responseHeaders = headers; - // Set the fields of engine from response - self.statusText = statusMessage || ""; - self.response = self.responseText = responseText; - self._response = response; - self._changeReadyState(4); - self._call("onload"); - } - self._call("onloadend"); - }); - } else { - console.error("Ajax require adapter"); + // Network error, set the status code 0 + if (!self.status) { + self.statusText = responseText; + self._call("onerror", { msg: statusMessage }); + } else { + // Parsing the response headers to array in a object, because + // there may be multiple values with the same header name + var responseHeaders = getAndDelete("headers"); + var headers = {}; + for (var field in responseHeaders) { + var value = responseHeaders[field]; + var key = field.toLowerCase(); + // Is array + if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { + headers[key] = value; + } else { + headers[key] = headers[key] || []; + headers[key].push(value); + } } - } - }, { - key: "setRequestHeader", - value: function setRequestHeader(key, value) { - this.requestHeaders[util.trim(key)] = value; - } - }, { - key: "getResponseHeader", - value: function getResponseHeader(key) { - return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; - } - }, { - key: "getAllResponseHeaders", - value: function getAllResponseHeaders() { - var str = ""; - for (var key in this.responseHeaders) { - str += key + ":" + this.getResponseHeader(key) + "\r\n"; + var cookies = headers["set-cookie"]; + if (isBrowser && cookies) { + cookies.forEach(function (e) { + // Remove the http-Only property of the cookie + // so that JavaScript can operate it. + document.cookie = e.replace(/;\s*httpOnly/ig, ""); + }); } - return str || null; - } - }, { - key: "abort", - value: function abort(msg) { - this._changeReadyState(0); - this._call("onerror", {msg: msg}); - this._call("onloadend"); + self.responseHeaders = headers; + // Set the fields of engine from response + self.statusText = statusMessage || ""; + self.response = self.responseText = responseText; + self._response = response; + self._changeReadyState(4); + self._call("onload"); } - }], [{ - key: "setAdapter", - value: function setAdapter(requestAdapter) { - adapter = requestAdapter; - } - }]); + self._call("onloadend"); + }); + } else { + console.error("Ajax require adapter"); + } + } + }, { + key: "setRequestHeader", + value: function setRequestHeader(key, value) { + this.requestHeaders[util.trim(key)] = value; + } + }, { + key: "getResponseHeader", + value: function getResponseHeader(key) { + return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; + } + }, { + key: "getAllResponseHeaders", + value: function getAllResponseHeaders() { + var str = ""; + for (var key in this.responseHeaders) { + str += key + ":" + this.getResponseHeader(key) + "\r\n"; + } + return str || null; + } + }, { + key: "abort", + value: function abort(msg) { + this._changeReadyState(0); + this._call("onerror", { msg: msg }); + this._call("onloadend"); + } + }], [{ + key: "setAdapter", + value: function setAdapter(requestAdapter) { + adapter = requestAdapter; + } + }]); - return AjaxEngine; - }(); + return AjaxEngine; + }(); - return AjaxEngine; - } + return AjaxEngine; +} // learn more about keep-loader: https://github.com/wendux/keep-loader - ; - module.exports = EngineWrapper; +; +module.exports = EngineWrapper; - /***/ - }) - /******/]); -}); +/***/ }) +/******/ ]); +}); \ No newline at end of file diff --git a/miniprogram_dist/index.js b/miniprogram_dist/index.js index 3b13b9e..72b1ca2 100644 --- a/miniprogram_dist/index.js +++ b/miniprogram_dist/index.js @@ -1,907 +1,803 @@ (function webpackUniversalModuleDefinition(root, factory) { - if (typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if (typeof define === 'function' && define.amd) - define([], factory); - else { - var a = factory(); - for (var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; - } -})(this, function () { - return /******/ (function (modules) { // webpackBootstrap - /******/ // The module cache - /******/ - var installedModules = {}; - /******/ - /******/ // The require function - /******/ - function __webpack_require__(moduleId) { - /******/ - /******/ // Check if module is in cache - /******/ - if (installedModules[moduleId]) { - /******/ - return installedModules[moduleId].exports; - /******/ - } - /******/ // Create a new module (and put it into the cache) - /******/ - var module = installedModules[moduleId] = { - /******/ i: moduleId, - /******/ l: false, - /******/ exports: {} - /******/ - }; - /******/ - /******/ // Execute the module function - /******/ - modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); - /******/ - /******/ // Flag the module as loaded - /******/ - module.l = true; - /******/ - /******/ // Return the exports of the module - /******/ - return module.exports; - /******/ + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else { + var a = factory(); + for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; + } +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // identity function for calling harmony imports with the correct context +/******/ __webpack_require__.i = function(value) { return value; }; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 13); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +module.exports = { + type: function type(ob) { + return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); + }, + isObject: function isObject(ob, real) { + if (real) { + return this.type(ob) === "object"; + } else { + return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; + } + }, + isFormData: function isFormData(val) { + return typeof FormData !== 'undefined' && val instanceof FormData; + }, + trim: function trim(str) { + return str.replace(/(^\s*)|(\s*$)/g, ''); + }, + encode: function encode(val) { + return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); + }, + formatParams: function formatParams(data) { + var str = ""; + var first = true; + var that = this; + if (!this.isObject(data)) { + return data; } - /******/ - /******/ - /******/ // expose the modules object (__webpack_modules__) - /******/ - __webpack_require__.m = modules; - /******/ - /******/ // expose the module cache - /******/ - __webpack_require__.c = installedModules; - /******/ - /******/ // identity function for calling harmony imports with the correct context - /******/ - __webpack_require__.i = function (value) { - return value; - }; - /******/ - /******/ // define getter function for harmony exports - /******/ - __webpack_require__.d = function (exports, name, getter) { - /******/ - if (!__webpack_require__.o(exports, name)) { - /******/ - Object.defineProperty(exports, name, { - /******/ configurable: false, - /******/ enumerable: true, - /******/ get: getter - /******/ + function _encode(sub, path) { + var encode = that.encode; + var type = that.type(sub); + if (type == "array") { + sub.forEach(function (e, i) { + if (!that.isObject(e)) i = ""; + _encode(e, path + ('%5B' + i + '%5D')); }); - /******/ - } - /******/ - }; - /******/ - /******/ // getDefaultExport function for compatibility with non-harmony modules - /******/ - __webpack_require__.n = function (module) { - /******/ - var getter = module && module.__esModule ? - /******/ function getDefault() { - return module['default']; - } : - /******/ function getModuleExports() { - return module; - }; - /******/ - __webpack_require__.d(getter, 'a', getter); - /******/ - return getter; - /******/ - }; - /******/ - /******/ // Object.prototype.hasOwnProperty.call - /******/ - __webpack_require__.o = function (object, property) { - return Object.prototype.hasOwnProperty.call(object, property); - }; - /******/ - /******/ // __webpack_public_path__ - /******/ - __webpack_require__.p = ""; - /******/ - /******/ // Load entry module and return exports - /******/ - return __webpack_require__(__webpack_require__.s = 13); - /******/ - }) - /************************************************************************/ - /******/([ - /* 0 */ - /***/ (function (module, exports, __webpack_require__) { - - "use strict"; - - - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; - - module.exports = { - type: function type(ob) { - return Object.prototype.toString.call(ob).slice(8, -1).toLowerCase(); - }, - isObject: function isObject(ob, real) { - if (real) { - return this.type(ob) === "object"; + } else if (type == "object") { + for (var key in sub) { + if (path) { + _encode(sub[key], path + "%5B" + encode(key) + "%5D"); } else { - return ob && (typeof ob === 'undefined' ? 'undefined' : _typeof(ob)) === 'object'; - } - }, - isFormData: function isFormData(val) { - return typeof FormData !== 'undefined' && val instanceof FormData; - }, - trim: function trim(str) { - return str.replace(/(^\s*)|(\s*$)/g, ''); - }, - encode: function encode(val) { - return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']'); - }, - formatParams: function formatParams(data) { - var str = ""; - var first = true; - var that = this; - if (!this.isObject(data)) { - return data; + _encode(sub[key], encode(key)); } + } + } else { + if (!first) { + str += "&"; + } + first = false; + str += path + "=" + encode(sub); + } + } - function _encode(sub, path) { - var encode = that.encode; - var type = that.type(sub); - if (type == "array") { - sub.forEach(function (e, i) { - if (!that.isObject(e)) i = ""; - _encode(e, path + ('%5B' + i + '%5D')); - }); - } else if (type == "object") { - for (var key in sub) { - if (path) { - _encode(sub[key], path + "%5B" + encode(key) + "%5D"); - } else { - _encode(sub[key], encode(key)); - } - } - } else { - if (!first) { - str += "&"; - } - first = false; - str += path + "=" + encode(sub); - } - } + _encode(data, ""); + return str; + }, + + // Do not overwrite existing attributes + merge: function merge(a, b) { + for (var key in b) { + if (!a.hasOwnProperty(key)) { + a[key] = b[key]; + } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { + this.merge(a[key], b[key]); + } + } + return a; + } +}; - _encode(data, ""); - return str; - }, +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { - // Do not overwrite existing attributes - merge: function merge(a, b) { - for (var key in b) { - if (!a.hasOwnProperty(key)) { - a[key] = b[key]; - } else if (this.isObject(b[key], 1) && this.isObject(a[key], 1)) { - this.merge(a[key], b[key]); - } - } - return a; - } - }; +function KEEP(_,cb){cb();} +"use strict"; - /***/ - }), - /* 1 */ - /***/ (function (module, exports, __webpack_require__) { +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - function KEEP(_, cb) { - cb(); - } +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - "use strict"; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; +/* + * author: wendu + * email: 824783146@qq.com + **/ - var _createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } +var util = __webpack_require__(0); +var isBrowser = typeof document !== "undefined"; - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - }(); +//EngineWrapper can help generating a http engine quickly through a adapter +function EngineWrapper(adapter) { + var AjaxEngine = function () { + function AjaxEngine() { + _classCallCheck(this, AjaxEngine); + + this.requestHeaders = {}; + this.readyState = 0; + this.timeout = 0; // 0 stands for no timeout + this.responseURL = ""; + this.responseHeaders = {}; + } - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); + _createClass(AjaxEngine, [{ + key: "_call", + value: function _call(name) { + this[name] && this[name].apply(this, [].splice.call(arguments, 1)); + } + }, { + key: "_changeReadyState", + value: function _changeReadyState(state) { + this.readyState = state; + this._call("onreadystatechange"); + } + }, { + key: "open", + value: function open(method, url) { + this.method = method; + if (!url) { + url = location.href; + } else { + url = util.trim(url); + if (url.indexOf("http") !== 0) { + // Normalize the request url + if (isBrowser) { + var t = document.createElement("a"); + t.href = url; + url = t.href; + } + } } + this.responseURL = url; + this._changeReadyState(1); } + }, { + key: "send", + value: function send(arg) { + var _this = this; + + arg = arg || null; + var self = this; + if (adapter) { + var request = { + method: self.method, + url: self.responseURL, + headers: self.requestHeaders || {}, + body: arg + }; + util.merge(request, self._options || {}); + if (request.method === "GET") { + request.body = null; + } + self._changeReadyState(3); + var timer = void 0; + self.timeout = self.timeout || 0; + if (self.timeout > 0) { + timer = setTimeout(function () { + if (self.readyState === 3) { + _this._call("onloadend"); + self._changeReadyState(0); + self._call("ontimeout"); + } + }, self.timeout); + } + request.timeout = self.timeout; + adapter(request, function (response) { - /* - * author: wendu - * email: 824783146@qq.com - **/ + function getAndDelete(key) { + var t = response[key]; + delete response[key]; + return t; + } - var util = __webpack_require__(0); - var isBrowser = typeof document !== "undefined"; + // If the request has already timeout, return + if (self.readyState !== 3) return; + clearTimeout(timer); -//EngineWrapper can help generating a http engine quickly through a adapter - function EngineWrapper(adapter) { - var AjaxEngine = function () { - function AjaxEngine() { - _classCallCheck(this, AjaxEngine); - - this.requestHeaders = {}; - this.readyState = 0; - this.timeout = 0; // 0 stands for no timeout - this.responseURL = ""; - this.responseHeaders = {}; - } + // Make sure the type of status is integer + self.status = getAndDelete("statusCode") - 0; - _createClass(AjaxEngine, [{ - key: "_call", - value: function _call(name) { - this[name] && this[name].apply(this, [].splice.call(arguments, 1)); - } - }, { - key: "_changeReadyState", - value: function _changeReadyState(state) { - this.readyState = state; - this._call("onreadystatechange"); - } - }, { - key: "open", - value: function open(method, url) { - this.method = method; - if (!url) { - url = location.href; - } else { - url = util.trim(url); - if (url.indexOf("http") !== 0) { - // Normalize the request url - if (isBrowser) { - var t = document.createElement("a"); - t.href = url; - url = t.href; - } + var responseText = getAndDelete("responseText"); + var statusMessage = getAndDelete("statusMessage"); + + // Network error, set the status code 0 + if (!self.status) { + self.statusText = responseText; + self._call("onerror", { msg: statusMessage }); + } else { + // Parsing the response headers to array in a object, because + // there may be multiple values with the same header name + var responseHeaders = getAndDelete("headers"); + var headers = {}; + for (var field in responseHeaders) { + var value = responseHeaders[field]; + var key = field.toLowerCase(); + // Is array + if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { + headers[key] = value; + } else { + headers[key] = headers[key] || []; + headers[key].push(value); } } - this.responseURL = url; - this._changeReadyState(1); - } - }, { - key: "send", - value: function send(arg) { - var _this = this; - - arg = arg || null; - var self = this; - if (adapter) { - var request = { - method: self.method, - url: self.responseURL, - headers: self.requestHeaders || {}, - body: arg - }; - util.merge(request, self._options || {}); - if (request.method === "GET") { - request.body = null; - } - self._changeReadyState(3); - var timer = void 0; - self.timeout = self.timeout || 0; - if (self.timeout > 0) { - timer = setTimeout(function () { - if (self.readyState === 3) { - _this._call("onloadend"); - self._changeReadyState(0); - self._call("ontimeout"); - } - }, self.timeout); - } - request.timeout = self.timeout; - adapter(request, function (response) { - - function getAndDelete(key) { - var t = response[key]; - delete response[key]; - return t; - } - - // If the request has already timeout, return - if (self.readyState !== 3) return; - clearTimeout(timer); - - // Make sure the type of status is integer - self.status = getAndDelete("statusCode") - 0; - - var responseText = getAndDelete("responseText"); - var statusMessage = getAndDelete("statusMessage"); - - // Network error, set the status code 0 - if (!self.status) { - self.statusText = responseText; - self._call("onerror", {msg: statusMessage}); - } else { - // Parsing the response headers to array in a object, because - // there may be multiple values with the same header name - var responseHeaders = getAndDelete("headers"); - var headers = {}; - for (var field in responseHeaders) { - var value = responseHeaders[field]; - var key = field.toLowerCase(); - // Is array - if ((typeof value === "undefined" ? "undefined" : _typeof(value)) === "object") { - headers[key] = value; - } else { - headers[key] = headers[key] || []; - headers[key].push(value); - } - } - var cookies = headers["set-cookie"]; - if (isBrowser && cookies) { - cookies.forEach(function (e) { - // Remove the http-Only property of the cookie - // so that JavaScript can operate it. - document.cookie = e.replace(/;\s*httpOnly/ig, ""); - }); - } - self.responseHeaders = headers; - // Set the fields of engine from response - self.statusText = statusMessage || ""; - self.response = self.responseText = responseText; - self._response = response; - self._changeReadyState(4); - self._call("onload"); - } - self._call("onloadend"); + var cookies = headers["set-cookie"]; + if (isBrowser && cookies) { + cookies.forEach(function (e) { + // Remove the http-Only property of the cookie + // so that JavaScript can operate it. + document.cookie = e.replace(/;\s*httpOnly/ig, ""); }); - } else { - console.error("Ajax require adapter"); - } - } - }, { - key: "setRequestHeader", - value: function setRequestHeader(key, value) { - this.requestHeaders[util.trim(key)] = value; - } - }, { - key: "getResponseHeader", - value: function getResponseHeader(key) { - return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; - } - }, { - key: "getAllResponseHeaders", - value: function getAllResponseHeaders() { - var str = ""; - for (var key in this.responseHeaders) { - str += key + ":" + this.getResponseHeader(key) + "\r\n"; } - return str || null; - } - }, { - key: "abort", - value: function abort(msg) { - this._changeReadyState(0); - this._call("onerror", {msg: msg}); - this._call("onloadend"); + self.responseHeaders = headers; + // Set the fields of engine from response + self.statusText = statusMessage || ""; + self.response = self.responseText = responseText; + self._response = response; + self._changeReadyState(4); + self._call("onload"); } - }], [{ - key: "setAdapter", - value: function setAdapter(requestAdapter) { - adapter = requestAdapter; - } - }]); - - return AjaxEngine; - }(); - - return AjaxEngine; + self._call("onloadend"); + }); + } else { + console.error("Ajax require adapter"); + } + } + }, { + key: "setRequestHeader", + value: function setRequestHeader(key, value) { + this.requestHeaders[util.trim(key)] = value; + } + }, { + key: "getResponseHeader", + value: function getResponseHeader(key) { + return (this.responseHeaders[key.toLowerCase()] || "").toString() || null; + } + }, { + key: "getAllResponseHeaders", + value: function getAllResponseHeaders() { + var str = ""; + for (var key in this.responseHeaders) { + str += key + ":" + this.getResponseHeader(key) + "\r\n"; + } + return str || null; + } + }, { + key: "abort", + value: function abort(msg) { + this._changeReadyState(0); + this._call("onerror", { msg: msg }); + this._call("onloadend"); } + }], [{ + key: "setAdapter", + value: function setAdapter(requestAdapter) { + adapter = requestAdapter; + } + }]); -// learn more about keep-loader: https://github.com/wendux/keep-loader - ; - module.exports = EngineWrapper; + return AjaxEngine; + }(); - /***/ - }), - /* 2 */ - /***/ (function (module, exports, __webpack_require__) { + return AjaxEngine; +} - function KEEP(_, cb) { - cb(); - } +// learn more about keep-loader: https://github.com/wendux/keep-loader +; +module.exports = EngineWrapper; - "use strict"; +/***/ }), +/* 2 */ +/***/ (function(module, exports, __webpack_require__) { - var _createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } +function KEEP(_,cb){cb();} +"use strict"; - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; - }(); +var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } - } +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - var utils = __webpack_require__(0); - var isBrowser = typeof document !== "undefined"; +var utils = __webpack_require__(0); +var isBrowser = typeof document !== "undefined"; - var Fly = function () { - function Fly(engine) { - _classCallCheck(this, Fly); +var Fly = function () { + function Fly(engine) { + _classCallCheck(this, Fly); - this.engine = engine || XMLHttpRequest; + this.engine = engine || XMLHttpRequest; - this.default = this; //For typeScript + this.default = this; //For typeScript - /** - * Add lock/unlock API for interceptor. - * - * Once an request/response interceptor is locked, the incoming request/response - * will be added to a queue before they enter the interceptor, they will not be - * continued until the interceptor is unlocked. - * - * @param [interceptor] either is interceptors.request or interceptors.response - */ - function wrap(interceptor) { - var resolve = void 0; - var reject = void 0; + /** + * Add lock/unlock API for interceptor. + * + * Once an request/response interceptor is locked, the incoming request/response + * will be added to a queue before they enter the interceptor, they will not be + * continued until the interceptor is unlocked. + * + * @param [interceptor] either is interceptors.request or interceptors.response + */ + function wrap(interceptor) { + var resolve = void 0; + var reject = void 0; - function _clear() { - interceptor.p = resolve = reject = null; - } + function _clear() { + interceptor.p = resolve = reject = null; + } - utils.merge(interceptor, { - lock: function lock() { - if (!resolve) { - interceptor.p = new Promise(function (_resolve, _reject) { - resolve = _resolve; - reject = _reject; - }); - } - }, - unlock: function unlock() { - if (resolve) { - resolve(); - _clear(); - } - }, - clear: function clear() { - if (reject) { - reject("cancel"); - _clear(); - } - } + utils.merge(interceptor, { + lock: function lock() { + if (!resolve) { + interceptor.p = new Promise(function (_resolve, _reject) { + resolve = _resolve; + reject = _reject; }); } + }, + unlock: function unlock() { + if (resolve) { + resolve(); + _clear(); + } + }, + clear: function clear() { + if (reject) { + reject("cancel"); + _clear(); + } + } + }); + } - var interceptors = this.interceptors = { - response: { - use: function use(handler, onerror) { - this.handler = handler; - this.onerror = onerror; - } - }, - request: { - use: function use(handler) { - this.handler = handler; - } - } - }; - - var irq = interceptors.request; - var irp = interceptors.response; - wrap(irp); - wrap(irq); - - this.config = { - method: "GET", - baseURL: "", - headers: {}, - timeout: 0, - params: {}, // Default Url params - parseJson: true, // Convert response data to JSON object automatically. - withCredentials: false - }; + var interceptors = this.interceptors = { + response: { + use: function use(handler, onerror) { + this.handler = handler; + this.onerror = onerror; } + }, + request: { + use: function use(handler) { + this.handler = handler; + } + } + }; - _createClass(Fly, [{ - key: "request", - value: function request(url, data, options) { - var _this = this; - - var engine = new this.engine(); - var contentType = "Content-Type"; - var contentTypeLowerCase = contentType.toLowerCase(); - var interceptors = this.interceptors; - var requestInterceptor = interceptors.request; - var responseInterceptor = interceptors.response; - var requestInterceptorHandler = requestInterceptor.handler; - var promise = new Promise(function (resolve, reject) { - if (utils.isObject(url)) { - options = url; - url = options.url; - } - options = options || {}; - options.headers = options.headers || {}; + var irq = interceptors.request; + var irp = interceptors.response; + wrap(irp); + wrap(irq); + + this.config = { + method: "GET", + baseURL: "", + headers: {}, + timeout: 0, + params: {}, // Default Url params + parseJson: true, // Convert response data to JSON object automatically. + withCredentials: false + }; + } - function isPromise(p) { - // some polyfill implementation of Promise may be not standard, - // so, we test by duck-typing - return p && p.then && p.catch; - } + _createClass(Fly, [{ + key: "request", + value: function request(url, data, options) { + var _this = this; + + var engine = new this.engine(); + var contentType = "Content-Type"; + var contentTypeLowerCase = contentType.toLowerCase(); + var interceptors = this.interceptors; + var requestInterceptor = interceptors.request; + var responseInterceptor = interceptors.response; + var requestInterceptorHandler = requestInterceptor.handler; + var promise = new Promise(function (resolve, reject) { + if (utils.isObject(url)) { + options = url; + url = options.url; + } + options = options || {}; + options.headers = options.headers || {}; - /** - * If the request/response interceptor has been locked, - * the new request/response will enter a queue. otherwise, it will be performed directly. - * @param [promise] if the promise exist, means the interceptor is locked. - * @param [callback] - */ - function enqueueIfLocked(promise, callback) { - if (promise) { - promise.then(function () { - callback(); - }); - } else { - callback(); - } - } + function isPromise(p) { + // some polyfill implementation of Promise may be not standard, + // so, we test by duck-typing + return p && p.then && p.catch; + } - // make the http request - function makeRequest(options) { - data = options.body; - // Normalize the request url - url = utils.trim(options.url); - var baseUrl = utils.trim(options.baseURL || ""); - if (!url && isBrowser && !baseUrl) url = location.href; - if (url.indexOf("http") !== 0) { - var isAbsolute = url[0] === "/"; - if (!baseUrl && isBrowser) { - var arr = location.pathname.split("/"); - arr.pop(); - baseUrl = location.protocol + "//" + location.host + (isAbsolute ? "" : arr.join("/")); - } - if (baseUrl[baseUrl.length - 1] !== "/") { - baseUrl += "/"; - } - url = baseUrl + (isAbsolute ? url.substr(1) : url); - if (isBrowser) { - - // Normalize the url which contains the ".." or ".", such as - // "http://xx.com/aa/bb/../../xx" to "http://xx.com/xx" . - var t = document.createElement("a"); - t.href = url; - url = t.href; - } - } + /** + * If the request/response interceptor has been locked, + * the new request/response will enter a queue. otherwise, it will be performed directly. + * @param [promise] if the promise exist, means the interceptor is locked. + * @param [callback] + */ + function enqueueIfLocked(promise, callback) { + if (promise) { + promise.then(function () { + callback(); + }); + } else { + callback(); + } + } - var responseType = utils.trim(options.responseType || ""); - var needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; - var dataType = utils.type(data); - var params = options.params || {}; + // make the http request + function makeRequest(options) { + data = options.body; + // Normalize the request url + url = utils.trim(options.url); + var baseUrl = utils.trim(options.baseURL || ""); + if (!url && isBrowser && !baseUrl) url = location.href; + if (url.indexOf("http") !== 0) { + var isAbsolute = url[0] === "/"; + if (!baseUrl && isBrowser) { + var arr = location.pathname.split("/"); + arr.pop(); + baseUrl = location.protocol + "//" + location.host + (isAbsolute ? "" : arr.join("/")); + } + if (baseUrl[baseUrl.length - 1] !== "/") { + baseUrl += "/"; + } + url = baseUrl + (isAbsolute ? url.substr(1) : url); + if (isBrowser) { + + // Normalize the url which contains the ".." or ".", such as + // "http://xx.com/aa/bb/../../xx" to "http://xx.com/xx" . + var t = document.createElement("a"); + t.href = url; + url = t.href; + } + } - // merge url params when the method is "GET" (data is object) - if (needQuery && dataType === "object") { - params = utils.merge(data, params); - } - // encode params to String - params = utils.formatParams(params); + var responseType = utils.trim(options.responseType || ""); + var needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; + var dataType = utils.type(data); + var params = options.params || {}; - // save url params - var _params = []; - if (params) { - _params.push(params); - } - // Add data to url params when the method is "GET" (data is String) - if (needQuery && data && dataType === "string") { - _params.push(data); - } + // merge url params when the method is "GET" (data is object) + if (needQuery && dataType === "object") { + params = utils.merge(data, params); + } + // encode params to String + params = utils.formatParams(params); - // make the final url - if (_params.length > 0) { - url += (url.indexOf("?") === -1 ? "?" : "&") + _params.join("&"); - } + // save url params + var _params = []; + if (params) { + _params.push(params); + } + // Add data to url params when the method is "GET" (data is String) + if (needQuery && data && dataType === "string") { + _params.push(data); + } - engine.open(options.method, url); + // make the final url + if (_params.length > 0) { + url += (url.indexOf("?") === -1 ? "?" : "&") + _params.join("&"); + } - // try catch for ie >=9 - try { - engine.withCredentials = !!options.withCredentials; - engine.timeout = options.timeout || 0; - if (responseType !== "stream") { - engine.responseType = responseType; - } - } catch (e) { - } + engine.open(options.method, url); - var customContentType = options.headers[contentType] || options.headers[contentTypeLowerCase]; - - // default content type - var _contentType = "application/x-www-form-urlencoded"; - // If the request data is json object, transforming it to json string, - // and set request content-type to "json". In browser, the data will - // be sent as RequestBody instead of FormData - if (utils.trim((customContentType || "").toLowerCase()) === _contentType) { - data = utils.formatParams(data); - } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { - _contentType = 'application/json;charset=utf-8'; - data = JSON.stringify(data); - } - //If user doesn't set content-type, set default. - if (!(customContentType || needQuery)) { - options.headers[contentType] = _contentType; - } + // try catch for ie >=9 + try { + engine.withCredentials = !!options.withCredentials; + engine.timeout = options.timeout || 0; + if (responseType !== "stream") { + engine.responseType = responseType; + } + } catch (e) {} + + var customContentType = options.headers[contentType] || options.headers[contentTypeLowerCase]; + + // default content type + var _contentType = "application/x-www-form-urlencoded"; + // If the request data is json object, transforming it to json string, + // and set request content-type to "json". In browser, the data will + // be sent as RequestBody instead of FormData + if (utils.trim((customContentType || "").toLowerCase()) === _contentType) { + data = utils.formatParams(data); + } else if (!utils.isFormData(data) && ["object", "array"].indexOf(utils.type(data)) !== -1) { + _contentType = 'application/json;charset=utf-8'; + data = JSON.stringify(data); + } + //If user doesn't set content-type, set default. + if (!(customContentType || needQuery)) { + options.headers[contentType] = _contentType; + } - for (var k in options.headers) { - if (k === contentType && utils.isFormData(data)) { - // Delete the content-type, Let the browser set it - delete options.headers[k]; - } else { - try { - // In browser environment, some header fields are readonly, - // write will cause the exception . - engine.setRequestHeader(k, options.headers[k]); - } catch (e) { - } - } - } + for (var k in options.headers) { + if (k === contentType && utils.isFormData(data)) { + // Delete the content-type, Let the browser set it + delete options.headers[k]; + } else { + try { + // In browser environment, some header fields are readonly, + // write will cause the exception . + engine.setRequestHeader(k, options.headers[k]); + } catch (e) {} + } + } - function onresult(handler, data, type) { - enqueueIfLocked(responseInterceptor.p, function () { - if (handler) { - //如果失败,添加请求信息 - if (type) { - data.request = options; - } - var ret = handler.call(responseInterceptor, data, Promise); - data = ret === undefined ? data : ret; - } - if (!isPromise(data)) { - data = Promise[type === 0 ? "resolve" : "reject"](data); - } - data.then(function (d) { - resolve(d); - }).catch(function (e) { - reject(e); - }); - }); + function onresult(handler, data, type) { + enqueueIfLocked(responseInterceptor.p, function () { + if (handler) { + //如果失败,添加请求信息 + if (type) { + data.request = options; } + var ret = handler.call(responseInterceptor, data, Promise); + data = ret === undefined ? data : ret; + } + if (!isPromise(data)) { + data = Promise[type === 0 ? "resolve" : "reject"](data); + } + data.then(function (d) { + resolve(d); + }).catch(function (e) { + reject(e); + }); + }); + } - function onerror(e) { - e.engine = engine; - onresult(responseInterceptor.onerror, e, -1); - } + function onerror(e) { + e.engine = engine; + onresult(responseInterceptor.onerror, e, -1); + } - function Err(msg, status) { - this.message = msg; - this.status = status; - } + function Err(msg, status) { + this.message = msg; + this.status = status; + } - engine.onload = function () { - try { - // The xhr of IE9 has not response field - var response = engine.response || engine.responseText; - if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 - // Some third engine implementation may transform the response text to json object automatically, - // so we should test the type of response before transforming it - && !utils.isObject(response)) { - response = JSON.parse(response); - } - - var headers = engine.responseHeaders; - // In browser - if (!headers) { - headers = {}; - var items = (engine.getAllResponseHeaders() || "").split("\r\n"); - items.pop(); - items.forEach(function (e) { - if (!e) return; - var key = e.split(":")[0]; - headers[key] = engine.getResponseHeader(key); - }); - } - var status = engine.status; - var statusText = engine.statusText; - var _data = { - data: response, - headers: headers, - status: status, - statusText: statusText - }; - // The _response filed of engine is set in adapter which be called in engine-wrapper.js - utils.merge(_data, engine._response); - if (status >= 200 && status < 300 || status === 304) { - _data.engine = engine; - _data.request = options; - onresult(responseInterceptor.handler, _data, 0); - } else { - var e = new Err(statusText, status); - e.response = _data; - onerror(e); - } - } catch (e) { - onerror(new Err(e.msg, engine.status)); - } - }; - - engine.onerror = function (e) { - onerror(new Err(e.msg || "Network Error", 0)); - }; - - engine.ontimeout = function () { - onerror(new Err("timeout [ " + engine.timeout + "ms ]", 1)); - }; - engine._options = options; - setTimeout(function () { - engine.send(needQuery ? null : data); - }, 0); + engine.onload = function () { + try { + // The xhr of IE9 has not response field + var response = engine.response || engine.responseText; + if (response && options.parseJson && (engine.getResponseHeader(contentType) || "").indexOf("json") !== -1 + // Some third engine implementation may transform the response text to json object automatically, + // so we should test the type of response before transforming it + && !utils.isObject(response)) { + response = JSON.parse(response); } - enqueueIfLocked(requestInterceptor.p, function () { - utils.merge(options, JSON.parse(JSON.stringify(_this.config))); - var headers = options.headers; - headers[contentType] = headers[contentType] || headers[contentTypeLowerCase] || ""; - delete headers[contentTypeLowerCase]; - options.body = data || options.body; - url = utils.trim(url || ""); - options.method = options.method.toUpperCase(); - options.url = url; - var ret = options; - if (requestInterceptorHandler) { - ret = requestInterceptorHandler.call(requestInterceptor, options, Promise) || options; - } - if (!isPromise(ret)) { - ret = Promise.resolve(ret); - } - ret.then(function (d) { - //if options continue - if (d === options) { - makeRequest(d); - } else { - resolve(d); - } - }, function (err) { - reject(err); + var headers = engine.responseHeaders; + // In browser + if (!headers) { + headers = {}; + var items = (engine.getAllResponseHeaders() || "").split("\r\n"); + items.pop(); + items.forEach(function (e) { + if (!e) return; + var key = e.split(":")[0]; + headers[key] = engine.getResponseHeader(key); }); - }); - }); - promise.engine = engine; - return promise; - } - }, { - key: "all", - value: function all(promises) { - return Promise.all(promises); + } + var status = engine.status; + var statusText = engine.statusText; + var _data = { data: response, headers: headers, status: status, statusText: statusText }; + // The _response filed of engine is set in adapter which be called in engine-wrapper.js + utils.merge(_data, engine._response); + if (status >= 200 && status < 300 || status === 304) { + _data.engine = engine; + _data.request = options; + onresult(responseInterceptor.handler, _data, 0); + } else { + var e = new Err(statusText, status); + e.response = _data; + onerror(e); + } + } catch (e) { + onerror(new Err(e.msg, engine.status)); + } + }; + + engine.onerror = function (e) { + onerror(new Err(e.msg || "Network Error", 0)); + }; + + engine.ontimeout = function () { + onerror(new Err("timeout [ " + engine.timeout + "ms ]", 1)); + }; + engine._options = options; + setTimeout(function () { + engine.send(needQuery ? null : data); + }, 0); + } + + enqueueIfLocked(requestInterceptor.p, function () { + utils.merge(options, JSON.parse(JSON.stringify(_this.config))); + var headers = options.headers; + headers[contentType] = headers[contentType] || headers[contentTypeLowerCase] || ""; + delete headers[contentTypeLowerCase]; + options.body = data || options.body; + url = utils.trim(url || ""); + options.method = options.method.toUpperCase(); + options.url = url; + var ret = options; + if (requestInterceptorHandler) { + ret = requestInterceptorHandler.call(requestInterceptor, options, Promise) || options; } - }, { - key: "spread", - value: function spread(callback) { - return function (arr) { - return callback.apply(null, arr); - }; + if (!isPromise(ret)) { + ret = Promise.resolve(ret); } - }]); + ret.then(function (d) { + //if options continue + if (d === options) { + makeRequest(d); + } else { + resolve(d); + } + }, function (err) { + reject(err); + }); + }); + }); + promise.engine = engine; + return promise; + } + }, { + key: "all", + value: function all(promises) { + return Promise.all(promises); + } + }, { + key: "spread", + value: function spread(callback) { + return function (arr) { + return callback.apply(null, arr); + }; + } + }]); - return Fly; - }(); + return Fly; +}(); //For typeScript - Fly.default = Fly; +Fly.default = Fly; - ["get", "post", "put", "patch", "head", "delete"].forEach(function (e) { - Fly.prototype[e] = function (url, data, option) { - return this.request(url, data, utils.merge({method: e}, option)); - }; - }); - ["lock", "unlock", "clear"].forEach(function (e) { - Fly.prototype[e] = function () { - this.interceptors.request[e](); - }; - }); +["get", "post", "put", "patch", "head", "delete"].forEach(function (e) { + Fly.prototype[e] = function (url, data, option) { + return this.request(url, data, utils.merge({ method: e }, option)); + }; +}); +["lock", "unlock", "clear"].forEach(function (e) { + Fly.prototype[e] = function () { + this.interceptors.request[e](); + }; +}); // Learn more about keep-loader: https://github.com/wendux/keep-loader - ; - module.exports = Fly; +; +module.exports = Fly; - /***/ - }), - /* 3 */, - /* 4 */, - /* 5 */, - /* 6 */, - /* 7 */ - /***/ (function (module, exports, __webpack_require__) { +/***/ }), +/* 3 */, +/* 4 */, +/* 5 */, +/* 6 */, +/* 7 */ +/***/ (function(module, exports, __webpack_require__) { - "use strict"; +"use strict"; //微信小程序适配器 - module.exports = function (request, responseCallback) { - var con = { - method: request.method, - url: request.url, - dataType: request.dataType || undefined, - header: request.headers, - data: request.body || {}, - responseType: request.responseType || 'text', - success: function success(res) { - responseCallback({ - statusCode: res.statusCode, - responseText: res.data, - headers: res.header, - statusMessage: res.errMsg - }); - }, - fail: function fail(res) { - responseCallback({ - statusCode: res.statusCode || 0, - statusMessage: res.errMsg - }); - } - }; - wx.request(con); - }; +module.exports = function (request, responseCallback) { + var con = { + method: request.method, + url: request.url, + dataType: request.dataType || undefined, + header: request.headers, + data: request.body || {}, + responseType: request.responseType || 'text', + success: function success(res) { + responseCallback({ + statusCode: res.statusCode, + responseText: res.data, + headers: res.header, + statusMessage: res.errMsg + }); + }, + fail: function fail(res) { + responseCallback({ + statusCode: res.statusCode || 0, + statusMessage: res.errMsg + }); + } + }; + wx.request(con); +}; - /***/ - }), - /* 8 */, - /* 9 */, - /* 10 */, - /* 11 */, - /* 12 */, - /* 13 */ - /***/ (function (module, exports, __webpack_require__) { +/***/ }), +/* 8 */, +/* 9 */, +/* 10 */, +/* 11 */, +/* 12 */, +/* 13 */ +/***/ (function(module, exports, __webpack_require__) { - "use strict"; +"use strict"; //微信小程序入口 - var _Fly = __webpack_require__(2); - var EngineWrapper = __webpack_require__(1); - var adapter = __webpack_require__(7); - var wxEngine = EngineWrapper(adapter); - module.exports = function (engine) { - return new _Fly(engine || wxEngine); - }; - - /***/ - }) - /******/]); -}); +var _Fly = __webpack_require__(2); +var EngineWrapper = __webpack_require__(1); +var adapter = __webpack_require__(7); +var wxEngine = EngineWrapper(adapter); +module.exports = function (engine) { + return new _Fly(engine || wxEngine); +}; + +/***/ }) +/******/ ]); +}); \ No newline at end of file diff --git a/src/fly.js b/src/fly.js index ce11d92..56520ba 100644 --- a/src/fly.js +++ b/src/fly.js @@ -145,7 +145,7 @@ class Fly { } let responseType = utils.trim(options.responseType || "") - let needQuery = ["GET", "HEAD", "DELETE", "OPTION"].indexOf(options.method) !== -1; + let needQuery = ["GET", "HEAD", "OPTION"].indexOf(options.method) !== -1; let dataType = utils.type(data); let params = options.params || {};