feat: add openapi and swagger support

This commit is contained in:
Mauricio Siu
2024-06-22 20:17:55 -06:00
parent f0eecf354b
commit ad806437af
26 changed files with 1862 additions and 118 deletions

View File

@@ -23,6 +23,8 @@ import { dockerRouter } from "./routers/docker";
import { composeRouter } from "./routers/compose";
import { registryRouter } from "./routers/registry";
import { clusterRouter } from "./routers/cluster";
import { generateOpenAPIDocumentFromTRPCRouter } from "openapi-trpc";
/**
* This is the primary router for your server.
*
@@ -39,6 +41,7 @@ export const appRouter = createTRPCRouter({
redis: redisRouter,
mongo: mongoRouter,
mariadb: mariadbRouter,
compose: composeRouter,
user: userRouter,
domain: domainRouter,
destination: destinationRouter,
@@ -50,10 +53,15 @@ export const appRouter = createTRPCRouter({
security: securityRouter,
redirects: redirectsRouter,
port: portRouter,
compose: composeRouter,
registry: registryRouter,
cluster: clusterRouter,
});
// export type definition of API
export type AppRouter = typeof appRouter;
export const doc = generateOpenAPIDocumentFromTRPCRouter(appRouter, {
pathPrefix: "/api/trpc",
processOperation(op) {
op.security = [{ bearerAuth: [] }];
},
});