1.0.9 • Published 2 years ago

swagger-transformer v1.0.9

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Swagger Transformer

This package uses decorators to generate the Swagger file template based on AJV validator.

How to use

  • Create a sg-transformer-config.jsonfile based on sg-transformer-config.example.json in project root;
  • Use the decorators tô mapping your paths;

        // Controller
        @Post('/dogs')
        @Tags('dogs', ...)
        @ajvBodySchema({ schema: dogsRequestBody })
        @ajvResponseSchema({ httpCode: 200, schema: dogsResponsesSchema, description: "" }, {...}, {...})
        public async create(req: Request, res: Response){
            ...
        }
        
        @Get('/dogs/{dogName}')
        @Tags('dogs')
        @ajvPath({name: "dogName", schema: { type: "string", ... } })
        @ajvQuery({name: "ageFilter", schema: { type: "number", ... } })
        @ajvResponseSchema({ httpCode: 200, schema: dogsResponsesSchema, description: "" }, {...}, {...})
        public async list(req: Request, res: Response){
            ...
        }

    After register all decorators, call SwaggerGenerate.init().generate({}); to swagger-transfomer binary generate a output.

  • Run yarn swagger-transformer gen -a ./src/AppExample.ts to generate a Swagger file.

WIP

  • Some types of AJV are not implemented in Transformer.
1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago