docusaurus-plugin-openapi-docs 0.0.0-542 → 0.0.0-546
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/lib/markdown/createArrayBracket.d.ts +2 -0
- package/lib/markdown/createArrayBracket.js +37 -0
- package/lib/markdown/createRequestSchema.js +108 -73
- package/lib/markdown/createResponseSchema.js +112 -76
- package/lib/markdown/createStatusCodes.js +4 -6
- package/lib/openapi/createRequestExample.js +26 -7
- package/lib/openapi/createResponseExample.js +26 -7
- package/package.json +2 -2
- package/src/markdown/createArrayBracket.ts +35 -0
- package/src/markdown/createRequestSchema.ts +125 -89
- package/src/markdown/createResponseSchema.ts +132 -92
- package/src/markdown/createStatusCodes.ts +4 -8
- package/src/openapi/createRequestExample.ts +35 -12
- package/src/openapi/createResponseExample.ts +35 -12
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* ============================================================================
|
|
3
|
+
* Copyright (c) Palo Alto Networks
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the MIT license found in the
|
|
6
|
+
* LICENSE file in the root directory of this source tree.
|
|
7
|
+
* ========================================================================== */
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.createClosingArrayBracket = exports.createOpeningArrayBracket = void 0;
|
|
10
|
+
const utils_1 = require("./utils");
|
|
11
|
+
function createOpeningArrayBracket() {
|
|
12
|
+
return (0, utils_1.create)("li", {
|
|
13
|
+
children: (0, utils_1.create)("div", {
|
|
14
|
+
style: {
|
|
15
|
+
fontSize: "var(--ifm-code-font-size)",
|
|
16
|
+
opacity: "0.6",
|
|
17
|
+
marginLeft: "-.5rem",
|
|
18
|
+
paddingBottom: ".5rem",
|
|
19
|
+
},
|
|
20
|
+
children: ["Array ["],
|
|
21
|
+
}),
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
exports.createOpeningArrayBracket = createOpeningArrayBracket;
|
|
25
|
+
function createClosingArrayBracket() {
|
|
26
|
+
return (0, utils_1.create)("li", {
|
|
27
|
+
children: (0, utils_1.create)("div", {
|
|
28
|
+
style: {
|
|
29
|
+
fontSize: "var(--ifm-code-font-size)",
|
|
30
|
+
opacity: "0.6",
|
|
31
|
+
marginLeft: "-.5rem",
|
|
32
|
+
},
|
|
33
|
+
children: ["]"],
|
|
34
|
+
}),
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports.createClosingArrayBracket = createClosingArrayBracket;
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* ========================================================================== */
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.createRequestSchema = exports.mergeAllOf = void 0;
|
|
10
|
+
const createArrayBracket_1 = require("./createArrayBracket");
|
|
10
11
|
const createDescription_1 = require("./createDescription");
|
|
11
12
|
const createDetails_1 = require("./createDetails");
|
|
12
13
|
const createDetailsSummary_1 = require("./createDetailsSummary");
|
|
@@ -46,46 +47,55 @@ exports.mergeAllOf = mergeAllOf;
|
|
|
46
47
|
*/
|
|
47
48
|
function createAnyOneOf(schema) {
|
|
48
49
|
const type = schema.oneOf ? "oneOf" : "anyOf";
|
|
49
|
-
return (0, utils_1.create)("
|
|
50
|
+
return (0, utils_1.create)("li", {
|
|
50
51
|
children: [
|
|
51
|
-
(0, utils_1.create)("
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
52
|
+
(0, utils_1.create)("span", {
|
|
53
|
+
className: "badge badge--info",
|
|
54
|
+
children: type,
|
|
55
|
+
}),
|
|
56
|
+
(0, utils_1.create)("SchemaTabs", {
|
|
57
|
+
children: schema[type].map((anyOneSchema, index) => {
|
|
58
|
+
const label = anyOneSchema.title
|
|
59
|
+
? anyOneSchema.title
|
|
60
|
+
: `MOD${index + 1}`;
|
|
61
|
+
const anyOneChildren = [];
|
|
62
|
+
if (anyOneSchema.properties !== undefined) {
|
|
63
|
+
anyOneChildren.push(createProperties(anyOneSchema));
|
|
64
|
+
}
|
|
65
|
+
if (anyOneSchema.allOf !== undefined) {
|
|
66
|
+
anyOneChildren.push(createNodes(anyOneSchema));
|
|
67
|
+
}
|
|
68
|
+
if (anyOneSchema.items !== undefined) {
|
|
69
|
+
anyOneChildren.push(createItems(anyOneSchema));
|
|
70
|
+
}
|
|
71
|
+
if (anyOneSchema.type === "string" ||
|
|
72
|
+
anyOneSchema.type === "number" ||
|
|
73
|
+
anyOneSchema.type === "integer" ||
|
|
74
|
+
anyOneSchema.type === "boolean") {
|
|
75
|
+
anyOneChildren.push(createNodes(anyOneSchema));
|
|
76
|
+
}
|
|
77
|
+
if (anyOneChildren.length) {
|
|
78
|
+
if (schema.type === "array") {
|
|
79
|
+
return (0, utils_1.create)("TabItem", {
|
|
80
|
+
label: label,
|
|
81
|
+
value: `${index}-item-properties`,
|
|
82
|
+
children: [
|
|
83
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
84
|
+
anyOneChildren,
|
|
85
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
86
|
+
]
|
|
87
|
+
.filter(Boolean)
|
|
88
|
+
.flat(),
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return (0, utils_1.create)("TabItem", {
|
|
92
|
+
label: label,
|
|
93
|
+
value: `${index}-item-properties`,
|
|
94
|
+
children: anyOneChildren.filter(Boolean).flat(),
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
return undefined;
|
|
98
|
+
}),
|
|
89
99
|
}),
|
|
90
100
|
],
|
|
91
101
|
});
|
|
@@ -188,15 +198,27 @@ function createAdditionalProperties(schema) {
|
|
|
188
198
|
}
|
|
189
199
|
// TODO: figure out how to handle array of objects
|
|
190
200
|
function createItems(schema) {
|
|
191
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
201
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
192
202
|
if (((_a = schema.items) === null || _a === void 0 ? void 0 : _a.properties) !== undefined) {
|
|
193
|
-
return
|
|
203
|
+
return [
|
|
204
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
205
|
+
createProperties(schema.items),
|
|
206
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
207
|
+
].flat();
|
|
194
208
|
}
|
|
195
209
|
if (((_b = schema.items) === null || _b === void 0 ? void 0 : _b.additionalProperties) !== undefined) {
|
|
196
|
-
return
|
|
210
|
+
return [
|
|
211
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
212
|
+
createAdditionalProperties(schema.items),
|
|
213
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
214
|
+
].flat();
|
|
197
215
|
}
|
|
198
216
|
if (((_c = schema.items) === null || _c === void 0 ? void 0 : _c.oneOf) !== undefined || ((_d = schema.items) === null || _d === void 0 ? void 0 : _d.anyOf) !== undefined) {
|
|
199
|
-
return
|
|
217
|
+
return [
|
|
218
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
219
|
+
createAnyOneOf(schema.items),
|
|
220
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
221
|
+
].flat();
|
|
200
222
|
}
|
|
201
223
|
if (((_e = schema.items) === null || _e === void 0 ? void 0 : _e.allOf) !== undefined) {
|
|
202
224
|
// TODO: figure out if and how we should pass merged required array
|
|
@@ -205,41 +227,54 @@ function createItems(schema) {
|
|
|
205
227
|
if ((mergedSchemas.oneOf !== undefined ||
|
|
206
228
|
mergedSchemas.anyOf !== undefined) &&
|
|
207
229
|
mergedSchemas.properties) {
|
|
208
|
-
return
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
230
|
+
return [
|
|
231
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
232
|
+
createAnyOneOf(mergedSchemas),
|
|
233
|
+
createProperties(mergedSchemas),
|
|
234
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
235
|
+
].flat();
|
|
214
236
|
}
|
|
215
237
|
// Handles only anyOf/oneOf
|
|
216
238
|
if (mergedSchemas.oneOf !== undefined ||
|
|
217
239
|
mergedSchemas.anyOf !== undefined) {
|
|
218
|
-
return
|
|
219
|
-
|
|
220
|
-
|
|
240
|
+
return [
|
|
241
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
242
|
+
createAnyOneOf(mergedSchemas),
|
|
243
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
244
|
+
].flat();
|
|
221
245
|
}
|
|
222
246
|
// Handles properties
|
|
223
247
|
if (mergedSchemas.properties !== undefined) {
|
|
224
|
-
return
|
|
225
|
-
|
|
226
|
-
|
|
248
|
+
return [
|
|
249
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
250
|
+
createProperties(mergedSchemas),
|
|
251
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
252
|
+
].flat();
|
|
227
253
|
}
|
|
228
254
|
}
|
|
229
255
|
if (((_g = schema.items) === null || _g === void 0 ? void 0 : _g.type) === "string" ||
|
|
230
256
|
((_h = schema.items) === null || _h === void 0 ? void 0 : _h.type) === "number" ||
|
|
231
257
|
((_j = schema.items) === null || _j === void 0 ? void 0 : _j.type) === "integer" ||
|
|
232
|
-
((_k = schema.items) === null || _k === void 0 ? void 0 : _k.type) === "boolean"
|
|
233
|
-
|
|
258
|
+
((_k = schema.items) === null || _k === void 0 ? void 0 : _k.type) === "boolean" ||
|
|
259
|
+
((_l = schema.items) === null || _l === void 0 ? void 0 : _l.type) === "object") {
|
|
260
|
+
return [
|
|
261
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
262
|
+
createNodes(schema.items),
|
|
263
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
264
|
+
].flat();
|
|
234
265
|
}
|
|
235
266
|
// TODO: clean this up or eliminate it?
|
|
236
|
-
return
|
|
237
|
-
|
|
238
|
-
schema
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
:
|
|
242
|
-
|
|
267
|
+
return [
|
|
268
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
269
|
+
Object.entries(schema.items).map(([key, val]) => createEdges({
|
|
270
|
+
name: key,
|
|
271
|
+
schema: val,
|
|
272
|
+
required: Array.isArray(schema.required)
|
|
273
|
+
? schema.required.includes(key)
|
|
274
|
+
: false,
|
|
275
|
+
})),
|
|
276
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
277
|
+
].flat();
|
|
243
278
|
}
|
|
244
279
|
/**
|
|
245
280
|
* For handling discriminators that do not map to a same-level property
|
|
@@ -524,28 +559,32 @@ function createEdges({ name, schema, required, discriminator, }) {
|
|
|
524
559
|
* Creates a hierarchical level of a schema tree. Nodes produce edges that can branch into sub-nodes with edges, recursively.
|
|
525
560
|
*/
|
|
526
561
|
function createNodes(schema) {
|
|
562
|
+
const nodes = [];
|
|
527
563
|
// if (schema.discriminator !== undefined) {
|
|
528
564
|
// return createDiscriminator(schema);
|
|
529
565
|
// }
|
|
530
566
|
if (schema.oneOf !== undefined || schema.anyOf !== undefined) {
|
|
531
|
-
|
|
567
|
+
nodes.push(createAnyOneOf(schema));
|
|
532
568
|
}
|
|
533
569
|
if (schema.allOf !== undefined) {
|
|
534
570
|
const { mergedSchemas } = mergeAllOf(schema.allOf);
|
|
535
571
|
// allOf seems to always result in properties
|
|
536
572
|
if (mergedSchemas.properties !== undefined) {
|
|
537
|
-
|
|
573
|
+
nodes.push(createProperties(mergedSchemas));
|
|
538
574
|
}
|
|
539
575
|
}
|
|
540
576
|
if (schema.properties !== undefined) {
|
|
541
|
-
|
|
577
|
+
nodes.push(createProperties(schema));
|
|
542
578
|
}
|
|
543
579
|
if (schema.additionalProperties !== undefined) {
|
|
544
|
-
|
|
580
|
+
nodes.push(createAdditionalProperties(schema));
|
|
545
581
|
}
|
|
546
582
|
// TODO: figure out how to handle array of objects
|
|
547
583
|
if (schema.items !== undefined) {
|
|
548
|
-
|
|
584
|
+
nodes.push(createItems(schema));
|
|
585
|
+
}
|
|
586
|
+
if (nodes.length && nodes.length > 0) {
|
|
587
|
+
return nodes.filter(Boolean).flat();
|
|
549
588
|
}
|
|
550
589
|
// primitive
|
|
551
590
|
if (schema.type !== undefined) {
|
|
@@ -608,10 +647,6 @@ function createRequestSchema({ title, body, ...rest }) {
|
|
|
608
647
|
style: { textAlign: "left" },
|
|
609
648
|
children: [
|
|
610
649
|
(0, utils_1.create)("strong", { children: `${title}` }),
|
|
611
|
-
(0, utils_1.guard)(firstBody.type === "array", (format) => (0, utils_1.create)("span", {
|
|
612
|
-
style: { opacity: "0.6" },
|
|
613
|
-
children: ` array`,
|
|
614
|
-
})),
|
|
615
650
|
(0, utils_1.guard)(body.required && body.required === true, () => [
|
|
616
651
|
(0, utils_1.create)("strong", {
|
|
617
652
|
style: {
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* ========================================================================== */
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.createResponseSchema = exports.mergeAllOf = void 0;
|
|
10
|
+
const createArrayBracket_1 = require("./createArrayBracket");
|
|
10
11
|
const createDescription_1 = require("./createDescription");
|
|
11
12
|
const createDetails_1 = require("./createDetails");
|
|
12
13
|
const createDetailsSummary_1 = require("./createDetailsSummary");
|
|
@@ -47,46 +48,55 @@ exports.mergeAllOf = mergeAllOf;
|
|
|
47
48
|
*/
|
|
48
49
|
function createAnyOneOf(schema) {
|
|
49
50
|
const type = schema.oneOf ? "oneOf" : "anyOf";
|
|
50
|
-
return (0, utils_1.create)("
|
|
51
|
+
return (0, utils_1.create)("li", {
|
|
51
52
|
children: [
|
|
52
|
-
(0, utils_1.create)("
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
53
|
+
(0, utils_1.create)("span", {
|
|
54
|
+
className: "badge badge--info",
|
|
55
|
+
children: type,
|
|
56
|
+
}),
|
|
57
|
+
(0, utils_1.create)("SchemaTabs", {
|
|
58
|
+
children: schema[type].map((anyOneSchema, index) => {
|
|
59
|
+
const label = anyOneSchema.title
|
|
60
|
+
? anyOneSchema.title
|
|
61
|
+
: `MOD${index + 1}`;
|
|
62
|
+
const anyOneChildren = [];
|
|
63
|
+
if (anyOneSchema.properties !== undefined) {
|
|
64
|
+
anyOneChildren.push(createProperties(anyOneSchema));
|
|
65
|
+
}
|
|
66
|
+
if (anyOneSchema.allOf !== undefined) {
|
|
67
|
+
anyOneChildren.push(createNodes(anyOneSchema));
|
|
68
|
+
}
|
|
69
|
+
if (anyOneSchema.items !== undefined) {
|
|
70
|
+
anyOneChildren.push(createItems(anyOneSchema));
|
|
71
|
+
}
|
|
72
|
+
if (anyOneSchema.type === "string" ||
|
|
73
|
+
anyOneSchema.type === "number" ||
|
|
74
|
+
anyOneSchema.type === "integer" ||
|
|
75
|
+
anyOneSchema.type === "boolean") {
|
|
76
|
+
anyOneChildren.push(createNodes(anyOneSchema));
|
|
77
|
+
}
|
|
78
|
+
if (anyOneChildren.length) {
|
|
79
|
+
if (schema.type === "array") {
|
|
80
|
+
return (0, utils_1.create)("TabItem", {
|
|
81
|
+
label: label,
|
|
82
|
+
value: `${index}-item-properties`,
|
|
83
|
+
children: [
|
|
84
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
85
|
+
anyOneChildren,
|
|
86
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
87
|
+
]
|
|
88
|
+
.filter(Boolean)
|
|
89
|
+
.flat(),
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return (0, utils_1.create)("TabItem", {
|
|
93
|
+
label: label,
|
|
94
|
+
value: `${index}-item-properties`,
|
|
95
|
+
children: anyOneChildren,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return undefined;
|
|
99
|
+
}),
|
|
90
100
|
}),
|
|
91
101
|
],
|
|
92
102
|
});
|
|
@@ -189,15 +199,27 @@ function createAdditionalProperties(schema) {
|
|
|
189
199
|
}
|
|
190
200
|
// TODO: figure out how to handle array of objects
|
|
191
201
|
function createItems(schema) {
|
|
192
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
202
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
193
203
|
if (((_a = schema.items) === null || _a === void 0 ? void 0 : _a.properties) !== undefined) {
|
|
194
|
-
return
|
|
204
|
+
return [
|
|
205
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
206
|
+
createProperties(schema.items),
|
|
207
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
208
|
+
].flat();
|
|
195
209
|
}
|
|
196
210
|
if (((_b = schema.items) === null || _b === void 0 ? void 0 : _b.additionalProperties) !== undefined) {
|
|
197
|
-
return
|
|
211
|
+
return [
|
|
212
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
213
|
+
createAdditionalProperties(schema.items),
|
|
214
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
215
|
+
].flat();
|
|
198
216
|
}
|
|
199
217
|
if (((_c = schema.items) === null || _c === void 0 ? void 0 : _c.oneOf) !== undefined || ((_d = schema.items) === null || _d === void 0 ? void 0 : _d.anyOf) !== undefined) {
|
|
200
|
-
return
|
|
218
|
+
return [
|
|
219
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
220
|
+
createAnyOneOf(schema.items),
|
|
221
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
222
|
+
].flat();
|
|
201
223
|
}
|
|
202
224
|
if (((_e = schema.items) === null || _e === void 0 ? void 0 : _e.allOf) !== undefined) {
|
|
203
225
|
// TODO: figure out if and how we should pass merged required array
|
|
@@ -206,41 +228,54 @@ function createItems(schema) {
|
|
|
206
228
|
if ((mergedSchemas.oneOf !== undefined ||
|
|
207
229
|
mergedSchemas.anyOf !== undefined) &&
|
|
208
230
|
mergedSchemas.properties) {
|
|
209
|
-
return
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
231
|
+
return [
|
|
232
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
233
|
+
createAnyOneOf(mergedSchemas),
|
|
234
|
+
createProperties(mergedSchemas),
|
|
235
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
236
|
+
].flat();
|
|
215
237
|
}
|
|
216
238
|
// Handles only anyOf/oneOf
|
|
217
239
|
if (mergedSchemas.oneOf !== undefined ||
|
|
218
240
|
mergedSchemas.anyOf !== undefined) {
|
|
219
|
-
return
|
|
220
|
-
|
|
221
|
-
|
|
241
|
+
return [
|
|
242
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
243
|
+
createAnyOneOf(mergedSchemas),
|
|
244
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
245
|
+
].flat();
|
|
222
246
|
}
|
|
223
247
|
// Handles properties
|
|
224
248
|
if (mergedSchemas.properties !== undefined) {
|
|
225
|
-
return
|
|
226
|
-
|
|
227
|
-
|
|
249
|
+
return [
|
|
250
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
251
|
+
createProperties(mergedSchemas),
|
|
252
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
253
|
+
].flat();
|
|
228
254
|
}
|
|
229
255
|
}
|
|
230
256
|
if (((_g = schema.items) === null || _g === void 0 ? void 0 : _g.type) === "string" ||
|
|
231
257
|
((_h = schema.items) === null || _h === void 0 ? void 0 : _h.type) === "number" ||
|
|
232
258
|
((_j = schema.items) === null || _j === void 0 ? void 0 : _j.type) === "integer" ||
|
|
233
|
-
((_k = schema.items) === null || _k === void 0 ? void 0 : _k.type) === "boolean"
|
|
234
|
-
|
|
259
|
+
((_k = schema.items) === null || _k === void 0 ? void 0 : _k.type) === "boolean" ||
|
|
260
|
+
((_l = schema.items) === null || _l === void 0 ? void 0 : _l.type) === "object") {
|
|
261
|
+
return [
|
|
262
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
263
|
+
createNodes(schema.items),
|
|
264
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
265
|
+
].flat();
|
|
235
266
|
}
|
|
236
267
|
// TODO: clean this up or eliminate it?
|
|
237
|
-
return
|
|
238
|
-
|
|
239
|
-
schema
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
:
|
|
243
|
-
|
|
268
|
+
return [
|
|
269
|
+
(0, createArrayBracket_1.createOpeningArrayBracket)(),
|
|
270
|
+
Object.entries(schema.items).map(([key, val]) => createEdges({
|
|
271
|
+
name: key,
|
|
272
|
+
schema: val,
|
|
273
|
+
required: Array.isArray(schema.required)
|
|
274
|
+
? schema.required.includes(key)
|
|
275
|
+
: false,
|
|
276
|
+
})),
|
|
277
|
+
(0, createArrayBracket_1.createClosingArrayBracket)(),
|
|
278
|
+
].flat();
|
|
244
279
|
}
|
|
245
280
|
/**
|
|
246
281
|
* For handling discriminators that do not map to a same-level property
|
|
@@ -523,29 +558,34 @@ function createEdges({ name, schema, required, discriminator, }) {
|
|
|
523
558
|
* Creates a hierarchical level of a schema tree. Nodes produce edges that can branch into sub-nodes with edges, recursively.
|
|
524
559
|
*/
|
|
525
560
|
function createNodes(schema) {
|
|
561
|
+
const nodes = [];
|
|
526
562
|
// if (schema.discriminator !== undefined) {
|
|
527
563
|
// return createDiscriminator(schema);
|
|
528
564
|
// }
|
|
529
565
|
if (schema.oneOf !== undefined || schema.anyOf !== undefined) {
|
|
530
|
-
|
|
566
|
+
nodes.push(createAnyOneOf(schema));
|
|
531
567
|
}
|
|
532
568
|
if (schema.allOf !== undefined) {
|
|
533
569
|
const { mergedSchemas } = mergeAllOf(schema.allOf);
|
|
534
|
-
// allOf seems to always result in properties
|
|
535
570
|
if (mergedSchemas.properties !== undefined) {
|
|
536
|
-
|
|
571
|
+
nodes.push(createProperties(mergedSchemas));
|
|
572
|
+
}
|
|
573
|
+
if (mergedSchemas.items !== undefined) {
|
|
574
|
+
nodes.push(createItems(mergedSchemas));
|
|
537
575
|
}
|
|
538
576
|
}
|
|
539
577
|
if (schema.properties !== undefined) {
|
|
540
|
-
|
|
578
|
+
nodes.push(createProperties(schema));
|
|
541
579
|
}
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
return createAdditionalProperties(schema);
|
|
580
|
+
if (schema.additionalProperties !== undefined) {
|
|
581
|
+
nodes.push(createAdditionalProperties(schema));
|
|
545
582
|
}
|
|
546
583
|
// TODO: figure out how to handle array of objects
|
|
547
584
|
if (schema.items !== undefined) {
|
|
548
|
-
|
|
585
|
+
nodes.push(createItems(schema));
|
|
586
|
+
}
|
|
587
|
+
if (nodes.length && nodes.length > 0) {
|
|
588
|
+
return nodes.filter(Boolean).flat();
|
|
549
589
|
}
|
|
550
590
|
// primitive
|
|
551
591
|
if (schema.type !== undefined) {
|
|
@@ -621,10 +661,6 @@ function createResponseSchema({ title, body, ...rest }) {
|
|
|
621
661
|
style: { textAlign: "left" },
|
|
622
662
|
children: [
|
|
623
663
|
(0, utils_1.create)("strong", { children: `${title}` }),
|
|
624
|
-
(0, utils_1.guard)(firstBody.type === "array", (format) => (0, utils_1.create)("span", {
|
|
625
|
-
style: { opacity: "0.6" },
|
|
626
|
-
children: ` array`,
|
|
627
|
-
})),
|
|
628
664
|
(0, utils_1.guard)(body.required && body.required === true, () => [
|
|
629
665
|
(0, utils_1.create)("strong", {
|
|
630
666
|
style: {
|
|
@@ -110,12 +110,10 @@ function createResponseExamples(responseExamples, mimeType) {
|
|
|
110
110
|
language = "xml";
|
|
111
111
|
}
|
|
112
112
|
return Object.entries(responseExamples).map(([exampleName, exampleValue]) => {
|
|
113
|
-
const camelToSpaceName = exampleName.replace(/([A-Z])/g, " $1");
|
|
114
|
-
let finalFormattedName = camelToSpaceName.charAt(0).toUpperCase() + camelToSpaceName.slice(1);
|
|
115
113
|
if (typeof exampleValue.value === "object") {
|
|
116
114
|
return (0, utils_1.create)("TabItem", {
|
|
117
|
-
label: `${
|
|
118
|
-
value: `${
|
|
115
|
+
label: `${exampleName}`,
|
|
116
|
+
value: `${exampleName}`,
|
|
119
117
|
children: [
|
|
120
118
|
(0, utils_2.guard)(exampleValue.summary, (summary) => [
|
|
121
119
|
(0, utils_1.create)("p", {
|
|
@@ -130,8 +128,8 @@ function createResponseExamples(responseExamples, mimeType) {
|
|
|
130
128
|
});
|
|
131
129
|
}
|
|
132
130
|
return (0, utils_1.create)("TabItem", {
|
|
133
|
-
label: `${
|
|
134
|
-
value: `${
|
|
131
|
+
label: `${exampleName}`,
|
|
132
|
+
value: `${exampleName}`,
|
|
135
133
|
children: [
|
|
136
134
|
(0, utils_2.guard)(exampleValue.summary, (summary) => [
|
|
137
135
|
(0, utils_1.create)("p", {
|