mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-20 05:23:31 +01:00
fix(APIMessage): only pass allowedMentions if content is defined (#4269)
This commit is contained in:
@@ -88,14 +88,16 @@ class APIMessage {
|
|||||||
content = Util.resolveString(this.options.content);
|
content = Util.resolveString(this.options.content);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (typeof content !== 'string') return content;
|
||||||
|
|
||||||
const disableMentions =
|
const disableMentions =
|
||||||
typeof this.options.disableMentions === 'undefined'
|
typeof this.options.disableMentions === 'undefined'
|
||||||
? this.target.client.options.disableMentions
|
? this.target.client.options.disableMentions
|
||||||
: this.options.disableMentions;
|
: this.options.disableMentions;
|
||||||
if (disableMentions === 'all') {
|
if (disableMentions === 'all') {
|
||||||
content = Util.removeMentions(content || '');
|
content = Util.removeMentions(content);
|
||||||
} else if (disableMentions === 'everyone') {
|
} else if (disableMentions === 'everyone') {
|
||||||
content = (content || '').replace(/@([^<>@ ]*)/gmsu, (match, target) => {
|
content = content.replace(/@([^<>@ ]*)/gmsu, (match, target) => {
|
||||||
if (target.match(/^[&!]?\d+$/)) {
|
if (target.match(/^[&!]?\d+$/)) {
|
||||||
return `@${target}`;
|
return `@${target}`;
|
||||||
} else {
|
} else {
|
||||||
@@ -120,17 +122,17 @@ class APIMessage {
|
|||||||
if (content || mentionPart) {
|
if (content || mentionPart) {
|
||||||
if (isCode) {
|
if (isCode) {
|
||||||
const codeName = typeof this.options.code === 'string' ? this.options.code : '';
|
const codeName = typeof this.options.code === 'string' ? this.options.code : '';
|
||||||
content = `${mentionPart}\`\`\`${codeName}\n${Util.cleanCodeBlockContent(content || '')}\n\`\`\``;
|
content = `${mentionPart}\`\`\`${codeName}\n${Util.cleanCodeBlockContent(content)}\n\`\`\``;
|
||||||
if (isSplit) {
|
if (isSplit) {
|
||||||
splitOptions.prepend = `${splitOptions.prepend || ''}\`\`\`${codeName}\n`;
|
splitOptions.prepend = `${splitOptions.prepend || ''}\`\`\`${codeName}\n`;
|
||||||
splitOptions.append = `\n\`\`\`${splitOptions.append || ''}`;
|
splitOptions.append = `\n\`\`\`${splitOptions.append || ''}`;
|
||||||
}
|
}
|
||||||
} else if (mentionPart) {
|
} else if (mentionPart) {
|
||||||
content = `${mentionPart}${content || ''}`;
|
content = `${mentionPart}${content}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isSplit) {
|
if (isSplit) {
|
||||||
content = Util.splitMessage(content || '', splitOptions);
|
content = Util.splitMessage(content, splitOptions);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -189,7 +191,7 @@ class APIMessage {
|
|||||||
embeds,
|
embeds,
|
||||||
username,
|
username,
|
||||||
avatar_url: avatarURL,
|
avatar_url: avatarURL,
|
||||||
allowed_mentions: allowedMentions,
|
allowed_mentions: typeof content === 'string' ? allowedMentions : undefined,
|
||||||
flags,
|
flags,
|
||||||
};
|
};
|
||||||
return this;
|
return this;
|
||||||
|
|||||||
Reference in New Issue
Block a user