mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 16:13:31 +01:00
backport: rateLimitPerUser (#2874)
This commit is contained in:
@@ -331,6 +331,8 @@ class RESTMethods {
|
||||
data.parent_id = _data.parent;
|
||||
data.permission_overwrites = _data.permissionOverwrites ?
|
||||
resolvePermissions.call(this, _data.permissionOverwrites, channel.guild) : undefined;
|
||||
data.rate_limit_per_user = typeof _data.rateLimitPerUser !== 'undefined' ?
|
||||
_data.rateLimitPerUser : channel.rateLimitPerUser;
|
||||
return this.rest.makeRequest('patch', Endpoints.Channel(channel), true, data, undefined, reason).then(newData =>
|
||||
this.client.actions.ChannelUpdate.handle(newData).updated
|
||||
);
|
||||
|
||||
@@ -36,6 +36,12 @@ class TextChannel extends GuildChannel {
|
||||
* @type {?Snowflake}
|
||||
*/
|
||||
this.lastMessageID = data.last_message_id;
|
||||
|
||||
/**
|
||||
* The ratelimit per user for this channel
|
||||
* @type {number}
|
||||
*/
|
||||
this.rateLimitPerUser = data.rate_limit_per_user || 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -97,6 +103,16 @@ class TextChannel extends GuildChannel {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the rate limit per user for this channel.
|
||||
* @param {number} rateLimitPerUser The new ratelimit
|
||||
* @param {string} [reason] Reason for changing the channel's ratelimits
|
||||
* @returns {Promise<TextChannel>}
|
||||
*/
|
||||
setRateLimitPerUser(rateLimitPerUser, reason) {
|
||||
return this.edit({ rateLimitPerUser }, reason);
|
||||
}
|
||||
|
||||
// These are here only for documentation purposes - they are implemented by TextBasedChannel
|
||||
/* eslint-disable no-empty-function */
|
||||
send() { }
|
||||
|
||||
2
typings/index.d.ts
vendored
2
typings/index.d.ts
vendored
@@ -1201,6 +1201,7 @@ declare module 'discord.js' {
|
||||
public messages: Collection<Snowflake, Message>;
|
||||
public nsfw: boolean;
|
||||
public topic: string;
|
||||
public setRateLimitPerUser(rateLimitPerUser: number, reason?: string): Promise<TextChannel>;
|
||||
public createWebhook(name: string, avatar: BufferResolvable, reason?: string): Promise<Webhook>;
|
||||
public fetchWebhooks(): Promise<Collection<Snowflake, Webhook>>;
|
||||
public setNSFW(nsfw: boolean, reason: string): Promise<this>;
|
||||
@@ -1619,6 +1620,7 @@ declare module 'discord.js' {
|
||||
nsfw?: boolean;
|
||||
bitrate?: number;
|
||||
userLimit?: number;
|
||||
rateLimitPerUser?: number;
|
||||
};
|
||||
|
||||
type ChannelLogsQueryOptions = {
|
||||
|
||||
Reference in New Issue
Block a user