@docusaurus/mdx-loader 3.3.2 → 3.4.0
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/lib/loader.d.ts +2 -0
- package/lib/loader.d.ts.map +1 -1
- package/lib/loader.js.map +1 -1
- package/lib/processor.d.ts.map +1 -1
- package/lib/processor.js +8 -0
- package/lib/processor.js.map +1 -1
- package/lib/remark/resolveMarkdownLinks/index.d.ts +30 -0
- package/lib/remark/resolveMarkdownLinks/index.d.ts.map +1 -0
- package/lib/remark/resolveMarkdownLinks/index.js +55 -0
- package/lib/remark/resolveMarkdownLinks/index.js.map +1 -0
- package/package.json +6 -6
- package/src/loader.ts +2 -0
- package/src/processor.ts +8 -0
- package/src/remark/resolveMarkdownLinks/index.ts +96 -0
package/lib/loader.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
+
import type { ResolveMarkdownLink } from './remark/resolveMarkdownLinks';
|
|
7
8
|
import type { MDXOptions } from './processor';
|
|
8
9
|
import type { MarkdownConfig } from '@docusaurus/types';
|
|
9
10
|
import type { LoaderContext } from 'webpack';
|
|
@@ -27,6 +28,7 @@ export type Options = Partial<MDXOptions> & {
|
|
|
27
28
|
}) => {
|
|
28
29
|
[key: string]: unknown;
|
|
29
30
|
};
|
|
31
|
+
resolveMarkdownLink?: ResolveMarkdownLink;
|
|
30
32
|
};
|
|
31
33
|
export declare function mdxLoader(this: LoaderContext<Options>, fileContent: string): Promise<void>;
|
|
32
34
|
export {};
|
package/lib/loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAK3C,KAAK,SAAS,GAAG,GAAG,CAAC;AAMrB,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC;AAElC,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG;IAC1C,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,sCAAsC,CAAC,EAAE,OAAO,CAAC;IACjD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACvD,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE;QACxB,WAAW,EAAE;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAC,CAAC;QACtC,QAAQ,EAAE;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAC,CAAC;KACpC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAK3C,KAAK,SAAS,GAAG,GAAG,CAAC;AAMrB,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC;AAElC,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG;IAC1C,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,sCAAsC,CAAC,EAAE,OAAO,CAAC;IACjD,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACvD,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE;QACxB,WAAW,EAAE;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAC,CAAC;QACtC,QAAQ,EAAE;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAC,CAAC;KACpC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;IAC/B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C,CAAC;AAsFF,wBAAsB,SAAS,CAC7B,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAC5B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAiIf"}
|
package/lib/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,gEAA0B;AAC1B,wEAAwC;AACxC,6CAK2B;AAC3B,gFAA+C;AAC/C,0EAA0C;AAC1C,+CAAqD;AACrD,2CAAkD;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
|
package/lib/processor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../src/processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../src/processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAQ5D,KAAK,SAAS,GAAG,GAAG,CAAC;AAErB,KAAK,qBAAqB,GAAG;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAA;CAAC,CAAC;AAG/E,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,CAAC,EACR,OAAO,EACP,QAAQ,EACR,WAAW,EACX,YAAY,GACb,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAC,CAAC;QACtC,YAAY,EAAE,mBAAmB,CAAC;KACnC,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC;AAElC,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClD,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,0BAA0B,EAAE,SAAS,EAAE,CAAC;IACxC,0BAA0B,EAAE,SAAS,EAAE,CAAC;CACzC,CAAC;AAoJF,wBAAsB,uBAAuB,CAAC,UAAU,EAAE;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,IAAI,GAAG,KAAK,CAAC;CACtB,GAAG,OAAO,CAAC,eAAe,CAAC,CAG3B;AA0CD,wBAAsB,qBAAqB,CAAC,EAC1C,QAAQ,EACR,cAAc,EACd,KAAK,EACL,UAAU,GACX,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CAU3B"}
|
package/lib/processor.js
CHANGED
|
@@ -13,6 +13,7 @@ const contentTitle_1 = tslib_1.__importDefault(require("./remark/contentTitle"))
|
|
|
13
13
|
const toc_1 = tslib_1.__importDefault(require("./remark/toc"));
|
|
14
14
|
const transformImage_1 = tslib_1.__importDefault(require("./remark/transformImage"));
|
|
15
15
|
const transformLinks_1 = tslib_1.__importDefault(require("./remark/transformLinks"));
|
|
16
|
+
const resolveMarkdownLinks_1 = tslib_1.__importDefault(require("./remark/resolveMarkdownLinks"));
|
|
16
17
|
const details_1 = tslib_1.__importDefault(require("./remark/details"));
|
|
17
18
|
const head_1 = tslib_1.__importDefault(require("./remark/head"));
|
|
18
19
|
const mermaid_1 = tslib_1.__importDefault(require("./remark/mermaid"));
|
|
@@ -70,6 +71,13 @@ async function createProcessorFactory() {
|
|
|
70
71
|
siteDir: options.siteDir,
|
|
71
72
|
},
|
|
72
73
|
],
|
|
74
|
+
// TODO merge this with transformLinks?
|
|
75
|
+
options.resolveMarkdownLink
|
|
76
|
+
? [
|
|
77
|
+
resolveMarkdownLinks_1.default,
|
|
78
|
+
{ resolveMarkdownLink: options.resolveMarkdownLink },
|
|
79
|
+
]
|
|
80
|
+
: undefined,
|
|
73
81
|
[
|
|
74
82
|
transformLinks_1.default,
|
|
75
83
|
{
|
package/lib/processor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processor.js","sourceRoot":"","sources":["../src/processor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"processor.js","sourceRoot":"","sources":["../src/processor.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,yEAAyC;AACzC,iFAAiD;AACjD,+DAA+B;AAC/B,qFAAqD;AACrD,qFAAqD;AACrD,iGAAiE;AACjE,uEAAuC;AACvC,iEAAiC;AACjC,uEAAuC;AACvC,+EAAwD;AACxD,yFAAgE;AAChE,oGAAoE;AACpE,qCAAmC;AAyCnC,SAAS,qBAAqB,CAC5B,iBAA4C;IAE5C,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,MAAM,GACV,iBAAiB,KAAK,IAAI;YACxB,CAAC,CAAC,qBAAoB;YACtB,CAAC,CAAC,CAAC,qBAAoB,EAAE,iBAAiB,CAAC,CAAC;QAChD,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,iDAAiD;AACjD,KAAK,UAAU,sBAAsB;IACnC,MAAM,EAAC,eAAe,EAAE,kBAAkB,EAAC,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IAC1E,MAAM,EAAC,OAAO,EAAE,WAAW,EAAC,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAClE,MAAM,EAAC,OAAO,EAAE,SAAS,EAAC,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,EAAC,OAAO,EAAE,GAAG,EAAC,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;IAClD,qFAAqF;IACrF,MAAM,EAAC,OAAO,EAAE,OAAO,EAAC,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACnE,MAAM,EAAC,OAAO,EAAE,SAAS,EAAC,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC9D,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,EAAC,OAAO,EAAE,KAAK,EAAC,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IAEtD,SAAS,uBAAuB,CAAC,EAAC,OAAO,EAAqB;QAC5D,OAAO;YACL;gBACE,kBAAQ;gBACR,EAAC,mBAAmB,EAAE,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,EAAC;aACnE;YACD,KAAK;YACL,aAAG;SACJ,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,gEAAgE;IAChE,SAAS,mBAAmB,CAAC,EAC3B,OAAO,EACP,MAAM,GAIP;QACC,MAAM,aAAa,GAAgB;YACjC,GAAG,CAAC,OAAO,CAAC,0BAA0B,IAAI,EAAE,CAAC;YAC7C,WAAW;YACX,SAAS;YACT,CAAC,sBAAY,EAAE,EAAC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAC,CAAC;YAChE,GAAG,qBAAqB,CAAC,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC;YACtD,GAAG,uBAAuB,CAAC,EAAC,OAAO,EAAC,CAAC;YACrC,iBAAO;YACP,cAAI;YACJ,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD;gBACE,wBAAc;gBACd;oBACE,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB;aACF;YACD,uCAAuC;YACvC,OAAO,CAAC,mBAAmB;gBACzB,CAAC,CAAC;oBACE,8BAAoB;oBACpB,EAAC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAC;iBACnD;gBACH,CAAC,CAAC,SAAS;YACb;gBACE,wBAAc;gBACd;oBACE,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB;aACF;YACD,GAAG;YACH,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAC3D,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;YAChC,0BAAuB;SACxB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAuB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3D,wEAAwE;QACxE,+BAA+B;QAC/B,aAAa,CAAC,IAAI,CAAC,0BAAgB,CAAC,CAAC;QAErC,MAAM,aAAa,GAAgB;YACjC,GAAG,CAAC,OAAO,CAAC,0BAA0B,IAAI,EAAE,CAAC;YAC7C,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;SACjC,CAAC;QAEF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,+DAA+D;YAC/D,uDAAuD;YACvD,sEAAsE;YACtE,MAAM,eAAe,GAAc;gBACjC,SAAS;gBACT;oBACE,WAAW,EAAE;wBACX,mBAAmB;wBACnB,mBAAmB;wBACnB,mBAAmB;wBACnB,mBAAmB;wBACnB,UAAU;qBACX;iBACF;aACF,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,gBAAgB,GAA+B;YACnD,GAAG,OAAO;YACV,aAAa;YACb,aAAa;YACb,oBAAoB,EAAE,eAAe;SACtC,CAAC;QAEF,MAAM,YAAY,GAAG,kBAAkB,CAAC;YACtC,GAAG,gBAAgB;YACnB,mBAAmB,EAAE,OAAO,CAAC,cAAc,CAAC,mBAAmB;YAC/D,MAAM;SACP,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,KAAK,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAC,EAAE,EAAE;gBAChE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;oBACtB,KAAK,EAAE,OAAO;oBACd,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,WAAW;wBACX,YAAY;qBACb;iBACF,CAAC,CAAC;gBACH,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBACnD,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE;oBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAC,CAAC;YACN,CAAC;SACF,CAAC;IACJ,CAAC;IAED,OAAO,EAAC,mBAAmB,EAAC,CAAC;AAC/B,CAAC;AAED,2BAA2B;AACpB,KAAK,UAAU,uBAAuB,CAAC,UAG7C;IACC,MAAM,EAAC,mBAAmB,EAAC,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC7D,OAAO,mBAAmB,CAAC,UAAU,CAAC,CAAC;AACzC,CAAC;AAND,0DAMC;AAQD,6DAA6D;AAC7D,uCAAuC;AACvC,MAAM,eAAe,GAAG,IAAI,GAAG,EAA0C,CAAC;AAE1E,KAAK,UAAU,0BAA0B,CAAC,EACxC,KAAK,EACL,UAAU,GAIX;IACC,MAAM,EAAC,mBAAmB,EAAC,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAE7D,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,kBAAkB,GAAyB;QAC/C,WAAW,EAAE,mBAAmB,CAAC;YAC/B,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,IAAI;SACb,CAAC;QACF,YAAY,EAAE,mBAAmB,CAAC;YAChC,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,KAAK;SACd,CAAC;KACH,CAAC;IAEF,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAE/C,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,EAC1C,QAAQ,EACR,cAAc,EACd,KAAK,EACL,UAAU,GAMX;IACC,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,IAAA,kBAAS,EAAC;QACvB,QAAQ;QACR,iBAAiB,EAAE,cAAc,CAAC,MAAM;QACxC,oBAAoB,EAAE,UAAU,CAAC,cAAc,CAAC,MAAM;KACvD,CAAC,CAAC;IAEH,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC;AAC1E,CAAC;AApBD,sDAoBC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
type ResolveMarkdownLinkParams = {
|
|
8
|
+
/**
|
|
9
|
+
* Absolute path to the source file containing this Markdown link.
|
|
10
|
+
*/
|
|
11
|
+
sourceFilePath: string;
|
|
12
|
+
/**
|
|
13
|
+
* The Markdown link pathname to resolve, as found in the source file.
|
|
14
|
+
* If the link is "./myFile.mdx?qs#hash", this will be "./myFile.mdx"
|
|
15
|
+
*/
|
|
16
|
+
linkPathname: string;
|
|
17
|
+
};
|
|
18
|
+
export type ResolveMarkdownLink = (params: ResolveMarkdownLinkParams) => string | null;
|
|
19
|
+
export interface PluginOptions {
|
|
20
|
+
resolveMarkdownLink: ResolveMarkdownLink;
|
|
21
|
+
}
|
|
22
|
+
type Plugin = any;
|
|
23
|
+
/**
|
|
24
|
+
* A remark plugin to extract the h1 heading found in Markdown files
|
|
25
|
+
* This is exposed as "data.contentTitle" to the processed vfile
|
|
26
|
+
* Also gives the ability to strip that content title (used for the blog plugin)
|
|
27
|
+
*/
|
|
28
|
+
declare const plugin: Plugin;
|
|
29
|
+
export default plugin;
|
|
30
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/remark/resolveMarkdownLinks/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,KAAK,yBAAyB,GAAG;IAC/B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAChC,MAAM,EAAE,yBAAyB,KAC9B,MAAM,GAAG,IAAI,CAAC;AAEnB,MAAM,WAAW,aAAa;IAC5B,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C;AAMD,KAAK,MAAM,GAAG,GAAG,CAAC;AAoBlB;;;;GAIG;AACH,QAAA,MAAM,MAAM,EAAE,MA2Bb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the MIT license found in the
|
|
6
|
+
* LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
const utils_1 = require("@docusaurus/utils");
|
|
10
|
+
const HAS_MARKDOWN_EXTENSION = /\.mdx?$/i;
|
|
11
|
+
function parseMarkdownLinkURLPath(link) {
|
|
12
|
+
const urlPath = (0, utils_1.parseLocalURLPath)(link);
|
|
13
|
+
// If it's not local, we don't resolve it even if it's a Markdown file
|
|
14
|
+
// Example, we don't resolve https://github.com/project/README.md
|
|
15
|
+
if (!urlPath) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
// Ignore links without a Markdown file extension (ignoring qs/hash)
|
|
19
|
+
if (!HAS_MARKDOWN_EXTENSION.test(urlPath.pathname)) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
return urlPath;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A remark plugin to extract the h1 heading found in Markdown files
|
|
26
|
+
* This is exposed as "data.contentTitle" to the processed vfile
|
|
27
|
+
* Also gives the ability to strip that content title (used for the blog plugin)
|
|
28
|
+
*/
|
|
29
|
+
const plugin = function plugin(options) {
|
|
30
|
+
const { resolveMarkdownLink } = options;
|
|
31
|
+
return async (root, file) => {
|
|
32
|
+
const { visit } = await import('unist-util-visit');
|
|
33
|
+
visit(root, ['link', 'definition'], (node) => {
|
|
34
|
+
const link = node;
|
|
35
|
+
const linkURLPath = parseMarkdownLinkURLPath(link.url);
|
|
36
|
+
if (!linkURLPath) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const permalink = resolveMarkdownLink({
|
|
40
|
+
sourceFilePath: file.path,
|
|
41
|
+
linkPathname: linkURLPath.pathname,
|
|
42
|
+
});
|
|
43
|
+
if (permalink) {
|
|
44
|
+
// This reapplies the link ?qs#hash part to the resolved pathname
|
|
45
|
+
const resolvedUrl = (0, utils_1.serializeURLPath)({
|
|
46
|
+
...linkURLPath,
|
|
47
|
+
pathname: permalink,
|
|
48
|
+
});
|
|
49
|
+
link.url = resolvedUrl;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
exports.default = plugin;
|
|
55
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/remark/resolveMarkdownLinks/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,6CAI2B;AAgC3B,MAAM,sBAAsB,GAAG,UAAU,CAAC;AAE1C,SAAS,wBAAwB,CAAC,IAAY;IAC5C,MAAM,OAAO,GAAG,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC;IAExC,sEAAsE;IACtE,iEAAiE;IACjE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oEAAoE;IACpE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,MAAM,GAAW,SAAS,MAAM,CAAC,OAAsB;IAC3D,MAAM,EAAC,mBAAmB,EAAC,GAAG,OAAO,CAAC;IACtC,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAEjD,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE;YAC3C,MAAM,IAAI,GAAG,IAAoC,CAAC;YAClD,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,mBAAmB,CAAC;gBACpC,cAAc,EAAE,IAAI,CAAC,IAAI;gBACzB,YAAY,EAAE,WAAW,CAAC,QAAQ;aACnC,CAAC,CAAC;YAEH,IAAI,SAAS,EAAE,CAAC;gBACd,iEAAiE;gBACjE,MAAM,WAAW,GAAG,IAAA,wBAAgB,EAAC;oBACnC,GAAG,WAAW;oBACd,QAAQ,EAAE,SAAS;iBACpB,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,MAAM,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@docusaurus/mdx-loader",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "Docusaurus Loader for MDX",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
},
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@docusaurus/logger": "3.
|
|
22
|
-
"@docusaurus/utils": "3.
|
|
23
|
-
"@docusaurus/utils-validation": "3.
|
|
21
|
+
"@docusaurus/logger": "3.4.0",
|
|
22
|
+
"@docusaurus/utils": "3.4.0",
|
|
23
|
+
"@docusaurus/utils-validation": "3.4.0",
|
|
24
24
|
"@mdx-js/mdx": "^3.0.0",
|
|
25
25
|
"@slorber/remark-comment": "^1.0.0",
|
|
26
26
|
"escape-html": "^1.0.3",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"webpack": "^5.88.1"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@docusaurus/types": "3.
|
|
47
|
+
"@docusaurus/types": "3.4.0",
|
|
48
48
|
"@types/escape-html": "^1.0.2",
|
|
49
49
|
"@types/mdast": "^4.0.2",
|
|
50
50
|
"@types/stringify-object": "^3.3.1",
|
|
@@ -64,5 +64,5 @@
|
|
|
64
64
|
"engines": {
|
|
65
65
|
"node": ">=18.0"
|
|
66
66
|
},
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "49e9a2143274a8dd795659b417b470bc42abbd6e"
|
|
68
68
|
}
|
package/src/loader.ts
CHANGED
|
@@ -17,6 +17,7 @@ import stringifyObject from 'stringify-object';
|
|
|
17
17
|
import preprocessor from './preprocessor';
|
|
18
18
|
import {validateMDXFrontMatter} from './frontMatter';
|
|
19
19
|
import {createProcessorCached} from './processor';
|
|
20
|
+
import type {ResolveMarkdownLink} from './remark/resolveMarkdownLinks';
|
|
20
21
|
import type {MDXOptions} from './processor';
|
|
21
22
|
|
|
22
23
|
import type {MarkdownConfig} from '@docusaurus/types';
|
|
@@ -45,6 +46,7 @@ export type Options = Partial<MDXOptions> & {
|
|
|
45
46
|
frontMatter: {[key: string]: unknown};
|
|
46
47
|
metadata: {[key: string]: unknown};
|
|
47
48
|
}) => {[key: string]: unknown};
|
|
49
|
+
resolveMarkdownLink?: ResolveMarkdownLink;
|
|
48
50
|
};
|
|
49
51
|
|
|
50
52
|
/**
|
package/src/processor.ts
CHANGED
|
@@ -10,6 +10,7 @@ import contentTitle from './remark/contentTitle';
|
|
|
10
10
|
import toc from './remark/toc';
|
|
11
11
|
import transformImage from './remark/transformImage';
|
|
12
12
|
import transformLinks from './remark/transformLinks';
|
|
13
|
+
import resolveMarkdownLinks from './remark/resolveMarkdownLinks';
|
|
13
14
|
import details from './remark/details';
|
|
14
15
|
import head from './remark/head';
|
|
15
16
|
import mermaid from './remark/mermaid';
|
|
@@ -120,6 +121,13 @@ async function createProcessorFactory() {
|
|
|
120
121
|
siteDir: options.siteDir,
|
|
121
122
|
},
|
|
122
123
|
],
|
|
124
|
+
// TODO merge this with transformLinks?
|
|
125
|
+
options.resolveMarkdownLink
|
|
126
|
+
? [
|
|
127
|
+
resolveMarkdownLinks,
|
|
128
|
+
{resolveMarkdownLink: options.resolveMarkdownLink},
|
|
129
|
+
]
|
|
130
|
+
: undefined,
|
|
123
131
|
[
|
|
124
132
|
transformLinks,
|
|
125
133
|
{
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import {
|
|
9
|
+
parseLocalURLPath,
|
|
10
|
+
serializeURLPath,
|
|
11
|
+
type URLPath,
|
|
12
|
+
} from '@docusaurus/utils';
|
|
13
|
+
|
|
14
|
+
// @ts-expect-error: TODO see https://github.com/microsoft/TypeScript/issues/49721
|
|
15
|
+
import type {Transformer} from 'unified';
|
|
16
|
+
import type {Definition, Link} from 'mdast';
|
|
17
|
+
|
|
18
|
+
type ResolveMarkdownLinkParams = {
|
|
19
|
+
/**
|
|
20
|
+
* Absolute path to the source file containing this Markdown link.
|
|
21
|
+
*/
|
|
22
|
+
sourceFilePath: string;
|
|
23
|
+
/**
|
|
24
|
+
* The Markdown link pathname to resolve, as found in the source file.
|
|
25
|
+
* If the link is "./myFile.mdx?qs#hash", this will be "./myFile.mdx"
|
|
26
|
+
*/
|
|
27
|
+
linkPathname: string;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export type ResolveMarkdownLink = (
|
|
31
|
+
params: ResolveMarkdownLinkParams,
|
|
32
|
+
) => string | null;
|
|
33
|
+
|
|
34
|
+
export interface PluginOptions {
|
|
35
|
+
resolveMarkdownLink: ResolveMarkdownLink;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// TODO as of April 2023, no way to import/re-export this ESM type easily :/
|
|
39
|
+
// TODO upgrade to TS 5.3
|
|
40
|
+
// See https://github.com/microsoft/TypeScript/issues/49721#issuecomment-1517839391
|
|
41
|
+
// import type {Plugin} from 'unified';
|
|
42
|
+
type Plugin = any; // TODO fix this asap
|
|
43
|
+
|
|
44
|
+
const HAS_MARKDOWN_EXTENSION = /\.mdx?$/i;
|
|
45
|
+
|
|
46
|
+
function parseMarkdownLinkURLPath(link: string): URLPath | null {
|
|
47
|
+
const urlPath = parseLocalURLPath(link);
|
|
48
|
+
|
|
49
|
+
// If it's not local, we don't resolve it even if it's a Markdown file
|
|
50
|
+
// Example, we don't resolve https://github.com/project/README.md
|
|
51
|
+
if (!urlPath) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// Ignore links without a Markdown file extension (ignoring qs/hash)
|
|
56
|
+
if (!HAS_MARKDOWN_EXTENSION.test(urlPath.pathname)) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
return urlPath;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* A remark plugin to extract the h1 heading found in Markdown files
|
|
64
|
+
* This is exposed as "data.contentTitle" to the processed vfile
|
|
65
|
+
* Also gives the ability to strip that content title (used for the blog plugin)
|
|
66
|
+
*/
|
|
67
|
+
const plugin: Plugin = function plugin(options: PluginOptions): Transformer {
|
|
68
|
+
const {resolveMarkdownLink} = options;
|
|
69
|
+
return async (root, file) => {
|
|
70
|
+
const {visit} = await import('unist-util-visit');
|
|
71
|
+
|
|
72
|
+
visit(root, ['link', 'definition'], (node) => {
|
|
73
|
+
const link = node as unknown as Link | Definition;
|
|
74
|
+
const linkURLPath = parseMarkdownLinkURLPath(link.url);
|
|
75
|
+
if (!linkURLPath) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
const permalink = resolveMarkdownLink({
|
|
80
|
+
sourceFilePath: file.path,
|
|
81
|
+
linkPathname: linkURLPath.pathname,
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
if (permalink) {
|
|
85
|
+
// This reapplies the link ?qs#hash part to the resolved pathname
|
|
86
|
+
const resolvedUrl = serializeURLPath({
|
|
87
|
+
...linkURLPath,
|
|
88
|
+
pathname: permalink,
|
|
89
|
+
});
|
|
90
|
+
link.url = resolvedUrl;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
export default plugin;
|