| @@ -57,4 +57,9 @@ public class ForumChannelProperties : TextChannelProperties | |||||
| /// Gets or sets the rule used to order posts in forum channels. | /// Gets or sets the rule used to order posts in forum channels. | ||||
| /// </summary> | /// </summary> | ||||
| public Optional<ForumSortOrder> DefaultSortOrder { get; set; } | public Optional<ForumSortOrder> DefaultSortOrder { get; set; } | ||||
| /// <summary> | |||||
| /// Gets or sets the rule used to display posts in a forum channel. | |||||
| /// </summary> | |||||
| public Optional<ForumLayout> DefaultLayout { get; set; } | |||||
| } | } | ||||
| @@ -0,0 +1,22 @@ | |||||
| namespace Discord; | |||||
| /// <summary> | |||||
| /// Represents the layout type used to display posts in a forum channel. | |||||
| /// </summary> | |||||
| public enum ForumLayout | |||||
| { | |||||
| /// <summary> | |||||
| /// A preferred forum layout hasn't been set by a server admin | |||||
| /// </summary> | |||||
| Default = 0, | |||||
| /// <summary> | |||||
| /// List View: display forum posts in a text-focused list | |||||
| /// </summary> | |||||
| List = 1, | |||||
| /// <summary> | |||||
| /// Gallery View: display forum posts in a media-focused gallery | |||||
| /// </summary> | |||||
| Grid = 2 | |||||
| } | |||||
| @@ -63,13 +63,18 @@ namespace Discord | |||||
| IEmote DefaultReactionEmoji { get; } | IEmote DefaultReactionEmoji { get; } | ||||
| /// <summary> | /// <summary> | ||||
| /// Gets or sets the rule used to order posts in forum channels. | |||||
| /// Gets the rule used to order posts in forum channels. | |||||
| /// </summary> | /// </summary> | ||||
| /// <remarks> | /// <remarks> | ||||
| /// Defaults to null, which indicates a preferred sort order hasn't been set | /// Defaults to null, which indicates a preferred sort order hasn't been set | ||||
| /// </remarks> | /// </remarks> | ||||
| ForumSortOrder? DefaultSortOrder { get; } | ForumSortOrder? DefaultSortOrder { get; } | ||||
| /// <summary> | |||||
| /// Gets the rule used to display posts in a forum channel. | |||||
| /// </summary> | |||||
| ForumLayout DefaultLayout { get; } | |||||
| /// <summary> | /// <summary> | ||||
| /// Modifies this forum channel. | /// Modifies this forum channel. | ||||
| /// </summary> | /// </summary> | ||||
| @@ -89,5 +89,8 @@ namespace Discord.API | |||||
| [JsonProperty("default_reaction_emoji")] | [JsonProperty("default_reaction_emoji")] | ||||
| public Optional<ForumReactionEmoji> DefaultReactionEmoji { get; set; } | public Optional<ForumReactionEmoji> DefaultReactionEmoji { get; set; } | ||||
| [JsonProperty("default_forum_layout")] | |||||
| public Optional<ForumLayout> DefaultForumLayout { get; set; } | |||||
| } | } | ||||
| } | } | ||||
| @@ -20,4 +20,7 @@ internal class ModifyForumChannelParams : ModifyTextChannelParams | |||||
| [JsonProperty("default_sort_order")] | [JsonProperty("default_sort_order")] | ||||
| public Optional<ForumSortOrder> DefaultSortOrder { get; set; } | public Optional<ForumSortOrder> DefaultSortOrder { get; set; } | ||||
| [JsonProperty("default_forum_layout")] | |||||
| public Optional<ForumLayout> DefaultLayout { get; set; } | |||||
| } | } | ||||
| @@ -41,6 +41,9 @@ namespace Discord.Rest | |||||
| /// <inheritdoc/> | /// <inheritdoc/> | ||||
| public ForumSortOrder? DefaultSortOrder { get; private set; } | public ForumSortOrder? DefaultSortOrder { get; private set; } | ||||
| /// <inheritdoc /> | |||||
| public ForumLayout DefaultLayout { get; private set; } | |||||
| /// <inheritdoc/> | /// <inheritdoc/> | ||||
| public string Mention => MentionUtils.MentionChannel(Id); | public string Mention => MentionUtils.MentionChannel(Id); | ||||
| @@ -87,6 +90,7 @@ namespace Discord.Rest | |||||
| } | } | ||||
| CategoryId = model.CategoryId.GetValueOrDefault(); | CategoryId = model.CategoryId.GetValueOrDefault(); | ||||
| DefaultLayout= model.DefaultForumLayout.GetValueOrDefault(); | |||||
| } | } | ||||
| /// <inheritdoc/> | /// <inheritdoc/> | ||||
| @@ -45,6 +45,9 @@ namespace Discord.WebSocket | |||||
| /// <inheritdoc/> | /// <inheritdoc/> | ||||
| public ForumSortOrder? DefaultSortOrder { get; private set; } | public ForumSortOrder? DefaultSortOrder { get; private set; } | ||||
| /// <inheritdoc /> | |||||
| public ForumLayout DefaultLayout { get; private set; } | |||||
| /// <summary> | /// <summary> | ||||
| /// Gets the parent (category) of this channel in the guild's channel list. | /// Gets the parent (category) of this channel in the guild's channel list. | ||||
| /// </summary> | /// </summary> | ||||
| @@ -93,6 +96,8 @@ namespace Discord.WebSocket | |||||
| } | } | ||||
| CategoryId = model.CategoryId.GetValueOrDefault(); | CategoryId = model.CategoryId.GetValueOrDefault(); | ||||
| DefaultLayout = model.DefaultForumLayout.GetValueOrDefault(); | |||||
| } | } | ||||
| /// <inheritdoc /> | /// <inheritdoc /> | ||||