diff --git a/src/util/parseMessageInput.ts b/src/util/parseMessageInput.ts index 2bb7150e3..8bc75511d 100644 --- a/src/util/parseMessageInput.ts +++ b/src/util/parseMessageInput.ts @@ -33,6 +33,10 @@ export default function parseMessageInput(html: string, withMarkdownLinks = fals textIndex = index; entities.push(entity); } else if (node.textContent) { + // Skip newlines on the beginning + if (index === 0 && node.textContent.trim() === '') { + return; + } textIndex += node.textContent.length; } @@ -75,7 +79,7 @@ function parseMarkdown(html: string) { parsedHtml = parsedHtml.replace(/<\/div>/g, ''); // Pre - parsedHtml = parsedHtml.replace(/^`{3}(.*?)[\n\r](.*?[\n\r].*?^)`{3}/gms, '
$2'); + parsedHtml = parsedHtml.replace(/^`{3}(.*?)[\n\r](.*?[\n\r]?)`{3}/gms, '
$2'); parsedHtml = parsedHtml.replace(/^`{3}[\n\r]?(.*?)[\n\r]?`{3}/gms, '
$1'); parsedHtml = parsedHtml.replace(/[`]{3}([^`]+)[`]{3}/g, '
$1');