@typeonly/validator
TypeScript icon, indicating that this package has built-in type declarations

0.6.0 • Public • Published

@typeonly/validator

Build Status npm Type definitions GitHub

TypeOnly aims to be the pure typing part of TypeScript. This package provides an API to validate JSON and JavaScript objects with TypeScript definitions, using the TypeOnly parser.

Tutorial: How to programmatically validate JSON data

At first, it is necessary to follow the tutorial of TypeOnly in order to generate a .to.json file based on your TypeScript definitions. After this step, you have the following file: dist/types.to.json.

Now, add @typeonly/validator to the project:

npm install @typeonly/validator

Create a file src/validate-main.js with the following content:

// src/validate-main.js
const { createValidator } = require("@typeonly/validator");

const data = {
  color: "green",
  shape: {
    kind: "circle",
    x: 100,
    y: 100,
    radius: 50
  }
};

const validator = createValidator({
  bundle: require("./types.to.json")
});
const result = validator.validate("./drawing", "Drawing", data);
console.log(result);

This code validates the data object using RTO files generated by the TypeOnly parser.

Execute it:

$ node src/validate-main.js
{ valid: true }

Contribute

With VS Code, our recommanded plugin is:

  • TSLint from Microsoft (ms-vscode.vscode-typescript-tslint-plugin)

/@typeonly/validator/

    Package Sidebar

    Install

    npm i @typeonly/validator

    Weekly Downloads

    330

    Version

    0.6.0

    License

    CC0-1.0

    Unpacked Size

    67.7 kB

    Total Files

    21

    Last publish

    Collaborators

    • rickfaf
    • paleo