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.
- package/dist/async-cache-BM9Yf4Nw.js +29 -0
- package/dist/async-cache-BM9Yf4Nw.js.map +1 -0
- package/dist/bin.d.ts +1 -1
- package/dist/bin.js +21 -14
- package/dist/bin.js.map +1 -0
- package/dist/build-D8A5ByFk.js +42 -0
- package/dist/build-D8A5ByFk.js.map +1 -0
- package/dist/build-mdx-C1PZsGp2.js +395 -0
- package/dist/build-mdx-C1PZsGp2.js.map +1 -0
- package/dist/build-mdx-DFndaVbS.js +4 -0
- package/dist/bun/index.d.ts +6 -13
- package/dist/bun/index.d.ts.map +1 -0
- package/dist/bun/index.js +23 -33
- package/dist/bun/index.js.map +1 -0
- package/dist/bun-QKQnqgIi.js +35 -0
- package/dist/bun-QKQnqgIi.js.map +1 -0
- package/dist/code-generator-gPtrfZ6Q.js +133 -0
- package/dist/code-generator-gPtrfZ6Q.js.map +1 -0
- package/dist/collections/handlers/fs.d.ts +2 -10
- package/dist/collections/handlers/fs.js +28 -6
- package/dist/collections/handlers/fs.js.map +1 -0
- package/dist/collections/index.d.ts +2 -10
- package/dist/collections/index.js +16 -6
- package/dist/collections/index.js.map +1 -0
- package/dist/collections/mdx/loader-webpack.d.ts +6 -14
- package/dist/collections/mdx/loader-webpack.d.ts.map +1 -0
- package/dist/collections/mdx/loader-webpack.js +23 -35
- package/dist/collections/mdx/loader-webpack.js.map +1 -0
- package/dist/collections/mdx/runtime-browser.d.ts +33 -32
- package/dist/collections/mdx/runtime-browser.d.ts.map +1 -0
- package/dist/collections/mdx/runtime-browser.js +57 -62
- package/dist/collections/mdx/runtime-browser.js.map +1 -0
- package/dist/collections/mdx/runtime-dynamic.d.ts +24 -31
- package/dist/collections/mdx/runtime-dynamic.d.ts.map +1 -0
- package/dist/collections/mdx/runtime-dynamic.js +63 -83
- package/dist/collections/mdx/runtime-dynamic.js.map +1 -0
- package/dist/collections/mdx/runtime.d.ts +34 -54
- package/dist/collections/mdx/runtime.d.ts.map +1 -0
- package/dist/collections/mdx/runtime.js +24 -34
- package/dist/collections/mdx/runtime.js.map +1 -0
- package/dist/collections/mdx.d.ts +2 -10
- package/dist/collections/mdx.js +240 -280
- package/dist/collections/mdx.js.map +1 -0
- package/dist/collections/meta/loader-webpack.d.ts +6 -14
- package/dist/collections/meta/loader-webpack.d.ts.map +1 -0
- package/dist/collections/meta/loader-webpack.js +25 -38
- package/dist/collections/meta/loader-webpack.js.map +1 -0
- package/dist/collections/meta/runtime.d.ts +7 -15
- package/dist/collections/meta/runtime.d.ts.map +1 -0
- package/dist/collections/meta/runtime.js +9 -15
- package/dist/collections/meta/runtime.js.map +1 -0
- package/dist/collections/meta.d.ts +2 -10
- package/dist/collections/meta.js +128 -160
- package/dist/collections/meta.js.map +1 -0
- package/dist/collections/runtime/file-store.d.ts +17 -14
- package/dist/collections/runtime/file-store.d.ts.map +1 -0
- package/dist/collections/runtime/file-store.js +30 -6
- package/dist/collections/runtime/file-store.js.map +1 -0
- package/dist/collections/runtime/store.d.ts +3 -28
- package/dist/collections/runtime/store.js +3 -6
- package/dist/config/index.d.ts +2 -10
- package/dist/config/index.js +6 -5
- package/dist/config/index.js.map +1 -0
- package/dist/core-Bkh-SI_3.d.ts +561 -0
- package/dist/core-Bkh-SI_3.d.ts.map +1 -0
- package/dist/core-ZuoVBkeg.js +170 -0
- package/dist/core-ZuoVBkeg.js.map +1 -0
- package/dist/dynamic-B40uAtdo.js +28 -0
- package/dist/dynamic-B40uAtdo.js.map +1 -0
- package/dist/fuma-matter-O4fA6nSx.js +27 -0
- package/dist/fuma-matter-O4fA6nSx.js.map +1 -0
- package/dist/index.d.ts +13 -14
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/load-from-file-1f4WaHsf.js +38 -0
- package/dist/load-from-file-1f4WaHsf.js.map +1 -0
- package/dist/load-from-file-BTNnBu6f.js +3 -0
- package/dist/loader-80abXEHx.js +4 -0
- package/dist/loader-BFhPyg3z.js +4 -0
- package/dist/loader-CXnMFuyE.js +80 -0
- package/dist/loader-CXnMFuyE.js.map +1 -0
- package/dist/loader-gk94iHf5.js +66 -0
- package/dist/loader-gk94iHf5.js.map +1 -0
- package/dist/next/index.cjs +459 -528
- package/dist/next/index.d.ts +16 -22
- package/dist/next/index.d.ts.map +1 -0
- package/dist/next/index.js +71 -88
- package/dist/next/index.js.map +1 -0
- package/dist/node/loader.d.ts +4 -2
- package/dist/node/loader.d.ts.map +1 -0
- package/dist/node/loader.js +32 -43
- package/dist/node/loader.js.map +1 -0
- package/dist/node-CGIIJIcs.js +31 -0
- package/dist/node-CGIIJIcs.js.map +1 -0
- package/dist/pipe-5cnvE6KY.js +31 -0
- package/dist/pipe-5cnvE6KY.js.map +1 -0
- package/dist/plugins/git.d.ts +2 -10
- package/dist/plugins/git.js +57 -65
- package/dist/plugins/git.js.map +1 -0
- package/dist/plugins/json-schema.d.ts +2 -10
- package/dist/plugins/json-schema.js +60 -58
- package/dist/plugins/json-schema.js.map +1 -0
- package/dist/plugins/with-loader/index.d.ts +2 -61
- package/dist/plugins/with-loader/index.js +28 -6
- package/dist/plugins/with-loader/index.js.map +1 -0
- package/dist/plugins/with-loader/webpack.d.ts +10 -18
- package/dist/plugins/with-loader/webpack.d.ts.map +1 -0
- package/dist/plugins/with-loader/webpack.js +43 -11
- package/dist/plugins/with-loader/webpack.js.map +1 -0
- package/dist/store-0LQ2PlH6.js +37 -0
- package/dist/store-0LQ2PlH6.js.map +1 -0
- package/dist/store-DEjYYF6a.d.ts +31 -0
- package/dist/store-DEjYYF6a.d.ts.map +1 -0
- package/dist/validation-BOJKRAp5.js +28 -0
- package/dist/validation-BOJKRAp5.js.map +1 -0
- package/dist/vite/index.d.ts +22 -28
- package/dist/vite/index.d.ts.map +1 -0
- package/dist/vite/index.js +37 -51
- package/dist/vite/index.js.map +1 -0
- package/dist/vite-X-2Al8fq.js +32 -0
- package/dist/vite-X-2Al8fq.js.map +1 -0
- package/package.json +15 -13
- package/dist/build-mdx-Q4RMDWYK.js +0 -8
- package/dist/bun-DMNX4PBC.js +0 -40
- package/dist/chunk-3VQS3KSP.js +0 -39
- package/dist/chunk-4RMSJCK2.js +0 -50
- package/dist/chunk-6XDQG2GV.js +0 -17
- package/dist/chunk-AMBGM4OK.js +0 -412
- package/dist/chunk-BTRE6MOX.js +0 -16
- package/dist/chunk-E4HRKSP4.js +0 -24
- package/dist/chunk-ERBMAQYP.js +0 -33
- package/dist/chunk-IGLM4N4P.js +0 -34
- package/dist/chunk-LDBQ66H3.js +0 -38
- package/dist/chunk-M72VQL5M.js +0 -40
- package/dist/chunk-OUJENWQ4.js +0 -45
- package/dist/chunk-PNA5UGSL.js +0 -104
- package/dist/chunk-RMSV4HP6.js +0 -85
- package/dist/chunk-RXR7OL76.js +0 -37
- package/dist/chunk-VWJKRQZR.js +0 -19
- package/dist/chunk-Z7KHD7MS.js +0 -368
- package/dist/core-DxnSmTRe.d.ts +0 -411
- package/dist/load-from-file-MLL4WQ5J.js +0 -7
- package/dist/loader-T756NSCS.js +0 -7
- package/dist/loader-VGDLYG4T.js +0 -7
- package/dist/node-DCMYL4DL.js +0 -34
- package/dist/vite-QCUPZHHB.js +0 -32
|
@@ -1,74 +1,69 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
SimpleCollectionStore
|
|
4
|
-
} from "../../chunk-3VQS3KSP.js";
|
|
5
2
|
|
|
6
|
-
|
|
7
|
-
import {
|
|
8
|
-
|
|
3
|
+
import { t as createCache } from "../../async-cache-BM9Yf4Nw.js";
|
|
4
|
+
import { t as SimpleCollectionStore } from "../../store-0LQ2PlH6.js";
|
|
5
|
+
import { createElement, lazy } from "react";
|
|
6
|
+
|
|
7
|
+
//#region src/collections/mdx/runtime-browser.ts
|
|
8
|
+
const _internal_data = /* @__PURE__ */ new Map();
|
|
9
9
|
function mdxStoreBrowser(name, _input) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
return new SimpleCollectionStore(merged);
|
|
10
|
+
const input = _input;
|
|
11
|
+
const merged = /* @__PURE__ */ new Map();
|
|
12
|
+
function getStoreData() {
|
|
13
|
+
let store = _internal_data.get(name);
|
|
14
|
+
if (store) return store;
|
|
15
|
+
store = { preloaded: createCache() };
|
|
16
|
+
_internal_data.set(name, store);
|
|
17
|
+
return store;
|
|
18
|
+
}
|
|
19
|
+
const _renderer = {
|
|
20
|
+
storeId: name,
|
|
21
|
+
renderers: /* @__PURE__ */ new Map()
|
|
22
|
+
};
|
|
23
|
+
for (const [key, value] of Object.entries(input)) merged.set(key, {
|
|
24
|
+
id: key,
|
|
25
|
+
preload() {
|
|
26
|
+
return getStoreData().preloaded.$value().cached(key, value);
|
|
27
|
+
},
|
|
28
|
+
_renderer
|
|
29
|
+
});
|
|
30
|
+
return new SimpleCollectionStore(merged);
|
|
34
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* Renders content with `React.lazy`.
|
|
34
|
+
*/
|
|
35
35
|
function useRenderer(entry, renderFn) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return createElement(renderer);
|
|
36
|
+
if (!entry) return null;
|
|
37
|
+
const { id, _renderer: { renderers } } = entry;
|
|
38
|
+
let renderer = renderers.get(id);
|
|
39
|
+
if (!renderer) {
|
|
40
|
+
const OnDemand = lazy(async () => {
|
|
41
|
+
const loaded = await entry.preload();
|
|
42
|
+
return { default: () => renderFn(loaded) };
|
|
43
|
+
});
|
|
44
|
+
renderer = {
|
|
45
|
+
forceOnDemand: false,
|
|
46
|
+
fn() {
|
|
47
|
+
const v = entry.preload();
|
|
48
|
+
if (!(v instanceof Promise) && !this.forceOnDemand) return renderFn(v);
|
|
49
|
+
this.forceOnDemand = true;
|
|
50
|
+
return createElement(OnDemand);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
renderers.set(id, renderer);
|
|
54
|
+
}
|
|
55
|
+
return renderer.fn();
|
|
57
56
|
}
|
|
58
57
|
function $attachCompiled() {
|
|
59
|
-
|
|
58
|
+
return (data) => data;
|
|
60
59
|
}
|
|
61
60
|
function $extractedReferences() {
|
|
62
|
-
|
|
61
|
+
return $attachCompiled();
|
|
63
62
|
}
|
|
64
63
|
function $versionControl() {
|
|
65
|
-
|
|
64
|
+
return $attachCompiled();
|
|
66
65
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
_internal_data,
|
|
72
|
-
mdxStoreBrowser,
|
|
73
|
-
useRenderer
|
|
74
|
-
};
|
|
66
|
+
|
|
67
|
+
//#endregion
|
|
68
|
+
export { $attachCompiled, $extractedReferences, $versionControl, _internal_data, mdxStoreBrowser, useRenderer };
|
|
69
|
+
//# sourceMappingURL=runtime-browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-browser.js","names":["_renderer: StoreRendererData"],"sources":["../../../src/collections/mdx/runtime-browser.ts"],"sourcesContent":["\"use client\";\n\nimport { type ReactNode, lazy, createElement } from \"react\";\nimport type { GetCollectionConfig } from \"@/types\";\nimport type { MDXCollection } from \"@/collections/mdx\";\nimport type { ExtractedReference } from \"@/collections/mdx/remark-postprocess\";\nimport { SimpleCollectionStore } from \"@/collections/runtime/store\";\nimport type { VersionControlFileData } from \"@/plugins/git\";\nimport { type AsyncCache, createCache } from \"@/utils/async-cache\";\nimport type { CompiledMDX } from \"@/collections/mdx/build-mdx\";\n\nexport interface MDXStoreBrowserData<Frontmatter, CustomData> {\n id: string;\n preload: () =>\n | (CompiledMDX<Frontmatter> & CustomData)\n | Promise<CompiledMDX<Frontmatter> & CustomData>;\n _renderer: StoreRendererData;\n}\n\ninterface StoreRendererData {\n storeId: string;\n renderers: Map<\n string,\n {\n fn: () => ReactNode;\n forceOnDemand: boolean;\n }\n >;\n}\n\ninterface StoreData {\n preloaded: AsyncCache<CompiledMDX>;\n}\n\ntype GetFrontmatter<Config, Name extends string> =\n GetCollectionConfig<Config, Name> extends MDXCollection<infer _Frontmatter>\n ? _Frontmatter\n : never;\n\nexport const _internal_data = new Map<string, StoreData>();\n\nexport function mdxStoreBrowser<Config, Name extends string>(\n name: Name,\n _input: Record<string, () => Promise<unknown>>,\n): SimpleCollectionStore<\n MDXStoreBrowserData<GetFrontmatter<Config, Name>, unknown>\n> {\n const input = _input as Record<\n string,\n () => Promise<CompiledMDX<GetFrontmatter<Config, Name>>>\n >;\n const merged = new Map<\n string,\n MDXStoreBrowserData<GetFrontmatter<Config, Name>, unknown>\n >();\n function getStoreData(): StoreData {\n let store = _internal_data.get(name);\n if (store) return store;\n\n store = {\n preloaded: createCache(),\n };\n _internal_data.set(name, store);\n return store;\n }\n\n const _renderer: StoreRendererData = {\n storeId: name,\n renderers: new Map(),\n };\n\n for (const [key, value] of Object.entries(input)) {\n merged.set(key, {\n id: key,\n preload() {\n return getStoreData()\n .preloaded.$value<CompiledMDX<GetFrontmatter<Config, Name>>>()\n .cached(key, value);\n },\n _renderer,\n });\n }\n\n return new SimpleCollectionStore(merged);\n}\n\n/**\n * Renders content with `React.lazy`.\n */\nexport function useRenderer<Frontmatter, CustomData>(\n entry: MDXStoreBrowserData<Frontmatter, CustomData> | undefined,\n renderFn: (data: CompiledMDX<Frontmatter> & CustomData) => ReactNode,\n): ReactNode {\n if (!entry) return null;\n const {\n id,\n _renderer: { renderers },\n } = entry;\n let renderer = renderers.get(id);\n\n if (!renderer) {\n const OnDemand = lazy(async () => {\n const loaded = await entry.preload();\n return { default: () => renderFn(loaded) };\n });\n\n renderer = {\n forceOnDemand: false,\n fn() {\n const v = entry.preload();\n if (!(v instanceof Promise) && !this.forceOnDemand) {\n return renderFn(v);\n }\n\n // ensure it won't unmount React lazy during re-renders\n this.forceOnDemand = true;\n return createElement(OnDemand);\n },\n };\n renderers.set(id, renderer);\n }\n\n return renderer.fn();\n}\n\nexport function $attachCompiled<Add>() {\n return <T>(data: T) =>\n data as T extends MDXStoreBrowserData<infer Frontmatter, infer CustomData>\n ? MDXStoreBrowserData<Frontmatter, CustomData & Add>\n : T;\n}\n\nexport function $extractedReferences() {\n return $attachCompiled<{\n /**\n * extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.\n */\n extractedReferences: ExtractedReference[];\n }>();\n}\n\nexport function $versionControl() {\n return $attachCompiled<VersionControlFileData>();\n}\n"],"mappings":";;;;;;;AAuCA,MAAa,iCAAiB,IAAI,KAAwB;AAE1D,SAAgB,gBACd,MACA,QAGA;CACA,MAAM,QAAQ;CAId,MAAM,yBAAS,IAAI,KAGhB;CACH,SAAS,eAA0B;EACjC,IAAI,QAAQ,eAAe,IAAI,KAAK;AACpC,MAAI,MAAO,QAAO;AAElB,UAAQ,EACN,WAAW,aAAa,EACzB;AACD,iBAAe,IAAI,MAAM,MAAM;AAC/B,SAAO;;CAGT,MAAMA,YAA+B;EACnC,SAAS;EACT,2BAAW,IAAI,KAAK;EACrB;AAED,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAM,CAC9C,QAAO,IAAI,KAAK;EACd,IAAI;EACJ,UAAU;AACR,UAAO,cAAc,CAClB,UAAU,QAAmD,CAC7D,OAAO,KAAK,MAAM;;EAEvB;EACD,CAAC;AAGJ,QAAO,IAAI,sBAAsB,OAAO;;;;;AAM1C,SAAgB,YACd,OACA,UACW;AACX,KAAI,CAAC,MAAO,QAAO;CACnB,MAAM,EACJ,IACA,WAAW,EAAE,gBACX;CACJ,IAAI,WAAW,UAAU,IAAI,GAAG;AAEhC,KAAI,CAAC,UAAU;EACb,MAAM,WAAW,KAAK,YAAY;GAChC,MAAM,SAAS,MAAM,MAAM,SAAS;AACpC,UAAO,EAAE,eAAe,SAAS,OAAO,EAAE;IAC1C;AAEF,aAAW;GACT,eAAe;GACf,KAAK;IACH,MAAM,IAAI,MAAM,SAAS;AACzB,QAAI,EAAE,aAAa,YAAY,CAAC,KAAK,cACnC,QAAO,SAAS,EAAE;AAIpB,SAAK,gBAAgB;AACrB,WAAO,cAAc,SAAS;;GAEjC;AACD,YAAU,IAAI,IAAI,SAAS;;AAG7B,QAAO,SAAS,IAAI;;AAGtB,SAAgB,kBAAuB;AACrC,SAAW,SACT;;AAKJ,SAAgB,uBAAuB;AACrC,QAAO,iBAKH;;AAGN,SAAgB,kBAAkB;AAChC,QAAO,iBAAyC"}
|
|
@@ -1,42 +1,35 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import '@mdx-js/mdx';
|
|
9
|
-
import 'vfile';
|
|
10
|
-
import '@standard-schema/spec';
|
|
11
|
-
import 'unified';
|
|
12
|
-
import 'mdast';
|
|
13
|
-
import 'vite';
|
|
14
|
-
import 'next';
|
|
15
|
-
import 'node:module';
|
|
16
|
-
import '../runtime/store.js';
|
|
1
|
+
import { A as MDXCollection, J as ExtractedReference, P as CompiledMDX, S as VersionControlFileData, n as CoreOptions, q as GetCollectionConfig } from "../../core-Bkh-SI_3.js";
|
|
2
|
+
import "../../store-DEjYYF6a.js";
|
|
3
|
+
import { FileCollectionStore } from "../runtime/file-store.js";
|
|
4
|
+
import { FC } from "react";
|
|
5
|
+
import { MDXComponents } from "mdx/types";
|
|
6
|
+
|
|
7
|
+
//#region src/collections/mdx/runtime-dynamic.d.ts
|
|
17
8
|
|
|
18
9
|
interface MDXStoreDynamicData<Frontmatter> {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
10
|
+
id: string;
|
|
11
|
+
frontmatter: Frontmatter;
|
|
12
|
+
compile: () => Promise<CompiledMDX<Frontmatter>>;
|
|
22
13
|
}
|
|
23
|
-
|
|
14
|
+
type GetFrontmatter<Config, Name extends string> = GetCollectionConfig<Config, Name> extends MDXCollection<infer _Frontmatter> ? _Frontmatter : never;
|
|
15
|
+
declare function mdxStoreDynamic<Config, Name extends string>(config: Config, coreOptions: CoreOptions, name: Name, base: string, _frontmatter: Record<string, unknown>): Promise<FileCollectionStore<MDXStoreDynamicData<GetFrontmatter<Config, Name>>>>;
|
|
24
16
|
type MdxContent = FC<{
|
|
25
|
-
|
|
17
|
+
components?: MDXComponents;
|
|
26
18
|
}>;
|
|
27
19
|
declare function $attachCompiled<Add>(): <T>(data: T) => T extends MDXStoreDynamicData<unknown> ? T & {
|
|
28
|
-
|
|
20
|
+
compile: () => Promise<Awaited<ReturnType<T["compile"]>> & Add>;
|
|
29
21
|
} : T;
|
|
30
22
|
declare function $extractedReferences(): <T>(data: T) => T extends MDXStoreDynamicData<unknown> ? T & {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
23
|
+
compile: () => Promise<Awaited<ReturnType<T["compile"]>> & {
|
|
24
|
+
/**
|
|
25
|
+
* extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.
|
|
26
|
+
*/
|
|
27
|
+
extractedReferences: ExtractedReference[];
|
|
28
|
+
}>;
|
|
37
29
|
} : T;
|
|
38
30
|
declare function $versionControl(): <T>(data: T) => T extends MDXStoreDynamicData<unknown> ? T & {
|
|
39
|
-
|
|
31
|
+
compile: () => Promise<Awaited<ReturnType<T["compile"]>> & VersionControlFileData>;
|
|
40
32
|
} : T;
|
|
41
|
-
|
|
42
|
-
export { $attachCompiled, $extractedReferences, $versionControl,
|
|
33
|
+
//#endregion
|
|
34
|
+
export { $attachCompiled, $extractedReferences, $versionControl, MDXStoreDynamicData, MdxContent, mdxStoreDynamic };
|
|
35
|
+
//# sourceMappingURL=runtime-dynamic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-dynamic.d.ts","names":[],"sources":["../../../src/collections/mdx/runtime-dynamic.ts"],"sourcesContent":[],"mappings":";;;;;;;;AAoBqC,UAHpB,mBAGoB,CAAA,WAAA,CAAA,CAAA;EAAZ,EAAA,EAAA,MAAA;EAAR,WAAA,EADF,WACE;EAAO,OAAA,EAAA,GAAA,GAAP,OAAO,CAAC,WAAD,CAAa,WAAb,CAAA,CAAA;AACvB;KAII,cACiB,CAAA,MAAA,EAAA,aAAA,MAAA,CAAA,GAApB,mBAAoB,CAAA,MAAA,EAAQ,IAAR,CAAA,SAAsB,aAAtB,CAAA,KAAA,aAAA,CAAA,GAAA,YAAA,GAAA,KAAA;AAAQ,iBAIR,eAJQ,CAAA,MAAA,EAAA,aAAA,MAAA,CAAA,CAAA,MAAA,EAKpB,MALoB,EAAA,WAAA,EAMf,WANe,EAAA,IAAA,EAOtB,IAPsB,EAAA,IAAA,EAAA,MAAA,EAAA,YAAA,EASd,MATc,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EAU3B,OAV2B,CAW5B,mBAX4B,CAWR,mBAXQ,CAWY,cAXZ,CAW2B,MAX3B,EAWmC,IAXnC,CAAA,CAAA,CAAA,CAAA;AAA5B,KAgEU,UAAA,GAAa,EAhEvB,CAAA;EAA0C,UAAA,CAAA,EAgED,aAhEC;CAAa,CAAA;AAInC,iBA0FN,eA1FqB,CAAA,GAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EA2FlB,CA3FkB,EAAA,GA4FzB,CA5FyB,SA4Ff,mBA5Fe,CAAA,OAAA,CAAA,GA6F7B,CA7F6B,GAAA;EAC3B,OAAA,EAAA,GAAA,GA6Fe,OA7Ff,CA6FuB,OA7FvB,CA6F+B,UA7F/B,CA6F0C,CA7F1C,CAAA,SAAA,CAAA,CAAA,CAAA,GA6F2D,GA7F3D,CAAA;CACK,GA8FP,CA9FO;AACP,iBAgGQ,oBAAA,CAAA,CAhGR,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAwFG,CAxFH,EAAA,GAwFG,CAxFH,SAwFG,mBAxFH,CAAA,OAAA,CAAA,GAwFG,CAxFH,GAAA;EAEQ,OAAA,EAAA,GAAA,UAAA,QAAA,WAAA,EAAA,CAAA,SAAA,CAAA,CAAA,CAAA,GAAA;IAEyC;;;IAAnC,mBAAA,EAiGG,kBAjGH,EAAA;EAApB,CAAA,CAAA;CADC,IAAA;AAAO,iBAsGM,eAAA,CAAA,CAtGN,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAqFC,CArFD,EAAA,GAqFC,CArFD,SAqFC,mBArFD,CAAA,OAAA,CAAA,GAqFC,CArFD,GAAA;EAsDE,OAAA,EAAA,GAAA,UAAU,QAAqB,WAAlB,EAAE,CAAA,SAAA,CAAA,CAAA,CAAA,yBAAA,CAAA;AA8B3B,CAAA,IAAgB"}
|
|
@@ -1,94 +1,74 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
} from "../../
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
} from "../../
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
import "
|
|
11
|
-
import {
|
|
12
|
-
buildConfig
|
|
13
|
-
} from "../../chunk-IGLM4N4P.js";
|
|
14
|
-
import {
|
|
15
|
-
Core
|
|
16
|
-
} from "../../chunk-Z7KHD7MS.js";
|
|
17
|
-
import {
|
|
18
|
-
createCache
|
|
19
|
-
} from "../../chunk-6XDQG2GV.js";
|
|
20
|
-
|
|
21
|
-
// src/collections/mdx/runtime-dynamic.ts
|
|
22
|
-
import { pathToFileURL } from "url";
|
|
23
|
-
import fs from "fs/promises";
|
|
1
|
+
import { t as createCache } from "../../async-cache-BM9Yf4Nw.js";
|
|
2
|
+
import "../../code-generator-gPtrfZ6Q.js";
|
|
3
|
+
import { t as Core } from "../../core-ZuoVBkeg.js";
|
|
4
|
+
import { t as buildConfig } from "../../build-D8A5ByFk.js";
|
|
5
|
+
import { t as fumaMatter } from "../../fuma-matter-O4fA6nSx.js";
|
|
6
|
+
import { t as buildMDX } from "../../build-mdx-C1PZsGp2.js";
|
|
7
|
+
import { FileCollectionStore } from "../runtime/file-store.js";
|
|
8
|
+
import path from "node:path";
|
|
9
|
+
import fs from "node:fs/promises";
|
|
10
|
+
import { pathToFileURL } from "node:url";
|
|
24
11
|
import jsxRuntimeDefault from "react/jsx-runtime";
|
|
25
|
-
|
|
26
|
-
|
|
12
|
+
|
|
13
|
+
//#region src/collections/mdx/runtime-dynamic.ts
|
|
14
|
+
let corePromise;
|
|
27
15
|
async function mdxStoreDynamic(config, coreOptions, name, base, _frontmatter) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
return new FileCollectionStore(base, merged);
|
|
16
|
+
corePromise ??= (async () => {
|
|
17
|
+
const core$1 = new Core(coreOptions);
|
|
18
|
+
await core$1.init({ config: buildConfig(config) });
|
|
19
|
+
return core$1;
|
|
20
|
+
})();
|
|
21
|
+
const core = await corePromise;
|
|
22
|
+
const frontmatter = _frontmatter;
|
|
23
|
+
const collection = core.getCollection(name);
|
|
24
|
+
if (!collection || !collection.handlers.mdx) throw new Error("invalid collection name");
|
|
25
|
+
const merged = {};
|
|
26
|
+
const cache = createCache();
|
|
27
|
+
for (const [k, v] of Object.entries(frontmatter)) merged[k] = {
|
|
28
|
+
id: k,
|
|
29
|
+
frontmatter: v,
|
|
30
|
+
async compile() {
|
|
31
|
+
return cache.cached(k, async () => {
|
|
32
|
+
const filePath = path.join(base, k);
|
|
33
|
+
let content = (await fs.readFile(filePath)).toString();
|
|
34
|
+
content = fumaMatter(content).content;
|
|
35
|
+
const compiled = await buildMDX(core, collection, {
|
|
36
|
+
filePath,
|
|
37
|
+
source: content,
|
|
38
|
+
frontmatter: v,
|
|
39
|
+
isDevelopment: false,
|
|
40
|
+
environment: "runtime"
|
|
41
|
+
});
|
|
42
|
+
return await executeMdx(String(compiled.value), { baseUrl: pathToFileURL(filePath) });
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
return new FileCollectionStore(base, merged);
|
|
65
47
|
}
|
|
66
|
-
|
|
48
|
+
const AsyncFunction = Object.getPrototypeOf(executeMdx).constructor;
|
|
67
49
|
async function executeMdx(compiled, options = {}) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
50
|
+
const { opts: scopeOpts, ...scope } = options.scope ?? {};
|
|
51
|
+
const fullScope = {
|
|
52
|
+
opts: {
|
|
53
|
+
...scopeOpts,
|
|
54
|
+
...options.jsxRuntime ?? jsxRuntimeDefault,
|
|
55
|
+
baseUrl: options.baseUrl
|
|
56
|
+
},
|
|
57
|
+
...scope
|
|
58
|
+
};
|
|
59
|
+
const hydrateFn = new AsyncFunction(...Object.keys(fullScope), compiled);
|
|
60
|
+
return await hydrateFn.apply(hydrateFn, Object.values(fullScope));
|
|
79
61
|
}
|
|
80
62
|
function $attachCompiled() {
|
|
81
|
-
|
|
63
|
+
return (data) => data;
|
|
82
64
|
}
|
|
83
65
|
function $extractedReferences() {
|
|
84
|
-
|
|
66
|
+
return $attachCompiled();
|
|
85
67
|
}
|
|
86
68
|
function $versionControl() {
|
|
87
|
-
|
|
69
|
+
return $attachCompiled();
|
|
88
70
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
mdxStoreDynamic
|
|
94
|
-
};
|
|
71
|
+
|
|
72
|
+
//#endregion
|
|
73
|
+
export { $attachCompiled, $extractedReferences, $versionControl, mdxStoreDynamic };
|
|
74
|
+
//# sourceMappingURL=runtime-dynamic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-dynamic.js","names":["corePromise: Promise<Core>","core","merged: Record<\n string,\n MDXStoreDynamicData<GetFrontmatter<Config, Name>>\n >","AsyncFunction: new (\n ...args: string[]\n) => (...args: unknown[]) => Promise<unknown>"],"sources":["../../../src/collections/mdx/runtime-dynamic.ts"],"sourcesContent":["import { buildConfig } from \"@/config/build\";\nimport { buildMDX, type CompiledMDX } from \"@/collections/mdx/build-mdx\";\nimport { pathToFileURL } from \"node:url\";\nimport { fumaMatter } from \"@/utils/fuma-matter\";\nimport fs from \"node:fs/promises\";\nimport { type CoreOptions, Core } from \"@/core\";\nimport type { MDXComponents } from \"mdx/types\";\nimport type { FC } from \"react\";\nimport jsxRuntimeDefault from \"react/jsx-runtime\";\nimport { FileCollectionStore } from \"@/collections/runtime/file-store\";\nimport type { GetCollectionConfig } from \"@/types\";\nimport type { MDXCollection } from \"@/collections/mdx\";\nimport path from \"node:path\";\nimport { createCache } from \"@/utils/async-cache\";\nimport type { ExtractedReference } from \"@/collections/mdx/remark-postprocess\";\nimport type { VersionControlFileData } from \"@/plugins/git\";\n\nexport interface MDXStoreDynamicData<Frontmatter> {\n id: string;\n frontmatter: Frontmatter;\n compile: () => Promise<CompiledMDX<Frontmatter>>;\n}\n\nlet corePromise: Promise<Core>;\n\ntype GetFrontmatter<Config, Name extends string> =\n GetCollectionConfig<Config, Name> extends MDXCollection<infer _Frontmatter>\n ? _Frontmatter\n : never;\n\nexport async function mdxStoreDynamic<Config, Name extends string>(\n config: Config,\n coreOptions: CoreOptions,\n name: Name,\n base: string,\n _frontmatter: Record<string, unknown>,\n): Promise<\n FileCollectionStore<MDXStoreDynamicData<GetFrontmatter<Config, Name>>>\n> {\n corePromise ??= (async () => {\n const core = new Core(coreOptions);\n await core.init({\n config: buildConfig(config as Record<string, unknown>),\n });\n return core;\n })();\n const core = await corePromise;\n const frontmatter = _frontmatter as Record<\n string,\n GetFrontmatter<Config, Name>\n >;\n const collection = core.getCollection(name);\n if (!collection || !collection.handlers.mdx)\n throw new Error(\"invalid collection name\");\n\n const merged: Record<\n string,\n MDXStoreDynamicData<GetFrontmatter<Config, Name>>\n > = {};\n const cache = createCache<CompiledMDX<GetFrontmatter<Config, Name>>>();\n\n for (const [k, v] of Object.entries(frontmatter)) {\n merged[k] = {\n id: k,\n frontmatter: v,\n async compile() {\n return cache.cached(k, async () => {\n const filePath = path.join(base, k);\n let content = (await fs.readFile(filePath)).toString();\n content = fumaMatter(content).content;\n\n const compiled = await buildMDX(core, collection, {\n filePath,\n source: content,\n frontmatter: v as unknown as Record<string, unknown>,\n isDevelopment: false,\n environment: \"runtime\",\n });\n\n return (await executeMdx(String(compiled.value), {\n baseUrl: pathToFileURL(filePath),\n })) as CompiledMDX<GetFrontmatter<Config, Name>>;\n });\n },\n };\n }\n\n return new FileCollectionStore(base, merged);\n}\n\nexport type MdxContent = FC<{ components?: MDXComponents }>;\n\ninterface Options {\n scope?: Record<string, unknown>;\n baseUrl?: string | URL;\n jsxRuntime?: unknown;\n}\n\nconst AsyncFunction: new (\n ...args: string[]\n) => (...args: unknown[]) => Promise<unknown> =\n Object.getPrototypeOf(executeMdx).constructor;\n\nasync function executeMdx(compiled: string, options: Options = {}) {\n const { opts: scopeOpts, ...scope } = options.scope ?? {};\n const fullScope = {\n opts: {\n ...(scopeOpts as object),\n ...(options.jsxRuntime ?? jsxRuntimeDefault),\n baseUrl: options.baseUrl,\n },\n ...scope,\n };\n\n const hydrateFn = new AsyncFunction(...Object.keys(fullScope), compiled);\n return (await hydrateFn.apply(hydrateFn, Object.values(fullScope))) as {\n default: MdxContent;\n };\n}\n\nexport function $attachCompiled<Add>() {\n return <T>(data: T) =>\n data as T extends MDXStoreDynamicData<unknown>\n ? T & {\n compile: () => Promise<Awaited<ReturnType<T[\"compile\"]>> & Add>;\n }\n : T;\n}\n\nexport function $extractedReferences() {\n return $attachCompiled<{\n /**\n * extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.\n */\n extractedReferences: ExtractedReference[];\n }>();\n}\n\nexport function $versionControl() {\n return $attachCompiled<VersionControlFileData>();\n}\n"],"mappings":";;;;;;;;;;;;;AAuBA,IAAIA;AAOJ,eAAsB,gBACpB,QACA,aACA,MACA,MACA,cAGA;AACA,kBAAiB,YAAY;EAC3B,MAAMC,SAAO,IAAI,KAAK,YAAY;AAClC,QAAMA,OAAK,KAAK,EACd,QAAQ,YAAY,OAAkC,EACvD,CAAC;AACF,SAAOA;KACL;CACJ,MAAM,OAAO,MAAM;CACnB,MAAM,cAAc;CAIpB,MAAM,aAAa,KAAK,cAAc,KAAK;AAC3C,KAAI,CAAC,cAAc,CAAC,WAAW,SAAS,IACtC,OAAM,IAAI,MAAM,0BAA0B;CAE5C,MAAMC,SAGF,EAAE;CACN,MAAM,QAAQ,aAAwD;AAEtE,MAAK,MAAM,CAAC,GAAG,MAAM,OAAO,QAAQ,YAAY,CAC9C,QAAO,KAAK;EACV,IAAI;EACJ,aAAa;EACb,MAAM,UAAU;AACd,UAAO,MAAM,OAAO,GAAG,YAAY;IACjC,MAAM,WAAW,KAAK,KAAK,MAAM,EAAE;IACnC,IAAI,WAAW,MAAM,GAAG,SAAS,SAAS,EAAE,UAAU;AACtD,cAAU,WAAW,QAAQ,CAAC;IAE9B,MAAM,WAAW,MAAM,SAAS,MAAM,YAAY;KAChD;KACA,QAAQ;KACR,aAAa;KACb,eAAe;KACf,aAAa;KACd,CAAC;AAEF,WAAQ,MAAM,WAAW,OAAO,SAAS,MAAM,EAAE,EAC/C,SAAS,cAAc,SAAS,EACjC,CAAC;KACF;;EAEL;AAGH,QAAO,IAAI,oBAAoB,MAAM,OAAO;;AAW9C,MAAMC,gBAGJ,OAAO,eAAe,WAAW,CAAC;AAEpC,eAAe,WAAW,UAAkB,UAAmB,EAAE,EAAE;CACjE,MAAM,EAAE,MAAM,WAAW,GAAG,UAAU,QAAQ,SAAS,EAAE;CACzD,MAAM,YAAY;EAChB,MAAM;GACJ,GAAI;GACJ,GAAI,QAAQ,cAAc;GAC1B,SAAS,QAAQ;GAClB;EACD,GAAG;EACJ;CAED,MAAM,YAAY,IAAI,cAAc,GAAG,OAAO,KAAK,UAAU,EAAE,SAAS;AACxE,QAAQ,MAAM,UAAU,MAAM,WAAW,OAAO,OAAO,UAAU,CAAC;;AAKpE,SAAgB,kBAAuB;AACrC,SAAW,SACT;;AAOJ,SAAgB,uBAAuB;AACrC,QAAO,iBAKH;;AAGN,SAAgB,kBAAkB;AAChC,QAAO,iBAAyC"}
|
|
@@ -1,69 +1,49 @@
|
|
|
1
|
-
import { GetCollectionConfig } from
|
|
2
|
-
import
|
|
3
|
-
import { FileCollectionStore } from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import 'chokidar';
|
|
7
|
-
import '@mdx-js/mdx';
|
|
8
|
-
import 'vfile';
|
|
9
|
-
import '@standard-schema/spec';
|
|
10
|
-
import 'unified';
|
|
11
|
-
import 'mdast';
|
|
12
|
-
import 'vite';
|
|
13
|
-
import 'next';
|
|
14
|
-
import 'node:module';
|
|
15
|
-
import '../runtime/store.js';
|
|
1
|
+
import { A as MDXCollection, J as ExtractedReference, P as CompiledMDX, S as VersionControlFileData, q as GetCollectionConfig } from "../../core-Bkh-SI_3.js";
|
|
2
|
+
import "../../store-DEjYYF6a.js";
|
|
3
|
+
import { FileCollectionStore } from "../runtime/file-store.js";
|
|
4
|
+
|
|
5
|
+
//#region src/collections/mdx/runtime.d.ts
|
|
16
6
|
|
|
17
|
-
type CompiledMDXProperties<Frontmatter = Record<string, unknown>> = {
|
|
18
|
-
frontmatter: Frontmatter;
|
|
19
|
-
default: FC<MDXProps>;
|
|
20
|
-
/**
|
|
21
|
-
* Enable from `postprocess` option.
|
|
22
|
-
*/
|
|
23
|
-
_markdown?: string;
|
|
24
|
-
/**
|
|
25
|
-
* Enable from `postprocess` option.
|
|
26
|
-
*/
|
|
27
|
-
_mdast?: string;
|
|
28
|
-
} & Record<string, unknown>;
|
|
29
7
|
interface MDXStoreData<Frontmatter> {
|
|
30
|
-
|
|
31
|
-
|
|
8
|
+
id: string;
|
|
9
|
+
compiled: CompiledMDX<Frontmatter>;
|
|
32
10
|
}
|
|
33
|
-
|
|
11
|
+
type GetFrontmatter<Config, Name extends string> = GetCollectionConfig<Config, Name> extends MDXCollection<infer _Frontmatter> ? _Frontmatter : never;
|
|
12
|
+
declare function mdxStore<Config, Name extends string>(_name: Name, base: string, _input: Record<string, unknown>): FileCollectionStore<MDXStoreData<GetFrontmatter<Config, Name>>>;
|
|
34
13
|
interface MDXStoreLazyData<Frontmatter> {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
14
|
+
id: string;
|
|
15
|
+
frontmatter: Frontmatter;
|
|
16
|
+
load: () => Promise<CompiledMDX<Frontmatter>>;
|
|
38
17
|
}
|
|
39
18
|
declare function mdxStoreLazy<Config, Name extends string>(_name: Name, base: string, _input: {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}): FileCollectionStore<MDXStoreLazyData<
|
|
19
|
+
head: Record<string, unknown>;
|
|
20
|
+
body: Record<string, () => Promise<unknown>>;
|
|
21
|
+
}): FileCollectionStore<MDXStoreLazyData<GetFrontmatter<Config, Name>>>;
|
|
43
22
|
declare function $attachCompiled<Add>(): <T>(data: T) => T extends MDXStoreData<unknown> ? T & {
|
|
44
|
-
|
|
23
|
+
compiled: Add;
|
|
45
24
|
} : T extends MDXStoreLazyData<unknown> ? T & {
|
|
46
|
-
|
|
25
|
+
load: () => Promise<Awaited<ReturnType<T["load"]>> & Add>;
|
|
47
26
|
} : T;
|
|
48
27
|
declare function $extractedReferences(): <T>(data: T) => T extends MDXStoreData<unknown> ? T & {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
28
|
+
compiled: {
|
|
29
|
+
/**
|
|
30
|
+
* extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.
|
|
31
|
+
*/
|
|
32
|
+
extractedReferences: ExtractedReference[];
|
|
33
|
+
};
|
|
55
34
|
} : T extends MDXStoreLazyData<unknown> ? T & {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
35
|
+
load: () => Promise<Awaited<ReturnType<T["load"]>> & {
|
|
36
|
+
/**
|
|
37
|
+
* extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.
|
|
38
|
+
*/
|
|
39
|
+
extractedReferences: ExtractedReference[];
|
|
40
|
+
}>;
|
|
62
41
|
} : T;
|
|
63
42
|
declare function $versionControl(): <T>(data: T) => T extends MDXStoreData<unknown> ? T & {
|
|
64
|
-
|
|
43
|
+
compiled: VersionControlFileData;
|
|
65
44
|
} : T extends MDXStoreLazyData<unknown> ? T & {
|
|
66
|
-
|
|
45
|
+
load: () => Promise<Awaited<ReturnType<T["load"]>> & VersionControlFileData>;
|
|
67
46
|
} : T;
|
|
68
|
-
|
|
69
|
-
export { $attachCompiled, $extractedReferences, $versionControl,
|
|
47
|
+
//#endregion
|
|
48
|
+
export { $attachCompiled, $extractedReferences, $versionControl, MDXStoreData, MDXStoreLazyData, mdxStore, mdxStoreLazy };
|
|
49
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","names":[],"sources":["../../../src/collections/mdx/runtime.ts"],"sourcesContent":[],"mappings":";;;;;;AAYK,UALY,YAKE,CAAA,WAAA,CAAA,CAAA;EACG,EAAA,EAAA,MAAA;EAAQ,QAAA,EAJlB,WAIkB,CAJN,WAIM,CAAA;;KADzB,cACuC,CAAA,MAAA,EAAA,aAAA,MAAA,CAAA,GAA1C,mBAA0C,CAAtB,MAAsB,EAAd,IAAc,CAAA,SAAA,aAAA,CAAA,KAAA,aAAA,CAAA,GAAA,YAAA,GAAA,KAAA;AAAa,iBAIzC,QAJyC,CAAA,MAAA,EAAA,aAAA,MAAA,CAAA,CAAA,KAAA,EAKhD,IALgD,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAO/C,MAP+C,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EAQtD,mBARsD,CAQlC,YARkC,CAQrB,cARqB,CAQN,MARM,EAQE,IARF,CAAA,CAAA,CAAA;AAIzC,UAwBC,gBAxBO,CAAA,WAAA,CAAA,CAAA;EACf,EAAA,EAAA,MAAA;EAEC,WAAA,EAuBK,WAvBL;EACyC,IAAA,EAAA,GAAA,GAuBrC,OAvBqC,CAuB7B,WAvB6B,CAuBjB,WAvBiB,CAAA,CAAA;;AAAf,iBA0BpB,YA1BoB,CAAA,MAAA,EAAA,aAAA,MAAA,CAAA,CAAA,KAAA,EA2B3B,IA3B2B,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA;EAAb,IAAA,EA8Bb,MA9Ba,CAAA,MAAA,EAAA,OAAA,CAAA;EAApB,IAAA,EA+BO,MA/BP,CAAA,MAAA,EAAA,GAAA,GA+B4B,OA/B5B,CAAA,OAAA,CAAA,CAAA;CAAmB,CAAA,EAiCnB,mBAjCmB,CAiCC,gBAjCD,CAiCkB,cAjClB,CAiCiC,MAjCjC,EAiCyC,IAjCzC,CAAA,CAAA,CAAA;AAoBL,iBAqCD,eArCiB,CAAA,GAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAsCd,CAtCc,EAAA,GAuCrB,CAvCqB,SAuCX,YAvCW,CAAA,OAAA,CAAA,GAwCzB,CAxCyB,GAAA;EAElB,QAAA,EAuCK,GAvCL;CACmB,GAwC1B,CAxC0B,SAwChB,gBAxCgB,CAAA,OAAA,CAAA,GAyCxB,CAzCwB,GAAA;EAAZ,IAAA,EAAA,GAAA,GA0CE,OA1CF,CA0CU,OA1CV,CA0CkB,UA1ClB,CA0C6B,CA1C7B,CAAA,MAAA,CAAA,CAAA,CAAA,GA0C2C,GA1C3C,CAAA;CAAR,GA4CJ,CA5CI;AAAO,iBA+CL,oBAAA,CAAA,CA/CK,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EAmCV,CAnCU,EAAA,GAmCV,CAnCU,SAmCV,YAnCU,CAAA,OAAA,CAAA,GAmCV,CAnCU,GAAA;EAGL,QAAA,EAAA;IACP;;;IAIC,mBAAA,EA4Ce,kBA5Cf,EAAA;EAE6C,CAAA;CAAQ,IAAA,yBAAA,CAAA,OAAA,CAAA,IAAA,GAAA;EAAvB,IAAA,EAAA,GAAA,UAAA,QAAA,WAAA,EAAA,CAAA,MAAA,CAAA,CAAA,CAAA,GAAA;IAAjB;;;IAwBP,mBAAe,EAkBN,kBAlBM,EAAA;EACZ,CAAA,CAAA;CACP,IAAA;AAAU,iBAoBN,eAAA,CAAA,CApBM,EAAA,CAAA,CAAA,CAAA,CAAA,IAAA,EADX,CACW,EAAA,GADX,CACW,SADX,YACW,CAAA,OAAA,CAAA,GADX,CACW,GAAA;EACd,QAAA,wBAAA;CACY,IAAA,yBAAA,CAAA,OAAA,CAAA,IAAA,GAAA;EAEZ,IAAA,EAAA,GAAA,UAAA,QAAA,WAAA,EAAA,CAAA,MAAA,CAAA,CAAA,CAAA,yBAAA,CAAA;CAAU,IAAA"}
|
|
@@ -1,45 +1,35 @@
|
|
|
1
|
-
import {
|
|
2
|
-
FileCollectionStore
|
|
3
|
-
} from "../../chunk-RXR7OL76.js";
|
|
4
|
-
import "../../chunk-3VQS3KSP.js";
|
|
1
|
+
import { FileCollectionStore } from "../runtime/file-store.js";
|
|
5
2
|
|
|
6
|
-
|
|
3
|
+
//#region src/collections/mdx/runtime.ts
|
|
7
4
|
function mdxStore(_name, base, _input) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
return new FileCollectionStore(base, merged);
|
|
5
|
+
const input = _input;
|
|
6
|
+
const merged = input;
|
|
7
|
+
for (const [key, value] of Object.entries(input)) merged[key] = {
|
|
8
|
+
id: key,
|
|
9
|
+
compiled: value
|
|
10
|
+
};
|
|
11
|
+
return new FileCollectionStore(base, merged);
|
|
17
12
|
}
|
|
18
13
|
function mdxStoreLazy(_name, base, _input) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
return new FileCollectionStore(base, merged);
|
|
14
|
+
const input = _input;
|
|
15
|
+
const merged = {};
|
|
16
|
+
for (const [key, value] of Object.entries(input.head)) merged[key] = {
|
|
17
|
+
id: key,
|
|
18
|
+
frontmatter: value,
|
|
19
|
+
load: input.body[key]
|
|
20
|
+
};
|
|
21
|
+
return new FileCollectionStore(base, merged);
|
|
29
22
|
}
|
|
30
23
|
function $attachCompiled() {
|
|
31
|
-
|
|
24
|
+
return (data) => data;
|
|
32
25
|
}
|
|
33
26
|
function $extractedReferences() {
|
|
34
|
-
|
|
27
|
+
return $attachCompiled();
|
|
35
28
|
}
|
|
36
29
|
function $versionControl() {
|
|
37
|
-
|
|
30
|
+
return $attachCompiled();
|
|
38
31
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
mdxStore,
|
|
44
|
-
mdxStoreLazy
|
|
45
|
-
};
|
|
32
|
+
|
|
33
|
+
//#endregion
|
|
34
|
+
export { $attachCompiled, $extractedReferences, $versionControl, mdxStore, mdxStoreLazy };
|
|
35
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","names":["merged: Record<\n string,\n MDXStoreLazyData<GetFrontmatter<Config, Name>>\n >"],"sources":["../../../src/collections/mdx/runtime.ts"],"sourcesContent":["import type { GetCollectionConfig } from \"@/types\";\nimport type { MDXCollection } from \"@/collections/mdx\";\nimport { FileCollectionStore } from \"@/collections/runtime/file-store\";\nimport type { ExtractedReference } from \"@/collections/mdx/remark-postprocess\";\nimport type { VersionControlFileData } from \"@/plugins/git\";\nimport type { CompiledMDX } from \"@/collections/mdx/build-mdx\";\n\nexport interface MDXStoreData<Frontmatter> {\n id: string;\n compiled: CompiledMDX<Frontmatter>;\n}\n\ntype GetFrontmatter<Config, Name extends string> =\n GetCollectionConfig<Config, Name> extends MDXCollection<infer _Frontmatter>\n ? _Frontmatter\n : never;\n\nexport function mdxStore<Config, Name extends string>(\n _name: Name,\n base: string,\n _input: Record<string, unknown>,\n): FileCollectionStore<MDXStoreData<GetFrontmatter<Config, Name>>> {\n const input = _input as Record<\n string,\n CompiledMDX<GetFrontmatter<Config, Name>>\n >;\n const merged = input as unknown as Record<\n string,\n MDXStoreData<GetFrontmatter<Config, Name>>\n >;\n\n for (const [key, value] of Object.entries(input)) {\n merged[key] = {\n id: key,\n compiled: value,\n };\n }\n\n return new FileCollectionStore(base, merged);\n}\n\nexport interface MDXStoreLazyData<Frontmatter> {\n id: string;\n frontmatter: Frontmatter;\n load: () => Promise<CompiledMDX<Frontmatter>>;\n}\n\nexport function mdxStoreLazy<Config, Name extends string>(\n _name: Name,\n base: string,\n _input: {\n head: Record<string, unknown>;\n body: Record<string, () => Promise<unknown>>;\n },\n): FileCollectionStore<MDXStoreLazyData<GetFrontmatter<Config, Name>>> {\n const input = _input as {\n head: Record<string, GetFrontmatter<Config, Name>>;\n body: Record<\n string,\n () => Promise<CompiledMDX<GetFrontmatter<Config, Name>>>\n >;\n };\n const merged: Record<\n string,\n MDXStoreLazyData<GetFrontmatter<Config, Name>>\n > = {};\n\n for (const [key, value] of Object.entries(input.head)) {\n merged[key] = {\n id: key,\n frontmatter: value,\n load: input.body[key],\n };\n }\n\n return new FileCollectionStore(base, merged);\n}\n\nexport function $attachCompiled<Add>() {\n return <T>(data: T) =>\n data as T extends MDXStoreData<unknown>\n ? T & {\n compiled: Add;\n }\n : T extends MDXStoreLazyData<unknown>\n ? T & {\n load: () => Promise<Awaited<ReturnType<T[\"load\"]>> & Add>;\n }\n : T;\n}\n\nexport function $extractedReferences() {\n return $attachCompiled<{\n /**\n * extracted references (e.g. hrefs, paths), useful for analyzing relationships between pages.\n */\n extractedReferences: ExtractedReference[];\n }>();\n}\n\nexport function $versionControl() {\n return $attachCompiled<VersionControlFileData>();\n}\n"],"mappings":";;;AAiBA,SAAgB,SACd,OACA,MACA,QACiE;CACjE,MAAM,QAAQ;CAId,MAAM,SAAS;AAKf,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAM,CAC9C,QAAO,OAAO;EACZ,IAAI;EACJ,UAAU;EACX;AAGH,QAAO,IAAI,oBAAoB,MAAM,OAAO;;AAS9C,SAAgB,aACd,OACA,MACA,QAIqE;CACrE,MAAM,QAAQ;CAOd,MAAMA,SAGF,EAAE;AAEN,MAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAM,KAAK,CACnD,QAAO,OAAO;EACZ,IAAI;EACJ,aAAa;EACb,MAAM,MAAM,KAAK;EAClB;AAGH,QAAO,IAAI,oBAAoB,MAAM,OAAO;;AAG9C,SAAgB,kBAAuB;AACrC,SAAW,SACT;;AAWJ,SAAgB,uBAAuB;AACrC,QAAO,iBAKH;;AAGN,SAAgB,kBAAkB;AAChC,QAAO,iBAAyC"}
|
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import 'vfile';
|
|
4
|
-
import '@standard-schema/spec';
|
|
5
|
-
import 'chokidar';
|
|
6
|
-
import 'unified';
|
|
7
|
-
import 'mdast';
|
|
8
|
-
import 'vite';
|
|
9
|
-
import 'next';
|
|
10
|
-
import 'node:module';
|
|
1
|
+
import { A as MDXCollection, F as CompiledMDXData, J as ExtractedReference, M as MDXCollectionHandler, N as defineMDX, P as CompiledMDX, j as MDXCollectionConfig } from "../core-Bkh-SI_3.js";
|
|
2
|
+
export { CompiledMDX, CompiledMDXData, ExtractedReference, MDXCollection, MDXCollectionConfig, MDXCollectionHandler, defineMDX };
|