UNPKG

rekwest

Version:

The robust request library that humanity deserves 🌐

191 lines (190 loc) 6.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _exportNames = { constants: true, mediatypes: true, Blob: true, File: true }; Object.defineProperty(exports, "Blob", { enumerable: true, get: function () { return _nodeBuffer.Blob; } }); Object.defineProperty(exports, "File", { enumerable: true, get: function () { return _nodeBuffer.File; } }); Object.defineProperty(exports, "constants", { enumerable: true, get: function () { return _nodeHttp2.constants; } }); exports.default = rekwest; exports.mediatypes = void 0; var _nodeHttp = _interopRequireDefault(require("node:http")); var _nodeHttp2 = _interopRequireWildcard(require("node:http2")); var _nodeHttps = _interopRequireDefault(require("node:https")); var _config = _interopRequireDefault(require("./config")); var _constants = require("./constants"); Object.keys(_constants).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _constants[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _constants[key]; } }); }); var _mediatypes2 = _interopRequireWildcard(require("./mediatypes")); var _mediatypes = _mediatypes2; exports.mediatypes = _mediatypes2; var _preflight = require("./preflight"); var _transfer = require("./transfer"); var _utils = require("./utils"); Object.keys(_utils).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _utils[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _utils[key]; } }); }); var _validation = require("./validation"); Object.keys(_validation).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _validation[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _validation[key]; } }); }); var _nodeBuffer = require("node:buffer"); var _ackn = require("./ackn"); Object.keys(_ackn).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ackn[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ackn[key]; } }); }); var _cookies = require("./cookies"); Object.keys(_cookies).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _cookies[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _cookies[key]; } }); }); var _errors = require("./errors"); Object.keys(_errors).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _errors[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _errors[key]; } }); }); var _formdata = require("./formdata"); Object.keys(_formdata).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _formdata[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _formdata[key]; } }); }); var _mixin = require("./mixin"); Object.keys(_mixin).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _mixin[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _mixin[key]; } }); }); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const { HTTP2_HEADER_CONTENT_TYPE } = _nodeHttp2.default.constants; function rekwest(url, options) { return (0, _transfer.transfer)((0, _validation.validation)((0, _utils.normalize)(url, options)), rekwest); } Reflect.defineProperty(rekwest, 'defaults', { enumerable: true, get() { return _config.default.defaults; }, set(value) { _config.default.defaults = (0, _utils.copyWithMerge)(_config.default.defaults, value); } }); Reflect.defineProperty(rekwest, 'extend', { enumerable: true, value(options) { return (url, opts) => rekwest(url, (0, _utils.copyWithMerge)(options, opts)); } }); Reflect.defineProperty(rekwest, 'stream', { enumerable: true, value(url, options) { options = (0, _preflight.preflight)((0, _validation.validation)((0, _utils.normalize)(url, (0, _utils.copyWithMerge)({}, options, { headers: { [HTTP2_HEADER_CONTENT_TYPE]: _mediatypes2.APPLICATION_OCTET_STREAM }, redirect: _constants.requestRedirect.manual })))); let client, req; if (options.h2) { client = _nodeHttp2.default.connect(options.url.origin, options); req = client.request(options.headers, options); } else { const { request } = options.url.protocol === 'http:' ? _nodeHttp.default : _nodeHttps.default; req = request(options.url, options); } (0, _utils.affix)(client, req, options); req.once('response', res => { let headers; if (options.h2) { headers = res; res = req; } (0, _utils.admix)(res, headers, options); }); return req; } });