UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

66 lines 2.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.description = void 0; exports.execute = execute; const utilities_1 = require("../../../../utils/utilities"); const descriptions_1 = require("../../descriptions"); const transport_1 = require("../../transport"); const properties = [ descriptions_1.caseRLC, descriptions_1.attachmentsUi, { displayName: 'Options', name: 'options', type: 'collection', placeholder: 'Add option', default: {}, options: [ { displayName: 'Rename Files', name: 'canRename', type: 'boolean', description: 'Whether to rename the file in case a file with the same name already exists', default: false, }, ], }, ]; const displayOptions = { show: { resource: ['case'], operation: ['addAttachment'], }, }; exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties); async function execute(i) { let responseData = []; const caseId = this.getNodeParameter('caseId', i, '', { extractValue: true }); const canRename = this.getNodeParameter('options.canRename', i, false); const inputDataFields = this.getNodeParameter('attachmentsUi.values', i, []).map((entry) => entry.field.trim()); const attachments = []; for (const inputDataField of inputDataFields) { const binaryData = this.helpers.assertBinaryData(i, inputDataField); const dataBuffer = await this.helpers.getBinaryDataBuffer(i, inputDataField); attachments.push({ value: dataBuffer, options: { contentType: binaryData.mimeType, filename: binaryData.fileName, }, }); } responseData = await transport_1.theHiveApiRequest.call(this, 'POST', `/v1/case/${caseId}/attachments`, undefined, undefined, undefined, { Headers: { 'Content-Type': 'multipart/form-data', }, formData: { attachments, canRename: JSON.stringify(canRename), }, }); const executionData = this.helpers.constructExecutionMetaData((0, utilities_1.wrapData)(responseData), { itemData: { item: i }, }); return executionData; } //# sourceMappingURL=addAttachment.operation.js.map