保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 23b60dc1975db38c280d8a123aff97544d1673e0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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';