fumadocs-mdx 14.2.5 → 14.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -42,10 +42,16 @@ function remarkPostprocess({ _format, includeProcessedMarkdown = false, includeM
42
42
  });
43
43
  }
44
44
  if (includeProcessedMarkdown) {
45
+ const { headingIds = true } = typeof includeProcessedMarkdown === "object" ? includeProcessedMarkdown : {};
45
46
  const processor = getStringifyProcessor();
46
47
  const markdown = toMarkdown(tree, {
47
48
  ...processor.data("settings"),
48
- extensions: processor.data("toMarkdownExtensions") || []
49
+ extensions: processor.data("toMarkdownExtensions") || [],
50
+ handlers: { heading: (node) => {
51
+ const id = node.data?.hProperties?.id;
52
+ const content = flattenNode(node);
53
+ return headingIds && id ? `${content} [#${id}]` : content;
54
+ } }
49
55
  });
50
56
  file.data["mdx-export"].push({
51
57
  name: "_markdown",
@@ -150,4 +156,4 @@ async function buildMDX(core, collection, { filePath, frontmatter, source, _comp
150
156
 
151
157
  //#endregion
152
158
  export { buildMDX as t };
153
- //# sourceMappingURL=build-mdx-BVeBo4jT.js.map
159
+ //# sourceMappingURL=build-mdx-Blq7ZKoM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-mdx-Blq7ZKoM.js","names":[],"sources":["../src/loaders/mdx/remark-postprocess.ts","../src/loaders/mdx/build-mdx.ts"],"sourcesContent":["import type { Processor, Transformer } from 'unified';\nimport type { Heading, Root, RootContent } from 'mdast';\nimport { visit } from 'unist-util-visit';\nimport { toMarkdown } from 'mdast-util-to-markdown';\nimport { valueToEstree } from 'estree-util-value-to-estree';\nimport { removePosition } from 'unist-util-remove-position';\nimport remarkMdx from 'remark-mdx';\nimport { flattenNode } from './mdast-utils';\n\nexport interface ExtractedReference {\n href: string;\n}\n\nexport interface PostprocessOptions {\n _format: 'md' | 'mdx';\n\n /**\n * Properties to export from `vfile.data`\n */\n valueToExport?: string[];\n\n /**\n * stringify MDAST and export via `_markdown`.\n */\n includeProcessedMarkdown?:\n | boolean\n | {\n /**\n * include heading IDs into the processed markdown.\n */\n headingIds?: boolean;\n };\n\n /**\n * extract link references, export via `extractedReferences`.\n */\n extractLinkReferences?: boolean;\n\n /**\n * store MDAST and export via `_mdast`.\n */\n includeMDAST?:\n | boolean\n | {\n removePosition?: boolean;\n };\n}\n\n/**\n * - collect references\n * - write frontmatter (auto-title & description)\n */\nexport function remarkPostprocess(\n this: Processor,\n {\n _format,\n includeProcessedMarkdown = false,\n includeMDAST = false,\n extractLinkReferences = false,\n valueToExport = [],\n }: PostprocessOptions,\n): Transformer<Root, Root> {\n let _stringifyProcessor: Processor | undefined;\n const getStringifyProcessor = () => {\n return (_stringifyProcessor ??=\n _format === 'mdx'\n ? this\n : // force Markdown processor to stringify MDX nodes\n this().use(remarkMdx).freeze());\n };\n\n return (tree, file) => {\n const frontmatter = (file.data.frontmatter ??= {});\n if (!frontmatter.title) {\n visit(tree, 'heading', (node) => {\n if (node.depth === 1) {\n frontmatter.title = flattenNode(node);\n return false;\n }\n });\n }\n\n file.data['mdx-export'] ??= [];\n file.data['mdx-export'].push({\n name: 'frontmatter',\n value: frontmatter,\n });\n\n if (extractLinkReferences) {\n const urls: ExtractedReference[] = [];\n\n visit(tree, 'link', (node) => {\n urls.push({\n href: node.url,\n });\n return 'skip';\n });\n\n file.data['mdx-export'].push({\n name: 'extractedReferences',\n value: urls,\n });\n }\n\n if (includeProcessedMarkdown) {\n const { headingIds = true } =\n typeof includeProcessedMarkdown === 'object' ? includeProcessedMarkdown : {};\n const processor = getStringifyProcessor();\n const markdown = toMarkdown(tree, {\n ...processor.data('settings'),\n // from https://github.com/remarkjs/remark/blob/main/packages/remark-stringify/lib/index.js\n extensions: processor.data('toMarkdownExtensions') || [],\n handlers: {\n heading: (node: Heading) => {\n const id = node.data?.hProperties?.id;\n const content = flattenNode(node);\n return headingIds && id ? `${content} [#${id}]` : content;\n },\n },\n });\n\n file.data['mdx-export'].push({\n name: '_markdown',\n value: markdown,\n });\n }\n\n if (includeMDAST) {\n const options = includeMDAST === true ? {} : includeMDAST;\n const mdast = JSON.stringify(\n options.removePosition ? removePosition(structuredClone(tree)) : tree,\n );\n\n file.data['mdx-export'].push({\n name: '_mdast',\n value: mdast,\n });\n }\n\n for (const { name, value } of file.data['mdx-export']) {\n tree.children.unshift(getMdastExport(name, value));\n }\n\n // reset the data to reduce memory usage\n file.data['mdx-export'] = [];\n\n for (const name of valueToExport) {\n if (!(name in file.data)) continue;\n\n tree.children.unshift(getMdastExport(name, file.data[name]));\n }\n };\n}\n\n/**\n * MDX.js first converts javascript (with esm support) into mdast nodes with remark-mdx, then handle the other remark plugins\n *\n * Therefore, if we want to inject an export, we must convert the object into AST, then add the mdast node\n */\nfunction getMdastExport(name: string, value: unknown): RootContent {\n return {\n type: 'mdxjsEsm',\n value: '',\n data: {\n estree: {\n type: 'Program',\n sourceType: 'module',\n body: [\n {\n type: 'ExportNamedDeclaration',\n attributes: [],\n specifiers: [],\n source: null,\n declaration: {\n type: 'VariableDeclaration',\n kind: 'let',\n declarations: [\n {\n type: 'VariableDeclarator',\n id: {\n type: 'Identifier',\n name,\n },\n init: valueToEstree(value),\n },\n ],\n },\n },\n ],\n },\n },\n };\n}\n","import { createProcessor } from '@mdx-js/mdx';\nimport { VFile } from 'vfile';\nimport { remarkInclude } from '@/loaders/mdx/remark-include';\nimport type { StructuredData } from 'fumadocs-core/mdx-plugins';\nimport type { TOCItemType } from 'fumadocs-core/toc';\nimport type { FC } from 'react';\nimport type { MDXProps } from 'mdx/types';\nimport { type PostprocessOptions, remarkPostprocess } from '@/loaders/mdx/remark-postprocess';\nimport type { Core } from '@/core';\nimport type { DocCollectionItem } from '@/config/build';\n\ntype Processor = ReturnType<typeof createProcessor>;\n\ninterface BuildMDXOptions {\n /**\n * Specify a file path for source\n */\n filePath: string;\n source: string;\n frontmatter?: Record<string, unknown>;\n\n environment: 'bundler' | 'runtime';\n isDevelopment: boolean;\n _compiler?: CompilerOptions;\n}\n\nexport interface CompilerOptions {\n addDependency: (file: string) => void;\n}\n\nexport interface CompiledMDXProperties<Frontmatter = Record<string, unknown>> {\n frontmatter: Frontmatter;\n structuredData: StructuredData;\n toc: TOCItemType[];\n default: FC<MDXProps>;\n\n /**\n * Enable from `postprocess` option.\n */\n _markdown?: string;\n /**\n * Enable from `postprocess` option.\n */\n _mdast?: string;\n}\n\nexport interface FumadocsDataMap {\n /**\n * [Fumadocs MDX] raw frontmatter, you can modify it\n */\n frontmatter?: Record<string, unknown>;\n\n /**\n * [Fumadocs MDX] additional ESM exports to write\n */\n 'mdx-export'?: { name: string; value: unknown }[];\n\n /**\n * [Fumadocs MDX] The compiler object from loader\n */\n _compiler?: CompilerOptions;\n\n /**\n * [Fumadocs MDX] get internal processor, do not use this on user land.\n */\n _getProcessor?: (format: 'md' | 'mdx') => Processor;\n}\n\ndeclare module 'vfile' {\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type -- extend data map\n interface DataMap extends FumadocsDataMap {}\n}\n\nexport async function buildMDX(\n core: Core,\n collection: DocCollectionItem | undefined,\n { filePath, frontmatter, source, _compiler, environment, isDevelopment }: BuildMDXOptions,\n): Promise<VFile> {\n const mdxOptions = await core.getConfig().getMDXOptions(collection, environment);\n\n function getProcessor(format: 'md' | 'mdx') {\n const cache = core.cache as Map<string, Processor>;\n const key = `build-mdx:${collection?.name ?? 'global'}:${format}`;\n let processor = cache.get(key);\n\n if (!processor) {\n const postprocessOptions: PostprocessOptions = {\n _format: format,\n ...collection?.postprocess,\n };\n\n processor = createProcessor({\n outputFormat: 'program',\n development: isDevelopment,\n ...mdxOptions,\n remarkPlugins: [\n remarkInclude,\n ...(mdxOptions.remarkPlugins ?? []),\n [remarkPostprocess, postprocessOptions],\n ],\n format,\n });\n\n cache.set(key, processor);\n }\n\n return processor;\n }\n\n let vfile = new VFile({\n value: source,\n path: filePath,\n cwd: collection?.cwd,\n data: { frontmatter, _compiler, _getProcessor: getProcessor },\n });\n\n if (collection) {\n vfile = await core.transformVFile({ collection, filePath, source }, vfile);\n }\n\n return getProcessor(filePath.endsWith('.mdx') ? 'mdx' : 'md').process(vfile);\n}\n"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import "./fuma-matter-CHgJa_-B.js";
2
+ import "./remark-include-D3G3mAnv.js";
3
+ import { t as buildMDX } from "./build-mdx-Blq7ZKoM.js";
4
+
5
+ export { buildMDX };
@@ -1,4 +1,4 @@
1
- import { r as CoreOptions } from "../core-DG43f_AU.js";
1
+ import { r as CoreOptions } from "../core-O3WLuY_I.js";
2
2
  import { BunPlugin } from "bun";
3
3
 
4
4
  //#region src/bun/index.d.ts
package/dist/bun/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "../fuma-matter-CHgJa_-B.js";
2
- import { t as createMdxLoader } from "../mdx-CRT-jSh5.js";
2
+ import { t as createMdxLoader } from "../mdx-CPnL-Edm.js";
3
3
  import "../preset-gmDZnBcg.js";
4
4
  import { t as buildConfig } from "../build-BTTNEFmV.js";
5
5
  import { n as createCore, t as _Defaults } from "../core-DjldE3H9.js";
@@ -1,2 +1,2 @@
1
- import { A as BaseCollection, B as PostprocessOptions, D as metaSchema, E as frontmatterSchema, F as MetaCollection, H as MDXPresetOptions, I as defineCollections, L as defineConfig, M as DocCollection, N as DocsCollection, O as remarkInclude, P as GlobalConfig, R as defineDocs, U as applyMdxPreset, V as DefaultMDXOptions, j as CollectionSchema, k as AnyCollection } from "../core-DG43f_AU.js";
1
+ import { A as BaseCollection, B as PostprocessOptions, D as metaSchema, E as frontmatterSchema, F as MetaCollection, H as MDXPresetOptions, I as defineCollections, L as defineConfig, M as DocCollection, N as DocsCollection, O as remarkInclude, P as GlobalConfig, R as defineDocs, U as applyMdxPreset, V as DefaultMDXOptions, j as CollectionSchema, k as AnyCollection } from "../core-O3WLuY_I.js";
2
2
  export { AnyCollection, BaseCollection, CollectionSchema, DefaultMDXOptions, DocCollection, DocsCollection, GlobalConfig, MDXPresetOptions, MetaCollection, PostprocessOptions, applyMdxPreset, defineCollections, defineConfig, defineDocs, frontmatterSchema, metaSchema, remarkInclude };
@@ -48,7 +48,12 @@ interface PostprocessOptions {
48
48
  /**
49
49
  * stringify MDAST and export via `_markdown`.
50
50
  */
51
- includeProcessedMarkdown?: boolean;
51
+ includeProcessedMarkdown?: boolean | {
52
+ /**
53
+ * include heading IDs into the processed markdown.
54
+ */
55
+ headingIds?: boolean;
56
+ };
52
57
  /**
53
58
  * extract link references, export via `extractedReferences`.
54
59
  */
@@ -361,4 +366,4 @@ declare function createCore(options: CoreOptions): {
361
366
  type Core = ReturnType<typeof createCore>;
362
367
  //#endregion
363
368
  export { BaseCollection as A, PostprocessOptions as B, ServerOptions as C, metaSchema$1 as D, frontmatterSchema as E, MetaCollection as F, MDXPresetOptions as H, defineCollections as I, defineConfig as L, DocCollection as M, DocsCollection as N, remarkInclude as O, GlobalConfig as P, defineDocs as R, ServerCreate as S, toFumadocsSource as T, applyMdxPreset as U, DefaultMDXOptions as V, AsyncDocCollectionEntry as _, EmitOptions as a, DocsCollectionEntry as b, PluginContext as c, TransformOptions as d, _Defaults as f, indexFile as g, IndexFilePluginOptions as h, EmitEntry as i, CollectionSchema as j, AnyCollection as k, PluginOption as l, IndexFilePlugin as m, Core as n, EmitOutput as o, createCore as p, CoreOptions as r, Plugin as s, CompilationContext as t, ServerContext as u, AsyncDocsCollectionEntry as v, server as w, MetaCollectionEntry as x, DocCollectionEntry as y, ExtractedReference as z };
364
- //# sourceMappingURL=core-DG43f_AU.d.ts.map
369
+ //# sourceMappingURL=core-O3WLuY_I.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-O3WLuY_I.d.ts","names":[],"sources":["../src/config/preset.ts","../src/loaders/mdx/remark-postprocess.ts","../src/config/define.ts","../src/config/build.ts","../src/loaders/mdx/remark-include.ts","../src/runtime/server.ts","../src/plugins/index-file.ts","../src/core.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { a as EmitOptions, c as PluginContext, d as TransformOptions, f as _Defaults, i as EmitEntry, l as PluginOption, n as Core, o as EmitOutput, p as createCore, r as CoreOptions, s as Plugin, t as CompilationContext, u as ServerContext, z as ExtractedReference } from "./core-DG43f_AU.js";
1
+ import { a as EmitOptions, c as PluginContext, d as TransformOptions, f as _Defaults, i as EmitEntry, l as PluginOption, n as Core, o as EmitOutput, p as createCore, r as CoreOptions, s as Plugin, t as CompilationContext, u as ServerContext, z as ExtractedReference } from "./core-O3WLuY_I.js";
2
2
  import { t as CompiledMDXProperties } from "./build-mdx-10MrLupc.js";
3
3
  export { CompilationContext, type CompiledMDXProperties, Core, CoreOptions, EmitEntry, EmitOptions, EmitOutput, type ExtractedReference, Plugin, PluginContext, PluginOption, ServerContext, TransformOptions, _Defaults, createCore };
@@ -59,7 +59,7 @@ function createMdxLoader({ getCore }) {
59
59
  code: `export const frontmatter = ${JSON.stringify(matter.data)}`,
60
60
  map: null
61
61
  };
62
- const { buildMDX } = await import("./build-mdx-ChjP7zAn.js");
62
+ const { buildMDX } = await import("./build-mdx-EzuL9Bt0.js");
63
63
  const compiled = await buildMDX(core, docCollection, {
64
64
  isDevelopment,
65
65
  source: "\n".repeat(countLines(matter.matter)) + matter.content,
@@ -88,4 +88,4 @@ function countLines(s) {
88
88
 
89
89
  //#endregion
90
90
  export { createMdxLoader as t };
91
- //# sourceMappingURL=mdx-CRT-jSh5.js.map
91
+ //# sourceMappingURL=mdx-CPnL-Edm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mdx-CRT-jSh5.js","names":[],"sources":["../src/loaders/mdx/index.ts"],"sourcesContent":["import { fumaMatter } from '@/utils/fuma-matter';\nimport type { Loader } from '@/loaders/adapter';\nimport { z } from 'zod';\nimport type { DocCollectionItem } from '@/config/build';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { createHash } from 'node:crypto';\nimport type { ConfigLoader } from '@/loaders/config';\nimport { mdxLoaderGlob } from '..';\n\nconst querySchema = z.looseObject({\n only: z.literal(['frontmatter', 'all']).default('all'),\n collection: z.string().optional(),\n workspace: z.string().optional(),\n});\n\nconst cacheEntry = z.object({\n code: z.string(),\n map: z.any().optional(),\n hash: z.string().optional(),\n});\n\ntype CacheEntry = z.infer<typeof cacheEntry>;\n\nexport function createMdxLoader({ getCore }: ConfigLoader): Loader {\n return {\n test: mdxLoaderGlob,\n async load({ getSource, development: isDevelopment, query, compiler, filePath }) {\n let core = await getCore();\n const value = await getSource();\n const matter = fumaMatter(value);\n const { collection: collectionName, workspace, only } = querySchema.parse(query);\n if (workspace) {\n core = core.getWorkspaces().get(workspace) ?? core;\n }\n\n let after: (() => Promise<void>) | undefined;\n\n const { experimentalBuildCache = false } = core.getConfig().global;\n if (!isDevelopment && experimentalBuildCache) {\n const cacheDir = experimentalBuildCache;\n const cacheKey = `${collectionName ?? 'global'}_${generateCacheHash(filePath)}`;\n\n const cached = await fs\n .readFile(path.join(cacheDir, cacheKey))\n .then((content) => cacheEntry.parse(JSON.parse(content.toString())))\n .catch(() => null);\n\n if (cached && cached.hash === generateCacheHash(value)) return cached;\n after = async () => {\n await fs.mkdir(cacheDir, { recursive: true });\n await fs.writeFile(\n path.join(cacheDir, cacheKey),\n JSON.stringify({\n ...out,\n hash: generateCacheHash(value),\n } satisfies CacheEntry),\n );\n };\n }\n\n const collection = collectionName ? core.getCollection(collectionName) : undefined;\n\n let docCollection: DocCollectionItem | undefined;\n switch (collection?.type) {\n case 'doc':\n docCollection = collection;\n break;\n case 'docs':\n docCollection = collection.docs;\n break;\n }\n\n if (docCollection) {\n matter.data = await core.transformFrontmatter(\n { collection: docCollection, filePath, source: value },\n matter.data as Record<string, unknown>,\n );\n }\n\n if (only === 'frontmatter') {\n return {\n code: `export const frontmatter = ${JSON.stringify(matter.data)}`,\n map: null,\n };\n }\n\n const { buildMDX } = await import('@/loaders/mdx/build-mdx');\n const compiled = await buildMDX(core, docCollection, {\n isDevelopment,\n // ensure the line number is correct in errors\n source: '\\n'.repeat(countLines(matter.matter)) + matter.content,\n filePath,\n frontmatter: matter.data as Record<string, unknown>,\n _compiler: compiler,\n environment: 'bundler',\n });\n\n const out = {\n code: String(compiled.value),\n map: compiled.map,\n };\n\n await after?.();\n return out;\n },\n };\n}\n\nfunction generateCacheHash(input: string): string {\n return createHash('md5').update(input).digest('hex');\n}\n\nfunction countLines(s: string) {\n let num = 0;\n\n for (const c of s) {\n if (c === '\\n') num++;\n }\n\n return num;\n}\n"],"mappings":";;;;;;;;AAUA,MAAM,cAAc,EAAE,YAAY;CAChC,MAAM,EAAE,QAAQ,CAAC,eAAe,MAAM,CAAC,CAAC,QAAQ,MAAM;CACtD,YAAY,EAAE,QAAQ,CAAC,UAAU;CACjC,WAAW,EAAE,QAAQ,CAAC,UAAU;CACjC,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC1B,MAAM,EAAE,QAAQ;CAChB,KAAK,EAAE,KAAK,CAAC,UAAU;CACvB,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC5B,CAAC;AAIF,SAAgB,gBAAgB,EAAE,WAAiC;AACjE,QAAO;EACL,MAAM;EACN,MAAM,KAAK,EAAE,WAAW,aAAa,eAAe,OAAO,UAAU,YAAY;GAC/E,IAAI,OAAO,MAAM,SAAS;GAC1B,MAAM,QAAQ,MAAM,WAAW;GAC/B,MAAM,SAAS,WAAW,MAAM;GAChC,MAAM,EAAE,YAAY,gBAAgB,WAAW,SAAS,YAAY,MAAM,MAAM;AAChF,OAAI,UACF,QAAO,KAAK,eAAe,CAAC,IAAI,UAAU,IAAI;GAGhD,IAAI;GAEJ,MAAM,EAAE,yBAAyB,UAAU,KAAK,WAAW,CAAC;AAC5D,OAAI,CAAC,iBAAiB,wBAAwB;IAC5C,MAAM,WAAW;IACjB,MAAM,WAAW,GAAG,kBAAkB,SAAS,GAAG,kBAAkB,SAAS;IAE7E,MAAM,SAAS,MAAM,GAClB,SAAS,KAAK,KAAK,UAAU,SAAS,CAAC,CACvC,MAAM,YAAY,WAAW,MAAM,KAAK,MAAM,QAAQ,UAAU,CAAC,CAAC,CAAC,CACnE,YAAY,KAAK;AAEpB,QAAI,UAAU,OAAO,SAAS,kBAAkB,MAAM,CAAE,QAAO;AAC/D,YAAQ,YAAY;AAClB,WAAM,GAAG,MAAM,UAAU,EAAE,WAAW,MAAM,CAAC;AAC7C,WAAM,GAAG,UACP,KAAK,KAAK,UAAU,SAAS,EAC7B,KAAK,UAAU;MACb,GAAG;MACH,MAAM,kBAAkB,MAAM;MAC/B,CAAsB,CACxB;;;GAIL,MAAM,aAAa,iBAAiB,KAAK,cAAc,eAAe,GAAG;GAEzE,IAAI;AACJ,WAAQ,YAAY,MAApB;IACE,KAAK;AACH,qBAAgB;AAChB;IACF,KAAK;AACH,qBAAgB,WAAW;AAC3B;;AAGJ,OAAI,cACF,QAAO,OAAO,MAAM,KAAK,qBACvB;IAAE,YAAY;IAAe;IAAU,QAAQ;IAAO,EACtD,OAAO,KACR;AAGH,OAAI,SAAS,cACX,QAAO;IACL,MAAM,8BAA8B,KAAK,UAAU,OAAO,KAAK;IAC/D,KAAK;IACN;GAGH,MAAM,EAAE,aAAa,MAAM,OAAO;GAClC,MAAM,WAAW,MAAM,SAAS,MAAM,eAAe;IACnD;IAEA,QAAQ,KAAK,OAAO,WAAW,OAAO,OAAO,CAAC,GAAG,OAAO;IACxD;IACA,aAAa,OAAO;IACpB,WAAW;IACX,aAAa;IACd,CAAC;GAEF,MAAM,MAAM;IACV,MAAM,OAAO,SAAS,MAAM;IAC5B,KAAK,SAAS;IACf;AAED,SAAM,SAAS;AACf,UAAO;;EAEV;;AAGH,SAAS,kBAAkB,OAAuB;AAChD,QAAO,WAAW,MAAM,CAAC,OAAO,MAAM,CAAC,OAAO,MAAM;;AAGtD,SAAS,WAAW,GAAW;CAC7B,IAAI,MAAM;AAEV,MAAK,MAAM,KAAK,EACd,KAAI,MAAM,KAAM;AAGlB,QAAO"}
1
+ {"version":3,"file":"mdx-CPnL-Edm.js","names":[],"sources":["../src/loaders/mdx/index.ts"],"sourcesContent":["import { fumaMatter } from '@/utils/fuma-matter';\nimport type { Loader } from '@/loaders/adapter';\nimport { z } from 'zod';\nimport type { DocCollectionItem } from '@/config/build';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { createHash } from 'node:crypto';\nimport type { ConfigLoader } from '@/loaders/config';\nimport { mdxLoaderGlob } from '..';\n\nconst querySchema = z.looseObject({\n only: z.literal(['frontmatter', 'all']).default('all'),\n collection: z.string().optional(),\n workspace: z.string().optional(),\n});\n\nconst cacheEntry = z.object({\n code: z.string(),\n map: z.any().optional(),\n hash: z.string().optional(),\n});\n\ntype CacheEntry = z.infer<typeof cacheEntry>;\n\nexport function createMdxLoader({ getCore }: ConfigLoader): Loader {\n return {\n test: mdxLoaderGlob,\n async load({ getSource, development: isDevelopment, query, compiler, filePath }) {\n let core = await getCore();\n const value = await getSource();\n const matter = fumaMatter(value);\n const { collection: collectionName, workspace, only } = querySchema.parse(query);\n if (workspace) {\n core = core.getWorkspaces().get(workspace) ?? core;\n }\n\n let after: (() => Promise<void>) | undefined;\n\n const { experimentalBuildCache = false } = core.getConfig().global;\n if (!isDevelopment && experimentalBuildCache) {\n const cacheDir = experimentalBuildCache;\n const cacheKey = `${collectionName ?? 'global'}_${generateCacheHash(filePath)}`;\n\n const cached = await fs\n .readFile(path.join(cacheDir, cacheKey))\n .then((content) => cacheEntry.parse(JSON.parse(content.toString())))\n .catch(() => null);\n\n if (cached && cached.hash === generateCacheHash(value)) return cached;\n after = async () => {\n await fs.mkdir(cacheDir, { recursive: true });\n await fs.writeFile(\n path.join(cacheDir, cacheKey),\n JSON.stringify({\n ...out,\n hash: generateCacheHash(value),\n } satisfies CacheEntry),\n );\n };\n }\n\n const collection = collectionName ? core.getCollection(collectionName) : undefined;\n\n let docCollection: DocCollectionItem | undefined;\n switch (collection?.type) {\n case 'doc':\n docCollection = collection;\n break;\n case 'docs':\n docCollection = collection.docs;\n break;\n }\n\n if (docCollection) {\n matter.data = await core.transformFrontmatter(\n { collection: docCollection, filePath, source: value },\n matter.data as Record<string, unknown>,\n );\n }\n\n if (only === 'frontmatter') {\n return {\n code: `export const frontmatter = ${JSON.stringify(matter.data)}`,\n map: null,\n };\n }\n\n const { buildMDX } = await import('@/loaders/mdx/build-mdx');\n const compiled = await buildMDX(core, docCollection, {\n isDevelopment,\n // ensure the line number is correct in errors\n source: '\\n'.repeat(countLines(matter.matter)) + matter.content,\n filePath,\n frontmatter: matter.data as Record<string, unknown>,\n _compiler: compiler,\n environment: 'bundler',\n });\n\n const out = {\n code: String(compiled.value),\n map: compiled.map,\n };\n\n await after?.();\n return out;\n },\n };\n}\n\nfunction generateCacheHash(input: string): string {\n return createHash('md5').update(input).digest('hex');\n}\n\nfunction countLines(s: string) {\n let num = 0;\n\n for (const c of s) {\n if (c === '\\n') num++;\n }\n\n return num;\n}\n"],"mappings":";;;;;;;;AAUA,MAAM,cAAc,EAAE,YAAY;CAChC,MAAM,EAAE,QAAQ,CAAC,eAAe,MAAM,CAAC,CAAC,QAAQ,MAAM;CACtD,YAAY,EAAE,QAAQ,CAAC,UAAU;CACjC,WAAW,EAAE,QAAQ,CAAC,UAAU;CACjC,CAAC;AAEF,MAAM,aAAa,EAAE,OAAO;CAC1B,MAAM,EAAE,QAAQ;CAChB,KAAK,EAAE,KAAK,CAAC,UAAU;CACvB,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC5B,CAAC;AAIF,SAAgB,gBAAgB,EAAE,WAAiC;AACjE,QAAO;EACL,MAAM;EACN,MAAM,KAAK,EAAE,WAAW,aAAa,eAAe,OAAO,UAAU,YAAY;GAC/E,IAAI,OAAO,MAAM,SAAS;GAC1B,MAAM,QAAQ,MAAM,WAAW;GAC/B,MAAM,SAAS,WAAW,MAAM;GAChC,MAAM,EAAE,YAAY,gBAAgB,WAAW,SAAS,YAAY,MAAM,MAAM;AAChF,OAAI,UACF,QAAO,KAAK,eAAe,CAAC,IAAI,UAAU,IAAI;GAGhD,IAAI;GAEJ,MAAM,EAAE,yBAAyB,UAAU,KAAK,WAAW,CAAC;AAC5D,OAAI,CAAC,iBAAiB,wBAAwB;IAC5C,MAAM,WAAW;IACjB,MAAM,WAAW,GAAG,kBAAkB,SAAS,GAAG,kBAAkB,SAAS;IAE7E,MAAM,SAAS,MAAM,GAClB,SAAS,KAAK,KAAK,UAAU,SAAS,CAAC,CACvC,MAAM,YAAY,WAAW,MAAM,KAAK,MAAM,QAAQ,UAAU,CAAC,CAAC,CAAC,CACnE,YAAY,KAAK;AAEpB,QAAI,UAAU,OAAO,SAAS,kBAAkB,MAAM,CAAE,QAAO;AAC/D,YAAQ,YAAY;AAClB,WAAM,GAAG,MAAM,UAAU,EAAE,WAAW,MAAM,CAAC;AAC7C,WAAM,GAAG,UACP,KAAK,KAAK,UAAU,SAAS,EAC7B,KAAK,UAAU;MACb,GAAG;MACH,MAAM,kBAAkB,MAAM;MAC/B,CAAsB,CACxB;;;GAIL,MAAM,aAAa,iBAAiB,KAAK,cAAc,eAAe,GAAG;GAEzE,IAAI;AACJ,WAAQ,YAAY,MAApB;IACE,KAAK;AACH,qBAAgB;AAChB;IACF,KAAK;AACH,qBAAgB,WAAW;AAC3B;;AAGJ,OAAI,cACF,QAAO,OAAO,MAAM,KAAK,qBACvB;IAAE,YAAY;IAAe;IAAU,QAAQ;IAAO,EACtD,OAAO,KACR;AAGH,OAAI,SAAS,cACX,QAAO;IACL,MAAM,8BAA8B,KAAK,UAAU,OAAO,KAAK;IAC/D,KAAK;IACN;GAGH,MAAM,EAAE,aAAa,MAAM,OAAO;GAClC,MAAM,WAAW,MAAM,SAAS,MAAM,eAAe;IACnD;IAEA,QAAQ,KAAK,OAAO,WAAW,OAAO,OAAO,CAAC,GAAG,OAAO;IACxD;IACA,aAAa,OAAO;IACpB,WAAW;IACX,aAAa;IACd,CAAC;GAEF,MAAM,MAAM;IACV,MAAM,OAAO,SAAS,MAAM;IAC5B,KAAK,SAAS;IACf;AAED,SAAM,SAAS;AACf,UAAO;;EAEV;;AAGH,SAAS,kBAAkB,OAAuB;AAChD,QAAO,WAAW,MAAM,CAAC,OAAO,MAAM,CAAC,OAAO,MAAM;;AAGtD,SAAS,WAAW,GAAW;CAC7B,IAAI,MAAM;AAEV,MAAK,MAAM,KAAK,EACd,KAAI,MAAM,KAAM;AAGlB,QAAO"}
@@ -1,4 +1,4 @@
1
- import { h as IndexFilePluginOptions } from "../core-DG43f_AU.js";
1
+ import { h as IndexFilePluginOptions } from "../core-O3WLuY_I.js";
2
2
  import { NextConfig } from "next";
3
3
 
4
4
  //#region src/next/index.d.ts
@@ -1,5 +1,5 @@
1
1
  import "../fuma-matter-CHgJa_-B.js";
2
- import { t as createMdxLoader } from "../mdx-CRT-jSh5.js";
2
+ import { t as createMdxLoader } from "../mdx-CPnL-Edm.js";
3
3
  import { n as createCore, t as _Defaults } from "../core-DjldE3H9.js";
4
4
  import "../codegen-DleOVLNr.js";
5
5
  import { n as toNode, o as createStandaloneConfigLoader } from "../adapter-DI4cexsC.js";
@@ -1,2 +1,2 @@
1
- import { g as indexFile, h as IndexFilePluginOptions, m as IndexFilePlugin } from "../core-DG43f_AU.js";
1
+ import { g as indexFile, h as IndexFilePluginOptions, m as IndexFilePlugin } from "../core-O3WLuY_I.js";
2
2
  export { IndexFilePlugin, IndexFilePluginOptions, indexFile as default };
@@ -1,4 +1,4 @@
1
- import { s as Plugin } from "../core-DG43f_AU.js";
1
+ import { s as Plugin } from "../core-O3WLuY_I.js";
2
2
 
3
3
  //#region src/plugins/json-schema.d.ts
4
4
  interface JSONSchemaOptions {
@@ -1,4 +1,4 @@
1
- import { s as Plugin } from "../core-DG43f_AU.js";
1
+ import { s as Plugin } from "../core-O3WLuY_I.js";
2
2
 
3
3
  //#region src/plugins/last-modified.d.ts
4
4
  type VersionControlFn = (filePath: string) => Promise<Date | null | undefined>;
@@ -1,4 +1,4 @@
1
- import { M as DocCollection, N as DocsCollection } from "../core-DG43f_AU.js";
1
+ import { M as DocCollection, N as DocsCollection } from "../core-O3WLuY_I.js";
2
2
  import { i as InternalTypeConfig } from "../types-B6myALSk.js";
3
3
  import { t as CompiledMDXProperties } from "../build-mdx-10MrLupc.js";
4
4
  import { FC, ReactNode } from "react";
@@ -1,4 +1,4 @@
1
- import { C as ServerOptions, M as DocCollection, N as DocsCollection, _ as AsyncDocCollectionEntry, r as CoreOptions, v as AsyncDocsCollectionEntry } from "../core-DG43f_AU.js";
1
+ import { C as ServerOptions, M as DocCollection, N as DocsCollection, _ as AsyncDocCollectionEntry, r as CoreOptions, v as AsyncDocsCollectionEntry } from "../core-O3WLuY_I.js";
2
2
  import { i as InternalTypeConfig, r as FileInfo } from "../types-B6myALSk.js";
3
3
  import * as _standard_schema_spec0 from "@standard-schema/spec";
4
4
  import * as fumadocs_core_source0 from "fumadocs-core/source";
@@ -4,7 +4,7 @@ import { t as buildConfig } from "../build-BTTNEFmV.js";
4
4
  import { n as createCore } from "../core-DjldE3H9.js";
5
5
  import "../codegen-DleOVLNr.js";
6
6
  import "../remark-include-D3G3mAnv.js";
7
- import { t as buildMDX } from "../build-mdx-BVeBo4jT.js";
7
+ import { t as buildMDX } from "../build-mdx-Blq7ZKoM.js";
8
8
  import { server } from "./server.js";
9
9
  import fs from "node:fs/promises";
10
10
  import { pathToFileURL } from "node:url";
@@ -1,2 +1,2 @@
1
- import { C as ServerOptions, S as ServerCreate, T as toFumadocsSource, _ as AsyncDocCollectionEntry, b as DocsCollectionEntry, v as AsyncDocsCollectionEntry, w as server, x as MetaCollectionEntry, y as DocCollectionEntry } from "../core-DG43f_AU.js";
1
+ import { C as ServerOptions, S as ServerCreate, T as toFumadocsSource, _ as AsyncDocCollectionEntry, b as DocsCollectionEntry, v as AsyncDocsCollectionEntry, w as server, x as MetaCollectionEntry, y as DocCollectionEntry } from "../core-O3WLuY_I.js";
2
2
  export { AsyncDocCollectionEntry, AsyncDocsCollectionEntry, DocCollectionEntry, DocsCollectionEntry, MetaCollectionEntry, ServerCreate, ServerOptions, server, toFumadocsSource };
@@ -1,4 +1,4 @@
1
- import { h as IndexFilePluginOptions } from "../core-DG43f_AU.js";
1
+ import { h as IndexFilePluginOptions } from "../core-O3WLuY_I.js";
2
2
  import { Plugin } from "vite";
3
3
 
4
4
  //#region src/vite/index.d.ts
@@ -1,5 +1,5 @@
1
1
  import "../fuma-matter-CHgJa_-B.js";
2
- import { t as createMdxLoader } from "../mdx-CRT-jSh5.js";
2
+ import { t as createMdxLoader } from "../mdx-CPnL-Edm.js";
3
3
  import "../preset-gmDZnBcg.js";
4
4
  import { t as buildConfig } from "../build-BTTNEFmV.js";
5
5
  import { n as createCore, r as ValidationError, t as _Defaults } from "../core-DjldE3H9.js";
@@ -1,4 +1,4 @@
1
- import "../core-DG43f_AU.js";
1
+ import "../core-O3WLuY_I.js";
2
2
  import { t as WebpackLoaderOptions } from "../index-Bc_4I1HE.js";
3
3
  import { LoaderContext } from "webpack";
4
4
 
@@ -1,5 +1,5 @@
1
1
  import "../fuma-matter-CHgJa_-B.js";
2
- import { t as createMdxLoader } from "../mdx-CRT-jSh5.js";
2
+ import { t as createMdxLoader } from "../mdx-CPnL-Edm.js";
3
3
  import "../core-DjldE3H9.js";
4
4
  import "../codegen-DleOVLNr.js";
5
5
  import { i as toWebpack, o as createStandaloneConfigLoader } from "../adapter-DI4cexsC.js";
@@ -1,4 +1,4 @@
1
- import "../core-DG43f_AU.js";
1
+ import "../core-O3WLuY_I.js";
2
2
  import { t as WebpackLoaderOptions } from "../index-Bc_4I1HE.js";
3
3
  import { LoaderContext } from "webpack";
4
4
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fumadocs-mdx",
3
- "version": "14.2.5",
3
+ "version": "14.2.6",
4
4
  "description": "The built-in source for Fumadocs",
5
5
  "keywords": [
6
6
  "Docs",
@@ -98,9 +98,9 @@
98
98
  "vite": "^7.3.1",
99
99
  "webpack": "^5.104.1",
100
100
  "@fumadocs/mdx-remote": "1.4.4",
101
- "fumadocs-core": "16.4.7",
101
+ "tsconfig": "0.0.0",
102
102
  "eslint-config-custom": "0.0.0",
103
- "tsconfig": "0.0.0"
103
+ "fumadocs-core": "16.4.7"
104
104
  },
105
105
  "peerDependencies": {
106
106
  "@fumadocs/mdx-remote": "^1.4.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-mdx-BVeBo4jT.js","names":[],"sources":["../src/loaders/mdx/remark-postprocess.ts","../src/loaders/mdx/build-mdx.ts"],"sourcesContent":["import type { Processor, Transformer } from 'unified';\nimport type { Root, RootContent } from 'mdast';\nimport { visit } from 'unist-util-visit';\nimport { toMarkdown } from 'mdast-util-to-markdown';\nimport { valueToEstree } from 'estree-util-value-to-estree';\nimport { removePosition } from 'unist-util-remove-position';\nimport remarkMdx from 'remark-mdx';\nimport { flattenNode } from './mdast-utils';\n\nexport interface ExtractedReference {\n href: string;\n}\n\nexport interface PostprocessOptions {\n _format: 'md' | 'mdx';\n\n /**\n * Properties to export from `vfile.data`\n */\n valueToExport?: string[];\n\n /**\n * stringify MDAST and export via `_markdown`.\n */\n includeProcessedMarkdown?: boolean;\n\n /**\n * extract link references, export via `extractedReferences`.\n */\n extractLinkReferences?: boolean;\n\n /**\n * store MDAST and export via `_mdast`.\n */\n includeMDAST?:\n | boolean\n | {\n removePosition?: boolean;\n };\n}\n\n/**\n * - collect references\n * - write frontmatter (auto-title & description)\n */\nexport function remarkPostprocess(\n this: Processor,\n {\n _format,\n includeProcessedMarkdown = false,\n includeMDAST = false,\n extractLinkReferences = false,\n valueToExport = [],\n }: PostprocessOptions,\n): Transformer<Root, Root> {\n let _stringifyProcessor: Processor | undefined;\n const getStringifyProcessor = () => {\n return (_stringifyProcessor ??=\n _format === 'mdx'\n ? this\n : // force Markdown processor to stringify MDX nodes\n this().use(remarkMdx).freeze());\n };\n\n return (tree, file) => {\n const frontmatter = (file.data.frontmatter ??= {});\n if (!frontmatter.title) {\n visit(tree, 'heading', (node) => {\n if (node.depth === 1) {\n frontmatter.title = flattenNode(node);\n return false;\n }\n });\n }\n\n file.data['mdx-export'] ??= [];\n file.data['mdx-export'].push({\n name: 'frontmatter',\n value: frontmatter,\n });\n\n if (extractLinkReferences) {\n const urls: ExtractedReference[] = [];\n\n visit(tree, 'link', (node) => {\n urls.push({\n href: node.url,\n });\n return 'skip';\n });\n\n file.data['mdx-export'].push({\n name: 'extractedReferences',\n value: urls,\n });\n }\n\n if (includeProcessedMarkdown) {\n const processor = getStringifyProcessor();\n const markdown = toMarkdown(tree, {\n ...processor.data('settings'),\n // from https://github.com/remarkjs/remark/blob/main/packages/remark-stringify/lib/index.js\n extensions: processor.data('toMarkdownExtensions') || [],\n });\n\n file.data['mdx-export'].push({\n name: '_markdown',\n value: markdown,\n });\n }\n\n if (includeMDAST) {\n const options = includeMDAST === true ? {} : includeMDAST;\n const mdast = JSON.stringify(\n options.removePosition ? removePosition(structuredClone(tree)) : tree,\n );\n\n file.data['mdx-export'].push({\n name: '_mdast',\n value: mdast,\n });\n }\n\n for (const { name, value } of file.data['mdx-export']) {\n tree.children.unshift(getMdastExport(name, value));\n }\n\n // reset the data to reduce memory usage\n file.data['mdx-export'] = [];\n\n for (const name of valueToExport) {\n if (!(name in file.data)) continue;\n\n tree.children.unshift(getMdastExport(name, file.data[name]));\n }\n };\n}\n\n/**\n * MDX.js first converts javascript (with esm support) into mdast nodes with remark-mdx, then handle the other remark plugins\n *\n * Therefore, if we want to inject an export, we must convert the object into AST, then add the mdast node\n */\nfunction getMdastExport(name: string, value: unknown): RootContent {\n return {\n type: 'mdxjsEsm',\n value: '',\n data: {\n estree: {\n type: 'Program',\n sourceType: 'module',\n body: [\n {\n type: 'ExportNamedDeclaration',\n attributes: [],\n specifiers: [],\n source: null,\n declaration: {\n type: 'VariableDeclaration',\n kind: 'let',\n declarations: [\n {\n type: 'VariableDeclarator',\n id: {\n type: 'Identifier',\n name,\n },\n init: valueToEstree(value),\n },\n ],\n },\n },\n ],\n },\n },\n };\n}\n","import { createProcessor } from '@mdx-js/mdx';\nimport { VFile } from 'vfile';\nimport { remarkInclude } from '@/loaders/mdx/remark-include';\nimport type { StructuredData } from 'fumadocs-core/mdx-plugins';\nimport type { TOCItemType } from 'fumadocs-core/toc';\nimport type { FC } from 'react';\nimport type { MDXProps } from 'mdx/types';\nimport { type PostprocessOptions, remarkPostprocess } from '@/loaders/mdx/remark-postprocess';\nimport type { Core } from '@/core';\nimport type { DocCollectionItem } from '@/config/build';\n\ntype Processor = ReturnType<typeof createProcessor>;\n\ninterface BuildMDXOptions {\n /**\n * Specify a file path for source\n */\n filePath: string;\n source: string;\n frontmatter?: Record<string, unknown>;\n\n environment: 'bundler' | 'runtime';\n isDevelopment: boolean;\n _compiler?: CompilerOptions;\n}\n\nexport interface CompilerOptions {\n addDependency: (file: string) => void;\n}\n\nexport interface CompiledMDXProperties<Frontmatter = Record<string, unknown>> {\n frontmatter: Frontmatter;\n structuredData: StructuredData;\n toc: TOCItemType[];\n default: FC<MDXProps>;\n\n /**\n * Enable from `postprocess` option.\n */\n _markdown?: string;\n /**\n * Enable from `postprocess` option.\n */\n _mdast?: string;\n}\n\nexport interface FumadocsDataMap {\n /**\n * [Fumadocs MDX] raw frontmatter, you can modify it\n */\n frontmatter?: Record<string, unknown>;\n\n /**\n * [Fumadocs MDX] additional ESM exports to write\n */\n 'mdx-export'?: { name: string; value: unknown }[];\n\n /**\n * [Fumadocs MDX] The compiler object from loader\n */\n _compiler?: CompilerOptions;\n\n /**\n * [Fumadocs MDX] get internal processor, do not use this on user land.\n */\n _getProcessor?: (format: 'md' | 'mdx') => Processor;\n}\n\ndeclare module 'vfile' {\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type -- extend data map\n interface DataMap extends FumadocsDataMap {}\n}\n\nexport async function buildMDX(\n core: Core,\n collection: DocCollectionItem | undefined,\n { filePath, frontmatter, source, _compiler, environment, isDevelopment }: BuildMDXOptions,\n): Promise<VFile> {\n const mdxOptions = await core.getConfig().getMDXOptions(collection, environment);\n\n function getProcessor(format: 'md' | 'mdx') {\n const cache = core.cache as Map<string, Processor>;\n const key = `build-mdx:${collection?.name ?? 'global'}:${format}`;\n let processor = cache.get(key);\n\n if (!processor) {\n const postprocessOptions: PostprocessOptions = {\n _format: format,\n ...collection?.postprocess,\n };\n\n processor = createProcessor({\n outputFormat: 'program',\n development: isDevelopment,\n ...mdxOptions,\n remarkPlugins: [\n remarkInclude,\n ...(mdxOptions.remarkPlugins ?? []),\n [remarkPostprocess, postprocessOptions],\n ],\n format,\n });\n\n cache.set(key, processor);\n }\n\n return processor;\n }\n\n let vfile = new VFile({\n value: source,\n path: filePath,\n cwd: collection?.cwd,\n data: { frontmatter, _compiler, _getProcessor: getProcessor },\n });\n\n if (collection) {\n vfile = await core.transformVFile({ collection, filePath, source }, vfile);\n }\n\n return getProcessor(filePath.endsWith('.mdx') ? 'mdx' : 'md').process(vfile);\n}\n"],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import "./fuma-matter-CHgJa_-B.js";
2
- import "./remark-include-D3G3mAnv.js";
3
- import { t as buildMDX } from "./build-mdx-BVeBo4jT.js";
4
-
5
- export { buildMDX };
@@ -1 +0,0 @@
1
- {"version":3,"file":"core-DG43f_AU.d.ts","names":[],"sources":["../src/config/preset.ts","../src/loaders/mdx/remark-postprocess.ts","../src/config/define.ts","../src/config/build.ts","../src/loaders/mdx/remark-include.ts","../src/runtime/server.ts","../src/plugins/index-file.ts","../src/core.ts"],"sourcesContent":[],"mappings":"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"}