fix: embed setup -- now embedded content should render properly based on the remark setup in the astro config.

This commit is contained in:
manunamz
2024-09-03 14:47:14 -04:00
parent 06ebc36941
commit 7ece9da7fc
2 changed files with 75 additions and 42 deletions
+19 -17
View File
@@ -1,18 +1,33 @@
import { base, defineConfig } from 'astro/config';
import sitemap from '@astrojs/sitemap';
import { remarkWikiRefs } from 'remark-wikirefs';
import { remarkCaml } from 'remark-caml';
import {
resolveHtmlHref,
resolveHtmlText,
resolveEmbedContent,
createResolveEmbedContent,
generateForeRefsRemarkPlugin,
} from './src/wikibonsai/wikirefs';
const remarkPlugins = [
remarkCaml,
[
remarkWikiRefs,
{
resolveHtmlHref: resolveHtmlHref,
resolveHtmlText: resolveHtmlText,
resolveEmbedContent: null, // we'll set this later -- see below
},
],
generateForeRefsRemarkPlugin,
];
// embed content needs access to a unified processor
const resolveEmbedContent = createResolveEmbedContent(remarkPlugins);
remarkPlugins[1][1].resolveEmbedContent = resolveEmbedContent;
// https://astro.build/config
export default defineConfig({
site: 'https://astro-wikibonsai.netlify.app',
@@ -24,19 +39,6 @@ export default defineConfig({
// Preserve Astro's default plugins: GitHub-flavored Markdown and Smartypants
extendDefaultPlugins: true,
// Applied to .md and .mdx files
remarkPlugins: [
remarkCaml,
[
remarkWikiRefs,
{
baseUrl: base,
resolveHtmlHref: resolveHtmlHref,
resolveHtmlText: resolveHtmlText,
resolveEmbedContent: resolveEmbedContent,
},
],
// this plugin is necessary for backrefs to work
generateForeRefsRemarkPlugin,
],
remarkPlugins: remarkPlugins,
},
});