Skip to content

Commit e720c60

Browse files
committed
feat: clearUnusedSchemas option
1 parent a4016a8 commit e720c60

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/core/generateOpenApiSpec.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import path from "node:path";
22
import getPackageMetadata from "@omer-x/package-metadata";
3-
import clearUnusedSchemas from "./clearUnusedSchemas";
3+
import clearUnusedSchemasFunction from "./clearUnusedSchemas";
44
import { filterDirectoryItems, getDirectoryItems } from "./dir";
55
import isDocumentedRoute from "./isDocumentedRoute";
66
import { findAppFolderPath, getRouteExports } from "./next";
@@ -20,6 +20,7 @@ type GeneratorOptions = {
2020
servers?: ServerObject[],
2121
security?: OpenApiDocument["security"],
2222
securitySchemes?: ComponentsObject["securitySchemes"],
23+
clearUnusedSchemas?: boolean,
2324
};
2425

2526
export default async function generateOpenApiSpec(schemas: Record<string, ZodType>, {
@@ -30,6 +31,7 @@ export default async function generateOpenApiSpec(schemas: Record<string, ZodTyp
3031
servers,
3132
security,
3233
securitySchemes,
34+
clearUnusedSchemas: clearUnusedSchemasOption = true,
3335
}: GeneratorOptions = {}) {
3436
const verifiedOptions = verifyOptions(includeOption, excludeOption);
3537
const appFolderPath = await findAppFolderPath();
@@ -69,7 +71,7 @@ export default async function generateOpenApiSpec(schemas: Record<string, ZodTyp
6971
version: metadata.version,
7072
},
7173
servers,
72-
...clearUnusedSchemas(pathsAndComponents),
74+
...(clearUnusedSchemasOption ? clearUnusedSchemasFunction(pathsAndComponents) : pathsAndComponents),
7375
security,
7476
tags: [],
7577
} as Omit<OpenApiDocument, "components"> & Required<Pick<OpenApiDocument, "components">>;

0 commit comments

Comments
 (0)