public EmbedBuilder AddBlankField(bool inline = false)
{
var field = new EmbedFieldBuilder()
.WithIsInline(inline)
.WithName(null)
.WithValue(null);
AddField(field);
return this;
}
public EmbedBuilder AddField(EmbedFieldBuilder field)
{
if (Fields.Count >= MaxFieldCount)
@@ -231,6 +242,8 @@ namespace Discord
{
private string _name;
private string _value;
private const string emptyString = "_ _";
public const int MaxFieldNameLength = 256;
public const int MaxFieldValueLength = 1024;
@@ -239,9 +252,12 @@ namespace Discord
get => _name;
set
{
if (string.IsNullOrWhiteSpace(value)) throw new ArgumentException($"Field name must not be null, empty or entirely whitespace.", nameof(Name));
if (value.Length > MaxFieldNameLength) throw new ArgumentException($"Field name length must be less than or equal to {MaxFieldNameLength}.", nameof(Name));
_name = value;
if (string.IsNullOrWhiteSpace(value))
_name = emptyString;
else if (value.Length > MaxFieldNameLength)
throw new ArgumentException($"Field name length must be less than or equal to {MaxFieldNameLength}.", nameof(Name));
else
_name = value;
}
}
@@ -251,9 +267,12 @@ namespace Discord
set
{
var stringValue = value?.ToString();
if (string.IsNullOrEmpty(stringValue)) throw new ArgumentException($"Field value must not be null or empty.", nameof(Value));
if (stringValue.Length > MaxFieldValueLength) throw new ArgumentException($"Field value length must be less than or equal to {MaxFieldValueLength}.", nameof(Value));
_value = stringValue;
if (string.IsNullOrWhiteSpace(stringValue))
_value = emptyString;
else if (stringValue.Length > MaxFieldValueLength)
throw new ArgumentException($"Field value length must be less than or equal to {MaxFieldValueLength}.", nameof(Value));