import { Transform } from 'class-transformer'; import { IsString, Length } from 'class-validator'; /** * DTO for `PATCH /dashboard/tabs/:id` (quick-260923-ad9, Task 2). * * `name` wird VOR der Längenprüfung beschnitten (führende/nachgestellte * Leerräume zählen nicht mit) — ein reiner Leerraum-Name schlägt danach an * `@Length(1, 40)` fehl. Die Obergrenze von 40 Zeichen ist ein Riegel gegen * Massenanfragen, kein UI-Detail (T-AD9-06). */ export class RenameDashboardDto { @Transform(({ value }) => (typeof value === 'string' ? value.trim() : value)) @IsString() @Length(1, 40) name!: string; }