diff --git a/src/util/container.ts b/src/util/container.ts index bf22794f0a13d9..f1ed02544ab3bb 100644 --- a/src/util/container.ts +++ b/src/util/container.ts @@ -1,6 +1,6 @@ import { experimental_AstroContainer } from "astro/container"; -import reactRenderer from "@astrojs/react/server.js"; -import mdxRenderer from "@astrojs/mdx/server.js"; +import { getContainerRenderer } from "@astrojs/mdx"; +import { loadRenderers } from "astro:container"; import { render, type CollectionEntry } from "astro:content"; import type { AstroComponentFactory } from "astro/runtime/server/index.js"; @@ -12,14 +12,9 @@ export async function entryToString( return entry.rendered.html; } - const container = await experimental_AstroContainer.create({}); - container.addServerRenderer({ - name: "astro:jsx", - renderer: mdxRenderer, - }); - container.addServerRenderer({ - name: "@astrojs/react", - renderer: reactRenderer, + const renderers = await loadRenderers([getContainerRenderer()]); + const container = await experimental_AstroContainer.create({ + renderers, }); const { Content } = await render(entry); @@ -36,14 +31,9 @@ export async function componentToString( component: AstroComponentFactory, props: any, ) { - const container = await experimental_AstroContainer.create({}); - container.addServerRenderer({ - name: "astro:jsx", - renderer: mdxRenderer, - }); - container.addServerRenderer({ - name: "@astrojs/react", - renderer: reactRenderer, + const renderers = await loadRenderers([getContainerRenderer()]); + const container = await experimental_AstroContainer.create({ + renderers, }); const html = await container.renderToString(component, {