postext 1.23.0 → 1.25.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 (471) hide show
  1. package/dist/__tests__/bundle/bitmapInfo.test.d.ts +2 -0
  2. package/dist/__tests__/bundle/bitmapInfo.test.d.ts.map +1 -0
  3. package/dist/__tests__/bundle/bitmapInfo.test.js +78 -0
  4. package/dist/__tests__/bundle/bitmapInfo.test.js.map +1 -0
  5. package/dist/__tests__/bundle/cjkRulesPin.test.d.ts +2 -0
  6. package/dist/__tests__/bundle/cjkRulesPin.test.d.ts.map +1 -0
  7. package/dist/__tests__/bundle/cjkRulesPin.test.js +78 -0
  8. package/dist/__tests__/bundle/cjkRulesPin.test.js.map +1 -0
  9. package/dist/__tests__/bundle/designOverflowPin.test.d.ts +2 -0
  10. package/dist/__tests__/bundle/designOverflowPin.test.d.ts.map +1 -0
  11. package/dist/__tests__/bundle/designOverflowPin.test.js +89 -0
  12. package/dist/__tests__/bundle/designOverflowPin.test.js.map +1 -0
  13. package/dist/__tests__/bundle/flowColumnsPin.test.d.ts +2 -0
  14. package/dist/__tests__/bundle/flowColumnsPin.test.d.ts.map +1 -0
  15. package/dist/__tests__/bundle/flowColumnsPin.test.js +40 -0
  16. package/dist/__tests__/bundle/flowColumnsPin.test.js.map +1 -0
  17. package/dist/__tests__/bundle/gridBalancingPin.test.d.ts +2 -0
  18. package/dist/__tests__/bundle/gridBalancingPin.test.d.ts.map +1 -0
  19. package/dist/__tests__/bundle/gridBalancingPin.test.js +53 -0
  20. package/dist/__tests__/bundle/gridBalancingPin.test.js.map +1 -0
  21. package/dist/__tests__/bundle/inlineTableSplitPin.test.d.ts +2 -0
  22. package/dist/__tests__/bundle/inlineTableSplitPin.test.d.ts.map +1 -0
  23. package/dist/__tests__/bundle/inlineTableSplitPin.test.js +43 -0
  24. package/dist/__tests__/bundle/inlineTableSplitPin.test.js.map +1 -0
  25. package/dist/__tests__/bundle/openerHeadFloatsPin.test.d.ts +2 -0
  26. package/dist/__tests__/bundle/openerHeadFloatsPin.test.d.ts.map +1 -0
  27. package/dist/__tests__/bundle/openerHeadFloatsPin.test.js +50 -0
  28. package/dist/__tests__/bundle/openerHeadFloatsPin.test.js.map +1 -0
  29. package/dist/__tests__/bundle.test.js +11 -1
  30. package/dist/__tests__/bundle.test.js.map +1 -1
  31. package/dist/__tests__/cjk/annotationsRender.test.js +5 -2
  32. package/dist/__tests__/cjk/annotationsRender.test.js.map +1 -1
  33. package/dist/__tests__/cjk/circledNumbers.test.d.ts +2 -0
  34. package/dist/__tests__/cjk/circledNumbers.test.d.ts.map +1 -0
  35. package/dist/__tests__/cjk/circledNumbers.test.js +83 -0
  36. package/dist/__tests__/cjk/circledNumbers.test.js.map +1 -0
  37. package/dist/__tests__/cjk/gridBalancing.test.d.ts +2 -0
  38. package/dist/__tests__/cjk/gridBalancing.test.d.ts.map +1 -0
  39. package/dist/__tests__/cjk/gridBalancing.test.js +227 -0
  40. package/dist/__tests__/cjk/gridBalancing.test.js.map +1 -0
  41. package/dist/__tests__/cjk/justifyRender.test.js +2 -1
  42. package/dist/__tests__/cjk/justifyRender.test.js.map +1 -1
  43. package/dist/__tests__/cjk/titleBreaks.test.d.ts +2 -0
  44. package/dist/__tests__/cjk/titleBreaks.test.d.ts.map +1 -0
  45. package/dist/__tests__/cjk/titleBreaks.test.js +76 -0
  46. package/dist/__tests__/cjk/titleBreaks.test.js.map +1 -0
  47. package/dist/__tests__/cjk/wordJoiner.test.js +13 -4
  48. package/dist/__tests__/cjk/wordJoiner.test.js.map +1 -1
  49. package/dist/__tests__/codeBlocks.test.js +1 -1
  50. package/dist/__tests__/codeBlocks.test.js.map +1 -1
  51. package/dist/__tests__/design/cjkDesignText.test.d.ts +2 -0
  52. package/dist/__tests__/design/cjkDesignText.test.d.ts.map +1 -0
  53. package/dist/__tests__/design/cjkDesignText.test.js +130 -0
  54. package/dist/__tests__/design/cjkDesignText.test.js.map +1 -0
  55. package/dist/__tests__/design/cjkDesignTextRender.test.d.ts +2 -0
  56. package/dist/__tests__/design/cjkDesignTextRender.test.d.ts.map +1 -0
  57. package/dist/__tests__/design/cjkDesignTextRender.test.js +100 -0
  58. package/dist/__tests__/design/cjkDesignTextRender.test.js.map +1 -0
  59. package/dist/__tests__/design/designTextOverflow.test.d.ts +2 -0
  60. package/dist/__tests__/design/designTextOverflow.test.d.ts.map +1 -0
  61. package/dist/__tests__/design/designTextOverflow.test.js +102 -0
  62. package/dist/__tests__/design/designTextOverflow.test.js.map +1 -0
  63. package/dist/__tests__/exports.test.js +60 -0
  64. package/dist/__tests__/exports.test.js.map +1 -1
  65. package/dist/__tests__/frontmatterInvalid.test.d.ts +2 -0
  66. package/dist/__tests__/frontmatterInvalid.test.d.ts.map +1 -0
  67. package/dist/__tests__/frontmatterInvalid.test.js +101 -0
  68. package/dist/__tests__/frontmatterInvalid.test.js.map +1 -0
  69. package/dist/__tests__/hardBreaks.test.js +1 -1
  70. package/dist/__tests__/hardBreaks.test.js.map +1 -1
  71. package/dist/__tests__/headingFirstLineIndent.test.d.ts +2 -0
  72. package/dist/__tests__/headingFirstLineIndent.test.d.ts.map +1 -0
  73. package/dist/__tests__/headingFirstLineIndent.test.js +185 -0
  74. package/dist/__tests__/headingFirstLineIndent.test.js.map +1 -0
  75. package/dist/__tests__/headingInlineMarks.test.js +1 -1
  76. package/dist/__tests__/headingInlineMarks.test.js.map +1 -1
  77. package/dist/__tests__/headingLetterSpacing.test.js +1 -1
  78. package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
  79. package/dist/__tests__/headingNumberSpans.test.d.ts +2 -0
  80. package/dist/__tests__/headingNumberSpans.test.d.ts.map +1 -0
  81. package/dist/__tests__/headingNumberSpans.test.js +96 -0
  82. package/dist/__tests__/headingNumberSpans.test.js.map +1 -0
  83. package/dist/__tests__/mathSizeMigration.test.js +2 -2
  84. package/dist/__tests__/mathSizeMigration.test.js.map +1 -1
  85. package/dist/__tests__/multipleColumns.test.js +207 -0
  86. package/dist/__tests__/multipleColumns.test.js.map +1 -1
  87. package/dist/__tests__/parse/citations.test.js +29 -0
  88. package/dist/__tests__/parse/citations.test.js.map +1 -1
  89. package/dist/__tests__/pipeline/bitmapResolution.test.d.ts +2 -0
  90. package/dist/__tests__/pipeline/bitmapResolution.test.d.ts.map +1 -0
  91. package/dist/__tests__/pipeline/bitmapResolution.test.js +139 -0
  92. package/dist/__tests__/pipeline/bitmapResolution.test.js.map +1 -0
  93. package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js +10 -6
  94. package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js.map +1 -1
  95. package/dist/__tests__/pipeline/calloutOverflow.test.js +4 -2
  96. package/dist/__tests__/pipeline/calloutOverflow.test.js.map +1 -1
  97. package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js +1 -1
  98. package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js.map +1 -1
  99. package/dist/__tests__/pipeline/calloutTallKeepTogether.test.js +6 -5
  100. package/dist/__tests__/pipeline/calloutTallKeepTogether.test.js.map +1 -1
  101. package/dist/__tests__/pipeline/colonListRoom.test.js +1 -1
  102. package/dist/__tests__/pipeline/colonListRoom.test.js.map +1 -1
  103. package/dist/__tests__/pipeline/compoundBreaks.test.js +1 -1
  104. package/dist/__tests__/pipeline/compoundBreaks.test.js.map +1 -1
  105. package/dist/__tests__/pipeline/dashBreaks.test.js +1 -1
  106. package/dist/__tests__/pipeline/dashBreaks.test.js.map +1 -1
  107. package/dist/__tests__/pipeline/designTextTruncated.test.d.ts +2 -0
  108. package/dist/__tests__/pipeline/designTextTruncated.test.d.ts.map +1 -0
  109. package/dist/__tests__/pipeline/designTextTruncated.test.js +116 -0
  110. package/dist/__tests__/pipeline/designTextTruncated.test.js.map +1 -0
  111. package/dist/__tests__/pipeline/floatCitingPage.test.d.ts +2 -0
  112. package/dist/__tests__/pipeline/floatCitingPage.test.d.ts.map +1 -0
  113. package/dist/__tests__/pipeline/floatCitingPage.test.js +241 -0
  114. package/dist/__tests__/pipeline/floatCitingPage.test.js.map +1 -0
  115. package/dist/__tests__/pipeline/floatOverInlineResource.test.js +18 -6
  116. package/dist/__tests__/pipeline/floatOverInlineResource.test.js.map +1 -1
  117. package/dist/__tests__/pipeline/floatPlacement.test.js +3 -3
  118. package/dist/__tests__/pipeline/floatPlacement.test.js.map +1 -1
  119. package/dist/__tests__/pipeline/floatShrink.test.d.ts +2 -0
  120. package/dist/__tests__/pipeline/floatShrink.test.d.ts.map +1 -0
  121. package/dist/__tests__/pipeline/floatShrink.test.js +298 -0
  122. package/dist/__tests__/pipeline/floatShrink.test.js.map +1 -0
  123. package/dist/__tests__/pipeline/flowColumns.test.d.ts +2 -0
  124. package/dist/__tests__/pipeline/flowColumns.test.d.ts.map +1 -0
  125. package/dist/__tests__/pipeline/flowColumns.test.js +261 -0
  126. package/dist/__tests__/pipeline/flowColumns.test.js.map +1 -0
  127. package/dist/__tests__/pipeline/headingKeepFitEps.test.d.ts +2 -0
  128. package/dist/__tests__/pipeline/headingKeepFitEps.test.d.ts.map +1 -0
  129. package/dist/__tests__/pipeline/headingKeepFitEps.test.js +83 -0
  130. package/dist/__tests__/pipeline/headingKeepFitEps.test.js.map +1 -0
  131. package/dist/__tests__/pipeline/headingSplitOrphans.test.js +1 -1
  132. package/dist/__tests__/pipeline/headingSplitOrphans.test.js.map +1 -1
  133. package/dist/__tests__/pipeline/inlineFigureSpace.test.js +1 -1
  134. package/dist/__tests__/pipeline/inlineFigureSpace.test.js.map +1 -1
  135. package/dist/__tests__/pipeline/inlineTableSplit.test.d.ts +2 -0
  136. package/dist/__tests__/pipeline/inlineTableSplit.test.d.ts.map +1 -0
  137. package/dist/__tests__/pipeline/inlineTableSplit.test.js +238 -0
  138. package/dist/__tests__/pipeline/inlineTableSplit.test.js.map +1 -0
  139. package/dist/__tests__/pipeline/paragraphContainerTail.test.js +1 -1
  140. package/dist/__tests__/pipeline/paragraphContainerTail.test.js.map +1 -1
  141. package/dist/__tests__/pipeline/raggedOptimal.test.js +1 -1
  142. package/dist/__tests__/pipeline/raggedOptimal.test.js.map +1 -1
  143. package/dist/__tests__/pipeline/resolvedPaletteCopy.test.js +3 -2
  144. package/dist/__tests__/pipeline/resolvedPaletteCopy.test.js.map +1 -1
  145. package/dist/__tests__/pipeline/sideBoxAfterText.test.d.ts +2 -0
  146. package/dist/__tests__/pipeline/sideBoxAfterText.test.d.ts.map +1 -0
  147. package/dist/__tests__/pipeline/sideBoxAfterText.test.js +163 -0
  148. package/dist/__tests__/pipeline/sideBoxAfterText.test.js.map +1 -0
  149. package/dist/__tests__/pipeline/textWrap.test.d.ts +2 -0
  150. package/dist/__tests__/pipeline/textWrap.test.d.ts.map +1 -0
  151. package/dist/__tests__/pipeline/textWrap.test.js +453 -0
  152. package/dist/__tests__/pipeline/textWrap.test.js.map +1 -0
  153. package/dist/__tests__/preflight.test.js +30 -1
  154. package/dist/__tests__/preflight.test.js.map +1 -1
  155. package/dist/__tests__/prepareFonts.test.d.ts +2 -0
  156. package/dist/__tests__/prepareFonts.test.d.ts.map +1 -0
  157. package/dist/__tests__/prepareFonts.test.js +358 -0
  158. package/dist/__tests__/prepareFonts.test.js.map +1 -0
  159. package/dist/__tests__/presets/showcaseDesignOverflow.test.d.ts +2 -0
  160. package/dist/__tests__/presets/showcaseDesignOverflow.test.d.ts.map +1 -0
  161. package/dist/__tests__/presets/showcaseDesignOverflow.test.js +58 -0
  162. package/dist/__tests__/presets/showcaseDesignOverflow.test.js.map +1 -0
  163. package/dist/__tests__/svgFonts.test.d.ts +2 -0
  164. package/dist/__tests__/svgFonts.test.d.ts.map +1 -0
  165. package/dist/__tests__/svgFonts.test.js +286 -0
  166. package/dist/__tests__/svgFonts.test.js.map +1 -0
  167. package/dist/__tests__/table/booktabs.test.d.ts +2 -0
  168. package/dist/__tests__/table/booktabs.test.d.ts.map +1 -0
  169. package/dist/__tests__/table/booktabs.test.js +290 -0
  170. package/dist/__tests__/table/booktabs.test.js.map +1 -0
  171. package/dist/__tests__/textWrapMeasure.test.d.ts +2 -0
  172. package/dist/__tests__/textWrapMeasure.test.d.ts.map +1 -0
  173. package/dist/__tests__/textWrapMeasure.test.js +162 -0
  174. package/dist/__tests__/textWrapMeasure.test.js.map +1 -0
  175. package/dist/__tests__/verseLines.test.js +134 -4
  176. package/dist/__tests__/verseLines.test.js.map +1 -1
  177. package/dist/__tests__/vertical/measurePaint.test.js +16 -0
  178. package/dist/__tests__/vertical/measurePaint.test.js.map +1 -1
  179. package/dist/bitmapResolution.d.ts +42 -0
  180. package/dist/bitmapResolution.d.ts.map +1 -0
  181. package/dist/bitmapResolution.js +82 -0
  182. package/dist/bitmapResolution.js.map +1 -0
  183. package/dist/bundle/adapters.d.ts +31 -7
  184. package/dist/bundle/adapters.d.ts.map +1 -1
  185. package/dist/bundle/adapters.js +113 -34
  186. package/dist/bundle/adapters.js.map +1 -1
  187. package/dist/bundle/codec.d.ts +9 -2
  188. package/dist/bundle/codec.d.ts.map +1 -1
  189. package/dist/bundle/codec.js +25 -2
  190. package/dist/bundle/codec.js.map +1 -1
  191. package/dist/bundle/configVersion.d.ts +168 -10
  192. package/dist/bundle/configVersion.d.ts.map +1 -1
  193. package/dist/bundle/configVersion.js +414 -8
  194. package/dist/bundle/configVersion.js.map +1 -1
  195. package/dist/bundle/index.d.ts +5 -5
  196. package/dist/bundle/index.d.ts.map +1 -1
  197. package/dist/bundle/index.js +3 -3
  198. package/dist/bundle/index.js.map +1 -1
  199. package/dist/bundle/manifest.d.ts +12 -2
  200. package/dist/bundle/manifest.d.ts.map +1 -1
  201. package/dist/bundle/manifest.js +134 -7
  202. package/dist/bundle/manifest.js.map +1 -1
  203. package/dist/bundle/types.d.ts +32 -2
  204. package/dist/bundle/types.d.ts.map +1 -1
  205. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  206. package/dist/canvas-backend/blockRender.js +6 -4
  207. package/dist/canvas-backend/blockRender.js.map +1 -1
  208. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  209. package/dist/canvas-backend/headerFooter.js +3 -1
  210. package/dist/canvas-backend/headerFooter.js.map +1 -1
  211. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  212. package/dist/canvas-backend/renderResourceBlock.js +15 -1
  213. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  214. package/dist/columnRule.d.ts.map +1 -1
  215. package/dist/columnRule.js +5 -2
  216. package/dist/columnRule.js.map +1 -1
  217. package/dist/configWarnings.js +30 -3
  218. package/dist/configWarnings.js.map +1 -1
  219. package/dist/defaults/cjk.d.ts +2 -1
  220. package/dist/defaults/cjk.d.ts.map +1 -1
  221. package/dist/defaults/cjk.js +17 -1
  222. package/dist/defaults/cjk.js.map +1 -1
  223. package/dist/defaults/diagramStyle.d.ts.map +1 -1
  224. package/dist/defaults/diagramStyle.js +6 -0
  225. package/dist/defaults/diagramStyle.js.map +1 -1
  226. package/dist/defaults/headerFooter.d.ts +21 -6
  227. package/dist/defaults/headerFooter.d.ts.map +1 -1
  228. package/dist/defaults/headerFooter.js +37 -14
  229. package/dist/defaults/headerFooter.js.map +1 -1
  230. package/dist/defaults/headings.d.ts +5 -4
  231. package/dist/defaults/headings.d.ts.map +1 -1
  232. package/dist/defaults/headings.js +18 -4
  233. package/dist/defaults/headings.js.map +1 -1
  234. package/dist/defaults/index.d.ts +1 -1
  235. package/dist/defaults/index.d.ts.map +1 -1
  236. package/dist/defaults/index.js +1 -1
  237. package/dist/defaults/index.js.map +1 -1
  238. package/dist/defaults/layout.d.ts +35 -1
  239. package/dist/defaults/layout.d.ts.map +1 -1
  240. package/dist/defaults/layout.js +137 -1
  241. package/dist/defaults/layout.js.map +1 -1
  242. package/dist/defaults/parts.js +4 -4
  243. package/dist/defaults/parts.js.map +1 -1
  244. package/dist/defaults/tableStyle.d.ts.map +1 -1
  245. package/dist/defaults/tableStyle.js +50 -0
  246. package/dist/defaults/tableStyle.js.map +1 -1
  247. package/dist/defaults/toc.js +2 -2
  248. package/dist/defaults/verse.d.ts +2 -1
  249. package/dist/defaults/verse.d.ts.map +1 -1
  250. package/dist/defaults/verse.js +6 -1
  251. package/dist/defaults/verse.js.map +1 -1
  252. package/dist/design/cjkText.d.ts +34 -0
  253. package/dist/design/cjkText.d.ts.map +1 -0
  254. package/dist/design/cjkText.js +82 -0
  255. package/dist/design/cjkText.js.map +1 -0
  256. package/dist/design/layout.d.ts +15 -1
  257. package/dist/design/layout.d.ts.map +1 -1
  258. package/dist/design/layout.js +130 -8
  259. package/dist/design/layout.js.map +1 -1
  260. package/dist/design/richText.d.ts +24 -0
  261. package/dist/design/richText.d.ts.map +1 -1
  262. package/dist/design/richText.js +37 -1
  263. package/dist/design/richText.js.map +1 -1
  264. package/dist/fonts/buildWithFonts.d.ts +19 -0
  265. package/dist/fonts/buildWithFonts.d.ts.map +1 -0
  266. package/dist/fonts/buildWithFonts.js +16 -0
  267. package/dist/fonts/buildWithFonts.js.map +1 -0
  268. package/dist/fonts/faces.d.ts +88 -0
  269. package/dist/fonts/faces.d.ts.map +1 -0
  270. package/dist/fonts/faces.js +264 -0
  271. package/dist/fonts/faces.js.map +1 -0
  272. package/dist/fonts/fontSet.d.ts +34 -0
  273. package/dist/fonts/fontSet.d.ts.map +1 -0
  274. package/dist/fonts/fontSet.js +173 -0
  275. package/dist/fonts/fontSet.js.map +1 -0
  276. package/dist/fonts/prepare.d.ts +120 -0
  277. package/dist/fonts/prepare.d.ts.map +1 -0
  278. package/dist/fonts/prepare.js +375 -0
  279. package/dist/fonts/prepare.js.map +1 -0
  280. package/dist/frontmatter.d.ts +20 -0
  281. package/dist/frontmatter.d.ts.map +1 -1
  282. package/dist/frontmatter.js +69 -3
  283. package/dist/frontmatter.js.map +1 -1
  284. package/dist/html-backend.d.ts +17 -0
  285. package/dist/html-backend.d.ts.map +1 -1
  286. package/dist/html-backend.js +109 -7
  287. package/dist/html-backend.js.map +1 -1
  288. package/dist/index.d.ts +35 -10
  289. package/dist/index.d.ts.map +1 -1
  290. package/dist/index.js +23 -4
  291. package/dist/index.js.map +1 -1
  292. package/dist/measure/bidiLines.d.ts +4 -3
  293. package/dist/measure/bidiLines.d.ts.map +1 -1
  294. package/dist/measure/bidiLines.js +12 -7
  295. package/dist/measure/bidiLines.js.map +1 -1
  296. package/dist/measure/cache.d.ts.map +1 -1
  297. package/dist/measure/cache.js +32 -2
  298. package/dist/measure/cache.js.map +1 -1
  299. package/dist/measure/canvas.d.ts +15 -0
  300. package/dist/measure/canvas.d.ts.map +1 -1
  301. package/dist/measure/canvas.js +68 -4
  302. package/dist/measure/canvas.js.map +1 -1
  303. package/dist/measure/cjk.d.ts.map +1 -1
  304. package/dist/measure/cjk.js +4 -1
  305. package/dist/measure/cjk.js.map +1 -1
  306. package/dist/measure/cjkClasses.d.ts +17 -0
  307. package/dist/measure/cjkClasses.d.ts.map +1 -1
  308. package/dist/measure/cjkClasses.js +41 -1
  309. package/dist/measure/cjkClasses.js.map +1 -1
  310. package/dist/measure/cjkCompose.d.ts.map +1 -1
  311. package/dist/measure/cjkCompose.js +126 -10
  312. package/dist/measure/cjkCompose.js.map +1 -1
  313. package/dist/measure/cjkPunctuation.d.ts +18 -1
  314. package/dist/measure/cjkPunctuation.d.ts.map +1 -1
  315. package/dist/measure/cjkPunctuation.js +13 -1
  316. package/dist/measure/cjkPunctuation.js.map +1 -1
  317. package/dist/measure/font.d.ts +8 -0
  318. package/dist/measure/font.d.ts.map +1 -1
  319. package/dist/measure/font.js +13 -2
  320. package/dist/measure/font.js.map +1 -1
  321. package/dist/measure/fontString.d.ts +14 -0
  322. package/dist/measure/fontString.d.ts.map +1 -0
  323. package/dist/measure/fontString.js +55 -0
  324. package/dist/measure/fontString.js.map +1 -0
  325. package/dist/measure/hardBreaks.d.ts.map +1 -1
  326. package/dist/measure/hardBreaks.js +13 -1
  327. package/dist/measure/hardBreaks.js.map +1 -1
  328. package/dist/measure/index.d.ts +7 -4
  329. package/dist/measure/index.d.ts.map +1 -1
  330. package/dist/measure/index.js +7 -5
  331. package/dist/measure/index.js.map +1 -1
  332. package/dist/measure/plain.d.ts.map +1 -1
  333. package/dist/measure/plain.js +11 -7
  334. package/dist/measure/plain.js.map +1 -1
  335. package/dist/measure/rich.d.ts.map +1 -1
  336. package/dist/measure/rich.js +9 -6
  337. package/dist/measure/rich.js.map +1 -1
  338. package/dist/measure/types.d.ts +53 -3
  339. package/dist/measure/types.d.ts.map +1 -1
  340. package/dist/measure/types.js +67 -3
  341. package/dist/measure/types.js.map +1 -1
  342. package/dist/parse/citations.d.ts.map +1 -1
  343. package/dist/parse/citations.js +7 -3
  344. package/dist/parse/citations.js.map +1 -1
  345. package/dist/pipeline/build.d.ts +36 -0
  346. package/dist/pipeline/build.d.ts.map +1 -1
  347. package/dist/pipeline/build.js +1482 -153
  348. package/dist/pipeline/build.js.map +1 -1
  349. package/dist/pipeline/buildBlockKind.d.ts +5 -0
  350. package/dist/pipeline/buildBlockKind.d.ts.map +1 -1
  351. package/dist/pipeline/buildBlockKind.js +34 -7
  352. package/dist/pipeline/buildBlockKind.js.map +1 -1
  353. package/dist/pipeline/buildMeasurement.d.ts +6 -0
  354. package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
  355. package/dist/pipeline/buildMeasurement.js +4 -3
  356. package/dist/pipeline/buildMeasurement.js.map +1 -1
  357. package/dist/pipeline/calloutLayout.d.ts +59 -0
  358. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  359. package/dist/pipeline/calloutLayout.js +287 -65
  360. package/dist/pipeline/calloutLayout.js.map +1 -1
  361. package/dist/pipeline/columnBalancing.d.ts +20 -0
  362. package/dist/pipeline/columnBalancing.d.ts.map +1 -1
  363. package/dist/pipeline/columnBalancing.js +27 -4
  364. package/dist/pipeline/columnBalancing.js.map +1 -1
  365. package/dist/pipeline/columnsGroup.d.ts +61 -0
  366. package/dist/pipeline/columnsGroup.d.ts.map +1 -0
  367. package/dist/pipeline/columnsGroup.js +88 -0
  368. package/dist/pipeline/columnsGroup.js.map +1 -0
  369. package/dist/pipeline/config.d.ts +28 -0
  370. package/dist/pipeline/config.d.ts.map +1 -1
  371. package/dist/pipeline/config.js +67 -8
  372. package/dist/pipeline/config.js.map +1 -1
  373. package/dist/pipeline/contentWarnings.d.ts +16 -0
  374. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  375. package/dist/pipeline/contentWarnings.js +141 -17
  376. package/dist/pipeline/contentWarnings.js.map +1 -1
  377. package/dist/pipeline/floatPlacement.d.ts +48 -4
  378. package/dist/pipeline/floatPlacement.d.ts.map +1 -1
  379. package/dist/pipeline/floatPlacement.js +43 -5
  380. package/dist/pipeline/floatPlacement.js.map +1 -1
  381. package/dist/pipeline/floatSlots.d.ts +16 -3
  382. package/dist/pipeline/floatSlots.d.ts.map +1 -1
  383. package/dist/pipeline/floatSlots.js +15 -6
  384. package/dist/pipeline/floatSlots.js.map +1 -1
  385. package/dist/pipeline/flowColumns.d.ts +41 -0
  386. package/dist/pipeline/flowColumns.d.ts.map +1 -0
  387. package/dist/pipeline/flowColumns.js +116 -0
  388. package/dist/pipeline/flowColumns.js.map +1 -0
  389. package/dist/pipeline/headerFooter.d.ts +4 -1
  390. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  391. package/dist/pipeline/headerFooter.js +19 -5
  392. package/dist/pipeline/headerFooter.js.map +1 -1
  393. package/dist/pipeline/measureContentBlock.d.ts +20 -1
  394. package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
  395. package/dist/pipeline/measureContentBlock.js +35 -11
  396. package/dist/pipeline/measureContentBlock.js.map +1 -1
  397. package/dist/pipeline/partPalette.d.ts +3 -0
  398. package/dist/pipeline/partPalette.d.ts.map +1 -1
  399. package/dist/pipeline/partPalette.js +5 -0
  400. package/dist/pipeline/partPalette.js.map +1 -1
  401. package/dist/pipeline/placement.d.ts +19 -0
  402. package/dist/pipeline/placement.d.ts.map +1 -1
  403. package/dist/pipeline/placement.js +12 -2
  404. package/dist/pipeline/placement.js.map +1 -1
  405. package/dist/pipeline/resourceLayout.d.ts +41 -0
  406. package/dist/pipeline/resourceLayout.d.ts.map +1 -1
  407. package/dist/pipeline/resourceLayout.js +148 -18
  408. package/dist/pipeline/resourceLayout.js.map +1 -1
  409. package/dist/pipeline/styles.d.ts.map +1 -1
  410. package/dist/pipeline/styles.js +8 -5
  411. package/dist/pipeline/styles.js.map +1 -1
  412. package/dist/pipeline/textWrap.d.ts +94 -0
  413. package/dist/pipeline/textWrap.d.ts.map +1 -0
  414. package/dist/pipeline/textWrap.js +188 -0
  415. package/dist/pipeline/textWrap.js.map +1 -0
  416. package/dist/pipeline/toc.d.ts.map +1 -1
  417. package/dist/pipeline/toc.js +6 -1
  418. package/dist/pipeline/toc.js.map +1 -1
  419. package/dist/pipeline/verseLines.d.ts +22 -2
  420. package/dist/pipeline/verseLines.d.ts.map +1 -1
  421. package/dist/pipeline/verseLines.js +52 -4
  422. package/dist/pipeline/verseLines.js.map +1 -1
  423. package/dist/preflight.d.ts +46 -1
  424. package/dist/preflight.d.ts.map +1 -1
  425. package/dist/preflight.js +42 -7
  426. package/dist/preflight.js.map +1 -1
  427. package/dist/svg/fontRegistry.d.ts +66 -0
  428. package/dist/svg/fontRegistry.d.ts.map +1 -0
  429. package/dist/svg/fontRegistry.js +294 -0
  430. package/dist/svg/fontRegistry.js.map +1 -0
  431. package/dist/svg/fonts.d.ts +140 -0
  432. package/dist/svg/fonts.d.ts.map +1 -0
  433. package/dist/svg/fonts.js +642 -0
  434. package/dist/svg/fonts.js.map +1 -0
  435. package/dist/svg/image.d.ts +44 -0
  436. package/dist/svg/image.d.ts.map +1 -0
  437. package/dist/svg/image.js +67 -0
  438. package/dist/svg/image.js.map +1 -0
  439. package/dist/table/booktabs.d.ts +37 -0
  440. package/dist/table/booktabs.d.ts.map +1 -0
  441. package/dist/table/booktabs.js +82 -0
  442. package/dist/table/booktabs.js.map +1 -0
  443. package/dist/types.d.ts +365 -10
  444. package/dist/types.d.ts.map +1 -1
  445. package/dist/util/stableHash.d.ts +20 -0
  446. package/dist/util/stableHash.d.ts.map +1 -0
  447. package/dist/util/stableHash.js +59 -0
  448. package/dist/util/stableHash.js.map +1 -0
  449. package/dist/vdt.d.ts +249 -9
  450. package/dist/vdt.d.ts.map +1 -1
  451. package/dist/vdt.js +3 -2
  452. package/dist/vdt.js.map +1 -1
  453. package/dist/word/index.d.ts +1 -1
  454. package/dist/word/index.d.ts.map +1 -1
  455. package/dist/word/index.js +1 -1
  456. package/dist/word/index.js.map +1 -1
  457. package/dist/word/toMarkdown.d.ts +10 -0
  458. package/dist/word/toMarkdown.d.ts.map +1 -1
  459. package/dist/word/toMarkdown.js +16 -1
  460. package/dist/word/toMarkdown.js.map +1 -1
  461. package/dist/worker/client.d.ts +8 -0
  462. package/dist/worker/client.d.ts.map +1 -1
  463. package/dist/worker/client.js +22 -0
  464. package/dist/worker/client.js.map +1 -1
  465. package/dist/worker/fonts.d.ts +1 -13
  466. package/dist/worker/fonts.d.ts.map +1 -1
  467. package/dist/worker/fonts.js +3 -61
  468. package/dist/worker/fonts.js.map +1 -1
  469. package/dist/worker/layout.worker.js +23 -16
  470. package/dist/worker/layout.worker.js.map +1 -1
  471. package/package.json +1 -1
