mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 16:13:31 +01:00
feat(MessageMentions): add repliedUser (#5905)
This commit is contained in:
@@ -190,7 +190,14 @@ class Message extends Base {
|
||||
* All valid mentions that the message contains
|
||||
* @type {MessageMentions}
|
||||
*/
|
||||
this.mentions = new Mentions(this, data.mentions, data.mention_roles, data.mention_everyone, data.mention_channels);
|
||||
this.mentions = new Mentions(
|
||||
this,
|
||||
data.mentions,
|
||||
data.mention_roles,
|
||||
data.mention_everyone,
|
||||
data.mention_channels,
|
||||
data.referenced_message?.author,
|
||||
);
|
||||
|
||||
/**
|
||||
* ID of the webhook that sent the message, if applicable
|
||||
@@ -325,6 +332,7 @@ class Message extends Base {
|
||||
'mention_roles' in data ? data.mention_roles : this.mentions.roles,
|
||||
'mention_everyone' in data ? data.mention_everyone : this.mentions.everyone,
|
||||
'mention_channels' in data ? data.mention_channels : this.mentions.crosspostedChannels,
|
||||
'referenced_message' in data ? data.referenced_message.author : this.mentions.repliedUser,
|
||||
);
|
||||
|
||||
this.flags = new MessageFlags('flags' in data ? data.flags : 0).freeze();
|
||||
|
||||
@@ -8,7 +8,7 @@ const Util = require('../util/Util');
|
||||
* Keeps track of mentions in a {@link Message}.
|
||||
*/
|
||||
class MessageMentions {
|
||||
constructor(message, users, roles, everyone, crosspostedChannels) {
|
||||
constructor(message, users, roles, everyone, crosspostedChannels, repliedUser) {
|
||||
/**
|
||||
* The client the message is from
|
||||
* @type {Client}
|
||||
@@ -125,6 +125,12 @@ class MessageMentions {
|
||||
} else {
|
||||
this.crosspostedChannels = new Collection();
|
||||
}
|
||||
|
||||
/**
|
||||
* The author of the message that this message is a reply to
|
||||
* @type {?User}
|
||||
*/
|
||||
this.repliedUser = repliedUser ? this.client.users.add(repliedUser) : null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
5
typings/index.d.ts
vendored
5
typings/index.d.ts
vendored
@@ -147,6 +147,7 @@ declare module 'discord.js' {
|
||||
APIPartialEmoji as RawEmoji,
|
||||
APIRole as RawRole,
|
||||
Snowflake as APISnowflake,
|
||||
APIUser,
|
||||
ApplicationCommandOptionType as ApplicationCommandOptionTypes,
|
||||
ApplicationCommandPermissionType as ApplicationCommandPermissionTypes,
|
||||
} from 'discord-api-types/v8';
|
||||
@@ -1492,9 +1493,10 @@ declare module 'discord.js' {
|
||||
export class MessageMentions {
|
||||
constructor(
|
||||
message: Message,
|
||||
users: unknown[] | Collection<Snowflake, User>,
|
||||
users: APIUser[] | Collection<Snowflake, User>,
|
||||
roles: Snowflake[] | Collection<Snowflake, Role>,
|
||||
everyone: boolean,
|
||||
repliedUser?: APIUser | User,
|
||||
);
|
||||
private _channels: Collection<Snowflake, Channel> | null;
|
||||
private readonly _content: string;
|
||||
@@ -1506,6 +1508,7 @@ declare module 'discord.js' {
|
||||
public readonly guild: Guild;
|
||||
public has(data: UserResolvable | RoleResolvable | ChannelResolvable, options?: MessageMentionsHasOptions): boolean;
|
||||
public readonly members: Collection<Snowflake, GuildMember> | null;
|
||||
public repliedUser: User | null;
|
||||
public roles: Collection<Snowflake, Role>;
|
||||
public users: Collection<Snowflake, User>;
|
||||
public crosspostedChannels: Collection<Snowflake, CrosspostedChannel>;
|
||||
|
||||
Reference in New Issue
Block a user