postext 1.22.2 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/dist/__tests__/bundle.test.js +1 -1
  2. package/dist/__tests__/codeBlocks.test.d.ts +2 -0
  3. package/dist/__tests__/codeBlocks.test.d.ts.map +1 -0
  4. package/dist/__tests__/codeBlocks.test.js +550 -0
  5. package/dist/__tests__/codeBlocks.test.js.map +1 -0
  6. package/dist/__tests__/exports.test.js +19 -0
  7. package/dist/__tests__/exports.test.js.map +1 -1
  8. package/dist/__tests__/hardBreaks.test.d.ts +2 -0
  9. package/dist/__tests__/hardBreaks.test.d.ts.map +1 -0
  10. package/dist/__tests__/hardBreaks.test.js +226 -0
  11. package/dist/__tests__/hardBreaks.test.js.map +1 -0
  12. package/dist/__tests__/headingInlineMarks.test.js +1 -1
  13. package/dist/__tests__/headingLetterSpacing.test.js +1 -1
  14. package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
  15. package/dist/__tests__/lineNumbers.test.d.ts +2 -0
  16. package/dist/__tests__/lineNumbers.test.d.ts.map +1 -0
  17. package/dist/__tests__/lineNumbers.test.js +304 -0
  18. package/dist/__tests__/lineNumbers.test.js.map +1 -0
  19. package/dist/__tests__/mathSizeMigration.test.js +2 -2
  20. package/dist/__tests__/paragraphDropCap.test.d.ts +2 -0
  21. package/dist/__tests__/paragraphDropCap.test.d.ts.map +1 -0
  22. package/dist/__tests__/paragraphDropCap.test.js +442 -0
  23. package/dist/__tests__/paragraphDropCap.test.js.map +1 -0
  24. package/dist/__tests__/paragraphStyleIndent.test.js +26 -2
  25. package/dist/__tests__/paragraphStyleIndent.test.js.map +1 -1
  26. package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js +1 -1
  27. package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js +1 -1
  28. package/dist/__tests__/pipeline/colonListRoom.test.js +1 -1
  29. package/dist/__tests__/pipeline/compoundBreaks.test.js +1 -1
  30. package/dist/__tests__/pipeline/dashBreaks.test.js +1 -1
  31. package/dist/__tests__/pipeline/headingSplitOrphans.test.js +1 -1
  32. package/dist/__tests__/pipeline/inlineFigureSpace.test.js +1 -1
  33. package/dist/__tests__/pipeline/paragraphContainerTail.test.js +1 -1
  34. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js +7 -1
  35. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js.map +1 -1
  36. package/dist/__tests__/pipeline/raggedOptimal.test.js +1 -1
  37. package/dist/__tests__/tabStops.test.d.ts +2 -0
  38. package/dist/__tests__/tabStops.test.d.ts.map +1 -0
  39. package/dist/__tests__/tabStops.test.js +394 -0
  40. package/dist/__tests__/tabStops.test.js.map +1 -0
  41. package/dist/__tests__/verseLines.test.d.ts +2 -0
  42. package/dist/__tests__/verseLines.test.d.ts.map +1 -0
  43. package/dist/__tests__/verseLines.test.js +375 -0
  44. package/dist/__tests__/verseLines.test.js.map +1 -0
  45. package/dist/bundle/configVersion.d.ts +77 -7
  46. package/dist/bundle/configVersion.d.ts.map +1 -1
  47. package/dist/bundle/configVersion.js +239 -5
  48. package/dist/bundle/configVersion.js.map +1 -1
  49. package/dist/bundle/index.d.ts +1 -1
  50. package/dist/bundle/index.d.ts.map +1 -1
  51. package/dist/bundle/index.js +1 -1
  52. package/dist/bundle/index.js.map +1 -1
  53. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  54. package/dist/canvas-backend/blockRender.js +39 -5
  55. package/dist/canvas-backend/blockRender.js.map +1 -1
  56. package/dist/canvas-backend/index.d.ts.map +1 -1
  57. package/dist/canvas-backend/index.js +3 -0
  58. package/dist/canvas-backend/index.js.map +1 -1
  59. package/dist/cjkMarks.js +1 -1
  60. package/dist/cjkMarks.js.map +1 -1
  61. package/dist/code/highlight.d.ts +34 -0
  62. package/dist/code/highlight.d.ts.map +1 -0
  63. package/dist/code/highlight.js +406 -0
  64. package/dist/code/highlight.js.map +1 -0
  65. package/dist/configWarnings.d.ts.map +1 -1
  66. package/dist/configWarnings.js +192 -3
  67. package/dist/configWarnings.js.map +1 -1
  68. package/dist/defaults/bodyText.d.ts.map +1 -1
  69. package/dist/defaults/bodyText.js +25 -0
  70. package/dist/defaults/bodyText.js.map +1 -1
  71. package/dist/defaults/calloutStyles.d.ts.map +1 -1
  72. package/dist/defaults/calloutStyles.js +7 -0
  73. package/dist/defaults/calloutStyles.js.map +1 -1
  74. package/dist/defaults/codeStyle.d.ts +29 -0
  75. package/dist/defaults/codeStyle.d.ts.map +1 -0
  76. package/dist/defaults/codeStyle.js +284 -0
  77. package/dist/defaults/codeStyle.js.map +1 -0
  78. package/dist/defaults/dropCap.d.ts +49 -0
  79. package/dist/defaults/dropCap.d.ts.map +1 -0
  80. package/dist/defaults/dropCap.js +66 -0
  81. package/dist/defaults/dropCap.js.map +1 -0
  82. package/dist/defaults/headings.d.ts +1 -1
  83. package/dist/defaults/headings.d.ts.map +1 -1
  84. package/dist/defaults/headings.js +11 -0
  85. package/dist/defaults/headings.js.map +1 -1
  86. package/dist/defaults/index.d.ts +3 -0
  87. package/dist/defaults/index.d.ts.map +1 -1
  88. package/dist/defaults/index.js +19 -0
  89. package/dist/defaults/index.js.map +1 -1
  90. package/dist/defaults/lineNumbers.d.ts +19 -0
  91. package/dist/defaults/lineNumbers.d.ts.map +1 -0
  92. package/dist/defaults/lineNumbers.js +101 -0
  93. package/dist/defaults/lineNumbers.js.map +1 -0
  94. package/dist/defaults/paragraphStyles.d.ts.map +1 -1
  95. package/dist/defaults/paragraphStyles.js +20 -0
  96. package/dist/defaults/paragraphStyles.js.map +1 -1
  97. package/dist/defaults/tabStops.d.ts +29 -0
  98. package/dist/defaults/tabStops.d.ts.map +1 -0
  99. package/dist/defaults/tabStops.js +94 -0
  100. package/dist/defaults/tabStops.js.map +1 -0
  101. package/dist/defaults/verse.d.ts +10 -0
  102. package/dist/defaults/verse.d.ts.map +1 -0
  103. package/dist/defaults/verse.js +52 -0
  104. package/dist/defaults/verse.js.map +1 -0
  105. package/dist/fonts/usage.d.ts +7 -0
  106. package/dist/fonts/usage.d.ts.map +1 -1
  107. package/dist/fonts/usage.js +71 -0
  108. package/dist/fonts/usage.js.map +1 -1
  109. package/dist/html-backend.d.ts.map +1 -1
  110. package/dist/html-backend.js +85 -11
  111. package/dist/html-backend.js.map +1 -1
  112. package/dist/index.d.ts +8 -5
  113. package/dist/index.d.ts.map +1 -1
  114. package/dist/index.js +4 -2
  115. package/dist/index.js.map +1 -1
  116. package/dist/measure/bidiLines.js +2 -2
  117. package/dist/measure/bidiLines.js.map +1 -1
  118. package/dist/measure/cache.js +2 -2
  119. package/dist/measure/cache.js.map +1 -1
  120. package/dist/measure/cjkCompose.d.ts.map +1 -1
  121. package/dist/measure/cjkCompose.js +5 -5
  122. package/dist/measure/cjkCompose.js.map +1 -1
  123. package/dist/measure/hardBreaks.d.ts +46 -0
  124. package/dist/measure/hardBreaks.d.ts.map +1 -0
  125. package/dist/measure/hardBreaks.js +216 -0
  126. package/dist/measure/hardBreaks.js.map +1 -0
  127. package/dist/measure/index.d.ts +1 -0
  128. package/dist/measure/index.d.ts.map +1 -1
  129. package/dist/measure/index.js +1 -0
  130. package/dist/measure/index.js.map +1 -1
  131. package/dist/measure/leader.d.ts +20 -0
  132. package/dist/measure/leader.d.ts.map +1 -0
  133. package/dist/measure/leader.js +46 -0
  134. package/dist/measure/leader.js.map +1 -0
  135. package/dist/measure/links.js +1 -1
  136. package/dist/measure/links.js.map +1 -1
  137. package/dist/measure/plain.d.ts.map +1 -1
  138. package/dist/measure/plain.js +18 -25
  139. package/dist/measure/plain.js.map +1 -1
  140. package/dist/measure/rich.d.ts +19 -0
  141. package/dist/measure/rich.d.ts.map +1 -1
  142. package/dist/measure/rich.js +211 -38
  143. package/dist/measure/rich.js.map +1 -1
  144. package/dist/measure/tabs.d.ts +103 -0
  145. package/dist/measure/tabs.d.ts.map +1 -0
  146. package/dist/measure/tabs.js +123 -0
  147. package/dist/measure/tabs.js.map +1 -0
  148. package/dist/measure/types.d.ts +26 -2
  149. package/dist/measure/types.d.ts.map +1 -1
  150. package/dist/measure/types.js +23 -3
  151. package/dist/measure/types.js.map +1 -1
  152. package/dist/parse/blockParser.d.ts +13 -6
  153. package/dist/parse/blockParser.d.ts.map +1 -1
  154. package/dist/parse/blockParser.js +457 -87
  155. package/dist/parse/blockParser.js.map +1 -1
  156. package/dist/parse/codeFence.d.ts +18 -0
  157. package/dist/parse/codeFence.d.ts.map +1 -0
  158. package/dist/parse/codeFence.js +52 -0
  159. package/dist/parse/codeFence.js.map +1 -0
  160. package/dist/parse/index.d.ts +1 -1
  161. package/dist/parse/index.d.ts.map +1 -1
  162. package/dist/parse/index.js.map +1 -1
  163. package/dist/parse/indexMarks.d.ts +3 -1
  164. package/dist/parse/indexMarks.d.ts.map +1 -1
  165. package/dist/parse/indexMarks.js +22 -2
  166. package/dist/parse/indexMarks.js.map +1 -1
  167. package/dist/parse/inlineFormatting.d.ts +50 -0
  168. package/dist/parse/inlineFormatting.d.ts.map +1 -1
  169. package/dist/parse/inlineFormatting.js +94 -0
  170. package/dist/parse/inlineFormatting.js.map +1 -1
  171. package/dist/parse/sourceMapping.d.ts.map +1 -1
  172. package/dist/parse/sourceMapping.js +65 -1
  173. package/dist/parse/sourceMapping.js.map +1 -1
  174. package/dist/parse/types.d.ts +144 -9
  175. package/dist/parse/types.d.ts.map +1 -1
  176. package/dist/pipeline/build.d.ts.map +1 -1
  177. package/dist/pipeline/build.js +143 -18
  178. package/dist/pipeline/build.js.map +1 -1
  179. package/dist/pipeline/buildBlockKind.d.ts.map +1 -1
  180. package/dist/pipeline/buildBlockKind.js +60 -1
  181. package/dist/pipeline/buildBlockKind.js.map +1 -1
  182. package/dist/pipeline/buildHelpers.d.ts +3 -0
  183. package/dist/pipeline/buildHelpers.d.ts.map +1 -1
  184. package/dist/pipeline/buildHelpers.js +7 -2
  185. package/dist/pipeline/buildHelpers.js.map +1 -1
  186. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  187. package/dist/pipeline/calloutLayout.js +33 -2
  188. package/dist/pipeline/calloutLayout.js.map +1 -1
  189. package/dist/pipeline/chips.d.ts.map +1 -1
  190. package/dist/pipeline/chips.js +4 -0
  191. package/dist/pipeline/chips.js.map +1 -1
  192. package/dist/pipeline/codeBlocks.d.ts +38 -0
  193. package/dist/pipeline/codeBlocks.d.ts.map +1 -0
  194. package/dist/pipeline/codeBlocks.js +146 -0
  195. package/dist/pipeline/codeBlocks.js.map +1 -0
  196. package/dist/pipeline/codeInline.d.ts +22 -0
  197. package/dist/pipeline/codeInline.d.ts.map +1 -0
  198. package/dist/pipeline/codeInline.js +93 -0
  199. package/dist/pipeline/codeInline.js.map +1 -0
  200. package/dist/pipeline/codeLines.d.ts +91 -0
  201. package/dist/pipeline/codeLines.d.ts.map +1 -0
  202. package/dist/pipeline/codeLines.js +399 -0
  203. package/dist/pipeline/codeLines.js.map +1 -0
  204. package/dist/pipeline/config.d.ts.map +1 -1
  205. package/dist/pipeline/config.js +8 -1
  206. package/dist/pipeline/config.js.map +1 -1
  207. package/dist/pipeline/contentWarnings.d.ts +9 -0
  208. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  209. package/dist/pipeline/contentWarnings.js +60 -2
  210. package/dist/pipeline/contentWarnings.js.map +1 -1
  211. package/dist/pipeline/continuation.d.ts.map +1 -1
  212. package/dist/pipeline/continuation.js +9 -2
  213. package/dist/pipeline/continuation.js.map +1 -1
  214. package/dist/pipeline/dropCap.d.ts +128 -0
  215. package/dist/pipeline/dropCap.d.ts.map +1 -0
  216. package/dist/pipeline/dropCap.js +412 -0
  217. package/dist/pipeline/dropCap.js.map +1 -0
  218. package/dist/pipeline/hardBreaks.d.ts +19 -0
  219. package/dist/pipeline/hardBreaks.d.ts.map +1 -0
  220. package/dist/pipeline/hardBreaks.js +36 -0
  221. package/dist/pipeline/hardBreaks.js.map +1 -0
  222. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  223. package/dist/pipeline/headerFooter.js +4 -1
  224. package/dist/pipeline/headerFooter.js.map +1 -1
  225. package/dist/pipeline/lineNumbers.d.ts +37 -0
  226. package/dist/pipeline/lineNumbers.d.ts.map +1 -0
  227. package/dist/pipeline/lineNumbers.js +441 -0
  228. package/dist/pipeline/lineNumbers.js.map +1 -0
  229. package/dist/pipeline/measureContentBlock.d.ts +31 -5
  230. package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
  231. package/dist/pipeline/measureContentBlock.js +274 -68
  232. package/dist/pipeline/measureContentBlock.js.map +1 -1
  233. package/dist/pipeline/partPalette.d.ts +1 -1
  234. package/dist/pipeline/partPalette.d.ts.map +1 -1
  235. package/dist/pipeline/partPalette.js +24 -2
  236. package/dist/pipeline/partPalette.js.map +1 -1
  237. package/dist/pipeline/styles.d.ts +18 -2
  238. package/dist/pipeline/styles.d.ts.map +1 -1
  239. package/dist/pipeline/styles.js +15 -3
  240. package/dist/pipeline/styles.js.map +1 -1
  241. package/dist/pipeline/tabs.d.ts +35 -0
  242. package/dist/pipeline/tabs.d.ts.map +1 -0
  243. package/dist/pipeline/tabs.js +99 -0
  244. package/dist/pipeline/tabs.js.map +1 -0
  245. package/dist/pipeline/toc.d.ts.map +1 -1
  246. package/dist/pipeline/toc.js +3 -38
  247. package/dist/pipeline/toc.js.map +1 -1
  248. package/dist/pipeline/verseLines.d.ts +78 -0
  249. package/dist/pipeline/verseLines.d.ts.map +1 -0
  250. package/dist/pipeline/verseLines.js +245 -0
  251. package/dist/pipeline/verseLines.js.map +1 -0
  252. package/dist/preflight.d.ts.map +1 -1
  253. package/dist/preflight.js +1 -0
  254. package/dist/preflight.js.map +1 -1
  255. package/dist/types.d.ts +560 -4
  256. package/dist/types.d.ts.map +1 -1
  257. package/dist/vdt.d.ts +240 -7
  258. package/dist/vdt.d.ts.map +1 -1
  259. package/dist/vdt.js +6 -0
  260. package/dist/vdt.js.map +1 -1
  261. package/dist/word/docxRead.d.ts.map +1 -1
  262. package/dist/word/docxRead.js +15 -0
  263. package/dist/word/docxRead.js.map +1 -1
  264. package/dist/word/inline.d.ts +6 -1
  265. package/dist/word/inline.d.ts.map +1 -1
  266. package/dist/word/inline.js +35 -1
  267. package/dist/word/inline.js.map +1 -1
  268. package/dist/word/model.d.ts +14 -0
  269. package/dist/word/model.d.ts.map +1 -1
  270. package/dist/word/model.js.map +1 -1
  271. package/dist/word/template.d.ts +12 -3
  272. package/dist/word/template.d.ts.map +1 -1
  273. package/dist/word/template.js +13 -3
  274. package/dist/word/template.js.map +1 -1
  275. package/dist/word/toDocx.d.ts.map +1 -1
  276. package/dist/word/toDocx.js +52 -8
  277. package/dist/word/toDocx.js.map +1 -1
  278. package/dist/word/toMarkdown.d.ts +5 -1
  279. package/dist/word/toMarkdown.d.ts.map +1 -1
  280. package/dist/word/toMarkdown.js +117 -6
  281. package/dist/word/toMarkdown.js.map +1 -1
  282. package/dist/word/word.test.js +124 -2
  283. package/dist/word/word.test.js.map +1 -1
  284. package/dist/worker/fonts.d.ts +2 -1
  285. package/dist/worker/fonts.d.ts.map +1 -1
  286. package/dist/worker/fonts.js +6 -2
  287. package/dist/worker/fonts.js.map +1 -1
  288. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/measure/tabs.ts"],"names":[],"mappings":"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"}
