@dogsbay/format-asciidoc 0.2.0-beta.101

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 (58) hide show
  1. package/README.md +40 -0
  2. package/dist/cli.d.ts +4 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +354 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/detect.d.ts +47 -0
  7. package/dist/detect.d.ts.map +1 -0
  8. package/dist/detect.js +73 -0
  9. package/dist/detect.js.map +1 -0
  10. package/dist/index.d.ts +10 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +9 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/inline-walker.d.ts +17 -0
  15. package/dist/inline-walker.d.ts.map +1 -0
  16. package/dist/inline-walker.js +167 -0
  17. package/dist/inline-walker.js.map +1 -0
  18. package/dist/loaders/antora.d.ts +3 -0
  19. package/dist/loaders/antora.d.ts.map +1 -0
  20. package/dist/loaders/antora.js +874 -0
  21. package/dist/loaders/antora.js.map +1 -0
  22. package/dist/loaders/asciibinder.d.ts +3 -0
  23. package/dist/loaders/asciibinder.d.ts.map +1 -0
  24. package/dist/loaders/asciibinder.js +229 -0
  25. package/dist/loaders/asciibinder.js.map +1 -0
  26. package/dist/loaders/dominance.d.ts +15 -0
  27. package/dist/loaders/dominance.d.ts.map +1 -0
  28. package/dist/loaders/dominance.js +86 -0
  29. package/dist/loaders/dominance.js.map +1 -0
  30. package/dist/loaders/master-adoc.d.ts +3 -0
  31. package/dist/loaders/master-adoc.d.ts.map +1 -0
  32. package/dist/loaders/master-adoc.js +178 -0
  33. package/dist/loaders/master-adoc.js.map +1 -0
  34. package/dist/loaders/plain.d.ts +3 -0
  35. package/dist/loaders/plain.d.ts.map +1 -0
  36. package/dist/loaders/plain.js +58 -0
  37. package/dist/loaders/plain.js.map +1 -0
  38. package/dist/loaders/types.d.ts +117 -0
  39. package/dist/loaders/types.d.ts.map +1 -0
  40. package/dist/loaders/types.js +2 -0
  41. package/dist/loaders/types.js.map +1 -0
  42. package/dist/loaders/util.d.ts +15 -0
  43. package/dist/loaders/util.d.ts.map +1 -0
  44. package/dist/loaders/util.js +49 -0
  45. package/dist/loaders/util.js.map +1 -0
  46. package/dist/parse.d.ts +178 -0
  47. package/dist/parse.d.ts.map +1 -0
  48. package/dist/parse.js +150 -0
  49. package/dist/parse.js.map +1 -0
  50. package/dist/tree.d.ts +2 -0
  51. package/dist/tree.d.ts.map +1 -0
  52. package/dist/tree.js +2 -0
  53. package/dist/tree.js.map +1 -0
  54. package/dist/walker.d.ts +8 -0
  55. package/dist/walker.d.ts.map +1 -0
  56. package/dist/walker.js +210 -0
  57. package/dist/walker.js.map +1 -0
  58. package/package.json +54 -0
