Package Exports
- @scalar/openapi-upgrader
- @scalar/openapi-upgrader/2.0-to-3.0
- @scalar/openapi-upgrader/3.0-to-3.1
- @scalar/openapi-upgrader/3.1-to-3.2
Readme
Scalar OpenAPI Upgrader
Upgrade all your OpenAPI documents to the latest and greatest version
Installation
npm add @scalar/openapi-upgrader
Usage
import { upgrade } from '@scalar/openapi-upgrader'
const document = upgrade({
swagger: '2.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
})
console.log(document.openapi)
// Output: 3.1.1
Experimental: Upgrade to OpenAPI 3.2
import { upgrade } from '@scalar/openapi-upgrader'
const OPENAPI_DOCUMENT = {
swagger: '2.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
}
// We need to explicitly pass '3.2' to upgrade to OpenAPI 3.2
const document = upgrade(OPENAPI_DOCUMENT, '3.2')
console.log(document.openapi)
// Output: 3.2.0
CLI
npx @scalar/cli document upgrade swagger.json --output openapi.json
From Swagger 2.0 to OpenAPI 3.0
import { upgradeFromTwoToThree } from '@scalar/openapi-upgrader/2.0-to-3.0'
const document = upgradeFromTwoToThree({
swagger: '2.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
})
console.log(document.openapi)
// Output: 3.0.4
From OpenAPI 3.0 to OpenAPI 3.1
import { upgradeFromThreeToThreeOne } from '@scalar/openapi-upgrader/3.0-to-3.1'
const document = upgradeFromThreeToThreeOne({
openapi: '3.0.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
})
console.log(document.openapi)
// Output: 3.1.1
From OpenAPI 3.1 to OpenAPI 3.2
import { upgradeFromThreeOneToThreeTwo } from '@scalar/openapi-upgrader/3.1-to-3.2'
const document = upgradeFromThreeOneToThreeTwo({
openapi: '3.1.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
})
console.log(document.openapi)
// Output: 3.2.0
Community
We are API nerds. You too? Let's chat on Discord: https://discord.gg/scalar
License
The source code in this repository is licensed under MIT.