You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This package provides conversion functions between core-types and JSON Schema (and Open API through the openapi-json-schema package).
You probably don't want to use this package directly, but rather typeconv which uses this package to convert between TypeScript, JSON Schema, GraphQL and Open API.
There are four main conversion functions, convertCoreTypesToJsonSchema, convertJsonSchemaToCoreTypes, convertCoreTypesToOpenApi and convertOpenApiTpCoreTypes, all returning a wrapped value, of the type ConversionResult.
This package also re-exports jsonSchemaTypeToOpenApi and openApiToJsonSchemaType from openapi-json-schema.
core-types to JSON Schema
import{convertCoreTypesToJsonSchema}from'core-types-json-schema'letdoc;// This core-types document comes from somewhereconst{data: jsonSchema}=convertCoreTypesToJsonSchema(doc);
You can provide options as a second argument on the type:
These fields will be used when constructing a comment ($comment) at the root of the JSON Schema, describing the context of where the schema comes from.
JSON Schema to core-types
import{convertJsonSchemaToCoreTypes}from'core-types-json-schema'letjsonSchema;// This JSON Schema comes from somewhereconst{data: doc}=convertJsonSchemaToCoreTypes(jsonSchema);
core-types to Open API
import{convertCoreTypesToOpenApi}from'core-types-json-schema'letdoc;// This core-types document comes from somewhereconst{data: jsonSchema}=convertCoreTypesToOpenApi(doc);
You can provide options as a second argument on the type:
The title and version are required for Open API. The schemaVersion defaults to 3.0.0.
Open API to core-types
import{convertOpenApiTpCoreTypes}from'core-types-json-schema'letopenApiSchema;// This Open API schema comes from somewhereconst{data: doc}=convertOpenApiTpCoreTypes(openApiSchema);