n8n-nodes-discord-dnd
Version:
n8n node to create triggers for Discord events
184 lines • 10.6 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.DiscordTriggerMethods = void 0;
const discord_js_1 = require("discord.js");
exports.DiscordTriggerMethods = {
loadOptions: {
async getEvents() {
const type = this.getCurrentNodeParameter("triggerType");
const eventOptions = {
message: [
{ name: "Message Create", value: discord_js_1.Events.MessageCreate },
{ name: "Message Delete", value: discord_js_1.Events.MessageDelete },
{ name: "Message Delete Bulk", value: discord_js_1.Events.MessageBulkDelete },
{ name: "Message Update", value: discord_js_1.Events.MessageUpdate },
{ name: "Message Reaction Add", value: discord_js_1.Events.MessageReactionAdd },
{
name: "Message Reaction Remove",
value: discord_js_1.Events.MessageReactionRemove,
},
{
name: "Message Reaction Remove All",
value: discord_js_1.Events.MessageReactionRemoveAll,
},
{
name: "Message Reaction Remove Emoji",
value: discord_js_1.Events.MessageReactionRemoveEmoji,
},
{ name: "Typing Start", value: discord_js_1.Events.TypingStart },
],
guild: [
{ name: "Channel Create", value: discord_js_1.Events.ChannelCreate },
{ name: "Channel Delete", value: discord_js_1.Events.ChannelDelete },
{ name: "Channel Pins Update", value: discord_js_1.Events.ChannelPinsUpdate },
{ name: "Channel Update", value: discord_js_1.Events.ChannelUpdate },
{ name: "Guild Available", value: discord_js_1.Events.GuildAvailable },
{ name: "Guild Create", value: discord_js_1.Events.GuildCreate },
{ name: "Guild Delete", value: discord_js_1.Events.GuildDelete },
{ name: "Guild Unavailable", value: discord_js_1.Events.GuildUnavailable },
{ name: "Guild Update", value: discord_js_1.Events.GuildUpdate },
{ name: "Role Create", value: discord_js_1.Events.GuildRoleCreate },
{ name: "Role Delete", value: discord_js_1.Events.GuildRoleDelete },
{ name: "Role Update", value: discord_js_1.Events.GuildRoleUpdate },
{ name: "Stage Instance Create", value: discord_js_1.Events.StageInstanceCreate },
{ name: "Stage Instance Delete", value: discord_js_1.Events.StageInstanceDelete },
{ name: "Stage Instance Update", value: discord_js_1.Events.StageInstanceUpdate },
{ name: "Thread Create", value: discord_js_1.Events.ThreadCreate },
{ name: "Thread Delete", value: discord_js_1.Events.ThreadDelete },
{ name: "Thread List Sync", value: discord_js_1.Events.ThreadListSync },
{ name: "Thread Members Update", value: discord_js_1.Events.ThreadMembersUpdate },
{ name: "Thread Member Update", value: discord_js_1.Events.ThreadMemberUpdate },
{ name: "Thread Update", value: discord_js_1.Events.ThreadUpdate },
],
moderation: [
{ name: "Guild Ban Add", value: discord_js_1.Events.GuildBanAdd },
{ name: "Guild Ban Remove", value: discord_js_1.Events.GuildBanRemove },
{
name: "Guild Audit Log Entry Create",
value: discord_js_1.Events.GuildAuditLogEntryCreate,
},
],
emojiSticker: [
{ name: "Emoji Create", value: discord_js_1.Events.GuildEmojiCreate },
{ name: "Emoji Delete", value: discord_js_1.Events.GuildEmojiDelete },
{ name: "Emoji Update", value: discord_js_1.Events.GuildEmojiUpdate },
{ name: "Sticker Create", value: discord_js_1.Events.GuildStickerCreate },
{ name: "Sticker Delete", value: discord_js_1.Events.GuildStickerDelete },
{ name: "Sticker Update", value: discord_js_1.Events.GuildStickerUpdate },
],
integrationWebhook: [
{
name: "Guild Integrations Update",
value: discord_js_1.Events.GuildIntegrationsUpdate,
},
{ name: "Webhook Update", value: discord_js_1.Events.WebhooksUpdate },
],
invite: [
{ name: "Invite Create", value: discord_js_1.Events.InviteCreate },
{ name: "Invite Delete", value: discord_js_1.Events.InviteDelete },
],
voice: [
{
name: "Voice Channel Effect Send",
value: discord_js_1.Events.VoiceChannelEffectSend,
},
{ name: "Voice State Update", value: discord_js_1.Events.VoiceStateUpdate },
],
presence: [{ name: "Presence Update", value: discord_js_1.Events.PresenceUpdate }],
scheduledEvent: [
{
name: "Scheduled Event Create",
value: discord_js_1.Events.GuildScheduledEventCreate,
description: "Triggered when a scheduled event is created",
},
{
name: "Scheduled Event Update",
value: discord_js_1.Events.GuildScheduledEventUpdate,
description: "Triggered when a scheduled event is updated (name, time, description, etc.)",
},
{
name: "Scheduled Event Cancel",
value: discord_js_1.Events.GuildScheduledEventDelete,
description: "Triggered when a scheduled event is cancelled",
},
{
name: "Scheduled Event Start",
value: "guildScheduledEventStart",
description: "Triggered when a scheduled event starts (status changes to ACTIVE)",
},
{
name: "Scheduled Event End",
value: "guildScheduledEventEnd",
description: "Triggered when a scheduled event ends (status changes to COMPLETED)",
},
{
name: "Scheduled Event User Add (Interested)",
value: discord_js_1.Events.GuildScheduledEventUserAdd,
description: "Triggered when a user marks themselves as interested",
},
{
name: "Scheduled Event User Remove (Uninterested)",
value: discord_js_1.Events.GuildScheduledEventUserRemove,
description: "Triggered when a user removes their interested status",
},
],
interaction: [
{ name: "Interaction Create", value: discord_js_1.Events.InteractionCreate },
{
name: "Application Command Permissions Update",
value: discord_js_1.Events.ApplicationCommandPermissionsUpdate,
},
],
botStatus: [
{ name: "Debug", value: discord_js_1.Events.Debug },
{ name: "Error", value: discord_js_1.Events.Error },
{ name: "Warn", value: discord_js_1.Events.Warn },
{ name: "Ready", value: discord_js_1.Events.ClientReady },
{ name: "Shard Disconnect", value: discord_js_1.Events.ShardDisconnect },
{ name: "Shard Error", value: discord_js_1.Events.ShardError },
{ name: "Shard Ready", value: discord_js_1.Events.ShardReady },
{ name: "Shard Reconnecting", value: discord_js_1.Events.ShardReconnecting },
{ name: "Shard Resume", value: discord_js_1.Events.ShardResume },
],
user: [
{ name: "User Update", value: discord_js_1.Events.UserUpdate },
{ name: "Guild Member Add", value: discord_js_1.Events.GuildMemberAdd },
{
name: "Guild Member Available",
value: discord_js_1.Events.GuildMemberAvailable,
},
{ name: "Guild Member Remove", value: discord_js_1.Events.GuildMemberRemove },
{ name: "Guild Member Update", value: discord_js_1.Events.GuildMemberUpdate },
{ name: "Guild Members Chunk", value: discord_js_1.Events.GuildMembersChunk },
],
autoModeration: [
{
name: "Auto Moderation Action Execution",
value: discord_js_1.Events.AutoModerationActionExecution,
},
{
name: "Auto Moderation Rule Create",
value: discord_js_1.Events.AutoModerationRuleCreate,
},
{
name: "Auto Moderation Rule Delete",
value: discord_js_1.Events.AutoModerationRuleDelete,
},
{
name: "Auto Moderation Rule Update",
value: discord_js_1.Events.AutoModerationRuleUpdate,
},
],
poll: [
{ name: "Message Poll Vote Add", value: discord_js_1.Events.MessagePollVoteAdd },
{
name: "Message Poll Vote Remove",
value: discord_js_1.Events.MessagePollVoteRemove,
},
],
};
return eventOptions[type] || [];
},
},
};
//# sourceMappingURL=DiscordEventMethods.js.map