postext 1.15.1 → 1.16.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 (421) hide show
  1. package/dist/__tests__/arabic/harakatProfile.test.d.ts +2 -0
  2. package/dist/__tests__/arabic/harakatProfile.test.d.ts.map +1 -0
  3. package/dist/__tests__/arabic/harakatProfile.test.js +105 -0
  4. package/dist/__tests__/arabic/harakatProfile.test.js.map +1 -0
  5. package/dist/__tests__/bundleLocaleAndBytes.test.js +9 -9
  6. package/dist/__tests__/bundleLocaleAndBytes.test.js.map +1 -1
  7. package/dist/__tests__/chineseLocale.test.js +10 -5
  8. package/dist/__tests__/chineseLocale.test.js.map +1 -1
  9. package/dist/__tests__/cjk/annotationsRender.test.js +5 -2
  10. package/dist/__tests__/cjk/annotationsRender.test.js.map +1 -1
  11. package/dist/__tests__/cjk/chipTracking.test.d.ts +2 -0
  12. package/dist/__tests__/cjk/chipTracking.test.d.ts.map +1 -0
  13. package/dist/__tests__/cjk/chipTracking.test.js +52 -0
  14. package/dist/__tests__/cjk/chipTracking.test.js.map +1 -0
  15. package/dist/__tests__/cjk/japaneseHtml.test.d.ts +2 -0
  16. package/dist/__tests__/cjk/japaneseHtml.test.d.ts.map +1 -0
  17. package/dist/__tests__/cjk/japaneseHtml.test.js +163 -0
  18. package/dist/__tests__/cjk/japaneseHtml.test.js.map +1 -0
  19. package/dist/__tests__/cjk/japaneseMarks.test.d.ts +2 -0
  20. package/dist/__tests__/cjk/japaneseMarks.test.d.ts.map +1 -0
  21. package/dist/__tests__/cjk/japaneseMarks.test.js +289 -0
  22. package/dist/__tests__/cjk/japaneseMarks.test.js.map +1 -0
  23. package/dist/__tests__/cjk/japaneseMarksRender.test.d.ts +2 -0
  24. package/dist/__tests__/cjk/japaneseMarksRender.test.d.ts.map +1 -0
  25. package/dist/__tests__/cjk/japaneseMarksRender.test.js +161 -0
  26. package/dist/__tests__/cjk/japaneseMarksRender.test.js.map +1 -0
  27. package/dist/__tests__/cjk/japaneseRuby.test.d.ts +2 -0
  28. package/dist/__tests__/cjk/japaneseRuby.test.d.ts.map +1 -0
  29. package/dist/__tests__/cjk/japaneseRuby.test.js +457 -0
  30. package/dist/__tests__/cjk/japaneseRuby.test.js.map +1 -0
  31. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.d.ts +2 -0
  32. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.d.ts.map +1 -0
  33. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js +50 -0
  34. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js.map +1 -0
  35. package/dist/__tests__/cjk/japaneseSpacing.test.d.ts +2 -0
  36. package/dist/__tests__/cjk/japaneseSpacing.test.d.ts.map +1 -0
  37. package/dist/__tests__/cjk/japaneseSpacing.test.js +417 -0
  38. package/dist/__tests__/cjk/japaneseSpacing.test.js.map +1 -0
  39. package/dist/__tests__/cjk/kanbunKunten.test.d.ts +2 -0
  40. package/dist/__tests__/cjk/kanbunKunten.test.d.ts.map +1 -0
  41. package/dist/__tests__/cjk/kanbunKunten.test.js +230 -0
  42. package/dist/__tests__/cjk/kanbunKunten.test.js.map +1 -0
  43. package/dist/__tests__/cjk/kanbunKuntenRender.test.d.ts +2 -0
  44. package/dist/__tests__/cjk/kanbunKuntenRender.test.d.ts.map +1 -0
  45. package/dist/__tests__/cjk/kanbunKuntenRender.test.js +127 -0
  46. package/dist/__tests__/cjk/kanbunKuntenRender.test.js.map +1 -0
  47. package/dist/__tests__/cjk/kinsokuJa.test.d.ts +2 -0
  48. package/dist/__tests__/cjk/kinsokuJa.test.d.ts.map +1 -0
  49. package/dist/__tests__/cjk/kinsokuJa.test.js +388 -0
  50. package/dist/__tests__/cjk/kinsokuJa.test.js.map +1 -0
  51. package/dist/__tests__/cjk/kinsokuJaBuild.test.d.ts +2 -0
  52. package/dist/__tests__/cjk/kinsokuJaBuild.test.d.ts.map +1 -0
  53. package/dist/__tests__/cjk/kinsokuJaBuild.test.js +38 -0
  54. package/dist/__tests__/cjk/kinsokuJaBuild.test.js.map +1 -0
  55. package/dist/__tests__/cjk/resourceAnnotations.test.d.ts +2 -0
  56. package/dist/__tests__/cjk/resourceAnnotations.test.d.ts.map +1 -0
  57. package/dist/__tests__/cjk/resourceAnnotations.test.js +223 -0
  58. package/dist/__tests__/cjk/resourceAnnotations.test.js.map +1 -0
  59. package/dist/__tests__/defaults/cjk.test.js +10 -2
  60. package/dist/__tests__/defaults/cjk.test.js.map +1 -1
  61. package/dist/__tests__/exports.test.js +36 -0
  62. package/dist/__tests__/exports.test.js.map +1 -1
  63. package/dist/__tests__/headingLetterSpacing.test.js +2 -1
  64. package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
  65. package/dist/__tests__/indexChinese.test.js +1 -1
  66. package/dist/__tests__/indexJapanese.test.d.ts +2 -0
  67. package/dist/__tests__/indexJapanese.test.d.ts.map +1 -0
  68. package/dist/__tests__/indexJapanese.test.js +242 -0
  69. package/dist/__tests__/indexJapanese.test.js.map +1 -0
  70. package/dist/__tests__/japaneseHeadings.test.d.ts +2 -0
  71. package/dist/__tests__/japaneseHeadings.test.d.ts.map +1 -0
  72. package/dist/__tests__/japaneseHeadings.test.js +319 -0
  73. package/dist/__tests__/japaneseHeadings.test.js.map +1 -0
  74. package/dist/__tests__/japaneseLocale.test.d.ts +2 -0
  75. package/dist/__tests__/japaneseLocale.test.d.ts.map +1 -0
  76. package/dist/__tests__/japaneseLocale.test.js +201 -0
  77. package/dist/__tests__/japaneseLocale.test.js.map +1 -0
  78. package/dist/__tests__/japaneseNotes.test.d.ts +2 -0
  79. package/dist/__tests__/japaneseNotes.test.d.ts.map +1 -0
  80. package/dist/__tests__/japaneseNotes.test.js +336 -0
  81. package/dist/__tests__/japaneseNotes.test.js.map +1 -0
  82. package/dist/__tests__/japaneseNumbering.test.d.ts +2 -0
  83. package/dist/__tests__/japaneseNumbering.test.d.ts.map +1 -0
  84. package/dist/__tests__/japaneseNumbering.test.js +292 -0
  85. package/dist/__tests__/japaneseNumbering.test.js.map +1 -0
  86. package/dist/__tests__/pipeline/citationsJapanese.test.d.ts +2 -0
  87. package/dist/__tests__/pipeline/citationsJapanese.test.d.ts.map +1 -0
  88. package/dist/__tests__/pipeline/citationsJapanese.test.js +110 -0
  89. package/dist/__tests__/pipeline/citationsJapanese.test.js.map +1 -0
  90. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js +1 -1
  91. package/dist/__tests__/pipeline/paragraphStyleFaces.test.js.map +1 -1
  92. package/dist/__tests__/pipeline/safeArea.test.d.ts +2 -0
  93. package/dist/__tests__/pipeline/safeArea.test.d.ts.map +1 -0
  94. package/dist/__tests__/pipeline/safeArea.test.js +207 -0
  95. package/dist/__tests__/pipeline/safeArea.test.js.map +1 -0
  96. package/dist/__tests__/vertical/compositionPaint.test.js +6 -5
  97. package/dist/__tests__/vertical/compositionPaint.test.js.map +1 -1
  98. package/dist/__tests__/vertical/japaneseVertical.test.d.ts +2 -0
  99. package/dist/__tests__/vertical/japaneseVertical.test.d.ts.map +1 -0
  100. package/dist/__tests__/vertical/japaneseVertical.test.js +247 -0
  101. package/dist/__tests__/vertical/japaneseVertical.test.js.map +1 -0
  102. package/dist/__tests__/vertical/verticalSpans.d.ts +2 -1
  103. package/dist/__tests__/vertical/verticalSpans.d.ts.map +1 -1
  104. package/dist/__tests__/vertical/verticalSpans.js +3 -2
  105. package/dist/__tests__/vertical/verticalSpans.js.map +1 -1
  106. package/dist/__tests__/video.test.d.ts +2 -0
  107. package/dist/__tests__/video.test.d.ts.map +1 -0
  108. package/dist/__tests__/video.test.js +305 -0
  109. package/dist/__tests__/video.test.js.map +1 -0
  110. package/dist/arabicMarks.d.ts +11 -1
  111. package/dist/arabicMarks.d.ts.map +1 -1
  112. package/dist/arabicMarks.js +72 -5
  113. package/dist/arabicMarks.js.map +1 -1
  114. package/dist/bundle/adapters.d.ts +6 -0
  115. package/dist/bundle/adapters.d.ts.map +1 -1
  116. package/dist/bundle/adapters.js +30 -0
  117. package/dist/bundle/adapters.js.map +1 -1
  118. package/dist/bundle/codec.d.ts.map +1 -1
  119. package/dist/bundle/codec.js +67 -3
  120. package/dist/bundle/codec.js.map +1 -1
  121. package/dist/bundle/index.d.ts +2 -2
  122. package/dist/bundle/index.d.ts.map +1 -1
  123. package/dist/bundle/index.js +2 -2
  124. package/dist/bundle/index.js.map +1 -1
  125. package/dist/bundle/manifest.d.ts +8 -0
  126. package/dist/bundle/manifest.d.ts.map +1 -1
  127. package/dist/bundle/manifest.js +48 -1
  128. package/dist/bundle/manifest.js.map +1 -1
  129. package/dist/bundle/types.d.ts +5 -0
  130. package/dist/bundle/types.d.ts.map +1 -1
  131. package/dist/bundle/zip.js +1 -1
  132. package/dist/bundle/zip.js.map +1 -1
  133. package/dist/canvas-backend/annotations.d.ts +20 -5
  134. package/dist/canvas-backend/annotations.d.ts.map +1 -1
  135. package/dist/canvas-backend/annotations.js +59 -6
  136. package/dist/canvas-backend/annotations.js.map +1 -1
  137. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  138. package/dist/canvas-backend/blockRender.js +29 -3
  139. package/dist/canvas-backend/blockRender.js.map +1 -1
  140. package/dist/canvas-backend/renderResourceBlock.d.ts +6 -1
  141. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  142. package/dist/canvas-backend/renderResourceBlock.js +124 -5
  143. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  144. package/dist/canvas-backend/verticalText.d.ts +9 -4
  145. package/dist/canvas-backend/verticalText.d.ts.map +1 -1
  146. package/dist/canvas-backend/verticalText.js +20 -9
  147. package/dist/canvas-backend/verticalText.js.map +1 -1
  148. package/dist/chineseNumerals.d.ts +3 -2
  149. package/dist/chineseNumerals.d.ts.map +1 -1
  150. package/dist/chineseNumerals.js +11 -8
  151. package/dist/chineseNumerals.js.map +1 -1
  152. package/dist/citations/bibtex.d.ts.map +1 -1
  153. package/dist/citations/bibtex.js +4 -0
  154. package/dist/citations/bibtex.js.map +1 -1
  155. package/dist/citations/data.d.ts.map +1 -1
  156. package/dist/citations/data.js +6 -1
  157. package/dist/citations/data.js.map +1 -1
  158. package/dist/citations/types.d.ts +8 -0
  159. package/dist/citations/types.d.ts.map +1 -1
  160. package/dist/cjkMarks.d.ts +23 -14
  161. package/dist/cjkMarks.d.ts.map +1 -1
  162. package/dist/cjkMarks.js +251 -49
  163. package/dist/cjkMarks.js.map +1 -1
  164. package/dist/configWarnings.js +9 -3
  165. package/dist/configWarnings.js.map +1 -1
  166. package/dist/defaults/cjk.d.ts +64 -14
  167. package/dist/defaults/cjk.d.ts.map +1 -1
  168. package/dist/defaults/cjk.js +203 -29
  169. package/dist/defaults/cjk.js.map +1 -1
  170. package/dist/defaults/footnotes.d.ts +27 -4
  171. package/dist/defaults/footnotes.d.ts.map +1 -1
  172. package/dist/defaults/footnotes.js +95 -36
  173. package/dist/defaults/footnotes.js.map +1 -1
  174. package/dist/defaults/headings.d.ts +5 -0
  175. package/dist/defaults/headings.d.ts.map +1 -1
  176. package/dist/defaults/headings.js +46 -1
  177. package/dist/defaults/headings.js.map +1 -1
  178. package/dist/defaults/index.d.ts +3 -2
  179. package/dist/defaults/index.d.ts.map +1 -1
  180. package/dist/defaults/index.js +12 -3
  181. package/dist/defaults/index.js.map +1 -1
  182. package/dist/defaults/indexConfig.d.ts.map +1 -1
  183. package/dist/defaults/indexConfig.js +7 -4
  184. package/dist/defaults/indexConfig.js.map +1 -1
  185. package/dist/defaults/paragraphStyles.d.ts.map +1 -1
  186. package/dist/defaults/paragraphStyles.js +4 -0
  187. package/dist/defaults/paragraphStyles.js.map +1 -1
  188. package/dist/defaults/resourceTypes.d.ts +16 -3
  189. package/dist/defaults/resourceTypes.d.ts.map +1 -1
  190. package/dist/defaults/resourceTypes.js +56 -8
  191. package/dist/defaults/resourceTypes.js.map +1 -1
  192. package/dist/defaults/shared.d.ts.map +1 -1
  193. package/dist/defaults/shared.js +21 -0
  194. package/dist/defaults/shared.js.map +1 -1
  195. package/dist/defaults/tableStyle.d.ts.map +1 -1
  196. package/dist/defaults/tableStyle.js +4 -1
  197. package/dist/defaults/tableStyle.js.map +1 -1
  198. package/dist/defaults/videoStyle.d.ts +9 -0
  199. package/dist/defaults/videoStyle.d.ts.map +1 -0
  200. package/dist/defaults/videoStyle.js +130 -0
  201. package/dist/defaults/videoStyle.js.map +1 -0
  202. package/dist/design/placeholders.d.ts.map +1 -1
  203. package/dist/design/placeholders.js +5 -3
  204. package/dist/design/placeholders.js.map +1 -1
  205. package/dist/html-backend.d.ts +13 -0
  206. package/dist/html-backend.d.ts.map +1 -1
  207. package/dist/html-backend.js +233 -26
  208. package/dist/html-backend.js.map +1 -1
  209. package/dist/htmlAnnotations.d.ts +47 -9
  210. package/dist/htmlAnnotations.d.ts.map +1 -1
  211. package/dist/htmlAnnotations.js +89 -17
  212. package/dist/htmlAnnotations.js.map +1 -1
  213. package/dist/index.d.ts +13 -7
  214. package/dist/index.d.ts.map +1 -1
  215. package/dist/index.js +8 -4
  216. package/dist/index.js.map +1 -1
  217. package/dist/japaneseNumerals.d.ts +44 -0
  218. package/dist/japaneseNumerals.d.ts.map +1 -0
  219. package/dist/japaneseNumerals.js +100 -0
  220. package/dist/japaneseNumerals.js.map +1 -0
  221. package/dist/knuthPlass/richAdapter.d.ts +5 -1
  222. package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
  223. package/dist/knuthPlass/richAdapter.js +2 -0
  224. package/dist/knuthPlass/richAdapter.js.map +1 -1
  225. package/dist/locale.d.ts +19 -12
  226. package/dist/locale.d.ts.map +1 -1
  227. package/dist/locale.js +24 -12
  228. package/dist/locale.js.map +1 -1
  229. package/dist/measure/cache.d.ts.map +1 -1
  230. package/dist/measure/cache.js +17 -8
  231. package/dist/measure/cache.js.map +1 -1
  232. package/dist/measure/canvas.d.ts +21 -0
  233. package/dist/measure/canvas.d.ts.map +1 -1
  234. package/dist/measure/canvas.js +82 -0
  235. package/dist/measure/canvas.js.map +1 -1
  236. package/dist/measure/cjk.d.ts +3 -1
  237. package/dist/measure/cjk.d.ts.map +1 -1
  238. package/dist/measure/cjk.js +4 -2
  239. package/dist/measure/cjk.js.map +1 -1
  240. package/dist/measure/cjkAnnotate.d.ts +62 -3
  241. package/dist/measure/cjkAnnotate.d.ts.map +1 -1
  242. package/dist/measure/cjkAnnotate.js +99 -2
  243. package/dist/measure/cjkAnnotate.js.map +1 -1
  244. package/dist/measure/cjkClasses.d.ts +93 -13
  245. package/dist/measure/cjkClasses.d.ts.map +1 -1
  246. package/dist/measure/cjkClasses.js +204 -14
  247. package/dist/measure/cjkClasses.js.map +1 -1
  248. package/dist/measure/cjkCompose.d.ts +10 -4
  249. package/dist/measure/cjkCompose.d.ts.map +1 -1
  250. package/dist/measure/cjkCompose.js +715 -75
  251. package/dist/measure/cjkCompose.js.map +1 -1
  252. package/dist/measure/cjkPunctuation.d.ts +68 -14
  253. package/dist/measure/cjkPunctuation.d.ts.map +1 -1
  254. package/dist/measure/cjkPunctuation.js +96 -21
  255. package/dist/measure/cjkPunctuation.js.map +1 -1
  256. package/dist/measure/plain.js +2 -2
  257. package/dist/measure/plain.js.map +1 -1
  258. package/dist/measure/rich.d.ts +12 -2
  259. package/dist/measure/rich.d.ts.map +1 -1
  260. package/dist/measure/rich.js +46 -8
  261. package/dist/measure/rich.js.map +1 -1
  262. package/dist/measure/rubyJis.d.ts +96 -0
  263. package/dist/measure/rubyJis.d.ts.map +1 -0
  264. package/dist/measure/rubyJis.js +245 -0
  265. package/dist/measure/rubyJis.js.map +1 -0
  266. package/dist/measure/vertical.d.ts +13 -5
  267. package/dist/measure/vertical.d.ts.map +1 -1
  268. package/dist/measure/vertical.js +16 -6
  269. package/dist/measure/vertical.js.map +1 -1
  270. package/dist/numberWords.d.ts +4 -3
  271. package/dist/numberWords.d.ts.map +1 -1
  272. package/dist/numberWords.js +15 -5
  273. package/dist/numberWords.js.map +1 -1
  274. package/dist/numbering.d.ts +24 -12
  275. package/dist/numbering.d.ts.map +1 -1
  276. package/dist/numbering.js +57 -11
  277. package/dist/numbering.js.map +1 -1
  278. package/dist/parse/annotations.d.ts +21 -18
  279. package/dist/parse/annotations.d.ts.map +1 -1
  280. package/dist/parse/annotations.js +140 -51
  281. package/dist/parse/annotations.js.map +1 -1
  282. package/dist/parse/index.d.ts +1 -1
  283. package/dist/parse/index.d.ts.map +1 -1
  284. package/dist/parse/index.js.map +1 -1
  285. package/dist/parse/indexMarks.d.ts.map +1 -1
  286. package/dist/parse/indexMarks.js +42 -0
  287. package/dist/parse/indexMarks.js.map +1 -1
  288. package/dist/parse/inlineFormatting.d.ts +4 -3
  289. package/dist/parse/inlineFormatting.d.ts.map +1 -1
  290. package/dist/parse/inlineFormatting.js +9 -8
  291. package/dist/parse/inlineFormatting.js.map +1 -1
  292. package/dist/parse/types.d.ts +93 -5
  293. package/dist/parse/types.d.ts.map +1 -1
  294. package/dist/pipeline/annotations.d.ts +25 -15
  295. package/dist/pipeline/annotations.d.ts.map +1 -1
  296. package/dist/pipeline/annotations.js +102 -16
  297. package/dist/pipeline/annotations.js.map +1 -1
  298. package/dist/pipeline/build.d.ts.map +1 -1
  299. package/dist/pipeline/build.js +284 -31
  300. package/dist/pipeline/build.js.map +1 -1
  301. package/dist/pipeline/buildBlockKind.js +2 -1
  302. package/dist/pipeline/buildBlockKind.js.map +1 -1
  303. package/dist/pipeline/buildHelpers.d.ts +2 -0
  304. package/dist/pipeline/buildHelpers.d.ts.map +1 -1
  305. package/dist/pipeline/buildHelpers.js +17 -0
  306. package/dist/pipeline/buildHelpers.js.map +1 -1
  307. package/dist/pipeline/buildMeasurement.d.ts +3 -0
  308. package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
  309. package/dist/pipeline/buildMeasurement.js +1 -0
  310. package/dist/pipeline/buildMeasurement.js.map +1 -1
  311. package/dist/pipeline/calloutLayout.d.ts +2 -0
  312. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  313. package/dist/pipeline/calloutLayout.js +5 -5
  314. package/dist/pipeline/calloutLayout.js.map +1 -1
  315. package/dist/pipeline/citations.d.ts +1 -1
  316. package/dist/pipeline/citations.d.ts.map +1 -1
  317. package/dist/pipeline/citations.js +15 -7
  318. package/dist/pipeline/citations.js.map +1 -1
  319. package/dist/pipeline/columnBalancing.d.ts +22 -0
  320. package/dist/pipeline/columnBalancing.d.ts.map +1 -1
  321. package/dist/pipeline/columnBalancing.js +80 -3
  322. package/dist/pipeline/columnBalancing.js.map +1 -1
  323. package/dist/pipeline/config.d.ts.map +1 -1
  324. package/dist/pipeline/config.js +3 -2
  325. package/dist/pipeline/config.js.map +1 -1
  326. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  327. package/dist/pipeline/contentWarnings.js +19 -0
  328. package/dist/pipeline/contentWarnings.js.map +1 -1
  329. package/dist/pipeline/continuation.d.ts.map +1 -1
  330. package/dist/pipeline/continuation.js +3 -3
  331. package/dist/pipeline/continuation.js.map +1 -1
  332. package/dist/pipeline/crossRefs.d.ts.map +1 -1
  333. package/dist/pipeline/crossRefs.js +3 -0
  334. package/dist/pipeline/crossRefs.js.map +1 -1
  335. package/dist/pipeline/footnotes.d.ts +20 -12
  336. package/dist/pipeline/footnotes.d.ts.map +1 -1
  337. package/dist/pipeline/footnotes.js +62 -16
  338. package/dist/pipeline/footnotes.js.map +1 -1
  339. package/dist/pipeline/headingStyles.js +1 -1
  340. package/dist/pipeline/headingStyles.js.map +1 -1
  341. package/dist/pipeline/indexDirective.d.ts.map +1 -1
  342. package/dist/pipeline/indexDirective.js +89 -12
  343. package/dist/pipeline/indexDirective.js.map +1 -1
  344. package/dist/pipeline/indexGroups.d.ts +5 -3
  345. package/dist/pipeline/indexGroups.d.ts.map +1 -1
  346. package/dist/pipeline/indexGroups.js +9 -4
  347. package/dist/pipeline/indexGroups.js.map +1 -1
  348. package/dist/pipeline/indexJapanese.d.ts +75 -0
  349. package/dist/pipeline/indexJapanese.d.ts.map +1 -0
  350. package/dist/pipeline/indexJapanese.js +264 -0
  351. package/dist/pipeline/indexJapanese.js.map +1 -0
  352. package/dist/pipeline/lineSpan.d.ts +36 -0
  353. package/dist/pipeline/lineSpan.d.ts.map +1 -0
  354. package/dist/pipeline/lineSpan.js +36 -0
  355. package/dist/pipeline/lineSpan.js.map +1 -0
  356. package/dist/pipeline/lists.js +2 -2
  357. package/dist/pipeline/lists.js.map +1 -1
  358. package/dist/pipeline/measureContentBlock.d.ts +4 -0
  359. package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
  360. package/dist/pipeline/measureContentBlock.js +54 -5
  361. package/dist/pipeline/measureContentBlock.js.map +1 -1
  362. package/dist/pipeline/outline.d.ts.map +1 -1
  363. package/dist/pipeline/outline.js +3 -1
  364. package/dist/pipeline/outline.js.map +1 -1
  365. package/dist/pipeline/paragraphContainers.d.ts +25 -2
  366. package/dist/pipeline/paragraphContainers.d.ts.map +1 -1
  367. package/dist/pipeline/paragraphContainers.js +82 -2
  368. package/dist/pipeline/paragraphContainers.js.map +1 -1
  369. package/dist/pipeline/parts.d.ts +2 -2
  370. package/dist/pipeline/parts.js +3 -3
  371. package/dist/pipeline/parts.js.map +1 -1
  372. package/dist/pipeline/placement.d.ts.map +1 -1
  373. package/dist/pipeline/placement.js +2 -2
  374. package/dist/pipeline/placement.js.map +1 -1
  375. package/dist/pipeline/resourceLayout.d.ts +6 -0
  376. package/dist/pipeline/resourceLayout.d.ts.map +1 -1
  377. package/dist/pipeline/resourceLayout.js +85 -15
  378. package/dist/pipeline/resourceLayout.js.map +1 -1
  379. package/dist/pipeline/resourceNumbering.d.ts +5 -2
  380. package/dist/pipeline/resourceNumbering.d.ts.map +1 -1
  381. package/dist/pipeline/resourceNumbering.js +12 -7
  382. package/dist/pipeline/resourceNumbering.js.map +1 -1
  383. package/dist/pipeline/safeArea.d.ts +29 -0
  384. package/dist/pipeline/safeArea.d.ts.map +1 -0
  385. package/dist/pipeline/safeArea.js +89 -0
  386. package/dist/pipeline/safeArea.js.map +1 -0
  387. package/dist/pipeline/styles.d.ts +12 -0
  388. package/dist/pipeline/styles.d.ts.map +1 -1
  389. package/dist/pipeline/styles.js +7 -1
  390. package/dist/pipeline/styles.js.map +1 -1
  391. package/dist/pipeline/verse.d.ts +3 -0
  392. package/dist/pipeline/verse.d.ts.map +1 -1
  393. package/dist/pipeline/verse.js +1 -1
  394. package/dist/pipeline/verse.js.map +1 -1
  395. package/dist/pipeline/verticalMetrics.d.ts.map +1 -1
  396. package/dist/pipeline/verticalMetrics.js +4 -0
  397. package/dist/pipeline/verticalMetrics.js.map +1 -1
  398. package/dist/pipeline/videoOverlay.d.ts +24 -0
  399. package/dist/pipeline/videoOverlay.d.ts.map +1 -0
  400. package/dist/pipeline/videoOverlay.js +134 -0
  401. package/dist/pipeline/videoOverlay.js.map +1 -0
  402. package/dist/types.d.ts +567 -50
  403. package/dist/types.d.ts.map +1 -1
  404. package/dist/uprightArabic.js +1 -1
  405. package/dist/uprightArabic.js.map +1 -1
  406. package/dist/vdt.d.ts +221 -17
  407. package/dist/vdt.d.ts.map +1 -1
  408. package/dist/vdt.js.map +1 -1
  409. package/dist/video/qr.d.ts +21 -0
  410. package/dist/video/qr.d.ts.map +1 -0
  411. package/dist/video/qr.js +326 -0
  412. package/dist/video/qr.js.map +1 -0
  413. package/dist/video/url.d.ts +62 -0
  414. package/dist/video/url.d.ts.map +1 -0
  415. package/dist/video/url.js +206 -0
  416. package/dist/video/url.js.map +1 -0
  417. package/dist/writingMode.d.ts +74 -20
  418. package/dist/writingMode.d.ts.map +1 -1
  419. package/dist/writingMode.js +146 -27
  420. package/dist/writingMode.js.map +1 -1
  421. package/package.json +1 -1
