···11+<script lang="ts">
22+ interface Props {
33+ // raw markdown source, used as a fallback when rendering was skipped
44+ body: string;
55+ // sanitised html from $lib/markup, or null if the body was empty/too large
66+ bodyHtml: string | null;
77+ }
88+99+ let { body, bodyHtml }: Props = $props();
1010+</script>
1111+1212+{#if bodyHtml}
1313+ <!-- eslint-disable-next-line svelte/no-at-html-tags -- sanitised in $lib/markup -->
1414+ <article class="markup mt-4">{@html bodyHtml}</article>
1515+{:else if body}
1616+ <article class="mt-4 whitespace-pre-wrap text-foreground-default">{body}</article>
1717+{/if}