postext 1.14.0 → 1.15.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 (489) hide show
  1. package/dist/__tests__/arabic/blockLanguageDigits.test.d.ts +2 -0
  2. package/dist/__tests__/arabic/blockLanguageDigits.test.d.ts.map +1 -0
  3. package/dist/__tests__/arabic/blockLanguageDigits.test.js +54 -0
  4. package/dist/__tests__/arabic/blockLanguageDigits.test.js.map +1 -0
  5. package/dist/__tests__/arabic/emphasis.test.d.ts +2 -0
  6. package/dist/__tests__/arabic/emphasis.test.d.ts.map +1 -0
  7. package/dist/__tests__/arabic/emphasis.test.js +206 -0
  8. package/dist/__tests__/arabic/emphasis.test.js.map +1 -0
  9. package/dist/__tests__/arabic/footnotes.test.d.ts +2 -0
  10. package/dist/__tests__/arabic/footnotes.test.d.ts.map +1 -0
  11. package/dist/__tests__/arabic/footnotes.test.js +118 -0
  12. package/dist/__tests__/arabic/footnotes.test.js.map +1 -0
  13. package/dist/__tests__/arabic/harakat.test.d.ts +2 -0
  14. package/dist/__tests__/arabic/harakat.test.d.ts.map +1 -0
  15. package/dist/__tests__/arabic/harakat.test.js +167 -0
  16. package/dist/__tests__/arabic/harakat.test.js.map +1 -0
  17. package/dist/__tests__/arabic/ornateBrackets.test.d.ts +2 -0
  18. package/dist/__tests__/arabic/ornateBrackets.test.d.ts.map +1 -0
  19. package/dist/__tests__/arabic/ornateBrackets.test.js +71 -0
  20. package/dist/__tests__/arabic/ornateBrackets.test.js.map +1 -0
  21. package/dist/__tests__/arabic/tashkil.test.d.ts +2 -0
  22. package/dist/__tests__/arabic/tashkil.test.d.ts.map +1 -0
  23. package/dist/__tests__/arabic/tashkil.test.js +106 -0
  24. package/dist/__tests__/arabic/tashkil.test.js.map +1 -0
  25. package/dist/__tests__/arabicLocale.test.d.ts +2 -0
  26. package/dist/__tests__/arabicLocale.test.d.ts.map +1 -0
  27. package/dist/__tests__/arabicLocale.test.js +232 -0
  28. package/dist/__tests__/arabicLocale.test.js.map +1 -0
  29. package/dist/__tests__/arabicNumberWords.test.d.ts +2 -0
  30. package/dist/__tests__/arabicNumberWords.test.d.ts.map +1 -0
  31. package/dist/__tests__/arabicNumberWords.test.js +176 -0
  32. package/dist/__tests__/arabicNumberWords.test.js.map +1 -0
  33. package/dist/__tests__/arabicNumbering.test.d.ts +2 -0
  34. package/dist/__tests__/arabicNumbering.test.d.ts.map +1 -0
  35. package/dist/__tests__/arabicNumbering.test.js +257 -0
  36. package/dist/__tests__/arabicNumbering.test.js.map +1 -0
  37. package/dist/__tests__/arabicWords.test.d.ts +2 -0
  38. package/dist/__tests__/arabicWords.test.d.ts.map +1 -0
  39. package/dist/__tests__/arabicWords.test.js +302 -0
  40. package/dist/__tests__/arabicWords.test.js.map +1 -0
  41. package/dist/__tests__/bidi.test.d.ts +2 -0
  42. package/dist/__tests__/bidi.test.d.ts.map +1 -0
  43. package/dist/__tests__/bidi.test.js +282 -0
  44. package/dist/__tests__/bidi.test.js.map +1 -0
  45. package/dist/__tests__/blockHints.test.d.ts +2 -0
  46. package/dist/__tests__/blockHints.test.d.ts.map +1 -0
  47. package/dist/__tests__/blockHints.test.js +79 -0
  48. package/dist/__tests__/blockHints.test.js.map +1 -0
  49. package/dist/__tests__/chineseLocale.test.js +2 -2
  50. package/dist/__tests__/chineseLocale.test.js.map +1 -1
  51. package/dist/__tests__/cjk/grid.test.js +2 -2
  52. package/dist/__tests__/cjk/grid.test.js.map +1 -1
  53. package/dist/__tests__/cjk/justifyRender.test.js +2 -1
  54. package/dist/__tests__/cjk/justifyRender.test.js.map +1 -1
  55. package/dist/__tests__/defaults/folio.test.js +16 -1
  56. package/dist/__tests__/defaults/folio.test.js.map +1 -1
  57. package/dist/__tests__/direction.test.d.ts +2 -0
  58. package/dist/__tests__/direction.test.d.ts.map +1 -0
  59. package/dist/__tests__/direction.test.js +117 -0
  60. package/dist/__tests__/direction.test.js.map +1 -0
  61. package/dist/__tests__/exports.test.js +29 -0
  62. package/dist/__tests__/exports.test.js.map +1 -1
  63. package/dist/__tests__/headingLetterSpacing.test.js +1 -1
  64. package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
  65. package/dist/__tests__/headingNumberPosition.test.d.ts +2 -0
  66. package/dist/__tests__/headingNumberPosition.test.d.ts.map +1 -0
  67. package/dist/__tests__/headingNumberPosition.test.js +87 -0
  68. package/dist/__tests__/headingNumberPosition.test.js.map +1 -0
  69. package/dist/__tests__/htmlCopyText.test.d.ts +2 -0
  70. package/dist/__tests__/htmlCopyText.test.d.ts.map +1 -0
  71. package/dist/__tests__/htmlCopyText.test.js +153 -0
  72. package/dist/__tests__/htmlCopyText.test.js.map +1 -0
  73. package/dist/__tests__/kashida.test.d.ts +2 -0
  74. package/dist/__tests__/kashida.test.d.ts.map +1 -0
  75. package/dist/__tests__/kashida.test.js +281 -0
  76. package/dist/__tests__/kashida.test.js.map +1 -0
  77. package/dist/__tests__/kashidaPatterns.test.d.ts +2 -0
  78. package/dist/__tests__/kashidaPatterns.test.d.ts.map +1 -0
  79. package/dist/__tests__/kashidaPatterns.test.js +143 -0
  80. package/dist/__tests__/kashidaPatterns.test.js.map +1 -0
  81. package/dist/__tests__/links.test.js +3 -1
  82. package/dist/__tests__/links.test.js.map +1 -1
  83. package/dist/__tests__/parse/containers.test.js +1 -1
  84. package/dist/__tests__/parse/containers.test.js.map +1 -1
  85. package/dist/__tests__/rtl/designText.test.d.ts +2 -0
  86. package/dist/__tests__/rtl/designText.test.d.ts.map +1 -0
  87. package/dist/__tests__/rtl/designText.test.js +301 -0
  88. package/dist/__tests__/rtl/designText.test.js.map +1 -0
  89. package/dist/__tests__/rtl/designTextPaint.test.d.ts +2 -0
  90. package/dist/__tests__/rtl/designTextPaint.test.d.ts.map +1 -0
  91. package/dist/__tests__/rtl/designTextPaint.test.js +140 -0
  92. package/dist/__tests__/rtl/designTextPaint.test.js.map +1 -0
  93. package/dist/__tests__/rtl/htmlRtl.test.d.ts +2 -0
  94. package/dist/__tests__/rtl/htmlRtl.test.d.ts.map +1 -0
  95. package/dist/__tests__/rtl/htmlRtl.test.js +175 -0
  96. package/dist/__tests__/rtl/htmlRtl.test.js.map +1 -0
  97. package/dist/__tests__/rtl/mirroredFrame.test.d.ts +2 -0
  98. package/dist/__tests__/rtl/mirroredFrame.test.d.ts.map +1 -0
  99. package/dist/__tests__/rtl/mirroredFrame.test.js +313 -0
  100. package/dist/__tests__/rtl/mirroredFrame.test.js.map +1 -0
  101. package/dist/__tests__/rtl/mirroredPaint.test.d.ts +2 -0
  102. package/dist/__tests__/rtl/mirroredPaint.test.d.ts.map +1 -0
  103. package/dist/__tests__/rtl/mirroredPaint.test.js +116 -0
  104. package/dist/__tests__/rtl/mirroredPaint.test.js.map +1 -0
  105. package/dist/__tests__/rtl/oppositeBlocks.test.d.ts +2 -0
  106. package/dist/__tests__/rtl/oppositeBlocks.test.d.ts.map +1 -0
  107. package/dist/__tests__/rtl/oppositeBlocks.test.js +273 -0
  108. package/dist/__tests__/rtl/oppositeBlocks.test.js.map +1 -0
  109. package/dist/__tests__/rtl/segmentLang.test.d.ts +2 -0
  110. package/dist/__tests__/rtl/segmentLang.test.d.ts.map +1 -0
  111. package/dist/__tests__/rtl/segmentLang.test.js +54 -0
  112. package/dist/__tests__/rtl/segmentLang.test.js.map +1 -0
  113. package/dist/__tests__/rtlLines.test.d.ts +2 -0
  114. package/dist/__tests__/rtlLines.test.d.ts.map +1 -0
  115. package/dist/__tests__/rtlLines.test.js +180 -0
  116. package/dist/__tests__/rtlLines.test.js.map +1 -0
  117. package/dist/__tests__/tocNumberColumn.test.d.ts +2 -0
  118. package/dist/__tests__/tocNumberColumn.test.d.ts.map +1 -0
  119. package/dist/__tests__/tocNumberColumn.test.js +67 -0
  120. package/dist/__tests__/tocNumberColumn.test.js.map +1 -0
  121. package/dist/__tests__/verse.test.d.ts +2 -0
  122. package/dist/__tests__/verse.test.d.ts.map +1 -0
  123. package/dist/__tests__/verse.test.js +232 -0
  124. package/dist/__tests__/verse.test.js.map +1 -0
  125. package/dist/__tests__/vertical/geometry.test.js +2 -2
  126. package/dist/__tests__/vertical/geometry.test.js.map +1 -1
  127. package/dist/__tests__/vertical/htmlTurnedCells.test.js +2 -2
  128. package/dist/__tests__/vertical/htmlTurnedCells.test.js.map +1 -1
  129. package/dist/arabicMarks.d.ts +80 -0
  130. package/dist/arabicMarks.d.ts.map +1 -0
  131. package/dist/arabicMarks.js +267 -0
  132. package/dist/arabicMarks.js.map +1 -0
  133. package/dist/arabicNumberWords.d.ts +43 -0
  134. package/dist/arabicNumberWords.d.ts.map +1 -0
  135. package/dist/arabicNumberWords.js +163 -0
  136. package/dist/arabicNumberWords.js.map +1 -0
  137. package/dist/arabicNumerals.d.ts +54 -0
  138. package/dist/arabicNumerals.d.ts.map +1 -0
  139. package/dist/arabicNumerals.js +143 -0
  140. package/dist/arabicNumerals.js.map +1 -0
  141. package/dist/bidi.d.ts +186 -0
  142. package/dist/bidi.d.ts.map +1 -0
  143. package/dist/bidi.js +851 -0
  144. package/dist/bidi.js.map +1 -0
  145. package/dist/bidiData.d.ts +13 -0
  146. package/dist/bidiData.d.ts.map +1 -0
  147. package/dist/bidiData.js +318 -0
  148. package/dist/bidiData.js.map +1 -0
  149. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  150. package/dist/canvas-backend/blockRender.js +58 -27
  151. package/dist/canvas-backend/blockRender.js.map +1 -1
  152. package/dist/canvas-backend/chip.d.ts.map +1 -1
  153. package/dist/canvas-backend/chip.js +16 -2
  154. package/dist/canvas-backend/chip.js.map +1 -1
  155. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  156. package/dist/canvas-backend/headerFooter.js +7 -3
  157. package/dist/canvas-backend/headerFooter.js.map +1 -1
  158. package/dist/canvas-backend/index.d.ts.map +1 -1
  159. package/dist/canvas-backend/index.js +9 -4
  160. package/dist/canvas-backend/index.js.map +1 -1
  161. package/dist/canvas-backend/mirrorFrame.d.ts +38 -0
  162. package/dist/canvas-backend/mirrorFrame.d.ts.map +1 -0
  163. package/dist/canvas-backend/mirrorFrame.js +129 -0
  164. package/dist/canvas-backend/mirrorFrame.js.map +1 -0
  165. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  166. package/dist/canvas-backend/renderResourceBlock.js +16 -5
  167. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  168. package/dist/canvas-backend/runDirection.d.ts +21 -0
  169. package/dist/canvas-backend/runDirection.d.ts.map +1 -0
  170. package/dist/canvas-backend/runDirection.js +46 -0
  171. package/dist/canvas-backend/runDirection.js.map +1 -0
  172. package/dist/canvas-backend/wordRuns.d.ts +49 -0
  173. package/dist/canvas-backend/wordRuns.d.ts.map +1 -0
  174. package/dist/canvas-backend/wordRuns.js +111 -0
  175. package/dist/canvas-backend/wordRuns.js.map +1 -0
  176. package/dist/columnClip.d.ts +4 -1
  177. package/dist/columnClip.d.ts.map +1 -1
  178. package/dist/columnClip.js +8 -3
  179. package/dist/columnClip.js.map +1 -1
  180. package/dist/configWarnings.d.ts +3 -1
  181. package/dist/configWarnings.d.ts.map +1 -1
  182. package/dist/configWarnings.js +59 -5
  183. package/dist/configWarnings.js.map +1 -1
  184. package/dist/defaults/bodyText.d.ts +28 -6
  185. package/dist/defaults/bodyText.d.ts.map +1 -1
  186. package/dist/defaults/bodyText.js +158 -30
  187. package/dist/defaults/bodyText.js.map +1 -1
  188. package/dist/defaults/calloutStyles.js +1 -1
  189. package/dist/defaults/calloutStyles.js.map +1 -1
  190. package/dist/defaults/captionStyle.js +5 -5
  191. package/dist/defaults/captionStyle.js.map +1 -1
  192. package/dist/defaults/folio.d.ts +4 -0
  193. package/dist/defaults/folio.d.ts.map +1 -1
  194. package/dist/defaults/folio.js +12 -1
  195. package/dist/defaults/folio.js.map +1 -1
  196. package/dist/defaults/footnotes.d.ts.map +1 -1
  197. package/dist/defaults/footnotes.js +12 -2
  198. package/dist/defaults/footnotes.js.map +1 -1
  199. package/dist/defaults/headerFooter.d.ts.map +1 -1
  200. package/dist/defaults/headerFooter.js +1 -0
  201. package/dist/defaults/headerFooter.js.map +1 -1
  202. package/dist/defaults/headingStyles.d.ts.map +1 -1
  203. package/dist/defaults/headingStyles.js +2 -1
  204. package/dist/defaults/headingStyles.js.map +1 -1
  205. package/dist/defaults/headings.d.ts.map +1 -1
  206. package/dist/defaults/headings.js +9 -2
  207. package/dist/defaults/headings.js.map +1 -1
  208. package/dist/defaults/index.d.ts +1 -1
  209. package/dist/defaults/index.d.ts.map +1 -1
  210. package/dist/defaults/index.js +7 -1
  211. package/dist/defaults/index.js.map +1 -1
  212. package/dist/defaults/indexConfig.d.ts +6 -2
  213. package/dist/defaults/indexConfig.d.ts.map +1 -1
  214. package/dist/defaults/indexConfig.js +25 -5
  215. package/dist/defaults/indexConfig.js.map +1 -1
  216. package/dist/defaults/page.d.ts +7 -4
  217. package/dist/defaults/page.d.ts.map +1 -1
  218. package/dist/defaults/page.js +10 -7
  219. package/dist/defaults/page.js.map +1 -1
  220. package/dist/defaults/paragraphStyles.js +2 -2
  221. package/dist/defaults/paragraphStyles.js.map +1 -1
  222. package/dist/defaults/parts.d.ts.map +1 -1
  223. package/dist/defaults/parts.js +2 -1
  224. package/dist/defaults/parts.js.map +1 -1
  225. package/dist/defaults/resourceTypes.d.ts +1 -1
  226. package/dist/defaults/resourceTypes.d.ts.map +1 -1
  227. package/dist/defaults/resourceTypes.js +10 -2
  228. package/dist/defaults/resourceTypes.js.map +1 -1
  229. package/dist/defaults/shared.d.ts +9 -0
  230. package/dist/defaults/shared.d.ts.map +1 -1
  231. package/dist/defaults/shared.js +15 -0
  232. package/dist/defaults/shared.js.map +1 -1
  233. package/dist/defaults/tableStyle.d.ts.map +1 -1
  234. package/dist/defaults/tableStyle.js +5 -1
  235. package/dist/defaults/tableStyle.js.map +1 -1
  236. package/dist/design/bidiText.d.ts +89 -0
  237. package/dist/design/bidiText.d.ts.map +1 -0
  238. package/dist/design/bidiText.js +165 -0
  239. package/dist/design/bidiText.js.map +1 -0
  240. package/dist/design/layout.d.ts +20 -0
  241. package/dist/design/layout.d.ts.map +1 -1
  242. package/dist/design/layout.js +46 -5
  243. package/dist/design/layout.js.map +1 -1
  244. package/dist/design/placeholders.d.ts +7 -1
  245. package/dist/design/placeholders.d.ts.map +1 -1
  246. package/dist/design/placeholders.js +6 -3
  247. package/dist/design/placeholders.js.map +1 -1
  248. package/dist/design/richText.d.ts +5 -2
  249. package/dist/design/richText.d.ts.map +1 -1
  250. package/dist/design/richText.js +35 -2
  251. package/dist/design/richText.js.map +1 -1
  252. package/dist/emphasisOverline.d.ts +27 -0
  253. package/dist/emphasisOverline.d.ts.map +1 -0
  254. package/dist/emphasisOverline.js +107 -0
  255. package/dist/emphasisOverline.js.map +1 -0
  256. package/dist/frontmatter.d.ts +25 -6
  257. package/dist/frontmatter.d.ts.map +1 -1
  258. package/dist/frontmatter.js +51 -10
  259. package/dist/frontmatter.js.map +1 -1
  260. package/dist/html-backend.d.ts +4 -1
  261. package/dist/html-backend.d.ts.map +1 -1
  262. package/dist/html-backend.js +363 -87
  263. package/dist/html-backend.js.map +1 -1
  264. package/dist/hyphenate.d.ts.map +1 -1
  265. package/dist/hyphenate.js +4 -1
  266. package/dist/hyphenate.js.map +1 -1
  267. package/dist/index.d.ts +11 -8
  268. package/dist/index.d.ts.map +1 -1
  269. package/dist/index.js +6 -4
  270. package/dist/index.js.map +1 -1
  271. package/dist/knuthPlass/breakpoints.d.ts.map +1 -1
  272. package/dist/knuthPlass/breakpoints.js +3 -0
  273. package/dist/knuthPlass/breakpoints.js.map +1 -1
  274. package/dist/knuthPlass/pretextAdapter.d.ts.map +1 -1
  275. package/dist/knuthPlass/pretextAdapter.js +9 -3
  276. package/dist/knuthPlass/pretextAdapter.js.map +1 -1
  277. package/dist/knuthPlass/richAdapter.d.ts +11 -0
  278. package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
  279. package/dist/knuthPlass/richAdapter.js +11 -4
  280. package/dist/knuthPlass/richAdapter.js.map +1 -1
  281. package/dist/knuthPlass/tracking.d.ts +2 -1
  282. package/dist/knuthPlass/tracking.d.ts.map +1 -1
  283. package/dist/knuthPlass/tracking.js +5 -2
  284. package/dist/knuthPlass/tracking.js.map +1 -1
  285. package/dist/knuthPlass/types.d.ts +4 -0
  286. package/dist/knuthPlass/types.d.ts.map +1 -1
  287. package/dist/locale.d.ts +63 -9
  288. package/dist/locale.d.ts.map +1 -1
  289. package/dist/locale.js +129 -12
  290. package/dist/locale.js.map +1 -1
  291. package/dist/measure/bidiLines.d.ts +91 -0
  292. package/dist/measure/bidiLines.d.ts.map +1 -0
  293. package/dist/measure/bidiLines.js +293 -0
  294. package/dist/measure/bidiLines.js.map +1 -0
  295. package/dist/measure/cache.d.ts.map +1 -1
  296. package/dist/measure/cache.js +10 -4
  297. package/dist/measure/cache.js.map +1 -1
  298. package/dist/measure/joining.d.ts +39 -0
  299. package/dist/measure/joining.d.ts.map +1 -0
  300. package/dist/measure/joining.js +91 -0
  301. package/dist/measure/joining.js.map +1 -0
  302. package/dist/measure/joiningGroups.d.ts +7 -0
  303. package/dist/measure/joiningGroups.d.ts.map +1 -0
  304. package/dist/measure/joiningGroups.js +110 -0
  305. package/dist/measure/joiningGroups.js.map +1 -0
  306. package/dist/measure/kashida.d.ts +97 -0
  307. package/dist/measure/kashida.d.ts.map +1 -0
  308. package/dist/measure/kashida.js +285 -0
  309. package/dist/measure/kashida.js.map +1 -0
  310. package/dist/measure/kashidaPatterns.d.ts +109 -0
  311. package/dist/measure/kashidaPatterns.d.ts.map +1 -0
  312. package/dist/measure/kashidaPatterns.js +519 -0
  313. package/dist/measure/kashidaPatterns.js.map +1 -0
  314. package/dist/measure/links.d.ts.map +1 -1
  315. package/dist/measure/links.js +5 -2
  316. package/dist/measure/links.js.map +1 -1
  317. package/dist/measure/plain.d.ts.map +1 -1
  318. package/dist/measure/plain.js +31 -0
  319. package/dist/measure/plain.js.map +1 -1
  320. package/dist/measure/rich.d.ts +24 -0
  321. package/dist/measure/rich.d.ts.map +1 -1
  322. package/dist/measure/rich.js +250 -22
  323. package/dist/measure/rich.js.map +1 -1
  324. package/dist/measure/types.d.ts +14 -0
  325. package/dist/measure/types.d.ts.map +1 -1
  326. package/dist/measure/types.js.map +1 -1
  327. package/dist/numberWords.d.ts +17 -4
  328. package/dist/numberWords.d.ts.map +1 -1
  329. package/dist/numberWords.js +19 -13
  330. package/dist/numberWords.js.map +1 -1
  331. package/dist/numbering.d.ts +49 -11
  332. package/dist/numbering.d.ts.map +1 -1
  333. package/dist/numbering.js +117 -21
  334. package/dist/numbering.js.map +1 -1
  335. package/dist/parse/annotations.d.ts +6 -3
  336. package/dist/parse/annotations.d.ts.map +1 -1
  337. package/dist/parse/annotations.js +31 -7
  338. package/dist/parse/annotations.js.map +1 -1
  339. package/dist/parse/attrs.d.ts +3 -3
  340. package/dist/parse/attrs.d.ts.map +1 -1
  341. package/dist/parse/attrs.js +5 -4
  342. package/dist/parse/attrs.js.map +1 -1
  343. package/dist/parse/blockParser.d.ts.map +1 -1
  344. package/dist/parse/blockParser.js +158 -14
  345. package/dist/parse/blockParser.js.map +1 -1
  346. package/dist/parse/index.d.ts +1 -1
  347. package/dist/parse/index.d.ts.map +1 -1
  348. package/dist/parse/index.js.map +1 -1
  349. package/dist/parse/inlineFormatting.d.ts.map +1 -1
  350. package/dist/parse/inlineFormatting.js +5 -4
  351. package/dist/parse/inlineFormatting.js.map +1 -1
  352. package/dist/parse/types.d.ts +63 -1
  353. package/dist/parse/types.d.ts.map +1 -1
  354. package/dist/pipeline/build.d.ts.map +1 -1
  355. package/dist/pipeline/build.js +161 -43
  356. package/dist/pipeline/build.js.map +1 -1
  357. package/dist/pipeline/buildBlockKind.d.ts +2 -0
  358. package/dist/pipeline/buildBlockKind.d.ts.map +1 -1
  359. package/dist/pipeline/buildBlockKind.js +67 -2
  360. package/dist/pipeline/buildBlockKind.js.map +1 -1
  361. package/dist/pipeline/buildHelpers.d.ts +22 -1
  362. package/dist/pipeline/buildHelpers.d.ts.map +1 -1
  363. package/dist/pipeline/buildHelpers.js +55 -5
  364. package/dist/pipeline/buildHelpers.js.map +1 -1
  365. package/dist/pipeline/calloutLayout.d.ts +6 -1
  366. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  367. package/dist/pipeline/calloutLayout.js +63 -18
  368. package/dist/pipeline/calloutLayout.js.map +1 -1
  369. package/dist/pipeline/citations.d.ts +2 -1
  370. package/dist/pipeline/citations.d.ts.map +1 -1
  371. package/dist/pipeline/citations.js +29 -9
  372. package/dist/pipeline/citations.js.map +1 -1
  373. package/dist/pipeline/cjkGrid.d.ts +3 -2
  374. package/dist/pipeline/cjkGrid.d.ts.map +1 -1
  375. package/dist/pipeline/cjkGrid.js +3 -2
  376. package/dist/pipeline/cjkGrid.js.map +1 -1
  377. package/dist/pipeline/config.d.ts +13 -1
  378. package/dist/pipeline/config.d.ts.map +1 -1
  379. package/dist/pipeline/config.js +32 -3
  380. package/dist/pipeline/config.js.map +1 -1
  381. package/dist/pipeline/contentWarnings.d.ts +10 -0
  382. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  383. package/dist/pipeline/contentWarnings.js +88 -0
  384. package/dist/pipeline/contentWarnings.js.map +1 -1
  385. package/dist/pipeline/continuation.d.ts.map +1 -1
  386. package/dist/pipeline/continuation.js +1 -1
  387. package/dist/pipeline/continuation.js.map +1 -1
  388. package/dist/pipeline/crossRefs.d.ts.map +1 -1
  389. package/dist/pipeline/crossRefs.js +2 -0
  390. package/dist/pipeline/crossRefs.js.map +1 -1
  391. package/dist/pipeline/floatPlacement.d.ts.map +1 -1
  392. package/dist/pipeline/floatPlacement.js +2 -1
  393. package/dist/pipeline/floatPlacement.js.map +1 -1
  394. package/dist/pipeline/footnotes.d.ts +13 -5
  395. package/dist/pipeline/footnotes.d.ts.map +1 -1
  396. package/dist/pipeline/footnotes.js +19 -8
  397. package/dist/pipeline/footnotes.js.map +1 -1
  398. package/dist/pipeline/headerFooter.d.ts +4 -0
  399. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  400. package/dist/pipeline/headerFooter.js +41 -13
  401. package/dist/pipeline/headerFooter.js.map +1 -1
  402. package/dist/pipeline/headingDesignCuts.d.ts +1 -1
  403. package/dist/pipeline/headingDesignCuts.d.ts.map +1 -1
  404. package/dist/pipeline/headingDesignCuts.js +2 -1
  405. package/dist/pipeline/headingDesignCuts.js.map +1 -1
  406. package/dist/pipeline/headingStyles.d.ts +10 -0
  407. package/dist/pipeline/headingStyles.d.ts.map +1 -1
  408. package/dist/pipeline/headingStyles.js +46 -0
  409. package/dist/pipeline/headingStyles.js.map +1 -1
  410. package/dist/pipeline/indexDirective.d.ts.map +1 -1
  411. package/dist/pipeline/indexDirective.js +33 -6
  412. package/dist/pipeline/indexDirective.js.map +1 -1
  413. package/dist/pipeline/indexGroups.d.ts +23 -1
  414. package/dist/pipeline/indexGroups.d.ts.map +1 -1
  415. package/dist/pipeline/indexGroups.js +50 -1
  416. package/dist/pipeline/indexGroups.js.map +1 -1
  417. package/dist/pipeline/lists.d.ts +16 -4
  418. package/dist/pipeline/lists.d.ts.map +1 -1
  419. package/dist/pipeline/lists.js +51 -12
  420. package/dist/pipeline/lists.js.map +1 -1
  421. package/dist/pipeline/measureContentBlock.d.ts +5 -0
  422. package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
  423. package/dist/pipeline/measureContentBlock.js +63 -4
  424. package/dist/pipeline/measureContentBlock.js.map +1 -1
  425. package/dist/pipeline/mirrorFrame.d.ts +37 -0
  426. package/dist/pipeline/mirrorFrame.d.ts.map +1 -0
  427. package/dist/pipeline/mirrorFrame.js +143 -0
  428. package/dist/pipeline/mirrorFrame.js.map +1 -0
  429. package/dist/pipeline/outline.d.ts +2 -2
  430. package/dist/pipeline/outline.d.ts.map +1 -1
  431. package/dist/pipeline/outline.js +33 -6
  432. package/dist/pipeline/outline.js.map +1 -1
  433. package/dist/pipeline/paragraphContainers.d.ts +5 -0
  434. package/dist/pipeline/paragraphContainers.d.ts.map +1 -1
  435. package/dist/pipeline/paragraphContainers.js +12 -0
  436. package/dist/pipeline/paragraphContainers.js.map +1 -1
  437. package/dist/pipeline/parts.d.ts +1 -1
  438. package/dist/pipeline/parts.d.ts.map +1 -1
  439. package/dist/pipeline/parts.js +3 -2
  440. package/dist/pipeline/parts.js.map +1 -1
  441. package/dist/pipeline/placeholders.d.ts +13 -6
  442. package/dist/pipeline/placeholders.d.ts.map +1 -1
  443. package/dist/pipeline/placeholders.js +15 -11
  444. package/dist/pipeline/placeholders.js.map +1 -1
  445. package/dist/pipeline/placement.d.ts +3 -2
  446. package/dist/pipeline/placement.d.ts.map +1 -1
  447. package/dist/pipeline/placement.js +18 -6
  448. package/dist/pipeline/placement.js.map +1 -1
  449. package/dist/pipeline/resourceLayout.d.ts.map +1 -1
  450. package/dist/pipeline/resourceLayout.js +70 -7
  451. package/dist/pipeline/resourceLayout.js.map +1 -1
  452. package/dist/pipeline/resourceNumbering.d.ts +5 -3
  453. package/dist/pipeline/resourceNumbering.d.ts.map +1 -1
  454. package/dist/pipeline/resourceNumbering.js +11 -8
  455. package/dist/pipeline/resourceNumbering.js.map +1 -1
  456. package/dist/pipeline/styles.d.ts +6 -1
  457. package/dist/pipeline/styles.d.ts.map +1 -1
  458. package/dist/pipeline/styles.js +44 -14
  459. package/dist/pipeline/styles.js.map +1 -1
  460. package/dist/pipeline/tashkil.d.ts +27 -0
  461. package/dist/pipeline/tashkil.d.ts.map +1 -0
  462. package/dist/pipeline/tashkil.js +161 -0
  463. package/dist/pipeline/tashkil.js.map +1 -0
  464. package/dist/pipeline/toc.d.ts +12 -0
  465. package/dist/pipeline/toc.d.ts.map +1 -1
  466. package/dist/pipeline/toc.js +64 -4
  467. package/dist/pipeline/toc.js.map +1 -1
  468. package/dist/pipeline/verse.d.ts +65 -0
  469. package/dist/pipeline/verse.d.ts.map +1 -0
  470. package/dist/pipeline/verse.js +252 -0
  471. package/dist/pipeline/verse.js.map +1 -0
  472. package/dist/pipeline/verticalMetrics.d.ts +1 -1
  473. package/dist/pipeline/verticalMetrics.d.ts.map +1 -1
  474. package/dist/pipeline/verticalMetrics.js +7 -5
  475. package/dist/pipeline/verticalMetrics.js.map +1 -1
  476. package/dist/table/model.d.ts +4 -3
  477. package/dist/table/model.d.ts.map +1 -1
  478. package/dist/table/model.js.map +1 -1
  479. package/dist/types.d.ts +286 -36
  480. package/dist/types.d.ts.map +1 -1
  481. package/dist/uprightArabic.d.ts +39 -0
  482. package/dist/uprightArabic.d.ts.map +1 -0
  483. package/dist/uprightArabic.js +105 -0
  484. package/dist/uprightArabic.js.map +1 -0
  485. package/dist/vdt.d.ts +276 -11
  486. package/dist/vdt.d.ts.map +1 -1
  487. package/dist/vdt.js +46 -9
  488. package/dist/vdt.js.map +1 -1
  489. package/package.json +1 -1
