UNPKG

csv-append

Version:
48 lines (42 loc) 1.67 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('fs'), require('csv-write-stream'), require('pump')) : typeof define === 'function' && define.amd ? define(['exports', 'fs', 'csv-write-stream', 'pump'], factory) : (factory((global.TEMP_UMD_MODULE_NAME_CHANGE_ME = {}),global.fs,global.csvWriter,global.pump)); }(this, (function (exports,fs,csvWriter,pump) { 'use strict'; fs = fs && fs.hasOwnProperty('default') ? fs['default'] : fs; csvWriter = csvWriter && csvWriter.hasOwnProperty('default') ? csvWriter['default'] : csvWriter; pump = pump && pump.hasOwnProperty('default') ? pump['default'] : pump; const csvAppend = (path, appendToExisting = false) => { const writeStream = fs.createWriteStream(path, { flags: appendToExisting ? "a" : "w" }); const writer = csvWriter({ sendHeaders: !appendToExisting }); writer.pipe(writeStream); const append = (args) => { if (Array.isArray(args)) { for (let arg of args) { writer.write(arg); } } else { writer.write(args); } return writer; }; const end = () => { return new Promise(resolve => { pump(writer, writeStream, err => { resolve(); }); writer.end(); }); }; return { append, end }; }; exports.csvAppend = csvAppend; exports.default = csvAppend; Object.defineProperty(exports, '__esModule', { value: true }); })));