@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.
Files changed (124) hide show
  1. package/dependencies/src/axios-0.33.0/index.d.ts +345 -0
  2. package/dependencies/src/axios-0.33.0/lib/adapters/http.js +771 -0
  3. package/dependencies/src/axios-0.33.0/lib/adapters/xhr.js +305 -0
  4. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/axios.js +22 -7
  5. package/dependencies/src/axios-0.33.0/lib/cancel/CancelToken.js +118 -0
  6. package/dependencies/src/axios-0.33.0/lib/cancel/CanceledError.js +24 -0
  7. package/dependencies/src/axios-0.33.0/lib/core/Axios.js +178 -0
  8. package/dependencies/src/axios-0.33.0/lib/core/AxiosError.js +173 -0
  9. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/InterceptorManager.js +13 -2
  10. package/dependencies/src/axios-0.33.0/lib/core/buildFullPath.js +23 -0
  11. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/dispatchRequest.js +34 -16
  12. package/dependencies/src/axios-0.33.0/lib/core/mergeConfig.js +117 -0
  13. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/settle.js +4 -4
  14. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/core/transformData.js +5 -2
  15. package/dependencies/src/axios-0.33.0/lib/defaults/index.js +181 -0
  16. package/dependencies/src/axios-0.33.0/lib/defaults/transitional.js +7 -0
  17. package/dependencies/src/axios-0.33.0/lib/env/classes/FormData.js +2 -0
  18. package/dependencies/src/axios-0.33.0/lib/env/data.js +3 -0
  19. package/dependencies/src/axios-0.33.0/lib/helpers/AxiosURLSearchParams.js +50 -0
  20. package/dependencies/src/axios-0.33.0/lib/helpers/bind.js +7 -0
  21. package/dependencies/src/axios-0.33.0/lib/helpers/buildURL.js +63 -0
  22. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/combineURLs.js +1 -1
  23. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/cookies.js +15 -2
  24. package/dependencies/src/axios-0.33.0/lib/helpers/defaultRedactKeys.js +3 -0
  25. package/dependencies/src/axios-0.33.0/lib/helpers/estimateDataURLDecodedBytes.js +79 -0
  26. package/dependencies/src/axios-0.33.0/lib/helpers/formDataToJSON.js +91 -0
  27. package/dependencies/src/axios-0.33.0/lib/helpers/fromDataURI.js +51 -0
  28. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/isAbsoluteURL.js +1 -1
  29. package/dependencies/src/axios-0.33.0/lib/helpers/isAxiosError.js +13 -0
  30. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/isURLSameOrigin.js +12 -12
  31. package/dependencies/src/axios-0.33.0/lib/helpers/null.js +2 -0
  32. package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/parseHeaders.js +2 -2
  33. package/dependencies/src/axios-0.33.0/lib/helpers/parseProtocol.js +6 -0
  34. package/dependencies/src/axios-0.33.0/lib/helpers/sanitizeHeaderValue.js +22 -0
  35. package/dependencies/src/axios-0.33.0/lib/helpers/shouldBypassProxy.js +187 -0
  36. package/dependencies/src/axios-0.33.0/lib/helpers/toFormData.js +212 -0
  37. package/dependencies/src/axios-0.33.0/lib/helpers/toURLEncodedForm.js +18 -0
  38. package/dependencies/src/axios-0.33.0/lib/helpers/validator.js +86 -0
  39. package/dependencies/src/axios-0.33.0/lib/platform/browser/classes/FormData.js +3 -0
  40. package/dependencies/src/axios-0.33.0/lib/platform/browser/classes/URLSearchParams.js +5 -0
  41. package/dependencies/src/axios-0.33.0/lib/platform/browser/index.js +11 -0
  42. package/dependencies/src/axios-0.33.0/lib/platform/index.js +3 -0
  43. package/dependencies/src/axios-0.33.0/lib/platform/node/classes/FormData.js +3 -0
  44. package/dependencies/src/axios-0.33.0/lib/platform/node/classes/URLSearchParams.js +5 -0
  45. package/dependencies/src/axios-0.33.0/lib/platform/node/index.js +11 -0
  46. package/dependencies/src/axios-0.33.0/lib/utils.js +565 -0
  47. package/dependencies/src/axios-0.33.0/package.json +100 -0
  48. package/dependencies/src/{bn.js-4.11.8 → bn.js-4.11.9}/lib/bn.js +7 -1
  49. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curve/base.js +36 -31
  50. package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/edwards.js +13 -10
  51. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curve/mont.js +1 -1
  52. package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/short.js +48 -47
  53. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/curves.js +21 -21
  54. package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/ec/index.js +53 -16
  55. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/ec/key.js +8 -5
  56. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/ec/signature.js +11 -1
  57. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/eddsa/index.js +5 -2
  58. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/eddsa/signature.js +3 -2
  59. package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/precomputed/secp256k1.js +197 -197
  60. package/dependencies/src/{elliptic-6.5.3 → elliptic-6.6.1}/lib/elliptic/utils.js +12 -9
  61. package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/package.json +20 -22
  62. package/dependencies/src/ethereumjs-util-5.2.0/index.js +1 -1
  63. package/dependencies/src/follow-redirects-1.16.0/debug.js +15 -0
  64. package/dependencies/src/follow-redirects-1.16.0/index.js +709 -0
  65. package/dependencies/src/follow-redirects-1.16.0/package.json +58 -0
  66. package/dependencies/src/proxy-from-env-1.1.0/index.js +108 -0
  67. package/dependencies/src/proxy-from-env-1.1.0/package.json +34 -0
  68. package/dependencies/src/secp256k1-3.7.1/lib/elliptic/index.js +2 -2
  69. package/dependencies/src/secp256k1-4.0.2/lib/elliptic.js +1 -1
  70. package/dependencies/src/tiny-secp256k1-1.1.3/js.js +2 -2
  71. package/errors/index.d.ts +2 -2
  72. package/errors/index.js.map +1 -1
  73. package/package.json +2 -2
  74. package/utils/remote-data/HttpRemoteData.js +3 -8
  75. package/utils/remote-data/HttpRemoteData.js.map +1 -1
  76. package/utils/remote-data/IpfsRemoteData.js +13 -7
  77. package/utils/remote-data/IpfsRemoteData.js.map +1 -1
  78. package/utils/remote-data/Sha256RemoteData.js +5 -6
  79. package/utils/remote-data/Sha256RemoteData.js.map +1 -1
  80. package/utils/remote-data/remoteDataRequest.d.ts +16 -0
  81. package/utils/remote-data/remoteDataRequest.js +240 -0
  82. package/utils/remote-data/remoteDataRequest.js.map +1 -0
  83. package/dependencies/src/axios-0.19.0/index.d.ts +0 -152
  84. package/dependencies/src/axios-0.19.0/lib/adapters/http.js +0 -275
  85. package/dependencies/src/axios-0.19.0/lib/adapters/xhr.js +0 -174
  86. package/dependencies/src/axios-0.19.0/lib/cancel/Cancel.js +0 -19
  87. package/dependencies/src/axios-0.19.0/lib/cancel/CancelToken.js +0 -57
  88. package/dependencies/src/axios-0.19.0/lib/core/Axios.js +0 -86
  89. package/dependencies/src/axios-0.19.0/lib/core/createError.js +0 -18
  90. package/dependencies/src/axios-0.19.0/lib/core/enhanceError.js +0 -42
  91. package/dependencies/src/axios-0.19.0/lib/core/mergeConfig.js +0 -51
  92. package/dependencies/src/axios-0.19.0/lib/defaults.js +0 -98
  93. package/dependencies/src/axios-0.19.0/lib/helpers/bind.js +0 -11
  94. package/dependencies/src/axios-0.19.0/lib/helpers/buildURL.js +0 -71
  95. package/dependencies/src/axios-0.19.0/lib/utils.js +0 -334
  96. package/dependencies/src/axios-0.19.0/package.json +0 -85
  97. package/dependencies/src/elliptic-6.5.1/lib/elliptic/curve/base.js +0 -374
  98. package/dependencies/src/elliptic-6.5.1/lib/elliptic/curve/mont.js +0 -178
  99. package/dependencies/src/elliptic-6.5.1/lib/elliptic/curves.js +0 -206
  100. package/dependencies/src/elliptic-6.5.1/lib/elliptic/ec/key.js +0 -118
  101. package/dependencies/src/elliptic-6.5.1/lib/elliptic/ec/signature.js +0 -134
  102. package/dependencies/src/elliptic-6.5.1/lib/elliptic/eddsa/index.js +0 -118
  103. package/dependencies/src/elliptic-6.5.1/lib/elliptic/eddsa/signature.js +0 -65
  104. package/dependencies/src/elliptic-6.5.1/lib/elliptic/utils.js +0 -120
  105. package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/edwards.js +0 -432
  106. package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/index.js +0 -8
  107. package/dependencies/src/elliptic-6.5.3/lib/elliptic/curve/short.js +0 -937
  108. package/dependencies/src/elliptic-6.5.3/lib/elliptic/ec/index.js +0 -241
  109. package/dependencies/src/elliptic-6.5.3/lib/elliptic/eddsa/key.js +0 -95
  110. package/dependencies/src/elliptic-6.5.3/lib/elliptic/precomputed/secp256k1.js +0 -780
  111. package/dependencies/src/elliptic-6.5.3/lib/elliptic.js +0 -13
  112. package/dependencies/src/elliptic-6.5.3/package.json +0 -55
  113. package/dependencies/src/follow-redirects-1.5.10/index.js +0 -322
  114. package/dependencies/src/is-buffer-2.0.3/index.js +0 -11
  115. /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/index.js +0 -0
  116. /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/cancel/isCancel.js +0 -0
  117. /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/deprecatedMethod.js +0 -0
  118. /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/normalizeHeaderName.js +0 -0
  119. /package/dependencies/src/{axios-0.19.0 → axios-0.33.0}/lib/helpers/spread.js +0 -0
  120. /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/curve/index.js +0 -0
  121. /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic/eddsa/key.js +0 -0
  122. /package/dependencies/src/{elliptic-6.5.1 → elliptic-6.6.1}/lib/elliptic.js +0 -0
  123. /package/dependencies/src/{follow-redirects-1.5.10 → follow-redirects-1.16.0}/http.js +0 -0
  124. /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.Cancel = require('./cancel/Cancel');
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;