swagger-client 3.33.1 → 3.33.2
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/dist/swagger-client.browser.js +1567 -371
- package/dist/swagger-client.browser.min.js +1 -1
- package/dist/swagger-client.browser.min.js.map +1 -1
- package/es/execute/index.js +16 -9
- package/es/execute/oas3/parameter-builders.js +25 -6
- package/es/helpers/cookie-value-encoder.js +5 -0
- package/lib/execute/index.js +15 -8
- package/lib/execute/oas3/parameter-builders.js +25 -6
- package/lib/helpers/cookie-value-encoder.js +9 -0
- package/package.json +2 -2
package/es/execute/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import cookie from 'cookie';
|
|
2
1
|
import { identity } from 'ramda';
|
|
3
|
-
import { isPlainObject } from 'ramda-adjunct';
|
|
2
|
+
import { isPlainObject, isNonEmptyString } from 'ramda-adjunct';
|
|
4
3
|
import { test as testServerURLTemplate, substitute as substituteServerURLTemplate } from 'openapi-server-url-templating';
|
|
4
|
+
import { serializeCookie, cookieValueLenientEncoder, cookieNameLenientValidator, cookieValueLenientValidator } from '@swaggerexpert/cookie';
|
|
5
5
|
import { ApiDOMStructuredError } from '@swagger-api/apidom-error';
|
|
6
6
|
import { url } from '@swagger-api/apidom-reference/configuration/empty';
|
|
7
7
|
import { DEFAULT_BASE_URL, DEFAULT_OPENAPI_3_SERVER } from '../constants.js';
|
|
@@ -261,13 +261,20 @@ export function buildRequest(options) {
|
|
|
261
261
|
// If the cookie convenience object exists in our request,
|
|
262
262
|
// serialize its content and then delete the cookie object.
|
|
263
263
|
if (req.cookies && Object.keys(req.cookies).length) {
|
|
264
|
-
const cookieString =
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
264
|
+
const cookieString = serializeCookie(req.cookies, {
|
|
265
|
+
encoders: {
|
|
266
|
+
value: cookieValueLenientEncoder
|
|
267
|
+
},
|
|
268
|
+
validators: {
|
|
269
|
+
name: cookieNameLenientValidator,
|
|
270
|
+
value: cookieValueLenientValidator
|
|
271
|
+
}
|
|
272
|
+
});
|
|
273
|
+
if (isNonEmptyString(req.headers.Cookie)) {
|
|
274
|
+
req.headers.Cookie += `; ${cookieString}`;
|
|
275
|
+
} else {
|
|
276
|
+
req.headers.Cookie = cookieString;
|
|
277
|
+
}
|
|
271
278
|
}
|
|
272
279
|
if (req.cookies) {
|
|
273
280
|
// even if no cookies were defined, we need to remove
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { resolve as resolvePathTemplate } from 'openapi-path-templating';
|
|
2
|
+
import { serializeCookie } from '@swaggerexpert/cookie';
|
|
2
3
|
import stylize, { encodeCharacters } from './style-serializer.js';
|
|
3
4
|
import serialize from './content-serializer.js';
|
|
5
|
+
import cookieValueEncoder from '../../helpers/cookie-value-encoder.js';
|
|
4
6
|
export function path({
|
|
5
7
|
req,
|
|
6
8
|
value,
|
|
@@ -31,7 +33,7 @@ export function path({
|
|
|
31
33
|
key: parameter.name,
|
|
32
34
|
value: val,
|
|
33
35
|
style: style || 'simple',
|
|
34
|
-
explode: explode
|
|
36
|
+
explode: explode !== null && explode !== void 0 ? explode : false,
|
|
35
37
|
escape: 'reserved'
|
|
36
38
|
})
|
|
37
39
|
});
|
|
@@ -112,21 +114,38 @@ export function cookie({
|
|
|
112
114
|
parameter,
|
|
113
115
|
value
|
|
114
116
|
}) {
|
|
117
|
+
const {
|
|
118
|
+
name: cookieName
|
|
119
|
+
} = parameter;
|
|
115
120
|
req.headers = req.headers || {};
|
|
116
|
-
const type = typeof value;
|
|
117
121
|
if (value !== undefined && parameter.content) {
|
|
118
122
|
const effectiveMediaType = Object.keys(parameter.content)[0];
|
|
119
|
-
|
|
123
|
+
const cookieValue = serialize(value, effectiveMediaType);
|
|
124
|
+
req.headers.Cookie = serializeCookie({
|
|
125
|
+
[cookieName]: cookieValue
|
|
126
|
+
}, {
|
|
127
|
+
encoders: {
|
|
128
|
+
value: cookieValueEncoder
|
|
129
|
+
}
|
|
130
|
+
});
|
|
120
131
|
return;
|
|
121
132
|
}
|
|
122
133
|
if (value !== undefined && !(Array.isArray(value) && value.length === 0)) {
|
|
123
|
-
|
|
124
|
-
|
|
134
|
+
var _parameter$explode;
|
|
135
|
+
const serializedValue = stylize({
|
|
125
136
|
key: parameter.name,
|
|
126
137
|
value,
|
|
127
138
|
escape: false,
|
|
128
139
|
style: parameter.style || 'form',
|
|
129
|
-
explode:
|
|
140
|
+
explode: (_parameter$explode = parameter.explode) !== null && _parameter$explode !== void 0 ? _parameter$explode : false
|
|
141
|
+
});
|
|
142
|
+
const cookieValue = Array.isArray(value) && parameter.explode ? `${cookieName}=${serializedValue}` : serializedValue;
|
|
143
|
+
req.headers.Cookie = serializeCookie({
|
|
144
|
+
[cookieName]: cookieValue
|
|
145
|
+
}, {
|
|
146
|
+
encoders: {
|
|
147
|
+
value: cookieValueEncoder
|
|
148
|
+
}
|
|
130
149
|
});
|
|
131
150
|
}
|
|
132
151
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { cookieValueStrictEncoder } from '@swaggerexpert/cookie';
|
|
2
|
+
const eqSignPE = '%3D';
|
|
3
|
+
const ampersandPE = '%26';
|
|
4
|
+
const cookieValueEncoder = cookieValue => cookieValueStrictEncoder(cookieValue).replace(/[=&]/gu, match => match === '=' ? eqSignPE : ampersandPE);
|
|
5
|
+
export default cookieValueEncoder;
|
package/lib/execute/index.js
CHANGED
|
@@ -7,10 +7,10 @@ exports.baseUrl = baseUrl;
|
|
|
7
7
|
exports.buildRequest = buildRequest;
|
|
8
8
|
exports.execute = execute;
|
|
9
9
|
exports.self = void 0;
|
|
10
|
-
var _cookie = _interopRequireDefault(require("cookie"));
|
|
11
10
|
var _ramda = require("ramda");
|
|
12
11
|
var _ramdaAdjunct = require("ramda-adjunct");
|
|
13
12
|
var _openapiServerUrlTemplating = require("openapi-server-url-templating");
|
|
13
|
+
var _cookie = require("@swaggerexpert/cookie");
|
|
14
14
|
var _apidomError = require("@swagger-api/apidom-error");
|
|
15
15
|
var _empty = require("@swagger-api/apidom-reference/configuration/empty");
|
|
16
16
|
var _constants = require("../constants.js");
|
|
@@ -270,13 +270,20 @@ function buildRequest(options) {
|
|
|
270
270
|
// If the cookie convenience object exists in our request,
|
|
271
271
|
// serialize its content and then delete the cookie object.
|
|
272
272
|
if (req.cookies && Object.keys(req.cookies).length) {
|
|
273
|
-
const cookieString =
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
273
|
+
const cookieString = (0, _cookie.serializeCookie)(req.cookies, {
|
|
274
|
+
encoders: {
|
|
275
|
+
value: _cookie.cookieValueLenientEncoder
|
|
276
|
+
},
|
|
277
|
+
validators: {
|
|
278
|
+
name: _cookie.cookieNameLenientValidator,
|
|
279
|
+
value: _cookie.cookieValueLenientValidator
|
|
280
|
+
}
|
|
281
|
+
});
|
|
282
|
+
if ((0, _ramdaAdjunct.isNonEmptyString)(req.headers.Cookie)) {
|
|
283
|
+
req.headers.Cookie += `; ${cookieString}`;
|
|
284
|
+
} else {
|
|
285
|
+
req.headers.Cookie = cookieString;
|
|
286
|
+
}
|
|
280
287
|
}
|
|
281
288
|
if (req.cookies) {
|
|
282
289
|
// even if no cookies were defined, we need to remove
|
|
@@ -8,8 +8,10 @@ exports.header = header;
|
|
|
8
8
|
exports.path = path;
|
|
9
9
|
exports.query = query;
|
|
10
10
|
var _openapiPathTemplating = require("openapi-path-templating");
|
|
11
|
+
var _cookie = require("@swaggerexpert/cookie");
|
|
11
12
|
var _styleSerializer = _interopRequireWildcard(require("./style-serializer.js"));
|
|
12
13
|
var _contentSerializer = _interopRequireDefault(require("./content-serializer.js"));
|
|
14
|
+
var _cookieValueEncoder = _interopRequireDefault(require("../../helpers/cookie-value-encoder.js"));
|
|
13
15
|
function path({
|
|
14
16
|
req,
|
|
15
17
|
value,
|
|
@@ -40,7 +42,7 @@ function path({
|
|
|
40
42
|
key: parameter.name,
|
|
41
43
|
value: val,
|
|
42
44
|
style: style || 'simple',
|
|
43
|
-
explode: explode
|
|
45
|
+
explode: explode != null ? explode : false,
|
|
44
46
|
escape: 'reserved'
|
|
45
47
|
})
|
|
46
48
|
});
|
|
@@ -121,21 +123,38 @@ function cookie({
|
|
|
121
123
|
parameter,
|
|
122
124
|
value
|
|
123
125
|
}) {
|
|
126
|
+
const {
|
|
127
|
+
name: cookieName
|
|
128
|
+
} = parameter;
|
|
124
129
|
req.headers = req.headers || {};
|
|
125
|
-
const type = typeof value;
|
|
126
130
|
if (value !== undefined && parameter.content) {
|
|
127
131
|
const effectiveMediaType = Object.keys(parameter.content)[0];
|
|
128
|
-
|
|
132
|
+
const cookieValue = (0, _contentSerializer.default)(value, effectiveMediaType);
|
|
133
|
+
req.headers.Cookie = (0, _cookie.serializeCookie)({
|
|
134
|
+
[cookieName]: cookieValue
|
|
135
|
+
}, {
|
|
136
|
+
encoders: {
|
|
137
|
+
value: _cookieValueEncoder.default
|
|
138
|
+
}
|
|
139
|
+
});
|
|
129
140
|
return;
|
|
130
141
|
}
|
|
131
142
|
if (value !== undefined && !(Array.isArray(value) && value.length === 0)) {
|
|
132
|
-
|
|
133
|
-
|
|
143
|
+
var _parameter$explode;
|
|
144
|
+
const serializedValue = (0, _styleSerializer.default)({
|
|
134
145
|
key: parameter.name,
|
|
135
146
|
value,
|
|
136
147
|
escape: false,
|
|
137
148
|
style: parameter.style || 'form',
|
|
138
|
-
explode:
|
|
149
|
+
explode: (_parameter$explode = parameter.explode) != null ? _parameter$explode : false
|
|
150
|
+
});
|
|
151
|
+
const cookieValue = Array.isArray(value) && parameter.explode ? `${cookieName}=${serializedValue}` : serializedValue;
|
|
152
|
+
req.headers.Cookie = (0, _cookie.serializeCookie)({
|
|
153
|
+
[cookieName]: cookieValue
|
|
154
|
+
}, {
|
|
155
|
+
encoders: {
|
|
156
|
+
value: _cookieValueEncoder.default
|
|
157
|
+
}
|
|
139
158
|
});
|
|
140
159
|
}
|
|
141
160
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _cookie = require("@swaggerexpert/cookie");
|
|
6
|
+
const eqSignPE = '%3D';
|
|
7
|
+
const ampersandPE = '%26';
|
|
8
|
+
const cookieValueEncoder = cookieValue => (0, _cookie.cookieValueStrictEncoder)(cookieValue).replace(/[=&]/gu, match => match === '=' ? eqSignPE : ampersandPE);
|
|
9
|
+
var _default = exports.default = cookieValueEncoder;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swagger-client",
|
|
3
|
-
"version": "3.33.
|
|
3
|
+
"version": "3.33.2",
|
|
4
4
|
"description": "SwaggerJS - a collection of interfaces for OAI specs",
|
|
5
5
|
"browser": {
|
|
6
6
|
"./src/helpers/btoa.node.js": "./src/helpers/btoa.browser.js",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"@swagger-api/apidom-json-pointer": ">=1.0.0-beta.6 <1.0.0-rc.0",
|
|
80
80
|
"@swagger-api/apidom-ns-openapi-3-1": ">=1.0.0-beta.6 <1.0.0-rc.0",
|
|
81
81
|
"@swagger-api/apidom-reference": ">=1.0.0-beta.6 <1.0.0-rc.0",
|
|
82
|
-
"cookie": "
|
|
82
|
+
"@swaggerexpert/cookie": "^1.4.1",
|
|
83
83
|
"deepmerge": "~4.3.0",
|
|
84
84
|
"fast-json-patch": "^3.0.0-1",
|
|
85
85
|
"js-yaml": "^4.1.0",
|