@kollors/react-codegen 2.0.0-alpha.4 → 2.0.0-alpha.5
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 +6 -3
- package/README.ru.md +6 -3
- package/dist/openapi/generate.js +4 -1
- package/dist/openapi/generate.js.map +1 -1
- package/dist/openapi/operations.d.ts +0 -1
- package/dist/openapi/operations.js +35 -45
- package/dist/openapi/operations.js.map +1 -1
- package/dist/openapi/schema.d.ts +4 -0
- package/dist/openapi/schema.js +67 -62
- package/dist/openapi/schema.js.map +1 -1
- package/dist/openapi/type-expression.d.ts +38 -0
- package/dist/openapi/type-expression.js +166 -0
- package/dist/openapi/type-expression.js.map +1 -0
- package/dist/openapi-runtime.d.ts +4 -0
- package/dist/openapi-runtime.js +37 -24
- package/dist/openapi-runtime.js.map +1 -1
- package/dist/openapi-runtime.source +43 -21
- package/package.json +2 -1
package/dist/openapi-runtime.js
CHANGED
|
@@ -55,23 +55,25 @@ export class OpenapiHttpError extends Error {
|
|
|
55
55
|
this.name = 'OpenapiHttpError';
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
function parameterScalar(value) {
|
|
58
|
+
function parameterScalar(value, location = 'parameter') {
|
|
59
59
|
if (value === null)
|
|
60
60
|
return '';
|
|
61
61
|
if (typeof value === 'object' || value === undefined)
|
|
62
|
-
throw new TypeError(
|
|
62
|
+
throw new TypeError(`OpenAPI ${location} must contain scalar values; received ${value === undefined ? 'undefined' : Array.isArray(value) ? 'an array' : 'an object'}.`);
|
|
63
63
|
return String(value);
|
|
64
64
|
}
|
|
65
|
-
function parameterParts(value, explode, encode) {
|
|
65
|
+
function parameterParts(value, explode, encode, location) {
|
|
66
66
|
if (Array.isArray(value))
|
|
67
|
-
return value.map((item) => encode(parameterScalar(item)));
|
|
67
|
+
return value.map((item, index) => encode(parameterScalar(item, `${location}[${index}]`)));
|
|
68
68
|
if (value !== null && typeof value === 'object') {
|
|
69
69
|
return Object.entries(value).flatMap(([key, item]) => {
|
|
70
|
-
|
|
70
|
+
if (item === undefined)
|
|
71
|
+
return [];
|
|
72
|
+
const pair = [encode(key), encode(parameterScalar(item, `${location}.${key}`))];
|
|
71
73
|
return explode ? [pair.join('=')] : pair;
|
|
72
74
|
});
|
|
73
75
|
}
|
|
74
|
-
return [encode(parameterScalar(value))];
|
|
76
|
+
return [encode(parameterScalar(value, location))];
|
|
75
77
|
}
|
|
76
78
|
function serializeQueryParams(queryParams, parameters = []) {
|
|
77
79
|
const result = [];
|
|
@@ -94,26 +96,33 @@ function serializeQueryParams(queryParams, parameters = []) {
|
|
|
94
96
|
if (style === 'deepObject') {
|
|
95
97
|
if (value === null || typeof value !== 'object' || Array.isArray(value))
|
|
96
98
|
throw new TypeError(`deepObject requires an object: ${key}`);
|
|
97
|
-
for (const [name, item] of Object.entries(value))
|
|
98
|
-
|
|
99
|
+
for (const [name, item] of Object.entries(value)) {
|
|
100
|
+
if (item !== undefined)
|
|
101
|
+
append(`${key}[${name}]`, encodeURIComponent(parameterScalar(item, `query parameter "${key}.${name}"`)));
|
|
102
|
+
}
|
|
99
103
|
}
|
|
100
104
|
else if (style === 'form' && explode && value !== null && typeof value === 'object' && !Array.isArray(value)) {
|
|
101
|
-
for (const [name, item] of Object.entries(value))
|
|
102
|
-
|
|
105
|
+
for (const [name, item] of Object.entries(value)) {
|
|
106
|
+
if (item !== undefined)
|
|
107
|
+
append(name, encodeURIComponent(parameterScalar(item, `query parameter "${key}.${name}"`)));
|
|
108
|
+
}
|
|
103
109
|
}
|
|
104
110
|
else if (explode && Array.isArray(value)) {
|
|
105
|
-
for (const item of value)
|
|
106
|
-
append(key, encodeURIComponent(parameterScalar(item)));
|
|
111
|
+
for (const [index, item] of value.entries())
|
|
112
|
+
append(key, encodeURIComponent(parameterScalar(item, `query parameter "${key}[${index}]"`)));
|
|
107
113
|
}
|
|
108
114
|
else {
|
|
109
115
|
const separator = style === 'spaceDelimited' ? '%20' : style === 'pipeDelimited' ? '|' : ',';
|
|
110
|
-
append(key, parameterParts(value, false, encodeURIComponent).join(separator));
|
|
116
|
+
append(key, parameterParts(value, false, encodeURIComponent, `query parameter "${key}"`).join(separator));
|
|
111
117
|
}
|
|
112
118
|
}
|
|
113
119
|
return result.join('&');
|
|
114
120
|
}
|
|
115
|
-
function
|
|
116
|
-
|
|
121
|
+
export function normalizeContentType(contentType) {
|
|
122
|
+
return contentType.split(';')[0]?.trim().toLowerCase() ?? '';
|
|
123
|
+
}
|
|
124
|
+
export function isJsonContentType(contentType) {
|
|
125
|
+
const mime = normalizeContentType(contentType);
|
|
117
126
|
return mime === 'application/json' || /^application\/[^/;\s]+\+json$/.test(mime);
|
|
118
127
|
}
|
|
119
128
|
function requestBody(body, contentType) {
|
|
@@ -123,7 +132,8 @@ function requestBody(body, contentType) {
|
|
|
123
132
|
return body;
|
|
124
133
|
if (isJsonContentType(contentType))
|
|
125
134
|
return JSON.stringify(body);
|
|
126
|
-
|
|
135
|
+
const mime = normalizeContentType(contentType);
|
|
136
|
+
if (mime === 'multipart/form-data' || mime === 'application/x-www-form-urlencoded') {
|
|
127
137
|
if (body === null || typeof body !== 'object' || Array.isArray(body))
|
|
128
138
|
throw new TypeError(`${contentType} requires an object body.`);
|
|
129
139
|
const form = new FormData();
|
|
@@ -135,13 +145,13 @@ function requestBody(body, contentType) {
|
|
|
135
145
|
form.append(key, item);
|
|
136
146
|
else if (item !== null && typeof item === 'object') {
|
|
137
147
|
const json = JSON.stringify(item);
|
|
138
|
-
form.append(key,
|
|
148
|
+
form.append(key, mime === 'multipart/form-data' ? new Blob([json], { type: 'application/json' }) : json);
|
|
139
149
|
}
|
|
140
150
|
else
|
|
141
|
-
form.append(key, parameterScalar(item));
|
|
151
|
+
form.append(key, parameterScalar(item, `form field "${key}"`));
|
|
142
152
|
}
|
|
143
153
|
}
|
|
144
|
-
if (
|
|
154
|
+
if (mime === 'multipart/form-data')
|
|
145
155
|
return form;
|
|
146
156
|
const params = new URLSearchParams();
|
|
147
157
|
form.forEach((value, key) => {
|
|
@@ -164,7 +174,7 @@ function requestHeaders(value, parameters) {
|
|
|
164
174
|
if (item === undefined)
|
|
165
175
|
continue;
|
|
166
176
|
const parameter = parameters.find((entry) => entry.in === 'header' && entry.name.toLowerCase() === key.toLowerCase());
|
|
167
|
-
headers.set(key, parameterParts(item, parameter?.explode ?? false, (part) => part).join(','));
|
|
177
|
+
headers.set(key, parameterParts(item, parameter?.explode ?? false, (part) => part, `header parameter "${key}"`).join(','));
|
|
168
178
|
}
|
|
169
179
|
}
|
|
170
180
|
return headers;
|
|
@@ -183,7 +193,7 @@ async function readResponse(response, responseType) {
|
|
|
183
193
|
return undefined;
|
|
184
194
|
if (responseType === 'blob')
|
|
185
195
|
return await response.blob();
|
|
186
|
-
const contentType = response.headers.get('content-type')
|
|
196
|
+
const contentType = normalizeContentType(response.headers.get('content-type') ?? '');
|
|
187
197
|
const json = isJsonContentType(contentType);
|
|
188
198
|
if (contentType.startsWith('text/') || (!json && contentType.includes('xml')))
|
|
189
199
|
return await response.text();
|
|
@@ -200,7 +210,7 @@ export function createOpenapiFetcher(configuration = {}) {
|
|
|
200
210
|
const headers = new Headers();
|
|
201
211
|
const contentType = options.contentType ?? 'application/json';
|
|
202
212
|
if (options.body !== undefined) {
|
|
203
|
-
if (contentType === '*/*') {
|
|
213
|
+
if (normalizeContentType(contentType) === '*/*') {
|
|
204
214
|
if (!(options.body instanceof Blob))
|
|
205
215
|
throw new TypeError('Wildcard request content requires a Blob body.');
|
|
206
216
|
headers.set('content-type', options.body.type || 'application/octet-stream');
|
|
@@ -235,7 +245,7 @@ export function createOpenapiFetcher(configuration = {}) {
|
|
|
235
245
|
if (value === undefined || value === null)
|
|
236
246
|
throw new Error(`Missing required OpenAPI path parameter "${key}" for ${options.url}.`);
|
|
237
247
|
const parameter = parameters.find((item) => item.in === 'path' && item.name === key);
|
|
238
|
-
return parameterParts(value, parameter?.explode ?? false, encodeURIComponent).join(',');
|
|
248
|
+
return parameterParts(value, parameter?.explode ?? false, encodeURIComponent, `path parameter "${key}"`).join(',');
|
|
239
249
|
});
|
|
240
250
|
const pathSegments = path.split(/[?#]/, 1)[0]?.split('/') ?? [];
|
|
241
251
|
if (pathSegments.some((segment) => /^(?:\.|%2e){1,2}$/i.test(segment))) {
|
|
@@ -266,7 +276,7 @@ export function createOpenapiFetcher(configuration = {}) {
|
|
|
266
276
|
const declaredContent = options.responseTypes?.[response.status] ??
|
|
267
277
|
options.responseTypes?.[`${Math.floor(response.status / 100)}XX`] ??
|
|
268
278
|
options.responseTypes?.default;
|
|
269
|
-
const mime = response.headers.get('content-type')
|
|
279
|
+
const mime = normalizeContentType(response.headers.get('content-type') ?? '');
|
|
270
280
|
const declaredType = declaredContent?.[mime] ?? declaredContent?.[`${mime.split('/')[0]}/*`] ?? declaredContent?.['*/*'];
|
|
271
281
|
const responseType = options.responseTypes
|
|
272
282
|
? declaredType === 'blob'
|
|
@@ -292,6 +302,9 @@ export function createOpenapiFetcher(configuration = {}) {
|
|
|
292
302
|
if (!response.ok) {
|
|
293
303
|
throw new OpenapiHttpError(response.status, response.statusText, requestUrl, result);
|
|
294
304
|
}
|
|
305
|
+
if (result === undefined && options.requireResponseBody) {
|
|
306
|
+
throw new Error(`OpenAPI response contract violation: HTTP ${response.status} returned no body for ${options.method.toUpperCase()} ${requestUrl}; the operation expects a response body.`);
|
|
307
|
+
}
|
|
295
308
|
return result;
|
|
296
309
|
}
|
|
297
310
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-runtime.js","sourceRoot":"","sources":["../src/openapi-runtime.ts"],"names":[],"mappings":"AA0CA,SAAS,mBAAmB,CAAC,IAAgB;IAC3C,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;QAAE,OAAO,EAAE,CAAC;IACvC,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM;aAC3B,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAC5E,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,aAA0C;IACpE,IAAI,aAAa,CAAC,QAAQ;QAAE,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IAClE,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IAChC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;AACnG,CAAC;AAED,SAAS,WAAW,CAAC,OAA2B,EAAE,GAAW;IAC3D,IAAI,CAAC,OAAO,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAChE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;AACrE,CAAC;AAED,MAAM,OAAO,gBAAmC,SAAQ,KAAK;IAEhD;IACA;IACA;IACA;IAJX,YACW,MAAc,EACd,UAAkB,EAClB,GAAW,EACX,IAAY;QAErB,KAAK,CAAC,QAAQ,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC;QALhE,WAAM,GAAN,MAAM,CAAQ;QACd,eAAU,GAAV,UAAU,CAAQ;QAClB,QAAG,GAAH,GAAG,CAAQ;QACX,SAAI,GAAJ,IAAI,CAAQ;QAGrB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAC5H,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,OAAgB,EAAE,MAAiC;IACzF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpF,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;YACnD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1D,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAoB,EAAE,aAAiC,EAAE;IACrF,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,YAAoB,EAAQ,EAAE;QACzD,MAAM,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC;IACF,IAAI,WAAW,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,WAAW,YAAY,eAAe;QAAE,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC1E,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QACtF,MAAM,KAAK,GAAG,SAAS,EAAE,KAAK,IAAI,MAAM,CAAC;QACzC,MAAM,OAAO,GAAG,SAAS,EAAE,OAAO,IAAI,IAAI,CAAC;QAC3C,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;YAC3B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;YACtI,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzH,CAAC;aAAM,IAAI,KAAK,KAAK,MAAM,IAAI,OAAO,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/G,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5G,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,KAAK,MAAM,IAAI,IAAI,KAAK;gBAAE,MAAM,CAAC,GAAG,EAAE,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,KAAK,KAAK,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC7F,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAmB;IAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IACnE,OAAO,IAAI,KAAK,kBAAkB,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,WAAW,CAAC,IAAa,EAAE,WAAmB;IACrD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,IAAI,YAAY,QAAQ,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,eAAe;QAAE,OAAO,IAAI,CAAC;IACrG,IAAI,iBAAiB,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,WAAW,KAAK,qBAAqB,IAAI,WAAW,KAAK,mCAAmC,EAAE,CAAC;QACjG,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,GAAG,WAAW,2BAA2B,CAAC,CAAC;QACrI,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,KAAK,SAAS;gBAAE,SAAS;YAClC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1D,IAAI,IAAI,YAAY,IAAI;oBAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;qBAC5C,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBAClC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,KAAK,qBAAqB,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClH,CAAC;;oBAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,IAAI,WAAW,KAAK,qBAAqB;YAAE,OAAO,IAAI,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;YACtG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,IAAI,SAAS,CAAC,6CAA6C,WAAW,GAAG,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,UAA8B;IACpE,IAAI,KAAK,YAAY,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAS;YACjC,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;YACtH,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,GAAW,EAAE,UAAkB;IACtD,IAAI,CAAC,UAAU;QAAE,OAAO,GAAG,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACnG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAkB,EAAE,YAAqB;IACnE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC;IACzE,IAAI,YAAY,KAAK,MAAM;QAAE,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IACpG,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC5G,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC;IAC/F,IAAI,IAAI;QAAE,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvC,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,gBAA6C,EAAE;IAClF,OAAO,KAAK,UAAU,cAAc,CAOlC,OAA0E;QAC1E,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,kBAAkB,CAAC;YAC9D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/B,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,YAAY,IAAI,CAAC;wBAAE,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;oBAC3G,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,0BAA0B,CAAC,CAAC;gBAC/E,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;YACD,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;YAChD,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YAC/C,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACjE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,WAAW,CAAC,CAAC;YACnF,IAAI,IAAI,YAAY,QAAQ;gBAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAE7D,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,EAAE,KAAK,MAAM;oBAAE,SAAS;gBAC7D,MAAM,KAAK,GACT,SAAS,CAAC,EAAE,KAAK,QAAQ;oBACvB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC7B,CAAC,CAAE,OAAO,CAAC,WAAmD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACrF,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;oBACtE,MAAM,IAAI,KAAK,CAAC,4BAA4B,SAAS,CAAC,EAAE,eAAe,SAAS,CAAC,IAAI,SAAS,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;YAClH,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAiD,CAAC;YAC7E,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,GAAW,EAAE,EAAE;gBACtE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;oBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,SAAS,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;gBACnI,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;gBACrF,OAAO,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,IAAI,KAAK,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChE,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CAAC,mEAAmE,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;YACrG,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YAC1E,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACrD,IAAI,QAAkB,CAAC;YACvB,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE;oBACjC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;oBACvC,OAAO;oBACP,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;oBACpC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrD,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5F,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;oBAAE,MAAM,KAAK,CAAC;gBACvE,MAAM,IAAI,KAAK,CAAC,oCAAoC,UAAU,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;oBAC3H,KAAK,EAAE,KAAK;iBACb,CAAC,CAAC;YACL,CAAC;YAED,IAAI,MAAe,CAAC;YACpB,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjE,MAAM,eAAe,GACnB,OAAO,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACxC,OAAO,CAAC,aAAa,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;gBACjE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;YACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YAC7F,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC;YACzH,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa;gBACxC,CAAC,CAAC,YAAY,KAAK,MAAM;oBACvB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,SAAS;gBACb,CAAC,CAAC,QAAQ,CAAC,EAAE;oBACX,CAAC,CAAC,OAAO,CAAC,YAAY;oBACtB,CAAC,CAAC,SAAS,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC5G,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;oBAAE,MAAM,KAAK,CAAC;gBACvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACvF,MAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;gBACvF,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;oBACvH,KAAK,EAAE,KAAK;iBACb,CAAC,CAAC;YACL,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,gBAAgB,CAAS,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,MAAgB,CAAC,CAAC;YACzG,CAAC;YAED,OAAO,MAAe,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"openapi-runtime.js","sourceRoot":"","sources":["../src/openapi-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,8 @@ export interface OpenapiFetcherOptions<TBody, THeaders, TQueryParams, TPathParam
|
|
|
18
18
|
contentType?: string;
|
|
19
19
|
accept?: string;
|
|
20
20
|
responseType?: 'blob';
|
|
21
|
+
/** Reject empty successful responses when the operation declares a response body. */
|
|
22
|
+
requireResponseBody?: boolean;
|
|
21
23
|
/** Response status -> media type -> decoder. Exact statuses/media types take precedence over ranges and wildcards. */
|
|
22
24
|
responseTypes?: Record<string, Record<string, 'blob' | 'auto'>>;
|
|
23
25
|
parameters?: OpenapiParameter[];
|
|
@@ -88,21 +90,25 @@ export class OpenapiHttpError<TError = unknown> extends Error {
|
|
|
88
90
|
}
|
|
89
91
|
}
|
|
90
92
|
|
|
91
|
-
function parameterScalar(value: unknown): string {
|
|
93
|
+
function parameterScalar(value: unknown, location = 'parameter'): string {
|
|
92
94
|
if (value === null) return '';
|
|
93
|
-
if (typeof value === 'object' || value === undefined)
|
|
95
|
+
if (typeof value === 'object' || value === undefined)
|
|
96
|
+
throw new TypeError(
|
|
97
|
+
`OpenAPI ${location} must contain scalar values; received ${value === undefined ? 'undefined' : Array.isArray(value) ? 'an array' : 'an object'}.`,
|
|
98
|
+
);
|
|
94
99
|
return String(value);
|
|
95
100
|
}
|
|
96
101
|
|
|
97
|
-
function parameterParts(value: unknown, explode: boolean, encode: (value: string) => string): string[] {
|
|
98
|
-
if (Array.isArray(value)) return value.map((item) => encode(parameterScalar(item)));
|
|
102
|
+
function parameterParts(value: unknown, explode: boolean, encode: (value: string) => string, location: string): string[] {
|
|
103
|
+
if (Array.isArray(value)) return value.map((item, index) => encode(parameterScalar(item, `${location}[${index}]`)));
|
|
99
104
|
if (value !== null && typeof value === 'object') {
|
|
100
105
|
return Object.entries(value).flatMap(([key, item]) => {
|
|
101
|
-
|
|
106
|
+
if (item === undefined) return [];
|
|
107
|
+
const pair = [encode(key), encode(parameterScalar(item, `${location}.${key}`))];
|
|
102
108
|
return explode ? [pair.join('=')] : pair;
|
|
103
109
|
});
|
|
104
110
|
}
|
|
105
|
-
return [encode(parameterScalar(value))];
|
|
111
|
+
return [encode(parameterScalar(value, location))];
|
|
106
112
|
}
|
|
107
113
|
|
|
108
114
|
function serializeQueryParams(queryParams: unknown, parameters: OpenapiParameter[] = []): string {
|
|
@@ -123,21 +129,30 @@ function serializeQueryParams(queryParams: unknown, parameters: OpenapiParameter
|
|
|
123
129
|
const explode = parameter?.explode ?? true;
|
|
124
130
|
if (style === 'deepObject') {
|
|
125
131
|
if (value === null || typeof value !== 'object' || Array.isArray(value)) throw new TypeError(`deepObject requires an object: ${key}`);
|
|
126
|
-
for (const [name, item] of Object.entries(value))
|
|
132
|
+
for (const [name, item] of Object.entries(value)) {
|
|
133
|
+
if (item !== undefined) append(`${key}[${name}]`, encodeURIComponent(parameterScalar(item, `query parameter "${key}.${name}"`)));
|
|
134
|
+
}
|
|
127
135
|
} else if (style === 'form' && explode && value !== null && typeof value === 'object' && !Array.isArray(value)) {
|
|
128
|
-
for (const [name, item] of Object.entries(value))
|
|
136
|
+
for (const [name, item] of Object.entries(value)) {
|
|
137
|
+
if (item !== undefined) append(name, encodeURIComponent(parameterScalar(item, `query parameter "${key}.${name}"`)));
|
|
138
|
+
}
|
|
129
139
|
} else if (explode && Array.isArray(value)) {
|
|
130
|
-
for (const item of value
|
|
140
|
+
for (const [index, item] of value.entries())
|
|
141
|
+
append(key, encodeURIComponent(parameterScalar(item, `query parameter "${key}[${index}]"`)));
|
|
131
142
|
} else {
|
|
132
143
|
const separator = style === 'spaceDelimited' ? '%20' : style === 'pipeDelimited' ? '|' : ',';
|
|
133
|
-
append(key, parameterParts(value, false, encodeURIComponent).join(separator));
|
|
144
|
+
append(key, parameterParts(value, false, encodeURIComponent, `query parameter "${key}"`).join(separator));
|
|
134
145
|
}
|
|
135
146
|
}
|
|
136
147
|
return result.join('&');
|
|
137
148
|
}
|
|
138
149
|
|
|
139
|
-
function
|
|
140
|
-
|
|
150
|
+
export function normalizeContentType(contentType: string): string {
|
|
151
|
+
return contentType.split(';')[0]?.trim().toLowerCase() ?? '';
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export function isJsonContentType(contentType: string): boolean {
|
|
155
|
+
const mime = normalizeContentType(contentType);
|
|
141
156
|
return mime === 'application/json' || /^application\/[^/;\s]+\+json$/.test(mime);
|
|
142
157
|
}
|
|
143
158
|
|
|
@@ -145,7 +160,8 @@ function requestBody(body: unknown, contentType: string): BodyInit | undefined {
|
|
|
145
160
|
if (body === undefined) return undefined;
|
|
146
161
|
if (body instanceof FormData || body instanceof Blob || body instanceof URLSearchParams) return body;
|
|
147
162
|
if (isJsonContentType(contentType)) return JSON.stringify(body);
|
|
148
|
-
|
|
163
|
+
const mime = normalizeContentType(contentType);
|
|
164
|
+
if (mime === 'multipart/form-data' || mime === 'application/x-www-form-urlencoded') {
|
|
149
165
|
if (body === null || typeof body !== 'object' || Array.isArray(body)) throw new TypeError(`${contentType} requires an object body.`);
|
|
150
166
|
const form = new FormData();
|
|
151
167
|
for (const [key, value] of Object.entries(body)) {
|
|
@@ -154,11 +170,11 @@ function requestBody(body: unknown, contentType: string): BodyInit | undefined {
|
|
|
154
170
|
if (item instanceof Blob) form.append(key, item);
|
|
155
171
|
else if (item !== null && typeof item === 'object') {
|
|
156
172
|
const json = JSON.stringify(item);
|
|
157
|
-
form.append(key,
|
|
158
|
-
} else form.append(key, parameterScalar(item));
|
|
173
|
+
form.append(key, mime === 'multipart/form-data' ? new Blob([json], { type: 'application/json' }) : json);
|
|
174
|
+
} else form.append(key, parameterScalar(item, `form field "${key}"`));
|
|
159
175
|
}
|
|
160
176
|
}
|
|
161
|
-
if (
|
|
177
|
+
if (mime === 'multipart/form-data') return form;
|
|
162
178
|
const params = new URLSearchParams();
|
|
163
179
|
form.forEach((value, key) => {
|
|
164
180
|
if (typeof value !== 'string') throw new TypeError('URL-encoded bodies cannot contain binary files.');
|
|
@@ -177,7 +193,7 @@ function requestHeaders(value: unknown, parameters: OpenapiParameter[]): Headers
|
|
|
177
193
|
for (const [key, item] of Object.entries(value)) {
|
|
178
194
|
if (item === undefined) continue;
|
|
179
195
|
const parameter = parameters.find((entry) => entry.in === 'header' && entry.name.toLowerCase() === key.toLowerCase());
|
|
180
|
-
headers.set(key, parameterParts(item, parameter?.explode ?? false, (part) => part).join(','));
|
|
196
|
+
headers.set(key, parameterParts(item, parameter?.explode ?? false, (part) => part, `header parameter "${key}"`).join(','));
|
|
181
197
|
}
|
|
182
198
|
}
|
|
183
199
|
return headers;
|
|
@@ -195,7 +211,7 @@ function withQueryParams(url: string, serialized: string): string {
|
|
|
195
211
|
async function readResponse(response: Response, responseType?: 'blob'): Promise<unknown> {
|
|
196
212
|
if (response.status === 204 || response.status === 205) return undefined;
|
|
197
213
|
if (responseType === 'blob') return await response.blob();
|
|
198
|
-
const contentType = response.headers.get('content-type')
|
|
214
|
+
const contentType = normalizeContentType(response.headers.get('content-type') ?? '');
|
|
199
215
|
const json = isJsonContentType(contentType);
|
|
200
216
|
if (contentType.startsWith('text/') || (!json && contentType.includes('xml'))) return await response.text();
|
|
201
217
|
if (response.body === null || response.headers.get('content-length') === '0') return undefined;
|
|
@@ -217,7 +233,7 @@ export function createOpenapiFetcher(configuration: OpenapiFetcherConfiguration
|
|
|
217
233
|
const headers = new Headers();
|
|
218
234
|
const contentType = options.contentType ?? 'application/json';
|
|
219
235
|
if (options.body !== undefined) {
|
|
220
|
-
if (contentType === '*/*') {
|
|
236
|
+
if (normalizeContentType(contentType) === '*/*') {
|
|
221
237
|
if (!(options.body instanceof Blob)) throw new TypeError('Wildcard request content requires a Blob body.');
|
|
222
238
|
headers.set('content-type', options.body.type || 'application/octet-stream');
|
|
223
239
|
} else {
|
|
@@ -249,7 +265,7 @@ export function createOpenapiFetcher(configuration: OpenapiFetcherConfiguration
|
|
|
249
265
|
const value = pathParams?.[key];
|
|
250
266
|
if (value === undefined || value === null) throw new Error(`Missing required OpenAPI path parameter "${key}" for ${options.url}.`);
|
|
251
267
|
const parameter = parameters.find((item) => item.in === 'path' && item.name === key);
|
|
252
|
-
return parameterParts(value, parameter?.explode ?? false, encodeURIComponent).join(',');
|
|
268
|
+
return parameterParts(value, parameter?.explode ?? false, encodeURIComponent, `path parameter "${key}"`).join(',');
|
|
253
269
|
});
|
|
254
270
|
const pathSegments = path.split(/[?#]/, 1)[0]?.split('/') ?? [];
|
|
255
271
|
if (pathSegments.some((segment) => /^(?:\.|%2e){1,2}$/i.test(segment))) {
|
|
@@ -280,7 +296,7 @@ export function createOpenapiFetcher(configuration: OpenapiFetcherConfiguration
|
|
|
280
296
|
options.responseTypes?.[response.status] ??
|
|
281
297
|
options.responseTypes?.[`${Math.floor(response.status / 100)}XX`] ??
|
|
282
298
|
options.responseTypes?.default;
|
|
283
|
-
const mime = response.headers.get('content-type')
|
|
299
|
+
const mime = normalizeContentType(response.headers.get('content-type') ?? '');
|
|
284
300
|
const declaredType = declaredContent?.[mime] ?? declaredContent?.[`${mime.split('/')[0]}/*`] ?? declaredContent?.['*/*'];
|
|
285
301
|
const responseType = options.responseTypes
|
|
286
302
|
? declaredType === 'blob'
|
|
@@ -305,6 +321,12 @@ export function createOpenapiFetcher(configuration: OpenapiFetcherConfiguration
|
|
|
305
321
|
throw new OpenapiHttpError<TError>(response.status, response.statusText, requestUrl, result as TError);
|
|
306
322
|
}
|
|
307
323
|
|
|
324
|
+
if (result === undefined && options.requireResponseBody) {
|
|
325
|
+
throw new Error(
|
|
326
|
+
`OpenAPI response contract violation: HTTP ${response.status} returned no body for ${options.method.toUpperCase()} ${requestUrl}; the operation expects a response body.`,
|
|
327
|
+
);
|
|
328
|
+
}
|
|
329
|
+
|
|
308
330
|
return result as TData;
|
|
309
331
|
} catch (error) {
|
|
310
332
|
throw error instanceof Error ? error : new Error(String(error));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kollors/react-codegen",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.5",
|
|
4
4
|
"description": "Generate TanStack Query clients from OpenAPI and GraphQL schemas",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
"@graphql-codegen/typescript": "^6.1.0",
|
|
47
47
|
"@graphql-codegen/typescript-operations": "^6.1.7",
|
|
48
48
|
"@graphql-codegen/typescript-react-query": "^7.0.5",
|
|
49
|
+
"prettier": "3.9.9",
|
|
49
50
|
"yaml": "^2.9.1"
|
|
50
51
|
},
|
|
51
52
|
"peerDependencies": {
|