@@ -9,9 +9,11 @@ import { DEFAULT_PAGE_CONFIG } from '../defaults/page';
9
9
  import { dimensionToPx } from '../units';
10
10
  import { KNOWN_CONTAINERS } from '../parse/blockParser';
11
11
  import { codeFenceOpen } from '../parse/codeFence';
12
+ import { hasCJK } from '../measure/cjk';
12
13
  /**
13
- * The configuration rules this engine writes: 9 since #620 (8 from postext
14
- * 1.5). Thirteen rules changed in 1.5 and two since, and a configuration
14
+ * The configuration rules this engine writes: 11 since #632 (10 from
15
+ * postext 1.24, 9 from 1.23, 8 from 1.5). Thirteen rules changed in 1.5 and
16
+ * more since, and a configuration
15
17
  * stored under an older
16
18
  * number (or none) is read through {@link migrateConfig}:
17
19
  * - 3: a heading level's `breakBefore` (and a heading style's) merges field
@@ -79,6 +81,40 @@ import { codeFenceOpen } from '../parse/codeFence';
79
81
  * - a ```` ``` ```` or `~~~` fence opens a code block (#624,
80
82
  * `codeStyle.blocks`), where up to 1.22 its lines were read as
81
83
  * Markdown ({@link pinLegacyCodeBlocks}).
84
+ * - 10, two rules:
85
+ * - a line of a poem set line by line that is a little wider than the
86
+ * measure tightens its word spaces, down to `bodyText.minWordSpacing`,
87
+ * and stays on one line (`bodyText.verse.tighten`, #620 follow-up),
88
+ * where 1.23 turned it over ({@link pinLegacyVerseTightening});
89
+ * - a text element of a heading design or a part page that sets no
90
+ * `overflow` wraps onto more lines (#628), where up to 1.23 it was cut
91
+ * with an ellipsis ({@link pinLegacyDesignOverflow}).
92
+ * - 11, seven rules:
93
+ * - a horizontal page on a character grid (`cjk.grid.enabled`) is not
94
+ * balanced unless `headings.balancing.enabled` says so (#632), where
95
+ * up to 1.24 it was ({@link pinLegacyGridBalancing});
96
+ * - a table placed `here` follows its style's `overflow`
97
+ * (`tableStyle.splitInline`, #634): one that does not fit the room
98
+ * left in its column is cut between rows, where up to 1.24 it moved
99
+ * whole to the next column ({@link pinLegacyInlineTableSplit});
100
+ * - a `:::columns` fence outside a box sets its blocks in sub-columns,
101
+ * and a box that splits may cut inside a group (`layout.flowColumns`,
102
+ * #634), where up to 1.24 such a fence was ignored and a box never cut
103
+ * inside a group ({@link pinLegacyFlowColumns});
104
+ * - a line breaks inside a book title only where two of its characters
105
+ * stand on either side (`cjk.titleMinChars: 2`, #637), where up to
106
+ * 1.24 it could leave one ({@link pinLegacyTitleBreaks});
107
+ * - the circled numbers ①–⑳ and their kin are Chinese characters in CJK
108
+ * text (`cjk.circledNumbers: 'cjk'`, #637), where up to 1.24 they were
109
+ * Western letters ({@link pinLegacyCircledNumbers});
110
+ * - a design text in Chinese or Japanese takes the body's CJK rules
111
+ * (`cjk.composeDesignText`, #637), where up to 1.24 it was wrapped at
112
+ * spaces with every mark at its own advance ({@link
113
+ * pinLegacyDesignText});
114
+ * - under a page-span opener set over several text columns, the head of
115
+ * the opener's own column is a slot for a top float
116
+ * (`layout.floatsUnderOpener`, #639), where up to 1.24 such a float
117
+ * landed from the second column on ({@link pinLegacyOpenerHeadFloats}).
82
118
  *
83
119
  * A configuration stored without a version was written for postext 1.4 or
84
120
  * earlier. One stored under 3 to 7 was written by a 1.5 prerelease, and
@@ -88,9 +124,12 @@ import { codeFenceOpen } from '../parse/codeFence';
88
124
  * version-6, version-7 and version-8 pins, under 6 the version-7 and
89
125
  * version-8 pins, under 7 the version-8 pins. One stored under 8 was
90
126
  * written by postext 1.5 to 1.22 and gets the version-9 pins (which every
91
- * older one gets too).
127
+ * older one gets too); one stored under 9 was written by postext 1.23 and
128
+ * gets the version-10 pins (which every older one gets too); one stored
129
+ * under 10 was written by postext 1.24 and gets the version-11 pins (which
130
+ * every older one gets too).
92
131
  */
