Template Upload
This commit is contained in:
7
node_modules/popsicle-retry/dist/index.d.ts
generated
vendored
Normal file
7
node_modules/popsicle-retry/dist/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
import { Request } from 'popsicle';
|
||||
declare function popsicleRetry(retries?: (request: Request, iter: number) => number): (self: Request) => void;
|
||||
declare namespace popsicleRetry {
|
||||
function retryAllowed(request: Request): boolean;
|
||||
function retries(count?: number, isRetryAllowed?: typeof retryAllowed): (request: Request, iter: number) => number;
|
||||
}
|
||||
export = popsicleRetry;
|
48
node_modules/popsicle-retry/dist/index.js
generated
vendored
Normal file
48
node_modules/popsicle-retry/dist/index.js
generated
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
"use strict";
|
||||
var Promise = require('any-promise');
|
||||
function popsicleRetry(retries) {
|
||||
if (retries === void 0) { retries = popsicleRetry.retries(); }
|
||||
return function (self) {
|
||||
var iter = 0;
|
||||
self.always(function (request) {
|
||||
var delay = retries(request, ++iter);
|
||||
if (delay > 0) {
|
||||
return new Promise(function (resolve) {
|
||||
setTimeout(function () {
|
||||
resolve(request.clone());
|
||||
}, delay);
|
||||
})
|
||||
.then(function (response) {
|
||||
request.response = response;
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
var popsicleRetry;
|
||||
(function (popsicleRetry) {
|
||||
function retryAllowed(request) {
|
||||
if (request.errored) {
|
||||
return request.errored.code === 'EUNAVAILABLE';
|
||||
}
|
||||
if (request.response) {
|
||||
return request.response.statusType() === 5;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
popsicleRetry.retryAllowed = retryAllowed;
|
||||
function retries(count, isRetryAllowed) {
|
||||
if (count === void 0) { count = 5; }
|
||||
if (isRetryAllowed === void 0) { isRetryAllowed = retryAllowed; }
|
||||
return function (request, iter) {
|
||||
if (iter > count || !isRetryAllowed(request)) {
|
||||
return -1;
|
||||
}
|
||||
var noise = Math.random() * 100;
|
||||
return (1 << iter) * 1000 + noise;
|
||||
};
|
||||
}
|
||||
popsicleRetry.retries = retries;
|
||||
})(popsicleRetry || (popsicleRetry = {}));
|
||||
module.exports = popsicleRetry;
|
||||
//# sourceMappingURL=index.js.map
|
1
node_modules/popsicle-retry/dist/index.js.map
generated
vendored
Normal file
1
node_modules/popsicle-retry/dist/index.js.map
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,IAAO,OAAO,WAAW,aAAa,CAAC,CAAA;AAMvC,uBAAwB,OAAiC;IAAjC,uBAAiC,GAAjC,UAAU,aAAa,CAAC,OAAO,EAAE;IACvD,MAAM,CAAC,UAAU,IAAa;QAC5B,IAAI,IAAI,GAAG,CAAC,CAAA;QAEZ,IAAI,CAAC,MAAM,CAAC,UAAU,OAAO;YAC3B,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAA;YAEtC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;gBACd,MAAM,CAAC,IAAI,OAAO,CAAC,UAAA,OAAO;oBACxB,UAAU,CAAC;wBACT,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;oBAC1B,CAAC,EAAE,KAAK,CAAC,CAAA;gBACX,CAAC,CAAC;qBAEC,IAAI,CAAC,UAAU,QAAkB;oBAChC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAA;gBAC7B,CAAC,CAAC,CAAA;YACN,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC;AAED,IAAU,aAAa,CA8BtB;AA9BD,WAAU,aAAa,EAAC,CAAC;IAIvB,sBAA8B,OAAgB;QAC5C,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,cAAc,CAAA;QAChD,CAAC;QAED,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,CAAC,KAAK,CAAA;IACd,CAAC;IAVe,0BAAY,eAU3B,CAAA;IAKD,iBAAyB,KAAS,EAAE,cAA6B;QAAxC,qBAAS,GAAT,SAAS;QAAE,8BAA6B,GAA7B,6BAA6B;QAE/D,MAAM,CAAC,UAAU,OAAgB,EAAE,IAAY;YAC7C,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7C,MAAM,CAAC,CAAC,CAAC,CAAA;YACX,CAAC;YAED,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAA;YACjC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAA;QACnC,CAAC,CAAA;IACH,CAAC;IAVe,qBAAO,UAUtB,CAAA;AACH,CAAC,EA9BS,aAAa,KAAb,aAAa,QA8BtB;AAED,iBAAS,aAAa,CAAA"}
|
Reference in New Issue
Block a user