UNPKG

csv-append

Version:
38 lines (35 loc) 922 B
import fs from 'fs'; import csvWriter from 'csv-write-stream'; import pump from '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 }; }; export default csvAppend; export { csvAppend };