cudoc-remark 0.5.0 → 0.7.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.
Files changed (56) hide show
  1. package/README.md +3 -1
  2. package/dist/capture.d.ts +23 -2
  3. package/dist/capture.d.ts.map +1 -1
  4. package/dist/capture.js +43 -3
  5. package/dist/capture.js.map +1 -1
  6. package/dist/embed.d.ts.map +1 -1
  7. package/dist/embed.js +14 -33
  8. package/dist/embed.js.map +1 -1
  9. package/dist/host-plugins.d.ts +7 -2
  10. package/dist/host-plugins.d.ts.map +1 -1
  11. package/dist/host-plugins.js +47 -6
  12. package/dist/host-plugins.js.map +1 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/prepare.d.ts.map +1 -1
  18. package/dist/prepare.js +6 -0
  19. package/dist/prepare.js.map +1 -1
  20. package/dist/transforms/table-cell-list/index.d.ts +1 -1
  21. package/dist/transforms/table-cell-list/index.d.ts.map +1 -1
  22. package/dist/transforms/table-cell-list/index.js +3 -2
  23. package/dist/transforms/table-cell-list/index.js.map +1 -1
  24. package/dist/transforms/table-column-layout/index.d.ts +1 -1
  25. package/dist/transforms/table-column-layout/index.d.ts.map +1 -1
  26. package/dist/transforms/table-column-layout/index.js +3 -2
  27. package/dist/transforms/table-column-layout/index.js.map +1 -1
  28. package/package.json +8 -12
  29. package/dist/transforms/table-cell-list/build-table-cell-children.d.ts +0 -2
  30. package/dist/transforms/table-cell-list/build-table-cell-children.d.ts.map +0 -1
  31. package/dist/transforms/table-cell-list/build-table-cell-children.js +0 -3
  32. package/dist/transforms/table-cell-list/build-table-cell-children.js.map +0 -1
  33. package/dist/transforms/table-cell-list/elements.d.ts +0 -2
  34. package/dist/transforms/table-cell-list/elements.d.ts.map +0 -1
  35. package/dist/transforms/table-cell-list/elements.js +0 -3
  36. package/dist/transforms/table-cell-list/elements.js.map +0 -1
  37. package/dist/transforms/table-cell-list/nodes.d.ts +0 -2
  38. package/dist/transforms/table-cell-list/nodes.d.ts.map +0 -1
  39. package/dist/transforms/table-cell-list/nodes.js +0 -3
  40. package/dist/transforms/table-cell-list/nodes.js.map +0 -1
  41. package/dist/transforms/table-cell-list/parse-inline-markdown.d.ts +0 -2
  42. package/dist/transforms/table-cell-list/parse-inline-markdown.d.ts.map +0 -1
  43. package/dist/transforms/table-cell-list/parse-inline-markdown.js +0 -3
  44. package/dist/transforms/table-cell-list/parse-inline-markdown.js.map +0 -1
  45. package/dist/transforms/table-cell-list/parse-table-cell-list.d.ts +0 -2
  46. package/dist/transforms/table-cell-list/parse-table-cell-list.d.ts.map +0 -1
  47. package/dist/transforms/table-cell-list/parse-table-cell-list.js +0 -3
  48. package/dist/transforms/table-cell-list/parse-table-cell-list.js.map +0 -1
  49. package/dist/transforms/table-column-layout/create-table.d.ts +0 -2
  50. package/dist/transforms/table-column-layout/create-table.d.ts.map +0 -1
  51. package/dist/transforms/table-column-layout/create-table.js +0 -3
  52. package/dist/transforms/table-column-layout/create-table.js.map +0 -1
  53. package/dist/transforms/table-column-layout/split-cell.d.ts +0 -2
  54. package/dist/transforms/table-column-layout/split-cell.d.ts.map +0 -1
  55. package/dist/transforms/table-column-layout/split-cell.js +0 -3
  56. package/dist/transforms/table-column-layout/split-cell.js.map +0 -1
package/README.md CHANGED
@@ -1,8 +1,10 @@
1
1
  # cudoc-remark
2
2
 
