Converts Swagger documents from version 1.x to version 2.0
npm install swagger-converter[![NPM version][npm-image]][npm-link]
[![Build status][actions-image]][actions-link]
[![Coverage Status][codecov-image]][codecov-link]
[![Dependency status][deps-image]][deps-link]
[![devDependency status][devdeps-image]][devdeps-link]

> Converts Swagger documents from version 1.x to version 2.0
Use npm
``shell`
npm install swagger-converter --save
It's recommended to use command line tools like [swagger-tools][swagger-tools-npm] or [swagger-spec-converter][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 from resourceListing as keys and resources as valuesoptions
- (optional) - See options for the full list of options
`javascript
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
`javascript
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"
}
*/
`
- collectionFormat[string] - assigned to every array parameter.buildTagsFromPaths
- [bool] - ignore resourcePath and buid tags from resource path. Default: false.
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
MIT. See LICENSE
[npm-image]: https://img.shields.io/npm/v/swagger-converter.svg?style=flat
[npm-link]: https://npmjs.org/package/swagger-converter
[actions-image]: https://github.com/apigee-127/swagger-converter/workflows/CI/badge.svg?branch=master
[actions-link]: https://github.com/apigee-127/swagger-converter/actions?query=branch%3Amaster
[codecov-image]: https://codecov.io/gh/apigee-127/swagger-converter/branch/master/graph/badge.svg
[codecov-link]: https://codecov.io/gh/apigee-127/swagger-converter
[deps-image]: https://img.shields.io/david/apigee-127/swagger-converter.svg?style=flat
[deps-link]: https://david-dm.org/apigee-127/swagger-converter
[devdeps-image]: https://img.shields.io/david/dev/apigee-127/swagger-converter.svg?style=flat
[devdeps-link]: https://david-dm.org/apigee-127/swagger-converter#info=devDependencies
[swagger-tools-npm]: https://www.npmjs.com/package/swagger-tools
[swagger-spec-converter]: https://github.com/lucybot/api-spec-converter