function load(textarea, div) {
div.innerHTML = '';
let lines = textarea.value.split('\n');
for (let i = 0; i < lines.length; i++) {
let line = lines[i];
let elem = formatLine(line);
div.append(elem);
}
}
function save(textarea, div) {
let lines = div.children;
let text = '';
for (let i=0; i\s*>\s*>\s/i)) {
token = /^(>\s*>\s*>\s)/i;
elem.classList.add('bq3');
elem.classList.add('bq');
} else if (normLine.match(/^>\s*>\s/i)) {
token = /^(>\s*>\s)/i;
elem.classList.add('bq2');
elem.classList.add('bq');
} else if (normLine.match(/^>\s/i)) {
token = /^(>\s)/i;
elem.classList.add('bq1');
elem.classList.add('bq');
} else {
elem.classList.add('body');
}
if (elem.classList.contains('bq') || elem.classList.contains('body')) {
if (normLine.match(/^((>\s*){0,3}\s)?([\*\-+]\s*){3}\s/i)) {
token = /^((>\s*){0,3}([\*\-+]\s*){2})/i;
elem.classList.add('ul3');
elem.classList.remove('body');
} else if (normLine.match(/^((>\s*){0,3}\s)?([\*\-+]\s*){2}\s/i)) {
token = /^((>\s*){0,3}[\*\-+]\s*)/i;
elem.classList.add('ul2');
elem.classList.remove('body');
} else if (normLine.match(/^((>\s*){0,3}\s)?[\*\-+]\s/i)) {
token = /^((>\s*){1,3})/;
if (token == '') {
token = null;
}
elem.classList.add('ul1');
elem.classList.remove('body');
} else if (normLine.match(/^((>\s*){0,3}\s)?([0-9]+\.){3}\s/i)) {
token = /^((>\s*){1,3})/;
if (token == '') {
token = null;
}
elem.classList.add('ol3');
elem.classList.remove('body');
} else if (normLine.match(/^((>\s*){0,3}\s)?([0-9]+\.){2}\s/i)) {
token = /^((>\s*){1,3})/;
if (token == '') {
token = null;
}
elem.classList.add('ol2');
elem.classList.remove('body');
} else if (normLine.match(/^((>\s*){0,3}\s)?[0-9]+\.\s/i)) {
token = /^((>\s*){1,3})/;
if (token == '') {
token = null;
}
elem.classList.add('ol1');
elem.classList.remove('body');
}
}
elem.classList.add('mdnotes_line');
normLine = addLink(normLine);
normLine = addBold(normLine);
normLine = addMono(normLine);
if (token != null) {
normLine = normLine.replace(token, '$1');
}
elem.innerHTML = normLine;
let links = elem.getElementsByClassName('link');
for (let i=0; i`$1`');
return line;
}
function addLink(line) {
line = line.replace(/(\[(.*?)\]\((.*?)\))/ig, '[$2]($3)');
return line;
}
function addBold(line) {
line = line.replace(/\*\*([^\s].*?)\*\*/ig, '**$1**');
line = line.replace(/__([^\s].*?)__/ig, '__$1__');
return line;
}
export { load, save, formatLine };