@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)

Package Sidebar

Install

npm i @typeonly/validator

Weekly Downloads

712

Version

0.6.0

License

CC0-1.0

Unpacked Size

67.7 kB

Total Files

21

Last publish

Collaborators

  • rickfaf
  • paleo