UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

84 lines 3.06 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 utils_1 = require("../../helpers/utils"); const transport_1 = require("../../transport"); const properties = [ descriptions_1.taskRLC, { displayName: 'Fields', name: 'logFields', type: 'resourceMapper', default: { mappingMode: 'defineBelow', value: null, }, noDataExpression: true, required: true, typeOptions: { resourceMapper: { resourceMapperMethod: 'getLogFields', mode: 'add', valuesLabel: 'Fields', }, }, }, descriptions_1.attachmentsUi, ]; const displayOptions = { show: { resource: ['log'], operation: ['create'], }, }; exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties); async function execute(i, item) { let responseData = []; let body = {}; const dataMode = this.getNodeParameter('logFields.mappingMode', i); const taskId = this.getNodeParameter('taskId', i, '', { extractValue: true }); if (dataMode === 'autoMapInputData') { const schema = this.getNodeParameter('logFields.schema', i); body = (0, utils_1.prepareInputItem)(item.json, schema, i); } if (dataMode === 'defineBelow') { const logFields = this.getNodeParameter('logFields.value', i, []); body = logFields; } body = (0, utils_1.fixFieldType)(body); const inputDataFields = this.getNodeParameter('attachmentsUi.values', i, []).map((entry) => entry.field.trim()); if (inputDataFields.length) { const binaries = []; for (const inputDataField of inputDataFields) { const binaryData = this.helpers.assertBinaryData(i, inputDataField); const dataBuffer = await this.helpers.getBinaryDataBuffer(i, inputDataField); binaries.push({ value: dataBuffer, options: { contentType: binaryData.mimeType, filename: binaryData.fileName, }, }); } responseData = await transport_1.theHiveApiRequest.call(this, 'POST', `/v1/task/${taskId}/log`, undefined, undefined, undefined, { Headers: { 'Content-Type': 'multipart/form-data', }, formData: { attachments: binaries, _json: JSON.stringify(body), }, }); } else { responseData = await transport_1.theHiveApiRequest.call(this, 'POST', `/v1/task/${taskId}/log`, body); } const executionData = this.helpers.constructExecutionMetaData((0, utilities_1.wrapData)(responseData), { itemData: { item: i }, }); return executionData; } //# sourceMappingURL=create.operation.js.map