UNPKG

n8n-nodes-base

Version:

Base nodes of n8n

65 lines 2.44 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ReadBinaryFiles = void 0; const fast_glob_1 = __importDefault(require("fast-glob")); const n8n_workflow_1 = require("n8n-workflow"); const utilities_1 = require("../../utils/utilities"); class ReadBinaryFiles { description = { hidden: true, displayName: 'Read Binary Files', name: 'readBinaryFiles', icon: 'fa:file-import', group: ['input'], version: 1, description: 'Reads binary files from disk', defaults: { name: 'Read Binary Files', color: '#44AA44', }, inputs: [n8n_workflow_1.NodeConnectionTypes.Main], outputs: [n8n_workflow_1.NodeConnectionTypes.Main], properties: [ { displayName: 'File Selector', name: 'fileSelector', type: 'string', default: '', required: true, placeholder: '*.jpg', description: 'Pattern for files to read', }, { displayName: 'Property Name', name: 'dataPropertyName', type: 'string', default: 'data', required: true, description: 'Name of the binary property to which to write the data of the read files', }, ], }; async execute() { const fileSelector = this.getNodeParameter('fileSelector', 0); const dataPropertyName = this.getNodeParameter('dataPropertyName', 0); const pairedItem = (0, utilities_1.generatePairedItemData)(this.getInputData().length); const files = await (0, fast_glob_1.default)(fileSelector); const items = []; for (const filePath of files) { const stream = await this.helpers.createReadStream(await this.helpers.resolvePath(filePath)); items.push({ binary: { [dataPropertyName]: await this.helpers.prepareBinaryData(stream, filePath), }, json: {}, pairedItem, }); } return [items]; } } exports.ReadBinaryFiles = ReadBinaryFiles; //# sourceMappingURL=ReadBinaryFiles.node.js.map