@dogsbay/format-dita 0.2.0-beta.115 → 0.2.0-beta.116

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/dist/inline.js CHANGED
@@ -1,4 +1,5 @@
1
- import { renameDitaHref } from "./types.js";
1
+ import { publishHref } from "./types.js";
2
+ import { anchorId } from "./anchors.js";
2
3
  /**
3
4
  * A snippet is safe to splice INLINE (mid-sentence, list items, cells)
4
5
  * only when it is a single line with no heading — anything else breaks
@@ -46,8 +47,49 @@ const CODE_LIKE = new Set([
46
47
  ]);
47
48
  /** Elements whose semantic identity is dropped; text passes through. */
48
49
  const TRANSPARENT = new Set(["ph", "keyword", "text", "option", "msgnum"]);
49
- const ITALIC_LIKE = new Set(["i", "term", "cite", "q", "var"]);
50
- const BOLD_LIKE = new Set(["b", "uicontrol", "wintitle", "menucascade", "shortcut"]);
50
+ /** Publishing: more inline code (DITA-OT's documentation styles these monospace). */
51
+ const PUBLISH_CODE_LIKE = new Set(["option", "msgnum"]);
52
+ /** Publishing: the markup DITA-OT's HTML adds around XML-domain names. */
53
+ const XML_DECORATION = {
54
+ xmlelement: ["<", ">"],
55
+ xmlatt: ["@", ""],
56
+ textentity: ["&", ";"],
57
+ parameterentity: ["%", ";"],
58
+ numcharref: ["&#", ";"],
59
+ xmlpi: ["<?", "?>"],
60
+ };
61
+ const isCodeLike = (name, ctx) => CODE_LIKE.has(name) || (!!ctx.publish && PUBLISH_CODE_LIKE.has(name));
62
+ const codeText = (name, text, ctx) => {
63
+ const decoration = ctx.publish ? XML_DECORATION[name] : undefined;
64
+ return decoration && text ? `${decoration[0]}${text}${decoration[1]}` : text;
65
+ };
66
+ // `em` and `strong` are DITA 2.0's emphasis domain
67
+ const ITALIC_LIKE = new Set(["i", "em", "term", "cite", "q", "var"]);
68
+ const BOLD_LIKE = new Set(["b", "strong", "uicontrol", "wintitle", "menucascade", "shortcut"]);
69
+ /**
70
+ * Publishing: the name to convert an element as. An element the converter
71
+ * does not know is converted as the nearest base element it does know,
72
+ * from its `@class` ancestry (`- topic/bodydiv reference/refbodydiv ` is a
73
+ * bodydiv), as DITA-OT's stylesheets fall back. Migration keeps the tag name.
74
+ */
75
+ export const elementName = (el, ctx, known) => {
76
+ const raw = el.name.toLowerCase();
77
+ if (!ctx.publish || known(raw))
78
+ return raw;
79
+ const tokens = (el.attribs?.class ?? "").trim().split(/\s+/).slice(1).reverse();
80
+ for (const token of tokens) {
81
+ const local = token.slice(token.indexOf("/") + 1).toLowerCase();
82
+ if (known(local))
83
+ return local;
84
+ }
85
+ return raw;
86
+ };
87
+ const KNOWN_INLINE = new Set([
88
+ "xref", "link", "image", "u", "sub", "sup", "overline", "line-through", "indexterm", "draft-comment", "data", "menucascade", "tm", "fn",
89
+ "foreign", "unknown", "required-cleanup",
90
+ ]);
91
+ export const isKnownInline = (name) => KNOWN_INLINE.has(name) || CODE_LIKE.has(name) || TRANSPARENT.has(name) || ITALIC_LIKE.has(name) ||
92
+ BOLD_LIKE.has(name) || PUBLISH_CODE_LIKE.has(name);
51
93
  export const textOf = (nodes) => nodes
52
94
  .map((node) => {
53
95
  if (isText(node))
@@ -57,6 +99,64 @@ export const textOf = (nodes) => nodes
57
99
  return "";
58
100
  })
59
101
  .join("");
