diff options
| author | Jay V <[email protected]> | 2025-06-27 20:21:28 -0400 |
|---|---|---|
| committer | Jay V <[email protected]> | 2025-06-27 20:21:28 -0400 |
| commit | 7b394b91e2b40d526b36b3d468445ed1726bb297 (patch) | |
| tree | 76baf657c211823819390fbb7578056cd5e06fa0 /packages/web/src/components/CodeBlock.tsx | |
| parent | 6a7983a4ea9cb4ed6ec93f99f742df5a384cf807 (diff) | |
| download | opencode-7b394b91e2b40d526b36b3d468445ed1726bb297.tar.gz opencode-7b394b91e2b40d526b36b3d468445ed1726bb297.zip | |
docs: share handle slower code blocks
Diffstat (limited to 'packages/web/src/components/CodeBlock.tsx')
| -rw-r--r-- | packages/web/src/components/CodeBlock.tsx | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/packages/web/src/components/CodeBlock.tsx b/packages/web/src/components/CodeBlock.tsx index 03744550e..4c6aab48e 100644 --- a/packages/web/src/components/CodeBlock.tsx +++ b/packages/web/src/components/CodeBlock.tsx @@ -18,16 +18,19 @@ function CodeBlock(props: CodeBlockProps) { const [local, rest] = splitProps(props, ["code", "lang", "onRendered"]) let containerRef!: HTMLDivElement - const [html] = createResource(() => [local.code, local.lang], async ([code, lang]) => { - return (await codeToHtml(code || "", { - lang: lang || "text", - themes: { - light: "github-light", - dark: "github-dark", - }, - transformers: [transformerNotationDiff()], - })) as string - }) + const [html] = createResource( + () => [local.code, local.lang], + async ([code, lang]) => { + return (await codeToHtml(code || "", { + lang: lang || "text", + themes: { + light: "github-light", + dark: "github-dark", + }, + transformers: [transformerNotationDiff()], + })) as string + }, + ) onCleanup(() => { if (containerRef) containerRef.innerHTML = "" @@ -41,7 +44,13 @@ function CodeBlock(props: CodeBlockProps) { } }) - return <div ref={containerRef} class={styles.codeblock} {...rest}></div> + return ( + <> + {html() ? ( + <div ref={containerRef} class={styles.codeblock} {...rest}></div> + ) : null} + </> + ) } export default CodeBlock |
