From 0e169c9fd9fbfc16d86225db6b00448edf39ffad Mon Sep 17 00:00:00 2001 From: HiDeoo Date: Mon, 6 Jan 2025 23:38:53 +0100 Subject: Fix pagefind data attribute (#2740) --- .changeset/olive-hairs-battle.md | 5 +++++ packages/starlight/components/Page.astro | 15 +++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 .changeset/olive-hairs-battle.md diff --git a/.changeset/olive-hairs-battle.md b/.changeset/olive-hairs-battle.md new file mode 100644 index 00000000..9953d1b3 --- /dev/null +++ b/.changeset/olive-hairs-battle.md @@ -0,0 +1,5 @@ +--- +'@astrojs/starlight': patch +--- + +Fixes an issue preventing Pagefind to be disabled using the `pagefind` frontmatter field. diff --git a/packages/starlight/components/Page.astro b/packages/starlight/components/Page.astro index c1c7406f..82f37b06 100644 --- a/packages/starlight/components/Page.astro +++ b/packages/starlight/components/Page.astro @@ -36,13 +36,16 @@ const pagefindEnabled = !Astro.props.entry.slug.endsWith('/404') && Astro.props.entry.data.pagefind !== false; -const dataAttributes: DOMStringMap = { 'data-theme': 'dark' }; -if (Boolean(Astro.props.toc)) dataAttributes['data-has-toc'] = ''; -if (Astro.props.hasSidebar) dataAttributes['data-has-sidebar'] = ''; -if (Boolean(Astro.props.entry.data.hero)) dataAttributes['data-has-hero'] = ''; +const htmlDataAttributes: DOMStringMap = { 'data-theme': 'dark' }; +if (Boolean(Astro.props.toc)) htmlDataAttributes['data-has-toc'] = ''; +if (Astro.props.hasSidebar) htmlDataAttributes['data-has-sidebar'] = ''; +if (Boolean(Astro.props.entry.data.hero)) htmlDataAttributes['data-has-hero'] = ''; + +const mainDataAttributes: DOMStringMap = {}; +if (pagefindEnabled) mainDataAttributes['data-pagefind-body'] = ''; --- - +