Skip to content

A utility to convert JSON schema (draft 4) to Joi validation schema (typescript source code).

License

Notifications You must be signed in to change notification settings

GlobeFishNG/json-schema-to-joi

 
 

Repository files navigation

json-schema-to-joi

A utility to convert JSON schema (draft 4) to Joi validation schema.

Usage

Client

json-schema-to-joi 4.1.0
  Usage: json2joi [--banner, -b] [BANNER] [--batch] [SECTION]
          [--title] [TITLE] [--cwd] [CWD] [--useDeprecatedJoi] [--useExtendedJoi]
          [--importStatement] [IMPORT]
          [--input, -i] [IN_FILE] [--output, -o] [OUT_FILE]

  optional parameters:
    -h, --help                  Show this help message and exit.
    -v, --version               Show the program version.
    --title TITLE               The title used as the Joi schema variable name
                                if the JSON schema doesn't have a title itself.
                                TITLE is meaningless when "--batch" option is present.
    --cwd CWD                   CWD is used as the root directory of JSON sub schemas.
    --joiName JOINAME           JOINAME is the module name of joi library.
                                  Default: "Joi".
    --extendedJoiName EJOINAME  EJOINAME is the module name of extended joi library.
                                If you don't want to use deprecated joi extension to support
                                "allOf" and "oneOf", please leave it empty.
    --importStatement IMPORT    IMPORT is the statement(s) to import joi library and extended joi library.
                                It can be multiple statements.
                                  Default: "import * as Joi from '@hapi/joi';"
                                  If "useDeprecatedJoi" is true ,IMPORT will be "import * as Joi from 'joi';".
                                  If "extendedJoiName" is set, another IMPORT statement must be added.
    --useDeprecatedJoi          If the option is true, the prog will use deprecated library 'joi'
                                instead of '@hapi/joi'
                                  Default: false.
    --batch SECTION             Use the SECTION of the INPUT to generate a batch of JSON schemas.
                                  Example:
                                    "definitions" for standard JSON schema files.
                                    "components.schemas" for OpenAPI 3.x files.
    -b, --banner BANNER         Add BANNER in the beginning of the output.
    -i, --input  INPUT          The input JSON schema file.
    -o, --output OUTPUT         The output source file including generated Joi schema(s).
                                If OUTPUT is absent, the prog will write to the standard output

Library

API Docs generated by typedoc.

About

A utility to convert JSON schema (draft 4) to Joi validation schema (typescript source code).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 91.0%
  • JavaScript 7.3%
  • Shell 1.7%