summaryrefslogtreecommitdiff
path: root/packages/integrations/mdx/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/mdx/src')
-rw-r--r--packages/integrations/mdx/src/index.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/packages/integrations/mdx/src/index.ts b/packages/integrations/mdx/src/index.ts
index b33b09886..da10281a7 100644
--- a/packages/integrations/mdx/src/index.ts
+++ b/packages/integrations/mdx/src/index.ts
@@ -89,6 +89,13 @@ export default function mdx(mdxOptions: MdxOptions = {}): AstroIntegration {
if (!id.endsWith('.mdx')) return;
const [, moduleExports] = parseESM(code);
+ // This adds support for injected "page-ssr" scripts in MDX files.
+ // TODO: This should only be happening on page entrypoints, not all imported MDX.
+ // TODO: This code is copy-pasted across all Astro/Vite plugins that deal with page
+ // entrypoints (.astro, .md, .mdx). This should be handled in some centralized place,
+ // or otherwise refactored to not require copy-paste handling logic.
+ code += `\nimport "${'astro:scripts/page-ssr.js'}";`;
+
if (!moduleExports.includes('url')) {
const { fileUrl } = getFileInfo(id, config);
code += `\nexport const url = ${JSON.stringify(fileUrl)};`;