From 70991c155f08101d14a4ab4c64ad36d66f9850a3 Mon Sep 17 00:00:00 2001 From: Carlos Nantes Date: Tue, 10 Aug 2021 01:46:13 -0300 Subject: [PATCH] Fix #161 :bug --- src/converterplus.ts | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/src/converterplus.ts b/src/converterplus.ts index f7d20f7..b0f0613 100644 --- a/src/converterplus.ts +++ b/src/converterplus.ts @@ -102,12 +102,14 @@ export default class Converter { } async toEnml(markcontent) { + let BEGIN_NEW_MARK = '' + MAGIC_SPELL; + let END_NEW_MARK = MAGIC_SPELL + ""; const html = await this.toHtml(markcontent); let enml = ''; - enml += ""; - enml += html; + enml += END_NEW_MARK; enml += ""; return enml; } @@ -156,15 +158,30 @@ export default class Converter { let startIndex = enml.indexOf(">", beginTagIndex) + 1; let endIndex = enml.indexOf(""); let rawContent = enml.substring(startIndex, endIndex); - if (rawContent.indexOf(MAGIC_SPELL) !== -1) { - let beginMark = ""); + + let BEGIN_COMMENT_MARK = ""; + + let BEGIN_NEW_MARK = '' + MAGIC_SPELL; + let END_NEW_MARK = MAGIC_SPELL + ""; + + //needs refactoring + if (rawContent.indexOf(BEGIN_COMMENT_MARK) !== -1) { + let beginMagicIdx = rawContent.indexOf(BEGIN_COMMENT_MARK) + BEGIN_COMMENT_MARK.length; + let endMagicIdx = rawContent.indexOf(END_COMMENT_MARK); + let magicString = rawContent.substring(beginMagicIdx, endMagicIdx); + magicString = magicString.replace(BEGIN_COMMENT_MARK,""); + magicString = magicString.replace(END_COMMENT_MARK, ""); + let base64content = new Buffer(magicString, "base64"); + return base64content.toString("utf-8"); + }else if(rawContent.indexOf(BEGIN_NEW_MARK) !== -1){ + let beginMagicIdx = rawContent.indexOf(BEGIN_NEW_MARK) + BEGIN_NEW_MARK.length; + let endMagicIdx = rawContent.indexOf(END_NEW_MARK); let magicString = rawContent.substring(beginMagicIdx, endMagicIdx); let base64content = new Buffer(magicString, "base64"); return base64content.toString("utf-8"); } else { - let commentRegex = //; + let commentRegex = /.*?<\/span>/; let htmlStr = rawContent.replace(commentRegex, ""); let mdtxt = toMarkdown(htmlStr); return this.todoFix(mdtxt);