import { ApiProperty } from '@nestjs/swagger'; import { IsString, MinLength, Matches } from 'class-validator'; /** Ticket #127 — mêmes règles que [CreatePasswordDto] (inscription #118). */ export class ResetPasswordDto { @ApiProperty({ description: 'Token UUID reçu par e-mail (lien reset-password)' }) @IsString() @MinLength(1, { message: 'Token manquant' }) token: string; @ApiProperty({ description: 'Nouveau mot de passe (min 8 caractères, 1 majuscule, 1 chiffre)', minLength: 8, }) @IsString() @MinLength(8, { message: 'Le mot de passe doit contenir au moins 8 caractères' }) @Matches(/^(?=.*[A-Z])(?=.*\d)/, { message: 'Le mot de passe doit contenir au moins une majuscule et un chiffre', }) password: string; @ApiProperty({ description: 'Confirmation du nouveau mot de passe' }) @IsString() password_confirmation: string; }