102
+ /** An empty anchor element for an @id (DITA-OT puts the id on the element itself). */
103
+ export const idAnchor = (id) => `<a id="${id.replace(/&/g, "&amp;").replace(/"/g, "&quot;")}"></a>`;
104
+ /** A DITA length in pixels, as DITA-OT's length-to-pixels (96 per inch); undefined for percentages and unknown units. */
105
+ const lengthToPixels = (length) => {
106
+ if (!length)
107
+ return undefined;
108
+ const value = length.trim();
109
+ if (/^\d+(\.\d+)?$/.test(value))
110
+ return Math.round(Number(value));
111
+ const m = /^(\d+(?:\.\d+)?)(cm|mm|in|pt|pc|px|em)$/.exec(value);
112
+ if (!m)
113
+ return undefined;
114
+ const n = Number(m[1]);
115
+ const perInch = { cm: 96 / 2.54, mm: 96 / 25.4, in: 96, pt: 96 / 72, pc: 96 / 6, px: 1, em: 96 / 6 };
116
+ return Math.round(n * perInch[m[2]]);
117
+ };
118
+ /**
119
+ * Publishing: an image's alt text (the <alt> element wins over @alt) and its
120
+ * size and alignment, as DITA-OT's HTML computes them: @width and @height in
121
+ * pixels, or @scale applied to the image's own size (dita-ot:image-width and
122
+ * -height, from preprocessing) when neither is set; @align only for
123
+ * placement="break".
124
+ */
125
+ export const publishImage = (el, publish) => {
126
+ const altEl = el.children.find((c) => isElement(c) && ` ${c.attribs?.class ?? ""} `.includes(" topic/alt "));
127
+ const alt = altEl ? collapseWhitespace(textOf(altEl.children)).trim() : el.attribs?.alt;
128
+ const attrs = {};
129
+ const width = lengthToPixels(el.attribs?.width);
130
+ const height = lengthToPixels(el.attribs?.height);
131
+ if (width !== undefined)
132
+ attrs.width = String(width);
133
+ if (height !== undefined)
134
+ attrs.height = String(height);
135
+ const scale = Number(el.attribs?.scale);
136
+ if (scale > 0 && !el.attribs?.width && !el.attribs?.height) {
137
+ // DITA-OT's html5 measures the image file; the publisher passes the same lookup
138
+ const measured = el.attribs?.href ? publish?.imageSize?.(el.attribs.href) : undefined;
139
+ const w = measured?.width ?? lengthToPixels(el.attribs?.["dita-ot:image-width"]);
140
+ const h = measured?.height ?? lengthToPixels(el.attribs?.["dita-ot:image-height"]);
141
+ if (w !== undefined)
142
+ attrs.width = String(Math.floor((w * scale) / 100));
143
+ if (h !== undefined)
144
+ attrs.height = String(Math.floor((h * scale) / 100));
145
+ }
146
+ const align = el.attribs?.align;
147
+ if (el.attribs?.placement === "break" && (align === "left" || align === "right" || align === "center"))
148
+ attrs.align = align;
149
+ return { ...(alt ? { alt } : {}), ...(Object.keys(attrs).length ? { attrs } : {}) };
150
+ };
151
+ /**
152
+ * Publishing: the text DITA-OT's HTML gives a link without text, its output
153
+ * href (`other.dita#t/e` → `other.html#t__e`).
154
+ */
155
+ const ditaOtHrefText = (href) => {
156
+ const [path, fragment] = href.split("#");
157
+ const out = path.replace(/\.(dita|xml)$/i, ".html");
158
+ return fragment === undefined ? out : `${out}#${fragment.replace("/", "__")}`;
159
+ };
60
160
  export const convertInline = (nodes, ctx, formatting = {}) => {
61
161
  const out = [];
62
162
  const pushText = (text) => {
@@ -87,8 +187,12 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
87
187
  }
88
188
  if (!isElement(node))
89
189
  continue;
90
- const name = node.name.toLowerCase();
190
+ const name = elementName(node, ctx, isKnownInline);
91
191
  const children = node.children;
192
+ // Publishing: an inline element with an @id gets an anchor, as DITA-OT's HTML keeps the id
193
+ if (ctx.publish && node.attribs?.id && !["xref", "link", "fn", "indexterm", "data", "draft-comment"].includes(name)) {
194
+ out.push({ type: "html-inline", html: idAnchor(anchorId(ctx, node.attribs.id)) });
195
+ }
92
196
  // Filter attributes FIRST: the include/defining-site paths below
93
197
  // `continue` past the rest of the loop, and a profiled element that
94
198
  // becomes an include still needs its condition on the ledger
@@ -129,7 +233,41 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
129
233
  // Authored fallback content always wins — it is the only text that is
130
234
  // guaranteed to exist (href-only keys have no text to resolve). Only
131
235
  // content-less elements emit the {{ key }} minja variable form.
132
- if (node.attribs?.keyref && name !== "xref" && name !== "link" && name !== "image") {
236
+ // Publishing: DITA-OT resolved keys and filled in their text, and gave the
237
+ // elements it links (glossary terms, keyrefs to topics) an @href.
238
+ // (Elements DITA-OT does not render as text, or renders in their own way, are left to their cases)
239
+ if (ctx.publish && !["xref", "link", "image", "data", "indexterm", "draft-comment", "fn", "tm", "required-cleanup"].includes(name) &&
240
+ (node.attribs?.keyref || node.attribs?.href)) {
241
+ const hasContent = children.some((c) => isElement(c) || (isText(c) && c.data.trim().length > 0));
242
+ const key = node.attribs?.keyref ? ctx.publish.keys.get(node.attribs.keyref) : undefined;
243
+ const keyText = key?.text ?? key?.linktext;
244
+ // Terms render as italic definitions and UI controls as bold, as DITA-OT's HTML does
245
+ const styled = ITALIC_LIKE.has(name) || name === "abbreviated-form"
246
+ ? { ...formatting, italic: true }
247
+ : BOLD_LIKE.has(name) ? { ...formatting, bold: true } : formatting;
248
+ const codeContent = isCodeLike(name, ctx) ? collapseWhitespace(textOf(children)).trim() || keyText : undefined;
249
+ const content = codeContent
250
+ ? [{ type: "code", text: codeText(name, codeContent, ctx) }]
251
+ : hasContent
252
+ ? convertInline(children, ctx, styled)
253
+ : keyText
254
+ ? [{ type: "text", text: keyText, ...(styled.bold ? { bold: true } : {}), ...(styled.italic ? { italic: true } : {}) }]
255
+ : [];
256
+ // An unresolved key with no content renders nothing, as in DITA-OT's output
257
+ if (content.length === 0)
258
+ continue;
259
+ const href = node.attribs?.href;
260
+ if (href) {
261
+ // An external link keeps its href as written, even to a .dita file
262
+ const external = /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(href) || node.attribs?.scope === "external";
263
+ out.push({ type: "link", href: external ? href : publishHref(ctx.publish, href), children: content });
264
+ }
265
+ else {
266
+ out.push(...content);
267
+ }
268
+ continue;
269
+ }
270
+ if (!ctx.publish && node.attribs?.keyref && name !== "xref" && name !== "link" && name !== "image") {
133
271
  const hasFallback = children.some((c) => isElement(c) || (isText(c) && c.data.trim().length > 0));
134
272
  if (!hasFallback) {
135
273
  noteOnce(ctx, "@keyref", "content-less keyref emitted as {{ key }} minja variable — resolves only for TEXT keys (keys.yaml entries with text:); href-only keys need manual attention");
@@ -140,47 +278,132 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
140
278
  // through so the element converts normally (term stays italic, …)
141
279
  noteOnce(ctx, "@keyref", "keyref with fallback content: authored text kept, key indirection dropped — switch to {{ key }} manually where the key text should win");
142
280
  }
143
- if (TRANSPARENT.has(name)) {
281
+ if (TRANSPARENT.has(name) && !isCodeLike(name, ctx)) {
144
282
  out.push(...convertInline(children, ctx, formatting));
145
283
  continue;
146
284
  }
147
- if (CODE_LIKE.has(name)) {
285
+ // Publishing: content DITA-OT's HTML does not show (foreign content such as MathML without
286
+ // a plugin, and required-cleanup without args.draft)
287
+ if (ctx.publish && (name === "foreign" || name === "unknown" || name === "required-cleanup"))
288
+ continue;
289
+ if ((name === "fn" || name === "synnote") && ctx.publish && ctx.footnotes) {
290
+ // Publishing: a numbered footnote, listed at the end of the page as DITA-OT does. Only
291
+ // footnotes without @callout are numbered; a callout is the label when it is a valid,
292
+ // unused Markdown footnote label, otherwise the number
293
+ const numbered = ctx.footnotes.filter((f) => !f.callout).length + 1;
294
+ const callout = node.attribs?.callout?.trim();
295
+ const usable = !!callout && /^[^\s\]\[^]+$/.test(callout) && !ctx.footnotes.some((f) => f.label === callout);
296
+ const label = usable ? callout : callout ? `fn${ctx.footnotes.length + 1}` : String(numbered);
297
+ // Converted by parse.ts, which can convert block content (a list in a footnote)
298
+ ctx.footnotes.push({ label, el: node, ...(callout ? { callout: true } : {}) });
299
+ out.push({ type: "footnote-ref", label });
300
+ continue;
301
+ }
302
+ if (name === "q" && ctx.publish) {
303
+ // Publishing: a quotation in quotation marks, as a browser renders DITA-OT's <q>
304
+ pushText("\u201C");
305
+ out.push(...convertInline(children, ctx, formatting));
306
+ pushText("\u201D");
307
+ continue;
308
+ }
309
+ if (isCodeLike(name, ctx) && ctx.publish && children.some((c) => isElement(c) && ["xref", "link"].includes(c.name.toLowerCase()))) {
310
+ // Publishing: a code phrase containing a link, as DITA-OT renders it: one code
311
+ // element holding the link. A Markdown code span cannot hold a link, so it is inline HTML
312
+ const esc = (s) => s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
313
+ const plain = (nodes) => nodes.map((n) => ("text" in n && typeof n.text === "string" ? n.text : "children" in n && Array.isArray(n.children) ? plain(n.children) : "")).join("");
314
+ const html = convertInline(children, ctx)
315
+ .map((part) => (part.type === "link" ? `<a href="${esc(part.href)}">${esc(plain(part.children))}</a>` : esc(plain([part]))))
316
+ .join("");
317
+ const raw = collapseWhitespace(textOf(children));
318
+ if (raw.startsWith(" "))
319
+ pushText(" ");
320
+ out.push({ type: "html-inline", html: `<code>${collapseWhitespace(html).trim()}</code>` });
321
+ if (raw.endsWith(" "))
322
+ pushText(" ");
323
+ continue;
324
+ }
325
+ if (isCodeLike(name, ctx)) {
148
326
  if (name !== "codeph" && name !== "tt") {
149
327
  noteOnce(ctx, `<${name}>`, `rendered as inline code — semantic identity not preserved`);
150
328
  }
151
- out.push({ type: "code", text: collapseWhitespace(textOf(children)).trim() });
329
+ const raw = collapseWhitespace(textOf(children));
330
+ // Publishing: space at the edge of the code element still separates words (`<codeph>conref </codeph>step`)
331
+ if (ctx.publish && raw.startsWith(" ") && raw.trim())
332
+ pushText(" ");
333
+ // Code inside bold, italic or struck-through text carries that formatting
334
+ out.push({
335
+ type: "code",
336
+ text: codeText(name, raw.trim(), ctx),
337
+ ...(formatting.bold ? { bold: true } : {}),
338
+ ...(formatting.italic ? { italic: true } : {}),
339
+ ...(formatting.strikethrough ? { strikethrough: true } : {}),
340
+ });
341
+ if (ctx.publish && raw.endsWith(" ") && raw.trim())
342
+ pushText(" ");
343
+ continue;
344
+ }
345
+ if (name === "menucascade" && ctx.publish) {
346
+ // Publishing: "File > Save Project", as DITA-OT's HTML renders it
347
+ node.children.filter(isElement).forEach((part, i) => {
348
+ if (i > 0)
349
+ pushText(" > ");
350
+ out.push(...convertInline([part], ctx, formatting));
351
+ });
152
352
  continue;
153
353
  }
154
354
  if (BOLD_LIKE.has(name)) {
155
- if (name !== "b") {
355
+ if (name !== "b" && name !== "strong") {
156
356
  noteOnce(ctx, `<${name}>`, `rendered as bold — semantic identity not preserved`);
157
357
  }
158
358
  out.push(...convertInline(children, ctx, { ...formatting, bold: true }));
159
359
  continue;
160
360
  }
161
361
  if (ITALIC_LIKE.has(name)) {
162
- if (name !== "i") {
362
+ if (name !== "i" && name !== "em") {
163
363
  noteOnce(ctx, `<${name}>`, `rendered as italic — semantic identity not preserved`);
164
364
  }
165
365
  out.push(...convertInline(children, ctx, { ...formatting, italic: true }));
166
366
  continue;
167
367
  }
168
- if (name === "u") {
169
- noteOnce(ctx, "<u>", "underline has no markdown equivalent — rendered as plain text");
368
+ if (name === "tm" && ctx.publish) {
369
+ // Publishing: the trademark symbol DITA-OT's HTML adds, on a trademark's first use in the topic
170
370
  out.push(...convertInline(children, ctx, formatting));
371
+ const symbol = { tm: "\u2122", reg: "\u00AE", service: "\u2120" }[node.attribs?.tmtype ?? "tm"];
372
+ const trademark = node.attribs?.trademark ?? textOf(children);
373
+ if (symbol && !ctx.trademarks?.has(trademark))
374
+ pushText(symbol);
375
+ ctx.trademarks?.add(trademark);
171
376
  continue;
172
377
  }
173
- if (name === "sub" || name === "sup") {
174
- noteOnce(ctx, `<${name}>`, "sub/superscript rendered as plain text");
175
- out.push(...convertInline(children, ctx, formatting));
378
+ // Highlighting Markdown has no syntax for: inline HTML around the converted content
379
+ if (name === "u" || name === "sub" || name === "sup" || name === "overline") {
380
+ const open = name === "overline" ? '<span style="text-decoration: overline">' : `<${name}>`;
381
+ const close = name === "overline" ? "</span>" : `</${name}>`;
382
+ out.push({ type: "html-inline", html: open }, ...convertInline(children, ctx, formatting), { type: "html-inline", html: close });
383
+ continue;
384
+ }
385
+ if (name === "line-through") {
386
+ out.push(...convertInline(children, ctx, { ...formatting, strikethrough: true }));
176
387
  continue;
177
388
  }
178
389
  if (name === "xref" || name === "link") {
179
390
  const href = node.attribs?.href;
180
391
  const keyref = node.attribs?.keyref;
181
- const linkChildren = convertInline(children, ctx, formatting);
182
- const fallbackText = collapseWhitespace(textOf(children)).trim();
183
- if (keyref) {
392
+ // <desc> is the link's description (a tooltip), not its text
393
+ const textChildren = children.filter((c) => !(isElement(c) && c.name.toLowerCase() === "desc"));
394
+ const linkChildren = convertInline(textChildren, ctx, formatting);
395
+ const fallbackText = collapseWhitespace(textOf(textChildren)).trim();
396
+ if (keyref && ctx.publish && !href) {
397
+ // Publishing: a key DITA-OT could not resolve to a target is plain text
398
+ const key = ctx.publish.keys.get(keyref);
399
+ const text = fallbackText || key?.linktext || key?.text;
400
+ if (linkChildren.length > 0)
401
+ out.push(...linkChildren);
402
+ else if (text)
403
+ pushText(text);
404
+ continue;
405
+ }
406
+ if (keyref && !ctx.publish) {
184
407
  // Key-based links keep their indirection via the key: scheme
185
408
  // (resolution is the build pipeline's job — see topic-map keys)
186
409
  out.push({
@@ -191,13 +414,14 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
191
414
  continue;
192
415
  }
193
416
  if (href) {
194
- const external = /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(href);
417
+ // An external link keeps its href as written, even to a .dita file
418
+ const external = /^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(href) || node.attribs?.scope === "external";
195
419
  out.push({
196
420
  type: "link",
197
- href: external ? href : renameDitaHref(href),
421
+ href: external ? href : publishHref(ctx.publish, href),
198
422
  children: linkChildren.length > 0
199
423
  ? linkChildren
200
- : [{ type: "text", text: fallbackText || href }],
424
+ : [{ type: "text", text: fallbackText || (ctx.publish ? ditaOtHrefText(href) : href) }],
201
425
  });
202
426
  continue;
203
427
  }
@@ -216,6 +440,12 @@ export const convertInline = (nodes, ctx, formatting = {}) => {
216
440
  }
217
441
  continue;
218
442
  }
443
+ if (ctx.publish) {
444
+ // Publishing: size, alignment and the <alt> element, as DITA-OT's HTML renders them
445
+ const { alt, attrs } = publishImage(node, ctx.publish);
446
+ out.push({ type: "image", src: imgHref, ...(alt ? { alt } : {}), ...(attrs ? { attrs } : {}) });
447
+ continue;
448
+ }
219
449
  out.push({
220
450
  type: "image",
221
451
  src: imgHref,
@@ -247,7 +477,13 @@ const mergeAdjacentText = (nodes) => {
247
477
  prev.text += node.text;
248
478
  continue;
249
479
  }
250
- merged.push(node);
480
+ // Adjacent code (`<codeph>-D</codeph><varname>name</varname>`) is one code
481
+ // span: Markdown cannot write two code spans with nothing between them
482
+ if (node.type === "code" && prev?.type === "code") {
483
+ prev.text += node.text;
484
+ continue;
485
+ }
486
+ merged.push(node.type === "code" ? { ...node } : node);
251
487
  }
252
488
  return merged;
253
489
  };
@@ -1 +1 @@
1
- {"version":3,"file":"inline.js","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline.js","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EAGrB,MAAM,YAAY,CAAC;AAuLpB;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,eAAe,CA8H5F"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../src/parse.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EAMrB,MAAM,YAAY,CAAC;AAgOpB;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,eAAe,CAmL5F"}