fuma-content 1.0.0 → 1.0.2

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.
Files changed (146) hide show
  1. package/dist/async-cache-BM9Yf4Nw.js +29 -0
  2. package/dist/async-cache-BM9Yf4Nw.js.map +1 -0
  3. package/dist/bin.d.ts +1 -1
  4. package/dist/bin.js +21 -14
  5. package/dist/bin.js.map +1 -0
  6. package/dist/build-D8A5ByFk.js +42 -0
  7. package/dist/build-D8A5ByFk.js.map +1 -0
  8. package/dist/build-mdx-C1PZsGp2.js +395 -0
  9. package/dist/build-mdx-C1PZsGp2.js.map +1 -0
  10. package/dist/build-mdx-DFndaVbS.js +4 -0
  11. package/dist/bun/index.d.ts +6 -13
  12. package/dist/bun/index.d.ts.map +1 -0
  13. package/dist/bun/index.js +23 -33
  14. package/dist/bun/index.js.map +1 -0
  15. package/dist/bun-QKQnqgIi.js +35 -0
  16. package/dist/bun-QKQnqgIi.js.map +1 -0
  17. package/dist/code-generator-gPtrfZ6Q.js +133 -0
  18. package/dist/code-generator-gPtrfZ6Q.js.map +1 -0
  19. package/dist/collections/handlers/fs.d.ts +2 -10
  20. package/dist/collections/handlers/fs.js +28 -6
  21. package/dist/collections/handlers/fs.js.map +1 -0
  22. package/dist/collections/index.d.ts +2 -10
  23. package/dist/collections/index.js +16 -6
  24. package/dist/collections/index.js.map +1 -0
  25. package/dist/collections/mdx/loader-webpack.d.ts +6 -14
  26. package/dist/collections/mdx/loader-webpack.d.ts.map +1 -0
  27. package/dist/collections/mdx/loader-webpack.js +23 -35
  28. package/dist/collections/mdx/loader-webpack.js.map +1 -0
  29. package/dist/collections/mdx/runtime-browser.d.ts +33 -32
  30. package/dist/collections/mdx/runtime-browser.d.ts.map +1 -0
  31. package/dist/collections/mdx/runtime-browser.js +57 -62
  32. package/dist/collections/mdx/runtime-browser.js.map +1 -0
  33. package/dist/collections/mdx/runtime-dynamic.d.ts +24 -31
  34. package/dist/collections/mdx/runtime-dynamic.d.ts.map +1 -0
  35. package/dist/collections/mdx/runtime-dynamic.js +63 -83
  36. package/dist/collections/mdx/runtime-dynamic.js.map +1 -0
  37. package/dist/collections/mdx/runtime.d.ts +34 -54
  38. package/dist/collections/mdx/runtime.d.ts.map +1 -0
  39. package/dist/collections/mdx/runtime.js +24 -34
  40. package/dist/collections/mdx/runtime.js.map +1 -0
  41. package/dist/collections/mdx.d.ts +2 -10
  42. package/dist/collections/mdx.js +240 -280
  43. package/dist/collections/mdx.js.map +1 -0
  44. package/dist/collections/meta/loader-webpack.d.ts +6 -14
  45. package/dist/collections/meta/loader-webpack.d.ts.map +1 -0
  46. package/dist/collections/meta/loader-webpack.js +25 -38
  47. package/dist/collections/meta/loader-webpack.js.map +1 -0
  48. package/dist/collections/meta/runtime.d.ts +7 -15
  49. package/dist/collections/meta/runtime.d.ts.map +1 -0
  50. package/dist/collections/meta/runtime.js +9 -15
  51. package/dist/collections/meta/runtime.js.map +1 -0
  52. package/dist/collections/meta.d.ts +2 -10
  53. package/dist/collections/meta.js +128 -160
  54. package/dist/collections/meta.js.map +1 -0
  55. package/dist/collections/runtime/file-store.d.ts +17 -14
  56. package/dist/collections/runtime/file-store.d.ts.map +1 -0
  57. package/dist/collections/runtime/file-store.js +30 -6
  58. package/dist/collections/runtime/file-store.js.map +1 -0
  59. package/dist/collections/runtime/store.d.ts +3 -28
  60. package/dist/collections/runtime/store.js +3 -6
  61. package/dist/config/index.d.ts +2 -10
  62. package/dist/config/index.js +6 -5
  63. package/dist/config/index.js.map +1 -0
  64. package/dist/core-Bkh-SI_3.d.ts +561 -0
  65. package/dist/core-Bkh-SI_3.d.ts.map +1 -0
  66. package/dist/core-ZuoVBkeg.js +170 -0
  67. package/dist/core-ZuoVBkeg.js.map +1 -0
  68. package/dist/dynamic-B40uAtdo.js +28 -0
  69. package/dist/dynamic-B40uAtdo.js.map +1 -0
  70. package/dist/fuma-matter-O4fA6nSx.js +27 -0
  71. package/dist/fuma-matter-O4fA6nSx.js.map +1 -0
  72. package/dist/index.d.ts +13 -14
  73. package/dist/index.d.ts.map +1 -0
  74. package/dist/index.js +6 -0
  75. package/dist/load-from-file-1f4WaHsf.js +38 -0
  76. package/dist/load-from-file-1f4WaHsf.js.map +1 -0
  77. package/dist/load-from-file-BTNnBu6f.js +3 -0
  78. package/dist/loader-80abXEHx.js +4 -0
  79. package/dist/loader-BFhPyg3z.js +4 -0
  80. package/dist/loader-CXnMFuyE.js +80 -0
  81. package/dist/loader-CXnMFuyE.js.map +1 -0
  82. package/dist/loader-gk94iHf5.js +66 -0
  83. package/dist/loader-gk94iHf5.js.map +1 -0
  84. package/dist/next/index.cjs +459 -528
  85. package/dist/next/index.d.ts +16 -22
  86. package/dist/next/index.d.ts.map +1 -0
  87. package/dist/next/index.js +71 -88
  88. package/dist/next/index.js.map +1 -0
  89. package/dist/node/loader.d.ts +4 -2
  90. package/dist/node/loader.d.ts.map +1 -0
  91. package/dist/node/loader.js +32 -43
  92. package/dist/node/loader.js.map +1 -0
  93. package/dist/node-CGIIJIcs.js +31 -0
  94. package/dist/node-CGIIJIcs.js.map +1 -0
  95. package/dist/pipe-5cnvE6KY.js +31 -0
  96. package/dist/pipe-5cnvE6KY.js.map +1 -0
  97. package/dist/plugins/git.d.ts +2 -10
  98. package/dist/plugins/git.js +57 -65
  99. package/dist/plugins/git.js.map +1 -0
  100. package/dist/plugins/json-schema.d.ts +2 -10
  101. package/dist/plugins/json-schema.js +60 -58
  102. package/dist/plugins/json-schema.js.map +1 -0
  103. package/dist/plugins/with-loader/index.d.ts +2 -61
  104. package/dist/plugins/with-loader/index.js +28 -6
  105. package/dist/plugins/with-loader/index.js.map +1 -0
  106. package/dist/plugins/with-loader/webpack.d.ts +10 -18
  107. package/dist/plugins/with-loader/webpack.d.ts.map +1 -0
  108. package/dist/plugins/with-loader/webpack.js +43 -11
  109. package/dist/plugins/with-loader/webpack.js.map +1 -0
  110. package/dist/store-0LQ2PlH6.js +37 -0
  111. package/dist/store-0LQ2PlH6.js.map +1 -0
  112. package/dist/store-DEjYYF6a.d.ts +31 -0
  113. package/dist/store-DEjYYF6a.d.ts.map +1 -0
  114. package/dist/validation-BOJKRAp5.js +28 -0
  115. package/dist/validation-BOJKRAp5.js.map +1 -0
  116. package/dist/vite/index.d.ts +22 -28
  117. package/dist/vite/index.d.ts.map +1 -0
  118. package/dist/vite/index.js +37 -51
  119. package/dist/vite/index.js.map +1 -0
  120. package/dist/vite-X-2Al8fq.js +32 -0
  121. package/dist/vite-X-2Al8fq.js.map +1 -0
  122. package/package.json +15 -13
  123. package/dist/build-mdx-Q4RMDWYK.js +0 -8
  124. package/dist/bun-DMNX4PBC.js +0 -40
  125. package/dist/chunk-3VQS3KSP.js +0 -39
  126. package/dist/chunk-4RMSJCK2.js +0 -50
  127. package/dist/chunk-6XDQG2GV.js +0 -17
  128. package/dist/chunk-AMBGM4OK.js +0 -412
  129. package/dist/chunk-BTRE6MOX.js +0 -16
  130. package/dist/chunk-E4HRKSP4.js +0 -24
  131. package/dist/chunk-ERBMAQYP.js +0 -33
  132. package/dist/chunk-IGLM4N4P.js +0 -34
  133. package/dist/chunk-LDBQ66H3.js +0 -38
  134. package/dist/chunk-M72VQL5M.js +0 -40
  135. package/dist/chunk-OUJENWQ4.js +0 -45
  136. package/dist/chunk-PNA5UGSL.js +0 -104
  137. package/dist/chunk-RMSV4HP6.js +0 -85
  138. package/dist/chunk-RXR7OL76.js +0 -37
  139. package/dist/chunk-VWJKRQZR.js +0 -19
  140. package/dist/chunk-Z7KHD7MS.js +0 -368
  141. package/dist/core-DxnSmTRe.d.ts +0 -411
  142. package/dist/load-from-file-MLL4WQ5J.js +0 -7
  143. package/dist/loader-T756NSCS.js +0 -7
  144. package/dist/loader-VGDLYG4T.js +0 -7
  145. package/dist/node-DCMYL4DL.js +0 -34
  146. package/dist/vite-QCUPZHHB.js +0 -32
