refac: rich text input

This commit is contained in:
Timothy Jaeryang Baek 2024-12-01 14:49:10 -08:00
parent 1c078bdb55
commit 0055f3dcb6

View File

@ -191,9 +191,14 @@
onTransaction: () => { onTransaction: () => {
// force re-render so `editor.isActive` works as expected // force re-render so `editor.isActive` works as expected
editor = editor; editor = editor;
const newValue = turndownService.turndown( const newValue = turndownService
preserveBreaks ? editor.getHTML().replace(/<p><\/p>/g, '<br/>') : editor.getHTML() .turndown(
); (preserveBreaks
? editor.getHTML().replace(/<p><\/p>/g, '<br/>')
: editor.getHTML()
).replace(/ {2,}/g, (m) => m.replace(/ /g, '\u00a0'))
)
.replace(/\u00a0/g, ' ');
if (value !== newValue) { if (value !== newValue) {
value = newValue; value = newValue;
@ -332,9 +337,14 @@
$: if ( $: if (
editor && editor &&
value !== value !==
turndownService.turndown( turndownService
preserveBreaks ? editor.getHTML().replace(/<p><\/p>/g, '<br/>') : editor.getHTML() .turndown(
) (preserveBreaks
? editor.getHTML().replace(/<p><\/p>/g, '<br/>')
: editor.getHTML()
).replace(/ {2,}/g, (m) => m.replace(/ /g, '\u00a0'))
)
.replace(/\u00a0/g, ' ')
) { ) {
editor.commands.setContent( editor.commands.setContent(
marked.parse(value.replaceAll(`\n<br/>`, `<br/>`), { marked.parse(value.replaceAll(`\n<br/>`, `<br/>`), {