Something went wrong. Try again.
Monorepo for Tangled tangled.org
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940<script lang="ts"> import FileText from "$icon/file-text"; import PanelHeader from "#lib/components/repo/PanelHeader.svelte"; import LayerCard from "#lib/components/ui/LayerCard.svelte"; import LayerCardPrimary from "#lib/components/ui/LayerCardPrimary.svelte"; import LayerCardSecondary from "#lib/components/ui/LayerCardSecondary.svelte"; import { mermaidDiagrams } from "#lib/components/ui/mermaidDiagrams.ts";
interface Props { filename: string; contents: string; html?: string | null; }
let { filename, contents, html = null }: Props = $props();</script>
<LayerCard class="mt-md w-full defer-render-256"> <LayerCardSecondary class="min-h-[calc(2.5rem-2*var(--layer-gap))] py-0"> <PanelHeader title={filename} icon={FileText} /> </LayerCardSecondary> <LayerCardPrimary padding="none"> {#if html} <div data-testid="renderedMarkdownBody" class="markup overflow-x-auto px-xl py-md" use:mermaidDiagrams={html} > <!-- eslint-disable-next-line svelte/no-at-html-tags -- sanitised in $lib/markup --> {@html html} </div> {:else} <div class="overflow-x-auto px-xl py-md"> <pre class="typography-monospace-small whitespace-pre text-foreground-default">{contents}</pre> </div> {/if} </LayerCardPrimary></LayerCard>