This commit is contained in:
janisslsm committed 2026-11-01 12:12:55 +02:00
1 parent 1781d25a15
commit 732c0ad767
33051 files changed
+2591613 -3019689

No files matched your search

+66
View File
@@ -0,0 +1,66 @@
// Metro module 4423 (f4424).
import ChannelStore from "../../stores/ChannelStore";
import GuildMemberStore from "../../stores/GuildMemberStore";
import GuildStore from "../../stores/GuildStore";
const isMentioned = function isMentioned({ userId, channelId, mentionEveryone, mentionUsers, mentionRoles, suppressEveryone = false, suppressRoles = false }) {
let member;
member = void 0;
if (mentionEveryone && !suppressEveryone) {
return true;
}
if (mentionUsers.includes(userId)) {
return true;
}
if (!suppressRoles && mentionRoles != null && mentionRoles.length !== 0) {
const channel = ChannelStore.getChannel(channelId);
if (channel == null) {
return false;
}
const guildId = channel.getGuildId();
if (guildId == null) {
return false;
}
if (GuildStore.getGuild(guildId) == null) {
return false;
}
member = GuildMemberStore.getMember(guildId, userId);
return member != null && mentionRoles.some((mentionRole) => member.roles.includes(mentionRole));
}
return false;
};
export default function isMessageMentioned({ message, userId, suppressEveryone = false, suppressRoles = false }) {
return isMentioned({
userId,
channelId: message.channel_id,
mentionEveryone: message.mentionEveryone,
mentionUsers: message.mentions,
mentionRoles: message.mentionRoles,
suppressEveryone,
suppressRoles
});
};
export function isRawMessageMentioned({ rawMessage, userId, suppressEveryone = false, suppressRoles = false }) {
let mention_everyone = rawMessage.mention_everyone;
if (mention_everyone == null) {
mention_everyone = false;
}
const mentions = rawMessage.mentions;
let mentionUsers = mentions == null ? void 0 : mentions.map((mention) => mention.id);
if (mentionUsers == null) {
mentionUsers = [];
}
let mention_roles = rawMessage.mention_roles;
if (mention_roles == null) {
mention_roles = [];
}
return isMentioned({
userId,
channelId: rawMessage.channel_id,
mentionEveryone: mention_everyone,
mentionUsers,
mentionRoles: mention_roles,
suppressEveryone,
suppressRoles
});
}
export { isMentioned };