in frontend/src/assets/js/editor.js [119:145]
function highlightLine(editor, lineNumber, mappedColors) {
if (!editor.session.getLine(lineNumber).match(styleMarkerNeedle)) {
return
}
let lineContent = editor.session.getLine(lineNumber).match(styleMarkerNeedle)[0]
let groupName = lineContent.match(styleMarkerNeedle)[2]
let startPosition = lineContent.indexOf(lineContent.match(styleMarkerNeedle)[0])
let endPosition = lineContent.match(styleMarkerNeedle)[0].length
let range = new ace.Range(lineNumber, startPosition, lineNumber, endPosition)
if (mappedColors[groupName] !== true) {
let cssClass = getObjectID(groupName)
let cssContent = "position: absolute; opacity: 0.3; background-color:" + mappedColors[groupName] + ";"
addCssClass(cssClass, cssContent)
mappedColors[groupName] = true
}
if (mappedColors[groupName]) {
editor.session.highlightLines(lineNumber, lineNumber, getObjectID(groupName), false)
// editor.session.addGutterDecoration(lineNumber, getObjectID(groupName))
}
if (editor.session.foldWidgets[lineNumber] === "start") {
// editor.session.replace(range, "")
// editor.getSession().foldAll()
}
editor.session.replace(range, "")
}