[Feature] Components V2 (#3065)

* oh well. at least it runs

* well that's some breakings

* all the models (i think)

* barebones builder impl

* commit

* initial take on `WithX` component builder design

* actually usable stuff now

* few more changes

* fixes, changes, syntax sugar

* rework message flags + auto add `ComponentsV2`

* apparently it's also nullable

* fix build

* webhook component supports + builder validations + some xmldoc

* `ResolvedUnfurledMediaItem` + fix missing accessory on sections

* missing xmldoc

* fix modal + whatever change

* yeet unused dep
This commit is contained in:
Mihail Gribkov
2025-04-26 23:40:03 +03:00
committed by GitHub
parent 5e4a844adf
commit ba78e0c1f0
102 changed files with 2852 additions and 692 deletions

View File

@@ -1,19 +1,21 @@
using Newtonsoft.Json;
namespace Discord.API.Rest
namespace Discord.API.Rest;
internal class ModifyMessageParams
{
[JsonObject(MemberSerialization = MemberSerialization.OptIn)]
internal class ModifyMessageParams
{
[JsonProperty("content")]
public Optional<string> Content { get; set; }
[JsonProperty("embeds")]
public Optional<API.Embed[]> Embeds { get; set; }
[JsonProperty("components")]
public Optional<API.ActionRowComponent[]> Components { get; set; }
[JsonProperty("flags")]
public Optional<MessageFlags?> Flags { get; set; }
[JsonProperty("allowed_mentions")]
public Optional<AllowedMentions> AllowedMentions { get; set; }
}
[JsonProperty("content")]
public Optional<string> Content { get; set; }
[JsonProperty("embeds")]
public Optional<Embed[]> Embeds { get; set; }
[JsonProperty("components")]
public Optional<IMessageComponent[]> Components { get; set; }
[JsonProperty("flags")]
public Optional<MessageFlags?> Flags { get; set; }
[JsonProperty("allowed_mentions")]
public Optional<AllowedMentions> AllowedMentions { get; set; }
}