diff options
Diffstat (limited to 'node_modules/detect-newline/index.js')
-rw-r--r-- | node_modules/detect-newline/index.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/node_modules/detect-newline/index.js b/node_modules/detect-newline/index.js new file mode 100644 index 0000000..987ed87 --- /dev/null +++ b/node_modules/detect-newline/index.js @@ -0,0 +1,21 @@ +'use strict'; + +const detectNewline = string => { + if (typeof string !== 'string') { + throw new TypeError('Expected a string'); + } + + const newlines = string.match(/(?:\r?\n)/g) || []; + + if (newlines.length === 0) { + return; + } + + const crlf = newlines.filter(newline => newline === '\r\n').length; + const lf = newlines.length - crlf; + + return crlf > lf ? '\r\n' : '\n'; +}; + +module.exports = detectNewline; +module.exports.graceful = string => (typeof string === 'string' && detectNewline(string)) || '\n'; |