enh: automatic artifacts toggle

This commit is contained in:
Timothy J. Baek 2024-10-06 00:14:05 -07:00
parent 6d2eaaf602
commit aeaf761ecd
3 changed files with 16 additions and 0 deletions

View File

@ -4,6 +4,7 @@
import Markdown from './Markdown.svelte';
import LightBlub from '$lib/components/icons/LightBlub.svelte';
import { showArtifacts, showControls, showOverview } from '$lib/stores';
export let id;
export let content;
@ -69,6 +70,13 @@
on:update={(e) => {
dispatch('update', e.detail);
}}
on:code={(e) => {
const { lang } = e.detail;
if (lang === 'html') {
showArtifacts.set(true);
showControls.set(true);
}
}}
/>
</div>

View File

@ -42,5 +42,8 @@
on:update={(e) => {
dispatch('update', e.detail);
}}
on:code={(e) => {
dispatch('code', e.detail);
}}
/>
{/key}

View File

@ -33,6 +33,11 @@
<MarkdownInlineTokens id={`${id}-${tokenIdx}-h`} tokens={token.tokens} />
</svelte:element>
{:else if token.type === 'code'}
{#if token.lang === 'html'}
{dispatch('code', {
lang: token.lang
})}
{/if}
{#if token.raw.includes('```')}
<CodeBlock
id={`${id}-${tokenIdx}`}