docusaurus-theme-openapi-docs 0.0.0-862 → 0.0.0-934
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/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +50 -0
- package/lib/theme/ApiItem/index.js +3 -3
- package/lib/theme/ArrayBrackets/index.d.ts +3 -0
- package/lib/theme/ArrayBrackets/index.js +50 -0
- package/lib/theme/ParamsDetails/index.d.ts +6 -0
- package/lib/theme/ParamsDetails/index.js +134 -0
- package/lib/theme/ParamsItem/index.d.ts +1 -0
- package/lib/theme/ParamsItem/index.js +10 -6
- package/lib/theme/RequestSchema/index.d.ts +15 -0
- package/lib/theme/RequestSchema/index.js +235 -0
- package/lib/theme/ResponseExamples/index.d.ts +48 -0
- package/lib/theme/ResponseExamples/index.js +290 -0
- package/lib/theme/ResponseSchema/index.d.ts +15 -0
- package/lib/theme/ResponseSchema/index.js +206 -0
- package/lib/theme/Schema/index.d.ts +8 -0
- package/lib/theme/Schema/index.js +777 -0
- package/lib/theme/SchemaItem/index.d.ts +8 -8
- package/lib/theme/SchemaItem/index.js +9 -5
- package/lib/theme/SkeletonLoader/index.d.ts +6 -0
- package/lib/theme/SkeletonLoader/index.js +20 -0
- package/lib/theme/StatusCodes/index.d.ts +9 -0
- package/lib/theme/StatusCodes/index.js +78 -0
- package/lib/theme/styles.scss +41 -0
- package/package.json +4 -3
- package/src/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +50 -0
- package/src/theme/ApiItem/index.tsx +2 -1
- package/src/theme/ArrayBrackets/index.tsx +37 -0
- package/src/theme/ParamsDetails/index.tsx +88 -0
- package/src/theme/ParamsItem/index.tsx +10 -7
- package/src/theme/RequestSchema/index.tsx +164 -0
- package/src/theme/ResponseExamples/index.tsx +290 -0
- package/src/theme/ResponseSchema/index.tsx +151 -0
- package/src/theme/Schema/index.tsx +808 -0
- package/src/theme/SchemaItem/index.tsx +15 -13
- package/src/theme/SkeletonLoader/index.tsx +18 -0
- package/src/theme/StatusCodes/index.tsx +72 -0
- package/src/theme/styles.scss +41 -0
|
@@ -436,6 +436,56 @@ body[class="ReactModal__Body--open"] {
|
|
|
436
436
|
}
|
|
437
437
|
}
|
|
438
438
|
|
|
439
|
+
.openapi-tabs__code-item--http {
|
|
440
|
+
color: var(--ifm-color-gray-500);
|
|
441
|
+
display: flex;
|
|
442
|
+
align-items: center;
|
|
443
|
+
justify-content: center;
|
|
444
|
+
position: relative;
|
|
445
|
+
|
|
446
|
+
&::after {
|
|
447
|
+
content: "";
|
|
448
|
+
display: inline-block;
|
|
449
|
+
width: 32px; /* Explicitly setting width to 32 pixels */
|
|
450
|
+
height: 32px; /* Explicitly setting height to 32 pixels */
|
|
451
|
+
background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDIyTDggMTZMMTIgMTBNMjAgMjJMMjQgMTZMIDIwIDEwIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
|
|
452
|
+
background-size: contain;
|
|
453
|
+
background-repeat: no-repeat;
|
|
454
|
+
background-position: center; /* Center the SVG */
|
|
455
|
+
margin-top: 0.5rem;
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
&.active {
|
|
459
|
+
box-shadow: 0 0 0 3px var(--opeanpi-code-tab-shadow-color-http);
|
|
460
|
+
border-color: var(--openapi-code-tab-border-color-http);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
.openapi-tabs__code-item--shell {
|
|
465
|
+
color: var(--ifm-color-gray-500);
|
|
466
|
+
display: flex;
|
|
467
|
+
align-items: center;
|
|
468
|
+
justify-content: center;
|
|
469
|
+
position: relative;
|
|
470
|
+
|
|
471
|
+
&::after {
|
|
472
|
+
content: "";
|
|
473
|
+
display: inline-block;
|
|
474
|
+
width: 32px; /* Explicitly setting width to 32 pixels */
|
|
475
|
+
height: 32px; /* Explicitly setting height to 32 pixels */
|
|
476
|
+
background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDIyTDggMTZMMTIgMTBNMjAgMjJMMjQgMTZMIDIwIDEwIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
|
|
477
|
+
background-size: contain;
|
|
478
|
+
background-repeat: no-repeat;
|
|
479
|
+
background-position: center; /* Center the SVG */
|
|
480
|
+
margin-top: 0.5rem;
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
&.active {
|
|
484
|
+
box-shadow: 0 0 0 3px var(--opeanpi-code-tab-shadow-color-shell);
|
|
485
|
+
border-color: var(--openapi-code-tab-border-color-shell);
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
|
|
439
489
|
@media only screen and (min-width: 768px) and (max-width: 996px) {
|
|
440
490
|
.openapi-tabs__code-list {
|
|
441
491
|
justify-content: space-around;
|
|
@@ -27,6 +27,7 @@ const slice_1 = require("@theme/ApiExplorer/Authorization/slice");
|
|
|
27
27
|
const persistanceMiddleware_1 = require("@theme/ApiExplorer/persistanceMiddleware");
|
|
28
28
|
const Layout_1 = __importDefault(require("@theme/ApiItem/Layout"));
|
|
29
29
|
const Metadata_1 = __importDefault(require("@theme/DocItem/Metadata"));
|
|
30
|
+
const SkeletonLoader_1 = __importDefault(require("@theme/SkeletonLoader"));
|
|
30
31
|
const clsx_1 = __importDefault(require("clsx"));
|
|
31
32
|
const react_redux_1 = require("react-redux");
|
|
32
33
|
const store_1 = require("./store");
|
|
@@ -149,9 +150,8 @@ function ApiItem(props) {
|
|
|
149
150
|
BrowserOnly_1.default,
|
|
150
151
|
{
|
|
151
152
|
fallback: react_1.default.createElement(
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
"Loading..."
|
|
153
|
+
SkeletonLoader_1.default,
|
|
154
|
+
{ size: "lg" }
|
|
155
155
|
),
|
|
156
156
|
},
|
|
157
157
|
() => {
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
var __importDefault =
|
|
9
|
+
(this && this.__importDefault) ||
|
|
10
|
+
function (mod) {
|
|
11
|
+
return mod && mod.__esModule ? mod : { default: mod };
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.ClosingArrayBracket = exports.OpeningArrayBracket = void 0;
|
|
15
|
+
const react_1 = __importDefault(require("react"));
|
|
16
|
+
const OpeningArrayBracket = () =>
|
|
17
|
+
react_1.default.createElement(
|
|
18
|
+
"li",
|
|
19
|
+
null,
|
|
20
|
+
react_1.default.createElement(
|
|
21
|
+
"div",
|
|
22
|
+
{
|
|
23
|
+
style: {
|
|
24
|
+
fontSize: "var(--ifm-code-font-size)",
|
|
25
|
+
opacity: 0.6,
|
|
26
|
+
marginLeft: "-.5rem",
|
|
27
|
+
paddingBottom: ".5rem",
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
"Array ["
|
|
31
|
+
)
|
|
32
|
+
);
|
|
33
|
+
exports.OpeningArrayBracket = OpeningArrayBracket;
|
|
34
|
+
const ClosingArrayBracket = () =>
|
|
35
|
+
react_1.default.createElement(
|
|
36
|
+
"li",
|
|
37
|
+
null,
|
|
38
|
+
react_1.default.createElement(
|
|
39
|
+
"div",
|
|
40
|
+
{
|
|
41
|
+
style: {
|
|
42
|
+
fontSize: "var(--ifm-code-font-size)",
|
|
43
|
+
opacity: 0.6,
|
|
44
|
+
marginLeft: "-.5rem",
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
"]"
|
|
48
|
+
)
|
|
49
|
+
);
|
|
50
|
+
exports.ClosingArrayBracket = ClosingArrayBracket;
|
|
@@ -0,0 +1,134 @@
|
|
|
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
|
+
var __createBinding =
|
|
9
|
+
(this && this.__createBinding) ||
|
|
10
|
+
(Object.create
|
|
11
|
+
? function (o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
+
if (
|
|
15
|
+
!desc ||
|
|
16
|
+
("get" in desc ? !m.__esModule : desc.writable || desc.configurable)
|
|
17
|
+
) {
|
|
18
|
+
desc = {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return m[k];
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
26
|
+
}
|
|
27
|
+
: function (o, m, k, k2) {
|
|
28
|
+
if (k2 === undefined) k2 = k;
|
|
29
|
+
o[k2] = m[k];
|
|
30
|
+
});
|
|
31
|
+
var __setModuleDefault =
|
|
32
|
+
(this && this.__setModuleDefault) ||
|
|
33
|
+
(Object.create
|
|
34
|
+
? function (o, v) {
|
|
35
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
36
|
+
}
|
|
37
|
+
: function (o, v) {
|
|
38
|
+
o["default"] = v;
|
|
39
|
+
});
|
|
40
|
+
var __importStar =
|
|
41
|
+
(this && this.__importStar) ||
|
|
42
|
+
function (mod) {
|
|
43
|
+
if (mod && mod.__esModule) return mod;
|
|
44
|
+
var result = {};
|
|
45
|
+
if (mod != null)
|
|
46
|
+
for (var k in mod)
|
|
47
|
+
if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
|
|
48
|
+
__createBinding(result, mod, k);
|
|
49
|
+
__setModuleDefault(result, mod);
|
|
50
|
+
return result;
|
|
51
|
+
};
|
|
52
|
+
var __importDefault =
|
|
53
|
+
(this && this.__importDefault) ||
|
|
54
|
+
function (mod) {
|
|
55
|
+
return mod && mod.__esModule ? mod : { default: mod };
|
|
56
|
+
};
|
|
57
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
58
|
+
const react_1 = __importStar(require("react"));
|
|
59
|
+
const BrowserOnly_1 = __importDefault(require("@docusaurus/BrowserOnly"));
|
|
60
|
+
const Details_1 = __importDefault(require("@theme/Details"));
|
|
61
|
+
const ParamsItem_1 = __importDefault(require("@theme/ParamsItem"));
|
|
62
|
+
const SkeletonLoader_1 = __importDefault(require("@theme/SkeletonLoader"));
|
|
63
|
+
const ParamsDetailsComponent = ({ parameters }) => {
|
|
64
|
+
const types = ["path", "query", "header", "cookie"];
|
|
65
|
+
return react_1.default.createElement(
|
|
66
|
+
react_1.default.Fragment,
|
|
67
|
+
null,
|
|
68
|
+
types.map((type) => {
|
|
69
|
+
const params = parameters?.filter((param) => param?.in === type);
|
|
70
|
+
if (!params || params.length === 0) {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
const summaryElement = react_1.default.createElement(
|
|
74
|
+
"summary",
|
|
75
|
+
null,
|
|
76
|
+
react_1.default.createElement(
|
|
77
|
+
"h3",
|
|
78
|
+
{ className: "openapi-markdown__details-summary-header-params" },
|
|
79
|
+
`${type.charAt(0).toUpperCase() + type.slice(1)} Parameters`
|
|
80
|
+
)
|
|
81
|
+
);
|
|
82
|
+
return react_1.default.createElement(
|
|
83
|
+
Details_1.default,
|
|
84
|
+
{
|
|
85
|
+
key: type,
|
|
86
|
+
className: "openapi-markdown__details",
|
|
87
|
+
style: { marginBottom: "1rem" },
|
|
88
|
+
"data-collapsed": false,
|
|
89
|
+
open: true,
|
|
90
|
+
summary: summaryElement,
|
|
91
|
+
},
|
|
92
|
+
react_1.default.createElement(
|
|
93
|
+
"ul",
|
|
94
|
+
null,
|
|
95
|
+
params.map((param, index) =>
|
|
96
|
+
react_1.default.createElement(ParamsItem_1.default, {
|
|
97
|
+
key: index,
|
|
98
|
+
className: "paramsItem",
|
|
99
|
+
param: {
|
|
100
|
+
...param,
|
|
101
|
+
enumDescriptions: Object.entries(
|
|
102
|
+
param?.schema?.["x-enumDescriptions"] ??
|
|
103
|
+
param?.schema?.items?.["x-enumDescriptions"] ??
|
|
104
|
+
{}
|
|
105
|
+
),
|
|
106
|
+
},
|
|
107
|
+
})
|
|
108
|
+
)
|
|
109
|
+
)
|
|
110
|
+
);
|
|
111
|
+
})
|
|
112
|
+
);
|
|
113
|
+
};
|
|
114
|
+
const ParamsDetails = (props) => {
|
|
115
|
+
return react_1.default.createElement(
|
|
116
|
+
BrowserOnly_1.default,
|
|
117
|
+
{
|
|
118
|
+
fallback: react_1.default.createElement(SkeletonLoader_1.default, {
|
|
119
|
+
size: "sm",
|
|
120
|
+
}),
|
|
121
|
+
},
|
|
122
|
+
() => {
|
|
123
|
+
const LazyComponent = react_1.default.lazy(() =>
|
|
124
|
+
Promise.resolve({ default: ParamsDetailsComponent })
|
|
125
|
+
);
|
|
126
|
+
return react_1.default.createElement(
|
|
127
|
+
react_1.Suspense,
|
|
128
|
+
{ fallback: null },
|
|
129
|
+
react_1.default.createElement(LazyComponent, { ...props })
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
);
|
|
133
|
+
};
|
|
134
|
+
exports.default = ParamsDetails;
|
|
@@ -94,7 +94,7 @@ function ParamsItem({ param, ...rest }) {
|
|
|
94
94
|
);
|
|
95
95
|
const renderDescription = (0, utils_1.guard)(description, (description) =>
|
|
96
96
|
react_1.default.createElement(
|
|
97
|
-
|
|
97
|
+
react_1.default.Fragment,
|
|
98
98
|
null,
|
|
99
99
|
react_1.default.createElement(react_markdown_1.default, {
|
|
100
100
|
children: (0, createDescription_1.createDescription)(description),
|
|
@@ -124,11 +124,15 @@ function ParamsItem({ param, ...rest }) {
|
|
|
124
124
|
const renderEnumDescriptions = (0, utils_1.guard)(
|
|
125
125
|
getEnumDescriptionMarkdown(enumDescriptions),
|
|
126
126
|
(value) => {
|
|
127
|
-
return react_1.default.createElement(
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
127
|
+
return react_1.default.createElement(
|
|
128
|
+
"div",
|
|
129
|
+
{ style: { marginTop: ".5rem" } },
|
|
130
|
+
react_1.default.createElement(react_markdown_1.default, {
|
|
131
|
+
rehypePlugins: [rehype_raw_1.default],
|
|
132
|
+
remarkPlugins: [remark_gfm_1.default],
|
|
133
|
+
children: value,
|
|
134
|
+
})
|
|
135
|
+
);
|
|
132
136
|
}
|
|
133
137
|
);
|
|
134
138
|
function renderDefaultValue() {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { MediaTypeObject } from "docusaurus-plugin-openapi-docs/lib/openapi/types";
|
|
3
|
+
interface Props {
|
|
4
|
+
style?: React.CSSProperties;
|
|
5
|
+
title: string;
|
|
6
|
+
body: {
|
|
7
|
+
content?: {
|
|
8
|
+
[key: string]: MediaTypeObject;
|
|
9
|
+
};
|
|
10
|
+
description?: string;
|
|
11
|
+
required?: string[] | boolean;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
declare const RequestSchema: React.FC<Props>;
|
|
15
|
+
export default RequestSchema;
|
|
@@ -0,0 +1,235 @@
|
|
|
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
|
+
var __createBinding =
|
|
9
|
+
(this && this.__createBinding) ||
|
|
10
|
+
(Object.create
|
|
11
|
+
? function (o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
+
if (
|
|
15
|
+
!desc ||
|
|
16
|
+
("get" in desc ? !m.__esModule : desc.writable || desc.configurable)
|
|
17
|
+
) {
|
|
18
|
+
desc = {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return m[k];
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
26
|
+
}
|
|
27
|
+
: function (o, m, k, k2) {
|
|
28
|
+
if (k2 === undefined) k2 = k;
|
|
29
|
+
o[k2] = m[k];
|
|
30
|
+
});
|
|
31
|
+
var __setModuleDefault =
|
|
32
|
+
(this && this.__setModuleDefault) ||
|
|
33
|
+
(Object.create
|
|
34
|
+
? function (o, v) {
|
|
35
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
36
|
+
}
|
|
37
|
+
: function (o, v) {
|
|
38
|
+
o["default"] = v;
|
|
39
|
+
});
|
|
40
|
+
var __importStar =
|
|
41
|
+
(this && this.__importStar) ||
|
|
42
|
+
function (mod) {
|
|
43
|
+
if (mod && mod.__esModule) return mod;
|
|
44
|
+
var result = {};
|
|
45
|
+
if (mod != null)
|
|
46
|
+
for (var k in mod)
|
|
47
|
+
if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
|
|
48
|
+
__createBinding(result, mod, k);
|
|
49
|
+
__setModuleDefault(result, mod);
|
|
50
|
+
return result;
|
|
51
|
+
};
|
|
52
|
+
var __importDefault =
|
|
53
|
+
(this && this.__importDefault) ||
|
|
54
|
+
function (mod) {
|
|
55
|
+
return mod && mod.__esModule ? mod : { default: mod };
|
|
56
|
+
};
|
|
57
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
58
|
+
const react_1 = __importStar(require("react"));
|
|
59
|
+
const BrowserOnly_1 = __importDefault(require("@docusaurus/BrowserOnly"));
|
|
60
|
+
const Details_1 = __importDefault(require("@theme/Details"));
|
|
61
|
+
const MimeTabs_1 = __importDefault(require("@theme/MimeTabs")); // Assume these components exist
|
|
62
|
+
const Schema_1 = __importDefault(require("@theme/Schema"));
|
|
63
|
+
const SkeletonLoader_1 = __importDefault(require("@theme/SkeletonLoader"));
|
|
64
|
+
const TabItem_1 = __importDefault(require("@theme/TabItem"));
|
|
65
|
+
const createDescription_1 = require("docusaurus-plugin-openapi-docs/lib/markdown/createDescription");
|
|
66
|
+
const RequestSchemaComponent = ({ title, body, style }) => {
|
|
67
|
+
if (
|
|
68
|
+
body === undefined ||
|
|
69
|
+
body.content === undefined ||
|
|
70
|
+
Object.keys(body).length === 0 ||
|
|
71
|
+
Object.keys(body.content).length === 0
|
|
72
|
+
) {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
const mimeTypes = Object.keys(body.content);
|
|
76
|
+
if (mimeTypes.length > 1) {
|
|
77
|
+
return react_1.default.createElement(
|
|
78
|
+
MimeTabs_1.default,
|
|
79
|
+
{ className: "openapi-tabs__mime", schemaType: "request" },
|
|
80
|
+
mimeTypes.map((mimeType) => {
|
|
81
|
+
const firstBody = body.content[mimeType].schema;
|
|
82
|
+
if (
|
|
83
|
+
firstBody === undefined ||
|
|
84
|
+
(firstBody.properties &&
|
|
85
|
+
Object.keys(firstBody.properties).length === 0)
|
|
86
|
+
) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
return (
|
|
90
|
+
// @ts-ignore
|
|
91
|
+
react_1.default.createElement(
|
|
92
|
+
TabItem_1.default,
|
|
93
|
+
{ key: mimeType, label: mimeType, value: mimeType },
|
|
94
|
+
react_1.default.createElement(
|
|
95
|
+
Details_1.default,
|
|
96
|
+
{
|
|
97
|
+
className: "openapi-markdown__details mime",
|
|
98
|
+
"data-collapsed": false,
|
|
99
|
+
open: true,
|
|
100
|
+
style: style,
|
|
101
|
+
summary: react_1.default.createElement(
|
|
102
|
+
react_1.default.Fragment,
|
|
103
|
+
null,
|
|
104
|
+
react_1.default.createElement(
|
|
105
|
+
"summary",
|
|
106
|
+
null,
|
|
107
|
+
react_1.default.createElement(
|
|
108
|
+
"h3",
|
|
109
|
+
{
|
|
110
|
+
className:
|
|
111
|
+
"openapi-markdown__details-summary-header-body",
|
|
112
|
+
},
|
|
113
|
+
title,
|
|
114
|
+
body.required === true &&
|
|
115
|
+
react_1.default.createElement(
|
|
116
|
+
"span",
|
|
117
|
+
{ className: "openapi-schema__required" },
|
|
118
|
+
"required"
|
|
119
|
+
)
|
|
120
|
+
)
|
|
121
|
+
)
|
|
122
|
+
),
|
|
123
|
+
},
|
|
124
|
+
react_1.default.createElement(
|
|
125
|
+
"div",
|
|
126
|
+
{ style: { textAlign: "left", marginLeft: "1rem" } },
|
|
127
|
+
body.description &&
|
|
128
|
+
react_1.default.createElement(
|
|
129
|
+
"div",
|
|
130
|
+
{ style: { marginTop: "1rem", marginBottom: "1rem" } },
|
|
131
|
+
(0, createDescription_1.createDescription)(body.description)
|
|
132
|
+
)
|
|
133
|
+
),
|
|
134
|
+
react_1.default.createElement(
|
|
135
|
+
"ul",
|
|
136
|
+
{ style: { marginLeft: "1rem" } },
|
|
137
|
+
react_1.default.createElement(Schema_1.default, {
|
|
138
|
+
schema: firstBody,
|
|
139
|
+
schemaType: "request",
|
|
140
|
+
})
|
|
141
|
+
)
|
|
142
|
+
)
|
|
143
|
+
)
|
|
144
|
+
);
|
|
145
|
+
})
|
|
146
|
+
);
|
|
147
|
+
}
|
|
148
|
+
const randomFirstKey = mimeTypes[0];
|
|
149
|
+
const firstBody =
|
|
150
|
+
body.content[randomFirstKey].schema ?? body.content[randomFirstKey];
|
|
151
|
+
if (firstBody === undefined) {
|
|
152
|
+
return null;
|
|
153
|
+
}
|
|
154
|
+
return react_1.default.createElement(
|
|
155
|
+
MimeTabs_1.default,
|
|
156
|
+
{ className: "openapi-tabs__mime", schemaType: "request" },
|
|
157
|
+
react_1.default.createElement(
|
|
158
|
+
TabItem_1.default,
|
|
159
|
+
{ label: randomFirstKey, value: `${randomFirstKey}-schema` },
|
|
160
|
+
react_1.default.createElement(
|
|
161
|
+
Details_1.default,
|
|
162
|
+
{
|
|
163
|
+
className: "openapi-markdown__details mime",
|
|
164
|
+
"data-collapsed": false,
|
|
165
|
+
open: true,
|
|
166
|
+
style: style,
|
|
167
|
+
summary: react_1.default.createElement(
|
|
168
|
+
react_1.default.Fragment,
|
|
169
|
+
null,
|
|
170
|
+
react_1.default.createElement(
|
|
171
|
+
"summary",
|
|
172
|
+
null,
|
|
173
|
+
react_1.default.createElement(
|
|
174
|
+
"h3",
|
|
175
|
+
{ className: "openapi-markdown__details-summary-header-body" },
|
|
176
|
+
title,
|
|
177
|
+
firstBody.type === "array" &&
|
|
178
|
+
react_1.default.createElement(
|
|
179
|
+
"span",
|
|
180
|
+
{ style: { opacity: "0.6" } },
|
|
181
|
+
" array"
|
|
182
|
+
),
|
|
183
|
+
body.required &&
|
|
184
|
+
react_1.default.createElement(
|
|
185
|
+
"strong",
|
|
186
|
+
{ className: "openapi-schema__required" },
|
|
187
|
+
"required"
|
|
188
|
+
)
|
|
189
|
+
)
|
|
190
|
+
)
|
|
191
|
+
),
|
|
192
|
+
},
|
|
193
|
+
react_1.default.createElement(
|
|
194
|
+
"div",
|
|
195
|
+
{ style: { textAlign: "left", marginLeft: "1rem" } },
|
|
196
|
+
body.description &&
|
|
197
|
+
react_1.default.createElement(
|
|
198
|
+
"div",
|
|
199
|
+
{ style: { marginTop: "1rem", marginBottom: "1rem" } },
|
|
200
|
+
(0, createDescription_1.createDescription)(body.description)
|
|
201
|
+
)
|
|
202
|
+
),
|
|
203
|
+
react_1.default.createElement(
|
|
204
|
+
"ul",
|
|
205
|
+
{ style: { marginLeft: "1rem" } },
|
|
206
|
+
react_1.default.createElement(Schema_1.default, {
|
|
207
|
+
schema: firstBody,
|
|
208
|
+
schemaType: "request",
|
|
209
|
+
})
|
|
210
|
+
)
|
|
211
|
+
)
|
|
212
|
+
)
|
|
213
|
+
);
|
|
214
|
+
};
|
|
215
|
+
const RequestSchema = (props) => {
|
|
216
|
+
return react_1.default.createElement(
|
|
217
|
+
BrowserOnly_1.default,
|
|
218
|
+
{
|
|
219
|
+
fallback: react_1.default.createElement(SkeletonLoader_1.default, {
|
|
220
|
+
size: "sm",
|
|
221
|
+
}),
|
|
222
|
+
},
|
|
223
|
+
() => {
|
|
224
|
+
const LazyComponent = react_1.default.lazy(() =>
|
|
225
|
+
Promise.resolve({ default: RequestSchemaComponent })
|
|
226
|
+
);
|
|
227
|
+
return react_1.default.createElement(
|
|
228
|
+
react_1.Suspense,
|
|
229
|
+
{ fallback: null },
|
|
230
|
+
react_1.default.createElement(LazyComponent, { ...props })
|
|
231
|
+
);
|
|
232
|
+
}
|
|
233
|
+
);
|
|
234
|
+
};
|
|
235
|
+
exports.default = RequestSchema;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare function json2xml(o: Record<string, any>, tab: string): string;
|
|
3
|
+
interface ParameterProps {
|
|
4
|
+
in: string;
|
|
5
|
+
name: string;
|
|
6
|
+
schema?: {
|
|
7
|
+
type?: string;
|
|
8
|
+
items?: Record<string, any>;
|
|
9
|
+
};
|
|
10
|
+
enumDescriptions?: [string, string][];
|
|
11
|
+
}
|
|
12
|
+
interface ResponseHeaderProps {
|
|
13
|
+
description?: string;
|
|
14
|
+
example?: string;
|
|
15
|
+
schema?: {
|
|
16
|
+
type?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
interface ResponseExampleProps {
|
|
20
|
+
value: any;
|
|
21
|
+
summary?: string;
|
|
22
|
+
}
|
|
23
|
+
interface Props {
|
|
24
|
+
parameters?: ParameterProps[];
|
|
25
|
+
type: string;
|
|
26
|
+
responseHeaders?: Record<string, ResponseHeaderProps>;
|
|
27
|
+
responseExamples?: Record<string, ResponseExampleProps>;
|
|
28
|
+
responseExample?: any;
|
|
29
|
+
schema?: any;
|
|
30
|
+
mimeType: string;
|
|
31
|
+
}
|
|
32
|
+
export declare const ParamsDetails: React.FC<Props>;
|
|
33
|
+
export declare const ResponseHeaders: React.FC<{
|
|
34
|
+
responseHeaders?: Record<string, ResponseHeaderProps>;
|
|
35
|
+
}>;
|
|
36
|
+
export declare const ResponseExamples: React.FC<{
|
|
37
|
+
responseExamples: any;
|
|
38
|
+
mimeType: string;
|
|
39
|
+
}>;
|
|
40
|
+
export declare const ResponseExample: React.FC<{
|
|
41
|
+
responseExample: any;
|
|
42
|
+
mimeType: string;
|
|
43
|
+
}>;
|
|
44
|
+
export declare const ExampleFromSchema: React.FC<{
|
|
45
|
+
schema: any;
|
|
46
|
+
mimeType: string;
|
|
47
|
+
}>;
|
|
48
|
+
export {};
|