import { IsString, Matches, MaxLength } from 'class-validator'; /** * Body von `POST /users/me/release-seen` (quick-260925-bow, D-05). * * Nur die kanonische Form `X.Y.Z` (ohne `v`, ohne fuehrende Nullen, ohne * Describe-Anhang) — so, wie `GET /users/me/release-notice` sie als * `currentRelease` liefert. Die Methode im Controller prueft zusaetzlich * `parseReleaseVersion(version) === version` und "nicht ueber der laufenden * Version", weil Unit-Tests sie ohne ValidationPipe aufrufen. */ export class ReleaseSeenDto { @IsString() @MaxLength(32) @Matches(/^(0|[1-9]\d{0,5})\.(0|[1-9]\d{0,5})\.(0|[1-9]\d{0,5})$/) version!: string; }