using GymLogAI.Core.Entities; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace GymLogAI.Persistence.Configurations; public sealed class UserConfiguration : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder builder) { builder.ToTable("users"); builder.HasKey(x => x.Id); builder.Property(x => x.Id).ValueGeneratedNever(); builder.Property(x => x.TelegramUserId).IsRequired(); builder.Property(x => x.Username).HasMaxLength(128); builder.Property(x => x.FirstName).HasMaxLength(128); builder.Property(x => x.LastName).HasMaxLength(128); builder.Property(x => x.CreatedAtUtc).IsRequired(); builder.HasIndex(x => x.TelegramUserId).IsUnique(); } }