Unify API route parameters, return IResult everywhere, merge picture upload DTOs and centralize validation limits

Guid and long route constraints, id/trackId parameter names, Update*Request without the New prefix,
sentence-case operation summaries, shared security scheme id and a single Limits class.
This commit is contained in:
2026-09-24 12:36:48 +02:00
parent 405df082cc
commit fcf3093ad8
38 changed files with 740 additions and 829 deletions
@@ -0,0 +1,20 @@
using FluentValidation;
using Musify.Api.DataTransferObjects;
using Musify.Application.Configuration;
namespace Musify.Api.Validators;
public sealed class PictureUploadRequestValidator : AbstractValidator<PictureUploadRequest>
{
public PictureUploadRequestValidator(UploadIntentConfiguration uploadConfiguration)
{
RuleFor(x => x.FileType)
.MustBeFileType(Uploads.PictureFileTypes);
RuleFor(x => x.ContentType)
.MustBeContentType(Uploads.PictureContentTypes);
RuleFor(x => x.ExpectedSizeBytes)
.MustBeValidUploadSize(uploadConfiguration.MaxUploadBytes);
}
}