nestjs-valibot
TypeScript icon, indicating that this package has built-in type declarations

0.0.9 • Public • Published

nestjs-valibot

Features

ValibotValidationPipe

1. define valibot pipe globally

import { ValibotValidationPipe } from 'nestjs-valibot';

@Module({
  providers: [
    {
      provide: APP_PIPE,
      useClass: ValibotValidationPipe,
    },
  ],
})
export class AppModule {}

or

// main.ts
app.useGlobalPipes(new ValibotValidationPipe());

2. create DTO

// app.module.ts
import * as v from 'valibot';
import { createDto } from 'nestjs-valibot';

const schema = v.object({
  page: v.number(),
});

export class GetRowDto extends createDto(schema) {}

3. use it

import { GetRowDto } from './app.dto';

@Controller()
export class AppController {
  constructor(private readonly appService: AppService) {}

  @Post()
  getPage(@Body() { page }: GetRowDto) {
    return page;
  }
}

TODO

  • [x] create pipe to connect valibot output to nestjs
  • [x] create module that is customizable

Readme

Keywords

none

Package Sidebar

Install

npm i nestjs-valibot

Weekly Downloads

14

Version

0.0.9

License

MIT

Unpacked Size

7.39 kB

Total Files

6

Last publish

Collaborators

  • bino0216