diff --git a/src/lib/components/common/RichTextInput.svelte b/src/lib/components/common/RichTextInput.svelte index bfcc37860..2b506670a 100644 --- a/src/lib/components/common/RichTextInput.svelte +++ b/src/lib/components/common/RichTextInput.svelte @@ -387,9 +387,33 @@ selectTemplate(); } } else { - if (value !== editor.getHTML()) { - editor.commands.setContent(value); - selectTemplate(); + if (raw) { + if (value !== editor.getHTML()) { + editor.commands.setContent(value); + selectTemplate(); + } + } else { + if ( + value !== + turndownService + .turndown( + (preserveBreaks + ? editor.getHTML().replace(/
<\/p>/g, '
')
+ : editor.getHTML()
+ ).replace(/ {2,}/g, (m) => m.replace(/ /g, '\u00a0'))
+ )
+ .replace(/\u00a0/g, ' ')
+ ) {
+ preserveBreaks
+ ? editor.commands.setContent(value)
+ : editor.commands.setContent(
+ marked.parse(value.replaceAll(`\n
`, `
`), {
+ breaks: false
+ })
+ ); // Update editor content
+
+ selectTemplate();
+ }
}
}
};