Installation
npm i --save nestjs-translates class-validator-multi-lang class-transformer
Links
https://github.com/EndyKaufman/nestjs-translates - Source code
https://nestjs-translates.site15.ru/api - Demo application with nestjs-translates.
https://github.com/EndyKaufman/nestjs-translates-example - Example generated with nest cli
https://dev.to/endykaufman/nestjs-module-for-adding-translations-to-the-application-with-a-pipe-for-translating-validation-errors-2mf3 - Post in dev.to
https://twitter.com/KaufmanEndy/status/1498730314339954695?s=20&t=FwCcltTG-Vxut6M3JVPsCA - Twitter post
Usage
Update file in app.module.ts
import { HttpException, HttpStatus, Module } from '@nestjs/common';
import { ValidationError } from 'class-validator-multi-lang';
import {
getDefaultTranslatesModuleOptions,
TranslatesModule,
} from 'nestjs-translates';
import { join } from 'path';
import { AppController } from './app.controller';
@Module({
imports: [
TranslatesModule.forRoot(
getDefaultTranslatesModuleOptions({
localePaths: [
join(__dirname, 'assets', 'i18n'),
join(__dirname, 'assets', 'i18n', 'class-validator-messages'),
],
locales: ['en', 'ru'],
validationPipeOptions: {
transform: true,
validationError: {
target: false,
value: false,
},
transformOptions: {
strategy: 'excludeAll',
},
exceptionFactory: (errors: ValidationError[]) =>
new HttpException(errors, HttpStatus.BAD_REQUEST),
},
})
),
],
controllers: [AppController],
})
export class AppModule {}
Create dictionaries ../assets/i18n/ru.json
{
"word": "слово"
}
Top comments (0)