@ng-doc/builder
Version:
<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>
29 lines • 953 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.removeLinesFromCode = removeLinesFromCode;
const LINE_BREAK = /\r?\n/;
const IGNORE_COMMENT = /\n?\r?^.*((\/\/|<!--|\/\*)\s*)(ng-doc-ignore-line)(\s*([0-9]))?.*$/;
/**
* Remove lines from code that are marked with `ng-doc-ignore-line`
* @param code - The code to remove lines from
*/
function removeLinesFromCode(code) {
const lines = code.split(LINE_BREAK);
let linesToIgnore = 0;
return lines
.reduce((lines, line) => {
const match = IGNORE_COMMENT.exec(line);
if (match) {
linesToIgnore = Math.max(linesToIgnore, parseInt(match[5] ?? '1'));
}
else if (linesToIgnore === 0) {
lines.push(line);
}
else if (linesToIgnore > 0) {
linesToIgnore--;
}
return lines;
}, [])
.join('\n');
}
//# sourceMappingURL=remove-lines-from-code.js.map
;