You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 lines
498 B
15 lines
498 B
2 years ago
|
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 }
|