@@ -0,0 +1,292 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { buildPageLabels, computeHeadingNumbers, formatCounter, formatNumeral, hanInformalStyle, parseNumberFormat, EAST_ASIAN_NUMERAL_STYLES, } from '../numbering';
3
+ import { HIRAGANA, HIRAGANA_IROHA, KATAKANA, KATAKANA_IROHA, japaneseNumeral } from '../japaneseNumerals';
4
+ import { parseChineseNumeral } from '../chineseNumerals';
5
+ import { numberToWords } from '../numberWords';
6
+ import { parsePartNumber } from '../pipeline/parts';
7
+ import { formatListNumber } from '../pipeline/lists';
8
+ import { computeHeadingContext, computeResourceNumbering } from '../pipeline/resourceNumbering';
9
+ import { formatFootnoteNumber } from '../pipeline/footnotes';
10
+ import { resolveFootnotesConfig } from '../defaults/footnotes';
11
+ import { collectConfigWarnings } from '../configWarnings';
12
+ import { parseMarkdown } from '../parse';
13
+ import { buildDocument } from '../pipeline';
14
+ // Deterministic text measurement stub (no DOM in the node test env).
15
+ class StubCtx {
16
+ font = '';
17
+ measureText(s) {
18
+ return { width: s.length * 7 };
19
+ }
20
+ }
21
+ globalThis.OffscreenCanvas = class {
22
+ getContext() {
23
+ return new StubCtx();
24
+ }
25
+ };
26
+ /** CSS Counter Styles 3's additive algorithm, run on the spec's own
27
+ * `additive-symbols` table (code points as the spec lists them): an
28
+ * independent reading of `japanese-informal` and `japanese-formal` over
29
+ * their range, 0–9 999. */
30
+ function cssAdditive(n, table) {
31
+ if (n === 0)
32
+ return table.find(([w]) => w === 0)[1];
33
+ let value = n;
34
+ let out = '';
35
+ for (const [weight, symbol] of table) {
36
+ if (weight === 0 || weight > value)
37
+ continue;
38
+ const reps = Math.floor(value / weight);
39
+ out += symbol.repeat(reps);
40
+ value -= reps * weight;
41
+ }
42
+ return out;
43
+ }
44
+ const cp = (...codes) => String.fromCodePoint(...codes);
45
+ /** The digits 1–9 of each style, as code points, and the markers. */
46
+ const INFORMAL_DIGIT_CP = [0x4e00, 0x4e8c, 0x4e09, 0x56db, 0x4e94, 0x516d, 0x4e03, 0x516b, 0x4e5d];
47
+ const FORMAL_DIGIT_CP = [0x58f1, 0x5f10, 0x53c2, 0x56db, 0x4f0d, 0x516d, 0x4e03, 0x516b, 0x4e5d];
48
+ function additiveTable(digits, markers, formal, zero) {
49
+ const rows = [];
50
+ for (const [pos, marker] of [[3, markers[2]], [2, markers[1]], [1, markers[0]]]) {
51
+ for (let d = 9; d >= 1; d--) {
52
+ // The informal 1000, 100 and 10 are the bare marker: 千, 百, 十.
53
+ const head = d === 1 && !formal ? '' : cp(digits[d - 1]);
54
+ rows.push([d * 10 ** pos, head + cp(marker)]);
55
+ }
56
+ }
57
+ for (let d = 9; d >= 1; d--)
58
+ rows.push([d, cp(digits[d - 1])]);
59
+ rows.push([0, cp(zero)]);
60
+ return rows;
61
+ }
62
+ const CSS_INFORMAL = additiveTable(INFORMAL_DIGIT_CP, [0x5341, 0x767e, 0x5343], false, 0x3007);
63
+ const CSS_FORMAL = additiveTable(FORMAL_DIGIT_CP, [0x62fe, 0x767e, 0x9621], true, 0x96f6);
64
+ describe('japanese-informal', () => {
65
+ it('matches the CSS additive table for every number from 0 to 9 999', () => {
66
+ for (let n = 0; n <= 9999; n++)
67
+ expect(formatNumeral(n, 'japanese-informal'), String(n)).toBe(cssAdditive(n, CSS_INFORMAL));
68
+ });
69
+ it('drops 一 before 十百千 and writes no 零 for a gap', () => {
70
+ const cases = [
71
+ [0, '〇'], [1, '一'], [9, '九'], [10, '十'], [11, '十一'], [19, '十九'], [20, '二十'], [99, '九十九'],
72
+ [100, '百'], [101, '百一'], [110, '百十'], [1000, '千'], [1001, '千一'], [1010, '千十'], [6001, '六千一'],
73
+ [2026, '二千二十六'], [9999, '九千九百九十九'],
74
+ ];
75
+ for (const [n, text] of cases)
76
+ expect(formatNumeral(n, 'japanese-informal'), String(n)).toBe(text);
77
+ });
78
+ it('goes on past 9 999 with 万 億 兆, keeping 一 before a unit', () => {
79
+ const cases = [
80
+ [10_000, '一万'], [10_001, '一万一'], [11_000, '一万千'], [100_000, '十万'], [110_000, '十一万'],
81
+ [1_000_000, '百万'], [10_000_000, '千万'], [100_000_000, '一億'], [100_010_000, '一億一万'],
82
+ [100_000_001, '一億一'], [1e12, '一兆'], [123_456_789, '一億二千三百四十五万六千七百八十九'],
83
+ // The last safe integer, then past it: digits.
84
+ [Number.MAX_SAFE_INTEGER, '九千七兆千九百九十二億五千四百七十四万九百九十一'],
85
+ [2 ** 53, String(2 ** 53)],
86
+ ];
87
+ for (const [n, text] of cases)
88
+ expect(formatNumeral(n, 'japanese-informal'), String(n)).toBe(text);
89
+ });
90
+ it('prints nothing below zero, as the other styles', () => {
91
+ expect(formatNumeral(-1, 'japanese-informal')).toBe('');
92
+ });
93
+ });
94
+ describe('japanese-formal', () => {
95
+ it('matches the CSS additive table for every number from 0 to 9 999', () => {
96
+ for (let n = 0; n <= 9999; n++)
97
+ expect(formatNumeral(n, 'japanese-formal'), String(n)).toBe(cssAdditive(n, CSS_FORMAL));
98
+ });
99
+ it('keeps 壱 before 拾百阡 and uses the daiji 壱弐参伍', () => {
100
+ const cases = [
101
+ [0, '零'], [1, '壱'], [2, '弐'], [3, '参'], [4, '四'], [5, '伍'], [9, '九'], [10, '壱拾'], [11, '壱拾壱'],
102
+ [19, '壱拾九'], [20, '弐拾'], [99, '九拾九'], [100, '壱百'], [101, '壱百壱'], [110, '壱百壱拾'],
103
+ [1000, '壱阡'], [1001, '壱阡壱'], [10_000, '壱萬'], [10_001, '壱萬壱'], [35_000, '参萬伍阡'],
104
+ [100_000_000, '壱億'], [1e12, '壱兆'],
105
+ ];
106
+ for (const [n, text] of cases)
107
+ expect(formatNumeral(n, 'japanese-formal'), String(n)).toBe(text);
108
+ });
109
+ });
110
+ describe('kana series', () => {
111
+ it('are the CSS symbol lists: 48 gojūon kana with ゐ ゑ, 47 iroha kana without ん', () => {
112
+ expect(HIRAGANA).toHaveLength(48);
113
+ expect(KATAKANA).toHaveLength(48);
114
+ expect(HIRAGANA_IROHA).toHaveLength(47);
115
+ expect(KATAKANA_IROHA).toHaveLength(47);
116
+ for (const series of [HIRAGANA, KATAKANA, HIRAGANA_IROHA, KATAKANA_IROHA])
117
+ expect(new Set(series).size).toBe(series.length);
118
+ // The iroha uses every gojūon kana once, ん aside.
119
+ expect([...HIRAGANA_IROHA].sort()).toEqual(HIRAGANA.filter((k) => k !== 'ん').sort());
120
+ expect([...KATAKANA_IROHA].sort()).toEqual(KATAKANA.filter((k) => k !== 'ン').sort());
121
+ // Katakana is hiragana moved by 0x60, kana by kana.
122
+ expect(KATAKANA.map((k) => k.codePointAt(0) - 0x60)).toEqual(HIRAGANA.map((k) => k.codePointAt(0)));
123
+ expect(HIRAGANA.slice(43).join('')).toBe('わゐゑをん');
124
+ expect(HIRAGANA_IROHA.slice(0, 7).join('')).toBe('いろはにほへと');
125
+ expect(HIRAGANA_IROHA.slice(-5).join('')).toBe('ゑひもせす');
126
+ });
127
+ it('number alphabetically and wrap into two kana past the last', () => {
128
+ const cases = [
129
+ ['hiragana', 1, 'あ'], ['hiragana', 9, 'け'], ['hiragana', 10, 'こ'], ['hiragana', 11, 'さ'], ['hiragana', 19, 'て'],
130
+ ['hiragana', 20, 'と'], ['hiragana', 48, 'ん'], ['hiragana', 49, 'ああ'], ['hiragana', 50, 'あい'], ['hiragana', 96, 'あん'],
131
+ ['hiragana', 97, 'いあ'], ['hiragana', 48 * 49, 'んん'], ['hiragana', 48 * 49 + 1, 'あああ'],
132
+ ['katakana', 1, 'ア'], ['katakana', 48, 'ン'], ['katakana', 49, 'アア'],
133
+ ['hiragana-iroha', 1, 'い'], ['hiragana-iroha', 2, 'ろ'], ['hiragana-iroha', 3, 'は'], ['hiragana-iroha', 47, 'す'],
134
+ ['hiragana-iroha', 48, 'いい'], ['hiragana-iroha', 49, 'いろ'], ['hiragana-iroha', 94, 'いす'], ['hiragana-iroha', 95, 'ろい'],
135
+ ['katakana-iroha', 1, 'イ'], ['katakana-iroha', 10, 'ヌ'], ['katakana-iroha', 47, 'ス'], ['katakana-iroha', 48, 'イイ'],
136
+ ];
137
+ for (const [style, n, text] of cases)
138
+ expect(formatNumeral(n, style), `${style} ${n}`).toBe(text);
139
+ });
140
+ it('have no zero', () => {
141
+ for (const style of ['hiragana', 'katakana', 'hiragana-iroha', 'katakana-iroha'])
142
+ expect(formatNumeral(0, style)).toBe('');
143
+ });
144
+ });
145
+ describe('format spellings', () => {
146
+ it('reads the CSS names, case-insensitive, and the kana and daiji tokens', () => {
147
+ for (const name of ['japanese-informal', 'japanese-formal', 'hiragana', 'katakana', 'hiragana-iroha', 'katakana-iroha']) {
148
+ expect(EAST_ASIAN_NUMERAL_STYLES).toContain(name);
149
+ expect(parseNumberFormat(name)).toBe(name);
150
+ expect(parseNumberFormat(name.toUpperCase())).toBe(name);
151
+ }
152
+ expect(parseNumberFormat('あ')).toBe('hiragana');
153
+ expect(parseNumberFormat('ア')).toBe('katakana');
154
+ expect(parseNumberFormat('い')).toBe('hiragana-iroha');
155
+ expect(parseNumberFormat('イ')).toBe('katakana-iroha');
156
+ expect(parseNumberFormat('壱')).toBe('japanese-formal');
157
+ });
158
+ it('一 is japanese-informal in a Japanese document and Chinese elsewhere', () => {
159
+ for (const ja of ['ja', 'ja-JP', 'JA_jp', 'ja-Jpan-JP'])
160
+ expect(parseNumberFormat('一', ja), ja).toBe('japanese-informal');
161
+ expect(parseNumberFormat('一')).toBe('simp-chinese-informal');
162
+ expect(parseNumberFormat('一', 'zh')).toBe('simp-chinese-informal');
163
+ expect(parseNumberFormat('一', 'zh-Hant')).toBe('trad-chinese-informal');
164
+ expect(parseNumberFormat('一', 'en')).toBe('simp-chinese-informal');
165
+ // 壹 stays the Chinese formal of the script; the Japanese daiji are 壱.
166
+ expect(parseNumberFormat('壹', 'ja')).toBe('simp-chinese-formal');
167
+ expect(hanInformalStyle('ja-JP')).toBe('japanese-informal');
168
+ expect(hanInformalStyle('zh-TW')).toBe('trad-chinese-informal');
169
+ });
170
+ it('no config warning for the new names and tokens', () => {
171
+ expect(collectConfigWarnings({
172
+ locale: 'ja',
173
+ page: { pageNumbering: { format: 'japanese-informal' } },
174
+ orderedLists: { numberFormat: 'katakana-iroha' },
175
+ footnotes: { numberFormat: 'hiragana' },
176
+ resourceTypes: [{ id: 'figure', name: '図', shortLabel: '図', captionPrefix: '図', numberingTemplate: '{n}', resetOn: 'never', counterFormat: 'japanese-formal' }],
177
+ })).toEqual([]);
178
+ });
179
+ });
180
+ describe('heading templates', () => {
181
+ const at = (tpl, n, locale) => {
182
+ const blocks = parseMarkdown('# A');
183
+ return computeHeadingNumbers(blocks, { 1: tpl }, [n - 1], undefined, { locale })[0];
184
+ };
185
+ it('第{1:一}章 in Japanese, Chinese unchanged', () => {
186
+ expect([1, 10, 11, 101, 110, 1001, 10_001].map((n) => at('第{1:一}章', n, 'ja'))).toEqual(['第一章', '第十章', '第十一章', '第百一章', '第百十章', '第千一章', '第一万一章']);
187
+ expect(at('第{1:一}回', 101, 'zh-Hans')).toBe('第一百零一回');
188
+ expect(at('第{1:一}回', 101, 'zh-Hant')).toBe('第一百零一回');
189
+ expect(at('{1:壱}', 12, 'ja')).toBe('壱拾弐');
190
+ expect(at('{1:あ}、', 2, 'ja')).toBe('い、');
191
+ expect(at('({1:イ})', 3, 'ja')).toBe('(ハ)');
192
+ expect(at('{1:japanese-informal}', 20)).toBe('二十');
193
+ });
194
+ it('spelled-out numbers in Japanese: cardinal kanji and 第 ordinals', () => {
195
+ const cases = [[1, '一'], [10, '十'], [21, '二十一'], [101, '百一'], [1000, '千'], [10_001, '一万一']];
196
+ for (const [n, text] of cases) {
197
+ expect(numberToWords(n, 'cardinal', 'ja'), String(n)).toBe(text);
198
+ expect(numberToWords(n, 'ordinal', 'ja-JP'), String(n)).toBe(`第${text}`);
199
+ }
200
+ expect(at('{1:ordinal}', 21, 'ja')).toBe('第二十一');
201
+ expect(formatCounter(21, 'Words', 'ja')).toBe('二十一');
202
+ expect(formatCounter(3, 'ORDINAL', 'ja')).toBe('第三');
203
+ expect(numberToWords(0, 'cardinal', 'ja')).toBe('');
204
+ // Chinese and English are unchanged.
205
+ expect(numberToWords(101, 'cardinal', 'zh')).toBe('一百零一');
206
+ expect(numberToWords(21, 'cardinal', 'en')).toBe('twenty-one');
207
+ });
208
+ });
209
+ describe('numbers read back', () => {
210
+ it('reads the Japanese counted forms and the daiji', () => {
211
+ const cases = [
212
+ ['百一', 101], ['千十', 1010], ['百', 100], ['千', 1000], ['十一', 11], ['一万一', 10_001], ['一億一万', 100_010_000],
213
+ ['二〇二六', 2026], ['壱拾', 10], ['壱百壱', 101], ['弐阡', 2000], ['参萬伍阡', 35_000],
214
+ ];
215
+ for (const [raw, n] of cases)
216
+ expect(parseChineseNumeral(raw), raw).toBe(n);
217
+ });
218
+ it('a part number with 巻 or 部', () => {
219
+ expect(parsePartNumber('第三巻')).toBe(3);
220
+ expect(parsePartNumber('巻之一')).toBeUndefined();
221
+ expect(parsePartNumber('第百一部')).toBe(101);
222
+ expect(parsePartNumber('巻十二')).toBe(12);
223
+ });
224
+ it('round-trips every formatted number', () => {
225
+ for (const n of [1, 9, 10, 11, 19, 20, 99, 100, 101, 110, 1000, 1001, 10_000, 10_001, 123_456_789]) {
226
+ expect(parseChineseNumeral(japaneseNumeral(n, 'informal')), String(n)).toBe(n);
227
+ expect(parseChineseNumeral(japaneseNumeral(n, 'formal')), String(n)).toBe(n);
228
+ }
229
+ });
230
+ });
231
+ describe('lists, footnotes, resources and pages', () => {
232
+ const pt = (value) => ({ value, unit: 'pt' });
233
+ const base = {
234
+ locale: 'ja',
235
+ page: { width: pt(300), height: pt(400), margins: { top: pt(20), bottom: pt(20), left: pt(20), right: pt(20) } },
236
+ };
237
+ const markers = (doc) => doc.blocks.filter((b) => b.type === 'listItem').map((b) => (b.prefixText ?? '') + (b.bulletText ?? '') + (b.separatorText ?? ''));
238
+ const bandText = (doc) => doc.pages.flatMap((p) => p.openerBand?.blocks ?? [])
239
+ .flatMap((b) => (b.kind === 'text' ? b.lines.map((l) => l.text) : []))
240
+ .join('');
241
+ it('list items: a zero of their own for the counted styles, none for kana', () => {
242
+ expect(formatListNumber(0, 'japanese-informal')).toBe('〇');
243
+ expect(formatListNumber(0, 'japanese-formal')).toBe('零');
244
+ expect(formatListNumber(0, 'hiragana')).toBe('0');
245
+ expect(formatListNumber(3, 'katakana-iroha')).toBe('ハ');
246
+ expect(formatListNumber(11, 'japanese-informal')).toBe('十一');
247
+ });
248
+ it('一 in the list, page and heading settings of a ja document', () => {
249
+ const TOKEN = '一';
250
+ const doc = buildDocument({ markdown: '# 序\n\n本文。\n\n# 次\n\n1. あ\n2. い\n' }, {
251
+ ...base,
252
+ page: { ...base.page, pageNumbering: { format: TOKEN, startAt: 11 } },
253
+ headings: { levels: [{ level: 1, numberingTemplate: '第{1:一}章' }] },
254
+ orderedLists: { numberFormat: 'あ', separator: '、' },
255
+ });
256
+ expect(doc.blocks.filter((b) => b.type === 'heading').map((b) => b.numberPrefix)).toEqual(['第一章', '第二章']);
257
+ expect(markers(doc)).toEqual(['あ、', 'い、']);
258
+ expect(doc.pages[0].pageLabel).toBe('十一');
259
+ expect([doc.config.orderedLists.numberFormat, doc.config.page.pageNumbering.format]).toEqual(['hiragana', 'japanese-informal']);
260
+ });
261
+ it('page labels', () => {
262
+ expect(buildPageLabels(3, [{ startPageIndex: 0, format: 'japanese-informal', startAt: 99 }]).map((l) => l.label)).toEqual(['九十九', '百', '百一']);
263
+ expect(buildPageLabels(2, [{ startPageIndex: 0, format: 'hiragana-iroha', startAt: 1 }]).map((l) => l.label)).toEqual(['い', 'ろ']);
264
+ });
265
+ it('footnote numbers in kana', () => {
266
+ const f = resolveFootnotesConfig({ numberFormat: 'イ' }, 'ja');
267
+ expect(f.numberFormat).toBe('katakana-iroha');
268
+ expect(formatFootnoteNumber(2, f.numberFormat, '({n})')).toBe('(ロ)');
269
+ expect(resolveFootnotesConfig({ numberFormat: '一' }, 'ja').numberFormat).toBe('japanese-informal');
270
+ });
271
+ it('a resource counter 一 follows the document language', () => {
272
+ const blocks = parseMarkdown('# A\n\n::resource{id="r"}');
273
+ const types = [{ id: 'figure', name: '図', shortLabel: '図', captionPrefix: '図', numberingTemplate: '{n}', resetOn: 'never', counterFormat: '一' }];
274
+ const resources = [{ id: 'r', typeId: 'figure', kind: 'bitmap', createdAt: 0, updatedAt: 0, bitmap: { fileId: 'r.png', format: 'png', width: 10, height: 10 } }];
275
+ const context = computeHeadingContext(blocks);
276
+ const start = { counters: { figure: { counter: 100, heading: context[0] } } };
277
+ expect(computeResourceNumbering(blocks, types, resources, context, start, undefined, 'ja').r.number).toBe('百一');
278
+ expect(computeResourceNumbering(blocks, types, resources, context, start, undefined, 'zh').r.number).toBe('一百零一');
279
+ expect(computeResourceNumbering(blocks, types, resources, context, start).r.number).toBe('一百零一');
280
+ });
281
+ it('{numberHan} writes Japanese numerals in a ja document', () => {
282
+ const levels = (content) => ({ levels: [{ level: 1, span: 'page', numberingTemplate: '{1}', advancedDesign: { enabled: true, slot: { elements: [{ kind: 'text', id: 't', content, placement: { anchor: { to: 'container', edge: 'top-left' } } }] } } }] });
283
+ const md = '# こころ {startAt=101}';
284
+ const ja = buildDocument({ markdown: md }, { ...base, headings: levels('第{numberHan}章 {titleText}') });
285
+ expect(bandText(ja)).toContain('第百一章');
286
+ const words = buildDocument({ markdown: md }, { ...base, headings: levels('{numberOrdinalWords}') });
287
+ expect(bandText(words)).toContain('第百一');
288
+ const zh = buildDocument({ markdown: md }, { ...base, locale: 'zh-Hans', headings: levels('第{numberHan}回') });
289
+ expect(bandText(zh)).toContain('第一百零一回');
290
+ });
291
+ });
292
+ //# sourceMappingURL=japaneseNumbering.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"japaneseNumbering.test.js","sourceRoot":"","sources":["../../src/__tests__/japaneseNumbering.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=citationsJapanese.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"citationsJapanese.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/pipeline/citationsJapanese.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,110 @@
1
+ import { describe, it, expect, afterEach } from 'vitest';
2
+ import { buildDocument } from '../../pipeline/build';
3
+ import { renderToHtml } from '../../html-backend';
4
+ import { citationLocale } from '../../pipeline/citations';
5
+ import { resolveAllConfig } from '../../pipeline/config';
6
+ import { registerCitationEngine } from '../../citations/registry';
7
+ import { parseBibtex } from '../../citations/bibtex';
8
+ import { normalizeCslItem } from '../../citations/data';
9
+ // Japanese citations (#426): the ja-JP locale, the narrative names a
10
+ // numbered marker or a note writes in the sentence, and family-first CJK
11
+ // names.
12
+ class StubCtx {
13
+ font = '';
14
+ measureText(s) {
15
+ return { width: [...s].length * 7 };
16
+ }
17
+ }
18
+ globalThis.OffscreenCanvas = class {
19
+ getContext() {
20
+ return new StubCtx();
21
+ }
22
+ };
23
+ /** A numbered or a note style whose processor carries the given locale
24
+ * terms (as postext-citeproc's does), recording the locale it was asked
25
+ * for. */
26
+ const stub = (kind, terms, seen = []) => ({
27
+ styles: () => [],
28
+ createProcessor: ({ locale }) => {
29
+ seen.push(locale);
30
+ const order = new Map();
31
+ return {
32
+ kind,
33
+ numeric: kind === 'in-text',
34
+ ...(terms ? { terms } : {}),
35
+ cite: (clusters) => clusters.map((c) => {
36
+ for (const it of c.items)
37
+ if (!order.has(it.id))
38
+ order.set(it.id, order.size + 1);
39
+ return kind === 'note' ? 'Note.' : `[${c.items.map((it) => order.get(it.id)).join(', ')}]`;
40
+ }),
41
+ bibliography: () => ({ entries: [], hangingIndent: false, labelColumn: true, entrySpacing: 0 }),
42
+ citationNumbers: () => order,
43
+ };
44
+ },
45
+ });
46
+ const JA_TERMS = { and: 'と', etAl: 'ほか' };
47
+ const pt = (value) => ({ value, unit: 'pt' });
48
+ const config = (locale) => ({
49
+ locale,
50
+ page: { width: pt(400), height: pt(600), margins: { top: pt(20), bottom: pt(20), left: pt(20), right: pt(20) } },
51
+ citations: { marker: 'brackets', bibliography: { auto: false } },
52
+ });
53
+ const front = [
54
+ '---',
55
+ 'references:',
56
+ ' - {id: natsume, title: こころ, author: [{family: 夏目, given: 漱石}]}',
57
+ ' - {id: yamada, title: 縦組み, author: [{family: 山田, given: 太郎}, {family: 佐藤, given: 花子}]}',
58
+ ' - {id: suzuki, title: 活字, author: [{family: 鈴木, given: 一郎}, {family: 田中, given: 次郎}, {family: 高橋, given: 三郎}]}',
59
+ ' - {id: zhang, title: 排版学, author: [张三, 李四, 王五]}',
60
+ '---',
61
+ '',
62
+ ].join('\n');
63
+ const text = (markdown, locale) => renderToHtml(buildDocument({ markdown: front + markdown }, config(locale))).replace(/<[^>]*>/g, '').replace(/\s+/g, ' ');
64
+ describe('citation locale', () => {
65
+ it('maps every Japanese tag to ja-JP', () => {
66
+ const resolved = resolveAllConfig({ locale: 'ja' });
67
+ expect(['ja', 'ja-JP', 'ja_JP', 'ja-Jpan', 'JA'].map((t) => citationLocale(resolved, t))).toEqual(['ja-JP', 'ja-JP', 'ja-JP', 'ja-JP', 'ja-JP']);
68
+ expect(citationLocale(resolveAllConfig({ locale: 'ja', citations: { locale: 'en-US' } }), 'ja')).toBe('en-US');
69
+ expect(citationLocale(resolved, 'zh')).toBe('zh-CN');
70
+ });
71
+ });
72
+ describe('narrative names in Japanese', () => {
73
+ afterEach(() => registerCitationEngine(undefined));
74
+ it('take the locale terms in a numbered marker the engine writes', () => {
75
+ const seen = [];
76
+ registerCitationEngine(stub('in-text', JA_TERMS, seen));
77
+ const out = text('@natsume によれば、@yamada と @suzuki も同じ。', 'ja');
78
+ expect(seen[0]).toBe('ja-JP');
79
+ expect(out).toContain('夏目 [1]');
80
+ expect(out).toContain('山田と佐藤 [2]');
81
+ expect(out).toContain('鈴木ほか [3]');
82
+ expect(out).not.toMatch(/[等、]\s?\[/);
83
+ });
84
+ it('take them in the sentence of a note citation', () => {
85
+ registerCitationEngine(stub('note', JA_TERMS));
86
+ expect(text('@suzuki によれば同じ。', 'ja')).toContain('鈴木ほか');
87
+ });
88
+ it('keep 、 and 等 in Chinese, and without locale terms', () => {
89
+ registerCitationEngine(stub('in-text', { and: '和', etAl: '等' }));
90
+ const zh = text('@yamada 与 @zhang', 'zh');
91
+ expect(zh).toContain('山田、佐藤 [1]');
92
+ expect(zh).toContain('张三等 [2]');
93
+ // (Other clusters than the tests above: the processed citations are
94
+ // memoised by their content, not by the engine.)
95
+ registerCitationEngine(stub('in-text', undefined));
96
+ expect(text('@zhang と @suzuki', 'ja')).toContain('鈴木等 [2]');
97
+ });
98
+ });
99
+ describe('CJK names with a space', () => {
100
+ it('read family first in BibTeX and in YAML strings', () => {
101
+ const [item] = parseBibtex('@book{k, author = {夏目 漱石 and 김 철수 and Ana García and 张三}, title = {こころ}}');
102
+ expect(item.author).toEqual([
103
+ { family: '夏目', given: '漱石' }, { family: '김', given: '철수' }, { family: 'García', given: 'Ana' }, { family: '张三' },
104
+ ]);
105
+ expect(normalizeCslItem({ id: 'a', author: ['夏目 漱石', 'Ana García', '张三', 'García, Ana'] }).author).toEqual([
106
+ { family: '夏目', given: '漱石' }, { family: 'García', given: 'Ana' }, { family: '张三' }, { family: 'García', given: 'Ana' },
107
+ ]);
108
+ });
109
+ });
110
+ //# sourceMappingURL=citationsJapanese.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"citationsJapanese.test.js","sourceRoot":"","sources":["../../../src/__tests__/pipeline/citationsJapanese.test.ts"],"names":[],"mappings":"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"}
@@ -111,7 +111,7 @@ describe('unknown paragraph style keys (EF-173)', () => {
111
111
  const style = {
112
112
  id: 's', name: 'S', fontFamily: 'Inter', fontSize: pt(9), lineHeight: pt(11), color: { hex: '#000000', model: 'hex' },
113
113
  textAlign: 'left', boldColor: { hex: '#000000', model: 'hex' }, italicColor: { hex: '#000000', model: 'hex' },
114
- fontWeight: 400, boldFontWeight: 700, italic: false, smallCaps: false, hyphenation: false, indent: pt(0),
114
+ fontWeight: 400, boldFontWeight: 700, italic: false, smallCaps: false, hyphenation: false, indent: pt(0), endIndent: pt(9),
115
115
  firstLineIndent: pt(0), hangingIndent: pt(0), spaceBetween: pt(0), marginTop: pt(0), marginBottom: pt(0),
116
116
  snapToGrid: true, textTransform: 'none',
117
117
  };
@@ -1 +1 @@
1
- {"version":3,"file":"paragraphStyleFaces.test.js","sourceRoot":"","sources":["../../../src/__tests__/pipeline/paragraphStyleFaces.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paragraphStyleFaces.test.js","sourceRoot":"","sources":["../../../src/__tests__/pipeline/paragraphStyleFaces.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=safeArea.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeArea.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/pipeline/safeArea.test.ts"],"names":[],"mappings":""}