Some checks failed
Test Suite / unit-tests (3.11) (push) Has been cancelled
Test Suite / unit-tests (3.12) (push) Has been cancelled
Test Suite / code-quality (push) Has been cancelled
Test Suite / security-scan (push) Has been cancelled
Test Suite / integration-tests (push) Has been cancelled
Test Suite / e2e-tests (push) Has been cancelled
Test Suite / performance-tests (push) Has been cancelled
Test Suite / test-summary (push) Has been cancelled
- Add comprehensive image test document with various image types - Update project structure with development artifacts - Prepare foundation for image support enhancement phase - Include test files for validating image editing workflows 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
22 lines
505 B
JavaScript
22 lines
505 B
JavaScript
'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';
|