openapi-json-schema
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

npm version downloads build status coverage status

openapi-json-schema

Minimalistic OpenAPI 3 ⬌ JSON Schema (draft 7) conversion.

  • This package aims at full conversion support except reference resolution, but isn't there yet. Currently supports:
    • null/nullable conversion
    • $ref's being converted #/definitions <-> #/components/schemas
    • const enum when converting to OpenAPI
    • $id/$comment info['x-id']/info['x-comment'] when converting to OpenAPI
    • PR's are welcome.
  • JSON $refs are not resolved.
  • This package has no dependencies, and will continue to have no dependencies - re: minimalistic.

Versions

  • Since v2 this is a pure ESM package, and requires Node.js >=14.13.1. It cannot be used from CommonJS.

Usage

import {
    jsonSchemaToOpenApiSchema,
    openApiSchemaToJsonSchema,
} from 'openapi-json-schema'

// JSON Schema to Open API
const openApi = jsonSchemaToOpenApiSchema( jsonSchema );

// Open API to JSON Schema
const jsonSchema = openApiSchemaToJsonSchema( openApi );

Utilities

The library exports utilities; encodeRefNameJsonSchema, decodeRefNameJsonSchema, encodeRefNameOpenApi and decodeRefNameOpenApi used to convert to/from references names, and their corresponding encoding in JSON Schema and Open API.

Package Sidebar

Install

npm i openapi-json-schema

Weekly Downloads

17,981

Version

2.0.0

License

MIT

Unpacked Size

16.9 kB

Total Files

15

Last publish

Collaborators

  • grantila