import { ApiProperty } from '@nestjs/swagger'; import { IsNumberString, MaxLength, MinLength } from 'class-validator'; import { i18nValidationMessage as i18n } from 'nestjs-i18n'; import { DEFAULT_OTP_LENGTH } from '~/common/modules/otp/constants'; export class VerifyOtpRequestDto { @ApiProperty({ example: '111111' }) @IsNumberString( { no_symbols: true }, { message: i18n('validation.IsNumberString', { path: 'general', property: 'auth.otp' }) }, ) @MaxLength(DEFAULT_OTP_LENGTH, { message: i18n('validation.MaxLength', { path: 'general', property: 'auth.otp', length: DEFAULT_OTP_LENGTH }), }) @MinLength(DEFAULT_OTP_LENGTH, { message: i18n('validation.MinLength', { path: 'general', property: 'auth.otp', length: DEFAULT_OTP_LENGTH }), }) otp!: string; }