postext 0.3.16 → 0.3.17

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 (175) hide show
  1. package/dist/__tests__/createLayout.test.js +12 -13
  2. package/dist/__tests__/createLayout.test.js.map +1 -1
  3. package/dist/__tests__/defaults/resourceTypes.test.d.ts +2 -0
  4. package/dist/__tests__/defaults/resourceTypes.test.d.ts.map +1 -0
  5. package/dist/__tests__/defaults/resourceTypes.test.js +69 -0
  6. package/dist/__tests__/defaults/resourceTypes.test.js.map +1 -0
  7. package/dist/__tests__/exports.test.js +54 -0
  8. package/dist/__tests__/exports.test.js.map +1 -1
  9. package/dist/__tests__/parse/inlineRef.test.d.ts +2 -0
  10. package/dist/__tests__/parse/inlineRef.test.d.ts.map +1 -0
  11. package/dist/__tests__/parse/inlineRef.test.js +83 -0
  12. package/dist/__tests__/parse/inlineRef.test.js.map +1 -0
  13. package/dist/__tests__/parse/resourceDirective.test.d.ts +2 -0
  14. package/dist/__tests__/parse/resourceDirective.test.d.ts.map +1 -0
  15. package/dist/__tests__/parse/resourceDirective.test.js +55 -0
  16. package/dist/__tests__/parse/resourceDirective.test.js.map +1 -0
  17. package/dist/__tests__/pipeline/floatPlacement.test.d.ts +2 -0
  18. package/dist/__tests__/pipeline/floatPlacement.test.d.ts.map +1 -0
  19. package/dist/__tests__/pipeline/floatPlacement.test.js +141 -0
  20. package/dist/__tests__/pipeline/floatPlacement.test.js.map +1 -0
  21. package/dist/__tests__/pipeline/inlineRefRender.test.d.ts +2 -0
  22. package/dist/__tests__/pipeline/inlineRefRender.test.d.ts.map +1 -0
  23. package/dist/__tests__/pipeline/inlineRefRender.test.js +107 -0
  24. package/dist/__tests__/pipeline/inlineRefRender.test.js.map +1 -0
  25. package/dist/__tests__/pipeline/resourceNumbering.test.d.ts +2 -0
  26. package/dist/__tests__/pipeline/resourceNumbering.test.d.ts.map +1 -0
  27. package/dist/__tests__/pipeline/resourceNumbering.test.js +186 -0
  28. package/dist/__tests__/pipeline/resourceNumbering.test.js.map +1 -0
  29. package/dist/__tests__/table/model.test.d.ts +2 -0
  30. package/dist/__tests__/table/model.test.d.ts.map +1 -0
  31. package/dist/__tests__/table/model.test.js +187 -0
  32. package/dist/__tests__/table/model.test.js.map +1 -0
  33. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  34. package/dist/canvas-backend/blockRender.js +25 -6
  35. package/dist/canvas-backend/blockRender.js.map +1 -1
  36. package/dist/canvas-backend/headerFooter.d.ts +3 -2
  37. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  38. package/dist/canvas-backend/headerFooter.js +63 -2
  39. package/dist/canvas-backend/headerFooter.js.map +1 -1
  40. package/dist/canvas-backend/index.d.ts +2 -0
  41. package/dist/canvas-backend/index.d.ts.map +1 -1
  42. package/dist/canvas-backend/index.js +11 -0
  43. package/dist/canvas-backend/index.js.map +1 -1
  44. package/dist/canvas-backend/renderResourceBlock.d.ts +28 -0
  45. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -0
  46. package/dist/canvas-backend/renderResourceBlock.js +146 -0
  47. package/dist/canvas-backend/renderResourceBlock.js.map +1 -0
  48. package/dist/defaults/bodyText.d.ts.map +1 -1
  49. package/dist/defaults/bodyText.js +30 -0
  50. package/dist/defaults/bodyText.js.map +1 -1
  51. package/dist/defaults/captionStyle.d.ts +9 -0
  52. package/dist/defaults/captionStyle.d.ts.map +1 -0
  53. package/dist/defaults/captionStyle.js +74 -0
  54. package/dist/defaults/captionStyle.js.map +1 -0
  55. package/dist/defaults/debug.d.ts.map +1 -1
  56. package/dist/defaults/debug.js +6 -0
  57. package/dist/defaults/debug.js.map +1 -1
  58. package/dist/defaults/headerFooter.d.ts +20 -18
  59. package/dist/defaults/headerFooter.d.ts.map +1 -1
  60. package/dist/defaults/headerFooter.js +269 -165
  61. package/dist/defaults/headerFooter.js.map +1 -1
  62. package/dist/defaults/headings.d.ts.map +1 -1
  63. package/dist/defaults/headings.js +29 -6
  64. package/dist/defaults/headings.js.map +1 -1
  65. package/dist/defaults/index.d.ts +3 -0
  66. package/dist/defaults/index.d.ts.map +1 -1
  67. package/dist/defaults/index.js +19 -0
  68. package/dist/defaults/index.js.map +1 -1
  69. package/dist/defaults/resourceTypes.d.ts +8 -0
  70. package/dist/defaults/resourceTypes.d.ts.map +1 -0
  71. package/dist/defaults/resourceTypes.js +43 -0
  72. package/dist/defaults/resourceTypes.js.map +1 -0
  73. package/dist/defaults/shared.d.ts.map +1 -1
  74. package/dist/defaults/shared.js +30 -0
  75. package/dist/defaults/shared.js.map +1 -1
  76. package/dist/defaults/tableStyle.d.ts +11 -0
  77. package/dist/defaults/tableStyle.d.ts.map +1 -0
  78. package/dist/defaults/tableStyle.js +114 -0
  79. package/dist/defaults/tableStyle.js.map +1 -0
  80. package/dist/design/layout.d.ts +94 -0
  81. package/dist/design/layout.d.ts.map +1 -0
  82. package/dist/design/layout.js +642 -0
  83. package/dist/design/layout.js.map +1 -0
  84. package/dist/design/placeholders.d.ts +29 -0
  85. package/dist/design/placeholders.d.ts.map +1 -0
  86. package/dist/design/placeholders.js +126 -0
  87. package/dist/design/placeholders.js.map +1 -0
  88. package/dist/html-backend.d.ts.map +1 -1
  89. package/dist/html-backend.js +91 -1
  90. package/dist/html-backend.js.map +1 -1
  91. package/dist/index.d.ts +12 -5
  92. package/dist/index.d.ts.map +1 -1
  93. package/dist/index.js +6 -2
  94. package/dist/index.js.map +1 -1
  95. package/dist/knuthPlass/richAdapter.d.ts +1 -0
  96. package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
  97. package/dist/knuthPlass/richAdapter.js +2 -1
  98. package/dist/knuthPlass/richAdapter.js.map +1 -1
  99. package/dist/measure/cache.js +1 -1
  100. package/dist/measure/cache.js.map +1 -1
  101. package/dist/measure/rich.d.ts +7 -0
  102. package/dist/measure/rich.d.ts.map +1 -1
  103. package/dist/measure/rich.js +30 -0
  104. package/dist/measure/rich.js.map +1 -1
  105. package/dist/numbering.d.ts +16 -0
  106. package/dist/numbering.d.ts.map +1 -1
  107. package/dist/numbering.js +28 -18
  108. package/dist/numbering.js.map +1 -1
  109. package/dist/parse/blockParser.d.ts.map +1 -1
  110. package/dist/parse/blockParser.js +37 -9
  111. package/dist/parse/blockParser.js.map +1 -1
  112. package/dist/parse/inlineFormatting.d.ts +38 -0
  113. package/dist/parse/inlineFormatting.d.ts.map +1 -1
  114. package/dist/parse/inlineFormatting.js +84 -0
  115. package/dist/parse/inlineFormatting.js.map +1 -1
  116. package/dist/parse/sourceMapping.d.ts.map +1 -1
  117. package/dist/parse/sourceMapping.js +20 -0
  118. package/dist/parse/sourceMapping.js.map +1 -1
  119. package/dist/parse/types.d.ts +20 -1
  120. package/dist/parse/types.d.ts.map +1 -1
  121. package/dist/pipeline/build.d.ts.map +1 -1
  122. package/dist/pipeline/build.js +389 -17
  123. package/dist/pipeline/build.js.map +1 -1
  124. package/dist/pipeline/buildBlockKind.d.ts +14 -0
  125. package/dist/pipeline/buildBlockKind.d.ts.map +1 -1
  126. package/dist/pipeline/buildBlockKind.js +16 -1
  127. package/dist/pipeline/buildBlockKind.js.map +1 -1
  128. package/dist/pipeline/buildHelpers.d.ts.map +1 -1
  129. package/dist/pipeline/buildHelpers.js +7 -1
  130. package/dist/pipeline/buildHelpers.js.map +1 -1
  131. package/dist/pipeline/buildMeasurement.d.ts +17 -1
  132. package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
  133. package/dist/pipeline/buildMeasurement.js +32 -0
  134. package/dist/pipeline/buildMeasurement.js.map +1 -1
  135. package/dist/pipeline/config.d.ts.map +1 -1
  136. package/dist/pipeline/config.js +3 -1
  137. package/dist/pipeline/config.js.map +1 -1
  138. package/dist/pipeline/floatPlacement.d.ts +45 -0
  139. package/dist/pipeline/floatPlacement.d.ts.map +1 -0
  140. package/dist/pipeline/floatPlacement.js +68 -0
  141. package/dist/pipeline/floatPlacement.js.map +1 -0
  142. package/dist/pipeline/headerFooter.d.ts +23 -7
  143. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  144. package/dist/pipeline/headerFooter.js +258 -100
  145. package/dist/pipeline/headerFooter.js.map +1 -1
  146. package/dist/pipeline/placeholders.d.ts +6 -0
  147. package/dist/pipeline/placeholders.d.ts.map +1 -1
  148. package/dist/pipeline/placeholders.js +46 -0
  149. package/dist/pipeline/placeholders.js.map +1 -1
  150. package/dist/pipeline/placement.d.ts +15 -2
  151. package/dist/pipeline/placement.d.ts.map +1 -1
  152. package/dist/pipeline/placement.js +38 -3
  153. package/dist/pipeline/placement.js.map +1 -1
  154. package/dist/pipeline/resourceLayout.d.ts +58 -0
  155. package/dist/pipeline/resourceLayout.d.ts.map +1 -0
  156. package/dist/pipeline/resourceLayout.js +338 -0
  157. package/dist/pipeline/resourceLayout.js.map +1 -0
  158. package/dist/pipeline/resourceNumbering.d.ts +54 -0
  159. package/dist/pipeline/resourceNumbering.d.ts.map +1 -0
  160. package/dist/pipeline/resourceNumbering.js +218 -0
  161. package/dist/pipeline/resourceNumbering.js.map +1 -0
  162. package/dist/pipeline/styles.d.ts +6 -0
  163. package/dist/pipeline/styles.d.ts.map +1 -1
  164. package/dist/pipeline/styles.js +1 -1
  165. package/dist/pipeline/styles.js.map +1 -1
  166. package/dist/table/model.d.ts +53 -0
  167. package/dist/table/model.d.ts.map +1 -0
  168. package/dist/table/model.js +253 -0
  169. package/dist/table/model.js.map +1 -0
  170. package/dist/types.d.ts +397 -41
  171. package/dist/types.d.ts.map +1 -1
  172. package/dist/vdt.d.ts +165 -18
  173. package/dist/vdt.d.ts.map +1 -1
  174. package/dist/vdt.js.map +1 -1
  175. package/package.json +1 -1