@@ -4,11 +4,14 @@ import { resolveDesignLineHeight } from '../defaults/headerFooter';
4
4
  import { createBoundingBox, pictureTraits } from '../vdt';
5
5
  import { buildFontString } from '../measure';
6
6
  import { graphemeCount } from '../measure/graphemes';
7
+ import { joiningScriptIn } from '../measure/joining';
7
8
  import { parseInlineSnippetSpans } from '../parse/inlineSnippet';
8
9
  import { hyphenateText, withoutSlashJoints } from '../hyphenate';
9
10
  import { withLineEndHyphen } from '../measure/geminate';
10
11
  import { BREAKING_SPACE_RUNS_SPLIT_RE, NO_BREAK_SPACES, isBreakingSpaceRun } from '../measure/spaces';
11
12
  import { resolveDesignResourceId, resolveDesignText, } from './placeholders';
13
+ import { hasJoiningScript, joinsWithNext } from '../bidi';
14
+ import { designBaseDirection, directRuns } from './bidiText';
12
15
  import { RichMeasurer, ellipsisEndCut, ellipsisMiddleCut, ellipsisStartCut, parseRichDesignText, singleRichLine, wrapRich, } from './richText';
13
16
  /** Placeholder characters the snippet parser leaves in span text (private
14
17
  * use, the object replacement character, the invisible separator and
@@ -330,6 +333,10 @@ function breakWordWithHyphenation(word, measure, maxWidth, useHyphenation) {
330
333
  if (measure(word.slice(0, i)) <= maxWidth)
331
334
  return { head: word.slice(0, i), tail: word.slice(i + 1) };
332
335
  }
336
+ // A word of a joining script (Arabic) is never hyphenated or cut: it runs
337
+ // past the line, whole.
338
+ if (hasJoiningScript(word))
339
+ return undefined;
333
340
  if (useHyphenation) {
334
341
  // Syllables only: the slash joints would ride along into the pieces.
335
342
  const hy = withoutSlashJoints(word, hyphenateText(word));
@@ -633,7 +640,7 @@ export function layoutDesignSlot(slot, context, pageIndex) {
633
640
  // flow the text already runs down.
634
641
  const prims = el.writingMode === 'vertical-rl' && getMeasureWritingMode() !== 'vertical-rl'
635
642
  ? layoutVerticalTextElement(el, textContent.get(el.id) ?? '', pin, fillRef, context.dpi, useElementEdge)
636
- : layoutTextElement(el, textContent.get(el.id) ?? '', pin, fillRef, context.dpi, useElementEdge);
643
+ : layoutTextElement(el, textContent.get(el.id) ?? '', pin, fillRef, context.dpi, useElementEdge, context);
637
644
  resolvedGeo.set(el.id, prims[0]);
638
645
  primsByElement.set(el, prims);
639
646
  }
@@ -689,6 +696,8 @@ export function layoutDesignSlot(slot, context, pageIndex) {
689
696
  * `line` in `maxWidth`: the longest such head, or undefined. Used to fill
690
697
  * a justified line (EF-109). */
