using System.ComponentModel.DataAnnotations; using System.Runtime.Serialization; namespace Umbraco.Cms.Core.Models.ContentEditing; /// /// Represents a macro parameter with an editor /// [DataContract(Name = "macroParameter", Namespace = "")] public class MacroParameter { [DataMember(Name = "alias", IsRequired = true)] [Required] public string Alias { get; set; } = null!; [DataMember(Name = "name")] public string? Name { get; set; } [DataMember(Name = "sortOrder")] public int SortOrder { get; set; } /// /// The editor view to render for this parameter /// [DataMember(Name = "view", IsRequired = true)] [Required(AllowEmptyStrings = false)] public string? View { get; set; } /// /// The configuration for this parameter editor /// [DataMember(Name = "config", IsRequired = true)] [Required(AllowEmptyStrings = false)] public IDictionary? Configuration { get; set; } /// /// Since we don't post this back this isn't currently really used on the server side /// [DataMember(Name = "value")] public object? Value { get; set; } }