@@ -16,6 +16,13 @@ export interface RichToken {
16
16
  /** When present, this token is an atomic math formula. `text` is a single
17
17
  * `\uFFFC` placeholder and `width` is the math render's widthPx. */
18
18
  mathRender?: MathRender;
19
+ /** When present, this token is an inline `:ref{\u2026}` to a resource. `text`
20
+ * already carries the resolved label; the token is atomic (never wraps
21
+ * apart) and the id flows onto the segment so renderers can colour/link it. */
22
+ refResourceId?: string;
23
+ /** True when this token belongs to a caption's numbered label. Flows to the
24
+ * segment so renderers can apply the label colour. */
25
+ captionLabel?: boolean;
19
26
  }
20
27
  /**
21
28
  * Measure a rich text block with mixed font weights.
@@ -1 +1 @@
1
- {"version":3,"file":"rich.d.ts","sourceRoot":"","sources":["../../src/measure/rich.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQ3C,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAIlE,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;yEACqE;IACrE,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAoFD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,UAAU,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,aAAa,CA6Lf"}
1
+ {"version":3,"file":"rich.d.ts","sourceRoot":"","sources":["../../src/measure/rich.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQ3C,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAIlE,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;yEACqE;IACrE,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;oFAEgF;IAChF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;2DACuD;IACvD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AA8GD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,UAAU,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,aAAa,CAiMf"}
@@ -10,6 +10,29 @@ import { computeJustifiedSpaceRatio } from './plain';
10
10
  function tokenizeSpans(spans, normalFont, boldFont, italicFont, boldItalicFont, shouldHyphenate) {
11
11
  const tokens = [];
12
12
  for (const span of spans) {
13
+ // Inline `:ref` spans are atomic: the resolved label (already in `text`)
14
+ // is one non-breaking box so it never wraps apart. Kind 'text' keeps the
15
+ // generic layout/renderers treating it like a word; `refResourceId` flows
16
+ // onto the segment for link colouring / PDF link annotations.
17
+ if (span.ref) {
18
+ const refFont = span.bold && span.italic
19
+ ? boldItalicFont
20
+ : span.bold
21
+ ? boldFont
22
+ : span.italic
23
+ ? italicFont
24
+ : normalFont;
25
+ tokens.push({
26
+ text: span.text,
27
+ bold: span.bold,
28
+ italic: span.italic,
29
+ captionLabel: span.captionLabel,
30
+ kind: 'text',
31
+ width: measureTextWidth(span.text, refFont),
32
+ refResourceId: span.ref.resourceId,
33
+ });
34
+ continue;
35
+ }
13
36
  // Math spans are atomic: a single non-breaking box with the render's
14
37
  // widthPx. Kind 'text' is correct (not 'space') so trimming trailing
15
38
  // spaces from a line doesn't drop the formula.
@@ -18,6 +41,7 @@ function tokenizeSpans(spans, normalFont, boldFont, italicFont, boldItalicFont,
18
41
  text: span.text,
19
42
  bold: span.bold,
20
43
  italic: span.italic,
44
+ captionLabel: span.captionLabel,
21
45
  kind: 'text',
22
46
  width: span.mathRender.widthPx,
23
47
  mathRender: span.mathRender,
@@ -57,6 +81,7 @@ function tokenizeSpans(spans, normalFont, boldFont, italicFont, boldItalicFont,
57
81
  text: clean,
58
82
  bold: span.bold,
59
83
  italic: span.italic,
84
+ captionLabel: span.captionLabel,
60
85
  kind: 'text',
61
86
  width: cleanWidth,
62
87
  breakPoints,
@@ -68,6 +93,7 @@ function tokenizeSpans(spans, normalFont, boldFont, italicFont, boldItalicFont,
68
93
  text: part,
69
94
  bold: span.bold,
70
95
  italic: span.italic,
96
+ captionLabel: span.captionLabel,
71
97
  kind: isSpace ? 'space' : 'text',
72
98
  width: measureTextWidth(part, font),
73
99
  });
@@ -172,6 +198,7 @@ export function measureRichBlock(spans, normalFont, boldFont, italicFont, boldIt
172
198
  text: token.text.slice(0, chosen.charIndex) + '-',
173
199
  bold: token.bold,
174
200
  italic: token.italic,
201
+ captionLabel: token.captionLabel,
175
202
  kind: 'text',
176
203
  width: chosen.widthBefore + hyphenW,
177
204
  });
@@ -186,6 +213,7 @@ export function measureRichBlock(spans, normalFont, boldFont, italicFont, boldIt
186
213
  text: token.text.slice(chosenIdx),
187
214
  bold: token.bold,
188
215
  italic: token.italic,
216
+ captionLabel: token.captionLabel,
189
217
  kind: 'text',
190
218
  width: token.width - chosenWidth,
191
219
  ...(residualBreakPoints.length > 0
@@ -225,6 +253,8 @@ export function measureRichBlock(spans, normalFont, boldFont, italicFont, boldIt
225
253
  bold: t.bold || undefined,
226
254
  italic: t.italic || undefined,
227
255
  ...(t.mathRender ? { mathRender: t.mathRender } : {}),
256
+ ...(t.refResourceId !== undefined ? { refResourceId: t.refResourceId } : {}),
257
+ ...(t.captionLabel ? { captionLabel: true } : {}),
228
258
  }));
229
259
  const lineText = lineTokens.map((t) => cleanSoftHyphens(t.text)).join('');
230
260
  const contentWidth = lineTokens.reduce((sum, t) => sum + t.width, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"rich.js","sourceRoot":"","sources":["../../src/measure/rich.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAoBrD;;GAEG;AACH,SAAS,aAAa,CACpB,KAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,UAAkB,EAClB,cAAsB,EACtB,eAAwB;IAExB,MAAM,MAAM,GAAgB,EAAE,CAAC;IAE/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,qEAAqE;QACrE,qEAAqE;QACrE,+CAA+C;QAC/C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO;gBAC9B,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM;YACnC,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,IAAI,CAAC,IAAI;gBACT,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,IAAI,CAAC,MAAM;oBACX,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,UAAU,CAAC;QAEnB,mDAAmD;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC1C,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACjD,MAAM,WAAW,GAAqB,EAAE,CAAC;gBACzC,IAAI,SAAS,GAAG,CAAC,CAAC;gBAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;wBAC5B,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;wBAC/B,WAAW,CAAC,IAAI,CAAC;4BACf,SAAS,EAAE,QAAQ;4BACnB,WAAW,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC;yBAC9D,CAAC,CAAC;wBACH,SAAS,EAAE,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,UAAU;oBACjB,WAAW;oBACX,WAAW,EAAE,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC;iBACzC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;oBAChC,KAAK,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC;iBACpC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,UAAkB,EAClB,cAAsB,EACtB,UAAkB,EAClB,YAAoB,EACpB,OAA6B;IAE7B,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,EAAE,SAAS,IAAI,KAAK,CAAC;IACpD,MAAM,QAAQ,GAAG,OAAO,EAAE,iBAAiB,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,MAAM,CAAC;IAC/C,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACvG,MAAM,gBAAgB,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,yCAAyC;IACzC,IAAI,OAAO,EAAE,OAAO,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,GAAG,CAAC;QACvD,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,GAAG,CAAC;QACrD,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QAC3F,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE;YACjC,MAAM,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC;gBACzB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC,CAAC;YACN,OAAO,UAAU,GAAG,MAAM,CAAC;QAC7B,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,EAAE;YAClC,MAAM,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,OAAO,QAAQ,GAAG,CAAC;gBACjB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC,CAAC;QACR,CAAC,CAAC;QACF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;QAC7C,MAAM,YAAY,GAAG,WAAW,GAAG,CAAC;YAClC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC,GAAG,gBAAgB;YACrD,CAAC,CAAC,CAAC,CAAC;QACN,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE;YACvC,SAAS,EAAE,WAAW;YACtB,gBAAgB;YAChB,eAAe;YACf,cAAc;YACd,WAAW;YACX,YAAY;SACb,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,oBAAoB,CAClC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EACnC,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,CACvD,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACxE,CAAC;QACD,+CAA+C;IACjD,CAAC;IAED,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,SAAS,KAAK,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,QAAQ,GAAG,CAAC;YAC7B,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC,CAAC;QACN,MAAM,YAAY,GAAG,UAAU,GAAG,UAAU,CAAC;QAE7C,MAAM,UAAU,GAAgB,EAAE,CAAC;QACnC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,mDAAmD;QACnD,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACtE,QAAQ,EAAE,CAAC;QACb,CAAC;QAED,uCAAuC;QACvC,OAAO,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAE,CAAC;YAEhC,IAAI,SAAS,GAAG,KAAK,CAAC,KAAK,IAAI,YAAY,EAAE,CAAC;gBAC5C,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC;gBACzB,QAAQ,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YAED,8CAA8C;YAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/E,MAAM,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;gBAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;gBACvC,IAAI,MAAM,GAA0B,IAAI,CAAC;gBACzC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBACnC,IAAI,EAAE,CAAC,WAAW,GAAG,OAAO,IAAI,SAAS;wBAAE,MAAM,GAAG,EAAE,CAAC;;wBAClD,MAAM;gBACb,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACX,UAAU,CAAC,IAAI,CAAC;wBACd,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG;wBACjD,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,MAAM,CAAC,WAAW,GAAG,OAAO;qBACpC,CAAC,CAAC;oBACH,SAAS,IAAI,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC;oBAC1C,cAAc,GAAG,IAAI,CAAC;oBAEtB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;oBACnC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;oBACvC,MAAM,mBAAmB,GAAG,KAAK,CAAC,WAAW;yBAC1C,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC;yBACxC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,GAAG,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC;oBACrG,MAAM,CAAC,QAAQ,CAAC,GAAG;wBACjB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;wBACjC,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,WAAW;wBAChC,GAAG,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;4BAChC,CAAC,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE;4BACtE,CAAC,CAAC,EAAE,CAAC;qBACR,CAAC;oBACF,MAAM;gBACR,CAAC;YACH,CAAC;YAED,oFAAoF;YACpF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC;gBACzB,QAAQ,EAAE,CAAC;YACb,CAAC;YACD,MAAM;QACR,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM;QAEnC,wCAAwC;QACxC,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpF,SAAS,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,KAAK,CAAC;YACtD,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,CAAC;QAED,iCAAiC;QACjC,iEAAiE;QACjE,IAAI,OAAO,GAAG,QAAQ,CAAC;QACvB,OAAO,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpE,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC;QAE5C,yCAAyC;QACzC,MAAM,QAAQ,GAAqB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxD,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC/C,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,SAAS;YACzB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,SAAS;YAC7B,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAC,CAAC;QAEJ,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAErE,MAAM,mBAAmB,GAAG,0BAA0B,CACpD,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,UAAU,CACX,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,iBAAiB,CAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC;YAClE,QAAQ,EAAE,CAAC,GAAG,YAAY,GAAG,GAAG;YAChC,UAAU,EAAE,cAAc;YAC1B,QAAQ;YACR,UAAU;YACV,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtE,CAAC,CAAC;QAEH,CAAC,IAAI,YAAY,CAAC;QAClB,SAAS,EAAE,CAAC;IACd,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"rich.js","sourceRoot":"","sources":["../../src/measure/rich.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,22 @@ type Token = {
10
10
  };
11
11
  export declare function parseTemplate(tpl: string): Token[];
12
12
  export declare function formatNumeral(n: number, style: NumeralStyle): string;
13
+ /** A pre-resolved template piece fed to {@link renderCounterTemplate}. A
14
+ * `counter` piece whose `text` is empty is treated as a "missing" counter and
15
+ * triggers separator collapsing — its adjacent literal separator is dropped so
16
+ * the rendered string never carries dangling punctuation. */
17
+ export type RenderPiece = {
18
+ kind: 'literal';
19
+ text: string;
20
+ } | {
21
+ kind: 'counter';
22
+ text: string;
23
+ };
24
+ /** Shared template renderer used by both heading and resource numbering. Joins
25
+ * the pieces in order, dropping a literal separator that sits next to an empty
26
+ * counter so a missing leading/trailing counter doesn't leave orphan
27
+ * punctuation (e.g. `{h1}.{n}` with no h1 renders as `1`, not `.1`). */
28
+ export declare function renderCounterTemplate(pieces: RenderPiece[]): string;
13
29
  export type HeadingTemplates = Partial<Record<1 | 2 | 3 | 4 | 5 | 6, string>>;
