openapi-to-flowtype
openapi-to-flowtype
is a tool for generating type definitions of Flow from OpenAPI 3.0 file.
Getting started
Install package
npm i -g openapi-to-flowtype
Generating flow type definitions
$openapi-to-flowtype <YOUR SWAGGER FILE OR URL>
This command generates a file named flowtype.js includes type definitions as default.
Options
Specify an output path
You can also specify an output path with -d option
.
$openapi-to-flowtype <YOUR SWAGGER FILE PATH OR URL> -d <OUTPUT FILE PATH>
Generate types for operation titled responses as well
You can enable type generation for operation responses (if they have schema title specified) with --responses
.
$openapi-to-flowtype <YOUR SWAGGER FILE PATH OR URL> --responses
Specify a suffix for generated types
You can specify a suffix for all generated types with --suffix <suffix>
.
$openapi-to-flowtype <YOUR SWAGGER FILE PATH OR URL> -suffix <YOUR SUFFIX>
Transform property key to lower camel case
--lower-camel-case
option transforms each property keys to lower camel case.
"Cat":
will be
;
Example
swagger file like following
... components: schemas: Order: type: "object" properties: id: type: "integer" format: "int64" petId: type: "integer" format: "int64" quantity: type: "integer" format: "int32" shipDate: type: "string" format: "date-time" status: type: "string" description: "Order Status" enum: - "placed" - "approved" - "delivered" complete: type: "boolean" default: false xml: name: "Order" Category: type: "object" properties: id: type: "integer" format: "int64" name: type: "string" xml: name: "Category"...
Output will be like below
// @flow;;
Requirements
- Node 12+ is required
Tests
npm test
Testimonials
Based on swagger-to-flowtype by yayoc.