using FluentValidation;

namespace TeleWave.Application.Media.Register;

public sealed class RegisterMediaAssetCommandValidator
    : AbstractValidator<RegisterMediaAssetCommand>
{
    public RegisterMediaAssetCommandValidator()
    {
        RuleFor(x => x.SourceToken).NotEmpty();
        RuleFor(x => x.OriginalFileName)
            .NotEmpty()
            .MaximumLength(512)
            .Must(MediaFormats.IsAllowed)
            .WithMessage("Неподдерживаемое расширение файла.");
    }
}
