import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; import { IsEmail, IsOptional, IsString, MaxLength } from 'class-validator'; /** * Demande d'effacement (RGPD art. 17). * * Le corps de la requête n'était pas validé : `confirmEmail` arrivait en * `any`, et une valeur absente déclenchait une comparaison sur `undefined` * remontée en erreur 500. */ export class DeleteAccountDto { @ApiProperty({ example: 'personne@example.com', description: "Adresse du compte, ressaisie pour confirmer un acte irréversible", }) @IsEmail({}, { message: 'Une adresse email valide est requise pour confirmer.' }) confirmEmail: string; @ApiPropertyOptional({ example: "Je n'utilise plus le service", description: "Motif facultatif. La personne n'a pas à le justifier (art. 17.1).", }) @IsOptional() @IsString() @MaxLength(500) reason?: string; }