@@ -21,8 +21,15 @@ export interface LineWidthStep {
21
21
  * last step at or before it, else `maxWidthPx`. */
22
22
  export declare function lineMeasure(maxWidthPx: number, steps: readonly LineWidthStep[] | undefined, lineIndex: number): number;
23
23
  /** The line from which the measure stops changing: after the first line
24
- * (its indent) and after the last step. */
25
- export declare function uniformMeasureFrom(steps: readonly LineWidthStep[] | undefined): number;
24
+ * (its indent), after the last step and after the last entry of an indent
25
+ * table (`lineIndentsPx`: the lines a drop cap shortens, #623). */
26
+ export declare function uniformMeasureFrom(steps: readonly LineWidthStep[] | undefined, indents?: readonly number[]): number;
27
+ /** The indent of line `li` (0-based) the options ask for: its entry in
28
+ * `lineIndentsPx`, else the first-line indent on line 0 (or, hanging, on
29
+ * every line but line 0). Never negative. */
30
+ export declare function lineIndentAt(options: MeasureBlockOptions | undefined, li: number): number;
31
+ /** The largest indent any line of the block takes (see {@link lineIndentAt}). */
32
+ export declare function maxLineIndent(options: MeasureBlockOptions | undefined): number;
26
33
  export interface MeasuredBlock {
27
34
  lines: VDTLine[];
28
35
  totalHeight: number;
@@ -42,12 +49,29 @@ export interface MeasurementCache {
42
49
  export interface MeasureBlockOptions {
43
50
  textAlign?: TextAlign;
44
51
  hyphenate?: boolean;
52
+ /** The first line's indent (px); with {@link hangingIndent}, the indent
53
+ * of every line but the first instead. A negative value counts as 0.
54
+ * {@link lineIndentsPx} takes the place of both when set. */
45
55
  firstLineIndentPx?: number;
46
56
  hangingIndent?: boolean;
57
+ /** The indent of each line (px, from the measure's start) in line
58
+ * order, from line 0; the last entry holds for every line after it.
59
+ * `[first, rest]` pairs a first-line indent with a hanging one (a
60
+ * paragraph style that sets both, a turnover of verse, #620); a longer
61
+ * table indents the first lines each its own way. Takes the place of
62
+ * {@link firstLineIndentPx} and {@link hangingIndent} when set; see
63
+ * {@link lineIndentAt}. Joins the cache key only when set. */
64
+ lineIndentsPx?: readonly number[];
47
65
  /** The label column of a numbered bibliography entry (#290), in px from
48
66
  * the line's start: the spans' `labelTab` spaces are widened so the
49
67
  * entry's text starts there. */
50
68
  labelColumnPx?: number;
69
+ /** The paragraph's tab stops (#622, `measure/tabs.ts`): where its tabs
70
+ * (`InlineSpan.tab`) send the text after them. A paragraph that holds a
71
+ * tab is set line by line, whatever {@link optimal} says. Unset: a tab
72
+ * without a stop of its own (`:tab{at=…}`) is a word space. Joins the
73
+ * cache key only when set. */
74
+ tabs?: import('./tabs').TabSettings;
51
75
  /** Use Knuth-Plass optimal line breaking instead of greedy. */
52
76
  optimal?: boolean;
53
77
  /** Max space stretch ratio (for K-P glue model). Default 1.5. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/measure/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/measure/types.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,33 @@ export function lineMeasure(maxWidthPx, steps, lineIndex) {
9
9
  return width;
10
10
  }
11
11
  /** The line from which the measure stops changing: after the first line
12
- * (its indent) and after the last step. */
13
- export function uniformMeasureFrom(steps) {
14
- let from = 1;
12
+ * (its indent), after the last step and after the last entry of an indent
13
+ * table (`lineIndentsPx`: the lines a drop cap shortens, #623). */
14
+ export function uniformMeasureFrom(steps, indents) {
15
+ let from = Math.max(1, (indents?.length ?? 0) - 1);
15
16
  if (steps)
16
17
  for (const s of steps)
17
18
  from = Math.max(from, s.fromLine);
18
19
  return from;
19
20
  }
21
+ /** The indent of line `li` (0-based) the options ask for: its entry in
22
+ * `lineIndentsPx`, else the first-line indent on line 0 (or, hanging, on
23
+ * every line but line 0). Never negative. */
24
+ export function lineIndentAt(options, li) {
25
+ const table = options?.lineIndentsPx;
26
+ if (table && table.length > 0)
27
+ return Math.max(0, table[Math.min(li, table.length - 1)]);
28
+ const indent = options?.firstLineIndentPx ?? 0;
29
+ if (!(indent > 0))
30
+ return 0;
31
+ return options?.hangingIndent ? (li === 0 ? 0 : indent) : (li === 0 ? indent : 0);
32
+ }
33
+ /** The largest indent any line of the block takes (see {@link lineIndentAt}). */
34
+ export function maxLineIndent(options) {
35
+ const table = options?.lineIndentsPx;
36
+ if (table && table.length > 0)
37
+ return Math.max(0, ...table);
38
+ return Math.max(0, options?.firstLineIndentPx ?? 0);
39
+ }
20
40
  export const SOFT_HYPHEN = '\u00AD';
21
41
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/measure/types.ts"],"names":[],"mappings":"AAsBA;oDACoD;AACpD,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,KAA2C,EAAE,SAAiB;IAC5G,IAAI,KAAK,GAAG,UAAU,CAAC;IACvB,IAAI,KAAK;QAAE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,SAAS;gBAAE,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC;IACpF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;4CAC4C;AAC5C,MAAM,UAAU,kBAAkB,CAAC,KAA2C;IAC5E,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK;QAAE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC;AACd,CAAC;AAkKD,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/measure/types.ts"],"names":[],"mappings":"AAsBA;oDACoD;AACpD,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,KAA2C,EAAE,SAAiB;IAC5G,IAAI,KAAK,GAAG,UAAU,CAAC;IACvB,IAAI,KAAK;QAAE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,CAAC,QAAQ,IAAI,SAAS;gBAAE,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC;IACpF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;oEAEoE;AACpE,MAAM,UAAU,kBAAkB,CAAC,KAA2C,EAAE,OAA2B;IACzG,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,KAAK;QAAE,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;8CAE8C;AAC9C,MAAM,UAAU,YAAY,CAAC,OAAwC,EAAE,EAAU;IAC/E,MAAM,KAAK,GAAG,OAAO,EAAE,aAAa,CAAC;IACrC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,OAAO,EAAE,iBAAiB,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC;IAC5B,OAAO,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,aAAa,CAAC,OAAwC;IACpE,MAAM,KAAK,GAAG,OAAO,EAAE,aAAa,CAAC;IACrC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC;AAmLD,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC"}
@@ -4,14 +4,20 @@
4
4
  * attaches per-character `sourceMap` arrays so higher layers can map cursor
5
5
  * positions back into the original markdown.
6
6
  */
7
- import type { ContainerName, ContentBlock, DirectiveName, ParseIssue } from './types';
7
+ import type { CodeBlockInfo, ContainerName, ContentBlock, DirectiveName, ParseIssue, ParseOptions } from './types';
8
8
  export { parseDirectiveAttrs, spaceDirectiveLines, MAX_SPACE_LINES } from './attrs';
9
+ export { codeFenceOpen } from './codeFence';
9
10
  /** Set of directive names recognized today. Unknown names fall through to
10
11
  * paragraph-parsing and downstream warnings flag them. */
11
12
  export declare const KNOWN_DIRECTIVES: ReadonlySet<DirectiveName>;
12
13
  /** Set of fenced-container names recognized today. A `:::name` line whose
13
14
  * name is a known container opens a block that runs until a bare `:::`. */
14
15
  export declare const KNOWN_CONTAINERS: ReadonlySet<ContainerName>;
16
+ /** A fence's info string read (#624): the first word is the language
17
+ * (lower-cased); a `{…}` block after it, or `key=value` pairs, are
18
+ * attributes in the directive grammar; anything else after the language
19
+ * is the title (```` ```console Terminal ````). */
20
+ export declare function readCodeInfo(info: string): Pick<CodeBlockInfo, 'lang' | 'attrs' | 'title'>;
15
21
  /** @internal Number of inputs the parse memo keeps (tests). */
16
22
  export declare const PARSE_MEMO_CAPACITY = 8;
17
23
  /**
@@ -20,20 +26,21 @@ export declare const PARSE_MEMO_CAPACITY = 8;
20
26
  * This avoids reparsing a document on each keystroke when upstream
21
27
  * recomputes only because a sibling state changed.
22
28
  */
23
- export declare function parseMarkdownMemo(markdown: string): ContentBlock[];
24
- export declare function parseMarkdownWithIssuesMemo(markdown: string): {
29
+ export declare function parseMarkdownMemo(markdown: string, options?: ParseOptions): ContentBlock[];
30
+ export declare function parseMarkdownWithIssuesMemo(markdown: string, options?: ParseOptions): {
25
31
  blocks: ContentBlock[];
26
32
  issues: ParseIssue[];
27
33
  };
28
- export declare function parseMarkdown(markdown: string): ContentBlock[];
34
+ export declare function parseMarkdown(markdown: string, options?: ParseOptions): ContentBlock[];
29
35
  /**
30
36
  * Merge consecutive blockquote lines into a single block, and consecutive
31
37
  * non-blank, non-special lines into paragraphs. Index marks (`:index…`)
32
38
  * are taken out first and attached to the blocks holding them
33
39
  * (`ContentBlock.indexMarks`); every source offset still points into
34
- * `markdown`.
40
+ * `markdown`. `options` picks how code is read (#624): fences on, indented
41
+ * code off by default.
35
42
  */
36
- export declare function parseMarkdownWithIssues(markdown: string): {
43
+ export declare function parseMarkdownWithIssues(markdown: string, options?: ParseOptions): {
37
44
  blocks: ContentBlock[];
38
45
  issues: ParseIssue[];
39
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"blockParser.d.ts","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAkB,aAAa,EAAY,UAAU,EAAE,MAAM,SAAS,CAAC;AAahH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAQpF;2DAC2D;AAC3D,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAuI,CAAC;AAuBhM;4EAC4E;AAC5E,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAkE,CAAC;AAsD3H,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,IAAmB,CAAC;AAEpD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAElE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAE9G;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAO1G"}
1
+ {"version":3,"file":"blockParser.d.ts","sourceRoot":"","sources":["../../src/parse/blockParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAkB,aAAa,EAAY,UAAU,EAAE,YAAY,EAA8B,MAAM,SAAS,CAAC;AAczK,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C;2DAC2D;AAC3D,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAuI,CAAC;AAuBhM;4EAC4E;AAC5E,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAkE,CAAC;AA4B3H;;;oDAGoD;AACpD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,CAmB1F;AAqDD,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,IAAmB,CAAC;AAEpD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAE1F;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAEtI;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAEtF;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE,CAOlI"}