package/dist/walker.js ADDED
@@ -0,0 +1,210 @@
1
+ import { walkInlineTokens } from "./inline-walker.js";
2
+ /**
3
+ * Convert a markdown-it token stream into a TreeNode[].
4
+ * Handles open/close token pairs by recursively collecting children.
5
+ */
6
+ export function tokensToTree(tokens) {
7
+ let pos = 0;
8
+ function walk() {
9
+ const nodes = [];
10
+ while (pos < tokens.length) {
11
+ const token = tokens[pos];
12
+ // Close tokens: return to parent
13
+ if (token.nesting === -1) {
14
+ pos++;
15
+ return nodes;
16
+ }
17
+ // Open tokens: collect children until matching close
18
+ if (token.nesting === 1) {
19
+ pos++;
20
+ const node = openTokenToNode(token);
21
+ node.children = walk();
22
+ nodes.push(node);
23
+ continue;
24
+ }
25
+ // Self-closing / inline tokens (nesting === 0)
26
+ pos++;
27
+ const node = flatTokenToNode(token);
28
+ if (node)
29
+ nodes.push(node);
30
+ }
31
+ return nodes;
32
+ }
33
+ return walk();
34
+ }
35
+ function openTokenToNode(token) {
36
+ switch (token.type) {
37
+ case "admonition_open":
38
+ return {
39
+ type: "callout",
40
+ props: {
41
+ variant: token.info,
42
+ title: token.meta?.title ?? null,
43
+ inline: token.meta?.inline ?? null,
44
+ },
45
+ };
46
+ case "details_open":
47
+ return {
48
+ type: "details",
49
+ props: {
50
+ variant: token.info,
51
+ title: token.meta?.title ?? null,
52
+ open: token.meta?.open ?? false,
53
+ },
54
+ };
55
+ case "tab_set_open":
56
+ return { type: "tabs" };
57
+ case "tab_panel_open":
58
+ return {
59
+ type: "tab",
60
+ props: { title: token.info },
61
+ };
62
+ case "annotation_list_open":
63
+ return { type: "annotation-list" };
64
+ case "paragraph_open":
65
+ return { type: "paragraph" };
66
+ case "heading_open":
67
+ return {
68
+ type: "heading",
69
+ props: { level: parseInt(token.tag.slice(1), 10) },
70
+ };
71
+ case "ordered_list_open":
72
+ return { type: "ordered-list" };
73
+ case "bullet_list_open":
74
+ return { type: "unordered-list" };
75
+ case "list_item_open":
76
+ return { type: "list-item" };
77
+ case "blockquote_open":
78
+ return { type: "blockquote" };
79
+ case "dl_open":
80
+ return { type: "deflist" };
81
+ case "dt_open":
82
+ return { type: "dt" };
83
+ case "dd_open":
84
+ return { type: "dd" };
85
+ case "html_container_open":
86
+ return {
87
+ type: "html-container",
88
+ props: {
89
+ tag: token.meta?.tag ?? "div",
90
+ attrs: token.meta?.attrs ?? {},
91
+ },
92
+ };
93
+ case "footnote_def_open":
94
+ return {
95
+ type: "footnote-def",
96
+ props: { label: token.meta?.label ?? "" },
97
+ };
98
+ default:
99
+ return { type: token.type.replace(/_open$/, "") };
100
+ }
101
+ }
102
+ function flatTokenToNode(token) {
103
+ switch (token.type) {
104
+ case "inline": {
105
+ const node = { type: "prose", html: token.content };
106
+ // Structured inline children (Notion-style rich text model)
107
+ if (token.children && token.children.length > 0) {
108
+ node.inline = walkInlineTokens(token.children);
109
+ }
110
+ return node;
111
+ }
112
+ case "math_block":
113
+ return {
114
+ type: "math-block",
115
+ props: { latex: token.content || token.meta?.latex || "" },
116
+ };
117
+ case "fence": {
118
+ const fenceMarker = token.markup || "```";
119
+ const { lang, title, highlights, lineNumbers, minja } = parseFenceInfo(token.info);
120
+ return {
121
+ type: "code",
122
+ props: {
123
+ lang,
124
+ title: title || undefined,
125
+ code: token.content,
126
+ highlights: highlights || undefined,
127
+ lineNumbers: lineNumbers || undefined,
128
+ hasAnnotations: token.meta?.hasAnnotations ?? false,
129
+ fence: fenceMarker.length > 3 ? fenceMarker : undefined,
130
+ minja: minja || undefined,
131
+ },
132
+ };
133
+ }
134
+ case "code_block":
135
+ return { type: "code", props: { code: token.content } };
136
+ case "hr":
137
+ return { type: "hr" };
138
+ case "html_block": {
139
+ // Convert standalone <img> tags to structured paragraph > prose > image nodes
140
+ // so they can be rendered as BlockImage with optimization support
141
+ const imgMatch = token.content.match(/^\s*<img\s[^>]*?\bsrc=["']([^"']+)["'][^>]*?(?:\balt=["']([^"']*)["'])?[^>]*?\/?>\s*$/i);
142
+ if (imgMatch) {
143
+ const src = imgMatch[1];
144
+ // Extract alt — may appear before or after src
145
+ const altMatch = token.content.match(/\balt=["']([^"']*)["']/i);
146
+ const alt = altMatch ? altMatch[1] : "";
147
+ return {
148
+ type: "paragraph",
149
+ children: [
150
+ {
151
+ type: "prose",
152
+ inline: [{ type: "image", src, alt }],
153
+ },
154
+ ],
155
+ };
156
+ }
157
+ return { type: "html", html: token.content };
158
+ }
159
+ // Skip hidden/empty tokens
160
+ case "softbreak":
161
+ case "hardbreak":
162
+ return null;
163
+ default:
164
+ if (token.hidden)
165
+ return null;
166
+ return { type: token.type, html: token.content || undefined };
167
+ }
168
+ }
169
+ /**
170
+ * Parse fence info string to extract lang, title, hl_lines, and linenums.
171
+ * Handles: "yaml", "yaml title=\".rc\"", " yaml", "yaml hl_lines=\"2 3\"",
172
+ * "python linenums=\"1\""
173
+ */
174
+ function parseFenceInfo(info) {
175
+ if (!info)
176
+ return { lang: null, title: null, highlights: null, lineNumbers: false, minja: false };
177
+ const trimmed = info.trim();
178
+ if (!trimmed)
179
+ return { lang: null, title: null, highlights: null, lineNumbers: false, minja: false };
180
+ // The `{minja}` fence marker (engine-planted: this listing's directives /
181
+ // attribute refs are REAL and a later Minja pass must process them) is a
182
+ // whitespace-delimited brace group with a bare `minja` token — same
183
+ // grading as format-dogsbay-md's isMinjaProcessedFence. It must survive
184
+ // into props.minja so a dogsbay-md export re-emits it: dropping it here
185
+ // orphaned the fence's live `{{ refs }}` on the `convert --to dogsbay-md`
186
+ // path — the later site build masked them and readers copied
187
+ // placeholders (issue #036 review finding).
188
+ let minja = false;
189
+ for (const group of trimmed.matchAll(/(?:^|\s)\{([^{}]*)\}(?=\s|$)/g)) {
190
+ const tokens = group[1].match(/"[^"]*"|'[^']*'|\S+/g) ?? [];
191
+ if (tokens.includes("minja")) {
192
+ minja = true;
193
+ break;
194
+ }
195
+ }
196
+ // Extract title="..." if present
197
+ const titleMatch = trimmed.match(/\btitle="([^"]*)"/);
198
+ const title = titleMatch ? titleMatch[1] : null;
199
+ // Extract hl_lines="..." if present (e.g. hl_lines="2 3" or hl_lines="1-3 5")
200
+ const hlMatch = trimmed.match(/\bhl_lines="([^"]*)"/);
201
+ const highlights = hlMatch ? hlMatch[1] : null;
202
+ // Extract linenums if present (e.g. linenums="1")
203
+ const lineNumbers = /\blinenums=/.test(trimmed);
204
+ // Lang is the first word (before any space, brace, or title= attribute)
205
+ // Must be a word-like string, not empty or starting with special chars
206
+ const firstWord = trimmed.split(/[\s{]/)[0];
207
+ const lang = firstWord && !firstWord.includes("=") ? firstWord : null;
208
+ return { lang, title, highlights, lineNumbers, minja };
209
+ }
210
+ //# sourceMappingURL=walker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walker.js","sourceRoot":"","sources":["../src/walker.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "@dogsbay/format-asciidoc",
3
+ "version": "0.2.0-beta.101",
4
+ "description": "AsciiDoc format plugin for Dogsbay — imports .adoc sources into TreeNode[] via the adoc2md-modular engine + Minja resolution + markdown-it walker.",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./cli": {
14
+ "types": "./dist/cli.d.ts",
15
+ "import": "./dist/cli.js"
16
+ }
17
+ },
18
+ "files": [
19
+ "dist",
20
+ "README.md"
21
+ ],
22
+ "peerDependencies": {
23
+ "markdown-it": "^14.0.0"
24
+ },
25
+ "dependencies": {
26
+ "markdown-it": "^14.3.0",
27
+ "yaml": "^2.9.0",
28
+ "@dogsbay/adoc2md-modular": "0.2.0-beta.101",
29
+ "@dogsbay/format-dogsbay-md": "0.2.0-beta.101",
30
+ "@dogsbay/minja": "0.2.0-beta.101",
31
+ "@dogsbay/types": "0.2.0-beta.101"
32
+ },
33
+ "devDependencies": {
34
+ "@types/markdown-it": "^14.1.2",
35
+ "@types/node": "^25.9.5",
36
+ "typescript": "^5.9.3",
37
+ "vitest": "^4.1.10"
38
+ },
39
+ "license": "MIT",
40
+ "repository": {
41
+ "type": "git",
42
+ "url": "https://github.com/dogsbay/dogsbay.git",
43
+ "directory": "packages/format-asciidoc"
44
+ },
45
+ "homepage": "https://github.com/dogsbay/dogsbay/tree/main/packages/format-asciidoc",
46
+ "bugs": {
47
+ "url": "https://github.com/dogsbay/dogsbay/issues"
48
+ },
49
+ "scripts": {
50
+ "build": "tsc",
51
+ "test": "vitest run",
52
+ "test:watch": "vitest"
53
+ }
54
+ }