n8n-nodes-discord-dnd
Version:
n8n node to create triggers for Discord events
42 lines • 1.5 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.messageToJson = void 0;
async function messageToJson(message) {
const repliedMessage = await message.fetchReference().catch(() => null);
// check if the messsage is bot mentioned then return the original message
let content = message.content;
if (message.mentions.has(message.client.user)) {
const botId = message.client.user.id;
const botMentionRegex = new RegExp(`<@!?${botId}>\\s*`, "g");
content = message.content.replace(botMentionRegex, "").trim();
}
const data = {
channelId: message.channelId,
guildId: message.guildId,
id: message.id,
createdTimestamp: message.createdTimestamp,
content,
pinned: message.pinned,
embeds: message.embeds.map((embed) => embed.toJSON()),
attachments: message.attachments.map((attachment) => ({
...attachment,
})),
stickers: message.stickers.map((sticker) => ({
...sticker,
})),
editedTimestamp: message.editedTimestamp,
reactions: message.reactions.cache.map((reaction) => ({
...reaction,
})),
mentions: {
...message.mentions,
},
author: {
...message.author,
},
repliedMessage: { ...repliedMessage },
};
return data;
}
exports.messageToJson = messageToJson;
//# sourceMappingURL=MessageTransformer.js.map
;