axios 1.3.3 → 1.3.4

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.

Potentially problematic release.


This version of axios might be problematic. Click here for more details.

@@ -116,15 +116,39 @@ function setProxy(options, configProxy, location) {
116
116
 
117
117
  const isHttpAdapterSupported = typeof process !== 'undefined' && utils.kindOf(process) === 'process';
118
118
 
119
+ // temporary hotfix
120
+
121
+ const wrapAsync = (asyncExecutor) => {
122
+ return new Promise((resolve, reject) => {
123
+ let onDone;
124
+ let isDone;
125
+
126
+ const done = (value, isRejected) => {
127
+ if (isDone) return;
128
+ isDone = true;
129
+ onDone && onDone(value, isRejected);
130
+ }
131
+
132
+ const _resolve = (value) => {
133
+ done(value);
134
+ resolve(value);
135
+ };
136
+
137
+ const _reject = (reason) => {
138
+ done(reason, true);
139
+ reject(reason);
140
+ }
141
+
142
+ asyncExecutor(_resolve, _reject, (onDoneHandler) => (onDone = onDoneHandler)).catch(_reject);
143
+ })
144
+ };
145
+
119
146
  /*eslint consistent-return:0*/
120
147
  export default isHttpAdapterSupported && function httpAdapter(config) {
121
- /*eslint no-async-promise-executor:0*/
122
- return new Promise(async function dispatchHttpRequest(resolvePromise, rejectPromise) {
123
- let data = config.data;
124
- const responseType = config.responseType;
125
- const responseEncoding = config.responseEncoding;
148
+ return wrapAsync(async function dispatchHttpRequest(resolve, reject, onDone) {
149
+ let {data} = config;
150
+ const {responseType, responseEncoding} = config;
126
151
  const method = config.method.toUpperCase();
127
- let isFinished;
128
152
  let isDone;
129
153
  let rejected = false;
130
154
  let req;
@@ -132,10 +156,7 @@ export default isHttpAdapterSupported && function httpAdapter(config) {
132
156
  // temporary internal emitter until the AxiosRequest class will be implemented
133
157
  const emitter = new EventEmitter();
134
158
 
135
- function onFinished() {
136
- if (isFinished) return;
137
- isFinished = true;
138
-
159
+ const onFinished = () => {
139
160
  if (config.cancelToken) {
140
161
  config.cancelToken.unsubscribe(abort);
141
162
  }
@@ -147,26 +168,13 @@ export default isHttpAdapterSupported && function httpAdapter(config) {
147
168
  emitter.removeAllListeners();
148
169
  }
149
170
 
150
- function done(value, isRejected) {
151
- if (isDone) return;
152
-
171
+ onDone((value, isRejected) => {
153
172
  isDone = true;
154
-
155
173
  if (isRejected) {
156
174
  rejected = true;
157
175
  onFinished();
158
176
  }
159
-
160
- isRejected ? rejectPromise(value) : resolvePromise(value);
161
- }
162
-
163
- const resolve = function resolve(value) {
164
- done(value);
165
- };
166
-
167
- const reject = function reject(value) {
168
- done(value, true);
169
- };
177
+ });
170
178
 
171
179
  function abort(reason) {
172
180
  emitter.emit('abort', !reason || reason.type ? new CanceledError(null, config, req) : reason);
package/lib/env/data.js CHANGED
@@ -1 +1 @@
1
- export const VERSION = "1.3.3";
1
+ export const VERSION = "1.3.4";
@@ -0,0 +1,3 @@
1
+ 'use strict'
2
+
3
+ export default typeof Blob !== 'undefined' ? Blob : null
@@ -1,5 +1,6 @@
1
1
  import URLSearchParams from './classes/URLSearchParams.js'
2
2
  import FormData from './classes/FormData.js'
3
+ import Blob from './classes/Blob.js'
3
4
 
4
5
  /**
5
6
  * Determine if we're running in a standard browser environment
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axios",
3
- "version": "1.3.3",
3
+ "version": "1.3.4",
4
4
  "description": "Promise based HTTP client for the browser and node.js",
5
5
  "main": "index.js",
6
6
  "exports": {