18 lines
508 B
JavaScript
18 lines
508 B
JavaScript
function stringify(
|
|
obj,
|
|
{ EOL = '\n', finalEOL = true, replacer = null, spaces } = {}
|
|
) {
|
|
const EOF = finalEOL ? EOL : '';
|
|
const str = JSON.stringify(obj, replacer, spaces);
|
|
|
|
return str.replace(/\n/g, EOL) + EOF;
|
|
}
|
|
|
|
function stripBom(content) {
|
|
// we do this because JSON.parse would convert it to a utf8 string if encoding wasn't specified
|
|
if (Buffer.isBuffer(content)) content = content.toString('utf8');
|
|
return content.replace(/^\uFEFF/, '');
|
|
}
|
|
|
|
module.exports = { stringify, stripBom };
|