3
+ > **Most sites do not set this package up themselves.** On Docusaurus and Nextra it sits under the adapter: install it beside `cudoc-docusaurus` or `cudoc-nextra` and take only its embed plugin, library loader and compiler capture from it, as the [Docusaurus](https://github.com/cudoment/cudoc/tree/main/docs/docusaurus.md) and [Nextra](https://github.com/cudoment/cudoc/tree/main/docs/nextra.md) guides show. Configure it directly in two cases only: a Next.js site on `@next/mdx`, which has no adapter ([Next.js guide](https://github.com/cudoment/cudoc/tree/main/docs/next.md)), and a remark or MDX pipeline you assemble yourself. Otherwise start from [your site generator](https://github.com/cudoment/cudoc#pick-your-site-generator).
4
+
3
5
  Connect cudoc Markdown syntax and prepared document embeds to a remark/MDX pipeline.
4
6
 
5
- This separate package is a pipeline adapter, not a second implementation of cudoc's rules. Shared document semantics live in `@cudoment/cudoc`. Use it directly with Next.js/remark; Docusaurus and Nextra adapters already depend on it. VitePress and Eleventy share `cudoc-markdown-it`, and HTML uses its own adapter; none of them need this plugin.
7
+ This separate package is a pipeline adapter, not a second implementation of cudoc's rules. Shared document semantics live in `@cudoment/cudoc`. VitePress and Eleventy share `cudoc-markdown-it`, and HTML uses its own adapter; none of them need this plugin.
6
8
 
7
9
  ESM · Node.js 20+
8
10
 
package/dist/capture.d.ts CHANGED
@@ -1,8 +1,29 @@
1
1
  import type { Root } from "mdast";
2
2
  import type { Plugin } from "unified";
3
3
  import type { CompiledDocument } from "@cudoment/cudoc/markdown";
4
- /** Capture remark's final tree at the start of rehype, after native host plugins. */
5
- export declare function createCompilerCapture(): {
4
+ export type CompilerCaptureOptions = {
5
+ /**
6
+ * Path prefixes the host resolves by itself, each with the prefix an image
7
+ * is recorded under instead. Docusaurus reads `@site/static/img/logo.png`
8
+ * from the site directory and serves it at `/img/logo.png`, an address the
9
+ * check and the export resolve through their asset directories, so a
10
+ * Docusaurus collector passes `{ "@site/static/": "/" }`. The longest
11
+ * matching prefix wins; the host's own page is not changed. Only images
12
+ * are recorded this way: a link keeps the path it was written with.
13
+ */
14
+ aliases?: Record<string, string>;
15
+ };
16
+ /**
17
+ * Capture remark's final tree at the start of rehype, after native host plugins.
18
+ *
19
+ * `capture.remark` also notes every Markdown image as it stands then. A host
20
+ * plugin that runs later may turn one into a component of its own, as
21
+ * Docusaurus turns each into an `<img>` requiring the file; it rewrites the
22
+ * node in place, so the note still finds it, and the captured component keeps
23
+ * the image as `data.cudocImage` for everything that renders the stored tree
24
+ * without the host.
25
+ */
26
+ export declare function createCompilerCapture(options?: CompilerCaptureOptions): {
6
27
  remark: Plugin<[], Root>;
7
28
  rehype: Plugin;
8
29
  read(): CompiledDocument;
@@ -1 +1 @@
1
- {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAGhE,qFAAqF;AACrF,wBAAgB,qBAAqB;;;YAoCzB,gBAAgB;EAQ3B"}
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,IAAI,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAMrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAGhE,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,sBAA2B;;;YAwE9D,gBAAgB;EAQ3B"}
package/dist/capture.js CHANGED
@@ -1,16 +1,56 @@
1
- import { lowerNativeElements } from "@cudoment/cudoc/document";
1
+ import { visit } from "unist-util-visit";
2
+ import { lowerNativeElements, } from "@cudoment/cudoc/document";
2
3
  import { importedNames, importedNamesFromSource } from "@cudoment/cudoc/mdx";
3
- /** Capture remark's final tree at the start of rehype, after native host plugins. */
4
- export function createCompilerCapture() {
4
+ /**
5
+ * Capture remark's final tree at the start of rehype, after native host plugins.
6
+ *
7
+ * `capture.remark` also notes every Markdown image as it stands then. A host
8
+ * plugin that runs later may turn one into a component of its own, as
9
+ * Docusaurus turns each into an `<img>` requiring the file; it rewrites the
10
+ * node in place, so the note still finds it, and the captured component keeps
11
+ * the image as `data.cudocImage` for everything that renders the stored tree
12
+ * without the host.
13
+ */
14
+ export function createCompilerCapture(options = {}) {
15
+ const given = options.aliases === undefined ? {} : options.aliases;
16
+ if (typeof given !== "object" ||
17
+ given === null ||
18
+ Array.isArray(given) ||
19
+ Object.entries(given).some(([prefix, value]) => !prefix || typeof value !== "string"))
20
+ throw new TypeError("cudoc: capture aliases must map path prefixes to strings");
21
+ const aliases = Object.entries(given).sort(([a], [b]) => b.length - a.length);
22
+ const portable = (url) => {
23
+ const alias = aliases.find(([prefix]) => url.startsWith(prefix));
24
+ return alias ? `${alias[1]}${url.slice(alias[0].length)}` : url;
25
+ };
5
26
  let current;
6
27
  let result;
28
+ const images = new Map();
7
29
  const remark = () => (tree) => {
8
30
  current = tree;
31
+ images.clear();
32
+ visit(tree, "image", (node) => {
33
+ images.set(node, {
34
+ url: portable(node.url),
35
+ alt: node.alt ?? null,
36
+ title: node.title ?? null,
37
+ });
38
+ });
9
39
  };
10
40
  const rehype = () => (_tree, file) => {
11
41
  if (!current)
12
42
  throw new Error("cudoc: install capture.remark before capture.rehype");
43
+ for (const [node, image] of images) {
44
+ const replaced = node;
45
+ if (replaced.type !== "image")
46
+ replaced.data = { ...replaced.data, cudocImage: image };
47
+ }
13
48
  const tree = structuredClone(current);
49
+ // An image the host kept is recorded under the same address.
50
+ if (aliases.length)
51
+ visit(tree, "image", (node) => {
52
+ node.url = portable(node.url);
53
+ });
14
54
  lowerNativeElements(tree);
15
55
  // A host may have hoisted the ESM out of the tree already, so the source
16
56
  // is read as well; the two agree when both are present.
@@ -1 +1 @@
1
- {"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9D,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAE5E,qFAAqF;AACrF,MAAM,UAAU,qBAAqB;IACnC,IAAI,OAAyB,CAAA;IAC7B,IAAI,MAAoC,CAAA;IACxC,MAAM,MAAM,GAAqB,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9C,OAAO,GAAG,IAAI,CAAA;IAChB,CAAC,CAAA;IACD,MAAM,MAAM,GAAW,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3C,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;QACxE,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;QACrC,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACzB,yEAAyE;QACzE,wDAAwD;QACxD,MAAM,OAAO,GAAG;YACd,GAAG,IAAI,GAAG,CAAC;gBACT,GAAG,aAAa,CAAC,IAAI,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM;oBACzB,CAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC7C,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;SACH,CAAA;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAC9C,CAAA;QACD,MAAM,GAAG;YACP,IAAI;YACJ,WAAW,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW;gBACjC,IAAI,CAAC,IAAI,CAAC,WAAW;gBACrB,EAAE,CAA4B;YAChC,WAAW,EAAE,EAAE;YACf,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvC,CAAA;IACH,CAAC,CAAA;IACD,OAAO;QACL,MAAM;QACN,MAAM;QACN,IAAI;YACF,IAAI,CAAC,MAAM;gBACT,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAA;YACH,OAAO,MAAM,CAAA;QACf,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAI5D,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAA;AAQnC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qEAAqE;IACrE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAA;CACrB,CAAA;AAcD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,GACjB,IAAI,CA8CN;AAED,gEAAgE;AAChE,QAAA,MAAM,KAAK,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAgD5C,CAAA;AACH,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAI5D,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAA;AAInC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qEAAqE;IACrE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAA;CACrB,CAAA;AAcD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,GACjB,IAAI,CA8CN;AAED,gEAAgE;AAChE,QAAA,MAAM,KAAK,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CA6B5C,CAAA;AACH,eAAe,KAAK,CAAA"}
package/dist/embed.js CHANGED
@@ -20,7 +20,7 @@ import jsx from "acorn-jsx";
20
20
  // with it, in a runtime that cannot import the compiler stack behind
21
21
  // `node/library`.
22
22
  import { documentIdOf, resolveRoots, } from "@cudoment/cudoc/node/roots";
23
- import { readPreparedEmbeds, embedKey, } from "@cudoment/cudoc/node/prepare-embeds";
23
+ import { expandPreparedEmbeds } from "@cudoment/cudoc/node/prepare-embeds";
24
24
  import { stripLibraryMarker } from "./loader.js";
25
25
  const parser = Parser.extend(jsx());
26
26
  const parse = (source) => parser.parse(source, {
@@ -83,43 +83,24 @@ export function restoreExpressions(node, documentId) {
83
83
  }
84
84
  /** Splice prepared embeds into the current host compilation. */
85
85
  const embed = (options = {}) => (tree, file) => {
86
- let prepared;
87
- let index = 0;
88
- // Resolved only when a fence is met: a file outside every root is fine as
89
- // long as it embeds nothing.
90
- let documentId;
91
- const idOf = () => {
92
- if (documentId !== undefined)
93
- return documentId;
86
+ expandPreparedEmbeds(tree,
87
+ // Resolved only when a fence is met: a file outside every root is fine
88
+ // as long as it embeds nothing.
89
+ () => {
94
90
  const roots = resolveRoots(options.roots === undefined && options.sourceRoot === undefined
95
91
  ? { sourceRoot: "docs" }
96
92
  : options);
97
- documentId = documentIdOf(roots, file.path);
93
+ const documentId = documentIdOf(roots, file.path);
98
94
  if (documentId === undefined)
99
95
  throw new Error(`cudoc: ${file.path} is outside every collection root, so its embeds have no prepared data`);
100
- return documentId;
101
- };
102
- const expand = (node) => {
103
- if (!node.children)
104
- return;
105
- node.children = node.children.flatMap((child) => {
106
- if (child.type === "code" && child.lang === "cudoc-embed") {
107
- const id = idOf();
108
- // The loader may have appended its marker line; the snapshot was
109
- // taken from the file itself.
110
- prepared ??= readPreparedEmbeds(options.outDir ?? ".cudoc/documents", id, stripLibraryMarker(String(file.value)));
111
- const result = prepared.blocks[embedKey(id, child.value, ++index)];
112
- if (!result)
113
- throw new Error(`cudoc: prepared embed missing in ${id}; recollect documents`);
114
- const block = structuredClone(result);
115
- restoreExpressions(block, id);
116
- return (block.children ?? []);
117
- }
118
- expand(child);
119
- return [child];
120
- });
121
- };
122
- expand(tree);
96
+ return {
97
+ outDir: options.outDir ?? ".cudoc/documents",
98
+ documentId,
99
+ // The loader may have appended its marker line; the snapshot was
100
+ // taken from the file itself.
101
+ source: stripLibraryMarker(String(file.value)),
102
+ };
103
+ }, (block, documentId) => restoreExpressions(block, documentId));
123
104
  };
124
105
  export default embed;
125
106
  //# sourceMappingURL=embed.js.map
package/dist/embed.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"embed.js","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embed.js","sourceRoot":"","sources":["../src/embed.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { PluggableList } from "unified";
8
8
  import { type CudocRemarkOptions } from "./options.js";
9
- export type HostPluginOptions = Omit<CudocRemarkOptions, "toc"> & {
9
+ export type HostPluginOptions = Omit<CudocRemarkOptions, "toc" | "host" | "headingIds"> & {
10
10
  /**
11
11
  * Copy each anchor id onto its heading so the host uses it instead of
12
12
  * slugifying the heading text. On by default; turning it off leaves the
@@ -14,5 +14,10 @@ export type HostPluginOptions = Omit<CudocRemarkOptions, "toc"> & {
14
14
  */
15
15
  promoteHeadingIds?: boolean;
16
16
  };
17
- export declare const createHostPlugins: (options: HostPluginOptions | undefined, adapter: string) => PluggableList;
17
+ /**
18
+ * The remark plugins a Docusaurus or Nextra adapter hands its host, in order.
19
+ * `host` is the adapter's own, and decides what the host is given: Docusaurus
20
+ * receives a settled id its slugger would change as `{#id}` text.
21
+ */
22
+ export declare const createHostPlugins: (options: HostPluginOptions | undefined, adapter: string, host: "docusaurus" | "nextra") => PluggableList;
18
23
  //# sourceMappingURL=host-plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-plugins.d.ts","sourceRoot":"","sources":["../src/host-plugins.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAItE,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG;IAChE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AA+BD,eAAO,MAAM,iBAAiB,GAC5B,SAAS,iBAAiB,YAAK,EAC/B,SAAS,MAAM,KACd,aAkCF,CAAA"}
1
+ {"version":3,"file":"host-plugins.d.ts","sourceRoot":"","sources":["../src/host-plugins.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAU,aAAa,EAAE,MAAM,SAAS,CAAA;AAGpD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAItE,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,kBAAkB,EAClB,KAAK,GAAG,MAAM,GAAG,YAAY,CAC9B,GAAG;IACF;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAgED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,iBAAiB,YAAK,EAC/B,SAAS,MAAM,EACf,MAAM,YAAY,GAAG,QAAQ,KAC5B,aAsCF,CAAA"}
@@ -4,16 +4,16 @@
4
4
  * Docusaurus and Nextra share the transforms and heading id promotion.
5
5
  * Default output uses native elements without a cudoc component provider.
6
6
  */
7
+ import { visit } from "unist-util-visit";
7
8
  import cudocPrepare from "./prepare.js";
8
9
  import { resolveOptions } from "./options.js";
9
10
  import { promoteAnchorIds } from "./heading-ids.js";
11
+ // `host` and `headingIds` are the adapter's to set, so neither is accepted.
10
12
  const KNOWN_KEYS = new Set([
11
13
  "syntax",
12
- "host",
13
14
  "format",
14
15
  "calloutTypes",
15
16
  "components",
16
- "headingIds",
17
17
  "tableCellList",
18
18
  "headingMetadata",
19
19
  "badge",
@@ -33,7 +33,44 @@ const readAnchorNaming = (options) => {
33
33
  idAttribute: headingMetadata.anchor?.idAttribute,
34
34
  };
35
35
  };
36
- export const createHostPlugins = (options = {}, adapter) => {
36
+ /**
37
+ * Whether Docusaurus's slugger leaves an id as it is: letters, digits,
38
+ * hyphens and underscores only. The slugger runs with the case kept for an id
39
+ * already on a heading, and removes or replaces everything else.
40
+ */
41
+ const slugStable = (id) => /^[\p{L}\p{M}\p{N}_-]+$/u.test(id);
42
+ /**
43
+ * Hands Docusaurus the heading ids cudoc settled that its slugger would change.
44
+ *
45
+ * Docusaurus runs an id already on a heading through its slugger again, which
46
+ * turns `v1.2` into `v12`, but takes a `{#id}` at the end of the heading text
47
+ * as written. Its table of contents reads the same id, so the heading, its
48
+ * anchor and the entry stay one value.
49
+ *
50
+ * Every other id stays on the heading for the slugger, which returns it
51
+ * unchanged and records it, so a later heading whose text slugs to the same
52
+ * value is numbered past it instead of taking it. The page's `#` heading keeps
53
+ * its id there too: Docusaurus reads the page title from that heading's text
54
+ * before it takes a `{#id}` out.
55
+ */
56
+ const docusaurusHeadingIds = () => (tree) => {
57
+ visit(tree, "heading", (heading) => {
58
+ const properties = heading.data?.hProperties;
59
+ const id = properties?.id;
60
+ if (typeof id !== "string" || !id)
61
+ return;
62
+ if (heading.depth === 1 || slugStable(id))
63
+ return;
64
+ delete properties.id;
65
+ heading.children.push({ type: "text", value: ` {#${id}}` });
66
+ });
67
+ };
68
+ /**
69
+ * The remark plugins a Docusaurus or Nextra adapter hands its host, in order.
70
+ * `host` is the adapter's own, and decides what the host is given: Docusaurus
71
+ * receives a settled id its slugger would change as `{#id}` text.
72
+ */
73
+ export const createHostPlugins = (options = {}, adapter, host) => {
37
74
  if (typeof options !== "object" || options === null) {
38
75
  throw new TypeError(`${adapter}: options must be an object`);
39
76
  }
@@ -42,10 +79,9 @@ export const createHostPlugins = (options = {}, adapter) => {
42
79
  throw new TypeError(`${adapter}: unknown option "${key}"`);
43
80
  }
44
81
  }
82
+ if (host !== "docusaurus" && host !== "nextra")
83
+ throw new TypeError(`${adapter}: host must be "docusaurus" or "nextra"`);
45
84
  const { promoteHeadingIds = true, ...remarkOptions } = options;
46
- const host = adapter.includes("docusaurus")
47
- ? "docusaurus"
48
- : "nextra";
49
85
  const resolvedOptions = {
50
86
  ...remarkOptions,
51
87
  host,
@@ -61,6 +97,11 @@ export const createHostPlugins = (options = {}, adapter) => {
61
97
  if (promoteHeadingIds) {
62
98
  plugins.push([promoteAnchorIds, readAnchorNaming(remarkOptions)]);
63
99
  }
100
+ // Last, once every id cudoc assigns is on its heading. Bare rather than
101
+ // `[plugin]`: Docusaurus accepts a plugin or a `[plugin, options]` pair and
102
+ // refuses a one-element array when it validates its config.
103
+ if (host === "docusaurus")
104
+ plugins.push(docusaurusHeadingIds);
64
105
  return plugins;
65
106
  };
66
107
  //# sourceMappingURL=host-plugins.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-plugins.js","sourceRoot":"","sources":["../src/host-plugins.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,YAAY,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAYnD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS;IACjC,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,iBAAiB;IACjB,OAAO;IACP,mBAAmB;IACnB,mBAAmB;IACnB,mBAAmB;IACnB,YAAY;IACZ,mBAAmB;CACkB,CAAC,CAAA;AAExC,iFAAiF;AACjF,MAAM,gBAAgB,GAAG,CACvB,OAA2B,EACF,EAAE;IAC3B,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;IAC/C,IAAI,CAAC,eAAe,IAAI,eAAe,KAAK,IAAI;QAAE,OAAO,EAAE,CAAA;IAC3D,OAAO;QACL,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI;QACxC,WAAW,EAAE,eAAe,CAAC,MAAM,EAAE,WAAW;KACjD,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAA6B,EAAE,EAC/B,OAAe,EACA,EAAE;IACjB,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,MAAM,IAAI,SAAS,CAAC,GAAG,OAAO,6BAA6B,CAAC,CAAA;IAC9D,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,GAAG,OAAO,qBAAqB,GAAG,GAAG,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED,MAAM,EAAE,iBAAiB,GAAG,IAAI,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAA;IAC9D,MAAM,IAAI,GAA4B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;QAClE,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,QAAQ,CAAA;IACZ,MAAM,eAAe,GAAG;QACtB,GAAG,aAAa;QAChB,IAAI;QACJ,UAAU,EAAE,MAAe;QAC3B,GAAG,EAAE,KAAK;KACF,CAAA;IAEV,uEAAuE;IACvE,2EAA2E;IAC3E,mEAAmE;IACnE,cAAc,CAAC,eAAe,CAAC,CAAA;IAE/B,MAAM,OAAO,GAAkB,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAA;IAEhE,oEAAoE;IACpE,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"host-plugins.js","sourceRoot":"","sources":["../src/host-plugins.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -12,5 +12,5 @@ export { promoteAnchorIds } from "./heading-ids.js";
12
12
  export type { PromoteAnchorIdsOptions } from "./heading-ids.js";
13
13
  export { createHostPlugins } from "./host-plugins.js";
14
14
  export type { HostPluginOptions } from "./host-plugins.js";
15
- export { createCompilerCapture } from "./capture.js";
15
+ export { createCompilerCapture, type CompilerCaptureOptions, } from "./capture.js";
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,IAAI,YAAY,EACvB,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,YAAY,EACV,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,0BAA0B,GAC3B,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrE,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,2CAA2C,CAAA;AAClD,YAAY,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,IAAI,YAAY,EACvB,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,YAAY,EACV,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,0BAA0B,GAC3B,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrE,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,2CAA2C,CAAA;AAClD,YAAY,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EACL,qBAAqB,EACrB,KAAK,sBAAsB,GAC5B,MAAM,cAAc,CAAA"}
package/dist/index.js CHANGED
@@ -6,5 +6,5 @@ export { transformTableCellList } from "./transforms/table-cell-list/index.js";
6
6
  export { createTableColumnLayoutTransform, resolveTableColumnLayoutOptions, } from "./transforms/table-column-layout/index.js";
7
7
  export { promoteAnchorIds } from "./heading-ids.js";
8
8
  export { createHostPlugins } from "./host-plugins.js";
9
- export { createCompilerCapture } from "./capture.js";
9
+ export { createCompilerCapture, } from "./capture.js";
10
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,IAAI,YAAY,EACvB,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAO7C,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,UAAU,CAAA;AAEjB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,2CAA2C,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,OAAO,IAAI,YAAY,EACvB,eAAe,EACf,aAAa,GACd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAO7C,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,UAAU,CAAA;AAEjB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,EACL,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,2CAA2C,CAAA;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EACL,qBAAqB,GAEtB,MAAM,cAAc,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../src/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC9E,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAA;AAYrB;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,KAAK,KAAG,MAAM,GAAG,IAIpD,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,SAAS,UAAU,CAAC,OAAO,cAAc,CAAC,KACzC;IAAE,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAA;CAsC/D,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CA0DrD,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../src/prepare.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC9E,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAA;AAerB;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,KAAK,KAAG,MAAM,GAAG,IAIpD,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,SAAS,UAAU,CAAC,OAAO,cAAc,CAAC,KACzC;IAAE,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,CAAA;CAsC/D,CAAA;AAED,QAAA,MAAM,YAAY,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,CAiErD,CAAA;AAED,eAAe,YAAY,CAAA"}
package/dist/prepare.js CHANGED
@@ -15,6 +15,8 @@ import { addTocExport, collectHeadingToc, createToc } from "./toc.js";
15
15
  import remarkDirective from "remark-directive";
16
16
  import remarkFrontmatter from "remark-frontmatter";
17
17
  import { normalizeDocument } from "@cudoment/cudoc/document";
18
+ /** The label of the definition `cudoc-remark/loader` appends; see `loader.ts`. */
19
+ const LIBRARY_MARKER_LABEL = "cudoc-library";
18
20
  /**
19
21
  * The source text is needed to read list syntax out of table cells, which mdast
20
22
  * does not preserve. Without it that transform leaves cells untouched.
@@ -72,6 +74,10 @@ const cudocPrepare = function (options = {}) {
72
74
  this.use(remarkDirective);
73
75
  const { pre, post } = buildTransforms(resolved);
74
76
  return function (tree, file) {
77
+ // The line `cudoc-remark/loader` appends only has to change the compiled
78
+ // input; kept in the tree it would travel into every exported AST and
79
+ // change it with each collection.
80
+ tree.children = tree.children.filter((node) => node.type !== "definition" || node.identifier !== LIBRARY_MARKER_LABEL);
75
81
  const format = options.format ?? (file.extname === ".md" ? "md" : "mdx");
76
82
  if (portable || format === "md") {
77
83
  tree.children = tree.children.filter((node) => node.type !== "yaml");
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../src/prepare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../src/prepare.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/index";
1
+ export * from "@cudoment/cudoc/transforms/table-cell-list";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/index.ts"],"names":[],"mappings":"AACA,cAAc,kDAAkD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/index.ts"],"names":[],"mappings":"AAEA,cAAc,4CAA4C,CAAA"}
@@ -1,3 +1,4 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/index";
1
+ // The `cudoc-remark/table-cell-list` entry. The transform lives in the core, where
2
+ // every host shares it.
3
+ export * from "@cudoment/cudoc/transforms/table-cell-list";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/index.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,kDAAkD,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/index.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,wBAAwB;AACxB,cAAc,4CAA4C,CAAA"}
@@ -1,2 +1,2 @@
1
- export * from "@cudoment/cudoc/transforms/table-column-layout/index";
1
+ export * from "@cudoment/cudoc/transforms/table-column-layout";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/index.ts"],"names":[],"mappings":"AACA,cAAc,sDAAsD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/index.ts"],"names":[],"mappings":"AAEA,cAAc,gDAAgD,CAAA"}
@@ -1,3 +1,4 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-column-layout/index";
1
+ // The `cudoc-remark/table-column-layout` entry. The transform lives in the core, where
2
+ // every host shares it.
3
+ export * from "@cudoment/cudoc/transforms/table-column-layout";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/index.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,sDAAsD,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/index.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,wBAAwB;AACxB,cAAc,gDAAgD,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cudoc-remark",
3
- "version": "0.5.0",
4
- "description": "Remark plugin for cudoc: heading anchors, badges, table cell lists and table column layout, each configurable.",
3
+ "version": "0.7.0",
4
+ "description": "Remark plugins for cudoc: syntax normalization, heading anchors, badges, callouts, table cell lists and layout, prepared embeds and the library loader.",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -67,7 +67,8 @@
67
67
  "./loader": {
68
68
  "types": "./dist/loader.d.ts",
69
69
  "default": "./dist/loader.js"
70
- }
70
+ },
71
+ "./package.json": "./package.json"
71
72
  },
72
73
  "files": [
73
74
  "dist",
@@ -82,27 +83,22 @@
82
83
  "clean": "rm -rf dist *.tsbuildinfo"
83
84
  },
84
85
  "dependencies": {
85
- "@cudoment/cudoc": "0.5.0",
86
+ "@types/mdast": "^4.0.4",
87
+ "@cudoment/cudoc": "0.7.0",
86
88
  "estree-util-value-to-estree": "^3.5.0",
87
89
  "mdast-util-mdx-jsx": "^3.2.0",
88
- "remark-gfm": "^4.0.1",
89
- "remark-mdx": "^3.1.0",
90
- "remark-parse": "^11.0.0",
91
90
  "unified": "^11.0.5",
92
91
  "unist-util-visit": "^5.0.0",
93
92
  "remark-directive": "^4.0.0",
94
93
  "acorn": "^8.15.0",
95
94
  "acorn-jsx": "^5.3.2",
96
- "remark-frontmatter": "^5.0.0"
95
+ "remark-frontmatter": "^5.0.0",
96
+ "vfile": "^6.0.3"
97
97
  },
98
98
  "peerDependencies": {
99
- "@types/mdast": "^4.0.4",
100
99
  "react": "^18.0.0 || ^19.0.0"
101
100
  },
102
101
  "peerDependenciesMeta": {
103
- "@types/mdast": {
104
- "optional": true
105
- },
106
102
  "react": {
107
103
  "optional": true
108
104
  }
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/build-table-cell-children";
2
- //# sourceMappingURL=build-table-cell-children.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-table-cell-children.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/build-table-cell-children.ts"],"names":[],"mappings":"AACA,cAAc,sEAAsE,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/build-table-cell-children";
3
- //# sourceMappingURL=build-table-cell-children.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-table-cell-children.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/build-table-cell-children.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,sEAAsE,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/elements";
2
- //# sourceMappingURL=elements.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elements.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/elements.ts"],"names":[],"mappings":"AACA,cAAc,qDAAqD,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/elements";
3
- //# sourceMappingURL=elements.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elements.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/elements.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,qDAAqD,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/nodes";
2
- //# sourceMappingURL=nodes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/nodes.ts"],"names":[],"mappings":"AACA,cAAc,kDAAkD,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/nodes";
3
- //# sourceMappingURL=nodes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/nodes.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,kDAAkD,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/parse-inline-markdown";
2
- //# sourceMappingURL=parse-inline-markdown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-inline-markdown.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/parse-inline-markdown.ts"],"names":[],"mappings":"AACA,cAAc,kEAAkE,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/parse-inline-markdown";
3
- //# sourceMappingURL=parse-inline-markdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-inline-markdown.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/parse-inline-markdown.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,kEAAkE,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-cell-list/parse-table-cell-list";
2
- //# sourceMappingURL=parse-table-cell-list.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-table-cell-list.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/parse-table-cell-list.ts"],"names":[],"mappings":"AACA,cAAc,kEAAkE,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-cell-list/parse-table-cell-list";
3
- //# sourceMappingURL=parse-table-cell-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-table-cell-list.js","sourceRoot":"","sources":["../../../src/transforms/table-cell-list/parse-table-cell-list.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,kEAAkE,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-column-layout/create-table";
2
- //# sourceMappingURL=create-table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-table.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/create-table.ts"],"names":[],"mappings":"AACA,cAAc,6DAA6D,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-column-layout/create-table";
3
- //# sourceMappingURL=create-table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-table.js","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/create-table.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,6DAA6D,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from "@cudoment/cudoc/transforms/table-column-layout/split-cell";
2
- //# sourceMappingURL=split-cell.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"split-cell.d.ts","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/split-cell.ts"],"names":[],"mappings":"AACA,cAAc,2DAA2D,CAAA"}
@@ -1,3 +0,0 @@
1
- // Compatibility entrypoint. The implementation is shared by all hosts.
2
- export * from "@cudoment/cudoc/transforms/table-column-layout/split-cell";
3
- //# sourceMappingURL=split-cell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"split-cell.js","sourceRoot":"","sources":["../../../src/transforms/table-column-layout/split-cell.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,cAAc,2DAA2D,CAAA"}