@@ -1,287 +1,247 @@
1
- import {
2
- withLoader
3
- } from "../chunk-ERBMAQYP.js";
4
- import {
5
- buildFileHandler
6
- } from "../chunk-E4HRKSP4.js";
7
- import {
8
- createCollection
9
- } from "../chunk-BTRE6MOX.js";
1
+ import { n as slash } from "../code-generator-gPtrfZ6Q.js";
2
+ import { n as pipe, t as asyncPipe } from "../pipe-5cnvE6KY.js";
3
+ import { n as validate } from "../validation-BOJKRAp5.js";
4
+ import { createCollection } from "./index.js";
5
+ import { initFileCollection } from "./handlers/fs.js";
6
+ import { withLoader } from "../plugins/with-loader/index.js";
7
+ import path from "node:path";
10
8
 
11
- // src/collections/mdx.ts
12
- import path from "path";
13
- var mdxTypeInfo = {
14
- id: "mdx",
15
- plugins: [plugin()]
9
+ //#region src/collections/mdx.ts
10
+ const mdxTypeInfo = {
11
+ id: "mdx",
12
+ plugins: [plugin()]
16
13
  };
17
- var RuntimePaths = {
18
- browser: "fuma-content/collections/mdx/runtime-browser",
19
- dynamic: "fuma-content/collections/mdx/runtime-dynamic",
20
- server: "fuma-content/collections/mdx/runtime"
14
+ const RuntimePaths = {
15
+ browser: "fuma-content/collections/mdx/runtime-browser",
16
+ dynamic: "fuma-content/collections/mdx/runtime-dynamic",
17
+ server: "fuma-content/collections/mdx/runtime"
21
18
  };
22
19
  function defineMDX(config) {
23
- const { lazy = false, dynamic = false } = config;
24
- return createCollection(mdxTypeInfo, (collection, options) => {
25
- collection.handlers.fs = buildFileHandler(options, config, ["mdx", "md"]);
26
- collection.handlers.mdx = {
27
- cwd: options.workspace ? path.resolve(options.workspace.dir) : process.cwd(),
28
- postprocess: config.postprocess,
29
- getMDXOptions: config.options,
30
- dynamic,
31
- lazy,
32
- onGenerateStore(initializer) {
33
- const mdxHandler = collection.handlers.mdx;
34
- if (mdxHandler?.postprocess?.extractLinkReferences) {
35
- this.codegen.addNamedImport(
36
- ["$extractedReferences"],
37
- RuntimePaths[this.environment]
38
- );
39
- initializer += ".$data($extractedReferences())";
40
- }
41
- return initializer;
42
- }
43
- };
44
- collection.handlers["version-control"] = {
45
- client({ client }) {
46
- const mdxHandler = collection.handlers.mdx;
47
- if (!mdxHandler) return;
48
- const { onGenerateStore, vfile } = mdxHandler;
49
- mdxHandler.onGenerateStore = function(initializer) {
50
- this.codegen.addNamedImport(
51
- ["$versionControl"],
52
- RuntimePaths[this.environment]
53
- );
54
- initializer += ".$data($versionControl())";
55
- return onGenerateStore?.call(this, initializer) ?? initializer;
56
- };
57
- mdxHandler.vfile = async function(file) {
58
- const vcData = await client.getFileData({ filePath: file.path });
59
- file.data["mdx-export"] ??= [];
60
- file.data["mdx-export"].push(
61
- {
62
- name: "lastModified",
63
- value: vcData.lastModified
64
- },
65
- {
66
- name: "creationDate",
67
- value: vcData.creationDate
68
- }
69
- );
70
- if (vfile) return vfile?.call(this, file);
71
- return file;
72
- };
73
- }
74
- };
75
- });
20
+ const { lazy = false, dynamic = false } = config;
21
+ return createCollection(mdxTypeInfo, (collection, options) => {
22
+ initFileCollection(collection, options, {
23
+ supportedFormats: ["mdx", "md"],
24
+ ...config
25
+ });
26
+ const mdxHandler = collection.handlers.mdx = {
27
+ cwd: options.workspace ? path.resolve(options.workspace.dir) : process.cwd(),
28
+ postprocess: config.postprocess,
29
+ getMDXOptions: config.options,
30
+ dynamic,
31
+ lazy,
32
+ vfile: asyncPipe(),
33
+ frontmatter: asyncPipe(),
34
+ storeInitializer: pipe()
35
+ };
36
+ if (config.frontmatter) {
37
+ const frontmatter = config.frontmatter;
38
+ mdxHandler.frontmatter.pipe((data, { filePath }) => {
39
+ return validate(frontmatter, data, void 0, `invalid frontmatter in ${filePath}`);
40
+ });
41
+ }
42
+ if (mdxHandler.postprocess?.extractLinkReferences) mdxHandler.storeInitializer.pipe((initializer, { codegen, environment }) => {
43
+ codegen.addNamedImport(["$extractedReferences"], RuntimePaths[environment]);
44
+ return `${initializer}.$data($extractedReferences())`;
45
+ });
46
+ collection.handlers["version-control"] = { client({ client }) {
47
+ const mdxHandler$1 = collection.handlers.mdx;
48
+ if (!mdxHandler$1) return;
49
+ mdxHandler$1.storeInitializer.pipe((initializer, { codegen, environment }) => {
50
+ codegen.addNamedImport(["$versionControl"], RuntimePaths[environment]);
51
+ return `${initializer}.$data($versionControl())`;
52
+ });
53
+ mdxHandler$1.vfile.pipe(async (file) => {
54
+ const vcData = await client.getFileData({ filePath: file.path });
55
+ file.data["mdx-export"] ??= [];
56
+ file.data["mdx-export"].push({
57
+ name: "lastModified",
58
+ value: vcData.lastModified
59
+ }, {
60
+ name: "creationDate",
61
+ value: vcData.creationDate
62
+ });
63
+ return file;
64
+ });
65
+ } };
66
+ });
76
67
  }
77
68
  function plugin() {
78
- const mdxLoaderGlob = /\.mdx?(\?.+?)?$/;
79
- function generateDocCollectionFrontmatterGlob(context, collection, eager = false) {
80
- const handler = collection.handlers.fs;
81
- if (!handler) return "";
82
- return context.codegen.generateGlobImport(handler.patterns, {
83
- query: {
84
- collection: collection.name,
85
- only: "frontmatter",
86
- workspace: context.workspace
87
- },
88
- import: "frontmatter",
89
- base: handler.dir,
90
- eager
91
- });
92
- }
93
- function generateDocCollectionGlob(context, collection, eager = false) {
94
- const handler = collection.handlers.fs;
95
- if (!handler) return "";
96
- return context.codegen.generateGlobImport(handler.patterns, {
97
- query: {
98
- collection: collection.name,
99
- workspace: context.workspace
100
- },
101
- base: handler.dir,
102
- eager
103
- });
104
- }
105
- async function generateCollectionStoreServer(context, collection) {
106
- const mdxHandler = collection.handlers.mdx;
107
- const fsHandler = collection.handlers.fs;
108
- if (!fsHandler || !mdxHandler) return;
109
- const { core, codegen } = context;
110
- const runtimePath = RuntimePaths.server;
111
- const base2 = path.relative(process.cwd(), fsHandler.dir);
112
- let initializer;
113
- codegen.addNamedImport(
114
- ["default as Config"],
115
- codegen.formatImportPath(core.getOptions().configPath),
116
- true
117
- );
118
- if (mdxHandler.lazy) {
119
- codegen.addNamedImport(["mdxStoreLazy"], runtimePath);
120
- const [headGlob, bodyGlob] = await Promise.all([
121
- generateDocCollectionFrontmatterGlob(context, collection, true),
122
- generateDocCollectionGlob(context, collection)
123
- ]);
124
- initializer = `mdxStoreLazy<typeof Config, "${collection.name}">("${collection.name}", "${base2}", { head: ${headGlob}, body: ${bodyGlob} })`;
125
- } else {
126
- codegen.addNamedImport(["mdxStore"], runtimePath);
127
- initializer = `mdxStore<typeof Config, "${collection.name}">("${collection.name}", "${base2}", ${await generateDocCollectionGlob(context, collection, true)})`;
128
- }
129
- initializer = mdxHandler.onGenerateStore?.call(
130
- { ...context, environment: "server" },
131
- initializer
132
- ) ?? initializer;
133
- codegen.push(`export const ${collection.name} = ${initializer};`);
134
- }
135
- async function generateCollectionStoreBrowser(context, collection) {
136
- const mdxHandler = collection.handlers.mdx;
137
- const fsHandler = collection.handlers.fs;
138
- if (!fsHandler || !mdxHandler) return;
139
- const { core, codegen } = context;
140
- const runtimePath = RuntimePaths.browser;
141
- codegen.addNamedImport(["mdxStoreBrowser"], runtimePath);
142
- codegen.addNamedImport(
143
- ["default as Config"],
144
- codegen.formatImportPath(core.getOptions().configPath),
145
- true
146
- );
147
- let initializer = `mdxStoreBrowser<typeof Config, "${collection.name}">("${collection.name}", ${await generateDocCollectionGlob(context, collection)})`;
148
- initializer = mdxHandler.onGenerateStore?.call(
149
- { ...context, environment: "browser" },
150
- initializer
151
- ) ?? initializer;
152
- codegen.push(`export const ${collection.name} = ${initializer};`);
153
- }
154
- async function generateCollectionStoreDynamic(context, collection) {
155
- const mdxHandler = collection.handlers.mdx;
156
- const fsHandler = collection.handlers.fs;
157
- if (!fsHandler || !mdxHandler || !mdxHandler.dynamic) return;
158
- const { core, codegen } = context;
159
- const { configPath, workspace, outDir } = core.getOptions();
160
- const runtimePath = RuntimePaths.dynamic;
161
- const base2 = path.relative(process.cwd(), fsHandler.dir);
162
- codegen.addNamedImport(
163
- ["default as Config"],
164
- codegen.formatImportPath(configPath)
165
- );
166
- codegen.addNamedImport(["mdxStoreDynamic"], runtimePath);
167
- const coreOptions = {
168
- configPath,
169
- workspace,
170
- outDir
171
- };
172
- let initializer = `mdxStoreDynamic<typeof Config, "${collection.name}">(Config, ${JSON.stringify(
173
- coreOptions
174
- )}, "${collection.name}", "${base2}", ${await generateDocCollectionFrontmatterGlob(context, collection, true)})`;
175
- initializer = mdxHandler.onGenerateStore?.call(
176
- { ...context, environment: "dynamic" },
177
- initializer
178
- ) ?? initializer;
179
- codegen.push(`export const ${collection.name} = ${initializer};`);
180
- }
181
- const base = {
182
- name: "mdx",
183
- configureServer(server) {
184
- if (!server.watcher) return;
185
- server.watcher.on("all", async (event, file) => {
186
- const updatedCollection = this.core.getCollections().find((collection) => {
187
- const handlers = collection.handlers;
188
- if (!handlers.mdx || !handlers.fs) return false;
189
- if (event === "change" && !handlers.mdx.dynamic) return false;
190
- return handlers.fs.hasFile(file);
191
- });
192
- if (!updatedCollection) return;
193
- await this.core.emit({
194
- filterPlugin: (plugin2) => plugin2.name === base.name,
195
- filterWorkspace: () => false,
196
- write: true
197
- });
198
- });
199
- },
200
- emit() {
201
- return Promise.all([
202
- this.createCodeGenerator("mdx.ts", async (ctx) => {
203
- for (const collection of this.core.getCollections()) {
204
- await generateCollectionStoreServer(ctx, collection);
205
- }
206
- }),
207
- this.createCodeGenerator("mdx-browser.ts", async (ctx) => {
208
- for (const collection of this.core.getCollections()) {
209
- await generateCollectionStoreBrowser(ctx, collection);
210
- }
211
- ctx.codegen.push(
212
- `export { useRenderer } from "${RuntimePaths.browser}";`
213
- );
214
- }),
215
- this.createCodeGenerator("mdx-dynamic.ts", async (ctx) => {
216
- for (const collection of this.core.getCollections()) {
217
- await generateCollectionStoreDynamic(ctx, collection);
218
- }
219
- })
220
- ]);
221
- },
222
- next: {
223
- config(nextConfig) {
224
- const { configPath, outDir } = this.core.getOptions();
225
- const loaderPath = "fuma-content/collections/mdx/loader-webpack";
226
- const loaderOptions = {
227
- configPath,
228
- outDir,
229
- absoluteCompiledConfigPath: path.resolve(
230
- this.core.getCompiledConfigPath()
231
- ),
232
- isDev: process.env.NODE_ENV === "development"
233
- };
234
- return {
235
- ...nextConfig,
236
- turbopack: {
237
- ...nextConfig.turbopack,
238
- rules: {
239
- ...nextConfig.turbopack?.rules,
240
- "*.{md,mdx}": {
241
- loaders: [
242
- {
243
- loader: loaderPath,
244
- options: loaderOptions
245
- }
246
- ],
247
- as: "*.js"
248
- }
249
- }
250
- },
251
- pageExtensions: [
252
- ...nextConfig.pageExtensions ?? ["js", "jsx", "tsx", "ts"],
253
- "mdx",
254
- "md"
255
- ],
256
- webpack(config, options) {
257
- config.module ||= {};
258
- config.module.rules ||= [];
259
- config.module.rules.push({
260
- test: mdxLoaderGlob,
261
- use: [
262
- options.defaultLoaders.babel,
263
- {
264
- loader: loaderPath,
265
- options: loaderOptions
266
- }
267
- ]
268
- });
269
- return nextConfig.webpack?.(config, options) ?? config;
270
- }
271
- };
272
- }
273
- }
274
- };
275
- return withLoader(base, {
276
- test: mdxLoaderGlob,
277
- async createLoader() {
278
- const { createMdxLoader } = await import("../loader-VGDLYG4T.js");
279
- return createMdxLoader({
280
- getCore: () => this.core
281
- });
282
- }
283
- });
69
+ const mdxLoaderGlob = /\.mdx?(\?.+?)?$/;
70
+ function generateDocCollectionFrontmatterGlob(context, collection, eager = false) {
71
+ const handler = collection.handlers.fs;
72
+ if (!handler) return "";
73
+ return context.codegen.generateGlobImport(handler.patterns, {
74
+ query: {
75
+ collection: collection.name,
76
+ only: "frontmatter",
77
+ workspace: context.workspace
78
+ },
79
+ import: "frontmatter",
80
+ base: handler.dir,
81
+ eager
82
+ });
83
+ }
84
+ function generateDocCollectionGlob(context, collection, eager = false) {
85
+ const handler = collection.handlers.fs;
86
+ if (!handler) return "";
87
+ return context.codegen.generateGlobImport(handler.patterns, {
88
+ query: {
89
+ collection: collection.name,
90
+ workspace: context.workspace
91
+ },
92
+ base: handler.dir,
93
+ eager
94
+ });
95
+ }
96
+ async function generateCollectionStoreServer(context, collection) {
97
+ const mdxHandler = collection.handlers.mdx;
98
+ const fsHandler = collection.handlers.fs;
99
+ if (!fsHandler || !mdxHandler) return;
100
+ const { core, codegen } = context;
101
+ const runtimePath = RuntimePaths.server;
102
+ const base$1 = slash(path.relative(process.cwd(), fsHandler.dir));
103
+ let initializer;
104
+ codegen.addNamespaceImport("Config", codegen.formatImportPath(core.getOptions().configPath), true);
105
+ if (mdxHandler.lazy) {
106
+ codegen.addNamedImport(["mdxStoreLazy"], runtimePath);
107
+ const [headGlob, bodyGlob] = await Promise.all([generateDocCollectionFrontmatterGlob(context, collection, true), generateDocCollectionGlob(context, collection)]);
108
+ initializer = `mdxStoreLazy<typeof Config, "${collection.name}">("${collection.name}", "${base$1}", { head: ${headGlob}, body: ${bodyGlob} })`;
109
+ } else {
110
+ codegen.addNamedImport(["mdxStore"], runtimePath);
111
+ initializer = `mdxStore<typeof Config, "${collection.name}">("${collection.name}", "${base$1}", ${await generateDocCollectionGlob(context, collection, true)})`;
112
+ }
113
+ initializer = mdxHandler.storeInitializer.run(initializer, {
114
+ ...context,
115
+ environment: "server"
116
+ });
117
+ codegen.push(`export const ${collection.name} = ${initializer};`);
118
+ }
119
+ async function generateCollectionStoreBrowser(context, collection) {
120
+ const mdxHandler = collection.handlers.mdx;
121
+ if (!collection.handlers.fs || !mdxHandler) return;
122
+ const { core, codegen } = context;
123
+ const runtimePath = RuntimePaths.browser;
124
+ codegen.addNamedImport(["mdxStoreBrowser"], runtimePath);
125
+ codegen.addNamespaceImport("Config", codegen.formatImportPath(core.getOptions().configPath), true);
126
+ let initializer = `mdxStoreBrowser<typeof Config, "${collection.name}">("${collection.name}", ${await generateDocCollectionGlob(context, collection)})`;
127
+ initializer = mdxHandler.storeInitializer.run(initializer, {
128
+ ...context,
129
+ environment: "browser"
130
+ });
131
+ codegen.push(`export const ${collection.name} = ${initializer};`);
132
+ }
133
+ async function generateCollectionStoreDynamic(context, collection) {
134
+ const mdxHandler = collection.handlers.mdx;
135
+ const fsHandler = collection.handlers.fs;
136
+ if (!fsHandler || !mdxHandler || !mdxHandler.dynamic) return;
137
+ const { core, codegen } = context;
138
+ const { configPath, workspace, outDir } = core.getOptions();
139
+ const runtimePath = RuntimePaths.dynamic;
140
+ const base$1 = slash(path.relative(process.cwd(), fsHandler.dir));
141
+ codegen.addNamespaceImport("Config", codegen.formatImportPath(core.getOptions().configPath));
142
+ codegen.addNamedImport(["mdxStoreDynamic"], runtimePath);
143
+ const coreOptions = {
144
+ configPath,
145
+ workspace,
146
+ outDir
147
+ };
148
+ let initializer = `mdxStoreDynamic<typeof Config, "${collection.name}">(Config, ${JSON.stringify(coreOptions)}, "${collection.name}", "${base$1}", ${await generateDocCollectionFrontmatterGlob(context, collection, true)})`;
149
+ initializer = mdxHandler.storeInitializer.run(initializer, {
150
+ ...context,
151
+ environment: "dynamic"
152
+ });
153
+ codegen.push(`export const ${collection.name} = ${initializer};`);
154
+ }
155
+ const base = {
156
+ name: "mdx",
157
+ configureServer(server) {
158
+ if (!server.watcher) return;
159
+ server.watcher.on("all", async (event, file) => {
160
+ if (!this.core.getCollections().find((collection) => {
161
+ const handlers = collection.handlers;
162
+ if (!handlers.mdx || !handlers.fs) return false;
163
+ if (event === "change" && !handlers.mdx.dynamic) return false;
164
+ return handlers.fs.hasFile(file);
165
+ })) return;
166
+ await this.core.emit({
167
+ filterPlugin: (plugin$1) => plugin$1.name === base.name,
168
+ filterWorkspace: () => false,
169
+ write: true
170
+ });
171
+ });
172
+ },
173
+ emit() {
174
+ return Promise.all([
175
+ this.createCodeGenerator("mdx.ts", async (ctx) => {
176
+ for (const collection of this.core.getCollections()) await generateCollectionStoreServer(ctx, collection);
177
+ }),
178
+ this.createCodeGenerator("mdx-browser.ts", async (ctx) => {
179
+ for (const collection of this.core.getCollections()) await generateCollectionStoreBrowser(ctx, collection);
180
+ ctx.codegen.push(`export { useRenderer } from "${RuntimePaths.browser}";`);
181
+ }),
182
+ this.createCodeGenerator("mdx-dynamic.ts", async (ctx) => {
183
+ for (const collection of this.core.getCollections()) await generateCollectionStoreDynamic(ctx, collection);
184
+ })
185
+ ]);
186
+ },
187
+ next: { config(nextConfig) {
188
+ const { configPath, outDir } = this.core.getOptions();
189
+ const loaderPath = "fuma-content/collections/mdx/loader-webpack";
190
+ const loaderOptions = {
191
+ configPath,
192
+ outDir,
193
+ absoluteCompiledConfigPath: path.resolve(this.core.getCompiledConfigPath()),
194
+ isDev: process.env.NODE_ENV === "development"
195
+ };
196
+ return {
197
+ ...nextConfig,
198
+ turbopack: {
199
+ ...nextConfig.turbopack,
200
+ rules: {
201
+ ...nextConfig.turbopack?.rules,
202
+ "*.{md,mdx}": {
203
+ loaders: [{
204
+ loader: loaderPath,
205
+ options: loaderOptions
206
+ }],
207
+ as: "*.js"
208
+ }
209
+ }
210
+ },
211
+ pageExtensions: [
212
+ ...nextConfig.pageExtensions ?? [
213
+ "js",
214
+ "jsx",
215
+ "tsx",
216
+ "ts"
217
+ ],
218
+ "mdx",
219
+ "md"
220
+ ],
221
+ webpack(config, options) {
222
+ config.module ||= {};
223
+ config.module.rules ||= [];
224
+ config.module.rules.push({
225
+ test: mdxLoaderGlob,
226
+ use: [options.defaultLoaders.babel, {
227
+ loader: loaderPath,
228
+ options: loaderOptions
229
+ }]
230
+ });
231
+ return nextConfig.webpack?.(config, options) ?? config;
232
+ }
233
+ };
234
+ } }
235
+ };
236
+ return withLoader(base, {
237
+ test: mdxLoaderGlob,
238
+ async createLoader() {
239
+ const { createMdxLoader } = await import("../loader-80abXEHx.js");
240
+ return createMdxLoader({ getCore: () => this.core });
241
+ }
242
+ });
284
243
  }
285
- export {
286
- defineMDX
287
- };
244
+
245
+ //#endregion
246
+ export { defineMDX };
247
+ //# sourceMappingURL=mdx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mdx.js","names":["mdxTypeInfo: CollectionTypeInfo","mdxHandler","base","initializer: string","coreOptions: CoreOptions","base: Plugin","plugin","loaderOptions: WebpackLoaderOptions"],"sources":["../../src/collections/mdx.ts"],"sourcesContent":["import {\n type Collection,\n type CollectionTypeInfo,\n createCollection,\n} from \"@/collections\";\nimport {\n type FileHandlerConfig,\n initFileCollection,\n} from \"@/collections/handlers/fs\";\nimport type { PostprocessOptions } from \"@/collections/mdx/remark-postprocess\";\nimport type { CoreOptions, EmitCodeGeneratorContext, Plugin } from \"@/core\";\nimport type { ProcessorOptions } from \"@mdx-js/mdx\";\nimport path from \"node:path\";\nimport type { VFile } from \"vfile\";\nimport type { TurbopackLoaderOptions } from \"next/dist/server/config-shared\";\nimport type { Configuration } from \"webpack\";\nimport type { WebpackLoaderOptions } from \"@/plugins/with-loader/webpack\";\nimport { withLoader } from \"@/plugins/with-loader\";\nimport type { StandardSchemaV1 } from \"@standard-schema/spec\";\nimport type { PreprocessOptions } from \"@/collections/mdx/remark-preprocess\";\nimport { slash } from \"@/utils/code-generator\";\nimport { validate } from \"@/utils/validation\";\nimport type { Awaitable } from \"@/types\";\nimport { type AsyncPipe, asyncPipe, type Pipe, pipe } from \"@/utils/pipe\";\n\ninterface CompilationContext {\n collection: Collection;\n filePath: string;\n source: string;\n}\n\nexport interface MDXCollectionHandler {\n readonly cwd: string;\n readonly dynamic: boolean;\n readonly lazy: boolean;\n\n preprocess?: PreprocessOptions;\n postprocess?: Partial<PostprocessOptions>;\n getMDXOptions?: (\n environment: \"bundler\" | \"runtime\",\n ) => Awaitable<ProcessorOptions>;\n\n /**\n * Transform & validate frontmatter\n */\n frontmatter: AsyncPipe<\n Record<string, unknown> | undefined,\n CompilationContext\n >;\n\n /**\n * Transform `vfile` on compilation stage\n */\n vfile: AsyncPipe<VFile, CompilationContext>;\n\n /**\n * Transform the initializer code (TypeScript) for collection store\n */\n storeInitializer: Pipe<\n string,\n EmitCodeGeneratorContext & {\n environment: \"browser\" | \"server\" | \"dynamic\";\n }\n >;\n}\n\nexport interface MDXCollectionConfig<\n FrontmatterSchema extends StandardSchemaV1 | undefined = undefined,\n> extends FileHandlerConfig {\n postprocess?: Partial<PostprocessOptions>;\n frontmatter?: FrontmatterSchema;\n options?: (environment: \"bundler\" | \"runtime\") => Awaitable<ProcessorOptions>;\n lazy?: boolean;\n dynamic?: boolean;\n}\n\nexport interface MDXCollection<Frontmatter> extends Collection {\n _frontmatter?: Frontmatter;\n}\n\nconst mdxTypeInfo: CollectionTypeInfo = {\n id: \"mdx\",\n plugins: [plugin()],\n};\n\nconst RuntimePaths = {\n browser: \"fuma-content/collections/mdx/runtime-browser\",\n dynamic: \"fuma-content/collections/mdx/runtime-dynamic\",\n server: \"fuma-content/collections/mdx/runtime\",\n};\n\nexport function defineMDX<\n FrontmatterSchema extends StandardSchemaV1 | undefined = undefined,\n>(\n config: MDXCollectionConfig<FrontmatterSchema>,\n): MDXCollection<\n FrontmatterSchema extends StandardSchemaV1\n ? StandardSchemaV1.InferOutput<FrontmatterSchema>\n : Record<string, unknown>\n> {\n const { lazy = false, dynamic = false } = config;\n return createCollection(mdxTypeInfo, (collection, options) => {\n initFileCollection(collection, options, {\n supportedFormats: [\"mdx\", \"md\"],\n ...config,\n });\n const mdxHandler = (collection.handlers.mdx = {\n cwd: options.workspace\n ? path.resolve(options.workspace.dir)\n : process.cwd(),\n postprocess: config.postprocess,\n getMDXOptions: config.options,\n dynamic,\n lazy: lazy,\n vfile: asyncPipe(),\n frontmatter: asyncPipe(),\n storeInitializer: pipe(),\n });\n\n if (config.frontmatter) {\n const frontmatter = config.frontmatter;\n mdxHandler.frontmatter.pipe((data, { filePath }) => {\n return validate(\n frontmatter,\n data,\n undefined,\n `invalid frontmatter in ${filePath}`,\n ) as Promise<Record<string, unknown>>;\n });\n }\n\n if (mdxHandler.postprocess?.extractLinkReferences) {\n mdxHandler.storeInitializer.pipe(\n (initializer, { codegen, environment }) => {\n codegen.addNamedImport(\n [\"$extractedReferences\"],\n RuntimePaths[environment],\n );\n return `${initializer}.$data($extractedReferences())`;\n },\n );\n }\n\n collection.handlers[\"version-control\"] = {\n client({ client }) {\n const mdxHandler = collection.handlers.mdx;\n if (!mdxHandler) return;\n\n mdxHandler.storeInitializer.pipe(\n (initializer, { codegen, environment }) => {\n codegen.addNamedImport(\n [\"$versionControl\"],\n RuntimePaths[environment],\n );\n return `${initializer}.$data($versionControl())`;\n },\n );\n\n mdxHandler.vfile.pipe(async (file) => {\n const vcData = await client.getFileData({ filePath: file.path });\n file.data[\"mdx-export\"] ??= [];\n file.data[\"mdx-export\"].push(\n {\n name: \"lastModified\",\n value: vcData.lastModified,\n },\n {\n name: \"creationDate\",\n value: vcData.creationDate,\n },\n );\n return file;\n });\n },\n };\n });\n}\n\nfunction plugin(): Plugin {\n const mdxLoaderGlob = /\\.mdx?(\\?.+?)?$/;\n\n function generateDocCollectionFrontmatterGlob(\n context: EmitCodeGeneratorContext,\n collection: Collection,\n eager = false,\n ) {\n const handler = collection.handlers.fs;\n if (!handler) return \"\";\n return context.codegen.generateGlobImport(handler.patterns, {\n query: {\n collection: collection.name,\n only: \"frontmatter\",\n workspace: context.workspace,\n },\n import: \"frontmatter\",\n base: handler.dir,\n eager,\n });\n }\n\n function generateDocCollectionGlob(\n context: EmitCodeGeneratorContext,\n collection: Collection,\n eager = false,\n ) {\n const handler = collection.handlers.fs;\n if (!handler) return \"\";\n return context.codegen.generateGlobImport(handler.patterns, {\n query: {\n collection: collection.name,\n workspace: context.workspace,\n },\n base: handler.dir,\n eager,\n });\n }\n\n async function generateCollectionStoreServer(\n context: EmitCodeGeneratorContext,\n collection: Collection,\n ) {\n const mdxHandler = collection.handlers.mdx;\n const fsHandler = collection.handlers.fs;\n if (!fsHandler || !mdxHandler) return;\n const { core, codegen } = context;\n const runtimePath = RuntimePaths.server;\n const base = slash(path.relative(process.cwd(), fsHandler.dir));\n let initializer: string;\n codegen.addNamespaceImport(\n \"Config\",\n codegen.formatImportPath(core.getOptions().configPath),\n true,\n );\n\n if (mdxHandler.lazy) {\n codegen.addNamedImport([\"mdxStoreLazy\"], runtimePath);\n const [headGlob, bodyGlob] = await Promise.all([\n generateDocCollectionFrontmatterGlob(context, collection, true),\n generateDocCollectionGlob(context, collection),\n ]);\n\n initializer = `mdxStoreLazy<typeof Config, \"${collection.name}\">(\"${collection.name}\", \"${base}\", { head: ${headGlob}, body: ${bodyGlob} })`;\n } else {\n codegen.addNamedImport([\"mdxStore\"], runtimePath);\n initializer = `mdxStore<typeof Config, \"${collection.name}\">(\"${collection.name}\", \"${base}\", ${await generateDocCollectionGlob(context, collection, true)})`;\n }\n\n initializer = mdxHandler.storeInitializer.run(initializer, {\n ...context,\n environment: \"server\",\n });\n codegen.push(`export const ${collection.name} = ${initializer};`);\n }\n\n async function generateCollectionStoreBrowser(\n context: EmitCodeGeneratorContext,\n collection: Collection,\n ) {\n const mdxHandler = collection.handlers.mdx;\n const fsHandler = collection.handlers.fs;\n if (!fsHandler || !mdxHandler) return;\n const { core, codegen } = context;\n const runtimePath = RuntimePaths.browser;\n codegen.addNamedImport([\"mdxStoreBrowser\"], runtimePath);\n codegen.addNamespaceImport(\n \"Config\",\n codegen.formatImportPath(core.getOptions().configPath),\n true,\n );\n\n let initializer = `mdxStoreBrowser<typeof Config, \"${collection.name}\">(\"${collection.name}\", ${await generateDocCollectionGlob(context, collection)})`;\n\n initializer = mdxHandler.storeInitializer.run(initializer, {\n ...context,\n environment: \"browser\",\n });\n codegen.push(`export const ${collection.name} = ${initializer};`);\n }\n\n async function generateCollectionStoreDynamic(\n context: EmitCodeGeneratorContext,\n collection: Collection,\n ) {\n const mdxHandler = collection.handlers.mdx;\n const fsHandler = collection.handlers.fs;\n if (!fsHandler || !mdxHandler || !mdxHandler.dynamic) return;\n const { core, codegen } = context;\n const { configPath, workspace, outDir } = core.getOptions();\n const runtimePath = RuntimePaths.dynamic;\n const base = slash(path.relative(process.cwd(), fsHandler.dir));\n codegen.addNamespaceImport(\n \"Config\",\n codegen.formatImportPath(core.getOptions().configPath),\n );\n codegen.addNamedImport([\"mdxStoreDynamic\"], runtimePath);\n\n const coreOptions: CoreOptions = {\n configPath,\n workspace,\n outDir,\n };\n let initializer = `mdxStoreDynamic<typeof Config, \"${collection.name}\">(Config, ${JSON.stringify(\n coreOptions,\n )}, \"${collection.name}\", \"${base}\", ${await generateDocCollectionFrontmatterGlob(context, collection, true)})`;\n\n initializer = mdxHandler.storeInitializer.run(initializer, {\n ...context,\n environment: \"dynamic\",\n });\n codegen.push(`export const ${collection.name} = ${initializer};`);\n }\n\n const base: Plugin = {\n name: \"mdx\",\n configureServer(server) {\n if (!server.watcher) return;\n\n server.watcher.on(\"all\", async (event, file) => {\n const updatedCollection = this.core\n .getCollections()\n .find((collection) => {\n const handlers = collection.handlers;\n if (!handlers.mdx || !handlers.fs) return false;\n if (event === \"change\" && !handlers.mdx.dynamic) return false;\n return handlers.fs.hasFile(file);\n });\n\n if (!updatedCollection) return;\n await this.core.emit({\n filterPlugin: (plugin) => plugin.name === base.name,\n filterWorkspace: () => false,\n write: true,\n });\n });\n },\n emit() {\n return Promise.all([\n this.createCodeGenerator(\"mdx.ts\", async (ctx) => {\n for (const collection of this.core.getCollections()) {\n await generateCollectionStoreServer(ctx, collection);\n }\n }),\n\n this.createCodeGenerator(\"mdx-browser.ts\", async (ctx) => {\n for (const collection of this.core.getCollections()) {\n await generateCollectionStoreBrowser(ctx, collection);\n }\n\n ctx.codegen.push(\n `export { useRenderer } from \"${RuntimePaths.browser}\";`,\n );\n }),\n\n this.createCodeGenerator(\"mdx-dynamic.ts\", async (ctx) => {\n for (const collection of this.core.getCollections()) {\n await generateCollectionStoreDynamic(ctx, collection);\n }\n }),\n ]);\n },\n next: {\n config(nextConfig) {\n const { configPath, outDir } = this.core.getOptions();\n const loaderPath = \"fuma-content/collections/mdx/loader-webpack\";\n const loaderOptions: WebpackLoaderOptions = {\n configPath,\n outDir,\n absoluteCompiledConfigPath: path.resolve(\n this.core.getCompiledConfigPath(),\n ),\n isDev: process.env.NODE_ENV === \"development\",\n };\n\n return {\n ...nextConfig,\n turbopack: {\n ...nextConfig.turbopack,\n rules: {\n ...nextConfig.turbopack?.rules,\n \"*.{md,mdx}\": {\n loaders: [\n {\n loader: loaderPath,\n options: loaderOptions as unknown as TurbopackLoaderOptions,\n },\n ],\n as: \"*.js\",\n },\n },\n },\n pageExtensions: [\n ...(nextConfig.pageExtensions ?? [\"js\", \"jsx\", \"tsx\", \"ts\"]),\n \"mdx\",\n \"md\",\n ],\n webpack(config: Configuration, options) {\n config.module ||= {};\n config.module.rules ||= [];\n config.module.rules.push({\n test: mdxLoaderGlob,\n use: [\n options.defaultLoaders.babel,\n {\n loader: loaderPath,\n options: loaderOptions,\n },\n ],\n });\n\n return nextConfig.webpack?.(config, options) ?? config;\n },\n };\n },\n },\n };\n\n return withLoader(base, {\n test: mdxLoaderGlob,\n async createLoader() {\n const { createMdxLoader } = await import(\"./mdx/loader\");\n return createMdxLoader({\n getCore: () => this.core,\n });\n },\n });\n}\n\nexport type { ExtractedReference } from \"@/collections/mdx/remark-postprocess\";\nexport type { CompiledMDXData, CompiledMDX } from \"@/collections/mdx/build-mdx\";\n"],"mappings":"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"}
@@ -1,17 +1,9 @@
1
- import { LoaderContext } from 'webpack';
2
- import { WebpackLoaderOptions } from '../../plugins/with-loader/webpack.js';
3
- import '../../plugins/with-loader/index.js';
4
- import '../../core-DxnSmTRe.js';
5
- import 'chokidar';
6
- import '@mdx-js/mdx';
7
- import 'vfile';
8
- import '@standard-schema/spec';
9
- import 'unified';
10
- import 'mdast';
11
- import 'vite';
12
- import 'next';
13
- import 'node:module';
1
+ import "../../core-Bkh-SI_3.js";
2
+ import { WebpackLoaderOptions } from "../../plugins/with-loader/webpack.js";
3
+ import { LoaderContext } from "webpack";
14
4
 
5
+ //#region src/collections/meta/loader-webpack.d.ts
15
6
  declare function loader(this: LoaderContext<WebpackLoaderOptions>, source: string): Promise<void>;
16
-
7
+ //#endregion
17
8
  export { loader as default };
9
+ //# sourceMappingURL=loader-webpack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader-webpack.d.ts","names":[],"sources":["../../../src/collections/meta/loader-webpack.ts"],"sourcesContent":[],"mappings":";;;;;iBAY8B,MAAA,OACtB,cAAc,wCAEnB"}