93
- export const CONFIG_VERSION = 9;
132
+ export const CONFIG_VERSION = 11;
94
133
  /** The rules that merge a partial heading break onto its level's. */
95
134
  const HEADING_BREAK_RULES = 3;
96
135
  /** The rules that set a formula's em at the documented size. */
@@ -131,6 +170,28 @@ const PAIRED_INDENT_RULES = 9;
131
170
  const HARD_BREAK_RULES = 9;
132
171
  /** The rules that read a code fence as a code block. */
133
172
  const CODE_BLOCK_RULES = 9;
173
+ /** The rules that tighten a line of verse a little too wide for the
174
+ * measure instead of turning it over. */
175
+ const VERSE_TIGHTEN_RULES = 10;
176
+ /** The rules that wrap a heading or part design text that sets no
177
+ * `overflow`. */
178
+ const DESIGN_OVERFLOW_RULES = 10;
179
+ /** The rules that leave a horizontal page on a character grid unbalanced
180
+ * by default. */
181
+ const GRID_BALANCING_RULES = 11;
182
+ /** The rules that keep two characters of a book title on either side of a
183
+ * line break, set circled numbers as Chinese characters and compose CJK
184
+ * design text (#637). */
185
+ const TITLE_BREAK_RULES = 11;
186
+ const CIRCLED_NUMBER_RULES = 11;
187
+ const DESIGN_TEXT_RULES = 11;
188
+ /** The rules that cut an inline table between rows. */
189
+ const INLINE_TABLE_SPLIT_RULES = 11;
190
+ /** The rules that set `:::columns` in the running text and cut groups. */
191
+ const FLOW_COLUMNS_RULES = 11;
192
+ /** The rules that offer a float the head of a page-span opener's own
193
+ * column. */
194
+ const OPENER_HEAD_FLOAT_RULES = 11;
134
195
  /** Up to 1.4 a drop cap with no `fontSize` was as tall as the line boxes it
135
196
  * spans divided by this, the share of a letter's size its capitals take. */
