docusaurus-plugin-openapi-docs 0.0.0-714 → 0.0.0-716
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/index.d.ts +1 -1
- package/lib/index.js +6 -7
- package/lib/options.js +1 -0
- package/lib/types.d.ts +1 -0
- package/package.json +2 -2
- package/src/index.ts +14 -8
- package/src/options.ts +1 -0
- package/src/types.ts +1 -0
package/lib/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { LoadContext, Plugin } from "@docusaurus/types";
|
|
2
2
|
import type { PluginOptions, LoadedContent } from "./types";
|
|
3
3
|
export declare function isURL(str: string): boolean;
|
|
4
|
-
export declare function getDocsPluginConfig(presetsPlugins: any[], pluginId: string): Object | undefined;
|
|
4
|
+
export declare function getDocsPluginConfig(presetsPlugins: any[], plugin: string, pluginId: string): Object | undefined;
|
|
5
5
|
declare function pluginOpenAPIDocs(context: LoadContext, options: PluginOptions): Plugin<LoadedContent>;
|
|
6
6
|
declare namespace pluginOpenAPIDocs {
|
|
7
7
|
var validateOptions: ({ options, validate }: any) => any;
|
package/lib/index.js
CHANGED
|
@@ -24,7 +24,7 @@ function isURL(str) {
|
|
|
24
24
|
return /^(https?:)\/\//m.test(str);
|
|
25
25
|
}
|
|
26
26
|
exports.isURL = isURL;
|
|
27
|
-
function getDocsPluginConfig(presetsPlugins, pluginId) {
|
|
27
|
+
function getDocsPluginConfig(presetsPlugins, plugin, pluginId) {
|
|
28
28
|
// eslint-disable-next-line array-callback-return
|
|
29
29
|
const filteredConfig = presetsPlugins.filter((data) => {
|
|
30
30
|
// Search presets
|
|
@@ -33,8 +33,7 @@ function getDocsPluginConfig(presetsPlugins, pluginId) {
|
|
|
33
33
|
return data[1];
|
|
34
34
|
}
|
|
35
35
|
// Search plugin-content-docs instances
|
|
36
|
-
if (typeof data[0] === "string" &&
|
|
37
|
-
data[0] === "@docusaurus/plugin-content-docs") {
|
|
36
|
+
if (typeof data[0] === "string" && data[0] === plugin) {
|
|
38
37
|
const configPluginId = data[1].id ? data[1].id : "default";
|
|
39
38
|
if (configPluginId === pluginId) {
|
|
40
39
|
return data[1];
|
|
@@ -48,7 +47,7 @@ function getDocsPluginConfig(presetsPlugins, pluginId) {
|
|
|
48
47
|
return filteredConfig[1].docs;
|
|
49
48
|
}
|
|
50
49
|
// Search plugin-content-docs instances
|
|
51
|
-
if (filteredConfig[0] ===
|
|
50
|
+
if (filteredConfig[0] === plugin) {
|
|
52
51
|
const configPluginId = filteredConfig[1].id
|
|
53
52
|
? filteredConfig[1].id
|
|
54
53
|
: "default";
|
|
@@ -67,13 +66,13 @@ function getPluginInstances(plugins) {
|
|
|
67
66
|
return plugins.filter((data) => data[0] === "docusaurus-plugin-openapi-docs");
|
|
68
67
|
}
|
|
69
68
|
function pluginOpenAPIDocs(context, options) {
|
|
70
|
-
const { config, docsPluginId } = options;
|
|
69
|
+
const { config, docsPlugin = "@docusaurus/plugin-content-docs", docsPluginId, } = options;
|
|
71
70
|
const { siteDir, siteConfig } = context;
|
|
72
71
|
// Get routeBasePath and path from plugin-content-docs or preset
|
|
73
72
|
const presets = siteConfig.presets;
|
|
74
73
|
const plugins = siteConfig.plugins;
|
|
75
74
|
const presetsPlugins = presets.concat(plugins);
|
|
76
|
-
let docData = getDocsPluginConfig(presetsPlugins, docsPluginId);
|
|
75
|
+
let docData = getDocsPluginConfig(presetsPlugins, docsPlugin, docsPluginId);
|
|
77
76
|
let docRouteBasePath = docData ? docData.routeBasePath : undefined;
|
|
78
77
|
let docPath = docData ? (docData.path ? docData.path : "docs") : undefined;
|
|
79
78
|
async function generateApiDocs(options, pluginId) {
|
|
@@ -83,7 +82,7 @@ function pluginOpenAPIDocs(context, options) {
|
|
|
83
82
|
outputDir = outputDir.replace(/\/$/, "");
|
|
84
83
|
// Override docPath if pluginId provided
|
|
85
84
|
if (pluginId) {
|
|
86
|
-
docData = getDocsPluginConfig(presetsPlugins, pluginId);
|
|
85
|
+
docData = getDocsPluginConfig(presetsPlugins, docsPlugin, pluginId);
|
|
87
86
|
docRouteBasePath = docData ? docData.routeBasePath : undefined;
|
|
88
87
|
docPath = docData ? (docData.path ? docData.path : "docs") : undefined;
|
|
89
88
|
}
|
package/lib/options.js
CHANGED
|
@@ -22,6 +22,7 @@ const markdownGenerators = utils_validation_1.Joi.object({
|
|
|
22
22
|
});
|
|
23
23
|
exports.OptionsSchema = utils_validation_1.Joi.object({
|
|
24
24
|
id: utils_validation_1.Joi.string().required(),
|
|
25
|
+
docsPlugin: utils_validation_1.Joi.string(),
|
|
25
26
|
docsPluginId: utils_validation_1.Joi.string().required(),
|
|
26
27
|
config: utils_validation_1.Joi.object()
|
|
27
28
|
.pattern(/^/, utils_validation_1.Joi.object({
|
package/lib/types.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { InfoObject, OperationObject, SchemaObject, SecuritySchemeObject, TagObj
|
|
|
3
3
|
export type { PropSidebarItemCategory, SidebarItemLink, PropSidebar, PropSidebarItem, } from "@docusaurus/plugin-content-docs-types";
|
|
4
4
|
export interface PluginOptions {
|
|
5
5
|
id?: string;
|
|
6
|
+
docsPlugin?: string;
|
|
6
7
|
docsPluginId: string;
|
|
7
8
|
config: {
|
|
8
9
|
[key: string]: APIOptions;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "docusaurus-plugin-openapi-docs",
|
|
3
3
|
"description": "OpenAPI plugin for Docusaurus.",
|
|
4
|
-
"version": "0.0.0-
|
|
4
|
+
"version": "0.0.0-716",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"openapi",
|
|
@@ -60,5 +60,5 @@
|
|
|
60
60
|
"engines": {
|
|
61
61
|
"node": ">=14"
|
|
62
62
|
},
|
|
63
|
-
"gitHead": "
|
|
63
|
+
"gitHead": "6dffc46fae6136e559fa23a941f3df596614ded3"
|
|
64
64
|
}
|
package/src/index.ts
CHANGED
|
@@ -40,6 +40,7 @@ export function isURL(str: string): boolean {
|
|
|
40
40
|
|
|
41
41
|
export function getDocsPluginConfig(
|
|
42
42
|
presetsPlugins: any[],
|
|
43
|
+
plugin: string,
|
|
43
44
|
pluginId: string
|
|
44
45
|
): Object | undefined {
|
|
45
46
|
// eslint-disable-next-line array-callback-return
|
|
@@ -51,10 +52,7 @@ export function getDocsPluginConfig(
|
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
// Search plugin-content-docs instances
|
|
54
|
-
if (
|
|
55
|
-
typeof data[0] === "string" &&
|
|
56
|
-
data[0] === "@docusaurus/plugin-content-docs"
|
|
57
|
-
) {
|
|
55
|
+
if (typeof data[0] === "string" && data[0] === plugin) {
|
|
58
56
|
const configPluginId = data[1].id ? data[1].id : "default";
|
|
59
57
|
if (configPluginId === pluginId) {
|
|
60
58
|
return data[1];
|
|
@@ -70,7 +68,7 @@ export function getDocsPluginConfig(
|
|
|
70
68
|
}
|
|
71
69
|
|
|
72
70
|
// Search plugin-content-docs instances
|
|
73
|
-
if (filteredConfig[0] ===
|
|
71
|
+
if (filteredConfig[0] === plugin) {
|
|
74
72
|
const configPluginId = filteredConfig[1].id
|
|
75
73
|
? filteredConfig[1].id
|
|
76
74
|
: "default";
|
|
@@ -94,14 +92,22 @@ export default function pluginOpenAPIDocs(
|
|
|
94
92
|
context: LoadContext,
|
|
95
93
|
options: PluginOptions
|
|
96
94
|
): Plugin<LoadedContent> {
|
|
97
|
-
const {
|
|
95
|
+
const {
|
|
96
|
+
config,
|
|
97
|
+
docsPlugin = "@docusaurus/plugin-content-docs",
|
|
98
|
+
docsPluginId,
|
|
99
|
+
} = options;
|
|
98
100
|
const { siteDir, siteConfig } = context;
|
|
99
101
|
|
|
100
102
|
// Get routeBasePath and path from plugin-content-docs or preset
|
|
101
103
|
const presets: any = siteConfig.presets;
|
|
102
104
|
const plugins: any = siteConfig.plugins;
|
|
103
105
|
const presetsPlugins = presets.concat(plugins);
|
|
104
|
-
let docData: any = getDocsPluginConfig(
|
|
106
|
+
let docData: any = getDocsPluginConfig(
|
|
107
|
+
presetsPlugins,
|
|
108
|
+
docsPlugin,
|
|
109
|
+
docsPluginId
|
|
110
|
+
);
|
|
105
111
|
let docRouteBasePath = docData ? docData.routeBasePath : undefined;
|
|
106
112
|
let docPath = docData ? (docData.path ? docData.path : "docs") : undefined;
|
|
107
113
|
|
|
@@ -120,7 +126,7 @@ export default function pluginOpenAPIDocs(
|
|
|
120
126
|
|
|
121
127
|
// Override docPath if pluginId provided
|
|
122
128
|
if (pluginId) {
|
|
123
|
-
docData = getDocsPluginConfig(presetsPlugins, pluginId);
|
|
129
|
+
docData = getDocsPluginConfig(presetsPlugins, docsPlugin, pluginId);
|
|
124
130
|
docRouteBasePath = docData ? docData.routeBasePath : undefined;
|
|
125
131
|
docPath = docData ? (docData.path ? docData.path : "docs") : undefined;
|
|
126
132
|
}
|
package/src/options.ts
CHANGED