// using System; using BirthList.Infrastructure.Persistence; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace BirthList.Infrastructure.Migrations { [DbContext(typeof(RegistryDbContext))] [Migration("20260517162502_AddUserActionLog")] partial class AddUserActionLog { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.26") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); modelBuilder.Entity("BirthList.Domain.Entities.ItemContribution", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("Amount") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ContributedAtUtc") .HasColumnType("datetimeoffset"); b.Property("CurrencyCode") .IsRequired() .HasMaxLength(3) .HasColumnType("nvarchar(3)"); b.Property("RegistryItemId") .HasColumnType("uniqueidentifier"); b.Property("TransferMessage") .IsRequired() .HasMaxLength(500) .HasColumnType("nvarchar(500)"); b.Property("UserId") .IsRequired() .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("RegistryItemId"); b.ToTable("ItemContributions"); }); modelBuilder.Entity("BirthList.Domain.Entities.ItemPurchase", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("PurchasedAtUtc") .HasColumnType("datetimeoffset"); b.Property("Quantity") .HasColumnType("int"); b.Property("RegistryItemId") .HasColumnType("uniqueidentifier"); b.Property("UserId") .IsRequired() .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("RegistryItemId"); b.ToTable("ItemPurchases"); }); modelBuilder.Entity("BirthList.Domain.Entities.PlatformOwner", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int"); SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("AssignedAtUtc") .HasColumnType("datetimeoffset"); b.Property("UserId") .IsRequired() .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("UserId") .IsUnique(); b.ToTable("PlatformOwners"); }); modelBuilder.Entity("BirthList.Domain.Entities.Registry", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("BabyName") .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("BirthDate") .HasColumnType("date"); b.Property("CreatedAtUtc") .HasColumnType("datetimeoffset"); b.Property("CurrencyCode") .IsRequired() .HasMaxLength(3) .HasColumnType("nvarchar(3)"); b.Property("HeaderContentHtml") .HasColumnType("nvarchar(max)"); b.Property("PublicLinkCode") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("RegistryType") .HasColumnType("int"); b.Property("ShippingAddress") .HasColumnType("nvarchar(max)"); b.Property("ThemeKey") .IsRequired() .HasMaxLength(100) .HasColumnType("nvarchar(100)"); b.Property("Title") .IsRequired() .HasMaxLength(250) .HasColumnType("nvarchar(250)"); b.HasKey("Id"); b.HasIndex("PublicLinkCode") .IsUnique(); b.ToTable("Registries"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryAdmin", b => { b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.Property("UserId") .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("AddedAtUtc") .HasColumnType("datetimeoffset"); b.HasKey("RegistryId", "UserId"); b.ToTable("RegistryAdmins"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryAdminInvite", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ExpiresAtUtc") .HasColumnType("datetimeoffset"); b.Property("RedeemedAtUtc") .HasColumnType("datetimeoffset"); b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.Property("SentToEmail") .HasMaxLength(320) .HasColumnType("nvarchar(320)"); b.Property("Token") .IsRequired() .HasMaxLength(120) .HasColumnType("nvarchar(120)"); b.HasKey("Id"); b.HasIndex("RegistryId"); b.HasIndex("Token") .IsUnique(); b.ToTable("RegistryAdminInvites"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("CreatedAtUtc") .HasColumnType("datetimeoffset"); b.Property("CurrencyCode") .IsRequired() .HasMaxLength(3) .HasColumnType("nvarchar(3)"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DesiredQuantity") .HasColumnType("int"); b.Property("IsGiven") .HasColumnType("bit"); b.Property("MoneyFulfilledAmount") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("Name") .IsRequired() .HasMaxLength(300) .HasColumnType("nvarchar(300)"); b.Property("ParticipationAllowed") .HasColumnType("bit"); b.Property("ParticipationTargetAmount") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("PictureUrl") .HasMaxLength(2048) .HasColumnType("nvarchar(2048)"); b.Property("PreferSecondHand") .HasColumnType("bit"); b.Property("PriceAmount") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("ProductUrl") .HasMaxLength(2048) .HasColumnType("nvarchar(2048)"); b.Property("PurchasedQuantity") .HasColumnType("int"); b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("RegistryId"); b.ToTable("RegistryItems"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistrySettings", b => { b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.Property("BankAccountBic") .HasMaxLength(11) .HasColumnType("nvarchar(11)"); b.Property("BankAccountDisplayName") .HasMaxLength(120) .HasColumnType("nvarchar(120)"); b.Property("BankAccountIban") .HasMaxLength(34) .HasColumnType("nvarchar(34)"); b.Property("ShowBankAccountName") .HasColumnType("bit"); b.HasKey("RegistryId"); b.ToTable("RegistrySettings"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryVisit", b => { b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.Property("UserId") .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.Property("LastVisitedAtUtc") .HasColumnType("datetimeoffset"); b.HasKey("RegistryId", "UserId"); b.ToTable("RegistryVisits"); }); modelBuilder.Entity("BirthList.Domain.Entities.UserActionLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ActionType") .HasColumnType("int"); b.Property("Amount") .HasPrecision(18, 2) .HasColumnType("decimal(18,2)"); b.Property("CreatedAtUtc") .HasColumnType("datetimeoffset"); b.Property("Details") .HasMaxLength(500) .HasColumnType("nvarchar(500)"); b.Property("Quantity") .HasColumnType("int"); b.Property("RegistryId") .HasColumnType("uniqueidentifier"); b.Property("RegistryItemId") .HasColumnType("uniqueidentifier"); b.Property("UserId") .IsRequired() .HasMaxLength(450) .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("RegistryId"); b.ToTable("UserActionLogs"); }); modelBuilder.Entity("BirthList.Domain.Entities.ItemContribution", b => { b.HasOne("BirthList.Domain.Entities.RegistryItem", "RegistryItem") .WithMany("Contributions") .HasForeignKey("RegistryItemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("RegistryItem"); }); modelBuilder.Entity("BirthList.Domain.Entities.ItemPurchase", b => { b.HasOne("BirthList.Domain.Entities.RegistryItem", "RegistryItem") .WithMany("Purchases") .HasForeignKey("RegistryItemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("RegistryItem"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryAdmin", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithMany("Admins") .HasForeignKey("RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryAdminInvite", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithMany("AdminInvites") .HasForeignKey("RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryItem", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithMany("Items") .HasForeignKey("RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistrySettings", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithOne() .HasForeignKey("BirthList.Domain.Entities.RegistrySettings", "RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryVisit", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithMany("Visits") .HasForeignKey("RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.UserActionLog", b => { b.HasOne("BirthList.Domain.Entities.Registry", "Registry") .WithMany("ActionLogs") .HasForeignKey("RegistryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Registry"); }); modelBuilder.Entity("BirthList.Domain.Entities.Registry", b => { b.Navigation("ActionLogs"); b.Navigation("AdminInvites"); b.Navigation("Admins"); b.Navigation("Items"); b.Navigation("Visits"); }); modelBuilder.Entity("BirthList.Domain.Entities.RegistryItem", b => { b.Navigation("Contributions"); b.Navigation("Purchases"); }); #pragma warning restore 612, 618 } } }