Permite generar un archivo json de acuerdo a Openapi 3.0.0 apartir de los comentarios en un archivo
/**
* @post /clients
* Registra un nuevo cliente
* @body {
* phone: 2221234567, // celular del cliente
* full_name: "Jorge Hernández", // nombre completo
* }
*
* @200{
* phone: "222" // celular del cliente
* full_name: "aaa", // nombre completo
* id_cliente:1,
* uuid:"123123-123123-13",
* }
* */
// tú código normal
router.post("/clients"
Esto genera un path de la siguiente forma
/clients:
post:
summary: 'Registra un nuevo cliente '
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
phone:
example: '2221234567'
type: string
required:
- phone
parameters: []
responses:
'200':
content:
application/json:
schema:
type: object
properties:
phone:
example: '222'
type: string
id_cliente:
example: '1'
type: number
uuid:
example: 123123-123123-13
type: string
npm i jopenapi
const j=require("jopenapi")
const open=new j.OpenApi();
await open.setFiles("./src/Api/", { fileFilter: "*Controller.ts" });
await p.generate("./openapi3.0.json");