@ama-sdk/client-fetch 12.3.0-prerelease.70 → 12.3.0-prerelease.71
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/cjs/api-fetch-client.js +12 -13
- package/cjs/plugins/abort/abort.spec.js +79 -73
- package/cjs/plugins/concurrent/concurrent.fetch.js +8 -12
- package/cjs/plugins/concurrent/concurrent.spec.js +95 -91
- package/cjs/plugins/keepalive/keepalive.request.js +3 -4
- package/cjs/plugins/keepalive/keepalive.spec.js +28 -26
- package/cjs/plugins/mock-intercept/mock-intercept.fetch.js +11 -14
- package/cjs/plugins/mock-intercept/mock-intercept.spec.js +243 -231
- package/cjs/plugins/perf-metric/perf-metric.fetch.js +7 -10
- package/cjs/plugins/retry/retry.fetch.js +14 -19
- package/cjs/plugins/retry/retry.spec.js +229 -217
- package/cjs/plugins/timeout/timeout.fetch.js +9 -11
- package/cjs/plugins/timeout/timeout.spec.js +207 -197
- package/cjs/plugins/wait-for/wait-for.fetch.js +15 -21
- package/cjs/plugins/wait-for/wait-for.spec.js +207 -195
- package/esm2015/api-fetch-client.js +12 -13
- package/esm2015/plugins/abort/abort.spec.js +79 -73
- package/esm2015/plugins/concurrent/concurrent.fetch.js +8 -12
- package/esm2015/plugins/concurrent/concurrent.spec.js +95 -91
- package/esm2015/plugins/keepalive/keepalive.request.js +3 -4
- package/esm2015/plugins/keepalive/keepalive.spec.js +28 -26
- package/esm2015/plugins/mock-intercept/mock-intercept.fetch.js +11 -14
- package/esm2015/plugins/mock-intercept/mock-intercept.spec.js +243 -231
- package/esm2015/plugins/perf-metric/perf-metric.fetch.js +7 -10
- package/esm2015/plugins/retry/retry.fetch.js +14 -19
- package/esm2015/plugins/retry/retry.spec.js +229 -217
- package/esm2015/plugins/timeout/timeout.fetch.js +9 -11
- package/esm2015/plugins/timeout/timeout.spec.js +207 -197
- package/esm2015/plugins/wait-for/wait-for.fetch.js +15 -21
- package/esm2015/plugins/wait-for/wait-for.spec.js +207 -195
- package/package.json +8 -8
|
@@ -130,203 +130,213 @@ function _ts_generator(thisArg, body) {
|
|
|
130
130
|
}
|
|
131
131
|
var _this = void 0;
|
|
132
132
|
describe('Timeout Fetch Plugin', function() {
|
|
133
|
-
it('should reject on timeout',
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
return
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
promise
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
133
|
+
it('should reject on timeout', function() {
|
|
134
|
+
return _async_to_generator(function() {
|
|
135
|
+
var plugin, runner, call, callback;
|
|
136
|
+
return _ts_generator(this, function(_state) {
|
|
137
|
+
switch(_state.label){
|
|
138
|
+
case 0:
|
|
139
|
+
plugin = new _timeoutfetch.TimeoutFetch(100);
|
|
140
|
+
runner = plugin.load({
|
|
141
|
+
controller: new AbortController()
|
|
142
|
+
});
|
|
143
|
+
call = new Promise(function(resolve) {
|
|
144
|
+
return setTimeout(function() {
|
|
145
|
+
return resolve(undefined);
|
|
146
|
+
}, 1000);
|
|
147
|
+
});
|
|
148
|
+
callback = jest.fn();
|
|
149
|
+
runner.transform(call).catch(callback);
|
|
150
|
+
return [
|
|
151
|
+
4,
|
|
152
|
+
jest.advanceTimersByTimeAsync(99)
|
|
153
|
+
];
|
|
154
|
+
case 1:
|
|
155
|
+
_state.sent();
|
|
156
|
+
expect(callback).not.toHaveBeenCalled();
|
|
157
|
+
return [
|
|
158
|
+
4,
|
|
159
|
+
jest.advanceTimersByTimeAsync(1)
|
|
160
|
+
];
|
|
161
|
+
case 2:
|
|
162
|
+
_state.sent();
|
|
163
|
+
expect(callback).toHaveBeenCalledWith(new _core.ResponseTimeoutError('in 100ms'));
|
|
164
|
+
return [
|
|
165
|
+
2
|
|
166
|
+
];
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
})();
|
|
170
|
+
});
|
|
171
|
+
it('should not reject on fetch rejection', function() {
|
|
172
|
+
return _async_to_generator(function() {
|
|
173
|
+
var plugin, runner, call, callback;
|
|
174
|
+
return _ts_generator(this, function(_state) {
|
|
175
|
+
switch(_state.label){
|
|
176
|
+
case 0:
|
|
177
|
+
plugin = new _timeoutfetch.TimeoutFetch(6000);
|
|
178
|
+
runner = plugin.load({
|
|
179
|
+
controller: new AbortController()
|
|
180
|
+
});
|
|
181
|
+
call = new Promise(function(_resolve, reject) {
|
|
182
|
+
return setTimeout(function() {
|
|
183
|
+
return reject(new _core.EmptyResponseError(''));
|
|
184
|
+
}, 100);
|
|
185
|
+
});
|
|
186
|
+
callback = jest.fn();
|
|
187
|
+
runner.transform(call).catch(callback);
|
|
188
|
+
return [
|
|
189
|
+
4,
|
|
190
|
+
jest.advanceTimersByTimeAsync(6000)
|
|
191
|
+
];
|
|
192
|
+
case 1:
|
|
193
|
+
_state.sent();
|
|
194
|
+
expect(callback).toHaveBeenCalledWith(new _core.EmptyResponseError(''));
|
|
195
|
+
return [
|
|
196
|
+
2
|
|
197
|
+
];
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
})();
|
|
201
|
+
});
|
|
202
|
+
it('should forward the fetch response', function() {
|
|
203
|
+
return _async_to_generator(function() {
|
|
204
|
+
var plugin, runner, call, promise;
|
|
205
|
+
return _ts_generator(this, function(_state) {
|
|
206
|
+
switch(_state.label){
|
|
207
|
+
case 0:
|
|
208
|
+
plugin = new _timeoutfetch.TimeoutFetch(2000);
|
|
209
|
+
runner = plugin.load({
|
|
210
|
+
controller: new AbortController()
|
|
211
|
+
});
|
|
212
|
+
call = new Promise(function(resolve) {
|
|
213
|
+
return setTimeout(function() {
|
|
214
|
+
return resolve({
|
|
215
|
+
test: true
|
|
216
|
+
});
|
|
217
|
+
}, 100);
|
|
218
|
+
});
|
|
219
|
+
promise = runner.transform(call);
|
|
220
|
+
return [
|
|
221
|
+
4,
|
|
222
|
+
jest.runAllTimersAsync()
|
|
223
|
+
];
|
|
224
|
+
case 1:
|
|
225
|
+
_state.sent();
|
|
226
|
+
return [
|
|
227
|
+
4,
|
|
228
|
+
promise
|
|
229
|
+
];
|
|
230
|
+
case 2:
|
|
231
|
+
expect.apply(void 0, [
|
|
232
|
+
_state.sent()
|
|
233
|
+
]).toEqual({
|
|
234
|
+
test: true
|
|
235
|
+
});
|
|
236
|
+
return [
|
|
237
|
+
2
|
|
238
|
+
];
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
})();
|
|
242
|
+
});
|
|
243
|
+
it('should not reject if the timeout has been paused and reject if restarted', function() {
|
|
244
|
+
return _async_to_generator(function() {
|
|
245
|
+
var timeoutPauseEvent, plugin, runner, call, callback;
|
|
246
|
+
return _ts_generator(this, function(_state) {
|
|
247
|
+
switch(_state.label){
|
|
248
|
+
case 0:
|
|
249
|
+
timeoutPauseEvent = {
|
|
250
|
+
emitEvent: function(_status) {},
|
|
251
|
+
handler: function(timeoutPauseCallback) {
|
|
252
|
+
timeoutPauseEvent.emitEvent = timeoutPauseCallback;
|
|
253
|
+
return function() {};
|
|
254
|
+
}
|
|
255
|
+
};
|
|
256
|
+
plugin = new _timeoutfetch.TimeoutFetch(100, timeoutPauseEvent.handler);
|
|
257
|
+
runner = plugin.load({
|
|
258
|
+
controller: new AbortController()
|
|
259
|
+
});
|
|
260
|
+
call = new Promise(function(resolve) {
|
|
261
|
+
return setTimeout(function() {
|
|
262
|
+
return resolve({
|
|
263
|
+
test: true
|
|
264
|
+
});
|
|
265
|
+
}, 500);
|
|
266
|
+
});
|
|
267
|
+
callback = jest.fn();
|
|
268
|
+
runner.transform(call).catch(callback);
|
|
269
|
+
timeoutPauseEvent.emitEvent('timeoutStopped');
|
|
270
|
+
return [
|
|
271
|
+
4,
|
|
272
|
+
jest.advanceTimersByTimeAsync(200)
|
|
273
|
+
];
|
|
274
|
+
case 1:
|
|
275
|
+
_state.sent();
|
|
276
|
+
timeoutPauseEvent.emitEvent('timeoutStarted');
|
|
277
|
+
return [
|
|
278
|
+
4,
|
|
279
|
+
jest.advanceTimersByTimeAsync(200)
|
|
280
|
+
];
|
|
281
|
+
case 2:
|
|
282
|
+
_state.sent();
|
|
283
|
+
expect(callback).toHaveBeenCalledWith(new _core.ResponseTimeoutError('in 100ms'));
|
|
284
|
+
return [
|
|
285
|
+
2
|
|
286
|
+
];
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
})();
|
|
290
|
+
});
|
|
291
|
+
it('should take into account pause events triggered before the call', function() {
|
|
292
|
+
return _async_to_generator(function() {
|
|
293
|
+
var timeoutPauseEvent, plugin, runner, call, promise;
|
|
294
|
+
return _ts_generator(this, function(_state) {
|
|
295
|
+
switch(_state.label){
|
|
296
|
+
case 0:
|
|
297
|
+
timeoutPauseEvent = {
|
|
298
|
+
emitEvent: function(_status) {},
|
|
299
|
+
handler: function(timeoutPauseCallback) {
|
|
300
|
+
timeoutPauseEvent.emitEvent = timeoutPauseCallback;
|
|
301
|
+
return function() {};
|
|
302
|
+
}
|
|
303
|
+
};
|
|
304
|
+
plugin = new _timeoutfetch.TimeoutFetch(250, timeoutPauseEvent.handler);
|
|
305
|
+
runner = plugin.load({
|
|
306
|
+
controller: new AbortController()
|
|
307
|
+
});
|
|
308
|
+
call = new Promise(function(resolve) {
|
|
309
|
+
return setTimeout(function() {
|
|
310
|
+
return resolve({
|
|
311
|
+
test: true
|
|
312
|
+
});
|
|
313
|
+
}, 500);
|
|
314
|
+
});
|
|
315
|
+
timeoutPauseEvent.emitEvent('timeoutStopped');
|
|
316
|
+
promise = runner.transform(call);
|
|
317
|
+
return [
|
|
318
|
+
4,
|
|
319
|
+
jest.runAllTimersAsync()
|
|
320
|
+
];
|
|
321
|
+
case 1:
|
|
322
|
+
_state.sent();
|
|
323
|
+
return [
|
|
324
|
+
4,
|
|
325
|
+
promise
|
|
326
|
+
];
|
|
327
|
+
case 2:
|
|
328
|
+
expect.apply(void 0, [
|
|
329
|
+
_state.sent()
|
|
330
|
+
]).toEqual({
|
|
331
|
+
test: true
|
|
332
|
+
});
|
|
333
|
+
return [
|
|
334
|
+
2
|
|
335
|
+
];
|
|
336
|
+
}
|
|
337
|
+
});
|
|
338
|
+
})();
|
|
339
|
+
});
|
|
330
340
|
});
|
|
331
341
|
describe('impervaCaptchaEventHandlerFactory', function() {
|
|
332
342
|
var postMessageTemp;
|
|
@@ -214,23 +214,23 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
214
214
|
{
|
|
215
215
|
key: "load",
|
|
216
216
|
value: /** @inheritDoc */ function load(context) {
|
|
217
|
-
var data;
|
|
218
217
|
var _this = this;
|
|
218
|
+
var data;
|
|
219
219
|
return {
|
|
220
220
|
// eslint-disable-next-line no-async-promise-executor -- all await are handled with a try-catch block
|
|
221
221
|
canStart: function() {
|
|
222
|
-
return new Promise(
|
|
223
|
-
|
|
222
|
+
return new Promise(function(resolve) {
|
|
223
|
+
return _async_to_generator(function() {
|
|
224
224
|
var didTimeOut, timer, canStartCondition, canStart, e;
|
|
225
225
|
return _ts_generator(this, function(_state) {
|
|
226
226
|
switch(_state.label){
|
|
227
227
|
case 0:
|
|
228
228
|
didTimeOut = false;
|
|
229
|
-
if (
|
|
229
|
+
if (this.timeout) {
|
|
230
230
|
timer = setTimeout(function() {
|
|
231
231
|
didTimeOut = true;
|
|
232
232
|
resolve(false);
|
|
233
|
-
},
|
|
233
|
+
}, this.timeout);
|
|
234
234
|
}
|
|
235
235
|
_state.label = 1;
|
|
236
236
|
case 1:
|
|
@@ -242,7 +242,7 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
242
242
|
]);
|
|
243
243
|
return [
|
|
244
244
|
4,
|
|
245
|
-
|
|
245
|
+
this.canStartCondition(context)
|
|
246
246
|
];
|
|
247
247
|
case 2:
|
|
248
248
|
canStartCondition = _state.sent();
|
|
@@ -282,19 +282,16 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
282
282
|
];
|
|
283
283
|
}
|
|
284
284
|
});
|
|
285
|
-
});
|
|
286
|
-
|
|
287
|
-
return _ref.apply(this, arguments);
|
|
288
|
-
};
|
|
289
|
-
}());
|
|
285
|
+
}).call(_this);
|
|
286
|
+
});
|
|
290
287
|
},
|
|
291
|
-
transform:
|
|
292
|
-
|
|
288
|
+
transform: function(fetchCall) {
|
|
289
|
+
return _async_to_generator(function() {
|
|
293
290
|
var response, e;
|
|
294
291
|
return _ts_generator(this, function(_state) {
|
|
295
292
|
switch(_state.label){
|
|
296
293
|
case 0:
|
|
297
|
-
if (!
|
|
294
|
+
if (!this.callback) {
|
|
298
295
|
return [
|
|
299
296
|
2,
|
|
300
297
|
fetchCall
|
|
@@ -314,7 +311,7 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
314
311
|
];
|
|
315
312
|
case 2:
|
|
316
313
|
response = _state.sent();
|
|
317
|
-
|
|
314
|
+
this.callback(_object_spread_props(_object_spread({}, context), {
|
|
318
315
|
data: data
|
|
319
316
|
}), fetchCall, response);
|
|
320
317
|
return [
|
|
@@ -323,7 +320,7 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
323
320
|
];
|
|
324
321
|
case 3:
|
|
325
322
|
e = _state.sent();
|
|
326
|
-
|
|
323
|
+
this.callback(_object_spread_props(_object_spread({}, context), {
|
|
327
324
|
data: data
|
|
328
325
|
}), fetchCall, response);
|
|
329
326
|
throw e;
|
|
@@ -333,11 +330,8 @@ var WaitForFetch = /*#__PURE__*/ function() {
|
|
|
333
330
|
];
|
|
334
331
|
}
|
|
335
332
|
});
|
|
336
|
-
});
|
|
337
|
-
|
|
338
|
-
return _ref.apply(this, arguments);
|
|
339
|
-
};
|
|
340
|
-
}()
|
|
333
|
+
}).call(_this);
|
|
334
|
+
}
|
|
341
335
|
};
|
|
342
336
|
}
|
|
343
337
|
}
|