UNPKG

n8n-nodes-discord

Version:

nodes to trigger workflows from Discord or send interactive messages. Uses the components API which allows to create dialogs (e.g. attach buttons and wait for the user to click on them)

55 lines 2.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const discord_js_1 = require("discord.js"); const state_1 = __importDefault(require("../state")); const name = 'logs'; exports.default = { params: { autoRemove: false, }, registerCommand: () => { return new discord_js_1.SlashCommandBuilder() .setName(name) .setDescription('Toggle test mode') .setDMPermission(false) .addStringOption((option) => option .setName('input') .setDescription('auto/stop/clear or number of logs to display (max 100) - default last 100 logs') .setRequired(false)); }, executeCommand: async (param, interaction) => { var _a, _b; if ((parseInt(param) > 0 && parseInt(param) <= 100) || !param) { if (!state_1.default.logs.length) return 'There is no log'; else { let content = ''; const logs = state_1.default.logs.slice(-parseInt(param !== null && param !== void 0 ? param : 100)); logs.forEach((log) => { content += '**' + log + '**\n'; }); (_a = interaction.channel) === null || _a === void 0 ? void 0 : _a.send(content); return 'Logs:'; } } else if (['auto', 'stop'].includes(param)) { if (param === 'auto') { state_1.default.autoLogs = true; state_1.default.autoLogsChannelId = (_b = interaction.channelId) !== null && _b !== void 0 ? _b : ''; return 'Auto logs activated'; } else { state_1.default.autoLogs = false; return 'Auto logs disabled'; } } else if (param === 'clear') { state_1.default.logs = []; return 'Done!'; } }, }; //# sourceMappingURL=logs.js.map