@dogsbay/format-mkdocs 0.2.0-beta.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 (145) hide show
  1. package/dist/autodoc/markdown-generator.d.ts +6 -0
  2. package/dist/autodoc/markdown-generator.d.ts.map +1 -0
  3. package/dist/autodoc/markdown-generator.js +242 -0
  4. package/dist/autodoc/markdown-generator.js.map +1 -0
  5. package/dist/autodoc/module-resolver.d.ts +8 -0
  6. package/dist/autodoc/module-resolver.d.ts.map +1 -0
  7. package/dist/autodoc/module-resolver.js +218 -0
  8. package/dist/autodoc/module-resolver.js.map +1 -0
  9. package/dist/autodoc/python-docstring.d.ts +7 -0
  10. package/dist/autodoc/python-docstring.d.ts.map +1 -0
  11. package/dist/autodoc/python-docstring.js +324 -0
  12. package/dist/autodoc/python-docstring.js.map +1 -0
  13. package/dist/autodoc/python-parser.d.ts +10 -0
  14. package/dist/autodoc/python-parser.d.ts.map +1 -0
  15. package/dist/autodoc/python-parser.js +541 -0
  16. package/dist/autodoc/python-parser.js.map +1 -0
  17. package/dist/autodoc/tree-builder.d.ts +9 -0
  18. package/dist/autodoc/tree-builder.d.ts.map +1 -0
  19. package/dist/autodoc/tree-builder.js +279 -0
  20. package/dist/autodoc/tree-builder.js.map +1 -0
  21. package/dist/autodoc/types.d.ts +128 -0
  22. package/dist/autodoc/types.d.ts.map +1 -0
  23. package/dist/autodoc/types.js +2 -0
  24. package/dist/autodoc/types.js.map +1 -0
  25. package/dist/cli.d.ts +3 -0
  26. package/dist/cli.d.ts.map +1 -0
  27. package/dist/cli.js +32 -0
  28. package/dist/cli.js.map +1 -0
  29. package/dist/export/to-astro.d.ts +26 -0
  30. package/dist/export/to-astro.d.ts.map +1 -0
  31. package/dist/export/to-astro.js +551 -0
  32. package/dist/export/to-astro.js.map +1 -0
  33. package/dist/export/to-mkdocs-project.d.ts +27 -0
  34. package/dist/export/to-mkdocs-project.d.ts.map +1 -0
  35. package/dist/export/to-mkdocs-project.js +192 -0
  36. package/dist/export/to-mkdocs-project.js.map +1 -0
  37. package/dist/export/to-mkdocs.d.ts +6 -0
  38. package/dist/export/to-mkdocs.d.ts.map +1 -0
  39. package/dist/export/to-mkdocs.js +178 -0
  40. package/dist/export/to-mkdocs.js.map +1 -0
  41. package/dist/importer.d.ts +30 -0
  42. package/dist/importer.d.ts.map +1 -0
  43. package/dist/importer.js +376 -0
  44. package/dist/importer.js.map +1 -0
  45. package/dist/index.d.ts +57 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +170 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/inline-walker.d.ts +17 -0
  50. package/dist/inline-walker.d.ts.map +1 -0
  51. package/dist/inline-walker.js +167 -0
  52. package/dist/inline-walker.js.map +1 -0
  53. package/dist/loader.d.ts +42 -0
  54. package/dist/loader.d.ts.map +1 -0
  55. package/dist/loader.js +765 -0
  56. package/dist/loader.js.map +1 -0
  57. package/dist/parse.d.ts +12 -0
  58. package/dist/parse.d.ts.map +1 -0
  59. package/dist/parse.js +46 -0
  60. package/dist/parse.js.map +1 -0
  61. package/dist/renderers/mermaid.d.ts +9 -0
  62. package/dist/renderers/mermaid.d.ts.map +1 -0
  63. package/dist/renderers/mermaid.js +117 -0
  64. package/dist/renderers/mermaid.js.map +1 -0
  65. package/dist/rules/admonition.d.ts +6 -0
  66. package/dist/rules/admonition.d.ts.map +1 -0
  67. package/dist/rules/admonition.js +73 -0
  68. package/dist/rules/admonition.js.map +1 -0
  69. package/dist/rules/annotations.d.ts +6 -0
  70. package/dist/rules/annotations.d.ts.map +1 -0
  71. package/dist/rules/annotations.js +57 -0
  72. package/dist/rules/annotations.js.map +1 -0
  73. package/dist/rules/autodoc.d.ts +7 -0
  74. package/dist/rules/autodoc.d.ts.map +1 -0
  75. package/dist/rules/autodoc.js +102 -0
  76. package/dist/rules/autodoc.js.map +1 -0
  77. package/dist/rules/blocks.d.ts +6 -0
  78. package/dist/rules/blocks.d.ts.map +1 -0
  79. package/dist/rules/blocks.js +172 -0
  80. package/dist/rules/blocks.js.map +1 -0
  81. package/dist/rules/content-tabs.d.ts +6 -0
  82. package/dist/rules/content-tabs.d.ts.map +1 -0
  83. package/dist/rules/content-tabs.js +67 -0
  84. package/dist/rules/content-tabs.js.map +1 -0
  85. package/dist/rules/docusaurus-admonitions.d.ts +7 -0
  86. package/dist/rules/docusaurus-admonitions.d.ts.map +1 -0
  87. package/dist/rules/docusaurus-admonitions.js +101 -0
  88. package/dist/rules/docusaurus-admonitions.js.map +1 -0
  89. package/dist/rules/file-include.d.ts +28 -0
  90. package/dist/rules/file-include.d.ts.map +1 -0
  91. package/dist/rules/file-include.js +198 -0
  92. package/dist/rules/file-include.js.map +1 -0
  93. package/dist/rules/footnotes.d.ts +6 -0
  94. package/dist/rules/footnotes.d.ts.map +1 -0
  95. package/dist/rules/footnotes.js +161 -0
  96. package/dist/rules/footnotes.js.map +1 -0
  97. package/dist/rules/icon-shortcode.d.ts +30 -0
  98. package/dist/rules/icon-shortcode.d.ts.map +1 -0
  99. package/dist/rules/icon-shortcode.js +169 -0
  100. package/dist/rules/icon-shortcode.js.map +1 -0
  101. package/dist/rules/keys.d.ts +6 -0
  102. package/dist/rules/keys.d.ts.map +1 -0
  103. package/dist/rules/keys.js +30 -0
  104. package/dist/rules/keys.js.map +1 -0
  105. package/dist/rules/link-rewrite.d.ts +7 -0
  106. package/dist/rules/link-rewrite.d.ts.map +1 -0
  107. package/dist/rules/link-rewrite.js +93 -0
  108. package/dist/rules/link-rewrite.js.map +1 -0
  109. package/dist/rules/math.d.ts +14 -0
  110. package/dist/rules/math.d.ts.map +1 -0
  111. package/dist/rules/math.js +114 -0
  112. package/dist/rules/math.js.map +1 -0
  113. package/dist/rules/md-in-html.d.ts +6 -0
  114. package/dist/rules/md-in-html.d.ts.map +1 -0
  115. package/dist/rules/md-in-html.js +135 -0
  116. package/dist/rules/md-in-html.js.map +1 -0
  117. package/dist/rules/snippets.d.ts +10 -0
  118. package/dist/rules/snippets.d.ts.map +1 -0
  119. package/dist/rules/snippets.js +109 -0
  120. package/dist/rules/snippets.js.map +1 -0
  121. package/dist/rules/templates.d.ts +15 -0
  122. package/dist/rules/templates.d.ts.map +1 -0
  123. package/dist/rules/templates.js +105 -0
  124. package/dist/rules/templates.js.map +1 -0
  125. package/dist/rules/variants.d.ts +12 -0
  126. package/dist/rules/variants.d.ts.map +1 -0
  127. package/dist/rules/variants.js +148 -0
  128. package/dist/rules/variants.js.map +1 -0
  129. package/dist/tree.d.ts +2 -0
  130. package/dist/tree.d.ts.map +1 -0
  131. package/dist/tree.js +2 -0
  132. package/dist/tree.js.map +1 -0
  133. package/dist/utils/indent.d.ts +18 -0
  134. package/dist/utils/indent.d.ts.map +1 -0
  135. package/dist/utils/indent.js +56 -0
  136. package/dist/utils/indent.js.map +1 -0
  137. package/dist/utils/types.d.ts +19 -0
  138. package/dist/utils/types.d.ts.map +1 -0
  139. package/dist/utils/types.js +63 -0
  140. package/dist/utils/types.js.map +1 -0
  141. package/dist/walker.d.ts +8 -0
  142. package/dist/walker.d.ts.map +1 -0
  143. package/dist/walker.js +193 -0
  144. package/dist/walker.js.map +1 -0
  145. package/package.json +71 -0
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Convert markdown-it inline token children into structured InlineNode[].
3
+ */
4
+ export function walkInlineTokens(tokens) {
5
+ if (!tokens || tokens.length === 0)
6
+ return [];
7
+ const result = [];
8
+ const annotations = { bold: false, italic: false, strikethrough: false };
9
+ // Stack for container elements (links)
10
+ // When inside a link, spans are pushed to the link's children instead of result
11
+ const containerStack = [];
12
+ function target() {
13
+ if (containerStack.length > 0) {
14
+ return containerStack[containerStack.length - 1].node.children;
15
+ }
16
+ return result;
17
+ }
18
+ function pushNode(node) {
19
+ target().push(node);
20
+ }
21
+ function makeText(text) {
22
+ const span = { type: "text", text };
23
+ if (annotations.bold)
24
+ span.bold = true;
25
+ if (annotations.italic)
26
+ span.italic = true;
27
+ if (annotations.strikethrough)
28
+ span.strikethrough = true;
29
+ return span;
30
+ }
31
+ for (let i = 0; i < tokens.length; i++) {
32
+ const token = tokens[i];
33
+ switch (token.type) {
34
+ // ── Annotation open/close ──
35
+ case "strong_open":
36
+ annotations.bold = true;
37
+ break;
38
+ case "strong_close":
39
+ annotations.bold = false;
40
+ break;
41
+ case "em_open":
42
+ annotations.italic = true;
43
+ break;
44
+ case "em_close":
45
+ annotations.italic = false;
46
+ break;
47
+ case "s_open":
48
+ annotations.strikethrough = true;
49
+ break;
50
+ case "s_close":
51
+ annotations.strikethrough = false;
52
+ break;
53
+ // ── Link container ──
54
+ case "link_open": {
55
+ const href = token.attrGet("href") || "";
56
+ const title = token.attrGet("title") || undefined;
57
+ const linkNode = { type: "link", href, children: [] };
58
+ if (title)
59
+ linkNode.title = title;
60
+ containerStack.push({ type: "link", node: linkNode });
61
+ break;
62
+ }
63
+ case "link_close": {
64
+ const container = containerStack.pop();
65
+ if (container) {
66
+ // Push the completed link to the parent target
67
+ target().push(container.node);
68
+ }
69
+ break;
70
+ }
71
+ // ── Text ──
72
+ case "text": {
73
+ if (token.content) {
74
+ pushNode(makeText(token.content));
75
+ }
76
+ break;
77
+ }
78
+ // ── Inline code ──
79
+ case "code_inline": {
80
+ const codeNode = { type: "code", text: token.content };
81
+ pushNode(codeNode);
82
+ break;
83
+ }
84
+ // ── Image ──
85
+ case "image": {
86
+ const src = token.attrGet("src") || "";
87
+ const alt = token.content || token.attrGet("alt") || undefined;
88
+ const title = token.attrGet("title") || undefined;
89
+ const imgNode = { type: "image", src };
90
+ if (alt)
91
+ imgNode.alt = alt;
92
+ if (title)
93
+ imgNode.title = title;
94
+ pushNode(imgNode);
95
+ break;
96
+ }
97
+ // ── Footnote reference (custom rule) ──
98
+ case "footnote_ref": {
99
+ const label = token.meta?.label || "";
100
+ const fnNode = { type: "footnote-ref", label };
101
+ pushNode(fnNode);
102
+ break;
103
+ }
104
+ // ── Line breaks ──
105
+ case "softbreak": {
106
+ // Soft break is just whitespace (newline within a paragraph)
107
+ pushNode(makeText(" "));
108
+ break;
109
+ }
110
+ case "hardbreak": {
111
+ const brNode = { type: "break" };
112
+ pushNode(brNode);
113
+ break;
114
+ }
115
+ // ── Inline math ──
116
+ case "math_inline": {
117
+ const mathNode = { type: "math", latex: token.content || token.meta?.latex || "" };
118
+ pushNode(mathNode);
119
+ break;
120
+ }
121
+ // ── Icon/emoji shortcode ──
122
+ case "icon_shortcode": {
123
+ const meta = token.meta || {};
124
+ const iconNode = {
125
+ type: "icon",
126
+ name: meta.name || meta.raw || "",
127
+ library: meta.library,
128
+ };
129
+ if (meta.variant)
130
+ iconNode.variant = meta.variant;
131
+ if (meta.size)
132
+ iconNode.size = meta.size;
133
+ if (meta.attrs)
134
+ iconNode.attrs = meta.attrs;
135
+ pushNode(iconNode);
136
+ break;
137
+ }
138
+ // ── Raw HTML inline (escape hatch) ──
139
+ case "html_inline": {
140
+ // Try to detect <kbd> patterns from keys plugin
141
+ const kbdMatch = token.content.match(/^<kbd>([^<]+)<\/kbd>(?:\+<kbd>([^<]+)<\/kbd>)*$/);
142
+ if (kbdMatch) {
143
+ const keys = token.content
144
+ .match(/<kbd>([^<]+)<\/kbd>/g)
145
+ .map((m) => m.replace(/<\/?kbd>/g, ""));
146
+ const kbdNode = { type: "kbd", keys };
147
+ pushNode(kbdNode);
148
+ }
149
+ else {
150
+ const htmlNode = { type: "html-inline", html: token.content };
151
+ pushNode(htmlNode);
152
+ }
153
+ break;
154
+ }
155
+ // ── Fallback: anything else becomes html-inline ──
156
+ default: {
157
+ if (token.content) {
158
+ const htmlNode = { type: "html-inline", html: token.content };
159
+ pushNode(htmlNode);
160
+ }
161
+ break;
162
+ }
163
+ }
164
+ }
165
+ return result;
166
+ }
167
+ //# sourceMappingURL=inline-walker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-walker.js","sourceRoot":"","sources":["../src/inline-walker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Astro content loader for MkDocs Material documentation.
3
+ *
4
+ * Reads .md files with MkDocs syntax (!!!, ???, ===, ++key++, etc.),
5
+ * parses with dogsbay-mkdocs, and produces TreeNode[] that
6
+ * ContentRenderer.astro can render through real components.
7
+ */
8
+ import type MarkdownIt from "markdown-it";
9
+ import type { TreeNode } from "@dogsbay/types";
10
+ export interface Heading {
11
+ depth: number;
12
+ slug: string;
13
+ text: string;
14
+ /** Symbol kind for API reference TOC entries (class, meth, attr, func, module) */
15
+ kind?: string;
16
+ }
17
+ export interface MkdocsParseResult {
18
+ tree: TreeNode[];
19
+ headings: Heading[];
20
+ }
21
+ /**
22
+ * Parse a MkDocs markdown string into a TreeNode[] + headings.
23
+ * Adapts tree node shapes to match base-astro's ContentRenderer expectations.
24
+ *
25
+ * ContentRenderer handles: prose, heading, code, callout, details, tabs, tab,
26
+ * table, deflist, dt, dd, steps, step, substeps.
27
+ *
28
+ * It does NOT handle: paragraph, ordered-list, unordered-list, list-item,
29
+ * blockquote, html, annotation-list, hr. These must be collapsed into prose
30
+ * nodes with pre-rendered HTML.
31
+ */
32
+ export declare function parseMkdocsMarkdown(source: string, md: MarkdownIt, options?: {
33
+ collapse?: boolean;
34
+ env?: Record<string, unknown>;
35
+ youtubeEmbed?: boolean;
36
+ diagrams?: boolean;
37
+ autodoc?: {
38
+ sourceRoot: string;
39
+ globalOptions?: Record<string, unknown>;
40
+ };
41
+ }): Promise<MkdocsParseResult>;
42
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,gBAAgB,CAAC;AAK3D,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,UAAU,EACd,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,GACrL,OAAO,CAAC,iBAAiB,CAAC,CAuD5B"}