@airgap/coinlib-core 0.13.46 → 0.13.47
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/dependencies/src/axios-0.33.0/index.d.ts +345 -0
- package/dependencies/src/axios-0.33.0/lib/adapters/http.js +771 -0
- package/dependencies/src/axios-0.33.0/lib/adapters/xhr.js +305 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/axios.js +22 -7
- package/dependencies/src/axios-0.33.0/lib/cancel/CancelToken.js +118 -0
- package/dependencies/src/axios-0.33.0/lib/cancel/CanceledError.js +24 -0
- package/dependencies/src/axios-0.33.0/lib/core/Axios.js +178 -0
- package/dependencies/src/axios-0.33.0/lib/core/AxiosError.js +173 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/InterceptorManager.js +13 -2
- package/dependencies/src/axios-0.33.0/lib/core/buildFullPath.js +23 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/dispatchRequest.js +34 -16
- package/dependencies/src/axios-0.33.0/lib/core/mergeConfig.js +117 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/settle.js +4 -4
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/transformData.js +5 -2
- package/dependencies/src/axios-0.33.0/lib/defaults/index.js +181 -0
- package/dependencies/src/axios-0.33.0/lib/defaults/transitional.js +7 -0
- package/dependencies/src/axios-0.33.0/lib/env/classes/FormData.js +2 -0
- package/dependencies/src/axios-0.33.0/lib/env/data.js +3 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/AxiosURLSearchParams.js +50 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/bind.js +7 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/buildURL.js +63 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/combineURLs.js +1 -1
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/cookies.js +15 -2
- package/dependencies/src/axios-0.33.0/lib/helpers/defaultRedactKeys.js +3 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/estimateDataURLDecodedBytes.js +79 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/formDataToJSON.js +91 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/fromDataURI.js +51 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/isAbsoluteURL.js +1 -1
- package/dependencies/src/axios-0.33.0/lib/helpers/isAxiosError.js +13 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/isURLSameOrigin.js +12 -12
- package/dependencies/src/axios-0.33.0/lib/helpers/null.js +2 -0
- package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/parseHeaders.js +2 -2
- package/dependencies/src/axios-0.33.0/lib/helpers/parseProtocol.js +6 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/sanitizeHeaderValue.js +22 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/shouldBypassProxy.js +187 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/toFormData.js +212 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/toURLEncodedForm.js +18 -0
- package/dependencies/src/axios-0.33.0/lib/helpers/validator.js +86 -0
- package/dependencies/src/axios-0.33.0/lib/platform/browser/classes/FormData.js +3 -0
- package/dependencies/src/axios-0.33.0/lib/platform/browser/classes/URLSearchParams.js +5 -0
- package/dependencies/src/axios-0.33.0/lib/platform/browser/index.js +11 -0
- package/dependencies/src/axios-0.33.0/lib/platform/index.js +3 -0
- package/dependencies/src/axios-0.33.0/lib/platform/node/classes/FormData.js +3 -0
- package/dependencies/src/axios-0.33.0/lib/platform/node/classes/URLSearchParams.js +5 -0
- package/dependencies/src/axios-0.33.0/lib/platform/node/index.js +11 -0
- package/dependencies/src/axios-0.33.0/lib/utils.js +565 -0
- package/dependencies/src/axios-0.33.0/package.json +100 -0
- package/dependencies/src/{bn.js-4.11.8 → bn.js-4.11.9}/lib/bn.js +7 -1
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curve/base.js +36 -31
- package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/edwards.js +13 -10
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curve/mont.js +1 -1
- package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/short.js +48 -47
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curves.js +21 -21
- package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/ec/index.js +53 -16
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/ec/key.js +8 -5
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/ec/signature.js +11 -1
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/eddsa/index.js +5 -2
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/eddsa/signature.js +3 -2
- package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/precomputed/secp256k1.js +197 -197
- package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/utils.js +12 -9
- package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/package.json +20 -22
- package/dependencies/src/ethereumjs-util-5.2.0/index.js +1 -1
- package/dependencies/src/follow-redirects-1.16.0/debug.js +15 -0
- package/dependencies/src/follow-redirects-1.16.0/index.js +709 -0
- package/dependencies/src/follow-redirects-1.16.0/package.json +58 -0
- package/dependencies/src/proxy-from-env-1.1.0/index.js +108 -0
- package/dependencies/src/proxy-from-env-1.1.0/package.json +34 -0
- package/dependencies/src/secp256k1-3.7.1/lib/elliptic/index.js +2 -2
- package/dependencies/src/secp256k1-4.0.2/lib/elliptic.js +1 -1
- package/dependencies/src/tiny-secp256k1-1.1.3/js.js +2 -2
- package/errors/index.d.ts +2 -2
- package/errors/index.js.map +1 -1
- package/package.json +2 -2
- package/utils/remote-data/HttpRemoteData.js +3 -8
- package/utils/remote-data/HttpRemoteData.js.map +1 -1
- package/utils/remote-data/IpfsRemoteData.js +13 -7
- package/utils/remote-data/IpfsRemoteData.js.map +1 -1
- package/utils/remote-data/Sha256RemoteData.js +5 -6
- package/utils/remote-data/Sha256RemoteData.js.map +1 -1
- package/utils/remote-data/remoteDataRequest.d.ts +16 -0
- package/utils/remote-data/remoteDataRequest.js +240 -0
- package/utils/remote-data/remoteDataRequest.js.map +1 -0
- package/dependencies/src/axios-0.19.0/index.d.ts +0 -152
- package/dependencies/src/axios-0.19.0/lib/adapters/http.js +0 -275
- package/dependencies/src/axios-0.19.0/lib/adapters/xhr.js +0 -174
- package/dependencies/src/axios-0.19.0/lib/cancel/Cancel.js +0 -19
- package/dependencies/src/axios-0.19.0/lib/cancel/CancelToken.js +0 -57
- package/dependencies/src/axios-0.19.0/lib/core/Axios.js +0 -86
- package/dependencies/src/axios-0.19.0/lib/core/createError.js +0 -18
- package/dependencies/src/axios-0.19.0/lib/core/enhanceError.js +0 -42
- package/dependencies/src/axios-0.19.0/lib/core/mergeConfig.js +0 -51
- package/dependencies/src/axios-0.19.0/lib/defaults.js +0 -98
- package/dependencies/src/axios-0.19.0/lib/helpers/bind.js +0 -11
- package/dependencies/src/axios-0.19.0/lib/helpers/buildURL.js +0 -71
- package/dependencies/src/axios-0.19.0/lib/utils.js +0 -334
- package/dependencies/src/axios-0.19.0/package.json +0 -85
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/curve/base.js +0 -374
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/curve/mont.js +0 -178
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/curves.js +0 -206
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/ec/key.js +0 -118
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/ec/signature.js +0 -134
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/eddsa/index.js +0 -118
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/eddsa/signature.js +0 -65
- package/dependencies/src/elliptic-6.5.1/lib/elliptic/utils.js +0 -120
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/edwards.js +0 -432
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/index.js +0 -8
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/short.js +0 -937
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/ec/index.js +0 -241
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/eddsa/key.js +0 -95
- package/dependencies/src/elliptic-6.5.3/lib/elliptic/precomputed/secp256k1.js +0 -780
- package/dependencies/src/elliptic-6.5.3/lib/elliptic.js +0 -13
- package/dependencies/src/elliptic-6.5.3/package.json +0 -55
- package/dependencies/src/follow-redirects-1.5.10/index.js +0 -322
- package/dependencies/src/is-buffer-2.0.3/index.js +0 -11
- /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/index.js +0 -0
- /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/cancel/isCancel.js +0 -0
- /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/deprecatedMethod.js +0 -0
- /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/normalizeHeaderName.js +0 -0
- /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/spread.js +0 -0
- /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/index.js +0 -0
- /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/eddsa/key.js +0 -0
- /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic.js +0 -0
- /package/dependencies/src/{follow-redirects-1.5.10 → follow-redirects-1.16.0}/http.js +0 -0
- /package/dependencies/src/{follow-redirects-1.5.10 → follow-redirects-1.16.0}/https.js +0 -0
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var utils = require('./../utils');
|
|
4
|
+
var settle = require('./../core/settle');
|
|
5
|
+
var cookies = require('./../helpers/cookies');
|
|
6
|
+
var buildURL = require('./../helpers/buildURL');
|
|
7
|
+
var buildFullPath = require('../core/buildFullPath');
|
|
8
|
+
var parseHeaders = require('./../helpers/parseHeaders');
|
|
9
|
+
var isURLSameOrigin = require('./../helpers/isURLSameOrigin');
|
|
10
|
+
var transitionalDefaults = require('../defaults/transitional');
|
|
11
|
+
var AxiosError = require('../core/AxiosError');
|
|
12
|
+
var CanceledError = require('../cancel/CanceledError');
|
|
13
|
+
var parseProtocol = require('../helpers/parseProtocol');
|
|
14
|
+
var platform = require('../platform');
|
|
15
|
+
|
|
16
|
+
module.exports = function xhrAdapter(config) {
|
|
17
|
+
return new Promise(function dispatchXhrRequest(resolve, reject) {
|
|
18
|
+
var requestData = config.data;
|
|
19
|
+
var requestHeaders = config.headers;
|
|
20
|
+
var responseType = config.responseType;
|
|
21
|
+
// Guard against prototype pollution: only honor own properties.
|
|
22
|
+
var withXSRFToken = utils.hasOwnProperty(config, 'withXSRFToken')
|
|
23
|
+
? config.withXSRFToken
|
|
24
|
+
: undefined;
|
|
25
|
+
var onCanceled;
|
|
26
|
+
function done() {
|
|
27
|
+
if (config.cancelToken) {
|
|
28
|
+
config.cancelToken.unsubscribe(onCanceled);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (config.signal) {
|
|
32
|
+
config.signal.removeEventListener('abort', onCanceled);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
if (utils.isFormData(requestData) && utils.isStandardBrowserEnv()) {
|
|
37
|
+
delete requestHeaders['Content-Type']; // Let the browser set it
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
var request = new XMLHttpRequest();
|
|
41
|
+
|
|
42
|
+
// HTTP basic authentication
|
|
43
|
+
var configAuth = utils.hasOwnProperty(config, 'auth') ? config.auth : undefined;
|
|
44
|
+
if (configAuth) {
|
|
45
|
+
var username = utils.hasOwnProperty(configAuth, 'username') ? configAuth.username || '' : '';
|
|
46
|
+
var password = utils.hasOwnProperty(configAuth, 'password') && configAuth.password
|
|
47
|
+
? unescape(encodeURIComponent(configAuth.password))
|
|
48
|
+
: '';
|
|
49
|
+
requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
var fullPath = buildFullPath(
|
|
53
|
+
config.baseURL,
|
|
54
|
+
config.url,
|
|
55
|
+
config.allowAbsoluteUrls
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
request.open(
|
|
59
|
+
config.method.toUpperCase(),
|
|
60
|
+
buildURL(
|
|
61
|
+
fullPath,
|
|
62
|
+
config.params,
|
|
63
|
+
utils.hasOwnProperty(config, 'paramsSerializer') ? config.paramsSerializer : undefined
|
|
64
|
+
),
|
|
65
|
+
true
|
|
66
|
+
);
|
|
67
|
+
|
|
68
|
+
// Set the request timeout in MS
|
|
69
|
+
request.timeout = config.timeout;
|
|
70
|
+
|
|
71
|
+
function onloadend() {
|
|
72
|
+
if (!request) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
// Prepare the response
|
|
76
|
+
var responseHeaders =
|
|
77
|
+
'getAllResponseHeaders' in request
|
|
78
|
+
? parseHeaders(request.getAllResponseHeaders())
|
|
79
|
+
: null;
|
|
80
|
+
var responseData =
|
|
81
|
+
!responseType || responseType === 'text' || responseType === 'json'
|
|
82
|
+
? request.responseText
|
|
83
|
+
: request.response;
|
|
84
|
+
var response = {
|
|
85
|
+
data: responseData,
|
|
86
|
+
status: request.status,
|
|
87
|
+
statusText: request.statusText,
|
|
88
|
+
headers: responseHeaders,
|
|
89
|
+
config: config,
|
|
90
|
+
request: request
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
settle(
|
|
94
|
+
function _resolve(value) {
|
|
95
|
+
resolve(value);
|
|
96
|
+
done();
|
|
97
|
+
},
|
|
98
|
+
function _reject(err) {
|
|
99
|
+
reject(err);
|
|
100
|
+
done();
|
|
101
|
+
},
|
|
102
|
+
response
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
// Clean up request
|
|
106
|
+
request = null;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
if ('onloadend' in request) {
|
|
110
|
+
// Use onloadend if available
|
|
111
|
+
request.onloadend = onloadend;
|
|
112
|
+
} else {
|
|
113
|
+
// Listen for ready state to emulate onloadend
|
|
114
|
+
request.onreadystatechange = function handleLoad() {
|
|
115
|
+
if (!request || request.readyState !== 4) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// The request errored out and we didn't get a response, this will be
|
|
120
|
+
// handled by onerror instead
|
|
121
|
+
// With one exception: request that using file: protocol, most browsers
|
|
122
|
+
// will return status as 0 even though it's a successful request
|
|
123
|
+
if (
|
|
124
|
+
request.status === 0 &&
|
|
125
|
+
!(request.responseURL && request.responseURL.indexOf('file:') === 0)
|
|
126
|
+
) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
// readystate handler is calling before onerror or ontimeout handlers,
|
|
130
|
+
// so we should call onloadend on the next 'tick'
|
|
131
|
+
setTimeout(onloadend);
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Handle browser request cancellation (as opposed to a manual cancellation)
|
|
136
|
+
request.onabort = function handleAbort() {
|
|
137
|
+
if (!request) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
reject(
|
|
142
|
+
new AxiosError(
|
|
143
|
+
'Request aborted',
|
|
144
|
+
AxiosError.ECONNABORTED,
|
|
145
|
+
config,
|
|
146
|
+
request
|
|
147
|
+
)
|
|
148
|
+
);
|
|
149
|
+
|
|
150
|
+
// Clean up request
|
|
151
|
+
request = null;
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// Handle low level network errors
|
|
155
|
+
request.onerror = function handleError() {
|
|
156
|
+
// Real errors are hidden from us by the browser
|
|
157
|
+
// onerror should only fire if it's a network error
|
|
158
|
+
reject(
|
|
159
|
+
new AxiosError(
|
|
160
|
+
'Network Error',
|
|
161
|
+
AxiosError.ERR_NETWORK,
|
|
162
|
+
config,
|
|
163
|
+
request
|
|
164
|
+
)
|
|
165
|
+
);
|
|
166
|
+
|
|
167
|
+
// Clean up request
|
|
168
|
+
request = null;
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
// Handle timeout
|
|
172
|
+
request.ontimeout = function handleTimeout() {
|
|
173
|
+
var timeoutErrorMessage = config.timeout
|
|
174
|
+
? 'timeout of ' + config.timeout + 'ms exceeded'
|
|
175
|
+
: 'timeout exceeded';
|
|
176
|
+
var transitional = config.transitional || transitionalDefaults;
|
|
177
|
+
if (config.timeoutErrorMessage) {
|
|
178
|
+
timeoutErrorMessage = config.timeoutErrorMessage;
|
|
179
|
+
}
|
|
180
|
+
reject(
|
|
181
|
+
new AxiosError(
|
|
182
|
+
timeoutErrorMessage,
|
|
183
|
+
transitional.clarifyTimeoutError
|
|
184
|
+
? AxiosError.ETIMEDOUT
|
|
185
|
+
: AxiosError.ECONNABORTED,
|
|
186
|
+
config,
|
|
187
|
+
request
|
|
188
|
+
)
|
|
189
|
+
);
|
|
190
|
+
|
|
191
|
+
// Clean up request
|
|
192
|
+
request = null;
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
// Add xsrf header
|
|
196
|
+
// This is only done if running in a standard browser environment.
|
|
197
|
+
// Specifically not if we're in a web worker, or react-native.
|
|
198
|
+
if (utils.isStandardBrowserEnv()) {
|
|
199
|
+
// Add xsrf header
|
|
200
|
+
if (utils.isFunction(withXSRFToken)) {
|
|
201
|
+
withXSRFToken = withXSRFToken(config);
|
|
202
|
+
}
|
|
203
|
+
// Strict boolean check: only `true` short-circuits the same-origin guard.
|
|
204
|
+
if (
|
|
205
|
+
withXSRFToken === true ||
|
|
206
|
+
(withXSRFToken !== false && isURLSameOrigin(fullPath))
|
|
207
|
+
) {
|
|
208
|
+
// Add xsrf header
|
|
209
|
+
var xsrfValue =
|
|
210
|
+
config.xsrfHeaderName &&
|
|
211
|
+
config.xsrfCookieName &&
|
|
212
|
+
cookies.read(config.xsrfCookieName);
|
|
213
|
+
if (xsrfValue) {
|
|
214
|
+
requestHeaders[config.xsrfHeaderName] = xsrfValue;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// Add headers to the request
|
|
220
|
+
if ('setRequestHeader' in request) {
|
|
221
|
+
utils.forEach(requestHeaders, function setRequestHeader(val, key) {
|
|
222
|
+
if (
|
|
223
|
+
typeof requestData === 'undefined' &&
|
|
224
|
+
key.toLowerCase() === 'content-type'
|
|
225
|
+
) {
|
|
226
|
+
// Remove Content-Type if data is undefined
|
|
227
|
+
delete requestHeaders[key];
|
|
228
|
+
} else {
|
|
229
|
+
// Otherwise add header to the request
|
|
230
|
+
request.setRequestHeader(key, val);
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
// Add withCredentials to request if needed
|
|
236
|
+
if (!utils.isUndefined(config.withCredentials)) {
|
|
237
|
+
request.withCredentials = !!config.withCredentials;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
// Add responseType to request if needed
|
|
241
|
+
if (responseType && responseType !== 'json') {
|
|
242
|
+
request.responseType = config.responseType;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// Handle progress if needed
|
|
246
|
+
if (typeof config.onDownloadProgress === 'function') {
|
|
247
|
+
request.addEventListener('progress', config.onDownloadProgress);
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
// Not all browsers support upload events
|
|
251
|
+
if (typeof config.onUploadProgress === 'function' && request.upload) {
|
|
252
|
+
request.upload.addEventListener('progress', config.onUploadProgress);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
if (config.cancelToken || config.signal) {
|
|
256
|
+
// Handle cancellation
|
|
257
|
+
// eslint-disable-next-line func-names
|
|
258
|
+
onCanceled = function(cancel) {
|
|
259
|
+
if (!request) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
reject(
|
|
263
|
+
!cancel || cancel.type
|
|
264
|
+
? new CanceledError(null, config, request)
|
|
265
|
+
: cancel
|
|
266
|
+
);
|
|
267
|
+
request.abort();
|
|
268
|
+
request = null;
|
|
269
|
+
};
|
|
270
|
+
|
|
271
|
+
config.cancelToken && config.cancelToken.subscribe(onCanceled);
|
|
272
|
+
if (config.signal) {
|
|
273
|
+
config.signal.aborted
|
|
274
|
+
? onCanceled()
|
|
275
|
+
: config.signal.addEventListener('abort', onCanceled);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// false, 0 (zero number), and '' (empty string) are valid JSON values
|
|
280
|
+
if (
|
|
281
|
+
!requestData &&
|
|
282
|
+
requestData !== false &&
|
|
283
|
+
requestData !== 0 &&
|
|
284
|
+
requestData !== ''
|
|
285
|
+
) {
|
|
286
|
+
requestData = null;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
var protocol = parseProtocol(fullPath);
|
|
290
|
+
|
|
291
|
+
if (protocol && platform.protocols.indexOf(protocol) === -1) {
|
|
292
|
+
reject(
|
|
293
|
+
new AxiosError(
|
|
294
|
+
'Unsupported protocol ' + protocol + ':',
|
|
295
|
+
AxiosError.ERR_BAD_REQUEST,
|
|
296
|
+
config
|
|
297
|
+
)
|
|
298
|
+
);
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
// Send the request
|
|
303
|
+
request.send(requestData);
|
|
304
|
+
});
|
|
305
|
+
};
|
|
@@ -5,7 +5,7 @@ var bind = require('./helpers/bind');
|
|
|
5
5
|
var Axios = require('./core/Axios');
|
|
6
6
|
var mergeConfig = require('./core/mergeConfig');
|
|
7
7
|
var defaults = require('./defaults');
|
|
8
|
-
|
|
8
|
+
var formDataToJSON = require('./helpers/formDataToJSON');
|
|
9
9
|
/**
|
|
10
10
|
* Create an instance of Axios
|
|
11
11
|
*
|
|
@@ -22,6 +22,11 @@ function createInstance(defaultConfig) {
|
|
|
22
22
|
// Copy context to instance
|
|
23
23
|
utils.extend(instance, context);
|
|
24
24
|
|
|
25
|
+
// Factory for creating new instances
|
|
26
|
+
instance.create = function create(instanceConfig) {
|
|
27
|
+
return createInstance(mergeConfig(defaultConfig, instanceConfig));
|
|
28
|
+
};
|
|
29
|
+
|
|
25
30
|
return instance;
|
|
26
31
|
}
|
|
27
32
|
|
|
@@ -31,15 +36,18 @@ var axios = createInstance(defaults);
|
|
|
31
36
|
// Expose Axios class to allow class inheritance
|
|
32
37
|
axios.Axios = Axios;
|
|
33
38
|
|
|
34
|
-
// Factory for creating new instances
|
|
35
|
-
axios.create = function create(instanceConfig) {
|
|
36
|
-
return createInstance(mergeConfig(axios.defaults, instanceConfig));
|
|
37
|
-
};
|
|
38
|
-
|
|
39
39
|
// Expose Cancel & CancelToken
|
|
40
|
-
axios.
|
|
40
|
+
axios.CanceledError = require('./cancel/CanceledError');
|
|
41
41
|
axios.CancelToken = require('./cancel/CancelToken');
|
|
42
42
|
axios.isCancel = require('./cancel/isCancel');
|
|
43
|
+
axios.VERSION = require('./env/data').version;
|
|
44
|
+
axios.toFormData = require('./helpers/toFormData');
|
|
45
|
+
|
|
46
|
+
// Expose AxiosError class
|
|
47
|
+
axios.AxiosError = require('../lib/core/AxiosError');
|
|
48
|
+
|
|
49
|
+
// alias for CanceledError for backward compatibility
|
|
50
|
+
axios.Cancel = axios.CanceledError;
|
|
43
51
|
|
|
44
52
|
// Expose all/spread
|
|
45
53
|
axios.all = function all(promises) {
|
|
@@ -47,6 +55,13 @@ axios.all = function all(promises) {
|
|
|
47
55
|
};
|
|
48
56
|
axios.spread = require('./helpers/spread');
|
|
49
57
|
|
|
58
|
+
// Expose isAxiosError
|
|
59
|
+
axios.isAxiosError = require('./helpers/isAxiosError');
|
|
60
|
+
|
|
61
|
+
axios.formToJSON = function(thing) {
|
|
62
|
+
return formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);
|
|
63
|
+
};
|
|
64
|
+
|
|
50
65
|
module.exports = axios;
|
|
51
66
|
|
|
52
67
|
// Allow use of default import syntax in TypeScript
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var CanceledError = require('./CanceledError');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A `CancelToken` is an object that can be used to request cancellation of an operation.
|
|
7
|
+
*
|
|
8
|
+
* @class
|
|
9
|
+
* @param {Function} executor The executor function.
|
|
10
|
+
*/
|
|
11
|
+
function CancelToken(executor) {
|
|
12
|
+
if (typeof executor !== 'function') {
|
|
13
|
+
throw new TypeError('executor must be a function.');
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
var resolvePromise;
|
|
17
|
+
|
|
18
|
+
this.promise = new Promise(function promiseExecutor(resolve) {
|
|
19
|
+
resolvePromise = resolve;
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
var token = this;
|
|
23
|
+
|
|
24
|
+
// eslint-disable-next-line func-names
|
|
25
|
+
this.promise.then(function(cancel) {
|
|
26
|
+
if (!token._listeners) return;
|
|
27
|
+
|
|
28
|
+
var i = token._listeners.length;
|
|
29
|
+
|
|
30
|
+
while (i-- > 0) {
|
|
31
|
+
token._listeners[i](cancel);
|
|
32
|
+
}
|
|
33
|
+
token._listeners = null;
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
// eslint-disable-next-line func-names
|
|
37
|
+
this.promise.then = function(onfulfilled) {
|
|
38
|
+
var _resolve;
|
|
39
|
+
// eslint-disable-next-line func-names
|
|
40
|
+
var promise = new Promise(function(resolve) {
|
|
41
|
+
token.subscribe(resolve);
|
|
42
|
+
_resolve = resolve;
|
|
43
|
+
}).then(onfulfilled);
|
|
44
|
+
|
|
45
|
+
promise.cancel = function reject() {
|
|
46
|
+
token.unsubscribe(_resolve);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
return promise;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
executor(function cancel(message, config, request) {
|
|
53
|
+
if (token.reason) {
|
|
54
|
+
// Cancellation has already been requested
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
token.reason = new CanceledError(message, config, request);
|
|
59
|
+
resolvePromise(token.reason);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Throws a `CanceledError` if cancellation has been requested.
|
|
65
|
+
*/
|
|
66
|
+
CancelToken.prototype.throwIfRequested = function throwIfRequested() {
|
|
67
|
+
if (this.reason) {
|
|
68
|
+
throw this.reason;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Subscribe to the cancel signal
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
CancelToken.prototype.subscribe = function subscribe(listener) {
|
|
77
|
+
if (this.reason) {
|
|
78
|
+
listener(this.reason);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
if (this._listeners) {
|
|
83
|
+
this._listeners.push(listener);
|
|
84
|
+
} else {
|
|
85
|
+
this._listeners = [listener];
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Unsubscribe from the cancel signal
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
CancelToken.prototype.unsubscribe = function unsubscribe(listener) {
|
|
94
|
+
if (!this._listeners) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
var index = this._listeners.indexOf(listener);
|
|
98
|
+
if (index !== -1) {
|
|
99
|
+
this._listeners.splice(index, 1);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Returns an object that contains a new `CancelToken` and a function that, when called,
|
|
105
|
+
* cancels the `CancelToken`.
|
|
106
|
+
*/
|
|
107
|
+
CancelToken.source = function source() {
|
|
108
|
+
var cancel;
|
|
109
|
+
var token = new CancelToken(function executor(c) {
|
|
110
|
+
cancel = c;
|
|
111
|
+
});
|
|
112
|
+
return {
|
|
113
|
+
token: token,
|
|
114
|
+
cancel: cancel
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
module.exports = CancelToken;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var AxiosError = require('../core/AxiosError');
|
|
4
|
+
var utils = require('../utils');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A `CanceledError` is an object that is thrown when an operation is canceled.
|
|
8
|
+
*
|
|
9
|
+
* @class
|
|
10
|
+
* @param {string=} message The message.
|
|
11
|
+
* @param {Object=} config The config.
|
|
12
|
+
* @param {Object=} request The request.
|
|
13
|
+
*/
|
|
14
|
+
function CanceledError(message, config, request) {
|
|
15
|
+
// eslint-disable-next-line no-eq-null,eqeqeq
|
|
16
|
+
AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);
|
|
17
|
+
this.name = 'CanceledError';
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
utils.inherits(CanceledError, AxiosError, {
|
|
21
|
+
__CANCEL__: true
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
module.exports = CanceledError;
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var utils = require('./../utils');
|
|
4
|
+
var buildURL = require('../helpers/buildURL');
|
|
5
|
+
var InterceptorManager = require('./InterceptorManager');
|
|
6
|
+
var dispatchRequest = require('./dispatchRequest');
|
|
7
|
+
var mergeConfig = require('./mergeConfig');
|
|
8
|
+
var buildFullPath = require('./buildFullPath');
|
|
9
|
+
var validator = require('../helpers/validator');
|
|
10
|
+
|
|
11
|
+
var validators = validator.validators;
|
|
12
|
+
/**
|
|
13
|
+
* Create a new instance of Axios
|
|
14
|
+
*
|
|
15
|
+
* @param {Object} instanceConfig The default config for the instance
|
|
16
|
+
*/
|
|
17
|
+
function Axios(instanceConfig) {
|
|
18
|
+
this.defaults = instanceConfig;
|
|
19
|
+
this.interceptors = {
|
|
20
|
+
request: new InterceptorManager(),
|
|
21
|
+
response: new InterceptorManager()
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Dispatch a request
|
|
27
|
+
*
|
|
28
|
+
* @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)
|
|
29
|
+
* @param {?Object} config
|
|
30
|
+
*/
|
|
31
|
+
Axios.prototype.request = function request(configOrUrl, config) {
|
|
32
|
+
/*eslint no-param-reassign:0*/
|
|
33
|
+
// Allow for axios('example/url'[, config]) a la fetch API
|
|
34
|
+
if (typeof configOrUrl === 'string') {
|
|
35
|
+
config = config || {};
|
|
36
|
+
config.url = configOrUrl;
|
|
37
|
+
} else {
|
|
38
|
+
config = configOrUrl || {};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
config = mergeConfig(this.defaults, config);
|
|
42
|
+
|
|
43
|
+
// Set config.method
|
|
44
|
+
if (config.method) {
|
|
45
|
+
config.method = config.method.toLowerCase();
|
|
46
|
+
} else if (this.defaults.method) {
|
|
47
|
+
config.method = this.defaults.method.toLowerCase();
|
|
48
|
+
} else {
|
|
49
|
+
config.method = 'get';
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
var transitional = config.transitional;
|
|
53
|
+
|
|
54
|
+
if (transitional !== undefined) {
|
|
55
|
+
validator.assertOptions(transitional, {
|
|
56
|
+
silentJSONParsing: validators.transitional(validators.boolean),
|
|
57
|
+
forcedJSONParsing: validators.transitional(validators.boolean),
|
|
58
|
+
clarifyTimeoutError: validators.transitional(validators.boolean)
|
|
59
|
+
}, false);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
var paramsSerializer = config.paramsSerializer;
|
|
63
|
+
|
|
64
|
+
if (paramsSerializer != null) {
|
|
65
|
+
if (utils.isFunction(paramsSerializer)) {
|
|
66
|
+
config.paramsSerializer = {
|
|
67
|
+
serialize: paramsSerializer
|
|
68
|
+
};
|
|
69
|
+
} else {
|
|
70
|
+
validator.assertOptions(paramsSerializer, {
|
|
71
|
+
encode: validators.function,
|
|
72
|
+
serialize: validators.function
|
|
73
|
+
}, true);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// filter out skipped interceptors
|
|
78
|
+
var requestInterceptorChain = [];
|
|
79
|
+
var synchronousRequestInterceptors = true;
|
|
80
|
+
this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
|
|
81
|
+
if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
|
|
86
|
+
|
|
87
|
+
requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
var responseInterceptorChain = [];
|
|
91
|
+
this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
|
|
92
|
+
responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
var promise;
|
|
96
|
+
|
|
97
|
+
if (!synchronousRequestInterceptors) {
|
|
98
|
+
var chain = [dispatchRequest, undefined];
|
|
99
|
+
|
|
100
|
+
Array.prototype.unshift.apply(chain, requestInterceptorChain);
|
|
101
|
+
chain = chain.concat(responseInterceptorChain);
|
|
102
|
+
|
|
103
|
+
promise = Promise.resolve(config);
|
|
104
|
+
while (chain.length) {
|
|
105
|
+
promise = promise.then(chain.shift(), chain.shift());
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
return promise;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
var newConfig = config;
|
|
113
|
+
while (requestInterceptorChain.length) {
|
|
114
|
+
var onFulfilled = requestInterceptorChain.shift();
|
|
115
|
+
var onRejected = requestInterceptorChain.shift();
|
|
116
|
+
try {
|
|
117
|
+
newConfig = onFulfilled(newConfig);
|
|
118
|
+
} catch (error) {
|
|
119
|
+
onRejected(error);
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
try {
|
|
125
|
+
promise = dispatchRequest(newConfig);
|
|
126
|
+
} catch (error) {
|
|
127
|
+
return Promise.reject(error);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
while (responseInterceptorChain.length) {
|
|
131
|
+
promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
return promise;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
Axios.prototype.getUri = function getUri(config) {
|
|
138
|
+
config = mergeConfig(this.defaults, config);
|
|
139
|
+
var fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);
|
|
140
|
+
return buildURL(fullPath, config.params, config.paramsSerializer);
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
// Provide aliases for supported request methods
|
|
144
|
+
utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
|
|
145
|
+
/*eslint func-names:0*/
|
|
146
|
+
Axios.prototype[method] = function(url, config) {
|
|
147
|
+
var requestConfig = config || {};
|
|
148
|
+
|
|
149
|
+
return this.request(mergeConfig(requestConfig, {
|
|
150
|
+
method: method,
|
|
151
|
+
url: url,
|
|
152
|
+
data: utils.hasOwnProperty(requestConfig, 'data') ? requestConfig.data : undefined
|
|
153
|
+
}));
|
|
154
|
+
};
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
|
|
158
|
+
/*eslint func-names:0*/
|
|
159
|
+
|
|
160
|
+
function generateHTTPMethod(isForm) {
|
|
161
|
+
return function httpMethod(url, data, config) {
|
|
162
|
+
return this.request(mergeConfig(config || {}, {
|
|
163
|
+
method: method,
|
|
164
|
+
headers: isForm ? {
|
|
165
|
+
'Content-Type': 'multipart/form-data'
|
|
166
|
+
} : {},
|
|
167
|
+
url: url,
|
|
168
|
+
data: data
|
|
169
|
+
}));
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
Axios.prototype[method] = generateHTTPMethod();
|
|
174
|
+
|
|
175
|
+
Axios.prototype[method + 'Form'] = generateHTTPMethod(true);
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
module.exports = Axios;
|