2.0.0 • Published 1 year ago

openapi-json-schema v2.0.0

Weekly downloads
108
License
MIT
Repository
github
Last release
1 year ago

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
    • constenum when converting to OpenAPI
    • $id/$commentinfo['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.