summaryrefslogtreecommitdiff
path: root/packages/astro/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/astro/src')
-rw-r--r--packages/astro/src/@types/astro.ts8
-rw-r--r--packages/astro/src/compiler/codegen/index.ts1
-rw-r--r--packages/astro/src/compiler/index.ts8
3 files changed, 6 insertions, 11 deletions
diff --git a/packages/astro/src/@types/astro.ts b/packages/astro/src/@types/astro.ts
index 1fbdd6282..bfb338cdc 100644
--- a/packages/astro/src/@types/astro.ts
+++ b/packages/astro/src/@types/astro.ts
@@ -1,4 +1,5 @@
import type { ImportSpecifier, ImportDefaultSpecifier, ImportNamespaceSpecifier } from '@babel/types';
+import type { AstroMarkdownOptions } from '@astrojs/markdown-support'
export interface AstroConfigRaw {
dist: string;
@@ -9,12 +10,7 @@ export interface AstroConfigRaw {
jsx?: string;
}
-export interface AstroMarkdownOptions {
- /** Enable or disable footnotes syntax extension */
- footnotes: boolean;
- /** Enable or disable GitHub-flavored Markdown syntax extension */
- gfm: boolean;
-}
+export { AstroMarkdownOptions }
export interface AstroConfig {
dist: string;
projectRoot: URL;
diff --git a/packages/astro/src/compiler/codegen/index.ts b/packages/astro/src/compiler/codegen/index.ts
index 0b9780e16..b34077269 100644
--- a/packages/astro/src/compiler/codegen/index.ts
+++ b/packages/astro/src/compiler/codegen/index.ts
@@ -543,7 +543,6 @@ async function compileHtml(enterNode: TemplateNode, state: CodegenState, compile
const { $scope: scopedClassName } = state.markers.insideMarkdown as Record<'$scope', any>;
let { content: rendered } = await renderMarkdown(dedent(md), {
...(markdownOptions as AstroMarkdownOptions),
- mode: 'astro-md',
$: { scopedClassName: scopedClassName && scopedClassName.slice(1, -1) },
});
diff --git a/packages/astro/src/compiler/index.ts b/packages/astro/src/compiler/index.ts
index 0f12cc7f0..f612e6165 100644
--- a/packages/astro/src/compiler/index.ts
+++ b/packages/astro/src/compiler/index.ts
@@ -3,7 +3,7 @@ import type { CompileResult, TransformResult } from '../@types/astro';
import type { CompileOptions } from '../@types/compiler.js';
import path from 'path';
-import { renderMarkdownWithFrontmatter } from '@astrojs/markdown-support';
+import { MarkdownRenderingOptions, renderMarkdownWithFrontmatter } from '@astrojs/markdown-support';
import { parse } from '@astrojs/parser';
import { transform } from './transform/index.js';
@@ -42,12 +42,12 @@ export async function convertAstroToJsx(template: string, opts: ConvertAstroOpti
/**
* .md -> .astro source
*/
-export async function convertMdToAstroSource(contents: string, { filename }: { filename: string }): Promise<string> {
+export async function convertMdToAstroSource(contents: string, { filename }: { filename: string }, opts?: MarkdownRenderingOptions): Promise<string> {
let {
content,
frontmatter: { layout, ...frontmatter },
...data
- } = await renderMarkdownWithFrontmatter(contents);
+ } = await renderMarkdownWithFrontmatter(contents, opts);
if (frontmatter['astro'] !== undefined) {
throw new Error(`"astro" is a reserved word but was used as a frontmatter value!\n\tat ${filename}`);
@@ -75,7 +75,7 @@ async function convertMdToJsx(
contents: string,
{ compileOptions, filename, fileID }: { compileOptions: CompileOptions; filename: string; fileID: string }
): Promise<TransformResult> {
- const raw = await convertMdToAstroSource(contents, { filename });
+ const raw = await convertMdToAstroSource(contents, { filename }, compileOptions.astroConfig.markdownOptions);
const convertOptions = { compileOptions, filename, fileID };
return await convertAstroToJsx(raw, convertOptions);
}