14
30
  /** A switch in the page-numbering sequence. At `startPageIndex`, the
15
31
  * (optional) `format` and/or (optional) `startAt` take effect.
@@ -1 +1 @@
1
- {"version":3,"file":"numbering.d.ts","sourceRoot":"","sources":["../src/numbering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,YAAY,GACZ,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,CAAC;AAElB,KAAK,KAAK,GACN;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC;AAiB5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,CAgDlD;AAgCD,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAgBpE;AAsCD,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAM9E;;;;;uCAKuC;AACvC,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;CACtB;AAED;;;;;oBAKoB;AACpB,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,iBAAiB,EAAE,GAC5B,aAAa,EAAE,CAoCjB;AAED;;;;6DAI6D;AAC7D,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,EAAE,CAuB5E;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,EAAE,gBAAgB,GAC1B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB3B"}
1
+ {"version":3,"file":"numbering.d.ts","sourceRoot":"","sources":["../src/numbering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,YAAY,GACZ,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,CAAC;AAElB,KAAK,KAAK,GACN;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC;AAiB5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,CAgDlD;AAgCD,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAgBpE;AAED;;;8DAG8D;AAC9D,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;yEAGyE;AACzE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAsBnE;AAqBD,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAM9E;;;;;uCAKuC;AACvC,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;CACtB;AAED;;;;;oBAKoB;AACpB,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,iBAAiB,EAAE,GAC5B,aAAa,EAAE,CAoCjB;AAED;;;;6DAI6D;AAC7D,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,EAAE,CAuB5E;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,EAAE,gBAAgB,GAC1B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB3B"}
package/dist/numbering.js CHANGED
@@ -109,30 +109,25 @@ export function formatNumeral(n, style) {
109
109
  return toRoman(n).toLowerCase();
110
110
  }
111
111
  }
112
- function renderTemplate(tokens, counters, currentLevel) {
113
- const pieces = [];
114
- for (const t of tokens) {
115
- if (t.kind === 'literal') {
116
- pieces.push({ kind: 'literal', text: t.text });
117
- continue;
118
- }
119
- if (t.level > currentLevel)
120
- continue;
121
- const value = counters[t.level] ?? 0;
122
- const rendered = value > 0 ? formatNumeral(value, t.style) : '';
123
- pieces.push({ kind: 'counter', text: rendered });
124
- }
112
+ /** Shared template renderer used by both heading and resource numbering. Joins
113
+ * the pieces in order, dropping a literal separator that sits next to an empty
114
+ * counter so a missing leading/trailing counter doesn't leave orphan
115
+ * punctuation (e.g. `{h1}.{n}` with no h1 renders as `1`, not `.1`). */
116
+ export function renderCounterTemplate(pieces) {
117
+ // Work on a shallow copy so the collapsing logic can blank neighbouring
118
+ // literals without mutating the caller's array.
119
+ const work = pieces.map((p) => ({ ...p }));
125
120
  let out = '';
126
- for (let i = 0; i < pieces.length; i++) {
127
- const p = pieces[i];
121
+ for (let i = 0; i < work.length; i++) {
122
+ const p = work[i];
128
123
  if (p.kind === 'counter' && p.text === '') {
129
124
  const prev = out;
130
- const next = pieces[i + 1];
125
+ const next = work[i + 1];
131
126
  if (next && next.kind === 'literal') {
132
- pieces[i + 1] = { kind: 'literal', text: '' };
127
+ work[i + 1] = { kind: 'literal', text: '' };
133
128
  continue;
134
129
  }
135
- if (prev.length > 0 && pieces[i - 1]?.kind === 'literal') {
130
+ if (prev.length > 0 && work[i - 1]?.kind === 'literal') {
136
131
  out = out.replace(/[^A-Za-z0-9]+$/, '');
137
132
  }
138
133
  continue;
@@ -141,6 +136,21 @@ function renderTemplate(tokens, counters, currentLevel) {
141
136
  }
142
137
  return out;
143
138
  }
139
+ function renderTemplate(tokens, counters, currentLevel) {
140
+ const pieces = [];
141
+ for (const t of tokens) {
142
+ if (t.kind === 'literal') {
143
+ pieces.push({ kind: 'literal', text: t.text });
144
+ continue;
145
+ }
146
+ if (t.level > currentLevel)
147
+ continue;
148
+ const value = counters[t.level] ?? 0;
149
+ const rendered = value > 0 ? formatNumeral(value, t.style) : '';
150
+ pieces.push({ kind: 'counter', text: rendered });
151
+ }
152
+ return renderCounterTemplate(pieces);
153
+ }
144
154
  /** Assign (format, numeric value, rendered label) to every page.
145
155
  *
146
156
  * Segments must be sorted by `startPageIndex`. The first segment is
@@ -1 +1 @@
1
- {"version":3,"file":"numbering.js","sourceRoot":"","sources":["../src/numbering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"numbering.js","sourceRoot":"","sources":["../src/numbering.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"blockParser.d.ts","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAA2B,UAAU,EAAE,MAAM,SAAS,CAAC;AAYjG;2EAC2E;AAC3E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAW/D;AAeD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAQlE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAQ9G;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAE9D;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAmS1G"}
1
+ {"version":3,"file":"blockParser.d.ts","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAA2B,UAAU,EAAE,MAAM,SAAS,CAAC;AAYjG;2EAC2E;AAC3E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAW/D;AAmBD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAQlE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAQ9G;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAE9D;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAyU1G"}
@@ -5,7 +5,7 @@
5
5
  * positions back into the original markdown.
6
6
  */
7
7
  import { extractInlineMath, fixMathSourceMap, injectMathSpans } from './inlineMath';
8
- import { parseInlineFormatting, stripInlineFormatting } from './inlineFormatting';
8
+ import { extractInlineRefs, injectRefSpans, parseInlineFormatting, stripInlineFormatting } from './inlineFormatting';
9
9
  import { buildBlockMapping } from './sourceMapping';
10
10
  const HEADING_RE = /^(#{1,6})\s+(.+)$/;
11
11
  /** `:::name` or `:::name{attrs}` on its own line. */
@@ -34,6 +34,9 @@ const LIST_ITEM_RE = /^(\s*)([-*+])\s+(.*)$/;
34
34
  const BLOCK_MATH_SINGLE_RE = /^\s*\$\$([\s\S]+?)\$\$\s*$/;
35
35
  /** Standalone `$$` marker (opening or closing a multi-line display block). */
36
36
  const BLOCK_MATH_FENCE_RE = /^\s*\$\$\s*$/;
37
+ /** `::resource{id="..."}` block embed on its own line. Malformed variants
38
+ * (missing/empty id, extra attrs) fall through to paragraph parsing. */
39
+ const RESOURCE_DIRECTIVE_RE = /^::resource\s*\{id="([^"]+)"\}\s*$/;
37
40
  // Single-slot memo used by parseMarkdownMemo. The returned array and its
38
41
  // ContentBlocks are treated as read-only by the rest of the pipeline.
39
42
  let _parseMemoInput = null;
@@ -149,6 +152,25 @@ export function parseMarkdownWithIssues(markdown) {
149
152
  i++; // consume the closing fence
150
153
  continue;
151
154
  }
155
+ // Resource embed — `::resource{id="..."}` on its own line. Emits a block
156
+ // carrying only the resource id; rendering/numbering happen downstream.
157
+ // Malformed variants fall through to paragraph parsing.
158
+ const resourceMatch = trimmed.match(RESOURCE_DIRECTIVE_RE);
159
+ if (resourceMatch) {
160
+ const srcStart = lineOffsets[i];
161
+ const srcEnd = lineEndOffset(i);
162
+ blocks.push({
163
+ type: 'resourceBlock',
164
+ text: '',
165
+ spans: [],
166
+ resourceId: resourceMatch[1],
167
+ sourceStart: srcStart,
168
+ sourceEnd: srcEnd,
169
+ sourceMap: [],
170
+ });
171
+ i++;
172
+ continue;
173
+ }
152
174
  // Directive — `:::name` or `:::name{attrs}` on its own line. Only known
153
175
  // directive names are promoted to a `directive` block; unknown names
154
176
  // fall through to paragraph parsing so they remain visible in the
@@ -181,10 +203,13 @@ export function parseMarkdownWithIssues(markdown) {
181
203
  // Absolute offset of the first content char (after the `# `).
182
204
  const prefixLen = line.indexOf(headingRawContent);
183
205
  const contentAbsStart = srcStart + (prefixLen >= 0 ? prefixLen : 0);
184
- const { cleaned, maths, issues: mathIssues } = extractInlineMath(headingRawContent, null, contentAbsStart, srcEnd);
206
+ // Inline pre-passes run refs -> math -> formatting so a ref's `text="…"`
207
+ // attribute is shielded from the later math/formatting scanners.
208
+ const refExtract = extractInlineRefs(headingRawContent, contentAbsStart);
209
+ const { cleaned, maths, issues: mathIssues } = extractInlineMath(refExtract.cleaned, null, contentAbsStart, srcEnd);
185
210
  issues.push(...mathIssues);
186
211
  const rawText = stripInlineFormatting(cleaned);
187
- const rawSpans = injectMathSpans([{ text: rawText, bold: false, italic: false }], maths);
212
+ const rawSpans = injectRefSpans(injectMathSpans([{ text: rawText, bold: false, italic: false }], maths), refExtract.refs);
188
213
  const mapping = buildBlockMapping(markdown, srcStart, srcEnd, rawSpans);
189
214
  fixMathSourceMap(mapping.text, mapping.spans, mapping.sourceMap);
190
215
  blocks.push({
@@ -242,9 +267,10 @@ export function parseMarkdownWithIssues(markdown) {
242
267
  }
243
268
  const contentOffset = leading + markerLength;
244
269
  const itemSrcStart = srcStart + contentOffset;
245
- const mathExtract = extractInlineMath(itemText, null, itemSrcStart, srcEnd);
270
+ const refExtract = extractInlineRefs(itemText, itemSrcStart);
271
+ const mathExtract = extractInlineMath(refExtract.cleaned, null, itemSrcStart, srcEnd);
246
272
  issues.push(...mathExtract.issues);
247
- const rawSpans = injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths);
273
+ const rawSpans = injectRefSpans(injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths), refExtract.refs);
248
274
  const mapping = buildBlockMapping(markdown, itemSrcStart, srcEnd, rawSpans);
249
275
  fixMathSourceMap(mapping.text, mapping.spans, mapping.sourceMap);
250
276
  const block = {
@@ -293,9 +319,10 @@ export function parseMarkdownWithIssues(markdown) {
293
319
  }
294
320
  const srcStart = lineOffsets[startIdx];
295
321
  const srcEnd = lineEndOffset(lastIdx);
296
- const mathExtract = extractInlineMath(quoteLines.join(' '), null, srcStart, srcEnd);
322
+ const refExtract = extractInlineRefs(quoteLines.join(' '), srcStart);
323
+ const mathExtract = extractInlineMath(refExtract.cleaned, null, srcStart, srcEnd);
297
324
  issues.push(...mathExtract.issues);
298
- const rawSpans = injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths);
325
+ const rawSpans = injectRefSpans(injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths), refExtract.refs);
299
326
  const mapping = buildBlockMapping(markdown, srcStart, srcEnd, rawSpans);
300
327
  fixMathSourceMap(mapping.text, mapping.spans, mapping.sourceMap);
301
328
  blocks.push({
@@ -324,9 +351,10 @@ export function parseMarkdownWithIssues(markdown) {
324
351
  if (paraLines.length > 0) {
325
352
  const srcStart = lineOffsets[startIdx];
326
353
  const srcEnd = lineEndOffset(lastIdx);
327
- const mathExtract = extractInlineMath(paraLines.join(' '), null, srcStart, srcEnd);
354
+ const refExtract = extractInlineRefs(paraLines.join(' '), srcStart);
355
+ const mathExtract = extractInlineMath(refExtract.cleaned, null, srcStart, srcEnd);
328
356
  issues.push(...mathExtract.issues);
329
- const rawSpans = injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths);
357
+ const rawSpans = injectRefSpans(injectMathSpans(parseInlineFormatting(mathExtract.cleaned), mathExtract.maths), refExtract.refs);
330
358
  const mapping = buildBlockMapping(markdown, srcStart, srcEnd, rawSpans);
331
359
  fixMathSourceMap(mapping.text, mapping.spans, mapping.sourceMap);
332
360
  blocks.push({
@@ -1 +1 @@
1
- {"version":3,"file":"blockParser.js","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockParser.js","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,42 @@
1
1
  import type { InlineSpan } from './types';
2
+ /** Atomic plain-text placeholder for an inline reference span. One code unit
3
+ * per `:ref{…}` so `sourceMap` stays 1-to-1 (mirroring the inline-math
4
+ * `MATH_PLACEHOLDER` technique). A distinct code point from the math
5
+ * placeholder so `sourceMap` building and span injection can tell the two
6
+ * apart even when a paragraph mixes refs and math. */
7
+ export declare const REF_PLACEHOLDER = "\u2063";
8
+ /** Resolved metadata for an inline `:ref{…}` directive. The owning span's
9
+ * `text` is a single `REF_PLACEHOLDER`; the pipeline later resolves the
10
+ * reference to its computed number/label. */
11
+ export interface RefMeta {
12
+ resourceId: string;
13
+ style?: 'default' | 'number' | 'full';
14
+ text?: string;
15
+ /** Absolute source offset of the leading `:` of `:ref{…}`. */
16
+ sourceStart: number;
17
+ /** Absolute source offset just past the closing `}`. */
18
+ sourceEnd: number;
19
+ }
20
+ /**
21
+ * Extract inline `:ref{…}` references from a line's text.
22
+ * - Returns a cleaned text where each match is replaced by `REF_PLACEHOLDER`.
23
+ * - Returns the list of ref metadata aligned with the order of placeholders.
24
+ *
25
+ * This runs as the first inline pre-pass (before math and formatting) so that
26
+ * a `text="…"` attribute cannot be mangled by later passes.
27
+ *
28
+ * `fallbackStart` is the absolute source offset of `text[0]` in the original
29
+ * markdown; ref offsets are computed relative to it.
30
+ */
31
+ export declare function extractInlineRefs(text: string, fallbackStart: number): {
32
+ cleaned: string;
33
+ refs: RefMeta[];
34
+ };
35
+ /** Walk an InlineSpan list and attach a `ref` to each `REF_PLACEHOLDER`
36
+ * occurrence in order. Splits plain-text spans around the placeholder so the
37
+ * ref span is its own entry (carrying the ambient bold/italic). Mirrors
38
+ * `injectMathSpans`. */
39
+ export declare function injectRefSpans(spans: InlineSpan[], refs: RefMeta[]): InlineSpan[];
2
40
  /**
3
41
  * Strip inline markdown formatting for plain-text extraction.
4
42
  * Handles bold, italic, code, links, and images.
@@ -1 +1 @@
1
- {"version":3,"file":"inlineFormatting.d.ts","sourceRoot":"","sources":["../../src/parse/inlineFormatting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU1D;AAsCD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,CAmChE"}
1
+ {"version":3,"file":"inlineFormatting.d.ts","sourceRoot":"","sources":["../../src/parse/inlineFormatting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;uDAIuD;AACvD,eAAO,MAAM,eAAe,WAAM,CAAC;AAEnC;;8CAE8C;AAC9C,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,WAAW,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,CAqBtC;AAED;;;yBAGyB;AACzB,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAgCjF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU1D;AAsCD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,CAmChE"}
@@ -1,3 +1,87 @@
1
+ /** Atomic plain-text placeholder for an inline reference span. One code unit
2
+ * per `:ref{…}` so `sourceMap` stays 1-to-1 (mirroring the inline-math
3
+ * `MATH_PLACEHOLDER` technique). A distinct code point from the math
4
+ * placeholder so `sourceMap` building and span injection can tell the two
5
+ * apart even when a paragraph mixes refs and math. */
6
+ export const REF_PLACEHOLDER = '⁣';
7
+ /** `:ref{id="…"}` with optional `style=` and `text=` attributes. */
8
+ const INLINE_REF_RE = /:ref\{id="([^"]+)"(?:\s+style="(default|number|full)")?(?:\s+text="([^"]*)")?\}/g;
9
+ /**
10
+ * Extract inline `:ref{…}` references from a line's text.
11
+ * - Returns a cleaned text where each match is replaced by `REF_PLACEHOLDER`.
12
+ * - Returns the list of ref metadata aligned with the order of placeholders.
13
+ *
14
+ * This runs as the first inline pre-pass (before math and formatting) so that
15
+ * a `text="…"` attribute cannot be mangled by later passes.
16
+ *
17
+ * `fallbackStart` is the absolute source offset of `text[0]` in the original
18
+ * markdown; ref offsets are computed relative to it.
19
+ */
20
+ export function extractInlineRefs(text, fallbackStart) {
21
+ const refs = [];
22
+ let out = '';
23
+ let last = 0;
24
+ INLINE_REF_RE.lastIndex = 0;
25
+ let m;
26
+ while ((m = INLINE_REF_RE.exec(text)) !== null) {
27
+ out += text.slice(last, m.index);
28
+ const meta = {
29
+ resourceId: m[1],
30
+ sourceStart: fallbackStart + m.index,
31
+ sourceEnd: fallbackStart + m.index + m[0].length,
32
+ };
33
+ if (m[2] !== undefined)
34
+ meta.style = m[2];
35
+ if (m[3] !== undefined)
36
+ meta.text = m[3];
37
+ refs.push(meta);
38
+ out += REF_PLACEHOLDER;
39
+ last = m.index + m[0].length;
40
+ }
41
+ out += text.slice(last);
42
+ return { cleaned: out, refs };
43
+ }
44
+ /** Walk an InlineSpan list and attach a `ref` to each `REF_PLACEHOLDER`
45
+ * occurrence in order. Splits plain-text spans around the placeholder so the
46
+ * ref span is its own entry (carrying the ambient bold/italic). Mirrors
47
+ * `injectMathSpans`. */
48
+ export function injectRefSpans(spans, refs) {
49
+ if (refs.length === 0)
50
+ return spans;
51
+ const out = [];
52
+ let idx = 0;
53
+ for (const span of spans) {
54
+ if (span.text.indexOf(REF_PLACEHOLDER) < 0) {
55
+ out.push(span);
56
+ continue;
57
+ }
58
+ let buf = '';
59
+ for (const ch of span.text) {
60
+ if (ch === REF_PLACEHOLDER) {
61
+ if (buf.length > 0) {
62
+ out.push({ text: buf, bold: span.bold, italic: span.italic });
63
+ buf = '';
64
+ }
65
+ const meta = refs[idx++];
66
+ if (meta) {
67
+ const ref = { resourceId: meta.resourceId };
68
+ if (meta.style !== undefined)
69
+ ref.style = meta.style;
70
+ if (meta.text !== undefined)
71
+ ref.text = meta.text;
72
+ out.push({ text: REF_PLACEHOLDER, bold: span.bold, italic: span.italic, ref });
73
+ }
74
+ }
75
+ else {
76
+ buf += ch;
77
+ }
78
+ }
79
+ if (buf.length > 0) {
80
+ out.push({ text: buf, bold: span.bold, italic: span.italic });
81
+ }
82
+ }
83
+ return out;
84
+ }
1
85
  /**
2
86
  * Strip inline markdown formatting for plain-text extraction.
3
87
  * Handles bold, italic, code, links, and images.