Add optional "platform" parameter to helpers.applyFixes (closes #496).

This commit is contained in:
David Anson 2022-02-09 22:44:49 -08:00
parent 4593b61ff5
commit b9474e84a3
3 changed files with 41 additions and 11 deletions

View file

@ -741,7 +741,7 @@ function normalizeFixInfo(fixInfo, lineNumber) {
*
* @param {string} line Line of Markdown content.
* @param {Object} fixInfo RuleOnErrorFixInfo instance.
* @param {string} lineEnding Line ending to use.
* @param {string} [lineEnding] Line ending to use.
* @returns {string} Fixed content.
*/
function applyFix(line, fixInfo, lineEnding) {
@ -755,9 +755,16 @@ function applyFix(line, fixInfo, lineEnding) {
}
module.exports.applyFix = applyFix;
// Applies as many fixes as possible to the input lines
module.exports.applyFixes = function applyFixes(input, errors) {
const lineEnding = getPreferredLineEnding(input);
/**
* Applies as many fixes as possible to Markdown content.
*
* @param {string} input Lines of Markdown content.
* @param {Object[]} errors RuleOnErrorInfo instances.
* @param {string} [platform] Platform identifier (process.platform).
* @returns {string} Corrected content.
*/
function applyFixes(input, errors, platform) {
const lineEnding = getPreferredLineEnding(input, platform);
const lines = input.split(newLineRe);
// Normalize fixInfo objects
let fixInfos = errors
@ -822,7 +829,8 @@ module.exports.applyFixes = function applyFixes(input, errors) {
});
// Return corrected input
return lines.filter((line) => line !== null).join(lineEnding);
};
}
module.exports.applyFixes = applyFixes;
/**
* Gets the range and fixInfo values for reporting an error if the expected