1.12.5 • Published 2 years ago

ts-transformer-fastest-validator v1.12.5

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Build Status Downloads

ts-transformer-fastest-validator NPM version

A TypeScript custom transformer to obtain json schema for fastest-validator from TypeScript interface

$ npm install ts-transformer-fastest-validator --save

How to use directly with fastest-validator

import { convertToSchema } from 'ts-transformer-fastest-validator';
import Validator from 'fastest';

interface IExample {
  str: string;
}

const v = new Validator();
v.validate({ str: 'string' }, convertToSchema<IExample>());

How to use with Moleculer

import { convertToSchema } from 'ts-transformer-fastest-validator';

interface IUser {
	name: string;
}

const GreeterService: ServiceSchema = {
  actions: {
    welcome: {
      params: convertToSchema<IUser>(),
      handler({ params: user }: Context<IUser>) {
        return `Welcome, ${user.name}`;
      }
    }
  }
}

How to use the custom transformer

Unfortunately, TypeScript itself does not currently provide any easy way to use custom transformers (See https://github.com/Microsoft/TypeScript/issues/14419).

For ttypescript

See ttypescript's README for how to use this with module bundlers such as webpack or Rollup.

// tsconfig.json
{
  "compilerOptions": {
    // ...
    "plugins": [
      { "transform": "ts-transformer-fastest-validator/transformer" }
    ]
  },
  // ...
}

What can be transformed

Take a look at tests for all possibilities.

License

MIT

1.12.3

2 years ago

1.12.2

2 years ago

1.12.5

2 years ago

1.12.4

2 years ago

1.12.1

2 years ago

1.12.0

2 years ago

0.6.5

5 years ago