691
698
  function syllableFill(line, word, measure, maxWidth) {
699
+ if (hasJoiningScript(word))
700
+ return undefined;
692
701
  const hy = withoutSlashJoints(word, hyphenateText(word));
693
702
  if (!hy.includes(SOFT_HYPHEN) || hy.split(SOFT_HYPHEN).join('') !== word)
694
703
  return undefined;
@@ -845,7 +854,9 @@ function designLineHeightPx(el, fontSizePx, dpi) {
845
854
  const px = leading.lineHeightLength ? dimPx(leading.lineHeightLength, dpi) : fontSizePx * leading.lineHeight;
846
855
  return Number.isFinite(px) ? px : 0;
847
856
  }
848
- function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElement) {
857
+ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElement,
858
+ /** The document's direction and the slot's frame (`LayoutContext`). */
859
+ frame = {}) {
849
860
  let text = resolvedText;
850
861
  const fontSizePx = dimPx(el.fontSize, dpi);
851
862
  const weight = el.fontWeight === 400 ? 'normal' : String(el.fontWeight);
@@ -855,9 +866,12 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
855
866
  // exactly as canvas `letterSpacing` / CSS `letter-spacing` / PDF `Tc` do.
856
867
  // Negative tracking tightens a display title (EF-82); a width never drops
857
868
  // below zero, however tight.
869
+ // A text in a joining script (Arabic…) is set untracked: spacing its
870
+ // letters apart breaks the joins (`measure/joining.ts`).
858
871
  const trackingPx = dimPx(el.letterSpacing, dpi, fontSizePx);
859
- const letterSpacingPx = Number.isFinite(trackingPx) ? trackingPx : 0;
872
+ const letterSpacingPx = Number.isFinite(trackingPx) && !joiningScriptIn(text) ? trackingPx : 0;
860
873
  const measure = (t) => Math.max(0, flowTextWidth(t, fontString) + letterSpacingPx * graphemeCount(t));
874
+ const measureIn = (t, font) => Math.max(0, flowTextWidth(t, font) + letterSpacingPx * graphemeCount(t));
861
875
  const box = resolveBox(el.box, dpi, fontSizePx);
862
876
  const padding = box?.padding ?? { top: 0, right: 0, bottom: 0, left: 0 };
863
877
  // Inline marks: a text that carries any is laid out in runs; one that
@@ -868,6 +882,11 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
868
882
  const richM = rich?.hasMarks ? new RichMeasurer(rich, letterSpacingPx) : undefined;
869
883
  if (rich && !rich.hasMarks)
870
884
  text = rich.text;
885
+ // The base direction: the element's, `'auto'` from its first strong
886
+ // letter, else the document's. Vertical text is not reordered.
887
+ const vertical = getMeasureWritingMode() === 'vertical-rl';
888
+ const base = vertical ? 'ltr' : designBaseDirection(el.direction, richM ? richM.rt.text : text, frame.direction ?? 'ltr');
889
+ const mirrored = !vertical && frame.mirrored === true;
871
890
  const strokeWidthPx = el.stroke ? Math.max(0, dimPx(el.stroke.width, dpi, fontSizePx)) : 0;
872
891
  const stroke = el.stroke && strokeWidthPx > 0
873
892
  ? { widthPx: strokeWidthPx, color: colorHex(el.stroke.color ?? el.color), ...(el.stroke.hollow ? { hollow: true } : {}) }
@@ -927,7 +946,9 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
927
946
  // letter spans lines, so a single truncated line cannot hold it.
928
947
  const wraps = el.overflow === 'wrap' || el.dropCap !== undefined;
929
948
  const justify = el.align === 'justify' && wraps;
949
+ // A letter joined to the next one (Arabic) is never set apart.
930
950
  const dropCap = el.dropCap && wraps && contentMax !== undefined && paragraphs.length > 0 && paragraphs[0].length > 1
951
+ && !joinsWithNext(paragraphs[0], 0)
931
952
  ? el.dropCap
932
953
  : undefined;
933
954
  let m;
@@ -958,7 +979,6 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
958
979
  // Justified lines fill their room by stretching their word spaces, and
959
980
  // a word that does not fit may be cut at a syllable to fill (EF-109).
960
981
  const fill = justify && (el.hyphenate ?? false);
961
- const measureIn = (t, font) => Math.max(0, flowTextWidth(t, font) + letterSpacingPx * graphemeCount(t));
962
982
  let lineNo = 0;
963
983
  paragraphs.forEach((para, p) => {
964
984
  const offsetOf = (i) => {
@@ -1003,10 +1023,29 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
1003
1023
  // Set vertically (in a vertical flow, or turned by `writingMode`): each
1004
1024
  // line's characters stand on the middle of its line box, as a vertical
1005
1025
  // line of the body does (`lineBaselineOffset`).
1006
- if (getMeasureWritingMode() === 'vertical-rl') {
1026
+ if (vertical) {
1007
1027
  for (const line of m.lines)
1008
1028
  line.baselineY = line.topY + lineBaselineOffset(line.height, fontString);
1009
1029
  }
1030
+ else {
1031
+ // Right-to-left text: each line's runs cut where the direction
1032
+ // changes, flagged and ordered for the frame the slot is painted in.
1033
+ // A justified run keeps its spaces' share of the stretch.
1034
+ for (const line of m.lines) {
1035
+ // An Arabic word wider than a wrapping line's room is left whole and
1036
+ // runs past it: flagged for a warning.
1037
+ if (wraps && contentMax !== undefined && line.width > contentMax - (line.xOffset ?? 0) + 0.5 && joiningScriptIn(line.text))
1038
+ line.wordOverflow = true;
1039
+ const runs = line.runs ?? [{ text: line.text, fontString, width: line.width }];
1040
+ const spacing = line.wordSpacingPx ?? 0;
1041
+ const directed = directRuns(runs, base, mirrored, (r, t) => measureIn(t, r.fontString) + spacing * stretchableSpaces(t));
1042
+ if (!directed)
1043
+ continue;
1044
+ line.runs = directed.runs;
1045
+ if (directed.order)
1046
+ line.order = directed.order;
1047
+ }
1048
+ }
1010
1049
  // The tracking after a line's last glyph is advance, not ink: a box that
1011
1050
  // shrink-wraps its text leaves it out (EF-153), as the alignment of each
1012
1051
  // line does (`textPrimitiveToBlock`), so a tracked title anchored to a
@@ -1057,6 +1096,8 @@ function layoutTextElement(el, resolvedText, pin, container, dpi, anchoredToElem
1057
1096
  verticalAlign: el.verticalAlign,
1058
1097
  needsClip: m.needsClip || el.overflow === 'clip',
1059
1098
  letterSpacingPx,
1099
+ ...(base === 'rtl' ? { direction: 'rtl' } : {}),
1100
+ ...((base === 'rtl') !== mirrored ? { startRight: true } : {}),
1060
1101
  contentX: padding.left,
1061
1102
  contentY: padding.top,
1062
1103
  contentWidth: Math.max(0, elementWidth - padding.left - padding.right),
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/design/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/design/layout.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DocumentMetadata, PostextConfig } from '../types';
1
+ import type { DigitSystem, DocumentMetadata, PostextConfig } from '../types';
2
2
  import type { VDTPage } from '../vdt';
3
3
  import { type PageMarks, type PlaceholderResolveOptions, type PlaceholderResult } from '../pipeline/placeholders';
4
4
  /** `'part'` is the opener design of a `:::part` page: it resolves the
@@ -14,6 +14,9 @@ export interface HeadingPlaceholderInfo {
14
14
  /** Document language of the spelled-out placeholders (`{numberWords}`,
15
15
  * `{numberOrdinalWords}`); English when unset. */
16
16
  locale?: string;
17
+ /** The document's digit system, for `{numberDecimal}`; `'latn'` when
18
+ * unset. */
19
+ numerals?: DigitSystem;
17
20
  /** `{chapterNumber}` of the chapter the heading belongs to (its own for a
18
21
  * level-1 heading, else the last level-1 heading's before it) — not the
19
22
  * page's, which is the later chapter where two meet on a page. */
@@ -50,6 +53,9 @@ export interface DesignPlaceholderContext {
50
53
  /** Physical pages of the whole book (`{bookTotalPages}`); defaults to
51
54
  * `allPages.length`. */
52
55
  bookTotalPages?: number;
56
+ /** The document's digit system: `{totalPages}`, `{bookTotalPages}` and
57
+ * `{numberDecimal}` are written in it. `'latn'` when unset. */
58
+ numerals?: DigitSystem;
53
59
  /** Running marks per key, for `{firstMark.<key>}` / `{lastMark.<key>}`
54
60
  * in header and footer slots (see `computePageMarks`). */
55
61
  marksFor?: (key: string) => PageMarks | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"placeholders.d.ts","sourceRoot":"","sources":["../../src/design/placeholders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAKL,KAAK,SAAS,EAEd,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACvB,MAAM,0BAA0B,CAAC;AAElC;gEACgE;AAChE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzE,0DAA0D;AAC1D,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,eAAe,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;uDACmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;uEAEmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC;;mDAE+C;IAC/C,4BAA4B,CAAC,EAAE,MAAM,EAAE,CAAC;IACxC,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IACzC;uEACmE;IACnE,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACnD;oDACgD;IAChD,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC;;8EAE0E;IAC1E,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAClD;2EACuE;IACvE,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC;6BACyB;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;+DAC2D;IAC3D,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;IAClD,iDAAiD;IACjD,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC;AA4CD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAM,CAAC,CAE3E;AAED;;;8BAG8B;AAC9B,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAGnF;AAED;;;;gBAIgB;AAChB,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9F;AAiED;;wDAEwD;AACxD,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,wBAAwB,EAC7B,OAAO,CAAC,EAAE,yBAAyB,GAClC,iBAAiB,CAwDnB;AAED;iEACiE;AACjE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;8CAI8C;AAC9C,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB,GAAG,MAAM,CAG/F;AAED;;;;;2DAK2D;AAC3D,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB,GAAG,MAAM,CAEzF"}
1
+ {"version":3,"file":"placeholders.d.ts","sourceRoot":"","sources":["../../src/design/placeholders.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { withDigits } from '../arabicNumerals';
1
2
  import { chineseInformalStyle, formatCounter, formatNumeral } from '../numbering';
2
3
  import { metadataText } from '../frontmatter';
3
4
  import { resolvePlaceholders as legacyResolvePlaceholders, attrPlaceholderKey, markPlaceholder, PLACEHOLDER_NAME_RE, } from '../pipeline/placeholders';
@@ -71,13 +72,14 @@ function resolveAttrPlaceholder(key, ctx) {
71
72
  }
72
73
  function resolveHeadingName(name, ctx) {
73
74
  const h = ctx.heading;
75
+ const digits = ctx.numerals ?? h?.numerals;
74
76
  switch (name) {
75
77
  case 'titleText':
76
78
  return h?.titleText ?? '';
77
79
  case 'number':
78
80
  return h?.formattedNumber ?? '';
79
81
  case 'numberDecimal':
80
- return h?.numericValue !== undefined ? formatNumeral(h.numericValue, 'decimal') : '';
82
+ return h?.numericValue !== undefined ? formatNumeral(h.numericValue, 'decimal', digits) : '';
81
83
  case 'numberRoman':
82
84
  return h?.numericValue !== undefined ? formatNumeral(h.numericValue, 'upper-roman') : '';
83
85
  case 'numberRomanLower':
@@ -108,9 +110,9 @@ function resolveHeadingName(name, ctx) {
108
110
  case 'pageNumber':
109
111
  return ctx.page.pageLabel;
110
112
  case 'totalPages':
111
- return String(ctx.allPages.length);
113
+ return withDigits(String(ctx.allPages.length), digits);
112
114
  case 'bookTotalPages':
113
- return String(ctx.bookTotalPages ?? ctx.allPages.length);
115
+ return withDigits(String(ctx.bookTotalPages ?? ctx.allPages.length), digits);
114
116
  case 'title':
115
117
  return metadataText(ctx.metadata.title) ?? '';
116
118
  case 'subtitle':
@@ -141,6 +143,7 @@ export function resolveDesignPlaceholders(template, ctx, options) {
141
143
  chapterNumberByPageIndex: ctx.chapterNumberByPageIndex,
142
144
  bookTotalPages: ctx.bookTotalPages,
143
145
  marksFor: ctx.marksFor,
146
+ numerals: ctx.numerals,
144
147
  };
145
148
  return legacyResolvePlaceholders(template, legacy, options);
146
149
  }
@@ -1 +1 @@
1
- {"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../src/design/placeholders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../src/design/placeholders.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export interface DesignTextRun {
16
16
  /** Vertical text: a run the author stood upright (`:upright[…]`) or
17
17
  * turned (`:sideways[…]`). */
18
18
  orientation?: 'upright' | 'sideways';
19
+ /** Painted right to left (see `VDTDesignTextRun.rtl`). */
20
+ rtl?: true;
19
21
  }
20
22
  interface RunStyle {
21
23
  font: string;
@@ -109,7 +111,8 @@ fill?: boolean): RichLine[];
109
111
  * moves back to the last word boundary, and the spaces and joining
110
112
  * punctuation before the ellipsis are dropped — unless what is left keeps
111
113
  * less than half of what fits (a single long word, a URL): then the word
112
- * is cut where it must. Never past `fit`, so the head still fits. */
114
+ * is cut where it must, except a word of a joining script (Arabic), which
115
+ * goes whole. Never past `fit`, so the head still fits. */
113
116
  export declare function ellipsisEndCut(text: string, from: number, to: number, fit: number): number;
114
117
  /** Where an `ellipsis-start` truncation of `text[from, to)` starts, given
115
118
  * `fit` — the start of the longest tail that fits beside the ellipsis: the
@@ -117,7 +120,7 @@ export declare function ellipsisEndCut(text: string, from: number, to: number, f
117
120
  export declare function ellipsisStartCut(text: string, from: number, to: number, fit: number): number;
118
121
  /** An `ellipsis-middle` truncation keeping `text[from, from + left)` and
119
122
  * `text[to - right, to)`, with the spaces that would touch the ellipsis
120
- * dropped. */
123
+ * dropped, and neither side ending inside an Arabic word. */
121
124
  export declare function ellipsisMiddleCut(text: string, from: number, to: number, left: number, right: number): {
122
125
  left: number;
123
126
  right: number;
@@ -1 +1 @@
1
- {"version":3,"file":"richText.d.ts","sourceRoot":"","sources":["../../src/design/richText.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"richText.d.ts","sourceRoot":"","sources":["../../src/design/richText.ts"],"names":[],"mappings":"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"}