UNPKG

n8n-nodes-imap-ai

Version:

Simplified IMAP node for n8n with AI-agent support. Clean and modular email and mailbox management for automation workflows.

41 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MoveEmailOperation = void 0; const n8n_workflow_1 = require("n8n-workflow"); const helpers_1 = require("../utils/helpers"); class MoveEmailOperation { async execute(executeFunctions, client, itemIndex) { const mailboxParam = executeFunctions.getNodeParameter('mailbox', itemIndex); const mailbox = helpers_1.ParameterValidator.extractMailboxName(mailboxParam); const emailUid = executeFunctions.getNodeParameter('emailUid', itemIndex); const targetMailboxParam = executeFunctions.getNodeParameter('targetMailbox', itemIndex); const targetMailbox = helpers_1.ParameterValidator.extractMailboxName(targetMailboxParam); helpers_1.ParameterValidator.validateMailbox(mailboxParam); helpers_1.ParameterValidator.validateUid(emailUid); helpers_1.ParameterValidator.validateMailbox(targetMailboxParam); try { await client.mailboxOpen(mailbox); } catch (error) { throw new n8n_workflow_1.NodeApiError(executeFunctions.getNode(), { message: `Failed to open mailbox ${mailbox}: ${error.message}`, }); } try { const result = await client.messageMove(emailUid, targetMailbox); return { success: true, message: `Email moved from ${mailbox} to ${targetMailbox}`, uid: emailUid, destination: (result === null || result === void 0 ? void 0 : result.destination) || null, }; } catch (error) { throw new n8n_workflow_1.NodeApiError(executeFunctions.getNode(), { message: `Failed to move email: ${error.message}`, }); } } } exports.MoveEmailOperation = MoveEmailOperation; //# sourceMappingURL=moveEmail.js.map