diff --git a/src/lib/components/Preview.svelte b/src/lib/components/Preview.svelte index 7a8ff04..c0ce095 100644 --- a/src/lib/components/Preview.svelte +++ b/src/lib/components/Preview.svelte @@ -4,6 +4,8 @@ import { CaretDownSolid, CaretUpSolid, EditOutline } from "flowbite-svelte-icons"; import { createEventDispatcher } from "svelte"; + // TODO: Push parser to state to be read on reload. + export let sectionClass: string = ''; export let isSectionStart: boolean = false; export let rootId: string; @@ -13,7 +15,7 @@ const dispatch = createEventDispatcher(); let isEditing: boolean = false; - let currentContent: string; + let currentContent: string = $parser.getContent(rootId); let hasCursor: boolean = false; let childHasCursor: boolean; @@ -56,13 +58,11 @@ childHasCursor = false; } - // TODO: Trigger rerender when editing state changes. const toggleEditing = (id: string, shouldSave: boolean = true) => { const editing = isEditing; - currentContent = $parser.getContent(id); if (editing && shouldSave) { - // TODO: Save updated content. + $parser.updateEventContent(id, currentContent); } isEditing = !editing; @@ -79,9 +79,36 @@ > {#if orderedChildren.length === 0 || depth >= 4} -

- {@html $parser.getContent(rootId)} -

+ {#if isEditing} +
+ +
+ {:else} +

+ {@html currentContent} +

+ {/if} {:else}
@@ -108,7 +135,7 @@ - diff --git a/src/routes/new/edit/+page.svelte b/src/routes/new/edit/+page.svelte index 9c20737..de01c64 100644 --- a/src/routes/new/edit/+page.svelte +++ b/src/routes/new/edit/+page.svelte @@ -27,6 +27,7 @@ const prepareReview = () => { $parser.reset(); $parser.parse($editorText); + $parser.generate($ndk.activeUser?.pubkey!); goto('/new/compose'); } @@ -64,7 +65,7 @@ {#if rootIndexId} - + {/if} {/if}