diff --git a/docs/src/lib/components/doc-page-header.svelte b/docs/src/lib/components/doc-page-header.svelte index 198936e60..4687bc055 100644 --- a/docs/src/lib/components/doc-page-header.svelte +++ b/docs/src/lib/components/doc-page-header.svelte @@ -8,18 +8,32 @@ import { page } from "$app/state"; import Check from "phosphor-svelte/lib/Check"; import CopyPageDropdown from "./copy-page-dropdown.svelte"; + import { watch } from "runed"; let { metadata }: { metadata: DocMetadata } = $props(); + let text = $state(""); const copyState = new CopyToClipboard(); - async function copyMarkdown() { - const url = page.url.origin + page.url.pathname + "/llms.txt"; - const res = await fetch(url); - const text = await res.text(); + function copyMarkdown() { copyState.setCodeString(text); copyState.copyToClipboard(); } + + async function fetchText() { + if (text !== "") return; + + const url = page.url.origin + page.url.pathname + "/llms.txt"; + const res = await fetch(url); + text = await res.text(); + } + + watch( + () => page.url.pathname, + () => { + text = ""; + } + ); @@ -40,9 +54,9 @@