feat(audits): ✨ add content to embed
Added content to audit embeds for messageDelete and messageUpdate
This commit is contained in:
parent
f0121206b5
commit
a6605f7732
2 changed files with 86 additions and 15 deletions
|
@ -1,22 +1,52 @@
|
||||||
|
import { formatDistanceToNow } from "date-fns";
|
||||||
import { EmbedBuilder, Message } from "discord.js";
|
import { EmbedBuilder, Message } from "discord.js";
|
||||||
import auditLogger from "../../helpers/auditLogger";
|
import auditLogger from "../../helpers/auditLogger";
|
||||||
|
import capitalizeFirstLetter from "../../helpers/capitalizeFirstLetter";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
execute: async (message: Message) => {
|
execute: async (message: Message) => {
|
||||||
const { guild } = message;
|
const { guild, member } = message;
|
||||||
if (!guild) throw new Error("Guild unavailable");
|
if (!guild) throw new Error("Guild unavailable");
|
||||||
|
if (!member) throw new Error("Member unavailable");
|
||||||
|
|
||||||
|
if (!member.joinedAt) throw new Error("Can not find member joined at");
|
||||||
|
|
||||||
const embed = new EmbedBuilder()
|
const embed = new EmbedBuilder()
|
||||||
.setAuthor({
|
.setAuthor({
|
||||||
name: message.author.username,
|
name: "Message Deleted",
|
||||||
iconURL: message.author.displayAvatarURL(),
|
iconURL: message.author.displayAvatarURL(),
|
||||||
})
|
})
|
||||||
.setDescription(
|
.addFields([
|
||||||
`
|
{
|
||||||
**Message sent by** ${message.author} **deleted in** ${message.channel}
|
name: "User",
|
||||||
${message.content}
|
value: `${message.author} (${message.author.tag})`,
|
||||||
`
|
inline: true,
|
||||||
);
|
},
|
||||||
|
{
|
||||||
|
name: "Member since",
|
||||||
|
value: `${capitalizeFirstLetter(
|
||||||
|
formatDistanceToNow(member.joinedAt, {
|
||||||
|
addSuffix: true,
|
||||||
|
})
|
||||||
|
)}`,
|
||||||
|
inline: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Created",
|
||||||
|
value: `${capitalizeFirstLetter(
|
||||||
|
formatDistanceToNow(message.author.createdAt, { addSuffix: true })
|
||||||
|
)}`,
|
||||||
|
inline: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Content",
|
||||||
|
value: `${
|
||||||
|
message.content.length <= 1024
|
||||||
|
? message.content
|
||||||
|
: "Length is above 1024, this is a [limit by Discord](https://discord.com/developers/docs/resources/channel#embed-object-embed-limits), we are working on an solution to this problem."
|
||||||
|
}`,
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
await auditLogger(guild, embed);
|
await auditLogger(guild, embed);
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,22 +1,63 @@
|
||||||
/* eslint-disable no-loops/no-loops */
|
/* eslint-disable no-loops/no-loops */
|
||||||
|
import { formatDistanceToNow } from "date-fns";
|
||||||
import { EmbedBuilder, Message } from "discord.js";
|
import { EmbedBuilder, Message } from "discord.js";
|
||||||
import auditLogger from "../../helpers/auditLogger";
|
import auditLogger from "../../helpers/auditLogger";
|
||||||
|
import capitalizeFirstLetter from "../../helpers/capitalizeFirstLetter";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
execute: async (oldMessage: Message, newMessage: Message) => {
|
execute: async (oldMessage: Message, newMessage: Message) => {
|
||||||
const { guild } = newMessage;
|
const { guild, member } = newMessage;
|
||||||
if (!guild) throw new Error("Guild unavailable");
|
if (!guild) throw new Error("Guild unavailable");
|
||||||
|
if (!member) throw new Error("Member unavailable");
|
||||||
|
|
||||||
|
if (!member.joinedAt) throw new Error("Can not find member joined at");
|
||||||
|
|
||||||
const embed = new EmbedBuilder()
|
const embed = new EmbedBuilder()
|
||||||
.setAuthor({
|
.setAuthor({
|
||||||
name: newMessage.author.username,
|
name: "Message Updated",
|
||||||
iconURL: newMessage.author.displayAvatarURL(),
|
iconURL: newMessage.author.displayAvatarURL(),
|
||||||
})
|
})
|
||||||
.setDescription(
|
.addFields([
|
||||||
`
|
{
|
||||||
**Message edited in** ${newMessage.channel} [jump to message](https://discord.com/channels/${newMessage.guild.id}/${newMessage.channel.id}/${newMessage.id})
|
name: "User",
|
||||||
`
|
value: `${newMessage.author} (${newMessage.author.tag})`,
|
||||||
);
|
inline: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Member since",
|
||||||
|
value: `${capitalizeFirstLetter(
|
||||||
|
formatDistanceToNow(member.joinedAt, {
|
||||||
|
addSuffix: true,
|
||||||
|
})
|
||||||
|
)}`,
|
||||||
|
inline: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Created",
|
||||||
|
value: `${capitalizeFirstLetter(
|
||||||
|
formatDistanceToNow(newMessage.author.createdAt, {
|
||||||
|
addSuffix: true,
|
||||||
|
})
|
||||||
|
)}`,
|
||||||
|
inline: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Before edited",
|
||||||
|
value: `${
|
||||||
|
oldMessage.content.length <= 1024
|
||||||
|
? oldMessage.content
|
||||||
|
: "Length is above 1024, this is a [limit by Discord](https://discord.com/developers/docs/resources/channel#embed-object-embed-limits), we are working on an solution to this problem."
|
||||||
|
}`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "After edited",
|
||||||
|
value: `${
|
||||||
|
newMessage.content.length <= 1024
|
||||||
|
? newMessage.content
|
||||||
|
: "Length is above 1024, this is a [limit by Discord](https://discord.com/developers/docs/resources/channel#embed-object-embed-limits), we are working on an solution to this problem."
|
||||||
|
}`,
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
await auditLogger(guild, embed);
|
await auditLogger(guild, embed);
|
||||||
},
|
},
|
||||||
|
|
Loading…
Add table
Reference in a new issue