swagger-client 3.16.1 → 3.17.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 +1 -1
- package/dist/swagger-client.browser.js +721 -4548
- package/dist/swagger-client.browser.min.js +1 -1
- package/dist/swagger-client.browser.min.js.map +1 -1
- package/es/execute/index.js +1 -2
- package/es/execute/oas3/build-request.js +4 -2
- package/es/execute/oas3/parameter-builders.js +8 -2
- package/es/execute/oas3/style-serializer.js +4 -4
- package/es/execute/swagger2/build-request.js +5 -3
- package/es/helpers.js +3 -3
- package/es/http/index.js +12 -8
- package/es/index.js +6 -5
- package/es/interfaces.js +8 -4
- package/es/specmap/helpers.js +2 -3
- package/es/specmap/index.js +16 -15
- package/es/specmap/lib/refs.js +12 -8
- package/lib/execute/index.js +3 -5
- package/lib/execute/oas3/build-request.js +9 -6
- package/lib/execute/oas3/parameter-builders.js +14 -7
- package/lib/execute/oas3/style-serializer.js +3 -6
- package/lib/execute/swagger2/build-request.js +9 -4
- package/lib/helpers.js +7 -9
- package/lib/http/index.js +20 -16
- package/lib/index.js +4 -8
- package/lib/interfaces.js +19 -14
- package/lib/resolver.js +1 -1
- package/lib/specmap/helpers.js +3 -5
- package/lib/specmap/index.js +6 -8
- package/lib/specmap/lib/refs.js +4 -4
- package/package.json +11 -13
package/lib/helpers.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
+
exports.eachOperation = eachOperation;
|
|
5
|
+
exports.findOperation = findOperation;
|
|
6
|
+
exports.getOperationRaw = getOperationRaw;
|
|
7
|
+
exports.idFromPathMethod = idFromPathMethod;
|
|
4
8
|
exports.isOAS3 = isOAS3;
|
|
5
9
|
exports.isSwagger2 = isSwagger2;
|
|
6
|
-
exports.opId = opId;
|
|
7
|
-
exports.idFromPathMethod = idFromPathMethod;
|
|
8
10
|
exports.legacyIdFromPathMethod = legacyIdFromPathMethod;
|
|
9
|
-
exports.getOperationRaw = getOperationRaw;
|
|
10
|
-
exports.findOperation = findOperation;
|
|
11
|
-
exports.eachOperation = eachOperation;
|
|
12
11
|
exports.normalizeSwagger = normalizeSwagger;
|
|
12
|
+
exports.opId = opId;
|
|
13
13
|
|
|
14
14
|
var _isObject = _interopRequireDefault(require("lodash/isObject"));
|
|
15
15
|
|
|
16
|
-
var _startsWith = _interopRequireDefault(require("lodash/startsWith"));
|
|
17
|
-
|
|
18
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
17
|
|
|
20
18
|
const toLower = str => String.prototype.toLowerCase.call(str);
|
|
@@ -29,7 +27,7 @@ function isOAS3(spec) {
|
|
|
29
27
|
return false;
|
|
30
28
|
}
|
|
31
29
|
|
|
32
|
-
return
|
|
30
|
+
return oasVersion.startsWith('3');
|
|
33
31
|
}
|
|
34
32
|
|
|
35
33
|
function isSwagger2(spec) {
|
|
@@ -39,7 +37,7 @@ function isSwagger2(spec) {
|
|
|
39
37
|
return false;
|
|
40
38
|
}
|
|
41
39
|
|
|
42
|
-
return
|
|
40
|
+
return swaggerVersion.startsWith('2');
|
|
43
41
|
} // Strategy for determining operationId
|
|
44
42
|
|
|
45
43
|
|
package/lib/http/index.js
CHANGED
|
@@ -2,13 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.default = http;
|
|
5
|
-
exports.serializeRes = serializeRes;
|
|
6
|
-
exports.serializeHeaders = serializeHeaders;
|
|
7
|
-
exports.isFile = isFile;
|
|
8
5
|
exports.encodeFormOrQuery = encodeFormOrQuery;
|
|
9
|
-
exports.
|
|
6
|
+
exports.isFile = isFile;
|
|
10
7
|
exports.makeHttp = makeHttp;
|
|
11
|
-
exports.
|
|
8
|
+
exports.mergeInQueryOrForm = mergeInQueryOrForm;
|
|
9
|
+
exports.self = void 0;
|
|
10
|
+
exports.serializeHeaders = serializeHeaders;
|
|
11
|
+
exports.serializeRes = serializeRes;
|
|
12
|
+
exports.shouldDownloadAsText = void 0;
|
|
12
13
|
|
|
13
14
|
require("cross-fetch/polyfill");
|
|
14
15
|
|
|
@@ -16,12 +17,6 @@ var _qs = _interopRequireDefault(require("qs"));
|
|
|
16
17
|
|
|
17
18
|
var _jsYaml = _interopRequireDefault(require("js-yaml"));
|
|
18
19
|
|
|
19
|
-
var _pick = _interopRequireDefault(require("lodash/pick"));
|
|
20
|
-
|
|
21
|
-
var _isFunction = _interopRequireDefault(require("lodash/isFunction"));
|
|
22
|
-
|
|
23
|
-
var _buffer = require("buffer");
|
|
24
|
-
|
|
25
20
|
var _formdataNode = require("formdata-node");
|
|
26
21
|
|
|
27
22
|
var _styleSerializer = require("../execute/oas3/style-serializer");
|
|
@@ -171,7 +166,7 @@ function serializeHeaderValue(value) {
|
|
|
171
166
|
|
|
172
167
|
|
|
173
168
|
function serializeHeaders(headers = {}) {
|
|
174
|
-
if (
|
|
169
|
+
if (typeof headers.entries !== 'function') return {};
|
|
175
170
|
return Array.from(headers.entries()).reduce((acc, [header, value]) => {
|
|
176
171
|
acc[header] = serializeHeaderValue(value);
|
|
177
172
|
return acc;
|
|
@@ -200,7 +195,7 @@ function isFile(obj, navigatorObj) {
|
|
|
200
195
|
return true;
|
|
201
196
|
}
|
|
202
197
|
|
|
203
|
-
if (
|
|
198
|
+
if (ArrayBuffer.isView(obj)) {
|
|
204
199
|
return true;
|
|
205
200
|
}
|
|
206
201
|
|
|
@@ -259,7 +254,16 @@ function formatKeyValue(key, input, skipEncoding = false) {
|
|
|
259
254
|
|
|
260
255
|
if (encoding) {
|
|
261
256
|
if ([typeof encoding.style, typeof encoding.explode, typeof encoding.allowReserved].some(type => type !== 'undefined')) {
|
|
262
|
-
|
|
257
|
+
const {
|
|
258
|
+
style,
|
|
259
|
+
explode,
|
|
260
|
+
allowReserved
|
|
261
|
+
} = encoding;
|
|
262
|
+
return formatKeyValueBySerializationOption(key, value, skipEncoding, {
|
|
263
|
+
style,
|
|
264
|
+
explode,
|
|
265
|
+
allowReserved
|
|
266
|
+
});
|
|
263
267
|
}
|
|
264
268
|
|
|
265
269
|
if (encoding.contentType) {
|
|
@@ -367,14 +371,14 @@ function buildFormData(reqForm) {
|
|
|
367
371
|
if (Array.isArray(value)) {
|
|
368
372
|
// eslint-disable-next-line no-restricted-syntax
|
|
369
373
|
for (const v of value) {
|
|
370
|
-
if (
|
|
374
|
+
if (ArrayBuffer.isView(v)) {
|
|
371
375
|
const blob = new _formdataNode.Blob([v]);
|
|
372
376
|
formData.append(key, blob);
|
|
373
377
|
} else {
|
|
374
378
|
formData.append(key, v);
|
|
375
379
|
}
|
|
376
380
|
}
|
|
377
|
-
} else if (
|
|
381
|
+
} else if (ArrayBuffer.isView(value)) {
|
|
378
382
|
const blob = new _formdataNode.Blob([value]);
|
|
379
383
|
formData.append(key, blob);
|
|
380
384
|
} else {
|
package/lib/index.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.
|
|
5
|
-
|
|
6
|
-
var _assign = _interopRequireDefault(require("lodash/assign"));
|
|
7
|
-
|
|
8
|
-
var _startsWith = _interopRequireDefault(require("lodash/startsWith"));
|
|
4
|
+
exports.helpers = exports.default = void 0;
|
|
9
5
|
|
|
10
6
|
var _url = _interopRequireDefault(require("url"));
|
|
11
7
|
|
|
@@ -60,10 +56,10 @@ function Swagger(url, opts = {}) {
|
|
|
60
56
|
return new Swagger(opts);
|
|
61
57
|
}
|
|
62
58
|
|
|
63
|
-
|
|
59
|
+
Object.assign(this, opts);
|
|
64
60
|
const prom = this.resolve().then(() => {
|
|
65
61
|
if (!this.disableInterfaces) {
|
|
66
|
-
|
|
62
|
+
Object.assign(this, Swagger.makeApisTagOperation(this));
|
|
67
63
|
}
|
|
68
64
|
|
|
69
65
|
return this;
|
|
@@ -116,7 +112,7 @@ Swagger.prototype.applyDefaults = function applyDefaults() {
|
|
|
116
112
|
} = this;
|
|
117
113
|
const specUrl = this.url; // TODO: OAS3: support servers here
|
|
118
114
|
|
|
119
|
-
if (specUrl &&
|
|
115
|
+
if (specUrl && specUrl.startsWith('http')) {
|
|
120
116
|
const parsed = _url.default.parse(specUrl);
|
|
121
117
|
|
|
122
118
|
if (!spec.host) {
|
package/lib/interfaces.js
CHANGED
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.makeExecute = makeExecute;
|
|
5
|
-
exports.makeApisTagOperationsOperationExecute = makeApisTagOperationsOperationExecute;
|
|
6
4
|
exports.makeApisTagOperation = makeApisTagOperation;
|
|
5
|
+
exports.makeApisTagOperationsOperationExecute = makeApisTagOperationsOperationExecute;
|
|
6
|
+
exports.makeExecute = makeExecute;
|
|
7
7
|
exports.mapTagOperations = mapTagOperations;
|
|
8
8
|
exports.self = void 0;
|
|
9
9
|
|
|
10
|
-
var _pick = _interopRequireDefault(require("lodash/pick"));
|
|
11
|
-
|
|
12
10
|
var _helpers = require("./helpers");
|
|
13
11
|
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
12
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
17
13
|
|
|
18
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
@@ -36,14 +32,23 @@ function makeExecute(swaggerJs = {}) {
|
|
|
36
32
|
pathName,
|
|
37
33
|
method,
|
|
38
34
|
operationId
|
|
39
|
-
}) => (parameters, opts = {}) =>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
35
|
+
}) => (parameters, opts = {}) => {
|
|
36
|
+
const {
|
|
37
|
+
requestInterceptor,
|
|
38
|
+
responseInterceptor,
|
|
39
|
+
userFetch
|
|
40
|
+
} = swaggerJs;
|
|
41
|
+
return swaggerJs.execute(_objectSpread({
|
|
42
|
+
spec: swaggerJs.spec,
|
|
43
|
+
requestInterceptor,
|
|
44
|
+
responseInterceptor,
|
|
45
|
+
userFetch,
|
|
46
|
+
pathName,
|
|
47
|
+
method,
|
|
48
|
+
parameters,
|
|
49
|
+
operationId
|
|
50
|
+
}, opts));
|
|
51
|
+
};
|
|
47
52
|
} // Creates an interface with tags+operations = execute
|
|
48
53
|
// The shape
|
|
49
54
|
// { apis: { [tag]: { operations: [operation]: { execute }}}}
|
package/lib/resolver.js
CHANGED
package/lib/specmap/helpers.js
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.isFreelyNamed = isFreelyNamed;
|
|
5
|
-
exports.generateAbsoluteRefPatches = generateAbsoluteRefPatches;
|
|
6
4
|
exports.absolutifyPointer = absolutifyPointer;
|
|
5
|
+
exports.generateAbsoluteRefPatches = generateAbsoluteRefPatches;
|
|
6
|
+
exports.isFreelyNamed = isFreelyNamed;
|
|
7
7
|
|
|
8
8
|
var _traverse = _interopRequireDefault(require("traverse"));
|
|
9
9
|
|
|
10
10
|
var _url = _interopRequireDefault(require("url"));
|
|
11
11
|
|
|
12
|
-
var _isString = _interopRequireDefault(require("lodash/isString"));
|
|
13
|
-
|
|
14
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
13
|
|
|
16
14
|
// This will match if the direct parent's key exactly matches an item.
|
|
@@ -47,7 +45,7 @@ function generateAbsoluteRefPatches(obj, basePath, {
|
|
|
47
45
|
} = {}) {
|
|
48
46
|
const patches = [];
|
|
49
47
|
(0, _traverse.default)(obj).forEach(function callback() {
|
|
50
|
-
if (targetKeys.includes(this.key) &&
|
|
48
|
+
if (targetKeys.includes(this.key) && typeof this.node === 'string') {
|
|
51
49
|
const nodePath = this.path; // this node's path, relative to `obj`
|
|
52
50
|
|
|
53
51
|
const fullPath = basePath.concat(this.path);
|
package/lib/specmap/index.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
+
exports.SpecMap = void 0;
|
|
4
5
|
exports.default = mapSpec;
|
|
5
|
-
exports.plugins =
|
|
6
|
-
|
|
7
|
-
var _find = _interopRequireDefault(require("lodash/find"));
|
|
8
|
-
|
|
9
|
-
var _noop = _interopRequireDefault(require("lodash/noop"));
|
|
6
|
+
exports.plugins = void 0;
|
|
10
7
|
|
|
11
8
|
var _lib = _interopRequireDefault(require("./lib"));
|
|
12
9
|
|
|
@@ -30,6 +27,8 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
30
27
|
|
|
31
28
|
const HARD_LIMIT = 100;
|
|
32
29
|
|
|
30
|
+
const noop = () => {};
|
|
31
|
+
|
|
33
32
|
class SpecMap {
|
|
34
33
|
static getPluginName(plugin) {
|
|
35
34
|
return plugin.pluginName;
|
|
@@ -173,8 +172,7 @@ class SpecMap {
|
|
|
173
172
|
}
|
|
174
173
|
|
|
175
174
|
nextPlugin() {
|
|
176
|
-
|
|
177
|
-
return (0, _find.default)(this.wrappedPlugins, plugin => {
|
|
175
|
+
return this.wrappedPlugins.find(plugin => {
|
|
178
176
|
const mutations = this.getMutationsForPlugin(plugin);
|
|
179
177
|
return mutations.length > 0;
|
|
180
178
|
});
|
|
@@ -381,7 +379,7 @@ class SpecMap {
|
|
|
381
379
|
if (plugin !== this.currentPlugin && this.promisedPatches.length) {
|
|
382
380
|
const promises = this.promisedPatches.map(p => p.value); // Waits for all to settle instead of Promise.all which stops on rejection
|
|
383
381
|
|
|
384
|
-
return Promise.all(promises.map(promise => promise.then(
|
|
382
|
+
return Promise.all(promises.map(promise => promise.then(noop, noop))).then(() => this.dispatch());
|
|
385
383
|
} // Ok, run the plugin
|
|
386
384
|
|
|
387
385
|
|
package/lib/specmap/lib/refs.js
CHANGED
|
@@ -7,8 +7,6 @@ require("cross-fetch/polyfill");
|
|
|
7
7
|
|
|
8
8
|
var _jsYaml = _interopRequireDefault(require("js-yaml"));
|
|
9
9
|
|
|
10
|
-
var _querystringBrowser = _interopRequireDefault(require("querystring-browser"));
|
|
11
|
-
|
|
12
10
|
var _url = _interopRequireDefault(require("url"));
|
|
13
11
|
|
|
14
12
|
var _ = _interopRequireDefault(require("."));
|
|
@@ -407,7 +405,8 @@ function unescapeJsonPointerToken(token) {
|
|
|
407
405
|
return token;
|
|
408
406
|
}
|
|
409
407
|
|
|
410
|
-
|
|
408
|
+
const params = new URLSearchParams(`=${token.replace(/~1/g, '/').replace(/~0/g, '~')}`);
|
|
409
|
+
return params.get('');
|
|
411
410
|
}
|
|
412
411
|
/**
|
|
413
412
|
* Escapes a JSON pointer.
|
|
@@ -416,7 +415,8 @@ function unescapeJsonPointerToken(token) {
|
|
|
416
415
|
|
|
417
416
|
|
|
418
417
|
function escapeJsonPointerToken(token) {
|
|
419
|
-
|
|
418
|
+
const params = new URLSearchParams([['', token.replace(/~/g, '~0').replace(/\//g, '~1')]]);
|
|
419
|
+
return params.toString().slice(1);
|
|
420
420
|
}
|
|
421
421
|
|
|
422
422
|
function arrayToJsonPointer(arr) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swagger-client",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.17.0",
|
|
4
4
|
"description": "SwaggerJS - a collection of interfaces for OAI specs",
|
|
5
5
|
"browser": {
|
|
6
6
|
"./src/http/fold-formdata-to-request.node.js": "./src/http/fold-formdata-to-request.browser.js",
|
|
@@ -65,12 +65,12 @@
|
|
|
65
65
|
],
|
|
66
66
|
"license": "Apache-2.0",
|
|
67
67
|
"devDependencies": {
|
|
68
|
-
"@babel/cli": "=7.15.
|
|
69
|
-
"@babel/core": "=7.15.
|
|
68
|
+
"@babel/cli": "=7.15.7",
|
|
69
|
+
"@babel/core": "=7.15.8",
|
|
70
70
|
"@babel/plugin-proposal-class-properties": "=7.14.5",
|
|
71
71
|
"@babel/plugin-proposal-object-rest-spread": "=7.15.6",
|
|
72
|
-
"@babel/plugin-transform-runtime": "=7.15.
|
|
73
|
-
"@babel/preset-env": "=7.15.
|
|
72
|
+
"@babel/plugin-transform-runtime": "=7.15.8",
|
|
73
|
+
"@babel/preset-env": "=7.15.8",
|
|
74
74
|
"@babel/register": "=7.15.3",
|
|
75
75
|
"@char0n/npm-audit": "gist:2964395223d7943c10396f59df9a8ea0",
|
|
76
76
|
"@commitlint/cli": "^13.1.0",
|
|
@@ -81,18 +81,18 @@
|
|
|
81
81
|
"eslint": "=7.32.0",
|
|
82
82
|
"eslint-config-airbnb-base": "=14.2.1",
|
|
83
83
|
"eslint-config-prettier": "=8.3.0",
|
|
84
|
-
"eslint-plugin-import": "=2.
|
|
84
|
+
"eslint-plugin-import": "=2.25.2",
|
|
85
85
|
"eslint-plugin-prettier": "=4.0.0",
|
|
86
|
-
"expect": "=27.
|
|
86
|
+
"expect": "=27.2.5",
|
|
87
87
|
"fetch-mock": "=9.11.0",
|
|
88
|
-
"glob": "=7.
|
|
88
|
+
"glob": "=7.2.0",
|
|
89
89
|
"husky": "^7.0.1",
|
|
90
90
|
"inspectpack": "=4.7.1",
|
|
91
91
|
"install": "=0.13.0",
|
|
92
92
|
"jest": "^27.0.1",
|
|
93
93
|
"json-loader": "=0.5.7",
|
|
94
94
|
"license-checker": "=25.0.1",
|
|
95
|
-
"lint-staged": "=11.
|
|
95
|
+
"lint-staged": "=11.2.3",
|
|
96
96
|
"lodash-webpack-plugin": "=0.11.6",
|
|
97
97
|
"nock": "=13.1.3",
|
|
98
98
|
"node-fetch": "=2.6.1",
|
|
@@ -100,16 +100,15 @@
|
|
|
100
100
|
"prettier": "^2.3.0",
|
|
101
101
|
"rimraf": "=3.0.2",
|
|
102
102
|
"terser-webpack-plugin": "^5.0.3",
|
|
103
|
-
"webpack": "=5.
|
|
103
|
+
"webpack": "=5.58.2",
|
|
104
104
|
"webpack-bundle-size-analyzer": "=3.1.0",
|
|
105
|
-
"webpack-cli": "=4.
|
|
105
|
+
"webpack-cli": "=4.9.0",
|
|
106
106
|
"webpack-stats-plugin": "=1.0.3",
|
|
107
107
|
"xmock": "=0.3.0"
|
|
108
108
|
},
|
|
109
109
|
"dependencies": {
|
|
110
110
|
"@babel/runtime-corejs3": "^7.11.2",
|
|
111
111
|
"btoa": "^1.2.1",
|
|
112
|
-
"buffer": "^6.0.3",
|
|
113
112
|
"cookie": "~0.4.1",
|
|
114
113
|
"cross-fetch": "^3.1.4",
|
|
115
114
|
"deep-extend": "~0.6.0",
|
|
@@ -119,7 +118,6 @@
|
|
|
119
118
|
"js-yaml": "^4.1.0",
|
|
120
119
|
"lodash": "^4.17.21",
|
|
121
120
|
"qs": "^6.9.4",
|
|
122
|
-
"querystring-browser": "^1.0.4",
|
|
123
121
|
"traverse": "~0.6.6",
|
|
124
122
|
"url": "~0.11.0"
|
|
125
123
|
}
|