n8n-nodes-discord-dnd
Version:
n8n node to create triggers for Discord events
190 lines • 7.14 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.DiscordTriggerDescription = void 0;
const types_1 = require("../../Interfaces/types");
exports.DiscordTriggerDescription = {
displayName: "Discord Trigger DND",
name: "discordTriggerDnd",
icon: "file:../assets/icon/discord.svg",
group: ["trigger"], version: 1,
description: "Starts the workflow when Discord events occur",
defaults: {
name: "Discord Trigger DND",
},
inputs: [], outputs: ["main"],
credentials: [
{
name: "discordApiDnd",
required: true,
},
],
properties: [
{
displayName: "Trigger Type",
name: "triggerType",
type: "options",
required: true,
default: "message",
description: "The type of Discord event to trigger on",
options: [
{ name: "Message", value: types_1.TriggerType.MESSAGE },
{ name: "Guild", value: types_1.TriggerType.GUILD },
{ name: "Moderation", value: types_1.TriggerType.MODERATION },
{ name: "Emoji & Sticker", value: types_1.TriggerType.EMOJI_STICKER },
{
name: "Integration & Webhook",
value: types_1.TriggerType.INTEGRATION_WEBHOOK,
},
{ name: "Invite", value: types_1.TriggerType.INVITE },
{ name: "Voice", value: types_1.TriggerType.VOICE },
{ name: "Presence", value: types_1.TriggerType.PRESENCE },
{ name: "Scheduled Event", value: types_1.TriggerType.SCHEDULED_EVENT },
{ name: "Interaction", value: types_1.TriggerType.INTERACTION },
{ name: "Bot Status", value: types_1.TriggerType.BOT_STATUS },
{ name: "User", value: types_1.TriggerType.USER },
{ name: "Auto Moderation", value: types_1.TriggerType.AUTO_MODERATION },
{ name: "Poll", value: types_1.TriggerType.POLL },
],
},
{
displayName: "Event",
name: "event",
type: "options",
required: true,
default: "",
description: "The specific Discord event to listen for",
typeOptions: {
loadOptionsMethod: "getEvents",
loadOptionsDependsOn: ["triggerType"],
},
},
{
displayName: "Pattern",
name: "pattern",
type: "options",
default: "botMention",
description: "A filter to apply to the event data",
displayOptions: {
show: {
triggerType: ["message"],
},
},
options: [
{
name: "Bot Mention",
value: types_1.PatternType.BOT_MENTION,
description: "The bot is mentioned or replied in the message",
},
{
name: "Contains",
value: types_1.PatternType.CONTAINS,
description: "Contains a specific string",
},
{
name: "Starts With",
value: types_1.PatternType.STARTS_WITH,
description: "Starts with a specific string",
},
{
name: "Ends With",
value: types_1.PatternType.ENDS_WITH,
description: "Ends with a specific string",
},
{
name: "Equals",
value: types_1.PatternType.EQUALS,
description: "Equals to a specific string",
},
{
name: "Regex",
value: types_1.PatternType.REGEX,
description: "Matches a specific regex pattern",
},
{
name: "Every",
value: types_1.PatternType.EVERY,
description: "The message is in every channel",
},
],
},
{
displayName: "Value",
name: "value",
type: "string",
default: "",
description: "The value to filter the event data by",
displayOptions: {
show: {
triggerType: ["message"],
pattern: ["contains", "startsWith", "endsWith", "equals", "regex"],
},
},
},
{
displayName: "Direct Message",
name: "directMessage",
type: "boolean",
default: false,
description: "Whether to trigger on direct messages",
displayOptions: {
show: {
triggerType: ["message"],
},
},
},
{
displayName: "Include Bot",
name: "includeBot",
type: "boolean",
default: false,
description: "Whether to include bot messages in the trigger",
displayOptions: {
show: {
triggerType: ["message"],
},
},
},
{
displayName: "Additional Fields",
name: "additionalFields",
type: "collection",
placeholder: "Add Field",
default: {},
options: [
{
displayName: "Server IDs",
name: "serverIds",
type: "string",
default: "",
placeholder: "123456789012345678,123456789012345678",
description: "Comma-separated list of server IDs to filter the event data by",
},
{
displayName: "Channel IDs",
name: "channelIds",
type: "string",
default: "",
placeholder: "123456789012345678,123456789012345678",
description: "Comma-separated list of channel IDs to filter the event data by",
},
{
displayName: "Role IDs",
name: "roleIds",
type: "string",
default: "",
placeholder: "123456789012345678,123456789012345678",
description: "Comma-separated list of role IDs to filter the event data by",
},
{
displayName: "User IDs",
name: "userIds",
type: "string",
default: "",
placeholder: "123456789012345678,123456789012345678",
description: "Comma-separated list of user IDs to filter the event data by",
},
],
},
],
};
//# sourceMappingURL=DiscordTriggerDescription.js.map