namespace ZB.MOM.WW.ScadaBridge.Commons.Entities.Templates;

public class TemplateFolder
{
    /// <summary>Database primary key.</summary>
    public int Id { get; set; }
    /// <summary>Display name for the folder.</summary>
    public string Name { get; set; }
    /// <summary>ID of the parent folder, or null for root-level folders.</summary>
    public int? ParentFolderId { get; set; }
    /// <summary>Display ordering position within the parent folder.</summary>
    public int SortOrder { get; set; }

    /// <summary>
    /// Initializes a new <see cref="TemplateFolder"/> with the specified name.
    /// </summary>
    /// <param name="name">The display name for the folder.</param>
    public TemplateFolder(string name)
    {
        Name = name ?? throw new ArgumentNullException(nameof(name));
    }
}
