JSPM

  • Created
  • Published
  • Downloads 48
  • Score
    100M100P100Q73239F
  • License Apache-2.0

Package Exports

  • @emdgroup/tapir

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@emdgroup/tapir) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

tapir

Generate TypeScript assertions and type guards from OpenAPI specs

Synopsis

yarn add --dev @emdgroup/tapir
yarn tapir openapi.yml dir/to/lib/

# or use - to read from stdin
cat openapi.yml | yarn tapir - dist/

This will create the following files:

dist/
  types.d.ts
  types.js

The generated files are self-contained and tree-shakable. There are no runtime dependencies on tapir or any other package.

The following properties should be set in the package.json file to make the package work across node and browser environments:

{
    "types": "dist/types.d.ts",
    "main": "dist/types.js"
}

Supported OpenAPI schemas

  • Responses
  • Request bodies
  • Path parameters
  • Query parameters

Missing:

  • Headers

Supported Input Validation

Tested:

  • Core Types: boolean, string, number, integer
    • enum
    • nullable
    • minLength
    • maxLength
    • minimum
    • maximum
    • exclusiveMinimum
    • exclusiveMaximum
    • multipleOf
    • format
    • not
    • pattern
  • Objects:
    • required
    • allOf, anyOf and oneOf
    • additionalProperties with a boolean
  • Arrays:
    • items
    • minItems
    • maxItems
    • uniqueItems

Untested:

  • Any Type
  • Core Types: boolean, string, number, integer
    • readOnly
    • writeOnly
  • Objects:
    • additionalProperties with a schema
    • minProperties
    • maxProperties
    • xml