diff --git a/src/index.ts b/src/index.ts index 10d2ebd..6d107f1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -27,7 +27,8 @@ export const swagger = exclude = [], swaggerOptions = {}, theme = `https://unpkg.com/swagger-ui-dist@${version}/swagger-ui.css`, - autoDarkMode = true + autoDarkMode = true, + excludeMethods = ['OPTIONS'] }: ElysiaSwaggerConfig = { provider: 'scalar', scalarVersion: '1.12.5', @@ -38,7 +39,8 @@ export const swagger = path: '/swagger' as Path, exclude: [], swaggerOptions: {}, - autoDarkMode: true + autoDarkMode: true, + excludeMethods: ['OPTIONS'] } ) => (app: Elysia) => { @@ -96,6 +98,8 @@ export const swagger = totalRoutes = routes.length routes.forEach((route: InternalRoute) => { + if (excludeMethods.includes(route.method)) return + registerSchemaPath({ schema, hook: route.hooks, diff --git a/src/types.ts b/src/types.ts index 9ca1876..a137917 100644 --- a/src/types.ts +++ b/src/types.ts @@ -100,4 +100,9 @@ export interface ElysiaSwaggerConfig { * Using poor man dark mode 😭 */ autoDarkMode?: boolean + + /** + * Exclude methods from Swagger + */ + excludeMethods?: string[] }