@webex/http-core 3.0.0-beta.9 → 3.0.0-beta.90
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/dist/http-error-subtypes.js +2 -147
- package/dist/http-error-subtypes.js.map +1 -1
- package/dist/http-error.js +9 -38
- package/dist/http-error.js.map +1 -1
- package/dist/index.js +5 -29
- package/dist/index.js.map +1 -1
- package/dist/interceptors/http-status.js +7 -30
- package/dist/interceptors/http-status.js.map +1 -1
- package/dist/lib/detect.js +28 -48
- package/dist/lib/detect.js.map +1 -1
- package/dist/lib/interceptor.js +7 -23
- package/dist/lib/interceptor.js.map +1 -1
- package/dist/lib/xhr.js +44 -93
- package/dist/lib/xhr.js.map +1 -1
- package/dist/progress-event.js +0 -7
- package/dist/progress-event.js.map +1 -1
- package/dist/request/index.js +1 -15
- package/dist/request/index.js.map +1 -1
- package/dist/request/request.js +5 -23
- package/dist/request/request.js.map +1 -1
- package/dist/request/request.shim.js +38 -90
- package/dist/request/request.shim.js.map +1 -1
- package/package.json +10 -10
- package/src/http-error-subtypes.js +1 -1
- package/src/http-error.js +15 -23
- package/src/index.js +4 -9
- package/src/interceptors/http-status.js +7 -5
- package/src/lib/detect.js +0 -1
- package/src/lib/interceptor.js +2 -4
- package/src/lib/xhr.js +197 -194
- package/src/progress-event.js +10 -5
- package/src/request/request.js +16 -14
- package/src/request/request.shim.js +47 -38
- package/test/integration/spec/http-error.js +11 -11
- package/test/integration/spec/interceptor.js +20 -13
- package/test/integration/spec/progress-event.js +8 -8
- package/test/integration/spec/request.js +135 -127
- package/test/unit/spec/interceptors/http-status.js +14 -11
package/dist/lib/interceptor.js
CHANGED
|
@@ -1,29 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
5
|
_Object$defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
|
|
11
8
|
exports.default = void 0;
|
|
12
|
-
|
|
13
9
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
14
|
-
|
|
15
10
|
var _defineProperty = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/reflect/define-property"));
|
|
16
|
-
|
|
17
11
|
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
|
|
18
|
-
|
|
19
12
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
20
|
-
|
|
21
13
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
22
|
-
|
|
23
14
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
24
|
-
|
|
25
15
|
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
26
|
-
|
|
27
16
|
/**
|
|
28
17
|
* @class
|
|
29
18
|
*/
|
|
@@ -35,9 +24,7 @@ var Interceptor = /*#__PURE__*/function () {
|
|
|
35
24
|
*/
|
|
36
25
|
function Interceptor(attrs) {
|
|
37
26
|
var _this = this;
|
|
38
|
-
|
|
39
27
|
(0, _classCallCheck2.default)(this, Interceptor);
|
|
40
|
-
|
|
41
28
|
if (attrs) {
|
|
42
29
|
(0, _keys.default)(attrs).forEach(function (key) {
|
|
43
30
|
var value = attrs[key];
|
|
@@ -48,6 +35,7 @@ var Interceptor = /*#__PURE__*/function () {
|
|
|
48
35
|
});
|
|
49
36
|
}
|
|
50
37
|
}
|
|
38
|
+
|
|
51
39
|
/**
|
|
52
40
|
* Logs the options of a request. This should be utilized
|
|
53
41
|
* during the intercepting process, but can be used at any
|
|
@@ -55,27 +43,24 @@ var Interceptor = /*#__PURE__*/function () {
|
|
|
55
43
|
* @param {object} options
|
|
56
44
|
* @returns {void}
|
|
57
45
|
*/
|
|
58
|
-
|
|
59
|
-
|
|
60
46
|
(0, _createClass2.default)(Interceptor, [{
|
|
61
47
|
key: "logOptions",
|
|
62
48
|
value: function logOptions() {
|
|
63
49
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
64
50
|
var logger = (0, _get2.default)(this, 'webex.logger', console);
|
|
65
|
-
|
|
66
51
|
if (!process.env.ENABLE_VERBOSE_NETWORK_LOGGING || !logger) {
|
|
67
52
|
return;
|
|
68
|
-
}
|
|
69
|
-
|
|
53
|
+
}
|
|
70
54
|
|
|
55
|
+
// prepend a header for the interceptor
|
|
71
56
|
logger.info('/***** Interceptor ****************************************************\\');
|
|
72
57
|
logger.info("".concat(this.constructor.name, " - ").concat((0, _stringify.default)(options, null, 2)));
|
|
73
58
|
}
|
|
59
|
+
|
|
74
60
|
/**
|
|
75
61
|
* @abstract
|
|
76
62
|
* @returns {Interceptor}
|
|
77
63
|
*/
|
|
78
|
-
|
|
79
64
|
}, {
|
|
80
65
|
key: "onRequest",
|
|
81
66
|
value:
|
|
@@ -87,37 +72,37 @@ var Interceptor = /*#__PURE__*/function () {
|
|
|
87
72
|
function onRequest(options) {
|
|
88
73
|
return _promise.default.resolve(options);
|
|
89
74
|
}
|
|
75
|
+
|
|
90
76
|
/**
|
|
91
77
|
* Handle request failures
|
|
92
78
|
* @param {Object} options
|
|
93
79
|
* @param {Error} reason
|
|
94
80
|
* @returns {RejectedPromise<Error>}
|
|
95
81
|
*/
|
|
96
|
-
|
|
97
82
|
}, {
|
|
98
83
|
key: "onRequestError",
|
|
99
84
|
value: function onRequestError(options, reason) {
|
|
100
85
|
return _promise.default.reject(reason);
|
|
101
86
|
}
|
|
87
|
+
|
|
102
88
|
/**
|
|
103
89
|
* Transform response before returning it
|
|
104
90
|
* @param {Object} options
|
|
105
91
|
* @param {HttpResponse} response
|
|
106
92
|
* @returns {Promise<HttpResponse>}
|
|
107
93
|
*/
|
|
108
|
-
|
|
109
94
|
}, {
|
|
110
95
|
key: "onResponse",
|
|
111
96
|
value: function onResponse(options, response) {
|
|
112
97
|
return _promise.default.resolve(response);
|
|
113
98
|
}
|
|
99
|
+
|
|
114
100
|
/**
|
|
115
101
|
* Handle response errors
|
|
116
102
|
* @param {Object} options
|
|
117
103
|
* @param {WebexHttpError} reason
|
|
118
104
|
* @returns {Promise<WebexHttpError>}
|
|
119
105
|
*/
|
|
120
|
-
|
|
121
106
|
}, {
|
|
122
107
|
key: "onResponseError",
|
|
123
108
|
value: function onResponseError(options, reason) {
|
|
@@ -131,6 +116,5 @@ var Interceptor = /*#__PURE__*/function () {
|
|
|
131
116
|
}]);
|
|
132
117
|
return Interceptor;
|
|
133
118
|
}();
|
|
134
|
-
|
|
135
119
|
exports.default = Interceptor;
|
|
136
120
|
//# sourceMappingURL=interceptor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Interceptor","attrs","forEach","key","value","enumerable","options","logger","console","process","env","ENABLE_VERBOSE_NETWORK_LOGGING","info","constructor","name","resolve","reason","reject","response","Error"],"sources":["interceptor.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {get} from 'lodash';\n\n/**\n * @class\n */\nexport default class Interceptor {\n /**\n * @constructor\n * @param {Object} attrs\n * @returns {UrlInterceptor}\n */\n constructor(attrs) {\n if (attrs) {\n Object.keys(attrs).forEach((key) => {\n const value = attrs[key];\n\n Reflect.defineProperty(this, key, {\n enumerable: true,\n value
|
|
1
|
+
{"version":3,"names":["Interceptor","attrs","forEach","key","value","enumerable","options","logger","console","process","env","ENABLE_VERBOSE_NETWORK_LOGGING","info","constructor","name","resolve","reason","reject","response","Error"],"sources":["interceptor.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {get} from 'lodash';\n\n/**\n * @class\n */\nexport default class Interceptor {\n /**\n * @constructor\n * @param {Object} attrs\n * @returns {UrlInterceptor}\n */\n constructor(attrs) {\n if (attrs) {\n Object.keys(attrs).forEach((key) => {\n const value = attrs[key];\n\n Reflect.defineProperty(this, key, {\n enumerable: true,\n value,\n });\n });\n }\n }\n\n /**\n * Logs the options of a request. This should be utilized\n * during the intercepting process, but can be used at any\n * time otherwise.\n * @param {object} options\n * @returns {void}\n */\n logOptions(options = {}) {\n const logger = get(this, 'webex.logger', console);\n\n if (!process.env.ENABLE_VERBOSE_NETWORK_LOGGING || !logger) {\n return;\n }\n\n // prepend a header for the interceptor\n logger.info('/***** Interceptor ****************************************************\\\\');\n\n logger.info(`${this.constructor.name} - ${JSON.stringify(options, null, 2)}`);\n }\n\n /**\n * @abstract\n * @returns {Interceptor}\n */\n static create() {\n throw new Error('`Interceptor.create()` must be defined');\n }\n\n /**\n * Transform request options before sending them\n * @param {Object} options\n * @returns {Promise<Object>}\n */\n onRequest(options) {\n return Promise.resolve(options);\n }\n\n /**\n * Handle request failures\n * @param {Object} options\n * @param {Error} reason\n * @returns {RejectedPromise<Error>}\n */\n onRequestError(options, reason) {\n return Promise.reject(reason);\n }\n\n /**\n * Transform response before returning it\n * @param {Object} options\n * @param {HttpResponse} response\n * @returns {Promise<HttpResponse>}\n */\n onResponse(options, response) {\n return Promise.resolve(response);\n }\n\n /**\n * Handle response errors\n * @param {Object} options\n * @param {WebexHttpError} reason\n * @returns {Promise<WebexHttpError>}\n */\n onResponseError(options, reason) {\n return Promise.reject(reason);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAMA;AACA;AACA;AAFA,IAGqBA,WAAW;EAC9B;AACF;AACA;AACA;AACA;EACE,qBAAYC,KAAK,EAAE;IAAA;IAAA;IACjB,IAAIA,KAAK,EAAE;MACT,mBAAYA,KAAK,CAAC,CAACC,OAAO,CAAC,UAACC,GAAG,EAAK;QAClC,IAAMC,KAAK,GAAGH,KAAK,CAACE,GAAG,CAAC;QAExB,6BAAuB,KAAI,EAAEA,GAAG,EAAE;UAChCE,UAAU,EAAE,IAAI;UAChBD,KAAK,EAALA;QACF,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EANE;IAAA;IAAA,OAOA,sBAAyB;MAAA,IAAdE,OAAO,uEAAG,CAAC,CAAC;MACrB,IAAMC,MAAM,GAAG,mBAAI,IAAI,EAAE,cAAc,EAAEC,OAAO,CAAC;MAEjD,IAAI,CAACC,OAAO,CAACC,GAAG,CAACC,8BAA8B,IAAI,CAACJ,MAAM,EAAE;QAC1D;MACF;;MAEA;MACAA,MAAM,CAACK,IAAI,CAAC,2EAA2E,CAAC;MAExFL,MAAM,CAACK,IAAI,WAAI,IAAI,CAACC,WAAW,CAACC,IAAI,gBAAM,wBAAeR,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAG;IAC/E;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA;IAQA;AACF;AACA;AACA;AACA;IACE,mBAAUA,OAAO,EAAE;MACjB,OAAO,iBAAQS,OAAO,CAACT,OAAO,CAAC;IACjC;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAA;IAAA,OAMA,wBAAeA,OAAO,EAAEU,MAAM,EAAE;MAC9B,OAAO,iBAAQC,MAAM,CAACD,MAAM,CAAC;IAC/B;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAA;IAAA,OAMA,oBAAWV,OAAO,EAAEY,QAAQ,EAAE;MAC5B,OAAO,iBAAQH,OAAO,CAACG,QAAQ,CAAC;IAClC;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAA;IAAA,OAMA,yBAAgBZ,OAAO,EAAEU,MAAM,EAAE;MAC/B,OAAO,iBAAQC,MAAM,CAACD,MAAM,CAAC;IAC/B;EAAC;IAAA;IAAA,OAzCD,kBAAgB;MACd,MAAM,IAAIG,KAAK,CAAC,wCAAwC,CAAC;IAC3D;EAAC;EAAA;AAAA;AAAA"}
|
package/dist/lib/xhr.js
CHANGED
|
@@ -1,66 +1,54 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
3
|
*/
|
|
4
|
+
|
|
4
5
|
// Need to fork xhr to support environments with full object freezing; namely,
|
|
5
6
|
// SalesForce's Aura and Locker environment.
|
|
7
|
+
|
|
6
8
|
// See https://github.com/naugtur/xhr for license information
|
|
9
|
+
|
|
7
10
|
// Maintain the original code style of https://github.com/naugtur/xhr since
|
|
8
11
|
// we're trying to diverge as little as possible.
|
|
9
|
-
|
|
10
12
|
/* eslint-disable */
|
|
11
|
-
"use strict";
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
'use strict';
|
|
14
15
|
|
|
16
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
15
17
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
16
|
-
|
|
17
18
|
_Object$defineProperty(exports, "__esModule", {
|
|
18
19
|
value: true
|
|
19
20
|
});
|
|
20
|
-
|
|
21
21
|
exports.default = void 0;
|
|
22
|
-
|
|
23
22
|
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
|
|
24
|
-
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
var
|
|
28
|
-
|
|
29
|
-
var parseHeaders = require("parse-headers");
|
|
30
|
-
|
|
31
|
-
var xtend = require("xtend");
|
|
32
|
-
|
|
23
|
+
var window = require('global/window');
|
|
24
|
+
var isFunction = require('is-function');
|
|
25
|
+
var parseHeaders = require('parse-headers');
|
|
26
|
+
var xtend = require('xtend');
|
|
33
27
|
createXHR.XMLHttpRequest = window.XMLHttpRequest || noop;
|
|
34
|
-
createXHR.XDomainRequest =
|
|
35
|
-
forEachArray([
|
|
36
|
-
createXHR[method ===
|
|
28
|
+
createXHR.XDomainRequest = 'withCredentials' in new createXHR.XMLHttpRequest() ? createXHR.XMLHttpRequest : window.XDomainRequest;
|
|
29
|
+
forEachArray(['get', 'put', 'post', 'patch', 'head', 'delete'], function (method) {
|
|
30
|
+
createXHR[method === 'delete' ? 'del' : method] = function (uri, options, callback) {
|
|
37
31
|
options = initParams(uri, options, callback);
|
|
38
32
|
options.method = method.toUpperCase();
|
|
39
33
|
return _createXHR(options);
|
|
40
34
|
};
|
|
41
35
|
});
|
|
42
|
-
|
|
43
36
|
function forEachArray(array, iterator) {
|
|
44
37
|
for (var i = 0; i < array.length; i += 1) {
|
|
45
38
|
iterator(array[i]);
|
|
46
39
|
}
|
|
47
40
|
}
|
|
48
|
-
|
|
49
41
|
function isEmpty(obj) {
|
|
50
42
|
for (var i in obj) {
|
|
51
43
|
if (obj.hasOwnProperty(i)) return false;
|
|
52
44
|
}
|
|
53
|
-
|
|
54
45
|
return true;
|
|
55
46
|
}
|
|
56
|
-
|
|
57
47
|
function initParams(uri, options, callback) {
|
|
58
48
|
var params = uri;
|
|
59
|
-
|
|
60
49
|
if (isFunction(options)) {
|
|
61
50
|
callback = options;
|
|
62
|
-
|
|
63
|
-
if (typeof uri === "string") {
|
|
51
|
+
if (typeof uri === 'string') {
|
|
64
52
|
params = {
|
|
65
53
|
uri: uri
|
|
66
54
|
};
|
|
@@ -70,82 +58,66 @@ function initParams(uri, options, callback) {
|
|
|
70
58
|
uri: uri
|
|
71
59
|
});
|
|
72
60
|
}
|
|
73
|
-
|
|
74
61
|
params.callback = callback;
|
|
75
62
|
return params;
|
|
76
63
|
}
|
|
77
|
-
|
|
78
64
|
function createXHR(uri, options, callback) {
|
|
79
65
|
options = initParams(uri, options, callback);
|
|
80
66
|
return _createXHR(options);
|
|
81
67
|
}
|
|
82
|
-
|
|
83
68
|
function _createXHR(options) {
|
|
84
|
-
if (typeof options.callback ===
|
|
85
|
-
throw new Error(
|
|
69
|
+
if (typeof options.callback === 'undefined') {
|
|
70
|
+
throw new Error('callback argument missing');
|
|
86
71
|
}
|
|
87
|
-
|
|
88
72
|
var called = false;
|
|
89
|
-
|
|
90
73
|
var callback = function cbOnce(err, response, body) {
|
|
91
74
|
if (!called) {
|
|
92
75
|
called = true;
|
|
93
76
|
options.callback(err, response, body);
|
|
94
77
|
}
|
|
95
78
|
};
|
|
96
|
-
|
|
97
79
|
function readystatechange() {
|
|
98
80
|
if (xhr.readyState === 4) {
|
|
99
81
|
setTimeout(loadFunc, 0);
|
|
100
82
|
}
|
|
101
83
|
}
|
|
102
|
-
|
|
103
84
|
function getBody() {
|
|
104
85
|
// Chrome with requestType=blob throws errors arround when even testing access to responseText
|
|
105
86
|
var body = undefined;
|
|
106
|
-
|
|
107
87
|
if (xhr.response) {
|
|
108
88
|
body = xhr.response;
|
|
109
89
|
} else {
|
|
110
90
|
body = xhr.responseText || getXml(xhr);
|
|
111
91
|
}
|
|
112
|
-
|
|
113
92
|
if (isJson) {
|
|
114
93
|
try {
|
|
115
94
|
body = JSON.parse(body);
|
|
116
95
|
} catch (e) {}
|
|
117
96
|
}
|
|
118
|
-
|
|
119
97
|
return body;
|
|
120
98
|
}
|
|
121
|
-
|
|
122
99
|
function errorFunc(evt) {
|
|
123
100
|
clearTimeout(timeoutTimer);
|
|
124
|
-
|
|
125
101
|
if (!(evt instanceof Error)) {
|
|
126
|
-
evt = new Error(
|
|
102
|
+
evt = new Error('' + (evt || 'Unknown XMLHttpRequest Error'));
|
|
127
103
|
}
|
|
128
|
-
|
|
129
104
|
evt.statusCode = 0;
|
|
130
105
|
return callback(evt, failureResponse);
|
|
131
|
-
}
|
|
132
|
-
|
|
106
|
+
}
|
|
133
107
|
|
|
108
|
+
// will load the data & process the response in a special response object
|
|
134
109
|
function loadFunc() {
|
|
135
110
|
if (aborted) return;
|
|
136
111
|
var status;
|
|
137
112
|
clearTimeout(timeoutTimer);
|
|
138
|
-
|
|
139
113
|
if (options.useXDR && xhr.status === undefined) {
|
|
140
114
|
//IE8 CORS GET successful response doesn't have a status field, but body is fine
|
|
141
115
|
status = 200;
|
|
142
116
|
} else {
|
|
143
117
|
status = xhr.status === 1223 ? 204 : xhr.status;
|
|
144
118
|
}
|
|
145
|
-
|
|
146
119
|
var response = failureResponse;
|
|
147
120
|
var err = null;
|
|
148
|
-
|
|
149
121
|
if (status !== 0) {
|
|
150
122
|
response = {
|
|
151
123
|
body: getBody(),
|
|
@@ -155,20 +127,16 @@ function _createXHR(options) {
|
|
|
155
127
|
url: uri,
|
|
156
128
|
rawRequest: xhr
|
|
157
129
|
};
|
|
158
|
-
|
|
159
130
|
if (xhr.getAllResponseHeaders) {
|
|
160
131
|
//remember xhr can in fact be XDR for CORS in IE
|
|
161
132
|
response.headers = parseHeaders(xhr.getAllResponseHeaders());
|
|
162
133
|
}
|
|
163
134
|
} else {
|
|
164
|
-
err = new Error(
|
|
135
|
+
err = new Error('Internal XMLHttpRequest Error');
|
|
165
136
|
}
|
|
166
|
-
|
|
167
137
|
return callback(err, response, response.body);
|
|
168
138
|
}
|
|
169
|
-
|
|
170
139
|
var xhr = options.xhr || null;
|
|
171
|
-
|
|
172
140
|
if (!xhr) {
|
|
173
141
|
if (options.cors || options.useXDR) {
|
|
174
142
|
xhr = new createXHR.XDomainRequest();
|
|
@@ -176,11 +144,10 @@ function _createXHR(options) {
|
|
|
176
144
|
xhr = new createXHR.XMLHttpRequest();
|
|
177
145
|
}
|
|
178
146
|
}
|
|
179
|
-
|
|
180
147
|
var key;
|
|
181
148
|
var aborted;
|
|
182
149
|
var uri = options.uri || options.url;
|
|
183
|
-
var method = options.method ||
|
|
150
|
+
var method = options.method || 'GET';
|
|
184
151
|
var body = options.body || options.data;
|
|
185
152
|
var headers = options.headers || {};
|
|
186
153
|
var sync = !!options.sync;
|
|
@@ -194,51 +161,43 @@ function _createXHR(options) {
|
|
|
194
161
|
url: uri,
|
|
195
162
|
rawRequest: xhr
|
|
196
163
|
};
|
|
197
|
-
|
|
198
|
-
if ("json" in options && options.json !== false) {
|
|
164
|
+
if ('json' in options && options.json !== false) {
|
|
199
165
|
isJson = true;
|
|
200
|
-
headers[
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
headers["content-type"] || headers["Content-Type"] || (headers["Content-Type"] = "application/json"); //Don't override existing accept header declared by user
|
|
204
|
-
|
|
166
|
+
headers['accept'] || headers['Accept'] || (headers['Accept'] = 'application/json'); //Don't override existing accept header declared by user
|
|
167
|
+
if (method !== 'GET' && method !== 'HEAD') {
|
|
168
|
+
headers['content-type'] || headers['Content-Type'] || (headers['Content-Type'] = 'application/json'); //Don't override existing accept header declared by user
|
|
205
169
|
body = (0, _stringify.default)(options.json === true ? body : options.json);
|
|
206
170
|
}
|
|
207
171
|
}
|
|
208
|
-
|
|
209
172
|
xhr.onreadystatechange = readystatechange;
|
|
210
173
|
xhr.onload = loadFunc;
|
|
211
|
-
xhr.onerror = errorFunc;
|
|
212
|
-
|
|
213
|
-
xhr.onprogress = function () {
|
|
174
|
+
xhr.onerror = errorFunc;
|
|
175
|
+
// IE9 must have onprogress be set to a unique function.
|
|
176
|
+
xhr.onprogress = function () {
|
|
177
|
+
// IE must die
|
|
214
178
|
};
|
|
215
|
-
|
|
216
179
|
xhr.onabort = function () {
|
|
217
180
|
aborted = true;
|
|
218
181
|
};
|
|
219
|
-
|
|
220
182
|
xhr.ontimeout = errorFunc;
|
|
221
|
-
xhr.open(method, uri, !sync, options.username, options.password);
|
|
222
|
-
|
|
183
|
+
xhr.open(method, uri, !sync, options.username, options.password);
|
|
184
|
+
//has to be after open
|
|
223
185
|
if (!sync) {
|
|
224
186
|
xhr.withCredentials = !!options.withCredentials;
|
|
225
|
-
}
|
|
187
|
+
}
|
|
188
|
+
// Cannot set timeout with sync request
|
|
226
189
|
// not setting timeout on the xhr object, because of old webkits etc. not handling that correctly
|
|
227
190
|
// both npm's request and jquery 1.x use this kind of timeout, so this is being consistent
|
|
228
|
-
|
|
229
|
-
|
|
230
191
|
if (!sync && options.timeout > 0) {
|
|
231
192
|
timeoutTimer = setTimeout(function () {
|
|
232
193
|
if (aborted) return;
|
|
233
194
|
aborted = true; //IE9 may still call readystatechange
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
e.code = "ETIMEDOUT";
|
|
195
|
+
xhr.abort('timeout');
|
|
196
|
+
var e = new Error('XMLHttpRequest timeout');
|
|
197
|
+
e.code = 'ETIMEDOUT';
|
|
238
198
|
errorFunc(e);
|
|
239
199
|
}, options.timeout);
|
|
240
200
|
}
|
|
241
|
-
|
|
242
201
|
if (xhr.setRequestHeader) {
|
|
243
202
|
for (key in headers) {
|
|
244
203
|
if (headers.hasOwnProperty(key)) {
|
|
@@ -246,40 +205,32 @@ function _createXHR(options) {
|
|
|
246
205
|
}
|
|
247
206
|
}
|
|
248
207
|
} else if (options.headers && !isEmpty(options.headers)) {
|
|
249
|
-
throw new Error(
|
|
208
|
+
throw new Error('Headers cannot be set on an XDomainRequest object');
|
|
250
209
|
}
|
|
251
|
-
|
|
252
|
-
if ("responseType" in options) {
|
|
210
|
+
if ('responseType' in options) {
|
|
253
211
|
xhr.responseType = options.responseType;
|
|
254
212
|
}
|
|
255
|
-
|
|
256
|
-
if ("beforeSend" in options && typeof options.beforeSend === "function") {
|
|
213
|
+
if ('beforeSend' in options && typeof options.beforeSend === 'function') {
|
|
257
214
|
options.beforeSend(xhr);
|
|
258
|
-
}
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// Microsoft Edge browser sends "undefined" when send is called with undefined value.
|
|
259
218
|
// XMLHttpRequest spec says to pass null as body to indicate no body
|
|
260
219
|
// See https://github.com/naugtur/xhr/issues/100.
|
|
261
|
-
|
|
262
|
-
|
|
263
220
|
xhr.send(body || null);
|
|
264
221
|
return xhr;
|
|
265
222
|
}
|
|
266
|
-
|
|
267
223
|
function getXml(xhr) {
|
|
268
|
-
if (xhr.responseType ===
|
|
224
|
+
if (xhr.responseType === 'document') {
|
|
269
225
|
return xhr.responseXML;
|
|
270
226
|
}
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
if (xhr.responseType === "" && !firefoxBugTakenEffect) {
|
|
227
|
+
var firefoxBugTakenEffect = xhr.responseXML && xhr.responseXML.documentElement.nodeName === 'parsererror';
|
|
228
|
+
if (xhr.responseType === '' && !firefoxBugTakenEffect) {
|
|
275
229
|
return xhr.responseXML;
|
|
276
230
|
}
|
|
277
|
-
|
|
278
231
|
return null;
|
|
279
232
|
}
|
|
280
|
-
|
|
281
233
|
function noop() {}
|
|
282
|
-
|
|
283
234
|
var _default = createXHR;
|
|
284
235
|
exports.default = _default;
|
|
285
236
|
//# sourceMappingURL=xhr.js.map
|
package/dist/lib/xhr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["window","require","isFunction","parseHeaders","xtend","createXHR","XMLHttpRequest","noop","XDomainRequest","forEachArray","method","uri","options","callback","initParams","toUpperCase","_createXHR","array","iterator","i","length","isEmpty","obj","hasOwnProperty","params","Error","called","cbOnce","err","response","body","readystatechange","xhr","readyState","setTimeout","loadFunc","getBody","undefined","responseText","getXml","isJson","JSON","parse","e","errorFunc","evt","clearTimeout","timeoutTimer","statusCode","failureResponse","aborted","status","useXDR","headers","url","rawRequest","getAllResponseHeaders","cors","key","data","sync","json","onreadystatechange","onload","onerror","onprogress","onabort","ontimeout","open","username","password","withCredentials","timeout","abort","code","setRequestHeader","responseType","beforeSend","send","responseXML","firefoxBugTakenEffect","documentElement","nodeName"],"sources":["xhr.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\n// Need to fork xhr to support environments with full object freezing; namely,\n// SalesForce's Aura and Locker environment.\n\n// See https://github.com/naugtur/xhr for license information\n\n// Maintain the original code style of https://github.com/naugtur/xhr since\n// we're trying to diverge as little as possible.\n/* eslint-disable */\n\n\"use strict\";\nvar window = require(\"global/window\")\nvar isFunction = require(\"is-function\")\nvar parseHeaders = require(\"parse-headers\")\nvar xtend = require(\"xtend\")\n\ncreateXHR.XMLHttpRequest = window.XMLHttpRequest || noop\ncreateXHR.XDomainRequest = \"withCredentials\" in (new createXHR.XMLHttpRequest()) ? createXHR.XMLHttpRequest : window.XDomainRequest\n\nforEachArray([\"get\", \"put\", \"post\", \"patch\", \"head\", \"delete\"], function(method) {\n createXHR[method === \"delete\" ? \"del\" : method] = function(uri, options, callback) {\n options = initParams(uri, options, callback)\n options.method = method.toUpperCase()\n return _createXHR(options)\n }\n})\n\nfunction forEachArray(array, iterator) {\n for (var i = 0; i < array.length; i+= 1) {\n iterator(array[i])\n }\n}\n\nfunction isEmpty(obj){\n for(var i in obj){\n if(obj.hasOwnProperty(i)) return false\n }\n return true\n}\n\nfunction initParams(uri, options, callback) {\n var params = uri\n\n if (isFunction(options)) {\n callback = options\n if (typeof uri === \"string\") {\n params = {uri:uri}\n }\n } else {\n params = xtend(options, {uri: uri})\n }\n\n params.callback = callback\n return params\n}\n\nfunction createXHR(uri, options, callback) {\n options = initParams(uri, options, callback)\n return _createXHR(options)\n}\n\nfunction _createXHR(options) {\n if(typeof options.callback === \"undefined\"){\n throw new Error(\"callback argument missing\")\n }\n\n var called = false\n var callback = function cbOnce(err, response, body){\n if(!called){\n called = true\n options.callback(err, response, body)\n }\n }\n\n function readystatechange() {\n if (xhr.readyState === 4) {\n setTimeout(loadFunc, 0)\n }\n }\n\n function getBody() {\n // Chrome with requestType=blob throws errors arround when even testing access to responseText\n var body = undefined\n\n if (xhr.response) {\n body = xhr.response\n } else {\n body = xhr.responseText || getXml(xhr)\n }\n\n if (isJson) {\n try {\n body = JSON.parse(body)\n } catch (e) {}\n }\n\n return body\n }\n\n function errorFunc(evt) {\n clearTimeout(timeoutTimer)\n if(!(evt instanceof Error)){\n evt = new Error(\"\" + (evt || \"Unknown XMLHttpRequest Error\") )\n }\n evt.statusCode = 0\n return callback(evt, failureResponse)\n }\n\n // will load the data & process the response in a special response object\n function loadFunc() {\n if (aborted) return\n var status\n clearTimeout(timeoutTimer)\n if(options.useXDR && xhr.status===undefined) {\n //IE8 CORS GET successful response doesn't have a status field, but body is fine\n status = 200\n } else {\n status = (xhr.status === 1223 ? 204 : xhr.status)\n }\n var response = failureResponse\n var err = null\n\n if (status !== 0){\n response = {\n body: getBody(),\n statusCode: status,\n method: method,\n headers: {},\n url: uri,\n rawRequest: xhr\n }\n if(xhr.getAllResponseHeaders){ //remember xhr can in fact be XDR for CORS in IE\n response.headers = parseHeaders(xhr.getAllResponseHeaders())\n }\n } else {\n err = new Error(\"Internal XMLHttpRequest Error\")\n }\n return callback(err, response, response.body)\n }\n\n var xhr = options.xhr || null\n\n if (!xhr) {\n if (options.cors || options.useXDR) {\n xhr = new createXHR.XDomainRequest()\n }else{\n xhr = new createXHR.XMLHttpRequest()\n }\n }\n\n var key\n var aborted\n var uri = options.uri || options.url\n var method = options.method || \"GET\"\n var body = options.body || options.data\n var headers = options.headers || {}\n var sync = !!options.sync\n var isJson = false\n var timeoutTimer\n var failureResponse = {\n body: undefined,\n headers: {},\n statusCode: 0,\n method: method,\n url: uri,\n rawRequest: xhr\n }\n\n if (\"json\" in options && options.json !== false) {\n isJson = true\n headers[\"accept\"] || headers[\"Accept\"] || (headers[\"Accept\"] = \"application/json\") //Don't override existing accept header declared by user\n if (method !== \"GET\" && method !== \"HEAD\") {\n headers[\"content-type\"] || headers[\"Content-Type\"] || (headers[\"Content-Type\"] = \"application/json\") //Don't override existing accept header declared by user\n body = JSON.stringify(options.json === true ? body : options.json)\n }\n }\n\n xhr.onreadystatechange = readystatechange\n xhr.onload = loadFunc\n xhr.onerror = errorFunc\n // IE9 must have onprogress be set to a unique function.\n xhr.onprogress = function () {\n // IE must die\n }\n xhr.onabort = function(){\n aborted = true;\n }\n xhr.ontimeout = errorFunc\n xhr.open(method, uri, !sync, options.username, options.password)\n //has to be after open\n if(!sync) {\n xhr.withCredentials = !!options.withCredentials\n }\n // Cannot set timeout with sync request\n // not setting timeout on the xhr object, because of old webkits etc. not handling that correctly\n // both npm's request and jquery 1.x use this kind of timeout, so this is being consistent\n if (!sync && options.timeout > 0 ) {\n timeoutTimer = setTimeout(function(){\n if (aborted) return\n aborted = true//IE9 may still call readystatechange\n xhr.abort(\"timeout\")\n var e = new Error(\"XMLHttpRequest timeout\")\n e.code = \"ETIMEDOUT\"\n errorFunc(e)\n }, options.timeout )\n }\n\n if (xhr.setRequestHeader) {\n for(key in headers){\n if(headers.hasOwnProperty(key)){\n xhr.setRequestHeader(key, headers[key])\n }\n }\n } else if (options.headers && !isEmpty(options.headers)) {\n throw new Error(\"Headers cannot be set on an XDomainRequest object\")\n }\n\n if (\"responseType\" in options) {\n xhr.responseType = options.responseType\n }\n\n if (\"beforeSend\" in options &&\n typeof options.beforeSend === \"function\"\n ) {\n options.beforeSend(xhr)\n }\n\n // Microsoft Edge browser sends \"undefined\" when send is called with undefined value.\n // XMLHttpRequest spec says to pass null as body to indicate no body\n // See https://github.com/naugtur/xhr/issues/100.\n xhr.send(body || null)\n\n return xhr\n\n\n}\n\nfunction getXml(xhr) {\n if (xhr.responseType === \"document\") {\n return xhr.responseXML\n }\n var firefoxBugTakenEffect = xhr.responseXML && xhr.responseXML.documentElement.nodeName === \"parsererror\"\n if (xhr.responseType === \"\" && !firefoxBugTakenEffect) {\n return xhr.responseXML\n }\n\n return null\n}\n\nfunction noop() {}\n\nexport default createXHR;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["window","require","isFunction","parseHeaders","xtend","createXHR","XMLHttpRequest","noop","XDomainRequest","forEachArray","method","uri","options","callback","initParams","toUpperCase","_createXHR","array","iterator","i","length","isEmpty","obj","hasOwnProperty","params","Error","called","cbOnce","err","response","body","readystatechange","xhr","readyState","setTimeout","loadFunc","getBody","undefined","responseText","getXml","isJson","JSON","parse","e","errorFunc","evt","clearTimeout","timeoutTimer","statusCode","failureResponse","aborted","status","useXDR","headers","url","rawRequest","getAllResponseHeaders","cors","key","data","sync","json","onreadystatechange","onload","onerror","onprogress","onabort","ontimeout","open","username","password","withCredentials","timeout","abort","code","setRequestHeader","responseType","beforeSend","send","responseXML","firefoxBugTakenEffect","documentElement","nodeName"],"sources":["xhr.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\n// Need to fork xhr to support environments with full object freezing; namely,\n// SalesForce's Aura and Locker environment.\n\n// See https://github.com/naugtur/xhr for license information\n\n// Maintain the original code style of https://github.com/naugtur/xhr since\n// we're trying to diverge as little as possible.\n/* eslint-disable */\n\n'use strict';\nvar window = require('global/window');\nvar isFunction = require('is-function');\nvar parseHeaders = require('parse-headers');\nvar xtend = require('xtend');\n\ncreateXHR.XMLHttpRequest = window.XMLHttpRequest || noop;\ncreateXHR.XDomainRequest =\n 'withCredentials' in new createXHR.XMLHttpRequest()\n ? createXHR.XMLHttpRequest\n : window.XDomainRequest;\n\nforEachArray(['get', 'put', 'post', 'patch', 'head', 'delete'], function (method) {\n createXHR[method === 'delete' ? 'del' : method] = function (uri, options, callback) {\n options = initParams(uri, options, callback);\n options.method = method.toUpperCase();\n return _createXHR(options);\n };\n});\n\nfunction forEachArray(array, iterator) {\n for (var i = 0; i < array.length; i += 1) {\n iterator(array[i]);\n }\n}\n\nfunction isEmpty(obj) {\n for (var i in obj) {\n if (obj.hasOwnProperty(i)) return false;\n }\n return true;\n}\n\nfunction initParams(uri, options, callback) {\n var params = uri;\n\n if (isFunction(options)) {\n callback = options;\n if (typeof uri === 'string') {\n params = {uri: uri};\n }\n } else {\n params = xtend(options, {uri: uri});\n }\n\n params.callback = callback;\n return params;\n}\n\nfunction createXHR(uri, options, callback) {\n options = initParams(uri, options, callback);\n return _createXHR(options);\n}\n\nfunction _createXHR(options) {\n if (typeof options.callback === 'undefined') {\n throw new Error('callback argument missing');\n }\n\n var called = false;\n var callback = function cbOnce(err, response, body) {\n if (!called) {\n called = true;\n options.callback(err, response, body);\n }\n };\n\n function readystatechange() {\n if (xhr.readyState === 4) {\n setTimeout(loadFunc, 0);\n }\n }\n\n function getBody() {\n // Chrome with requestType=blob throws errors arround when even testing access to responseText\n var body = undefined;\n\n if (xhr.response) {\n body = xhr.response;\n } else {\n body = xhr.responseText || getXml(xhr);\n }\n\n if (isJson) {\n try {\n body = JSON.parse(body);\n } catch (e) {}\n }\n\n return body;\n }\n\n function errorFunc(evt) {\n clearTimeout(timeoutTimer);\n if (!(evt instanceof Error)) {\n evt = new Error('' + (evt || 'Unknown XMLHttpRequest Error'));\n }\n evt.statusCode = 0;\n return callback(evt, failureResponse);\n }\n\n // will load the data & process the response in a special response object\n function loadFunc() {\n if (aborted) return;\n var status;\n clearTimeout(timeoutTimer);\n if (options.useXDR && xhr.status === undefined) {\n //IE8 CORS GET successful response doesn't have a status field, but body is fine\n status = 200;\n } else {\n status = xhr.status === 1223 ? 204 : xhr.status;\n }\n var response = failureResponse;\n var err = null;\n\n if (status !== 0) {\n response = {\n body: getBody(),\n statusCode: status,\n method: method,\n headers: {},\n url: uri,\n rawRequest: xhr,\n };\n if (xhr.getAllResponseHeaders) {\n //remember xhr can in fact be XDR for CORS in IE\n response.headers = parseHeaders(xhr.getAllResponseHeaders());\n }\n } else {\n err = new Error('Internal XMLHttpRequest Error');\n }\n return callback(err, response, response.body);\n }\n\n var xhr = options.xhr || null;\n\n if (!xhr) {\n if (options.cors || options.useXDR) {\n xhr = new createXHR.XDomainRequest();\n } else {\n xhr = new createXHR.XMLHttpRequest();\n }\n }\n\n var key;\n var aborted;\n var uri = options.uri || options.url;\n var method = options.method || 'GET';\n var body = options.body || options.data;\n var headers = options.headers || {};\n var sync = !!options.sync;\n var isJson = false;\n var timeoutTimer;\n var failureResponse = {\n body: undefined,\n headers: {},\n statusCode: 0,\n method: method,\n url: uri,\n rawRequest: xhr,\n };\n\n if ('json' in options && options.json !== false) {\n isJson = true;\n headers['accept'] || headers['Accept'] || (headers['Accept'] = 'application/json'); //Don't override existing accept header declared by user\n if (method !== 'GET' && method !== 'HEAD') {\n headers['content-type'] ||\n headers['Content-Type'] ||\n (headers['Content-Type'] = 'application/json'); //Don't override existing accept header declared by user\n body = JSON.stringify(options.json === true ? body : options.json);\n }\n }\n\n xhr.onreadystatechange = readystatechange;\n xhr.onload = loadFunc;\n xhr.onerror = errorFunc;\n // IE9 must have onprogress be set to a unique function.\n xhr.onprogress = function () {\n // IE must die\n };\n xhr.onabort = function () {\n aborted = true;\n };\n xhr.ontimeout = errorFunc;\n xhr.open(method, uri, !sync, options.username, options.password);\n //has to be after open\n if (!sync) {\n xhr.withCredentials = !!options.withCredentials;\n }\n // Cannot set timeout with sync request\n // not setting timeout on the xhr object, because of old webkits etc. not handling that correctly\n // both npm's request and jquery 1.x use this kind of timeout, so this is being consistent\n if (!sync && options.timeout > 0) {\n timeoutTimer = setTimeout(function () {\n if (aborted) return;\n aborted = true; //IE9 may still call readystatechange\n xhr.abort('timeout');\n var e = new Error('XMLHttpRequest timeout');\n e.code = 'ETIMEDOUT';\n errorFunc(e);\n }, options.timeout);\n }\n\n if (xhr.setRequestHeader) {\n for (key in headers) {\n if (headers.hasOwnProperty(key)) {\n xhr.setRequestHeader(key, headers[key]);\n }\n }\n } else if (options.headers && !isEmpty(options.headers)) {\n throw new Error('Headers cannot be set on an XDomainRequest object');\n }\n\n if ('responseType' in options) {\n xhr.responseType = options.responseType;\n }\n\n if ('beforeSend' in options && typeof options.beforeSend === 'function') {\n options.beforeSend(xhr);\n }\n\n // Microsoft Edge browser sends \"undefined\" when send is called with undefined value.\n // XMLHttpRequest spec says to pass null as body to indicate no body\n // See https://github.com/naugtur/xhr/issues/100.\n xhr.send(body || null);\n\n return xhr;\n}\n\nfunction getXml(xhr) {\n if (xhr.responseType === 'document') {\n return xhr.responseXML;\n }\n var firefoxBugTakenEffect =\n xhr.responseXML && xhr.responseXML.documentElement.nodeName === 'parsererror';\n if (xhr.responseType === '' && !firefoxBugTakenEffect) {\n return xhr.responseXML;\n }\n\n return null;\n}\n\nfunction noop() {}\n\nexport default createXHR;\n"],"mappings":"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"}
|
package/dist/progress-event.js
CHANGED
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
5
|
_Object$defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
|
|
11
8
|
exports.default = ProgressEvent;
|
|
12
|
-
|
|
13
9
|
var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/define-properties"));
|
|
14
|
-
|
|
15
10
|
var _isNan = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/number/is-nan"));
|
|
16
|
-
|
|
17
11
|
var _isNumber2 = _interopRequireDefault(require("lodash/isNumber"));
|
|
18
|
-
|
|
19
12
|
/**
|
|
20
13
|
* Object of the same shape as web browser ProgressEvents
|
|
21
14
|
* @class ProgressEvent
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ProgressEvent","loaded","total","enumerable","value","writable","lengthComputable"],"sources":["progress-event.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {isNumber} from 'lodash';\n\n/**\n * Object of the same shape as web browser ProgressEvents\n * @class ProgressEvent\n * @param {integer} loaded\n * @param {integer} total\n * @returns {ProgressEvent}\n */\nexport default function ProgressEvent(loaded, total) {\n Object.defineProperties(this, {\n loaded: {\n enumerable: true,\n value: loaded,\n writable: false
|
|
1
|
+
{"version":3,"names":["ProgressEvent","loaded","total","enumerable","value","writable","lengthComputable"],"sources":["progress-event.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {isNumber} from 'lodash';\n\n/**\n * Object of the same shape as web browser ProgressEvents\n * @class ProgressEvent\n * @param {integer} loaded\n * @param {integer} total\n * @returns {ProgressEvent}\n */\nexport default function ProgressEvent(loaded, total) {\n Object.defineProperties(this, {\n loaded: {\n enumerable: true,\n value: loaded,\n writable: false,\n },\n total: {\n enumerable: true,\n value: total,\n writable: false,\n },\n lengthComputable: {\n enumerable: true,\n value:\n isNumber(loaded) &&\n !Number.isNaN(loaded) &&\n isNumber(total) &&\n !Number.isNaN(total) &&\n total > 0,\n writable: false,\n },\n });\n}\n"],"mappings":";;;;;;;;;;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,aAAa,CAACC,MAAM,EAAEC,KAAK,EAAE;EACnD,+BAAwB,IAAI,EAAE;IAC5BD,MAAM,EAAE;MACNE,UAAU,EAAE,IAAI;MAChBC,KAAK,EAAEH,MAAM;MACbI,QAAQ,EAAE;IACZ,CAAC;IACDH,KAAK,EAAE;MACLC,UAAU,EAAE,IAAI;MAChBC,KAAK,EAAEF,KAAK;MACZG,QAAQ,EAAE;IACZ,CAAC;IACDC,gBAAgB,EAAE;MAChBH,UAAU,EAAE,IAAI;MAChBC,KAAK,EACH,wBAASH,MAAM,CAAC,IAChB,CAAC,oBAAaA,MAAM,CAAC,IACrB,wBAASC,KAAK,CAAC,IACf,CAAC,oBAAaA,KAAK,CAAC,IACpBA,KAAK,GAAG,CAAC;MACXG,QAAQ,EAAE;IACZ;EACF,CAAC,CAAC;AACJ"}
|
package/dist/request/index.js
CHANGED
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
5
|
_Object$defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
|
|
11
8
|
exports.default = request;
|
|
12
|
-
|
|
13
9
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
14
|
-
|
|
15
10
|
var _events = require("events");
|
|
16
|
-
|
|
17
11
|
var _request2 = _interopRequireDefault(require("./request"));
|
|
18
|
-
|
|
19
12
|
/*!
|
|
20
13
|
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
21
14
|
*/
|
|
@@ -29,7 +22,6 @@ function request(options) {
|
|
|
29
22
|
options.uri = options.url;
|
|
30
23
|
options.url = null;
|
|
31
24
|
}
|
|
32
|
-
|
|
33
25
|
options.headers = options.headers || {};
|
|
34
26
|
options.download = new _events.EventEmitter();
|
|
35
27
|
options.upload = new _events.EventEmitter();
|
|
@@ -37,15 +29,14 @@ function request(options) {
|
|
|
37
29
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
38
30
|
args[_key] = arguments[_key];
|
|
39
31
|
}
|
|
40
|
-
|
|
41
32
|
return _request2.default.apply(void 0, [options].concat(args));
|
|
42
33
|
}).then(function () {
|
|
43
34
|
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
44
35
|
args[_key2] = arguments[_key2];
|
|
45
36
|
}
|
|
46
|
-
|
|
47
37
|
return intercept.apply(void 0, [options.interceptors.slice().reverse(), 'Response'].concat(args));
|
|
48
38
|
});
|
|
39
|
+
|
|
49
40
|
/**
|
|
50
41
|
* @param {Array} interceptors
|
|
51
42
|
* @param {string} key
|
|
@@ -53,26 +44,21 @@ function request(options) {
|
|
|
53
44
|
* @private
|
|
54
45
|
* @returns {Promise}
|
|
55
46
|
*/
|
|
56
|
-
|
|
57
47
|
function intercept(interceptors, key, res) {
|
|
58
48
|
var successKey = "on".concat(key);
|
|
59
49
|
var errorKey = "on".concat(key, "Error");
|
|
60
50
|
return interceptors.reduce(function (promise, interceptor) {
|
|
61
51
|
return promise.then(function (result) {
|
|
62
52
|
interceptor.logOptions(options);
|
|
63
|
-
|
|
64
53
|
if (interceptor[successKey]) {
|
|
65
54
|
return interceptor[successKey](options, result);
|
|
66
55
|
}
|
|
67
|
-
|
|
68
56
|
return _promise.default.resolve(result);
|
|
69
57
|
}, function (reason) {
|
|
70
58
|
interceptor.logOptions(options);
|
|
71
|
-
|
|
72
59
|
if (interceptor[errorKey]) {
|
|
73
60
|
return interceptor[errorKey](options, reason);
|
|
74
61
|
}
|
|
75
|
-
|
|
76
62
|
return _promise.default.reject(reason);
|
|
77
63
|
});
|
|
78
64
|
}, _promise.default.resolve(res));
|