/// <summary>
 /// Constructor
 /// </summary>
 /// <param name="builder"></param>
 public ConstraintDefinition(ConstraintBuilder builder)
 {
     if (builder == null)
     {
         return;
     }
     DisplayHint = builder.DisplayHint;
     if (builder.HasDefault && builder.Default != null)
     {
         DefaultValue = JsonConvert.SerializeObject(builder.Default);
     }
     if (builder.HasMin && builder.Min != null)
     {
         MinValue = JsonConvert.SerializeObject(builder.Min);
     }
     if (builder.HasMax && builder.Max != null)
     {
         MaxValue = JsonConvert.SerializeObject(builder.Max);
     }
     if (builder.HasPossibleValuesList)
     {
         PossibleValues = builder.Values?.Select(JsonConvert.SerializeObject).ToArray();
     }
 }
 /// <summary>
 /// Set display hint
 /// </summary>
 /// <param name="hint"></param>
 /// <returns></returns>
 public ConstraintBuilder Hint(DisplayHintEnum hint)
 {
     DisplayHint = hint;
     return(this);
 }