Swagger Converter
Converts Swagger documents from version
1.x
to version2.0
Installation
Use npm
npm install swagger-converter --save
Usage
It's recommended to use command line tools like swagger-tools
or swagger-spec-converter
for converting your spec. This module will not handle validation and if your spec is not valid can produce invalid spec.
convert function
convert
accept accept following arguments:
resourceListing
(required) is Swagger 1.x entry point file.apiDeclarations
(required) is a map with paths fromresourceListing
as keys and resources as valuesoptions
(optional) - See options for the full list of options
var swaggerConverter = require('swagger-converter');
var resourceListing = require('/path/to/petstore/index.json');
var apiDeclarations = {
'/pet': require('/path/to/petstore/pet.json'),
'/user': require('/path/to/petstore/user.json'),
'/store': require('/path/to/petstore/store.json'),
};
var swagger2Document = swaggerConverter.convert(
resourceListing,
apiDeclarations,
);
console.log(JSON.stringify(swagger2Document, null, 2));
listApiDeclarations function
listApiDeclarations
function accept following arguments:
sourceUrl
(required) - source URL for root Swagger 1.x documentresourceListing
(required) - root Swagger 1.x document
var swaggerConverter = require('swagger-converter');
var resourceListing = require('/path/to/petstore/index.json');
var apiDeclarations = swaggerConverter.listApiDeclarations(
'http://test.com/api-docs',
resourceListing,
);
console.log(JSON.stringify(apiDeclarations, null, 2));
/*
{
"/pet": "http://test.com/api-docs/pet",
"/user": "http://test.com/api-docs/user",
"/store": "http://test.com/api-docs/store"
}
*/
Options
collectionFormat
[string] - assigned to every array parameter.buildTagsFromPaths
[bool] - ignoreresourcePath
and buid tags from resourcepath
. Default: false.
Development
Install dependencies with npm install
command and use npm test
to run the test. Tests will fail if you break coding style.
Building for browser
Just run this command to make a new browser.js
npm run build
License
MIT. See LICENSE