summaryrefslogtreecommitdiff
path: root/packages/integrations/markdoc/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/markdoc/src')
-rw-r--r--packages/integrations/markdoc/src/content-entry-type.ts26
-rw-r--r--packages/integrations/markdoc/src/runtime-assets-config.ts (renamed from packages/integrations/markdoc/src/experimental-assets-config.ts)5
-rw-r--r--packages/integrations/markdoc/src/runtime.ts3
3 files changed, 13 insertions, 21 deletions
diff --git a/packages/integrations/markdoc/src/content-entry-type.ts b/packages/integrations/markdoc/src/content-entry-type.ts
index 0998f69a0..f682e114f 100644
--- a/packages/integrations/markdoc/src/content-entry-type.ts
+++ b/packages/integrations/markdoc/src/content-entry-type.ts
@@ -1,6 +1,7 @@
import type { Config as MarkdocConfig, Node } from '@markdoc/markdoc';
import Markdoc from '@markdoc/markdoc';
import type { AstroConfig, ContentEntryType } from 'astro';
+import { emitESMImage } from 'astro/assets/utils';
import matter from 'gray-matter';
import fs from 'node:fs';
import path from 'node:path';
@@ -8,13 +9,12 @@ import { fileURLToPath } from 'node:url';
import type * as rollup from 'rollup';
import type { ErrorPayload as ViteErrorPayload } from 'vite';
import type { ComponentConfig } from './config.js';
-import { MarkdocError, isComponentConfig, isValidUrl, prependForwardSlash } from './utils.js';
-import { emitESMImage } from 'astro/assets/utils';
import { htmlTokenTransform } from './html/transform/html-token-transform.js';
import type { MarkdocConfigResult } from './load-config.js';
import type { MarkdocIntegrationOptions } from './options.js';
import { setupConfig } from './runtime.js';
import { getMarkdocTokenizer } from './tokenizer.js';
+import { MarkdocError, isComponentConfig, isValidUrl, prependForwardSlash } from './utils.js';
export async function getContentEntryType({
markdocConfigResult,
@@ -96,13 +96,11 @@ export async function getContentEntryType({
});
}
- if (astroConfig.experimental.assets) {
- await emitOptimizedImages(ast.children, {
- astroConfig,
- pluginContext,
- filePath,
- });
- }
+ await emitOptimizedImages(ast.children, {
+ astroConfig,
+ pluginContext,
+ filePath,
+ });
const res = `import { Renderer } from '@astrojs/markdoc/components';
import { createGetHeadings, createContentComponent } from '@astrojs/markdoc/runtime';
@@ -110,12 +108,10 @@ ${
markdocConfigUrl
? `import markdocConfig from ${JSON.stringify(markdocConfigUrl.pathname)};`
: 'const markdocConfig = {};'
-}${
- astroConfig.experimental.assets
- ? `\nimport { experimentalAssetsConfig } from '@astrojs/markdoc/experimental-assets-config';
-markdocConfig.nodes = { ...experimentalAssetsConfig.nodes, ...markdocConfig.nodes };`
- : ''
- }
+}
+
+import { assetsConfig } from '@astrojs/markdoc/runtime-assets-config';
+markdocConfig.nodes = { ...assetsConfig.nodes, ...markdocConfig.nodes };
${getStringifiedImports(componentConfigByTagMap, 'Tag', astroConfig.root)}
${getStringifiedImports(componentConfigByNodeMap, 'Node', astroConfig.root)}
diff --git a/packages/integrations/markdoc/src/experimental-assets-config.ts b/packages/integrations/markdoc/src/runtime-assets-config.ts
index 2eb96ec99..d93605f6c 100644
--- a/packages/integrations/markdoc/src/experimental-assets-config.ts
+++ b/packages/integrations/markdoc/src/runtime-assets-config.ts
@@ -3,10 +3,7 @@ import Markdoc from '@markdoc/markdoc';
//@ts-expect-error Cannot find module 'astro:assets' or its corresponding type declarations.
import { Image } from 'astro:assets';
-// Separate module to only import `astro:assets` when
-// `experimental.assets` flag is set in a project.
-// TODO: merge with `./runtime.ts` when `experimental.assets` is baselined.
-export const experimentalAssetsConfig: MarkdocConfig = {
+export const assetsConfig: MarkdocConfig = {
nodes: {
image: {
attributes: {
diff --git a/packages/integrations/markdoc/src/runtime.ts b/packages/integrations/markdoc/src/runtime.ts
index 60057f53a..6a645e5d8 100644
--- a/packages/integrations/markdoc/src/runtime.ts
+++ b/packages/integrations/markdoc/src/runtime.ts
@@ -7,11 +7,10 @@ import Markdoc, {
} from '@markdoc/markdoc';
import type { AstroInstance } from 'astro';
import { createComponent, renderComponent } from 'astro/runtime/server/index.js';
-import type { AstroMarkdocConfig } from './config.js';
+import { type AstroMarkdocConfig } from './config.js';
import { setupHeadingConfig } from './heading-ids.js';
import { htmlTag } from './html/tagdefs/html.tag.js';
import type { MarkdocIntegrationOptions } from './options.js';
-
/**
* Merge user config with default config and set up context (ex. heading ID slugger)
* Called on each file's individual transform.