@@ -1,2 +0,2 @@ | ||
| export declare const version = "web/5.7.1"; | ||
| export declare const version = "web/5.7.3"; | ||
| //# sourceMappingURL=_version.d.ts.map |
+1
-1
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.version = void 0; | ||
| exports.version = "web/5.7.1"; | ||
| exports.version = "web/5.7.3"; | ||
| //# sourceMappingURL=_version.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"browser-geturl.d.ts","sourceRoot":"","sources":["../src.ts/browser-geturl.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;AAEnC,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CA8CrF"} | ||
| {"version":3,"file":"browser-geturl.d.ts","sourceRoot":"","sources":["../src.ts/browser-geturl.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;AAEnC,wBAAsB,MAAM,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,cAAc,CAAC,CA0DzB"} |
+54
-104
| "use strict"; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.getUrl = getUrl; | ||
| const bytes_1 = require("@qevm/bytes"); | ||
| async function getUrl(href, options) { | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.getUrl = void 0; | ||
| var bytes_1 = require("@qevm/bytes"); | ||
| function getUrl(href, options) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var request, opts, response, body, headers; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
| request = { | ||
| method: (options.method || "GET"), | ||
| headers: (options.headers || {}), | ||
| body: (options.body || undefined), | ||
| }; | ||
| if (options.skipFetchSetup !== true) { | ||
| request.mode = "cors"; // no-cors, cors, *same-origin | ||
| request.cache = "no-cache"; // *default, no-cache, reload, force-cache, only-if-cached | ||
| request.credentials = "same-origin"; // include, *same-origin, omit | ||
| request.redirect = "follow"; // manual, *follow, error | ||
| request.referrer = "client"; // no-referrer, *client | ||
| } | ||
| ; | ||
| if (options.fetchOptions != null) { | ||
| opts = options.fetchOptions; | ||
| if (opts.mode) { | ||
| request.mode = (opts.mode); | ||
| } | ||
| if (opts.cache) { | ||
| request.cache = (opts.cache); | ||
| } | ||
| if (opts.credentials) { | ||
| request.credentials = (opts.credentials); | ||
| } | ||
| if (opts.redirect) { | ||
| request.redirect = (opts.redirect); | ||
| } | ||
| if (opts.referrer) { | ||
| request.referrer = opts.referrer; | ||
| } | ||
| } | ||
| return [4 /*yield*/, fetch(href, request)]; | ||
| case 1: | ||
| response = _a.sent(); | ||
| return [4 /*yield*/, response.arrayBuffer()]; | ||
| case 2: | ||
| body = _a.sent(); | ||
| headers = {}; | ||
| if (response.headers.forEach) { | ||
| response.headers.forEach(function (value, key) { | ||
| headers[key.toLowerCase()] = value; | ||
| }); | ||
| } | ||
| else { | ||
| ((response.headers).keys)().forEach(function (key) { | ||
| headers[key.toLowerCase()] = response.headers.get(key); | ||
| }); | ||
| } | ||
| return [2 /*return*/, { | ||
| headers: headers, | ||
| statusCode: response.status, | ||
| statusMessage: response.statusText, | ||
| body: (0, bytes_1.arrayify)(new Uint8Array(body)), | ||
| }]; | ||
| } | ||
| const request = { | ||
| method: options.method || "GET", | ||
| headers: options.headers || {}, | ||
| body: options.body || undefined, | ||
| }; | ||
| if (options.skipFetchSetup !== true) { | ||
| request.mode = "cors"; // no-cors, cors, *same-origin | ||
| request.cache = "no-cache"; // *default, no-cache, reload, force-cache, only-if-cached | ||
| request.credentials = "same-origin"; // include, *same-origin, omit | ||
| request.redirect = "follow"; // manual, *follow, error | ||
| request.referrer = "client"; // no-referrer, *client | ||
| } | ||
| if (options.fetchOptions != null) { | ||
| const opts = options.fetchOptions; | ||
| if (opts.mode) { | ||
| request.mode = opts.mode; | ||
| } | ||
| if (opts.cache) { | ||
| request.cache = opts.cache; | ||
| } | ||
| if (opts.credentials) { | ||
| request.credentials = opts.credentials; | ||
| } | ||
| if (opts.redirect) { | ||
| request.redirect = opts.redirect; | ||
| } | ||
| if (opts.referrer) { | ||
| request.referrer = opts.referrer; | ||
| } | ||
| } | ||
| const response = await fetch(href, request); | ||
| const body = await response.arrayBuffer(); | ||
| const headers = {}; | ||
| if (response.headers.forEach) { | ||
| response.headers.forEach((value, key) => { | ||
| headers[key.toLowerCase()] = value; | ||
| }); | ||
| }); | ||
| } | ||
| else { | ||
| response.headers.keys().forEach((key) => { | ||
| headers[key.toLowerCase()] = response.headers.get(key); | ||
| }); | ||
| } | ||
| return { | ||
| headers: headers, | ||
| statusCode: response.status, | ||
| statusMessage: response.statusText, | ||
| body: (0, bytes_1.arrayify)(new Uint8Array(body)), | ||
| }; | ||
| } | ||
| exports.getUrl = getUrl; | ||
| //# sourceMappingURL=browser-geturl.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"browser-geturl.js","sourceRoot":"","sources":["../src.ts/browser-geturl.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,qCAAuC;AAMvC,SAAsB,MAAM,CAAC,IAAY,EAAE,OAAiB;;;;;;oBACxD,IAAI,OAAO,IAAI,IAAI,EAAE;wBAAE,OAAO,GAAG,EAAG,CAAC;qBAAE;oBAEjC,OAAO,GAAgB;wBACzB,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;wBACjC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,EAAG,CAAC;wBACjC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;qBACpC,CAAC;oBAEF,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,EAAE;wBACjC,OAAO,CAAC,IAAI,GAAgB,MAAM,CAAC,CAAc,8BAA8B;wBAC/E,OAAO,CAAC,KAAK,GAAiB,UAAU,CAAC,CAAQ,0DAA0D;wBAC3G,OAAO,CAAC,WAAW,GAAuB,aAAa,CAAC,CAAE,8BAA8B;wBACxF,OAAO,CAAC,QAAQ,GAAoB,QAAQ,CAAC,CAAI,yBAAyB;wBAC1E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAqB,uBAAuB;qBAC3E;oBAAA,CAAC;oBAEF,IAAI,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE;wBACxB,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;wBAClC,IAAI,IAAI,CAAC,IAAI,EAAE;4BAAE,OAAO,CAAC,IAAI,GAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBAAE;wBAC3D,IAAI,IAAI,CAAC,KAAK,EAAE;4BAAE,OAAO,CAAC,KAAK,GAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;yBAAE;wBAC/D,IAAI,IAAI,CAAC,WAAW,EAAE;4BAAE,OAAO,CAAC,WAAW,GAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;yBAAE;wBACvF,IAAI,IAAI,CAAC,QAAQ,EAAE;4BAAE,OAAO,CAAC,QAAQ,GAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAAE;wBAC3E,IAAI,IAAI,CAAC,QAAQ,EAAE;4BAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;yBAAE;qBAC3D;oBAEgB,qBAAM,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,EAAA;;oBAArC,QAAQ,GAAG,SAA0B;oBAC9B,qBAAM,QAAQ,CAAC,WAAW,EAAE,EAAA;;oBAAnC,IAAI,GAAG,SAA4B;oBAEnC,OAAO,GAAiC,EAAG,CAAC;oBAClD,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE;wBAC1B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,GAAG;4BAChC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;wBACvC,CAAC,CAAC,CAAC;qBACN;yBAAM;wBACmB,CAAO,CAAC,QAAQ,CAAC,OAAO,CAAE,CAAC,IAAI,CAAE,EAAE,CAAC,OAAO,CAAC,UAAC,GAAG;4BAClE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC3D,CAAC,CAAC,CAAC;qBACN;oBAED,sBAAO;4BACH,OAAO,EAAE,OAAO;4BAChB,UAAU,EAAE,QAAQ,CAAC,MAAM;4BAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;4BAClC,IAAI,EAAE,IAAA,gBAAQ,EAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;yBACvC,EAAA;;;;CACJ;AA9CD,wBA8CC"} | ||
| {"version":3,"file":"browser-geturl.js","sourceRoot":"","sources":["../src.ts/browser-geturl.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAQb,wBA6DC;AAnED,uCAAuC;AAMhC,KAAK,UAAU,MAAM,CACxB,IAAY,EACZ,OAAiB;IAEjB,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,OAAO,GAAgB;QACzB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK;QAC/B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;QAC9B,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,SAAS;KAClC,CAAC;IAEF,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,GAAgB,MAAM,CAAC,CAAC,8BAA8B;QAClE,OAAO,CAAC,KAAK,GAAiB,UAAU,CAAC,CAAC,0DAA0D;QACpG,OAAO,CAAC,WAAW,GAAuB,aAAa,CAAC,CAAC,8BAA8B;QACvF,OAAO,CAAC,QAAQ,GAAoB,QAAQ,CAAC,CAAC,yBAAyB;QACvE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,uBAAuB;IACxD,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;QAClC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,GAAgB,IAAI,CAAC,IAAI,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,GAAiB,IAAI,CAAC,KAAK,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO,CAAC,WAAW,GAAuB,IAAI,CAAC,WAAW,CAAC;QAC/D,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,CAAC,QAAQ,GAAoB,IAAI,CAAC,QAAQ,CAAC;QACtD,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACrC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;IAE1C,MAAM,OAAO,GAA+B,EAAE,CAAC;IAC/C,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACpC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;QACvC,CAAC,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACwB,QAAQ,CAAC,OAAQ,CAAC,IAAK,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAClE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,QAAQ,CAAC,MAAM;QAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;QAClC,IAAI,EAAE,IAAA,gBAAQ,EAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;KACvC,CAAC;AACN,CAAC"} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"geturl.d.ts","sourceRoot":"","sources":["../src.ts/geturl.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;AAmDnC,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CA6CrF"} | ||
| {"version":3,"file":"geturl.d.ts","sourceRoot":"","sources":["../src.ts/geturl.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;AA4DnC,wBAAsB,MAAM,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,cAAc,CAAC,CAmDzB"} |
+62
-104
| "use strict"; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -42,20 +6,20 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.getUrl = void 0; | ||
| var http_1 = __importDefault(require("http")); | ||
| var https_1 = __importDefault(require("https")); | ||
| var zlib_1 = require("zlib"); | ||
| var url_1 = require("url"); | ||
| var bytes_1 = require("@qevm/bytes"); | ||
| var properties_1 = require("@ethersproject/properties"); | ||
| var logger_1 = require("@ethersproject/logger"); | ||
| var _version_1 = require("./_version"); | ||
| var logger = new logger_1.Logger(_version_1.version); | ||
| exports.getUrl = getUrl; | ||
| const http_1 = __importDefault(require("http")); | ||
| const https_1 = __importDefault(require("https")); | ||
| const zlib_1 = require("zlib"); | ||
| const url_1 = require("url"); | ||
| const bytes_1 = require("@qevm/bytes"); | ||
| const properties_1 = require("@qevm/properties"); | ||
| const logger_1 = require("@qevm/logger"); | ||
| const _version_1 = require("./_version"); | ||
| const logger = new logger_1.Logger(_version_1.version); | ||
| function getResponse(request) { | ||
| return new Promise(function (resolve, reject) { | ||
| request.once("response", function (resp) { | ||
| var response = { | ||
| return new Promise((resolve, reject) => { | ||
| request.once("response", (resp) => { | ||
| const response = { | ||
| statusCode: resp.statusCode, | ||
| statusMessage: resp.statusMessage, | ||
| headers: Object.keys(resp.headers).reduce(function (accum, name) { | ||
| var value = resp.headers[name]; | ||
| headers: Object.keys(resp.headers).reduce((accum, name) => { | ||
| let value = resp.headers[name]; | ||
| if (Array.isArray(value)) { | ||
@@ -67,6 +31,6 @@ value = value.join(", "); | ||
| }, {}), | ||
| body: null | ||
| body: null, | ||
| }; | ||
| //resp.setEncoding("utf8"); | ||
| resp.on("data", function (chunk) { | ||
| resp.on("data", (chunk) => { | ||
| if (response.body == null) { | ||
@@ -77,3 +41,3 @@ response.body = new Uint8Array(0); | ||
| }); | ||
| resp.on("end", function () { | ||
| resp.on("end", () => { | ||
| if (response.headers["content-encoding"] === "gzip") { | ||
@@ -86,3 +50,3 @@ //const size = response.body.length; | ||
| }); | ||
| resp.on("error", function (error) { | ||
| resp.on("error", (error) => { | ||
| /* istanbul ignore next */ | ||
@@ -93,3 +57,5 @@ error.response = response; | ||
| }); | ||
| request.on("error", function (error) { reject(error); }); | ||
| request.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }); | ||
@@ -104,51 +70,43 @@ } | ||
| } | ||
| function getUrl(href, options) { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var url, request, req, response; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
| url = (0, url_1.parse)(href); | ||
| request = { | ||
| protocol: nonnull(url.protocol), | ||
| hostname: nonnull(url.hostname), | ||
| port: nonnull(url.port), | ||
| path: (nonnull(url.pathname) + nonnull(url.search)), | ||
| method: (options.method || "GET"), | ||
| headers: (0, properties_1.shallowCopy)(options.headers || {}), | ||
| }; | ||
| if (options.allowGzip) { | ||
| request.headers["accept-encoding"] = "gzip"; | ||
| } | ||
| req = null; | ||
| switch (nonnull(url.protocol)) { | ||
| case "http:": | ||
| req = http_1.default.request(request); | ||
| break; | ||
| case "https:": | ||
| req = https_1.default.request(request); | ||
| break; | ||
| default: | ||
| /* istanbul ignore next */ | ||
| logger.throwError("unsupported protocol " + url.protocol, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { | ||
| protocol: url.protocol, | ||
| operation: "request" | ||
| }); | ||
| } | ||
| if (options.body) { | ||
| req.write(Buffer.from(options.body)); | ||
| } | ||
| req.end(); | ||
| return [4 /*yield*/, getResponse(req)]; | ||
| case 1: | ||
| response = _a.sent(); | ||
| return [2 /*return*/, response]; | ||
| } | ||
| }); | ||
| }); | ||
| async function getUrl(href, options) { | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
| // @TODO: Once we drop support for node 8, we can pass the href | ||
| // directly into request and skip adding the components | ||
| // to this request object | ||
| const url = (0, url_1.parse)(href); | ||
| const request = { | ||
| protocol: nonnull(url.protocol), | ||
| hostname: nonnull(url.hostname), | ||
| port: nonnull(url.port), | ||
| path: nonnull(url.pathname) + nonnull(url.search), | ||
| method: options.method || "GET", | ||
| headers: (0, properties_1.shallowCopy)(options.headers || {}), | ||
| }; | ||
| if (options.allowGzip) { | ||
| request.headers["accept-encoding"] = "gzip"; | ||
| } | ||
| let req = null; | ||
| switch (nonnull(url.protocol)) { | ||
| case "http:": | ||
| req = http_1.default.request(request); | ||
| break; | ||
| case "https:": | ||
| req = https_1.default.request(request); | ||
| break; | ||
| default: | ||
| /* istanbul ignore next */ | ||
| logger.throwError(`unsupported protocol ${url.protocol}`, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { | ||
| protocol: url.protocol, | ||
| operation: "request", | ||
| }); | ||
| } | ||
| if (options.body) { | ||
| req.write(Buffer.from(options.body)); | ||
| } | ||
| req.end(); | ||
| const response = await getResponse(req); | ||
| return response; | ||
| } | ||
| exports.getUrl = getUrl; | ||
| //# sourceMappingURL=geturl.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"geturl.js","sourceRoot":"","sources":["../src.ts/geturl.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"geturl.js","sourceRoot":"","sources":["../src.ts/geturl.ts"],"names":[],"mappings":"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"} |
+3
-3
@@ -1,2 +0,2 @@ | ||
| export declare type ConnectionInfo = { | ||
| export type ConnectionInfo = { | ||
| url: string; | ||
@@ -24,3 +24,3 @@ headers?: { | ||
| } | ||
| export declare type PollOptions = { | ||
| export type PollOptions = { | ||
| timeout?: number; | ||
@@ -34,3 +34,3 @@ floor?: number; | ||
| }; | ||
| export declare type FetchJsonResponse = { | ||
| export type FetchJsonResponse = { | ||
| statusCode: number; | ||
@@ -37,0 +37,0 @@ headers: { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AAqCA,oBAAY,cAAc,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IAE5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC1B,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACtD;AAED,oBAAY,WAAW,GAAG;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,QAAQ,CAAC,EAAE,YAAY,CAAA;CAC1B,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QAAE,CAAE,MAAM,EAAE,MAAM,GAAI,MAAM,CAAA;KAAE,CAAC;CAC3C,CAAC;AAiBF,wBAAgB,UAAU,CAAC,CAAC,GAAG,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA6QlL;AAED,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,KAAK,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CA2C1J;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAgEjF"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AA6CA,MAAM,MAAM,cAAc,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAE7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAEtE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC1B,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACvD;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,MAAM,WAAW,GAAG;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,QAAQ,CAAC,EAAE,YAAY,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACzC,CAAC;AAkBF,wBAAgB,UAAU,CAAC,CAAC,GAAG,UAAU,EACrC,UAAU,EAAE,MAAM,GAAG,cAAc,EACnC,IAAI,CAAC,EAAE,UAAU,EACjB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,KAAK,CAAC,GACpE,OAAO,CAAC,CAAC,CAAC,CAsXZ;AAED,wBAAgB,SAAS,CACrB,UAAU,EAAE,MAAM,GAAG,cAAc,EACnC,IAAI,CAAC,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,iBAAiB,KAAK,GAAG,GAC/D,OAAO,CAAC,GAAG,CAAC,CAiDd;AAED,wBAAgB,IAAI,CAAC,CAAC,EAClB,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,OAAO,CAAC,EAAE,WAAW,GACtB,OAAO,CAAC,CAAC,CAAC,CA2FZ"} |
+201
-229
| "use strict"; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.poll = exports.fetchJson = exports._fetchData = void 0; | ||
| var base64_1 = require("@qevm/base64"); | ||
| var bytes_1 = require("@qevm/bytes"); | ||
| var properties_1 = require("@ethersproject/properties"); | ||
| var strings_1 = require("@qevm/strings"); | ||
| var logger_1 = require("@ethersproject/logger"); | ||
| var _version_1 = require("./_version"); | ||
| var logger = new logger_1.Logger(_version_1.version); | ||
| var geturl_1 = require("./geturl"); | ||
| exports._fetchData = _fetchData; | ||
| exports.fetchJson = fetchJson; | ||
| exports.poll = poll; | ||
| const base64_1 = require("@qevm/base64"); | ||
| const bytes_1 = require("@qevm/bytes"); | ||
| const properties_1 = require("@qevm/properties"); | ||
| const strings_1 = require("@qevm/strings"); | ||
| const logger_1 = require("@qevm/logger"); | ||
| const _version_1 = require("./_version"); | ||
| const logger = new logger_1.Logger(_version_1.version); | ||
| const geturl_1 = require("./geturl"); | ||
| function staller(duration) { | ||
| return new Promise(function (resolve) { | ||
| return new Promise((resolve) => { | ||
| setTimeout(resolve, duration); | ||
@@ -57,7 +23,9 @@ }); | ||
| } | ||
| if (typeof (value) === "string") { | ||
| if (typeof value === "string") { | ||
| return value; | ||
| } | ||
| if ((0, bytes_1.isBytesLike)(value)) { | ||
| if (type && (type.split("/")[0] === "text" || type.split(";")[0].trim() === "application/json")) { | ||
| if (type && | ||
| (type.split("/")[0] === "text" || | ||
| type.split(";")[0].trim() === "application/json")) { | ||
| try { | ||
@@ -67,3 +35,2 @@ return (0, strings_1.toUtf8String)(value); | ||
| catch (error) { } | ||
| ; | ||
| } | ||
@@ -75,3 +42,3 @@ return (0, bytes_1.hexlify)(value); | ||
| function unpercent(value) { | ||
| return (0, strings_1.toUtf8Bytes)(value.replace(/%([0-9a-f][0-9a-f])/gi, function (all, code) { | ||
| return (0, strings_1.toUtf8Bytes)(value.replace(/%([0-9a-f][0-9a-f])/gi, (all, code) => { | ||
| return String.fromCharCode(parseInt(code, 16)); | ||
@@ -88,20 +55,25 @@ })); | ||
| // How many times to retry in the event of a throttle | ||
| var attemptLimit = (typeof (connection) === "object" && connection.throttleLimit != null) ? connection.throttleLimit : 12; | ||
| logger.assertArgument((attemptLimit > 0 && (attemptLimit % 1) === 0), "invalid connection throttle limit", "connection.throttleLimit", attemptLimit); | ||
| var throttleCallback = ((typeof (connection) === "object") ? connection.throttleCallback : null); | ||
| var throttleSlotInterval = ((typeof (connection) === "object" && typeof (connection.throttleSlotInterval) === "number") ? connection.throttleSlotInterval : 100); | ||
| logger.assertArgument((throttleSlotInterval > 0 && (throttleSlotInterval % 1) === 0), "invalid connection throttle slot interval", "connection.throttleSlotInterval", throttleSlotInterval); | ||
| var errorPassThrough = ((typeof (connection) === "object") ? !!(connection.errorPassThrough) : false); | ||
| var headers = {}; | ||
| var url = null; | ||
| const attemptLimit = typeof connection === "object" && connection.throttleLimit != null | ||
| ? connection.throttleLimit | ||
| : 12; | ||
| logger.assertArgument(attemptLimit > 0 && attemptLimit % 1 === 0, "invalid connection throttle limit", "connection.throttleLimit", attemptLimit); | ||
| const throttleCallback = typeof connection === "object" ? connection.throttleCallback : null; | ||
| const throttleSlotInterval = typeof connection === "object" && | ||
| typeof connection.throttleSlotInterval === "number" | ||
| ? connection.throttleSlotInterval | ||
| : 100; | ||
| logger.assertArgument(throttleSlotInterval > 0 && throttleSlotInterval % 1 === 0, "invalid connection throttle slot interval", "connection.throttleSlotInterval", throttleSlotInterval); | ||
| const errorPassThrough = typeof connection === "object" ? !!connection.errorPassThrough : false; | ||
| const headers = {}; | ||
| let url = null; | ||
| // @TODO: Allow ConnectionInfo to override some of these values | ||
| var options = { | ||
| const options = { | ||
| method: "GET", | ||
| }; | ||
| var allow304 = false; | ||
| var timeout = 2 * 60 * 1000; | ||
| if (typeof (connection) === "string") { | ||
| let allow304 = false; | ||
| let timeout = 2 * 60 * 1000; | ||
| if (typeof connection === "string") { | ||
| url = connection; | ||
| } | ||
| else if (typeof (connection) === "object") { | ||
| else if (typeof connection === "object") { | ||
| if (connection == null || connection.url == null) { | ||
@@ -111,8 +83,11 @@ logger.throwArgumentError("missing URL", "connection.url", connection); | ||
| url = connection.url; | ||
| if (typeof (connection.timeout) === "number" && connection.timeout > 0) { | ||
| if (typeof connection.timeout === "number" && connection.timeout > 0) { | ||
| timeout = connection.timeout; | ||
| } | ||
| if (connection.headers) { | ||
| for (var key in connection.headers) { | ||
| headers[key.toLowerCase()] = { key: key, value: String(connection.headers[key]) }; | ||
| for (const key in connection.headers) { | ||
| headers[key.toLowerCase()] = { | ||
| key: key, | ||
| value: String(connection.headers[key]), | ||
| }; | ||
| if (["if-none-match", "if-modified-since"].indexOf(key.toLowerCase()) >= 0) { | ||
@@ -125,9 +100,15 @@ allow304 = true; | ||
| if (connection.user != null && connection.password != null) { | ||
| if (url.substring(0, 6) !== "https:" && connection.allowInsecureAuthentication !== true) { | ||
| logger.throwError("basic authentication requires a secure https url", logger_1.Logger.errors.INVALID_ARGUMENT, { argument: "url", url: url, user: connection.user, password: "[REDACTED]" }); | ||
| if (url.substring(0, 6) !== "https:" && | ||
| connection.allowInsecureAuthentication !== true) { | ||
| logger.throwError("basic authentication requires a secure https url", logger_1.Logger.errors.INVALID_ARGUMENT, { | ||
| argument: "url", | ||
| url: url, | ||
| user: connection.user, | ||
| password: "[REDACTED]", | ||
| }); | ||
| } | ||
| var authorization = connection.user + ":" + connection.password; | ||
| const authorization = connection.user + ":" + connection.password; | ||
| headers["authorization"] = { | ||
| key: "Authorization", | ||
| value: "Basic " + (0, base64_1.encode)((0, strings_1.toUtf8Bytes)(authorization)) | ||
| value: "Basic " + (0, base64_1.encode)((0, strings_1.toUtf8Bytes)(authorization)), | ||
| }; | ||
@@ -142,13 +123,15 @@ } | ||
| } | ||
| var reData = new RegExp("^data:([^;:]*)?(;base64)?,(.*)$", "i"); | ||
| var dataMatch = ((url) ? url.match(reData) : null); | ||
| const reData = new RegExp("^data:([^;:]*)?(;base64)?,(.*)$", "i"); | ||
| const dataMatch = url ? url.match(reData) : null; | ||
| if (dataMatch) { | ||
| try { | ||
| var response = { | ||
| const response = { | ||
| statusCode: 200, | ||
| statusMessage: "OK", | ||
| headers: { "content-type": (dataMatch[1] || "text/plain") }, | ||
| body: (dataMatch[2] ? (0, base64_1.decode)(dataMatch[3]) : unpercent(dataMatch[3])) | ||
| headers: { "content-type": dataMatch[1] || "text/plain" }, | ||
| body: dataMatch[2] | ||
| ? (0, base64_1.decode)(dataMatch[3]) | ||
| : unpercent(dataMatch[3]), | ||
| }; | ||
| var result = response.body; | ||
| let result = response.body; | ||
| if (processFunc) { | ||
@@ -165,3 +148,3 @@ result = processFunc(response.body, response); | ||
| requestMethod: "GET", | ||
| url: url | ||
| url: url, | ||
| }); | ||
@@ -174,19 +157,25 @@ } | ||
| if (headers["content-type"] == null) { | ||
| headers["content-type"] = { key: "Content-Type", value: "application/octet-stream" }; | ||
| headers["content-type"] = { | ||
| key: "Content-Type", | ||
| value: "application/octet-stream", | ||
| }; | ||
| } | ||
| if (headers["content-length"] == null) { | ||
| headers["content-length"] = { key: "Content-Length", value: String(body.length) }; | ||
| headers["content-length"] = { | ||
| key: "Content-Length", | ||
| value: String(body.length), | ||
| }; | ||
| } | ||
| } | ||
| var flatHeaders = {}; | ||
| Object.keys(headers).forEach(function (key) { | ||
| var header = headers[key]; | ||
| const flatHeaders = {}; | ||
| Object.keys(headers).forEach((key) => { | ||
| const header = headers[key]; | ||
| flatHeaders[header.key] = header.value; | ||
| }); | ||
| options.headers = flatHeaders; | ||
| var runningTimeout = (function () { | ||
| var timer = null; | ||
| var promise = new Promise(function (resolve, reject) { | ||
| const runningTimeout = (function () { | ||
| let timer = null; | ||
| const promise = new Promise(function (resolve, reject) { | ||
| if (timeout) { | ||
| timer = setTimeout(function () { | ||
| timer = setTimeout(() => { | ||
| if (timer == null) { | ||
@@ -200,3 +189,3 @@ return; | ||
| timeout: timeout, | ||
| url: url | ||
| url: url, | ||
| })); | ||
@@ -206,3 +195,3 @@ }, timeout); | ||
| }); | ||
| var cancel = function () { | ||
| const cancel = function () { | ||
| if (timer == null) { | ||
@@ -214,135 +203,118 @@ return; | ||
| }; | ||
| return { promise: promise, cancel: cancel }; | ||
| return { promise, cancel }; | ||
| })(); | ||
| var runningFetch = (function () { | ||
| return __awaiter(this, void 0, void 0, function () { | ||
| var attempt, response, location_1, tryAgain, stall, retryAfter, error_1, body_1, result, error_2, tryAgain, timeout_1; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| attempt = 0; | ||
| _a.label = 1; | ||
| case 1: | ||
| if (!(attempt < attemptLimit)) return [3 /*break*/, 20]; | ||
| response = null; | ||
| _a.label = 2; | ||
| case 2: | ||
| _a.trys.push([2, 9, , 10]); | ||
| return [4 /*yield*/, (0, geturl_1.getUrl)(url, options)]; | ||
| case 3: | ||
| response = _a.sent(); | ||
| if (!(attempt < attemptLimit)) return [3 /*break*/, 8]; | ||
| if (!(response.statusCode === 301 || response.statusCode === 302)) return [3 /*break*/, 4]; | ||
| location_1 = response.headers.location || ""; | ||
| if (options.method === "GET" && location_1.match(/^https:/)) { | ||
| const runningFetch = (async function () { | ||
| for (let attempt = 0; attempt < attemptLimit; attempt++) { | ||
| let response = null; | ||
| try { | ||
| response = await (0, geturl_1.getUrl)(url, options); | ||
| if (attempt < attemptLimit) { | ||
| if (response.statusCode === 301 || | ||
| response.statusCode === 302) { | ||
| // Redirection; for now we only support absolute locataions | ||
| const location = response.headers.location || ""; | ||
| if (options.method === "GET" && | ||
| location.match(/^https:/)) { | ||
| url = response.headers.location; | ||
| return [3 /*break*/, 19]; | ||
| continue; | ||
| } | ||
| return [3 /*break*/, 8]; | ||
| case 4: | ||
| if (!(response.statusCode === 429)) return [3 /*break*/, 8]; | ||
| tryAgain = true; | ||
| if (!throttleCallback) return [3 /*break*/, 6]; | ||
| return [4 /*yield*/, throttleCallback(attempt, url)]; | ||
| case 5: | ||
| tryAgain = _a.sent(); | ||
| _a.label = 6; | ||
| case 6: | ||
| if (!tryAgain) return [3 /*break*/, 8]; | ||
| stall = 0; | ||
| retryAfter = response.headers["retry-after"]; | ||
| if (typeof (retryAfter) === "string" && retryAfter.match(/^[1-9][0-9]*$/)) { | ||
| stall = parseInt(retryAfter) * 1000; | ||
| } | ||
| else if (response.statusCode === 429) { | ||
| // Exponential back-off throttling | ||
| let tryAgain = true; | ||
| if (throttleCallback) { | ||
| tryAgain = await throttleCallback(attempt, url); | ||
| } | ||
| else { | ||
| stall = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| if (tryAgain) { | ||
| let stall = 0; | ||
| const retryAfter = response.headers["retry-after"]; | ||
| if (typeof retryAfter === "string" && | ||
| retryAfter.match(/^[1-9][0-9]*$/)) { | ||
| stall = parseInt(retryAfter) * 1000; | ||
| } | ||
| else { | ||
| stall = | ||
| throttleSlotInterval * | ||
| parseInt(String(Math.random() * | ||
| Math.pow(2, attempt))); | ||
| } | ||
| //console.log("Stalling 429"); | ||
| await staller(stall); | ||
| continue; | ||
| } | ||
| //console.log("Stalling 429"); | ||
| return [4 /*yield*/, staller(stall)]; | ||
| case 7: | ||
| //console.log("Stalling 429"); | ||
| _a.sent(); | ||
| return [3 /*break*/, 19]; | ||
| case 8: return [3 /*break*/, 10]; | ||
| case 9: | ||
| error_1 = _a.sent(); | ||
| response = error_1.response; | ||
| if (response == null) { | ||
| runningTimeout.cancel(); | ||
| logger.throwError("missing response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| serverError: error_1, | ||
| url: url | ||
| }); | ||
| } | ||
| } | ||
| } | ||
| catch (error) { | ||
| response = error.response; | ||
| if (response == null) { | ||
| runningTimeout.cancel(); | ||
| logger.throwError("missing response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| serverError: error, | ||
| url: url, | ||
| }); | ||
| } | ||
| } | ||
| let body = response.body; | ||
| if (allow304 && response.statusCode === 304) { | ||
| body = null; | ||
| } | ||
| else if (!errorPassThrough && | ||
| (response.statusCode < 200 || response.statusCode >= 300)) { | ||
| runningTimeout.cancel(); | ||
| logger.throwError("bad response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| status: response.statusCode, | ||
| headers: response.headers, | ||
| body: bodyify(body, response.headers | ||
| ? response.headers["content-type"] | ||
| : null), | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url, | ||
| }); | ||
| } | ||
| if (processFunc) { | ||
| try { | ||
| const result = await processFunc(body, response); | ||
| runningTimeout.cancel(); | ||
| return result; | ||
| } | ||
| catch (error) { | ||
| // Allow the processFunc to trigger a throttle | ||
| if (error.throttleRetry && attempt < attemptLimit) { | ||
| let tryAgain = true; | ||
| if (throttleCallback) { | ||
| tryAgain = await throttleCallback(attempt, url); | ||
| } | ||
| return [3 /*break*/, 10]; | ||
| case 10: | ||
| body_1 = response.body; | ||
| if (allow304 && response.statusCode === 304) { | ||
| body_1 = null; | ||
| if (tryAgain) { | ||
| const timeout = throttleSlotInterval * | ||
| parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| //console.log("Stalling callback"); | ||
| await staller(timeout); | ||
| continue; | ||
| } | ||
| else if (!errorPassThrough && (response.statusCode < 200 || response.statusCode >= 300)) { | ||
| runningTimeout.cancel(); | ||
| logger.throwError("bad response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| status: response.statusCode, | ||
| headers: response.headers, | ||
| body: bodyify(body_1, ((response.headers) ? response.headers["content-type"] : null)), | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url | ||
| }); | ||
| } | ||
| if (!processFunc) return [3 /*break*/, 18]; | ||
| _a.label = 11; | ||
| case 11: | ||
| _a.trys.push([11, 13, , 18]); | ||
| return [4 /*yield*/, processFunc(body_1, response)]; | ||
| case 12: | ||
| result = _a.sent(); | ||
| runningTimeout.cancel(); | ||
| return [2 /*return*/, result]; | ||
| case 13: | ||
| error_2 = _a.sent(); | ||
| if (!(error_2.throttleRetry && attempt < attemptLimit)) return [3 /*break*/, 17]; | ||
| tryAgain = true; | ||
| if (!throttleCallback) return [3 /*break*/, 15]; | ||
| return [4 /*yield*/, throttleCallback(attempt, url)]; | ||
| case 14: | ||
| tryAgain = _a.sent(); | ||
| _a.label = 15; | ||
| case 15: | ||
| if (!tryAgain) return [3 /*break*/, 17]; | ||
| timeout_1 = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| //console.log("Stalling callback"); | ||
| return [4 /*yield*/, staller(timeout_1)]; | ||
| case 16: | ||
| //console.log("Stalling callback"); | ||
| _a.sent(); | ||
| return [3 /*break*/, 19]; | ||
| case 17: | ||
| runningTimeout.cancel(); | ||
| logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { | ||
| body: bodyify(body_1, ((response.headers) ? response.headers["content-type"] : null)), | ||
| error: error_2, | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url | ||
| }); | ||
| return [3 /*break*/, 18]; | ||
| case 18: | ||
| runningTimeout.cancel(); | ||
| // If we had a processFunc, it either returned a T or threw above. | ||
| // The "body" is now a Uint8Array. | ||
| return [2 /*return*/, body_1]; | ||
| case 19: | ||
| attempt++; | ||
| return [3 /*break*/, 1]; | ||
| case 20: return [2 /*return*/, logger.throwError("failed response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url | ||
| })]; | ||
| } | ||
| runningTimeout.cancel(); | ||
| logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { | ||
| body: bodyify(body, response.headers | ||
| ? response.headers["content-type"] | ||
| : null), | ||
| error: error, | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url, | ||
| }); | ||
| } | ||
| }); | ||
| } | ||
| runningTimeout.cancel(); | ||
| // If we had a processFunc, it either returned a T or threw above. | ||
| // The "body" is now a Uint8Array. | ||
| return body; | ||
| } | ||
| return logger.throwError("failed response", logger_1.Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url, | ||
| }); | ||
@@ -352,6 +324,5 @@ })(); | ||
| } | ||
| exports._fetchData = _fetchData; | ||
| function fetchJson(connection, json, processFunc) { | ||
| var processJsonFunc = function (value, response) { | ||
| var result = null; | ||
| let processJsonFunc = (value, response) => { | ||
| let result = null; | ||
| if (value != null) { | ||
@@ -364,3 +335,3 @@ try { | ||
| body: value, | ||
| error: error | ||
| error: error, | ||
| }); | ||
@@ -377,9 +348,11 @@ } | ||
| // - convert the json to bytes | ||
| var body = null; | ||
| let body = null; | ||
| if (json != null) { | ||
| body = (0, strings_1.toUtf8Bytes)(json); | ||
| // Create a connection with the content-type set for JSON | ||
| var updated = (typeof (connection) === "string") ? ({ url: connection }) : (0, properties_1.shallowCopy)(connection); | ||
| const updated = typeof connection === "string" | ||
| ? { url: connection } | ||
| : (0, properties_1.shallowCopy)(connection); | ||
| if (updated.headers) { | ||
| var hasContentType = (Object.keys(updated.headers).filter(function (k) { return (k.toLowerCase() === "content-type"); }).length) !== 0; | ||
| const hasContentType = Object.keys(updated.headers).filter((k) => k.toLowerCase() === "content-type").length !== 0; | ||
| if (!hasContentType) { | ||
@@ -397,3 +370,2 @@ updated.headers = (0, properties_1.shallowCopy)(updated.headers); | ||
| } | ||
| exports.fetchJson = fetchJson; | ||
| function poll(func, options) { | ||
@@ -414,6 +386,6 @@ if (!options) { | ||
| return new Promise(function (resolve, reject) { | ||
| var timer = null; | ||
| var done = false; | ||
| let timer = null; | ||
| let done = false; | ||
| // Returns true if cancel was successful. Unsuccessful cancel means we're already done. | ||
| var cancel = function () { | ||
| const cancel = () => { | ||
| if (done) { | ||
@@ -429,3 +401,3 @@ return false; | ||
| if (options.timeout) { | ||
| timer = setTimeout(function () { | ||
| timer = setTimeout(() => { | ||
| if (cancel()) { | ||
@@ -436,4 +408,4 @@ reject(new Error("timeout")); | ||
| } | ||
| var retryLimit = options.retryLimit; | ||
| var attempt = 0; | ||
| const retryLimit = options.retryLimit; | ||
| let attempt = 0; | ||
| function check() { | ||
@@ -462,3 +434,4 @@ return func().then(function (result) { | ||
| } | ||
| var timeout = options.interval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| let timeout = options.interval * | ||
| parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| if (timeout < options.floor) { | ||
@@ -482,3 +455,2 @@ timeout = options.floor; | ||
| } | ||
| exports.poll = poll; | ||
| //# sourceMappingURL=index.js.map |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"} |
+2
-2
@@ -1,2 +0,2 @@ | ||
| export declare type GetUrlResponse = { | ||
| export type GetUrlResponse = { | ||
| statusCode: number; | ||
@@ -9,3 +9,3 @@ statusMessage: string; | ||
| }; | ||
| export declare type Options = { | ||
| export type Options = { | ||
| method?: string; | ||
@@ -12,0 +12,0 @@ allowGzip?: boolean; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src.ts/types.ts"],"names":[],"mappings":"AAEA,oBAAY,cAAc,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QAAE,CAAE,GAAG,EAAE,MAAM,GAAI,MAAM,CAAA;KAAE,CAAC;IACrC,IAAI,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,oBAAY,OAAO,GAAG;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,CAAE,GAAG,EAAE,MAAM,GAAI,MAAM,CAAA;KAAE,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC"} | ||
| {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src.ts/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACnC,IAAI,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACpC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC"} |
+40
-36
| { | ||
| "_ethers.alias": { | ||
| "geturl.js": "browser-geturl.js" | ||
| }, | ||
| "author": "Eugene Kuleshov", | ||
| "browser": { | ||
| "./lib/geturl": "./lib/browser-geturl.js" | ||
| }, | ||
| "dependencies": { | ||
| "@ethersproject/logger": "^5.7.0", | ||
| "@ethersproject/properties": "^5.7.0", | ||
| "@qevm/base64": "^5.7.0", | ||
| "@qevm/bytes": "5.7.1", | ||
| "@qevm/strings": "^5.7.0" | ||
| }, | ||
| "description": "Utility fucntions for managing web requests for ethers.", | ||
| "keywords": [ | ||
| "Ethereum", | ||
| "qethers" | ||
| ], | ||
| "license": "MIT", | ||
| "main": "./lib/index.js", | ||
| "module": "./lib.esm/index.js", | ||
| "name": "@qevm/web", | ||
| "publishConfig": { | ||
| "access": "public" | ||
| }, | ||
| "scripts": { | ||
| "test": "echo \"Error: no test specified\" && exit 1" | ||
| }, | ||
| "sideEffects": false, | ||
| "tarballHash": "0x37945bd0bcbf905a641db7e631bb538570042dbe6513e1e4cdd088f25b4ec274", | ||
| "types": "./lib/index.d.ts", | ||
| "version": "5.7.2", | ||
| "devDependencies": { | ||
| "@types/node": "^22.15.30" | ||
| } | ||
| "_ethers.alias": { | ||
| "geturl.js": "browser-geturl.js" | ||
| }, | ||
| "contributors": [ | ||
| "Eugene Kuleshov <kulevgen32@gmail.com>", | ||
| "Richard Moore <me@ricmoo.com>" | ||
| ], | ||
| "browser": { | ||
| "./lib/geturl": "./lib/browser-geturl.js" | ||
| }, | ||
| "dependencies": { | ||
| "@qevm/logger": "^5.7.1", | ||
| "@qevm/properties": "^5.7.1", | ||
| "@qevm/base64": "^5.7.1", | ||
| "@qevm/bytes": "^5.7.2", | ||
| "@qevm/strings": "^5.7.2" | ||
| }, | ||
| "description": "Utility fucntions for managing web requests for qethers.", | ||
| "keywords": [ | ||
| "QuantumEVM", | ||
| "QEVM", | ||
| "qethers" | ||
| ], | ||
| "license": "MIT", | ||
| "main": "./lib/index.js", | ||
| "module": "./lib.esm/index.js", | ||
| "name": "@qevm/web", | ||
| "publishConfig": { | ||
| "access": "public" | ||
| }, | ||
| "scripts": { | ||
| "test": "echo \"Error: no test specified\" && exit 1" | ||
| }, | ||
| "sideEffects": false, | ||
| "tarballHash": "0x37945bd0bcbf905a641db7e631bb538570042dbe6513e1e4cdd088f25b4ec274", | ||
| "types": "./lib/index.d.ts", | ||
| "version": "5.7.3", | ||
| "devDependencies": { | ||
| "@types/node": "^22.15.30" | ||
| } | ||
| } |
+3
-4
| Web Utilities | ||
| ============= | ||
| This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js). | ||
| This sub-module is part of the qethers, a fork of [ethers project](https://github.com/ethers-io/ethers.js). | ||
@@ -9,3 +9,2 @@ It contains functions to abstract safely and responsibly connecting to the web, | ||
| For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/web/). | ||
@@ -15,3 +14,3 @@ Importing | ||
| Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers), | ||
| Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/@qevm/qethers), | ||
| but for those with more specific needs, individual components can be imported. | ||
@@ -34,3 +33,3 @@ | ||
| } = require("@ethersproject/web"); | ||
| } = require("@qevm/web"); | ||
| ``` | ||
@@ -37,0 +36,0 @@ |
@@ -1,1 +0,1 @@ | ||
| export const version = "web/5.7.1"; | ||
| export const version = "web/5.7.3"; |
+34
-19
@@ -9,26 +9,41 @@ "use strict"; | ||
| export async function getUrl(href: string, options?: Options): Promise<GetUrlResponse> { | ||
| if (options == null) { options = { }; } | ||
| export async function getUrl( | ||
| href: string, | ||
| options?: Options, | ||
| ): Promise<GetUrlResponse> { | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
| const request: RequestInit = { | ||
| method: (options.method || "GET"), | ||
| headers: (options.headers || { }), | ||
| body: (options.body || undefined), | ||
| method: options.method || "GET", | ||
| headers: options.headers || {}, | ||
| body: options.body || undefined, | ||
| }; | ||
| if (options.skipFetchSetup !== true) { | ||
| request.mode = <RequestMode>"cors"; // no-cors, cors, *same-origin | ||
| request.cache = <RequestCache>"no-cache"; // *default, no-cache, reload, force-cache, only-if-cached | ||
| request.credentials = <RequestCredentials>"same-origin"; // include, *same-origin, omit | ||
| request.redirect = <RequestRedirect>"follow"; // manual, *follow, error | ||
| request.referrer = "client"; // no-referrer, *client | ||
| }; | ||
| request.mode = <RequestMode>"cors"; // no-cors, cors, *same-origin | ||
| request.cache = <RequestCache>"no-cache"; // *default, no-cache, reload, force-cache, only-if-cached | ||
| request.credentials = <RequestCredentials>"same-origin"; // include, *same-origin, omit | ||
| request.redirect = <RequestRedirect>"follow"; // manual, *follow, error | ||
| request.referrer = "client"; // no-referrer, *client | ||
| } | ||
| if (options.fetchOptions != null) { | ||
| const opts = options.fetchOptions; | ||
| if (opts.mode) { request.mode = <RequestMode>(opts.mode); } | ||
| if (opts.cache) { request.cache = <RequestCache>(opts.cache); } | ||
| if (opts.credentials) { request.credentials = <RequestCredentials>(opts.credentials); } | ||
| if (opts.redirect) { request.redirect = <RequestRedirect>(opts.redirect); } | ||
| if (opts.referrer) { request.referrer = opts.referrer; } | ||
| if (opts.mode) { | ||
| request.mode = <RequestMode>opts.mode; | ||
| } | ||
| if (opts.cache) { | ||
| request.cache = <RequestCache>opts.cache; | ||
| } | ||
| if (opts.credentials) { | ||
| request.credentials = <RequestCredentials>opts.credentials; | ||
| } | ||
| if (opts.redirect) { | ||
| request.redirect = <RequestRedirect>opts.redirect; | ||
| } | ||
| if (opts.referrer) { | ||
| request.referrer = opts.referrer; | ||
| } | ||
| } | ||
@@ -39,3 +54,3 @@ | ||
| const headers: { [ name: string ]: string } = { }; | ||
| const headers: { [name: string]: string } = {}; | ||
| if (response.headers.forEach) { | ||
@@ -46,3 +61,3 @@ response.headers.forEach((value, key) => { | ||
| } else { | ||
| (<() => Array<string>>((<any>(response.headers)).keys))().forEach((key) => { | ||
| (<() => Array<string>>(<any>response.headers).keys)().forEach((key) => { | ||
| headers[key.toLowerCase()] = response.headers.get(key); | ||
@@ -57,3 +72,3 @@ }); | ||
| body: arrayify(new Uint8Array(body)), | ||
| } | ||
| }; | ||
| } |
+43
-26
@@ -6,10 +6,10 @@ "use strict"; | ||
| import { gunzipSync } from "zlib"; | ||
| import { parse } from "url" | ||
| import { parse } from "url"; | ||
| import { arrayify, concat } from "@qevm/bytes"; | ||
| import { shallowCopy } from "@ethersproject/properties"; | ||
| import { shallowCopy } from "@qevm/properties"; | ||
| import type { GetUrlResponse, Options } from "./types"; | ||
| import { Logger } from "@ethersproject/logger"; | ||
| import { Logger } from "@qevm/logger"; | ||
| import { version } from "./_version"; | ||
@@ -26,11 +26,14 @@ const logger = new Logger(version); | ||
| statusMessage: resp.statusMessage, | ||
| headers: Object.keys(resp.headers).reduce((accum, name) => { | ||
| let value = resp.headers[name]; | ||
| if (Array.isArray(value)) { | ||
| value = value.join(", "); | ||
| } | ||
| accum[name] = value; | ||
| return accum; | ||
| }, <{ [ name: string ]: string }>{ }), | ||
| body: null | ||
| headers: Object.keys(resp.headers).reduce( | ||
| (accum, name) => { | ||
| let value = resp.headers[name]; | ||
| if (Array.isArray(value)) { | ||
| value = value.join(", "); | ||
| } | ||
| accum[name] = value; | ||
| return accum; | ||
| }, | ||
| <{ [name: string]: string }>{}, | ||
| ), | ||
| body: null, | ||
| }; | ||
@@ -40,4 +43,6 @@ //resp.setEncoding("utf8"); | ||
| resp.on("data", (chunk: Uint8Array) => { | ||
| if (response.body == null) { response.body = new Uint8Array(0); } | ||
| response.body = concat([ response.body, chunk ]); | ||
| if (response.body == null) { | ||
| response.body = new Uint8Array(0); | ||
| } | ||
| response.body = concat([response.body, chunk]); | ||
| }); | ||
@@ -61,3 +66,5 @@ | ||
| request.on("error", (error) => { reject(error); }); | ||
| request.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }); | ||
@@ -68,8 +75,15 @@ } | ||
| function nonnull(value: string): string { | ||
| if (value == null) { return ""; } | ||
| if (value == null) { | ||
| return ""; | ||
| } | ||
| return value; | ||
| } | ||
| export async function getUrl(href: string, options?: Options): Promise<GetUrlResponse> { | ||
| if (options == null) { options = { }; } | ||
| export async function getUrl( | ||
| href: string, | ||
| options?: Options, | ||
| ): Promise<GetUrlResponse> { | ||
| if (options == null) { | ||
| options = {}; | ||
| } | ||
@@ -85,6 +99,6 @@ // @TODO: Once we drop support for node 8, we can pass the href | ||
| port: nonnull(url.port), | ||
| path: (nonnull(url.pathname) + nonnull(url.search)), | ||
| path: nonnull(url.pathname) + nonnull(url.search), | ||
| method: (options.method || "GET"), | ||
| headers: shallowCopy(options.headers || { }), | ||
| method: options.method || "GET", | ||
| headers: shallowCopy(options.headers || {}), | ||
| }; | ||
@@ -106,6 +120,10 @@ | ||
| /* istanbul ignore next */ | ||
| logger.throwError(`unsupported protocol ${ url.protocol }`, Logger.errors.UNSUPPORTED_OPERATION, { | ||
| protocol: url.protocol, | ||
| operation: "request" | ||
| }); | ||
| logger.throwError( | ||
| `unsupported protocol ${url.protocol}`, | ||
| Logger.errors.UNSUPPORTED_OPERATION, | ||
| { | ||
| protocol: url.protocol, | ||
| operation: "request", | ||
| }, | ||
| ); | ||
| } | ||
@@ -121,2 +139,1 @@ | ||
| } | ||
+311
-154
@@ -5,6 +5,6 @@ "use strict"; | ||
| import { hexlify, isBytesLike } from "@qevm/bytes"; | ||
| import { shallowCopy } from "@ethersproject/properties"; | ||
| import { shallowCopy } from "@qevm/properties"; | ||
| import { toUtf8Bytes, toUtf8String } from "@qevm/strings"; | ||
| import { Logger } from "@ethersproject/logger"; | ||
| import { Logger } from "@qevm/logger"; | ||
| import { version } from "./_version"; | ||
@@ -22,11 +22,19 @@ const logger = new Logger(version); | ||
| function bodyify(value: any, type: string): string { | ||
| if (value == null) { return null; } | ||
| if (value == null) { | ||
| return null; | ||
| } | ||
| if (typeof(value) === "string") { return value; } | ||
| if (typeof value === "string") { | ||
| return value; | ||
| } | ||
| if (isBytesLike(value)) { | ||
| if (type && (type.split("/")[0] === "text" || type.split(";")[0].trim() === "application/json")) { | ||
| if ( | ||
| type && | ||
| (type.split("/")[0] === "text" || | ||
| type.split(";")[0].trim() === "application/json") | ||
| ) { | ||
| try { | ||
| return toUtf8String(value); | ||
| } catch (error) { }; | ||
| } catch (error) {} | ||
| } | ||
@@ -41,14 +49,14 @@ return hexlify(value); | ||
| export type ConnectionInfo = { | ||
| url: string, | ||
| headers?: { [key: string]: string | number } | ||
| url: string; | ||
| headers?: { [key: string]: string | number }; | ||
| user?: string, | ||
| password?: string, | ||
| user?: string; | ||
| password?: string; | ||
| allowInsecureAuthentication?: boolean, | ||
| allowGzip?: boolean, | ||
| allowInsecureAuthentication?: boolean; | ||
| allowGzip?: boolean; | ||
| throttleLimit?: number, | ||
| throttleLimit?: number; | ||
| throttleSlotInterval?: number; | ||
| throttleCallback?: (attempt: number, url: string) => Promise<boolean>, | ||
| throttleCallback?: (attempt: number, url: string) => Promise<boolean>; | ||
@@ -59,3 +67,3 @@ skipFetchSetup?: boolean; | ||
| timeout?: number, | ||
| timeout?: number; | ||
| }; | ||
@@ -72,9 +80,9 @@ | ||
| export type PollOptions = { | ||
| timeout?: number, | ||
| floor?: number, | ||
| ceiling?: number, | ||
| interval?: number, | ||
| retryLimit?: number, | ||
| onceBlock?: OnceBlockable | ||
| oncePoll?: OncePollable | ||
| timeout?: number; | ||
| floor?: number; | ||
| ceiling?: number; | ||
| interval?: number; | ||
| retryLimit?: number; | ||
| onceBlock?: OnceBlockable; | ||
| oncePoll?: OncePollable; | ||
| }; | ||
@@ -84,12 +92,13 @@ | ||
| statusCode: number; | ||
| headers: { [ header: string ]: string }; | ||
| headers: { [header: string]: string }; | ||
| }; | ||
| type Header = { key: string; value: string }; | ||
| type Header = { key: string, value: string }; | ||
| function unpercent(value: string): Uint8Array { | ||
| return toUtf8Bytes(value.replace(/%([0-9a-f][0-9a-f])/gi, (all, code) => { | ||
| return String.fromCharCode(parseInt(code, 16)); | ||
| })); | ||
| return toUtf8Bytes( | ||
| value.replace(/%([0-9a-f][0-9a-f])/gi, (all, code) => { | ||
| return String.fromCharCode(parseInt(code, 16)); | ||
| }), | ||
| ); | ||
| } | ||
@@ -103,17 +112,37 @@ | ||
| // For this reason, it should be considered internal until the API is finalized | ||
| export function _fetchData<T = Uint8Array>(connection: string | ConnectionInfo, body?: Uint8Array, processFunc?: (value: Uint8Array, response: FetchJsonResponse) => T): Promise<T> { | ||
| export function _fetchData<T = Uint8Array>( | ||
| connection: string | ConnectionInfo, | ||
| body?: Uint8Array, | ||
| processFunc?: (value: Uint8Array, response: FetchJsonResponse) => T, | ||
| ): Promise<T> { | ||
| // How many times to retry in the event of a throttle | ||
| const attemptLimit = (typeof(connection) === "object" && connection.throttleLimit != null) ? connection.throttleLimit: 12; | ||
| logger.assertArgument((attemptLimit > 0 && (attemptLimit % 1) === 0), | ||
| "invalid connection throttle limit", "connection.throttleLimit", attemptLimit); | ||
| const attemptLimit = | ||
| typeof connection === "object" && connection.throttleLimit != null | ||
| ? connection.throttleLimit | ||
| : 12; | ||
| logger.assertArgument( | ||
| attemptLimit > 0 && attemptLimit % 1 === 0, | ||
| "invalid connection throttle limit", | ||
| "connection.throttleLimit", | ||
| attemptLimit, | ||
| ); | ||
| const throttleCallback = ((typeof(connection) === "object") ? connection.throttleCallback: null); | ||
| const throttleSlotInterval = ((typeof(connection) === "object" && typeof(connection.throttleSlotInterval) === "number") ? connection.throttleSlotInterval: 100); | ||
| logger.assertArgument((throttleSlotInterval > 0 && (throttleSlotInterval % 1) === 0), | ||
| "invalid connection throttle slot interval", "connection.throttleSlotInterval", throttleSlotInterval); | ||
| const throttleCallback = | ||
| typeof connection === "object" ? connection.throttleCallback : null; | ||
| const throttleSlotInterval = | ||
| typeof connection === "object" && | ||
| typeof connection.throttleSlotInterval === "number" | ||
| ? connection.throttleSlotInterval | ||
| : 100; | ||
| logger.assertArgument( | ||
| throttleSlotInterval > 0 && throttleSlotInterval % 1 === 0, | ||
| "invalid connection throttle slot interval", | ||
| "connection.throttleSlotInterval", | ||
| throttleSlotInterval, | ||
| ); | ||
| const errorPassThrough = ((typeof(connection) === "object") ? !!(connection.errorPassThrough): false); | ||
| const errorPassThrough = | ||
| typeof connection === "object" ? !!connection.errorPassThrough : false; | ||
| const headers: { [key: string]: Header } = { }; | ||
| const headers: { [key: string]: Header } = {}; | ||
@@ -131,8 +160,11 @@ let url: string = null; | ||
| if (typeof(connection) === "string") { | ||
| if (typeof connection === "string") { | ||
| url = connection; | ||
| } else if (typeof(connection) === "object") { | ||
| } else if (typeof connection === "object") { | ||
| if (connection == null || connection.url == null) { | ||
| logger.throwArgumentError("missing URL", "connection.url", connection); | ||
| logger.throwArgumentError( | ||
| "missing URL", | ||
| "connection.url", | ||
| connection, | ||
| ); | ||
| } | ||
@@ -142,3 +174,3 @@ | ||
| if (typeof(connection.timeout) === "number" && connection.timeout > 0) { | ||
| if (typeof connection.timeout === "number" && connection.timeout > 0) { | ||
| timeout = connection.timeout; | ||
@@ -149,4 +181,11 @@ } | ||
| for (const key in connection.headers) { | ||
| headers[key.toLowerCase()] = { key: key, value: String(connection.headers[key]) }; | ||
| if (["if-none-match", "if-modified-since"].indexOf(key.toLowerCase()) >= 0) { | ||
| headers[key.toLowerCase()] = { | ||
| key: key, | ||
| value: String(connection.headers[key]), | ||
| }; | ||
| if ( | ||
| ["if-none-match", "if-modified-since"].indexOf( | ||
| key.toLowerCase(), | ||
| ) >= 0 | ||
| ) { | ||
| allow304 = true; | ||
@@ -160,7 +199,15 @@ } | ||
| if (connection.user != null && connection.password != null) { | ||
| if (url.substring(0, 6) !== "https:" && connection.allowInsecureAuthentication !== true) { | ||
| if ( | ||
| url.substring(0, 6) !== "https:" && | ||
| connection.allowInsecureAuthentication !== true | ||
| ) { | ||
| logger.throwError( | ||
| "basic authentication requires a secure https url", | ||
| Logger.errors.INVALID_ARGUMENT, | ||
| { argument: "url", url: url, user: connection.user, password: "[REDACTED]" } | ||
| { | ||
| argument: "url", | ||
| url: url, | ||
| user: connection.user, | ||
| password: "[REDACTED]", | ||
| }, | ||
| ); | ||
@@ -172,3 +219,3 @@ } | ||
| key: "Authorization", | ||
| value: "Basic " + base64Encode(toUtf8Bytes(authorization)) | ||
| value: "Basic " + base64Encode(toUtf8Bytes(authorization)), | ||
| }; | ||
@@ -187,3 +234,3 @@ } | ||
| const reData = new RegExp("^data:([^;:]*)?(;base64)?,(.*)$", "i"); | ||
| const dataMatch = ((url) ? url.match(reData): null); | ||
| const dataMatch = url ? url.match(reData) : null; | ||
| if (dataMatch) { | ||
@@ -194,20 +241,25 @@ try { | ||
| statusMessage: "OK", | ||
| headers: { "content-type": (dataMatch[1] || "text/plain")}, | ||
| body: (dataMatch[2] ? base64Decode(dataMatch[3]): unpercent(dataMatch[3])) | ||
| headers: { "content-type": dataMatch[1] || "text/plain" }, | ||
| body: dataMatch[2] | ||
| ? base64Decode(dataMatch[3]) | ||
| : unpercent(dataMatch[3]), | ||
| }; | ||
| let result: T = <T><unknown>response.body; | ||
| let result: T = <T>(<unknown>response.body); | ||
| if (processFunc) { | ||
| result = processFunc(response.body, response); | ||
| } | ||
| return Promise.resolve(<T><unknown>result); | ||
| return Promise.resolve(<T>(<unknown>result)); | ||
| } catch (error) { | ||
| logger.throwError("processing response error", Logger.errors.SERVER_ERROR, { | ||
| body: bodyify(dataMatch[1], dataMatch[2]), | ||
| error: error, | ||
| requestBody: null, | ||
| requestMethod: "GET", | ||
| url: url | ||
| }); | ||
| logger.throwError( | ||
| "processing response error", | ||
| Logger.errors.SERVER_ERROR, | ||
| { | ||
| body: bodyify(dataMatch[1], dataMatch[2]), | ||
| error: error, | ||
| requestBody: null, | ||
| requestMethod: "GET", | ||
| url: url, | ||
| }, | ||
| ); | ||
| } | ||
@@ -220,10 +272,16 @@ } | ||
| if (headers["content-type"] == null) { | ||
| headers["content-type"] = { key: "Content-Type", value: "application/octet-stream" }; | ||
| headers["content-type"] = { | ||
| key: "Content-Type", | ||
| value: "application/octet-stream", | ||
| }; | ||
| } | ||
| if (headers["content-length"] == null) { | ||
| headers["content-length"] = { key: "Content-Length", value: String(body.length) }; | ||
| headers["content-length"] = { | ||
| key: "Content-Length", | ||
| value: String(body.length), | ||
| }; | ||
| } | ||
| } | ||
| const flatHeaders: { [ key: string ]: string } = { }; | ||
| const flatHeaders: { [key: string]: string } = {}; | ||
| Object.keys(headers).forEach((key) => { | ||
@@ -235,16 +293,23 @@ const header = headers[key]; | ||
| const runningTimeout = (function() { | ||
| const runningTimeout = (function () { | ||
| let timer: NodeJS.Timeout = null; | ||
| const promise: Promise<never> = new Promise(function(resolve, reject) { | ||
| const promise: Promise<never> = new Promise(function (resolve, reject) { | ||
| if (timeout) { | ||
| timer = setTimeout(() => { | ||
| if (timer == null) { return; } | ||
| if (timer == null) { | ||
| return; | ||
| } | ||
| timer = null; | ||
| reject(logger.makeError("timeout", Logger.errors.TIMEOUT, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| timeout: timeout, | ||
| url: url | ||
| })); | ||
| reject( | ||
| logger.makeError("timeout", Logger.errors.TIMEOUT, { | ||
| requestBody: bodyify( | ||
| options.body, | ||
| flatHeaders["content-type"], | ||
| ), | ||
| requestMethod: options.method, | ||
| timeout: timeout, | ||
| url: url, | ||
| }), | ||
| ); | ||
| }, timeout); | ||
@@ -254,7 +319,9 @@ } | ||
| const cancel = function() { | ||
| if (timer == null) { return; } | ||
| const cancel = function () { | ||
| if (timer == null) { | ||
| return; | ||
| } | ||
| clearTimeout(timer); | ||
| timer = null; | ||
| } | ||
| }; | ||
@@ -264,4 +331,3 @@ return { promise, cancel }; | ||
| const runningFetch = (async function() { | ||
| const runningFetch = (async function () { | ||
| for (let attempt = 0; attempt < attemptLimit; attempt++) { | ||
@@ -274,10 +340,15 @@ let response: GetUrlResponse = null; | ||
| if (attempt < attemptLimit) { | ||
| if (response.statusCode === 301 || response.statusCode === 302) { | ||
| if ( | ||
| response.statusCode === 301 || | ||
| response.statusCode === 302 | ||
| ) { | ||
| // Redirection; for now we only support absolute locataions | ||
| const location = response.headers.location || ""; | ||
| if (options.method === "GET" && location.match(/^https:/)) { | ||
| if ( | ||
| options.method === "GET" && | ||
| location.match(/^https:/) | ||
| ) { | ||
| url = response.headers.location; | ||
| continue; | ||
| } | ||
| } else if (response.statusCode === 429) { | ||
@@ -294,6 +365,16 @@ // Exponential back-off throttling | ||
| const retryAfter = response.headers["retry-after"]; | ||
| if (typeof(retryAfter) === "string" && retryAfter.match(/^[1-9][0-9]*$/)) { | ||
| if ( | ||
| typeof retryAfter === "string" && | ||
| retryAfter.match(/^[1-9][0-9]*$/) | ||
| ) { | ||
| stall = parseInt(retryAfter) * 1000; | ||
| } else { | ||
| stall = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| stall = | ||
| throttleSlotInterval * | ||
| parseInt( | ||
| String( | ||
| Math.random() * | ||
| Math.pow(2, attempt), | ||
| ), | ||
| ); | ||
| } | ||
@@ -307,3 +388,2 @@ | ||
| } | ||
| } catch (error) { | ||
@@ -313,12 +393,18 @@ response = (<any>error).response; | ||
| runningTimeout.cancel(); | ||
| logger.throwError("missing response", Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| serverError: error, | ||
| url: url | ||
| }); | ||
| logger.throwError( | ||
| "missing response", | ||
| Logger.errors.SERVER_ERROR, | ||
| { | ||
| requestBody: bodyify( | ||
| options.body, | ||
| flatHeaders["content-type"], | ||
| ), | ||
| requestMethod: options.method, | ||
| serverError: error, | ||
| url: url, | ||
| }, | ||
| ); | ||
| } | ||
| } | ||
| let body = response.body; | ||
@@ -328,3 +414,6 @@ | ||
| body = null; | ||
| } else if (!errorPassThrough && (response.statusCode < 200 || response.statusCode >= 300)) { | ||
| } else if ( | ||
| !errorPassThrough && | ||
| (response.statusCode < 200 || response.statusCode >= 300) | ||
| ) { | ||
| runningTimeout.cancel(); | ||
@@ -334,6 +423,14 @@ logger.throwError("bad response", Logger.errors.SERVER_ERROR, { | ||
| headers: response.headers, | ||
| body: bodyify(body, ((response.headers) ? response.headers["content-type"]: null)), | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| body: bodyify( | ||
| body, | ||
| response.headers | ||
| ? response.headers["content-type"] | ||
| : null, | ||
| ), | ||
| requestBody: bodyify( | ||
| options.body, | ||
| flatHeaders["content-type"], | ||
| ), | ||
| requestMethod: options.method, | ||
| url: url | ||
| url: url, | ||
| }); | ||
@@ -347,3 +444,2 @@ } | ||
| return result; | ||
| } catch (error) { | ||
@@ -358,3 +454,9 @@ // Allow the processFunc to trigger a throttle | ||
| if (tryAgain) { | ||
| const timeout = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| const timeout = | ||
| throttleSlotInterval * | ||
| parseInt( | ||
| String( | ||
| Math.random() * Math.pow(2, attempt), | ||
| ), | ||
| ); | ||
| //console.log("Stalling callback"); | ||
@@ -367,9 +469,21 @@ await staller(timeout); | ||
| runningTimeout.cancel(); | ||
| logger.throwError("processing response error", Logger.errors.SERVER_ERROR, { | ||
| body: bodyify(body, ((response.headers) ? response.headers["content-type"]: null)), | ||
| error: error, | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url | ||
| }); | ||
| logger.throwError( | ||
| "processing response error", | ||
| Logger.errors.SERVER_ERROR, | ||
| { | ||
| body: bodyify( | ||
| body, | ||
| response.headers | ||
| ? response.headers["content-type"] | ||
| : null, | ||
| ), | ||
| error: error, | ||
| requestBody: bodyify( | ||
| options.body, | ||
| flatHeaders["content-type"], | ||
| ), | ||
| requestMethod: options.method, | ||
| url: url, | ||
| }, | ||
| ); | ||
| } | ||
@@ -385,13 +499,21 @@ } | ||
| return logger.throwError("failed response", Logger.errors.SERVER_ERROR, { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url | ||
| }); | ||
| return logger.throwError( | ||
| "failed response", | ||
| Logger.errors.SERVER_ERROR, | ||
| { | ||
| requestBody: bodyify(options.body, flatHeaders["content-type"]), | ||
| requestMethod: options.method, | ||
| url: url, | ||
| }, | ||
| ); | ||
| })(); | ||
| return Promise.race([ runningTimeout.promise, runningFetch ]); | ||
| return Promise.race([runningTimeout.promise, runningFetch]); | ||
| } | ||
| export function fetchJson(connection: string | ConnectionInfo, json?: string, processFunc?: (value: any, response: FetchJsonResponse) => any): Promise<any> { | ||
| export function fetchJson( | ||
| connection: string | ConnectionInfo, | ||
| json?: string, | ||
| processFunc?: (value: any, response: FetchJsonResponse) => any, | ||
| ): Promise<any> { | ||
| let processJsonFunc = (value: Uint8Array, response: FetchJsonResponse) => { | ||
@@ -405,3 +527,3 @@ let result: any = null; | ||
| body: value, | ||
| error: error | ||
| error: error, | ||
| }); | ||
@@ -416,3 +538,3 @@ } | ||
| return result; | ||
| } | ||
| }; | ||
@@ -427,5 +549,11 @@ // If we have json to send, we must | ||
| // Create a connection with the content-type set for JSON | ||
| const updated: ConnectionInfo = (typeof(connection) === "string") ? ({ url: connection }): shallowCopy(connection); | ||
| const updated: ConnectionInfo = | ||
| typeof connection === "string" | ||
| ? { url: connection } | ||
| : shallowCopy(connection); | ||
| if (updated.headers) { | ||
| const hasContentType = (Object.keys(updated.headers).filter((k) => (k.toLowerCase() === "content-type")).length) !== 0; | ||
| const hasContentType = | ||
| Object.keys(updated.headers).filter( | ||
| (k) => k.toLowerCase() === "content-type", | ||
| ).length !== 0; | ||
| if (!hasContentType) { | ||
@@ -444,11 +572,21 @@ updated.headers = shallowCopy(updated.headers); | ||
| export function poll<T>(func: () => Promise<T>, options?: PollOptions): Promise<T> { | ||
| if (!options) { options = {}; } | ||
| export function poll<T>( | ||
| func: () => Promise<T>, | ||
| options?: PollOptions, | ||
| ): Promise<T> { | ||
| if (!options) { | ||
| options = {}; | ||
| } | ||
| options = shallowCopy(options); | ||
| if (options.floor == null) { options.floor = 0; } | ||
| if (options.ceiling == null) { options.ceiling = 10000; } | ||
| if (options.interval == null) { options.interval = 250; } | ||
| if (options.floor == null) { | ||
| options.floor = 0; | ||
| } | ||
| if (options.ceiling == null) { | ||
| options.ceiling = 10000; | ||
| } | ||
| if (options.interval == null) { | ||
| options.interval = 250; | ||
| } | ||
| return new Promise(function(resolve, reject) { | ||
| return new Promise(function (resolve, reject) { | ||
| let timer: NodeJS.Timeout = null; | ||
@@ -459,5 +597,9 @@ let done: boolean = false; | ||
| const cancel = (): boolean => { | ||
| if (done) { return false; } | ||
| if (done) { | ||
| return false; | ||
| } | ||
| done = true; | ||
| if (timer) { clearTimeout(timer); } | ||
| if (timer) { | ||
| clearTimeout(timer); | ||
| } | ||
| return true; | ||
@@ -468,4 +610,6 @@ }; | ||
| timer = setTimeout(() => { | ||
| if (cancel()) { reject(new Error("timeout")); } | ||
| }, options.timeout) | ||
| if (cancel()) { | ||
| reject(new Error("timeout")); | ||
| } | ||
| }, options.timeout); | ||
| } | ||
@@ -477,33 +621,47 @@ | ||
| function check() { | ||
| return func().then(function(result: any): any { | ||
| return func().then( | ||
| function (result: any): any { | ||
| // If we have a result, or are allowed null then we're done | ||
| if (result !== undefined) { | ||
| if (cancel()) { | ||
| resolve(result); | ||
| } | ||
| } else if (options.oncePoll) { | ||
| options.oncePoll.once("poll", check); | ||
| } else if (options.onceBlock) { | ||
| options.onceBlock.once("block", check); | ||
| // If we have a result, or are allowed null then we're done | ||
| if (result !== undefined) { | ||
| if (cancel()) { resolve(result); } | ||
| // Otherwise, exponential back-off (up to 10s) our next request | ||
| } else if (!done) { | ||
| attempt++; | ||
| if (attempt > retryLimit) { | ||
| if (cancel()) { | ||
| reject(new Error("retry limit reached")); | ||
| } | ||
| return; | ||
| } | ||
| } else if (options.oncePoll) { | ||
| options.oncePoll.once("poll", check); | ||
| let timeout = | ||
| options.interval * | ||
| parseInt( | ||
| String(Math.random() * Math.pow(2, attempt)), | ||
| ); | ||
| if (timeout < options.floor) { | ||
| timeout = options.floor; | ||
| } | ||
| if (timeout > options.ceiling) { | ||
| timeout = options.ceiling; | ||
| } | ||
| } else if (options.onceBlock) { | ||
| options.onceBlock.once("block", check); | ||
| setTimeout(check, timeout); | ||
| } | ||
| // Otherwise, exponential back-off (up to 10s) our next request | ||
| } else if (!done) { | ||
| attempt++; | ||
| if (attempt > retryLimit) { | ||
| if (cancel()) { reject(new Error("retry limit reached")); } | ||
| return; | ||
| return null; | ||
| }, | ||
| function (error) { | ||
| if (cancel()) { | ||
| reject(error); | ||
| } | ||
| let timeout = options.interval * parseInt(String(Math.random() * Math.pow(2, attempt))); | ||
| if (timeout < options.floor) { timeout = options.floor; } | ||
| if (timeout > options.ceiling) { timeout = options.ceiling; } | ||
| setTimeout(check, timeout); | ||
| } | ||
| return null; | ||
| }, function(error) { | ||
| if (cancel()) { reject(error); } | ||
| }); | ||
| }, | ||
| ); | ||
| } | ||
@@ -513,2 +671,1 @@ check(); | ||
| } | ||
+2
-3
@@ -6,3 +6,3 @@ "use strict"; | ||
| statusMessage: string; | ||
| headers: { [ key: string] : string }; | ||
| headers: { [key: string]: string }; | ||
| body: Uint8Array; | ||
@@ -15,6 +15,5 @@ }; | ||
| body?: Uint8Array; | ||
| headers?: { [ key: string] : string }; | ||
| headers?: { [key: string]: string }; | ||
| skipFetchSetup?: boolean; | ||
| fetchOptions?: Record<string, string>; | ||
| }; | ||
1420
6.29%79163
-7.78%39
-2.5%+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
Updated
Updated
Updated