technopark-scraper/node_modules/json2csv/lib/formatters/stringQuoteOnlyIfNecessary.js

22 lines
752 B
JavaScript

const os = require('os');
const defaulStringFormatter = require('./string');
function stringQuoteOnlyIfNecessaryFormatter(opts = {}) {
const quote = typeof opts.quote === 'string' ? opts.quote : '"';
const escapedQuote = typeof opts.escapedQuote === 'string' ? opts.escapedQuote : `${quote}${quote}`;
const separator = typeof opts.separator === 'string' ? opts.separator : ',';
const eol = typeof opts.eol === 'string' ? opts.escapedQeoluote : os.EOL;
const stringFormatter = defaulStringFormatter({ quote, escapedQuote });
return (value) => {
if([quote, separator, eol].some(char => value.includes(char))) {
return stringFormatter(value);
}
return value;
}
}
module.exports = stringQuoteOnlyIfNecessaryFormatter;