136
197
  const CAP_HEIGHT = 0.72;
@@ -461,6 +522,214 @@ function mayHavePlainPoems(content) {
461
522
  return hasPlainPoem(content);
462
523
  return content.some(hasPlainPoem);
463
524
  }
525
+ /**
526
+ * A configuration written before the #620 follow-up (postext 1.23 or
527
+ * earlier), pinned to the way 1.23 set a line of a poem in the line layout
528
+ * that is wider than the measure: `bodyText.verse.tighten: false`, the line
529
+ * turned over at its natural word spacing, where today one that fits with
530
+ * its word spaces tightened down to `bodyText.minWordSpacing` stays on one
531
+ * line. A configuration that names the setting already is returned as it
532
+ * is (the same object).
533
+ */
534
+ export function pinLegacyVerseTightening(config) {
535
+ const bodyText = isRecord(config.bodyText) ? config.bodyText : {};
536
+ const verse = isRecord(bodyText.verse) ? bodyText.verse : {};
537
+ if (verse.tighten !== undefined)
538
+ return config;
539
+ return { ...config, bodyText: { ...bodyText, verse: { ...verse, tighten: false } } };
540
+ }
541
+ /** `slot` (a design slot as stored) with `overflow: 'ellipsis-end'` written
542
+ * on every text element that sets none; undefined when there is none. A
543
+ * legacy-shaped element (no `placement`) is left alone: its migration
544
+ * writes the ellipsis already. */
545
+ function pinSlotOverflow(slot) {
546
+ if (!isRecord(slot) || !Array.isArray(slot.elements))
547
+ return undefined;
548
+ let changed = false;
549
+ const elements = slot.elements.map((el) => {
550
+ if (!isRecord(el) || el.kind !== 'text' || el.overflow !== undefined || !isRecord(el.placement))
551
+ return el;
552
+ changed = true;
553
+ return { ...el, overflow: 'ellipsis-end' };
554
+ });
555
+ return changed ? { ...slot, elements } : undefined;
556
+ }
557
+ /** `entries` (heading levels or heading styles) with their
558
+ * `advancedDesign.slot` pinned by {@link pinSlotOverflow}; undefined when
559
+ * none changed. */
560
+ function pinAdvancedDesigns(entries) {
561
+ if (!Array.isArray(entries))
562
+ return undefined;
563
+ let changed = false;
564
+ const out = entries.map((entry) => {
565
+ if (!isRecord(entry) || !isRecord(entry.advancedDesign))
566
+ return entry;
567
+ const slot = pinSlotOverflow(entry.advancedDesign.slot);
568
+ if (!slot)
569
+ return entry;
570
+ changed = true;
571
+ return { ...entry, advancedDesign: { ...entry.advancedDesign, slot } };
572
+ });
573
+ return changed ? out : undefined;
574
+ }
575
+ /** The heading and part designs of `config` (a configuration, or the
576
+ * overrides of its HTML viewer) pinned by {@link pinSlotOverflow}; the
577
+ * same object when nothing changed. */
578
+ function pinDesignOverflows(config) {
579
+ let out = config;
580
+ const headings = config.headings;
581
+ if (isRecord(headings)) {
582
+ const levels = pinAdvancedDesigns(headings.levels);
583
+ if (levels)
584
+ out = { ...out, headings: { ...headings, levels } };
585
+ }
586
+ const styles = pinAdvancedDesigns(config.headingStyles);
587
+ if (styles)
588
+ out = { ...out, headingStyles: styles };
589
+ const parts = config.parts;
590
+ if (isRecord(parts)) {
591
+ const design = pinSlotOverflow(parts.design);
592
+ const versoDesign = pinSlotOverflow(parts.versoDesign);
593
+ if (design || versoDesign) {
594
+ out = { ...out, parts: { ...parts, ...(design ? { design } : {}), ...(versoDesign ? { versoDesign } : {}) } };
595
+ }
596
+ }
597
+ return out;
598
+ }
599
+ /**
600
+ * A configuration written before #628 (postext 1.23 or earlier), pinned to
601
+ * the way its heading designs and part pages set a text too wide for its
602
+ * room: every text element of `headings.levels[].advancedDesign.slot`,
603
+ * `headingStyles[].advancedDesign.slot`, `parts.design` and
604
+ * `parts.versoDesign` that sets no `overflow` gets `'ellipsis-end'`, the
605
+ * default up to 1.23, where today such an element wraps. The same designs
606
+ * in its HTML viewer's overrides are pinned too. Running heads, folios and
607
+ * the contents' part rows keep the ellipsis by default, so they are left
608
+ * alone. A configuration with no such element is returned as it is (the
609
+ * same object).
610
+ */
611
+ export function pinLegacyDesignOverflow(config) {
612
+ let out = pinDesignOverflows(config);
613
+ const viewer = out.htmlViewer;
614
+ if (isRecord(viewer) && isRecord(viewer.overrides)) {
615
+ const overrides = pinDesignOverflows(viewer.overrides);
616
+ if (overrides !== viewer.overrides)
617
+ out = { ...out, htmlViewer: { ...viewer, overrides } };
618
+ }
619
+ return out;
620
+ }
621
+ /**
622
+ * A configuration written before #632 (postext 1.24 or earlier), pinned to
623
+ * the way 1.24 balanced a horizontal page on a character grid: a config
624
+ * with `cjk.grid.enabled` in horizontal text that does not set
625
+ * `headings.balancing.enabled` gets `true`, where today such a page is
626
+ * not balanced by default. (The levers it runs keep every character in
627
+ * its cell now, which 1.24's loose paragraphs did not.) A vertical one
628
+ * was not balanced then either, and any other configuration is returned
629
+ * as it is (the same object).
630
+ */
631
+ export function pinLegacyGridBalancing(config) {
632
+ if (!isRecord(config.cjk) || !isRecord(config.cjk.grid) || config.cjk.grid.enabled !== true)
633
+ return config;
634
+ if (isRecord(config.layout) && config.layout.writingMode === 'vertical-rl')
635
+ return config;
636
+ const headings = isRecord(config.headings) ? config.headings : {};
637
+ const balancing = isRecord(headings.balancing) ? headings.balancing : {};
638
+ if (balancing.enabled !== undefined)
639
+ return config;
640
+ return { ...config, headings: { ...headings, balancing: { ...balancing, enabled: true } } };
641
+ }
642
+ /**
643
+ * A configuration written before #634 (postext 1.24 or earlier), pinned to
644
+ * the way 1.24 placed a table set `here`: `tableStyle.splitInline: false`,
645
+ * so an inline table that does not fit the room left in its column moves
646
+ * whole to the next one, where today it is cut between rows. The named
647
+ * table styles inherit it. A configuration that sets `splitInline` is
648
+ * returned as it is (the same object).
649
+ */
650
+ export function pinLegacyInlineTableSplit(config) {
651
+ const tableStyle = isRecord(config.tableStyle) ? config.tableStyle : {};
652
+ if (tableStyle.splitInline !== undefined)
653
+ return config;
654
+ return { ...config, tableStyle: { ...tableStyle, splitInline: false } };
655
+ }
656
+ /**
657
+ * A configuration written before #634 (postext 1.24 or earlier), pinned to
658
+ * the way 1.24 read `:::columns`: `layout.flowColumns: false`, so a fence
659
+ * outside a box is ignored (its blocks run at the full measure) and a box
660
+ * that splits never cuts inside a group, where today the one sets its
661
+ * blocks in sub-columns and the other cuts between them. A configuration
662
+ * that sets `flowColumns` is returned as it is (the same object).
663
+ */
664
+ export function pinLegacyFlowColumns(config) {
665
+ const layout = isRecord(config.layout) ? config.layout : {};
666
+ if (layout.flowColumns !== undefined)
667
+ return config;
668
+ return { ...config, layout: { ...layout, flowColumns: false } };
669
+ }
670
+ /**
671
+ * A configuration written before #639 (postext 1.24 or earlier), pinned to
672
+ * the slots 1.24 offered under a page-span opener:
673
+ * `layout.floatsUnderOpener: false`, so a float fenced or embedded right
674
+ * after an opener set over several text columns lands from the second
675
+ * column on, where today it takes the head of the opener's own column,
676
+ * under its band. A configuration that sets `floatsUnderOpener` is
677
+ * returned as it is (the same object).
678
+ */
679
+ export function pinLegacyOpenerHeadFloats(config) {
680
+ const layout = isRecord(config.layout) ? config.layout : {};
681
+ if (layout.floatsUnderOpener !== undefined)
682
+ return config;
683
+ return { ...config, layout: { ...layout, floatsUnderOpener: false } };
684
+ }
685
+ /** Whether a configuration sets a page-span heading: a heading level or a
686
+ * heading style with `span: 'page'` (no level spans the page by
687
+ * default). */
688
+ function setsPageSpanHeading(config) {
689
+ const spans = (entries) => Array.isArray(entries) && entries.some((e) => isRecord(e) && e.span === 'page');
690
+ return (isRecord(config.headings) && spans(config.headings.levels)) || spans(config.headingStyles);
691
+ }
692
+ /** A `:::columns` opening fence on a line of its own. */
693
+ const COLUMNS_FENCE_LINE_RE = /^[^\S\n]*:::[^\S\n]*columns[^\S\n]*(?:\{[^}\n]*\})?[^\S\n]*$/m;
694
+ /** Whether markdown may hold a `:::columns` group. Unknown content
695
+ * (undefined) may. */
696
+ function mayHaveColumnGroups(content) {
697
+ if (content === undefined)
698
+ return true;
699
+ if (typeof content === 'string')
700
+ return COLUMNS_FENCE_LINE_RE.test(content);
701
+ return content.some((text) => COLUMNS_FENCE_LINE_RE.test(text));
702
+ }
703
+ /** Whether markdown holds a poem set line by line: a `:::verse` fence
704
+ * naming `layout=lines`, or naming no layout over lines with no
705
+ * hemistich separator, unless the configuration sets such poems as
706
+ * bayts (`bayt`, `bodyText.verse.layout: 'bayt'`). */
707
+ function hasLinePoem(text, bayt) {
708
+ if (!text.includes(':::'))
709
+ return false;
710
+ for (const m of text.matchAll(VERSE_POEM_RE)) {
711
+ const layout = m[1] ? /\blayout\s*=\s*"?([a-z]*)/.exec(m[1])?.[1] : undefined;
712
+ if (layout === 'lines')
713
+ return true;
714
+ if (layout && layout !== 'auto')
715
+ continue;
716
+ const body = m[2] ?? '';
717
+ if (!bayt && body.trim() !== '' && !body.includes('||') && !/\s\\\\\s/.test(body))
718
+ return true;
719
+ }
720
+ return false;
721
+ }
722
+ /** Whether markdown may hold a poem set line by line under `config` (see
723
+ * {@link hasLinePoem}). Unknown content (undefined) may. */
724
+ function mayHaveLinePoems(content, config) {
725
+ if (content === undefined)
726
+ return true;
727
+ const verse = isRecord(config.bodyText) && isRecord(config.bodyText.verse) ? config.bodyText.verse : {};
728
+ const bayt = verse.layout === 'bayt';
729
+ if (typeof content === 'string')
730
+ return hasLinePoem(content, bayt);
731
+ return content.some((text) => hasLinePoem(text, bayt));
732
+ }
464
733
  /**
465
734
  * A configuration written before #620 (postext 1.22 or earlier), pinned to
466
735
  * the indents of its paragraph styles: a style that sets both
@@ -886,6 +1155,86 @@ function mayHaveMaths(content) {
886
1155
  return content.includes('$');
887
1156
  return content.some((text) => text.includes('$'));
888
1157
  }
1158
+ /** The `cjk` of a configuration, `{}` when it has none. */
1159
+ function cjkOf(config) {
1160
+ return isRecord(config.cjk) ? config.cjk : {};
1161
+ }
1162
+ /**
1163
+ * A configuration written before #637 (postext 1.24 or earlier), pinned to
1164
+ * the way 1.24 broke lines inside a book title: `cjk.titleMinChars: 1`, a
1165
+ * line breaking anywhere in a `《…》` or `〈…〉` title the level allows
1166
+ * (`《說|文》`), where today two characters of it stand on either side of a
1167
+ * break. A configuration that sets `titleMinChars` is returned as it is
1168
+ * (the same object).
1169
+ */
1170
+ export function pinLegacyTitleBreaks(config) {
1171
+ const cjk = cjkOf(config);
1172
+ if (cjk.titleMinChars !== undefined)
1173
+ return config;
1174
+ return { ...config, cjk: { ...cjk, titleMinChars: 1 } };
1175
+ }
1176
+ /**
1177
+ * A configuration written before #637 (postext 1.24 or earlier), pinned to
1178
+ * the way 1.24 set the circled numbers ①–⑳ and their kin in CJK text:
1179
+ * `cjk.circledNumbers: 'western'`, as Western letters with the Han–Latin
1180
+ * space on both sides and a line free to end on one, where today they are
1181
+ * Chinese characters kept off a line end. A configuration that sets
1182
+ * `circledNumbers` is returned as it is (the same object).
1183
+ */
1184
+ export function pinLegacyCircledNumbers(config) {
1185
+ const cjk = cjkOf(config);
1186
+ if (cjk.circledNumbers !== undefined)
1187
+ return config;
1188
+ return { ...config, cjk: { ...cjk, circledNumbers: 'western' } };
1189
+ }
1190
+ /**
1191
+ * A configuration written before #637 (postext 1.24 or earlier), pinned to
1192
+ * the way 1.24 set design text in Chinese or Japanese (openers, heading
1193
+ * designs, running heads, page designs): `cjk.composeDesignText: false`,
1194
+ * wrapped at spaces with every mark at the font's own advance, where
1195
+ * today it takes the body's CJK rules. A configuration that sets
1196
+ * `composeDesignText` is returned as it is (the same object).
1197
+ */
1198
+ export function pinLegacyDesignText(config) {
1199
+ const cjk = cjkOf(config);
1200
+ if (cjk.composeDesignText !== undefined)
1201
+ return config;
1202
+ return { ...config, cjk: { ...cjk, composeDesignText: false } };
1203
+ }
1204
+ /** A book title in brackets (《》 〈〉), or a `:book[…]` title. */
1205
+ const BOOK_TITLE_RE = /[《〈︽︿]|:book\[/;
1206
+ /** A circled, parenthesized or full-stop number or letter (①, ⑴, ⒈, ⓐ, ❶,
1207
+ * ➀). */
1208
+ const CIRCLED_RE = /[\u2460-\u24FF\u2776-\u2793]/;
1209
+ /** Whether markdown may set a book title. Unknown content (undefined)
1210
+ * may. */
1211
+ function mayHaveBookTitles(content) {
1212
+ if (content === undefined)
1213
+ return true;
1214
+ if (typeof content === 'string')
1215
+ return BOOK_TITLE_RE.test(content);
1216
+ return content.some((text) => BOOK_TITLE_RE.test(text));
1217
+ }
1218
+ /** Whether markdown may set a circled number. Unknown content (undefined)
1219
+ * may. */
1220
+ function mayHaveCircledNumbers(content) {
1221
+ if (content === undefined)
1222
+ return true;
1223
+ if (typeof content === 'string')
1224
+ return CIRCLED_RE.test(content);
1225
+ return content.some((text) => CIRCLED_RE.test(text));
1226
+ }
1227
+ /** Whether a design text may hold CJK: the markdown it prints from (a
1228
+ * heading, an attribute, a running head) or the configuration's own text
1229
+ * (a literal in a design element, a label). Unknown content (undefined)
1230
+ * may. */
1231
+ function mayHaveCjkDesignText(content, config) {
1232
+ if (content === undefined)
1233
+ return true;
1234
+ if (typeof content === 'string' ? hasCJK(content) : content.some(hasCJK))
1235
+ return true;
1236
+ return hasCJK(JSON.stringify(config));
1237
+ }
889
1238
  /**
890
1239
  * A configuration stored under `configVersion` (see {@link CONFIG_VERSION}),
891
1240
  * in today's terms. One with no version (a number is expected; anything
@@ -916,8 +1265,23 @@ function mayHaveMaths(content) {
916
1265
  * none, its paragraph styles' indents by {@link pinLegacyPairedIndents},
917
1266
  * its forced line breaks by {@link pinLegacyHardBreaks}, unless
918
1267
  * `options.content` shows none, and its code fences by {@link
919
- * pinLegacyCodeBlocks}, unless `options.content` shows none. A current one
920
- * is returned as it is (the same object).
1268
+ * pinLegacyCodeBlocks}, unless `options.content` shows none; one older
1269
+ * than 10 has its verse turnovers pinned by {@link
1270
+ * pinLegacyVerseTightening}, unless `options.content` shows no poem set
1271
+ * line by line, the text elements of its heading and part designs
1272
+ * that set no `overflow` by {@link pinLegacyDesignOverflow}; one older
1273
+ * than 11 has the balancing of a horizontal page on a character grid
1274
+ * pinned by {@link pinLegacyGridBalancing}, and its inline tables by {@link
1275
+ * pinLegacyInlineTableSplit}, unless `options.content` shows it embeds no
1276
+ * resource, its `:::columns` groups by {@link pinLegacyFlowColumns},
1277
+ * unless `options.content` shows none, its book titles by {@link pinLegacyTitleBreaks}, unless
1278
+ * `options.content` shows none, its circled numbers by {@link
1279
+ * pinLegacyCircledNumbers}, unless `options.content` shows none, and its
1280
+ * design text by {@link pinLegacyDesignText}, unless neither
1281
+ * `options.content` nor the configuration holds CJK text, and the slots
1282
+ * under its page-span openers by {@link pinLegacyOpenerHeadFloats}, when
1283
+ * it sets a heading level or style with `span: 'page'`, unless
1284
+ * `options.content` shows no heading. A current one is returned as it is (the same object).
921
1285
  * Migrate a stored configuration once and store it again under
922
1286
  * `CONFIG_VERSION`: the maths pin multiplies a scale, so a configuration
923
1287
  * read twice under its old number would grow twice.
@@ -958,6 +1322,24 @@ export function migrateConfig(config, configVersion, options = {}) {
958
1322
  out = pinLegacyHardBreaks(out);
959
1323
  if (rules < CODE_BLOCK_RULES && mayHaveCodeFences(content))
960
1324
  out = pinLegacyCodeBlocks(out);
1325
+ if (rules < VERSE_TIGHTEN_RULES && mayHaveLinePoems(content, out))
1326
+ out = pinLegacyVerseTightening(out);
1327
+ if (rules < DESIGN_OVERFLOW_RULES)
1328
+ out = pinLegacyDesignOverflow(out);
1329
+ if (rules < GRID_BALANCING_RULES)
1330
+ out = pinLegacyGridBalancing(out);
1331
+ if (rules < TITLE_BREAK_RULES && mayHaveBookTitles(content))
1332
+ out = pinLegacyTitleBreaks(out);
1333
+ if (rules < CIRCLED_NUMBER_RULES && mayHaveCircledNumbers(content))
1334
+ out = pinLegacyCircledNumbers(out);
1335
+ if (rules < DESIGN_TEXT_RULES && mayHaveCjkDesignText(content, out))
1336
+ out = pinLegacyDesignText(out);
1337
+ if (rules < INLINE_TABLE_SPLIT_RULES && mayEmbedResources(content))
1338
+ out = pinLegacyInlineTableSplit(out);
1339
+ if (rules < FLOW_COLUMNS_RULES && mayHaveColumnGroups(content))
1340
+ out = pinLegacyFlowColumns(out);
1341
+ if (rules < OPENER_HEAD_FLOAT_RULES && setsPageSpanHeading(out) && mayHaveHeadings(content))
1342
+ out = pinLegacyOpenerHeadFloats(out);
961
1343
  return out;
962
1344
  }
963
1345
  /**
@@ -974,8 +1356,14 @@ export function migrateConfig(config, configVersion, options = {}) {
974
1356
  * `:::paragraphs` containers on the `bodyText` in force (the ragged
975
1357
  * breaking when the merged configuration sets some running text ragged,
976
1358
  * the container space when it declares a paragraph style), the heading
977
- * marks and the split under a heading on the `headings` in force, and the
978
- * drop caps wherever they sit in the merged configuration.
1359
+ * marks and the split under a heading on the `headings` in force, the
1360
+ * drop caps and the overflow of heading and part design texts wherever
1361
+ * they sit in the merged configuration, the balancing of a horizontal
1362
+ * character grid on the merged `cjk`, `layout` and `headings`, the
1363
+ * inline tables on the `tableStyle` in force, the `:::columns` groups and
1364
+ * the slots under a page-span opener on the `layout` in force (the slots
1365
+ * when the merged configuration sets a page-span heading), and the book
1366
+ * titles, the circled numbers and the design text on the `cjk` in force.
979
1367
  * @internal `readBundle`'s; hosts call {@link migrateConfig}.
980
1368
  */
981
1369
  export function migrateBundleConfig(base, layers, configVersion, options = {}) {
@@ -1017,6 +1405,24 @@ export function migrateBundleConfig(base, layers, configVersion, options = {}) {
1017
1405
  merged = pinLegacyHardBreaks(merged);
1018
1406
  if (rules < CODE_BLOCK_RULES && mayHaveCodeFences(content))
1019
1407
  merged = pinLegacyCodeBlocks(merged);
1408
+ if (rules < VERSE_TIGHTEN_RULES && mayHaveLinePoems(content, merged))
1409
+ merged = pinLegacyVerseTightening(merged);
1410
+ if (rules < DESIGN_OVERFLOW_RULES)
1411
+ merged = pinLegacyDesignOverflow(merged);
1412
+ if (rules < GRID_BALANCING_RULES)
1413
+ merged = pinLegacyGridBalancing(merged);
1414
+ if (rules < TITLE_BREAK_RULES && mayHaveBookTitles(content))
1415
+ merged = pinLegacyTitleBreaks(merged);
1416
+ if (rules < CIRCLED_NUMBER_RULES && mayHaveCircledNumbers(content))
1417
+ merged = pinLegacyCircledNumbers(merged);
1418
+ if (rules < DESIGN_TEXT_RULES && mayHaveCjkDesignText(content, merged))
1419
+ merged = pinLegacyDesignText(merged);
1420
+ if (rules < INLINE_TABLE_SPLIT_RULES && mayEmbedResources(content))
1421
+ merged = pinLegacyInlineTableSplit(merged);
1422
+ if (rules < FLOW_COLUMNS_RULES && mayHaveColumnGroups(content))
1423
+ merged = pinLegacyFlowColumns(merged);
1424
+ if (rules < OPENER_HEAD_FLOAT_RULES && setsPageSpanHeading(merged) && mayHaveHeadings(content))
1425
+ merged = pinLegacyOpenerHeadFloats(merged);
1020
1426
  return merged;
1021
1427
  }
1022
1428
  //# sourceMappingURL=configVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configVersion.js","sourceRoot":"","sources":["../../src/bundle/configVersion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configVersion.js","sourceRoot":"","sources":["../../src/bundle/configVersion.ts"],"names":[],"mappings":"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"}