UNPKG

@codedoc/core

Version:

Create beautiful modern documentation websites.

42 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parse = exports.OutputMark = exports.RemoveHighlightMark = exports.AddHighlightMark = exports.DefaultHighlightMark = void 0; exports.DefaultHighlightMark = '/*!*/'; exports.AddHighlightMark = '/*+*/'; exports.RemoveHighlightMark = '/*-*/'; exports.OutputMark = '>'; function parse(code, term) { if (term === void 0) { term = false; } var lines = code.split('\n'); var highlights = []; var linesParsed = []; var outputs = {}; lines.forEach(function (line) { var index = linesParsed.length; if (line.startsWith(exports.OutputMark) && term) { (outputs[index - 1] || (outputs[index - 1] = [])).push(line.substr(exports.OutputMark.length)); } else { if (line.startsWith(exports.DefaultHighlightMark)) { highlights[index] = 'highlight'; linesParsed.push(line.substr(exports.DefaultHighlightMark.length)); } else if (line.startsWith(exports.AddHighlightMark)) { highlights[index] = 'added'; linesParsed.push(line.substr(exports.AddHighlightMark.length)); } else if (line.startsWith(exports.RemoveHighlightMark)) { highlights[index] = 'removed'; linesParsed.push(line.substr(exports.RemoveHighlightMark.length)); } else { highlights[index] = ''; linesParsed.push(line); } } }); var codeParsed = linesParsed.join('\n'); return [codeParsed, linesParsed, highlights, outputs]; } exports.parse = parse; //# sourceMappingURL=parse.js.map