@dogsbay/format-dita 0.2.0-beta.121 → 0.2.0-beta.123
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/README.md +6 -0
- package/dist/anchors.d.ts +0 -1
- package/dist/anchors.js +0 -1
- package/dist/blocks.d.ts +8 -3
- package/dist/blocks.js +525 -17
- package/dist/conref.d.ts +0 -1
- package/dist/conref.js +1 -2
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -1
- package/dist/inline.d.ts +0 -9
- package/dist/inline.js +87 -10
- package/dist/markdown.d.ts +0 -1
- package/dist/markdown.js +1 -2
- package/dist/parse.d.ts +0 -1
- package/dist/parse.js +11 -1
- package/dist/publish-support.d.ts +0 -1
- package/dist/publish-support.js +0 -1
- package/dist/qualifiers.d.ts +25 -0
- package/dist/qualifiers.js +40 -0
- package/dist/types.d.ts +0 -1
- package/dist/types.js +0 -1
- package/dist/well-formed.d.ts +14 -0
- package/dist/well-formed.js +110 -0
- package/package.json +5 -4
- package/dist/anchors.d.ts.map +0 -1
- package/dist/anchors.js.map +0 -1
- package/dist/blocks.d.ts.map +0 -1
- package/dist/blocks.js.map +0 -1
- package/dist/conref.d.ts.map +0 -1
- package/dist/conref.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/inline.d.ts.map +0 -1
- package/dist/inline.js.map +0 -1
- package/dist/markdown.d.ts.map +0 -1
- package/dist/markdown.js.map +0 -1
- package/dist/parse.d.ts.map +0 -1
- package/dist/parse.js.map +0 -1
- package/dist/publish-support.d.ts.map +0 -1
- package/dist/publish-support.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -16,4 +16,6 @@ export { DITA_TOPIC_TYPES, renameDitaHref, relativeIncludePath, } from "./types.
|
|
|
16
16
|
export { ditaTopicToTree } from "./parse.js";
|
|
17
17
|
export { ditaTopicToDogsbayMd } from "./markdown.js";
|
|
18
18
|
export { planConrefs, } from "./conref.js";
|
|
19
|
-
|
|
19
|
+
// The closed db- qualifier vocabulary (tones, tab variants, scoped themes)
|
|
20
|
+
export { DB_QUALIFIERS } from "./blocks.js";
|
|
21
|
+
export { checkWellFormed } from "./well-formed.js";
|
package/dist/inline.d.ts
CHANGED
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* DITA inline elements → InlineNode[] (Notion-style flat annotations).
|
|
3
|
-
*
|
|
4
|
-
* DITA's semantic inlines (uicontrol, filepath, apiname, …) map to their
|
|
5
|
-
* conventional visual rendering; the semantic distinction itself cannot be
|
|
6
|
-
* carried by the closed InlineNode union, so mappings that lose semantics
|
|
7
|
-
* are recorded as conversion notes exactly once per construct per topic.
|
|
8
|
-
*/
|
|
9
1
|
import type { Element, AnyNode } from "domhandler";
|
|
10
2
|
import type { InlineNode } from "@dogsbay/types";
|
|
11
3
|
import { type ConrefSiteContext, type ConrefSnippetRef, type PublishContext } from "./types.js";
|
|
@@ -78,4 +70,3 @@ export declare const convertInline: (nodes: AnyNode[], ctx: InlineContext, forma
|
|
|
78
70
|
/** Trim leading/trailing whitespace-only fringe from an inline run. */
|
|
79
71
|
export declare const trimInline: (nodes: InlineNode[]) => InlineNode[];
|
|
80
72
|
export {};
|
|
81
|
-
//# sourceMappingURL=inline.d.ts.map
|
package/dist/inline.js
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DITA inline elements → InlineNode[] (Notion-style flat annotations).
|
|
3
|
+
*
|
|
4
|
+
* DITA's semantic inlines (uicontrol, filepath, apiname, …) map to their
|
|
5
|
+
* conventional visual rendering; the semantic distinction itself cannot be
|
|
6
|
+
* carried by the closed InlineNode union, so mappings that lose semantics
|
|
7
|
+
* are recorded as conversion notes exactly once per construct per topic.
|
|
8
|
+
*/
|
|
9
|
+
import { DB_QUALIFIERS, outputTokens } from "./qualifiers.js";
|
|
1
10
|
import { publishHref } from "./types.js";
|
|
2
11
|
import { anchorId } from "./anchors.js";
|
|
3
12
|
/**
|
|
@@ -65,7 +74,7 @@ const codeText = (name, text, ctx) => {
|
|
|
65
74
|
};
|
|
66
75
|
// `em` and `strong` are DITA 2.0's emphasis domain
|
|
67
76
|
const ITALIC_LIKE = new Set(["i", "em", "term", "cite", "q", "var"]);
|
|
68
|
-
const BOLD_LIKE = new Set(["b", "strong", "uicontrol", "wintitle", "menucascade"
|
|
77
|
+
const BOLD_LIKE = new Set(["b", "strong", "uicontrol", "wintitle", "menucascade"]);
|
|
69
78
|
/**
|
|
70
79
|
* Publishing: the name to convert an element as. An element the converter
|
|
71
80
|
* does not know is converted as the nearest base element it does know,
|
|
@@ -85,7 +94,7 @@ export const elementName = (el, ctx, known) => {
|
|
|
85
94
|
return raw;
|
|
86
95
|
};
|
|
87
96
|
const KNOWN_INLINE = new Set([
|
|
88
|
-
"xref", "link", "image", "u", "sub", "sup", "overline", "line-through", "indexterm", "draft-comment", "data", "menucascade", "tm", "fn",
|
|
97
|
+
"xref", "link", "image", "u", "sub", "sup", "overline", "line-through", "indexterm", "draft-comment", "data", "menucascade", "tm", "fn", "shortcut",
|
|
89
98
|
"foreign", "unknown", "required-cleanup",
|
|
90
99
|
]);
|
|
91
100
|
export const isKnownInline = (name) => KNOWN_INLINE.has(name) || CODE_LIKE.has(name) || TRANSPARENT.has(name) || ITALIC_LIKE.has(name) ||
|
|
@@ -99,6 +108,26 @@ export const textOf = (nodes) => nodes
|
|
|
99
108
|
return "";
|
|
100
109
|
})
|
|
101
110
|
.join("");
|
|
111
|
+
/**
|
|
112
|
+
* A <shortcut>'s keys (`Ctrl+Shift+S` → Ctrl, Shift, S), or undefined when it
|
|
113
|
+
* is an access-key letter: inside a <uicontrol> (by name or @class) that
|
|
114
|
+
* holds other text or elements beside it.
|
|
115
|
+
*/
|
|
116
|
+
const shortcutKeys = (el, ctx) => {
|
|
117
|
+
const text = textOf(el.children).replace(/\s+/g, " ").trim();
|
|
118
|
+
if (!text)
|
|
119
|
+
return undefined;
|
|
120
|
+
const parent = el.parent;
|
|
121
|
+
const parentName = parent && isElement(parent) ? elementName(parent, ctx, isKnownInline) : "";
|
|
122
|
+
if (parentName === "uicontrol") {
|
|
123
|
+
const besides = parent.children.some((c) => c !== el && (isElement(c) || (isText(c) && c.data.trim().length > 0)));
|
|
124
|
+
if (besides)
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
// `+` joins keys; a lone `+` (or a trailing one, `Ctrl++`) is the plus key.
|
|
128
|
+
const keys = text.split(/\s*\+\s*(?=\S)/).map((k) => k.trim()).filter(Boolean);
|
|
129
|
+
return keys.length > 0 ? keys : [text];
|
|
130
|
+
};
|
|
102
131
|
/** An empty anchor element for an @id (DITA-OT puts the id on the element itself). */
|
|
103
132
|
export const idAnchor = (id) => `<a id="${id.replace(/&/g, "&").replace(/"/g, """)}"></a>`;
|
|
104
133
|
/** A DITA length in pixels, as DITA-OT's length-to-pixels (96 per inch); undefined for percentages and unknown units. */
|
|
@@ -229,6 +258,31 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
|
|
|
229
258
|
}
|
|
230
259
|
ctx.note(node.attribs.conref ? "@conref" : "@conkeyref", `<${name}> pulls content from "${ref}" — ${conrefLedgerDetail(node.attribs, snippet, ctx.conref !== undefined)}`);
|
|
231
260
|
}
|
|
261
|
+
// `<ph outputclass="db-badge tone-success">Beta</ph>`: a badge, in running
|
|
262
|
+
// text or a title. DITA-OT shows the plain text.
|
|
263
|
+
if (name === "ph" && /(^|\s)db-badge(\s|$)/.test(node.attribs?.outputclass ?? "")) {
|
|
264
|
+
const key = node.attribs?.keyref && ctx.publish ? ctx.publish.keys.get(node.attribs.keyref) : undefined;
|
|
265
|
+
const text = collapseWhitespace(textOf(children)).trim() || key?.text || key?.linktext || "";
|
|
266
|
+
if (text) {
|
|
267
|
+
let variant;
|
|
268
|
+
for (const t of outputTokens(node.attribs?.outputclass)) {
|
|
269
|
+
const tone = /^tone-(.+)$/.exec(t);
|
|
270
|
+
if (!tone)
|
|
271
|
+
continue;
|
|
272
|
+
if (DB_QUALIFIERS.tones.includes(tone[1]))
|
|
273
|
+
variant = tone[1];
|
|
274
|
+
else
|
|
275
|
+
noteOnce(ctx, `db-badge ${t}`, `"${t}" is not a tone (${DB_QUALIFIERS.tones.join(", ")}) — default badge`);
|
|
276
|
+
}
|
|
277
|
+
out.push({ type: "badge", text, ...(variant ? { variant } : {}) });
|
|
278
|
+
continue;
|
|
279
|
+
}
|
|
280
|
+
// A content-less keyref falls through to the key's text ({{ key }}): the badge look is what is lost
|
|
281
|
+
if (node.attribs?.keyref)
|
|
282
|
+
noteOnce(ctx, "db-badge keyref", `db-badge with only a keyref ("${node.attribs.keyref}") — shown as the key's text, without the badge`);
|
|
283
|
+
else
|
|
284
|
+
noteOnce(ctx, "db-badge", "db-badge with no text — nothing to show");
|
|
285
|
+
}
|
|
232
286
|
// Key-based text reuse (<ph keyref="product-name"/>, <keyword keyref=…>).
|
|
233
287
|
// Authored fallback content always wins — it is the only text that is
|
|
234
288
|
// guaranteed to exist (href-only keys have no text to resolve). Only
|
|
@@ -342,13 +396,34 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
|
|
|
342
396
|
pushText(" ");
|
|
343
397
|
continue;
|
|
344
398
|
}
|
|
345
|
-
if (name === "menucascade"
|
|
346
|
-
//
|
|
347
|
-
|
|
348
|
-
|
|
399
|
+
if (name === "menucascade") {
|
|
400
|
+
// "File > Save Project", as DITA-OT's HTML renders it: each step keeps
|
|
401
|
+
// its own look (a <uicontrol> is bold), joined by " > "
|
|
402
|
+
// Separators only between steps that produced something: a step that
|
|
403
|
+
// converts to nothing (an unresolved conref) left a leading " > ", which
|
|
404
|
+
// a line start reads as a blockquote
|
|
405
|
+
let any = false;
|
|
406
|
+
for (const part of node.children.filter(isElement)) {
|
|
407
|
+
const converted = convertInline([part], ctx, formatting);
|
|
408
|
+
if (!converted.length)
|
|
409
|
+
continue;
|
|
410
|
+
if (any)
|
|
349
411
|
pushText(" > ");
|
|
350
|
-
out.push(...
|
|
351
|
-
|
|
412
|
+
out.push(...converted);
|
|
413
|
+
any = true;
|
|
414
|
+
}
|
|
415
|
+
continue;
|
|
416
|
+
}
|
|
417
|
+
if (name === "shortcut") {
|
|
418
|
+
// A keystroke (`<shortcut>Ctrl+S</shortcut>`) is a keycap. Inside a
|
|
419
|
+
// <uicontrol> beside other text it is the label's access-key letter
|
|
420
|
+
// (`<uicontrol><shortcut>D</shortcut>elete</uicontrol>`, the form real
|
|
421
|
+
// corpora use, which DITA-OT underlines): keep it as the label's text.
|
|
422
|
+
const keys = shortcutKeys(node, ctx);
|
|
423
|
+
if (keys)
|
|
424
|
+
out.push({ type: "kbd", keys });
|
|
425
|
+
else
|
|
426
|
+
out.push(...convertInline(children, ctx, formatting));
|
|
352
427
|
continue;
|
|
353
428
|
}
|
|
354
429
|
if (BOLD_LIKE.has(name)) {
|
|
@@ -446,10 +521,13 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
|
|
|
446
521
|
out.push({ type: "image", src: imgHref, ...(alt ? { alt } : {}), ...(attrs ? { attrs } : {}) });
|
|
447
522
|
continue;
|
|
448
523
|
}
|
|
524
|
+
// The <alt> element (DITA 1.1+) wins over the deprecated @alt, as in publishing.
|
|
525
|
+
const altEl = (children).find((c) => isElement(c) && c.name.toLowerCase() === "alt");
|
|
526
|
+
const alt = altEl ? collapseWhitespace(textOf(altEl.children)).trim() : node.attribs?.alt;
|
|
449
527
|
out.push({
|
|
450
528
|
type: "image",
|
|
451
529
|
src: imgHref,
|
|
452
|
-
...(
|
|
530
|
+
...(alt ? { alt } : {}),
|
|
453
531
|
});
|
|
454
532
|
continue;
|
|
455
533
|
}
|
|
@@ -514,4 +592,3 @@ export const trimInline = (nodes) => {
|
|
|
514
592
|
}
|
|
515
593
|
return result;
|
|
516
594
|
};
|
|
517
|
-
//# sourceMappingURL=inline.js.map
|
package/dist/markdown.d.ts
CHANGED
package/dist/markdown.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { treeToDogsbayMd } from "@dogsbay/format-dogsbay-md";
|
|
1
|
+
import { treeToDogsbayMd } from "@dogsbay/format-dogsbay-md/browser";
|
|
2
2
|
import { ditaTopicToTree } from "./parse.js";
|
|
3
3
|
/** DITA topic type → dogsbay contentType frontmatter value. */
|
|
4
4
|
const CONTENT_TYPE_MAP = {
|
|
@@ -69,4 +69,3 @@ export function ditaTopicToDogsbayMd(xml, options = {}) {
|
|
|
69
69
|
});
|
|
70
70
|
return { ...result, markdown: markdown.endsWith("\n") ? markdown : `${markdown}\n` };
|
|
71
71
|
}
|
|
72
|
-
//# sourceMappingURL=markdown.js.map
|
package/dist/parse.d.ts
CHANGED
package/dist/parse.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { checkWellFormed } from "./well-formed.js";
|
|
1
2
|
import { parseDocument } from "htmlparser2";
|
|
2
3
|
import { convertChildren, convertItemContent } from "./blocks.js";
|
|
3
4
|
import { textOf, convertInline, trimInline, collapseWhitespace } from "./inline.js";
|
|
@@ -219,6 +220,10 @@ export function ditaTopicToTree(xml, options = {}) {
|
|
|
219
220
|
const topicPath = options.topicPath ?? "";
|
|
220
221
|
const notes = [];
|
|
221
222
|
const note = (construct, detail) => notes.push({ topicPath, construct, detail });
|
|
223
|
+
// The parser repairs malformed XML silently: say so, with a line
|
|
224
|
+
const malformed = checkWellFormed(xml);
|
|
225
|
+
if (malformed)
|
|
226
|
+
note("<xml>", `not well-formed XML, line ${malformed.line}: ${malformed.message} — the converted content may be incomplete`);
|
|
222
227
|
const doc = parseDocument(xml, { xmlMode: true });
|
|
223
228
|
const roots = findTopicRoots(doc.children, !!options.publish);
|
|
224
229
|
const root = roots[0] ?? null;
|
|
@@ -284,6 +289,10 @@ export function ditaTopicToTree(xml, options = {}) {
|
|
|
284
289
|
continue;
|
|
285
290
|
const name = child.name.toLowerCase();
|
|
286
291
|
if (name === "title" || name === "glossterm") {
|
|
292
|
+
// The page title is plain text: a badge in it keeps only its words
|
|
293
|
+
if (hasBadge(child)) {
|
|
294
|
+
note("@outputclass", `db-badge in the topic title is plain text in the page title — put it in a section title or the body to show it`);
|
|
295
|
+
}
|
|
287
296
|
// glossentry topics carry their title in <glossterm>
|
|
288
297
|
if (options.publish) {
|
|
289
298
|
// Publishing: a footnote in the title is the page's first note; the title text leaves it out
|
|
@@ -392,4 +401,5 @@ export function ditaTopicToTree(xml, options = {}) {
|
|
|
392
401
|
}
|
|
393
402
|
return { tree, meta, notes };
|
|
394
403
|
}
|
|
395
|
-
|
|
404
|
+
/** A `<ph outputclass="db-badge">` anywhere inside an element. */
|
|
405
|
+
const hasBadge = (el) => el.children.some((c) => isElement(c) && (/(^|\s)db-badge(\s|$)/.test(c.attribs?.outputclass ?? "") || hasBadge(c)));
|
|
@@ -8,4 +8,3 @@ export { renamedElementIds } from "./anchors.js";
|
|
|
8
8
|
export { convertInline, trimInline, type InlineContext } from "./inline.js";
|
|
9
9
|
export { PUBLISH_PREREQUISITES_MARKER, PUBLISH_RELATED_LINKS_MARKER } from "./blocks.js";
|
|
10
10
|
export { publishHref, publishLabel, publishLanguage, publishString, type PublishContext, type PublishKey, type PublishStrings, } from "./types.js";
|
|
11
|
-
//# sourceMappingURL=publish-support.d.ts.map
|
package/dist/publish-support.js
CHANGED
|
@@ -8,4 +8,3 @@ export { renamedElementIds } from "./anchors.js";
|
|
|
8
8
|
export { convertInline, trimInline } from "./inline.js";
|
|
9
9
|
export { PUBLISH_PREREQUISITES_MARKER, PUBLISH_RELATED_LINKS_MARKER } from "./blocks.js";
|
|
10
10
|
export { publishHref, publishLabel, publishLanguage, publishString, } from "./types.js";
|
|
11
|
-
//# sourceMappingURL=publish-support.js.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The closed `db-` vocabulary (plans/dita-variants-themes.md,
|
|
3
|
+
* plans/dita-components-phase3.md): the looks a component may take and the
|
|
4
|
+
* scoped themes. Tones, tab variants and themes mirror format-astro's
|
|
5
|
+
* tone-classes.ts, which the renderers draw from; the CLI test
|
|
6
|
+
* db-qualifiers.test.ts fails when they drift. Closed lists, so a Schematron
|
|
7
|
+
* house rule can enforce them.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DB_QUALIFIERS: {
|
|
10
|
+
readonly tones: readonly ["info", "success", "warning", "danger"];
|
|
11
|
+
readonly tabVariants: readonly ["pills", "underline"];
|
|
12
|
+
readonly themes: readonly ["dark"];
|
|
13
|
+
/** db-button: Button's variants (the default needs no token; `primary` is its alias). */
|
|
14
|
+
readonly buttonVariants: readonly ["primary", "secondary", "outline", "ghost", "link", "destructive"];
|
|
15
|
+
/** db-grid `cols-N` and a cell's `span-N`. */
|
|
16
|
+
readonly gridColumns: readonly [1, 2, 3, 4, 5, 6];
|
|
17
|
+
};
|
|
18
|
+
/** The `@outputclass` tokens of an element, `db-theme-*` (a scope, not a component) excluded. */
|
|
19
|
+
export declare const outputTokens: (outputclass: string | undefined) => string[];
|
|
20
|
+
/**
|
|
21
|
+
* A YouTube video id from the URL forms people paste: watch?v=, youtu.be/,
|
|
22
|
+
* /embed/, /shorts/, /live/. Undefined for anything else (a db-video that is
|
|
23
|
+
* not YouTube stays a link).
|
|
24
|
+
*/
|
|
25
|
+
export declare const youtubeId: (href: string) => string | undefined;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The closed `db-` vocabulary (plans/dita-variants-themes.md,
|
|
3
|
+
* plans/dita-components-phase3.md): the looks a component may take and the
|
|
4
|
+
* scoped themes. Tones, tab variants and themes mirror format-astro's
|
|
5
|
+
* tone-classes.ts, which the renderers draw from; the CLI test
|
|
6
|
+
* db-qualifiers.test.ts fails when they drift. Closed lists, so a Schematron
|
|
7
|
+
* house rule can enforce them.
|
|
8
|
+
*/
|
|
9
|
+
export const DB_QUALIFIERS = {
|
|
10
|
+
tones: ["info", "success", "warning", "danger"],
|
|
11
|
+
tabVariants: ["pills", "underline"],
|
|
12
|
+
themes: ["dark"],
|
|
13
|
+
/** db-button: Button's variants (the default needs no token; `primary` is its alias). */
|
|
14
|
+
buttonVariants: ["primary", "secondary", "outline", "ghost", "link", "destructive"],
|
|
15
|
+
/** db-grid `cols-N` and a cell's `span-N`. */
|
|
16
|
+
gridColumns: [1, 2, 3, 4, 5, 6],
|
|
17
|
+
};
|
|
18
|
+
/** The `@outputclass` tokens of an element, `db-theme-*` (a scope, not a component) excluded. */
|
|
19
|
+
export const outputTokens = (outputclass) => (outputclass ?? "").split(/\s+/).filter((t) => t && !/^db-theme-/i.test(t));
|
|
20
|
+
/**
|
|
21
|
+
* A YouTube video id from the URL forms people paste: watch?v=, youtu.be/,
|
|
22
|
+
* /embed/, /shorts/, /live/. Undefined for anything else (a db-video that is
|
|
23
|
+
* not YouTube stays a link).
|
|
24
|
+
*/
|
|
25
|
+
export const youtubeId = (href) => {
|
|
26
|
+
let url;
|
|
27
|
+
try {
|
|
28
|
+
url = new URL(href);
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const host = url.hostname.replace(/^(www|m)\./, "");
|
|
34
|
+
const id = host === "youtu.be"
|
|
35
|
+
? url.pathname.slice(1).split("/")[0]
|
|
36
|
+
: host === "youtube.com" || host === "youtube-nocookie.com"
|
|
37
|
+
? url.searchParams.get("v") ?? /^\/(?:embed|shorts|live)\/([^/]+)/.exec(url.pathname)?.[1]
|
|
38
|
+
: undefined;
|
|
39
|
+
return id && /^[A-Za-z0-9_-]{6,20}$/.test(id) ? id : undefined;
|
|
40
|
+
};
|
package/dist/types.d.ts
CHANGED
|
@@ -166,4 +166,3 @@ export declare const relativeIncludePath: (fromDir: string, targetFile: string)
|
|
|
166
166
|
/** A link to a DITA topic as a page link: `renameDitaHref`, or the publisher's renaming, which also knows repeated element ids. */
|
|
167
167
|
export declare const publishHref: (publish: PublishContext | undefined, href: string) => string;
|
|
168
168
|
export declare const renameDitaHref: (href: string) => string;
|
|
169
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.js
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A well-formedness check for a topic's XML. htmlparser2 (xmlMode) is
|
|
3
|
+
* lenient: an unclosed element is closed for you and a stray end tag is
|
|
4
|
+
* dropped, so a malformed topic converts to a plausible partial tree with no
|
|
5
|
+
* sign of trouble. This scans the tags (skipping comments, CDATA, processing
|
|
6
|
+
* instructions and the DOCTYPE, quotes respected) and reports the FIRST
|
|
7
|
+
* problem with its line, which the converter puts on the note ledger.
|
|
8
|
+
* It checks tag balance and names, not the DTD.
|
|
9
|
+
*/
|
|
10
|
+
export interface WellFormedProblem {
|
|
11
|
+
line: number;
|
|
12
|
+
message: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function checkWellFormed(xml: string): WellFormedProblem | undefined;
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
// XML names are Unicode (<über>, <ñ>), not ASCII
|
|
2
|
+
const NAME = /^[\p{L}_:][\p{L}\p{M}\p{N}_:.\-\u00B7]*/u;
|
|
3
|
+
export function checkWellFormed(xml) {
|
|
4
|
+
const stack = [];
|
|
5
|
+
let line = 1;
|
|
6
|
+
let i = 0;
|
|
7
|
+
let roots = 0;
|
|
8
|
+
const advance = (to) => {
|
|
9
|
+
// \n, \r\n and a lone \r (old Mac files) each end a line
|
|
10
|
+
for (let k = i; k < to; k++) {
|
|
11
|
+
const c = xml.charCodeAt(k);
|
|
12
|
+
if (c === 10 || (c === 13 && xml.charCodeAt(k + 1) !== 10))
|
|
13
|
+
line++;
|
|
14
|
+
}
|
|
15
|
+
i = to;
|
|
16
|
+
};
|
|
17
|
+
const skipTo = (end, what) => {
|
|
18
|
+
const at = xml.indexOf(end, i);
|
|
19
|
+
if (at < 0)
|
|
20
|
+
return { line, message: `unterminated ${what}` };
|
|
21
|
+
advance(at + end.length);
|
|
22
|
+
return undefined;
|
|
23
|
+
};
|
|
24
|
+
while (i < xml.length) {
|
|
25
|
+
const lt = xml.indexOf("<", i);
|
|
26
|
+
if (lt < 0) {
|
|
27
|
+
advance(xml.length);
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
if (!stack.length && roots > 0 && xml.slice(i, lt).trim())
|
|
31
|
+
return { line, message: "text after the root element" };
|
|
32
|
+
advance(lt);
|
|
33
|
+
let p;
|
|
34
|
+
if (xml.startsWith("<!--", i))
|
|
35
|
+
p = skipTo("-->", "comment");
|
|
36
|
+
else if (xml.startsWith("<![CDATA[", i))
|
|
37
|
+
p = skipTo("]]>", "CDATA section");
|
|
38
|
+
else if (xml.startsWith("<?", i))
|
|
39
|
+
p = skipTo("?>", "processing instruction");
|
|
40
|
+
else if (xml.startsWith("<!", i)) {
|
|
41
|
+
// <!DOCTYPE …>, possibly with an internal subset in [ … ]: quoted
|
|
42
|
+
// literals ("a[b.dtd", an ENTITY value holding '>') are skipped
|
|
43
|
+
let k = i + 2, quote = "", subset = false;
|
|
44
|
+
for (; k < xml.length; k++) {
|
|
45
|
+
const c = xml[k];
|
|
46
|
+
if (quote) {
|
|
47
|
+
if (c === quote)
|
|
48
|
+
quote = "";
|
|
49
|
+
}
|
|
50
|
+
else if (c === '"' || c === "'")
|
|
51
|
+
quote = c;
|
|
52
|
+
else if (c === "[")
|
|
53
|
+
subset = true;
|
|
54
|
+
else if (c === "]")
|
|
55
|
+
subset = false;
|
|
56
|
+
else if (c === ">" && !subset)
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
if (k >= xml.length)
|
|
60
|
+
return { line, message: "unterminated DOCTYPE" };
|
|
61
|
+
advance(k + 1);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
const start = line;
|
|
65
|
+
const closing = xml[i + 1] === "/";
|
|
66
|
+
const name = NAME.exec(xml.slice(i + (closing ? 2 : 1)))?.[0];
|
|
67
|
+
if (!name)
|
|
68
|
+
return { line, message: "a '<' that starts no tag (write < in text)" };
|
|
69
|
+
// The tag's end, past quoted attribute values (which may hold '>')
|
|
70
|
+
let k = i + (closing ? 2 : 1) + name.length;
|
|
71
|
+
let quote = "";
|
|
72
|
+
for (; k < xml.length; k++) {
|
|
73
|
+
const c = xml[k];
|
|
74
|
+
if (quote) {
|
|
75
|
+
if (c === quote)
|
|
76
|
+
quote = "";
|
|
77
|
+
}
|
|
78
|
+
else if (c === '"' || c === "'")
|
|
79
|
+
quote = c;
|
|
80
|
+
else if (c === "<")
|
|
81
|
+
return { line: start, message: `<${closing ? "/" : ""}${name}> is not closed with '>'` };
|
|
82
|
+
else if (c === ">")
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
if (k >= xml.length)
|
|
86
|
+
return { line: start, message: `<${closing ? "/" : ""}${name}> is not closed with '>'` };
|
|
87
|
+
const selfClosing = !closing && xml[k - 1] === "/";
|
|
88
|
+
advance(k + 1);
|
|
89
|
+
if (closing) {
|
|
90
|
+
const open = stack.pop();
|
|
91
|
+
if (!open)
|
|
92
|
+
return { line: start, message: `</${name}> has no matching start tag` };
|
|
93
|
+
if (open.name !== name)
|
|
94
|
+
return { line: start, message: `</${name}> closes <${open.name}> (opened on line ${open.line})` };
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
if (!stack.length && roots++ > 0)
|
|
98
|
+
return { line: start, message: `<${name}>: a second root element` };
|
|
99
|
+
if (!selfClosing)
|
|
100
|
+
stack.push({ name, line: start });
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (p)
|
|
104
|
+
return p;
|
|
105
|
+
}
|
|
106
|
+
const open = stack.pop();
|
|
107
|
+
if (open)
|
|
108
|
+
return { line: open.line, message: `<${open.name}> is never closed` };
|
|
109
|
+
return undefined;
|
|
110
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dogsbay/format-dita",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
4
|
-
"description": "DITA topic XML → TreeNode importer with conversion-note ledger; composes with format-dogsbay-md for .dita → .md migration",
|
|
3
|
+
"version": "0.2.0-beta.123",
|
|
4
|
+
"description": "DITA topic XML → TreeNode importer with conversion-note ledger; composes with format-dogsbay-md for .dita → .md migration. Browser-safe: no Node built-ins",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -21,14 +21,15 @@
|
|
|
21
21
|
],
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@types/node": "^25.9.5",
|
|
24
|
+
"esbuild": "0.28.1",
|
|
24
25
|
"typescript": "^5.9.3",
|
|
25
26
|
"vitest": "^4.1.10"
|
|
26
27
|
},
|
|
27
28
|
"dependencies": {
|
|
28
29
|
"domhandler": "^5.0.3",
|
|
29
30
|
"htmlparser2": "^10.1.0",
|
|
30
|
-
"@dogsbay/format-dogsbay-md": "0.2.0-beta.
|
|
31
|
-
"@dogsbay/types": "0.2.0-beta.
|
|
31
|
+
"@dogsbay/format-dogsbay-md": "0.2.0-beta.123",
|
|
32
|
+
"@dogsbay/types": "0.2.0-beta.123"
|
|
32
33
|
},
|
|
33
34
|
"license": "MIT",
|
|
34
35
|
"repository": {
|
package/dist/anchors.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anchors.d.ts","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AAKnD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,EAAE,KAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAqBtE,CAAC;AAEF,6GAA6G;AAC7G,eAAO,MAAM,QAAQ,GAAI,KAAK;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAAE,IAAI,MAAM,KAAG,MACjB,CAAC"}
|
package/dist/anchors.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anchors.js","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"AASA,MAAM,SAAS,GAAG,CAAC,IAAa,EAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;AAC1E,MAAM,OAAO,GAAG,CAAC,EAAW,EAAW,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AAEnG;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAgB,EAAuB,EAAE;IACzE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,IAAe,EAAE,OAA2B,EAAQ,EAAE;QACnE,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC7B,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBAChB,KAAK,CAAC,EAAE,CAAC,QAAqB,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAChD,SAAS;YACX,CAAC;YACD,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1B,IAAI,EAAE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjC,IAAI,KAAK,KAAK,SAAS;oBAAE,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;qBAChD,IAAI,KAAK,KAAK,OAAO;oBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,KAAK,EAAE,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,KAAK,CAAC,EAAE,CAAC,QAAqB,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACxB,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,6GAA6G;AAC7G,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAA0D,EAAE,EAAU,EAAU,EAAE,CACzG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC"}
|
package/dist/blocks.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EASL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAA6D,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGtI,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA4CD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,gBAAgB,EACzB,MAAM,iBAAiB,EACvB,cAAc,MAAM,KACnB,MAOF,CAAC;AAkeF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,OAAO,EACf,KAAK,YAAY,KAChB;IAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAAC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CA4BrD,CAAC;AAwCF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,IAAI,OAAO,EAAE,KAAK,YAAY,KAAG,QAAQ,EAQ3E,CAAC;AAUF,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B,mCAAmC,CAAC;AAE7E,qGAAqG;AACrG,eAAO,MAAM,4BAA4B,QAA4C,CAAC;AAiHtF,mFAAmF;AACnF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,OAAmC,CAAC;AAKjF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,EAAE,CAcvE;AAoaD,wBAAgB,eAAe,CAC7B,EAAE,EAAE,OAAO,EACX,GAAG,EAAE,YAAY,EACjB,IAAI,GAAE,GAAG,CAAC,MAAM,CAAa,GAC5B,QAAQ,EAAE,CA6BZ"}
|
package/dist/blocks.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.js","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"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"}
|
package/dist/conref.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conref.d.ts","sourceRoot":"","sources":["../src/conref.ts"],"names":[],"mappings":"AA+BA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EAErB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IACrD,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACnE;AAED,MAAM,WAAW,UAAW,SAAQ,aAAa;IAC/C,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,kEAAkE;IAClE,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AA2GD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,UAAU,CA0MjE"}
|