swagger-client 3.20.1 → 3.21.0
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/README.md +19 -2
- package/dist/swagger-client.browser.js +13796 -16135
- package/dist/swagger-client.browser.min.js +1 -1
- package/dist/swagger-client.browser.min.js.map +1 -1
- package/es/execute/index.js +53 -27
- package/es/execute/oas3/build-request.js +7 -5
- package/es/execute/swagger2/build-request.js +3 -2
- package/es/helpers/fetch-polyfill.browser.js +13 -0
- package/es/helpers/fetch-polyfill.node.js +14 -0
- package/es/helpers/fetch-ponyfill-node-fetch.node.js +3 -0
- package/es/helpers/fetch-ponyfill-undici.node.js +2 -0
- package/es/helpers/fetch-ponyfill.browser.js +8 -0
- package/es/http/index.js +10 -9
- package/es/index.js +9 -9
- package/es/interfaces.js +4 -4
- package/es/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/index.js +2 -1
- package/es/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/all-of.js +4 -2
- package/es/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/dereference.js +26 -18
- package/es/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/parameters.js +2 -1
- package/es/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/properties.js +2 -1
- package/es/resolver/apidom/reference/resolve/resolvers/http-swagger-client/index.js +12 -10
- package/es/resolver/index.js +7 -4
- package/es/resolver/strategies/openapi-3-1-apidom/normalize.js +1 -1
- package/es/specmap/helpers.js +2 -2
- package/es/specmap/index.js +6 -4
- package/es/specmap/lib/all-of.js +3 -2
- package/es/specmap/lib/context-tree.js +4 -2
- package/es/specmap/lib/index.js +11 -5
- package/es/specmap/lib/parameters.js +3 -2
- package/es/specmap/lib/properties.js +3 -2
- package/es/specmap/lib/refs.js +2 -2
- package/es/subtree-resolver/index.js +8 -6
- package/lib/execute/index.js +77 -49
- package/lib/execute/oas3/build-request.js +22 -18
- package/lib/execute/oas3/parameter-builders.js +26 -23
- package/lib/execute/oas3/style-serializer.js +27 -23
- package/lib/execute/swagger2/build-request.js +11 -13
- package/lib/execute/swagger2/parameter-builders.js +29 -24
- package/lib/helpers/fetch-polyfill.browser.js +15 -0
- package/lib/helpers/fetch-polyfill.node.js +16 -0
- package/lib/helpers/fetch-ponyfill-node-fetch.node.js +9 -0
- package/lib/helpers/fetch-ponyfill-undici.node.js +8 -0
- package/lib/helpers/fetch-ponyfill.browser.js +15 -0
- package/lib/helpers/find-operation.js +1 -1
- package/lib/helpers/get-operation-raw.js +7 -6
- package/lib/helpers/id-from-path-method/index.js +5 -4
- package/lib/helpers/index.js +2 -2
- package/lib/helpers/op-id.js +8 -4
- package/lib/http/index.js +52 -22
- package/lib/index.js +21 -18
- package/lib/interfaces.js +49 -36
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/errors/index.js +1 -1
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/index.js +12 -12
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/utils/compose.js +1 -1
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/all-of.js +9 -8
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/dereference.js +29 -28
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/parameters.js +8 -7
- package/lib/resolver/apidom/reference/dereference/strategies/openapi-3-1-swagger-client/visitors/properties.js +8 -7
- package/lib/resolver/apidom/reference/parse/parsers/openapi-yaml-3-1/index.js +1 -2
- package/lib/resolver/apidom/reference/parse/parsers/yaml-1-2/index.js +1 -2
- package/lib/resolver/apidom/reference/resolve/resolvers/http-swagger-client/index.js +18 -19
- package/lib/resolver/index.js +9 -11
- package/lib/resolver/strategies/generic/index.js +5 -4
- package/lib/resolver/strategies/generic/normalize.js +1 -1
- package/lib/resolver/strategies/generic/resolve.js +2 -3
- package/lib/resolver/strategies/openapi-2/index.js +9 -7
- package/lib/resolver/strategies/openapi-2/normalize.js +2 -2
- package/lib/resolver/strategies/openapi-2/resolve.js +1 -1
- package/lib/resolver/strategies/openapi-3-0/index.js +9 -7
- package/lib/resolver/strategies/openapi-3-0/normalize.js +2 -2
- package/lib/resolver/strategies/openapi-3-0/resolve.js +1 -1
- package/lib/resolver/strategies/openapi-3-1-apidom/index.js +10 -9
- package/lib/resolver/strategies/openapi-3-1-apidom/normalize.js +2 -2
- package/lib/resolver/strategies/openapi-3-1-apidom/resolve.js +2 -3
- package/lib/resolver/utils/index.js +4 -1
- package/lib/resolver/utils/options.js +1 -1
- package/lib/specmap/helpers.js +9 -8
- package/lib/specmap/index.js +15 -11
- package/lib/specmap/lib/all-of.js +3 -6
- package/lib/specmap/lib/context-tree.js +4 -6
- package/lib/specmap/lib/create-error.js +4 -1
- package/lib/specmap/lib/index.js +13 -12
- package/lib/specmap/lib/parameters.js +4 -7
- package/lib/specmap/lib/properties.js +4 -7
- package/lib/specmap/lib/refs.js +4 -4
- package/lib/subtree-resolver/index.js +19 -13
- package/package.json +17 -26
- package/es/http/fold-formdata-to-request.browser.js +0 -4
- package/es/http/fold-formdata-to-request.node.js +0 -29
- package/lib/http/fold-formdata-to-request.browser.js +0 -9
- package/lib/http/fold-formdata-to-request.node.js +0 -37
package/lib/specmap/lib/refs.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
3
4
|
exports.__esModule = true;
|
|
4
5
|
exports.default = void 0;
|
|
5
|
-
require("cross-fetch/polyfill");
|
|
6
6
|
var _jsYaml = _interopRequireDefault(require("js-yaml"));
|
|
7
|
-
var
|
|
7
|
+
var _empty = require("@swagger-api/apidom-reference/configuration/empty");
|
|
8
|
+
require("../../helpers/fetch-polyfill.node.js");
|
|
8
9
|
var _index = _interopRequireDefault(require("./index.js"));
|
|
9
10
|
var _createError = _interopRequireDefault(require("./create-error.js"));
|
|
10
11
|
var _helpers = require("../helpers.js");
|
|
11
12
|
var _constants = require("../../constants.js");
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
const ABSOLUTE_URL_REGEXP = /^([a-z]+:\/\/|\/\/)/i;
|
|
14
14
|
const JSONRefError = (0, _createError.default)('JSONRefError', function cb(message, extra, oriError) {
|
|
15
15
|
this.originalError = oriError;
|
|
@@ -212,7 +212,7 @@ function absoluteify(path, basePath) {
|
|
|
212
212
|
if (!basePath) {
|
|
213
213
|
throw new JSONRefError(`Tried to resolve a relative URL, without having a basePath. path: '${path}' basePath: '${basePath}'`);
|
|
214
214
|
}
|
|
215
|
-
return
|
|
215
|
+
return _empty.url.resolve(basePath, path);
|
|
216
216
|
}
|
|
217
217
|
return path;
|
|
218
218
|
}
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
3
4
|
exports.__esModule = true;
|
|
4
5
|
exports.makeResolveSubtree = exports.default = void 0;
|
|
5
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
|
6
6
|
var _index = _interopRequireDefault(require("../resolver/index.js"));
|
|
7
7
|
var _index2 = _interopRequireDefault(require("../resolver/strategies/generic/index.js"));
|
|
8
8
|
var _index3 = _interopRequireDefault(require("../resolver/strategies/openapi-2/index.js"));
|
|
9
9
|
var _index4 = _interopRequireDefault(require("../resolver/strategies/openapi-3-0/index.js"));
|
|
10
|
-
|
|
11
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
15
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // The subtree resolver is a higher-level interface that allows you to
|
|
10
|
+
// The subtree resolver is a higher-level interface that allows you to
|
|
16
11
|
// get the same result that you would from `Swagger.resolve`, but focuses on
|
|
17
12
|
// a subtree of your object.
|
|
18
13
|
//
|
|
@@ -34,7 +29,11 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
34
29
|
// future versions.
|
|
35
30
|
//
|
|
36
31
|
// TODO: move the remarks above into project documentation
|
|
37
|
-
|
|
32
|
+
|
|
33
|
+
const resolveSubtree = async function (obj, path, options) {
|
|
34
|
+
if (options === void 0) {
|
|
35
|
+
options = {};
|
|
36
|
+
}
|
|
38
37
|
const {
|
|
39
38
|
returnEntireTree,
|
|
40
39
|
baseDoc,
|
|
@@ -58,18 +57,25 @@ const resolveSubtree = async (obj, path, options = {}) => {
|
|
|
58
57
|
};
|
|
59
58
|
const strategy = strategies.find(strg => strg.match(resolveOptions));
|
|
60
59
|
const normalized = strategy.normalize(resolveOptions);
|
|
61
|
-
const result = await (0, _index.default)(
|
|
60
|
+
const result = await (0, _index.default)({
|
|
61
|
+
...resolveOptions,
|
|
62
62
|
spec: normalized,
|
|
63
63
|
allowMetaPatches: true,
|
|
64
64
|
skipNormalization: true
|
|
65
|
-
})
|
|
65
|
+
});
|
|
66
66
|
if (!returnEntireTree && Array.isArray(path) && path.length) {
|
|
67
|
-
result.spec = (0,
|
|
67
|
+
result.spec = path.reduce((acc, pathSegment) => acc == null ? void 0 : acc[pathSegment], result.spec) || null;
|
|
68
68
|
}
|
|
69
69
|
return result;
|
|
70
70
|
};
|
|
71
|
-
const makeResolveSubtree = defaultOptions => async (obj, path, options
|
|
72
|
-
|
|
71
|
+
const makeResolveSubtree = defaultOptions => async function (obj, path, options) {
|
|
72
|
+
if (options === void 0) {
|
|
73
|
+
options = {};
|
|
74
|
+
}
|
|
75
|
+
const mergedOptions = {
|
|
76
|
+
...defaultOptions,
|
|
77
|
+
...options
|
|
78
|
+
};
|
|
73
79
|
return resolveSubtree(obj, path, mergedOptions);
|
|
74
80
|
};
|
|
75
81
|
exports.makeResolveSubtree = makeResolveSubtree;
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swagger-client",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.21.0",
|
|
4
4
|
"description": "SwaggerJS - a collection of interfaces for OAI specs",
|
|
5
5
|
"browser": {
|
|
6
|
-
"./src/http/fold-formdata-to-request.node.js": "./src/http/fold-formdata-to-request.browser.js",
|
|
7
|
-
"./lib/http/fold-formdata-to-request.node.js": "./lib/http/fold-formdata-to-request.browser.js",
|
|
8
|
-
"./es/http/fold-formdata-to-request.node.js": "./es/http/fold-formdata-to-request.browser.js",
|
|
9
6
|
"./src/helpers/btoa.node.js": "./src/helpers/btoa.browser.js",
|
|
10
7
|
"./lib/helpers/btoa.node.js": "./lib/helpers/btoa.browser.js",
|
|
11
|
-
"./es/helpers/btoa.node.js": "./es/helpers/btoa.browser.js"
|
|
8
|
+
"./es/helpers/btoa.node.js": "./es/helpers/btoa.browser.js",
|
|
9
|
+
"./src/helpers/fetch-polyfill.node.js": "./src/helpers/fetch-polyfill.browser.js",
|
|
10
|
+
"./es/helpers/fetch-polyfill.node.js": "./es/helpers/fetch-polyfill.browser.js",
|
|
11
|
+
"./lib/helpers/fetch-polyfill.node.js": "./lib/helpers/fetch-polyfill.browser.js"
|
|
12
12
|
},
|
|
13
13
|
"main": "lib/commonjs.js",
|
|
14
14
|
"module": "es/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"scripts": {
|
|
42
42
|
"analyze:umd:browser": "source-map-explorer 'dist/swagger-client.browser.min.js'",
|
|
43
|
-
"prepublishOnly": "npm run clean && npm run lint && npm run test && npm run build
|
|
43
|
+
"prepublishOnly": "npm run clean && npm run lint && npm run test && npm run build",
|
|
44
44
|
"build": "run-s build:umd:browser build:commonjs build:es",
|
|
45
45
|
"build:umd:browser": "cross-env BABEL_ENV=browser webpack --progress --config config/webpack/browser.config.babel.js",
|
|
46
46
|
"build:commonjs": "cross-env BABEL_ENV=commonjs babel src --out-dir lib",
|
|
@@ -71,24 +71,19 @@
|
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"@babel/cli": "^7.21.0",
|
|
73
73
|
"@babel/core": "^7.21.0",
|
|
74
|
-
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
75
|
-
"@babel/plugin-proposal-object-rest-spread": "^7.20.7",
|
|
76
74
|
"@babel/plugin-transform-runtime": "^7.21.0",
|
|
77
75
|
"@babel/preset-env": "^7.20.2",
|
|
78
76
|
"@babel/register": "^7.21.0",
|
|
79
77
|
"@commitlint/cli": "^17.0.0",
|
|
80
78
|
"@commitlint/config-conventional": "^17.0.0",
|
|
81
|
-
"abort-controller": "^3.0.0",
|
|
82
79
|
"babel-loader": "=9.1.3",
|
|
83
|
-
"babel-plugin-lodash": "=3.3.4",
|
|
84
80
|
"cross-env": "=7.0.3",
|
|
85
81
|
"eslint": "^8.42.0",
|
|
86
82
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
87
|
-
"eslint-config-prettier": "=
|
|
83
|
+
"eslint-config-prettier": "=9.0.0",
|
|
88
84
|
"eslint-plugin-import": "=2.28.1",
|
|
89
85
|
"eslint-plugin-prettier": "=5.0.0",
|
|
90
86
|
"expect": "^29.0.3",
|
|
91
|
-
"fetch-mock": "=9.11.0",
|
|
92
87
|
"glob": "=10.3.4",
|
|
93
88
|
"husky": "^8.0.1",
|
|
94
89
|
"inspectpack": "=4.7.1",
|
|
@@ -98,9 +93,7 @@
|
|
|
98
93
|
"json-loader": "=0.5.7",
|
|
99
94
|
"license-checker": "=25.0.1",
|
|
100
95
|
"lint-staged": "=14.0.1",
|
|
101
|
-
"lodash
|
|
102
|
-
"nock": "=13.3.3",
|
|
103
|
-
"node-fetch": "^2.6.7",
|
|
96
|
+
"lodash": "^4.17.21",
|
|
104
97
|
"npm-run-all": "=4.1.5",
|
|
105
98
|
"prettier": "^3.0.0",
|
|
106
99
|
"rimraf": "=5.0.1",
|
|
@@ -109,27 +102,25 @@
|
|
|
109
102
|
"webpack": "=5.88.2",
|
|
110
103
|
"webpack-bundle-size-analyzer": "=3.1.0",
|
|
111
104
|
"webpack-cli": "=5.1.4",
|
|
112
|
-
"webpack-stats-plugin": "=1.1.3"
|
|
113
|
-
"xmock": "=0.3.0"
|
|
105
|
+
"webpack-stats-plugin": "=1.1.3"
|
|
114
106
|
},
|
|
115
107
|
"dependencies": {
|
|
116
|
-
"@babel/runtime-corejs3": "^7.
|
|
117
|
-
"@swagger-api/apidom-core": ">=0.76.
|
|
118
|
-
"@swagger-api/apidom-json-pointer": ">=0.76.
|
|
119
|
-
"@swagger-api/apidom-ns-openapi-3-1": ">=0.76.
|
|
120
|
-
"@swagger-api/apidom-reference": ">=0.76.
|
|
108
|
+
"@babel/runtime-corejs3": "^7.22.15",
|
|
109
|
+
"@swagger-api/apidom-core": ">=0.76.2 <1.0.0",
|
|
110
|
+
"@swagger-api/apidom-json-pointer": ">=0.76.2 <1.0.0",
|
|
111
|
+
"@swagger-api/apidom-ns-openapi-3-1": ">=0.76.2 <1.0.0",
|
|
112
|
+
"@swagger-api/apidom-reference": ">=0.76.2 <1.0.0",
|
|
113
|
+
"abort-controller": "^3.0.0",
|
|
121
114
|
"cookie": "~0.5.0",
|
|
122
|
-
"cross-fetch": "^3.1.5",
|
|
123
115
|
"deepmerge": "~4.3.0",
|
|
124
116
|
"fast-json-patch": "^3.0.0-1",
|
|
125
|
-
"form-data-encoder": "^1.4.3",
|
|
126
117
|
"formdata-node": "^4.0.0",
|
|
127
118
|
"is-plain-object": "^5.0.0",
|
|
128
119
|
"js-yaml": "^4.1.0",
|
|
129
|
-
"
|
|
120
|
+
"node-fetch-commonjs": "^3.3.1",
|
|
130
121
|
"qs": "^6.10.2",
|
|
131
122
|
"traverse": "~0.6.6",
|
|
132
|
-
"
|
|
123
|
+
"undici": "^5.24.0"
|
|
133
124
|
},
|
|
134
125
|
"overrides": {
|
|
135
126
|
"@swagger-api/apidom-reference": {
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime-corejs3/helpers/objectSpread2";
|
|
2
|
-
import { Readable } from 'stream';
|
|
3
|
-
import { FormDataEncoder } from 'form-data-encoder';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* formdata-node works in node-fetch@2.x via form-data-encoder only.
|
|
7
|
-
* FormData instance is converted to Encoder instance which gets converted
|
|
8
|
-
* to Readable Stream.
|
|
9
|
-
*
|
|
10
|
-
* TODO(vladimir.gorej@gmail.com): this can be removed when migrated to node-fetch@3.x
|
|
11
|
-
*/
|
|
12
|
-
const foldFormDataToRequest = (formdata, request) => {
|
|
13
|
-
const encoder = new FormDataEncoder(formdata);
|
|
14
|
-
const readableStream = Readable.from(encoder);
|
|
15
|
-
|
|
16
|
-
// get rid of previous headers
|
|
17
|
-
delete request.headers['content-type'];
|
|
18
|
-
delete request.headers['Content-Type'];
|
|
19
|
-
|
|
20
|
-
// set computed headers
|
|
21
|
-
request.headers = _objectSpread(_objectSpread({}, request.headers), encoder.headers);
|
|
22
|
-
|
|
23
|
-
// set FormData instance to request for debugging purposes
|
|
24
|
-
request.formdata = formdata;
|
|
25
|
-
|
|
26
|
-
// assign readable stream as request body
|
|
27
|
-
request.body = readableStream;
|
|
28
|
-
};
|
|
29
|
-
export default foldFormDataToRequest;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
exports.default = void 0;
|
|
5
|
-
var _stream = require("stream");
|
|
6
|
-
var _formDataEncoder = require("form-data-encoder");
|
|
7
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
8
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
9
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
11
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
12
|
-
/**
|
|
13
|
-
* formdata-node works in node-fetch@2.x via form-data-encoder only.
|
|
14
|
-
* FormData instance is converted to Encoder instance which gets converted
|
|
15
|
-
* to Readable Stream.
|
|
16
|
-
*
|
|
17
|
-
* TODO(vladimir.gorej@gmail.com): this can be removed when migrated to node-fetch@3.x
|
|
18
|
-
*/
|
|
19
|
-
const foldFormDataToRequest = (formdata, request) => {
|
|
20
|
-
const encoder = new _formDataEncoder.FormDataEncoder(formdata);
|
|
21
|
-
const readableStream = _stream.Readable.from(encoder);
|
|
22
|
-
|
|
23
|
-
// get rid of previous headers
|
|
24
|
-
delete request.headers['content-type'];
|
|
25
|
-
delete request.headers['Content-Type'];
|
|
26
|
-
|
|
27
|
-
// set computed headers
|
|
28
|
-
request.headers = _objectSpread(_objectSpread({}, request.headers), encoder.headers);
|
|
29
|
-
|
|
30
|
-
// set FormData instance to request for debugging purposes
|
|
31
|
-
request.formdata = formdata;
|
|
32
|
-
|
|
33
|
-
// assign readable stream as request body
|
|
34
|
-
request.body = readableStream;
|
|
35
|
-
};
|
|
36
|
-
var _default = foldFormDataToRequest;
|
|
37
|
-
exports.default = _default;
|