using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using TeleWave.Domain.Broadcast;

namespace TeleWave.Infrastructure.Persistence.Configurations;

public class BumperAssetConfiguration : IEntityTypeConfiguration<BumperAsset>
{
    public void Configure(EntityTypeBuilder<BumperAsset> builder)
    {
        builder.Property(x => x.Signature).IsRequired().HasMaxLength(128);

        // Кэш-ключ заставки: одна отрендеренная пара «из→в» при данной сигнатуре оформления.
        builder.HasIndex(x => new
        {
            x.FromShowId,
            x.ToShowId,
            x.Signature,
        });
    }
}
