feat: support default_thread_rate_limit_per_user in channel creation

#9339 djs
This commit is contained in:
Elysia
2023-10-29 13:16:41 +07:00
parent 5cdebb2889
commit 58f7e5299b
4 changed files with 16 additions and 0 deletions

View File

@@ -150,6 +150,7 @@ class GuildChannelManager extends CachedManager {
defaultReactionEmoji,
defaultSortOrder,
defaultForumLayout,
defaultThreadRateLimitPerUser,
reason,
} = {},
) {
@@ -191,6 +192,7 @@ class GuildChannelManager extends CachedManager {
default_reaction_emoji: defaultReactionEmoji && transformGuildDefaultReaction(defaultReactionEmoji),
default_sort_order: sortMode,
default_forum_layout: layoutMode,
default_thread_rate_limit_per_user: defaultThreadRateLimitPerUser,
},
reason,
});

View File

@@ -81,6 +81,16 @@ class BaseGuildTextChannel extends GuildChannel {
this.defaultAutoArchiveDuration = data.default_auto_archive_duration;
}
if ('default_thread_rate_limit_per_user' in data) {
/**
* The initial rate limit per user (slowmode) to set on newly created threads in a channel.
* @type {?number}
*/
this.defaultThreadRateLimitPerUser = data.default_thread_rate_limit_per_user;
} else {
this.defaultThreadRateLimitPerUser ??= null;
}
if ('messages' in data) {
for (const message of data.messages) this.messages._add(message);
}

View File

@@ -62,6 +62,8 @@ class CategoryChannel extends GuildChannel {
* @property {?DefaultReactionEmoji} [defaultReactionEmoji] The emoji to set as the default reaction emoji
* @property {number} [defaultThreadRateLimitPerUser] The rate limit per user (slowmode) to set on forum posts
* @property {?SortOrderType} [defaultSortOrder] The default sort order mode to set on the new channel
* @property {number} [defaultThreadRateLimitPerUser] The initial rate limit per user (slowmode)
* to set on newly created threads in a channel.
* @property {string} [reason] Reason for creating the new channel
*/