using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace BLAIzor.Models { public class FormDefinition { [Key] public int Id { get; set; } [Required] public int SiteInfoId { get; set; } [Required] [MaxLength(100)] public string Title { get; set; } = ""; [Required] [MaxLength(100)] public string Slug { get; set; } = ""; // URL-friendly ID like "contact-form" public string? Description { get; set; } [Required] public string JsonDefinition { get; set; } = ""; // serialized List public int Version { get; set; } = 1; public DateTime CreatedAt { get; set; } = DateTime.UtcNow; [ForeignKey(nameof(SiteInfoId))] public SiteInfo SiteInfo { get; set; } = default!; } }