postext 1.47.0 → 1.48.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 (332) hide show
  1. package/dist/__tests__/bundle/designOverflowPin.test.js +1 -1
  2. package/dist/__tests__/bundle/gridBreakRulesPin.test.js +2 -2
  3. package/dist/__tests__/bundle/shapingLanguagePin.test.js +3 -3
  4. package/dist/__tests__/bundle/taskBoxPin.test.js +1 -1
  5. package/dist/__tests__/bundle.test.js +1 -1
  6. package/dist/__tests__/codeBlocks.test.js +1 -1
  7. package/dist/__tests__/composed/cardShapes.test.d.ts +2 -0
  8. package/dist/__tests__/composed/cardShapes.test.d.ts.map +1 -0
  9. package/dist/__tests__/composed/cardShapes.test.js +82 -0
  10. package/dist/__tests__/composed/cardShapes.test.js.map +1 -0
  11. package/dist/__tests__/composed/connectors.test.d.ts +2 -0
  12. package/dist/__tests__/composed/connectors.test.d.ts.map +1 -0
  13. package/dist/__tests__/composed/connectors.test.js +349 -0
  14. package/dist/__tests__/composed/connectors.test.js.map +1 -0
  15. package/dist/__tests__/composed/decorationSidePoints.test.d.ts +2 -0
  16. package/dist/__tests__/composed/decorationSidePoints.test.d.ts.map +1 -0
  17. package/dist/__tests__/composed/decorationSidePoints.test.js +164 -0
  18. package/dist/__tests__/composed/decorationSidePoints.test.js.map +1 -0
  19. package/dist/__tests__/composed/fit.test.js +2 -1
  20. package/dist/__tests__/composed/fit.test.js.map +1 -1
  21. package/dist/__tests__/composed/fixtures/connectors.d.ts +33 -0
  22. package/dist/__tests__/composed/fixtures/connectors.d.ts.map +1 -0
  23. package/dist/__tests__/composed/fixtures/connectors.js +142 -0
  24. package/dist/__tests__/composed/fixtures/connectors.js.map +1 -0
  25. package/dist/__tests__/composed/fixtures/grid.d.ts +32 -0
  26. package/dist/__tests__/composed/fixtures/grid.d.ts.map +1 -0
  27. package/dist/__tests__/composed/fixtures/grid.js +53 -0
  28. package/dist/__tests__/composed/fixtures/grid.js.map +1 -0
  29. package/dist/__tests__/composed/fixtures/legendMap.d.ts +24 -0
  30. package/dist/__tests__/composed/fixtures/legendMap.d.ts.map +1 -0
  31. package/dist/__tests__/composed/fixtures/legendMap.js +117 -0
  32. package/dist/__tests__/composed/fixtures/legendMap.js.map +1 -0
  33. package/dist/__tests__/composed/fixtures/mapParts.d.ts +58 -0
  34. package/dist/__tests__/composed/fixtures/mapParts.d.ts.map +1 -0
  35. package/dist/__tests__/composed/fixtures/mapParts.js +192 -0
  36. package/dist/__tests__/composed/fixtures/mapParts.js.map +1 -0
  37. package/dist/__tests__/composed/fixtures/modules.d.ts +55 -0
  38. package/dist/__tests__/composed/fixtures/modules.d.ts.map +1 -0
  39. package/dist/__tests__/composed/fixtures/modules.js +123 -0
  40. package/dist/__tests__/composed/fixtures/modules.js.map +1 -0
  41. package/dist/__tests__/composed/grid.test.d.ts +2 -0
  42. package/dist/__tests__/composed/grid.test.d.ts.map +1 -0
  43. package/dist/__tests__/composed/grid.test.js +357 -0
  44. package/dist/__tests__/composed/grid.test.js.map +1 -0
  45. package/dist/__tests__/composed/groups.test.js +6 -3
  46. package/dist/__tests__/composed/groups.test.js.map +1 -1
  47. package/dist/__tests__/composed/labelLegend.test.d.ts +2 -0
  48. package/dist/__tests__/composed/labelLegend.test.d.ts.map +1 -0
  49. package/dist/__tests__/composed/labelLegend.test.js +268 -0
  50. package/dist/__tests__/composed/labelLegend.test.js.map +1 -0
  51. package/dist/__tests__/composed/labelsChecks.test.js.map +1 -1
  52. package/dist/__tests__/composed/leaders.test.d.ts +2 -0
  53. package/dist/__tests__/composed/leaders.test.d.ts.map +1 -0
  54. package/dist/__tests__/composed/leaders.test.js +372 -0
  55. package/dist/__tests__/composed/leaders.test.js.map +1 -0
  56. package/dist/__tests__/composed/modules.test.d.ts +2 -0
  57. package/dist/__tests__/composed/modules.test.d.ts.map +1 -0
  58. package/dist/__tests__/composed/modules.test.js +352 -0
  59. package/dist/__tests__/composed/modules.test.js.map +1 -0
  60. package/dist/__tests__/composed/overConnectors.test.d.ts +2 -0
  61. package/dist/__tests__/composed/overConnectors.test.d.ts.map +1 -0
  62. package/dist/__tests__/composed/overConnectors.test.js +232 -0
  63. package/dist/__tests__/composed/overConnectors.test.js.map +1 -0
  64. package/dist/__tests__/composed/overlap.test.d.ts +2 -0
  65. package/dist/__tests__/composed/overlap.test.d.ts.map +1 -0
  66. package/dist/__tests__/composed/overlap.test.js +339 -0
  67. package/dist/__tests__/composed/overlap.test.js.map +1 -0
  68. package/dist/__tests__/composedTemplates.test.js +1 -1
  69. package/dist/__tests__/design/boxShape.test.d.ts +2 -0
  70. package/dist/__tests__/design/boxShape.test.d.ts.map +1 -0
  71. package/dist/__tests__/design/boxShape.test.js +126 -0
  72. package/dist/__tests__/design/boxShape.test.js.map +1 -0
  73. package/dist/__tests__/design/boxShapePaint.test.d.ts +2 -0
  74. package/dist/__tests__/design/boxShapePaint.test.d.ts.map +1 -0
  75. package/dist/__tests__/design/boxShapePaint.test.js +130 -0
  76. package/dist/__tests__/design/boxShapePaint.test.js.map +1 -0
  77. package/dist/__tests__/design/openerBottomAnchor.test.js.map +1 -1
  78. package/dist/__tests__/design/pathBlock.test.d.ts +2 -0
  79. package/dist/__tests__/design/pathBlock.test.d.ts.map +1 -0
  80. package/dist/__tests__/design/pathBlock.test.js +194 -0
  81. package/dist/__tests__/design/pathBlock.test.js.map +1 -0
  82. package/dist/__tests__/design/pathElement.test.d.ts +2 -0
  83. package/dist/__tests__/design/pathElement.test.d.ts.map +1 -0
  84. package/dist/__tests__/design/pathElement.test.js +257 -0
  85. package/dist/__tests__/design/pathElement.test.js.map +1 -0
  86. package/dist/__tests__/design/svgPath.test.d.ts +2 -0
  87. package/dist/__tests__/design/svgPath.test.d.ts.map +1 -0
  88. package/dist/__tests__/design/svgPath.test.js +144 -0
  89. package/dist/__tests__/design/svgPath.test.js.map +1 -0
  90. package/dist/__tests__/exports.test.js +52 -0
  91. package/dist/__tests__/exports.test.js.map +1 -1
  92. package/dist/__tests__/hardBreaks.test.js +1 -1
  93. package/dist/__tests__/headingInlineMarks.test.js +1 -1
  94. package/dist/__tests__/labelGlyphPaint.test.d.ts +2 -0
  95. package/dist/__tests__/labelGlyphPaint.test.d.ts.map +1 -0
  96. package/dist/__tests__/labelGlyphPaint.test.js +86 -0
  97. package/dist/__tests__/labelGlyphPaint.test.js.map +1 -0
  98. package/dist/__tests__/mathSizeMigration.test.js +2 -2
  99. package/dist/__tests__/migrate/labelsOnPictures.test.js +1 -1
  100. package/dist/__tests__/migrate/labelsOnPictures.test.js.map +1 -1
  101. package/dist/__tests__/parse/containers.test.js +1 -1
  102. package/dist/__tests__/parse/containers.test.js.map +1 -1
  103. package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js +1 -1
  104. package/dist/__tests__/pipeline/calloutLabelGlyph.test.d.ts +2 -0
  105. package/dist/__tests__/pipeline/calloutLabelGlyph.test.d.ts.map +1 -0
  106. package/dist/__tests__/pipeline/calloutLabelGlyph.test.js +198 -0
  107. package/dist/__tests__/pipeline/calloutLabelGlyph.test.js.map +1 -0
  108. package/dist/__tests__/pipeline/calloutShapes.test.d.ts +2 -0
  109. package/dist/__tests__/pipeline/calloutShapes.test.d.ts.map +1 -0
  110. package/dist/__tests__/pipeline/calloutShapes.test.js +159 -0
  111. package/dist/__tests__/pipeline/calloutShapes.test.js.map +1 -0
  112. package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js +1 -1
  113. package/dist/__tests__/pipeline/colonListRoom.test.js +1 -1
  114. package/dist/__tests__/pipeline/compoundBreaks.test.js +1 -1
  115. package/dist/__tests__/pipeline/dashBreaks.test.js +1 -1
  116. package/dist/__tests__/pipeline/headingSplitOrphans.test.js +1 -1
  117. package/dist/__tests__/pipeline/inlineFigureSpace.test.js +1 -1
  118. package/dist/__tests__/pipeline/paragraphContainerTail.test.js +1 -1
  119. package/dist/__tests__/pipeline/raggedOptimal.test.js +1 -1
  120. package/dist/__tests__/verseLines.test.js +1 -1
  121. package/dist/bundle/configVersion.d.ts +12 -3
  122. package/dist/bundle/configVersion.d.ts.map +1 -1
  123. package/dist/bundle/configVersion.js +16 -5
  124. package/dist/bundle/configVersion.js.map +1 -1
  125. package/dist/canvas-backend/blockRender.js +3 -3
  126. package/dist/canvas-backend/blockRender.js.map +1 -1
  127. package/dist/canvas-backend/composed.d.ts +4 -2
  128. package/dist/canvas-backend/composed.d.ts.map +1 -1
  129. package/dist/canvas-backend/composed.js +12 -7
  130. package/dist/canvas-backend/composed.js.map +1 -1
  131. package/dist/canvas-backend/headerFooter.d.ts +17 -1
  132. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  133. package/dist/canvas-backend/headerFooter.js +64 -1
  134. package/dist/canvas-backend/headerFooter.js.map +1 -1
  135. package/dist/canvas-backend/index.d.ts.map +1 -1
  136. package/dist/canvas-backend/index.js +7 -1
  137. package/dist/canvas-backend/index.js.map +1 -1
  138. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  139. package/dist/canvas-backend/renderResourceBlock.js +17 -6
  140. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  141. package/dist/canvas-backend/swatch.d.ts +20 -1
  142. package/dist/canvas-backend/swatch.d.ts.map +1 -1
  143. package/dist/canvas-backend/swatch.js +51 -1
  144. package/dist/canvas-backend/swatch.js.map +1 -1
  145. package/dist/comics/layoutPage.d.ts.map +1 -1
  146. package/dist/comics/layoutPage.js +6 -1
  147. package/dist/comics/layoutPage.js.map +1 -1
  148. package/dist/composed/continuation.d.ts +10 -2
  149. package/dist/composed/continuation.d.ts.map +1 -1
  150. package/dist/composed/continuation.js +10 -2
  151. package/dist/composed/continuation.js.map +1 -1
  152. package/dist/composed/document.d.ts +45 -1
  153. package/dist/composed/document.d.ts.map +1 -1
  154. package/dist/composed/document.js +76 -17
  155. package/dist/composed/document.js.map +1 -1
  156. package/dist/composed/labelText.d.ts +6 -2
  157. package/dist/composed/labelText.d.ts.map +1 -1
  158. package/dist/composed/labelText.js +19 -3
  159. package/dist/composed/labelText.js.map +1 -1
  160. package/dist/composed/labels.d.ts +57 -3
  161. package/dist/composed/labels.d.ts.map +1 -1
  162. package/dist/composed/labels.js +261 -12
  163. package/dist/composed/labels.js.map +1 -1
  164. package/dist/composed/modules.d.ts +30 -0
  165. package/dist/composed/modules.d.ts.map +1 -0
  166. package/dist/composed/modules.js +194 -0
  167. package/dist/composed/modules.js.map +1 -0
  168. package/dist/composed/overlap.d.ts +52 -0
  169. package/dist/composed/overlap.d.ts.map +1 -0
  170. package/dist/composed/overlap.js +611 -0
  171. package/dist/composed/overlap.js.map +1 -0
  172. package/dist/composed/paint.d.ts +28 -5
  173. package/dist/composed/paint.d.ts.map +1 -1
  174. package/dist/composed/paint.js +26 -5
  175. package/dist/composed/paint.js.map +1 -1
  176. package/dist/composed/reflowLog.d.ts +6 -1
  177. package/dist/composed/reflowLog.d.ts.map +1 -1
  178. package/dist/composed/reflowLog.js +43 -0
  179. package/dist/composed/reflowLog.js.map +1 -1
  180. package/dist/composed/repeat.d.ts +66 -0
  181. package/dist/composed/repeat.d.ts.map +1 -0
  182. package/dist/composed/repeat.js +217 -0
  183. package/dist/composed/repeat.js.map +1 -0
  184. package/dist/composed/slotChecks.d.ts +1 -1
  185. package/dist/composed/slotChecks.d.ts.map +1 -1
  186. package/dist/composed/slotChecks.js +114 -8
  187. package/dist/composed/slotChecks.js.map +1 -1
  188. package/dist/composed/sourceMap.d.ts.map +1 -1
  189. package/dist/composed/sourceMap.js +16 -4
  190. package/dist/composed/sourceMap.js.map +1 -1
  191. package/dist/composed/spread.d.ts.map +1 -1
  192. package/dist/composed/spread.js +6 -2
  193. package/dist/composed/spread.js.map +1 -1
  194. package/dist/composed/templates.d.ts +22 -2
  195. package/dist/composed/templates.d.ts.map +1 -1
  196. package/dist/composed/templates.js +159 -9
  197. package/dist/composed/templates.js.map +1 -1
  198. package/dist/composed/types.d.ts +140 -7
  199. package/dist/composed/types.d.ts.map +1 -1
  200. package/dist/composed/validate.d.ts +1 -1
  201. package/dist/composed/validate.d.ts.map +1 -1
  202. package/dist/composed/validate.js +101 -4
  203. package/dist/composed/validate.js.map +1 -1
  204. package/dist/composed/wrap.d.ts.map +1 -1
  205. package/dist/composed/wrap.js +95 -17
  206. package/dist/composed/wrap.js.map +1 -1
  207. package/dist/configWarnings.d.ts +7 -1
  208. package/dist/configWarnings.d.ts.map +1 -1
  209. package/dist/configWarnings.js +275 -4
  210. package/dist/configWarnings.js.map +1 -1
  211. package/dist/contrast.d.ts.map +1 -1
  212. package/dist/contrast.js +8 -0
  213. package/dist/contrast.js.map +1 -1
  214. package/dist/defaults/calloutStyles.d.ts +10 -1
  215. package/dist/defaults/calloutStyles.d.ts.map +1 -1
  216. package/dist/defaults/calloutStyles.js +46 -7
  217. package/dist/defaults/calloutStyles.js.map +1 -1
  218. package/dist/defaults/headerFooter.d.ts.map +1 -1
  219. package/dist/defaults/headerFooter.js +38 -0
  220. package/dist/defaults/headerFooter.js.map +1 -1
  221. package/dist/design/boxShape.d.ts +101 -0
  222. package/dist/design/boxShape.d.ts.map +1 -0
  223. package/dist/design/boxShape.js +398 -0
  224. package/dist/design/boxShape.js.map +1 -0
  225. package/dist/design/connector.d.ts +75 -0
  226. package/dist/design/connector.d.ts.map +1 -0
  227. package/dist/design/connector.js +325 -0
  228. package/dist/design/connector.js.map +1 -0
  229. package/dist/design/layout.d.ts +56 -3
  230. package/dist/design/layout.d.ts.map +1 -1
  231. package/dist/design/layout.js +214 -12
  232. package/dist/design/layout.js.map +1 -1
  233. package/dist/design/logicalEdges.d.ts +7 -0
  234. package/dist/design/logicalEdges.d.ts.map +1 -1
  235. package/dist/design/logicalEdges.js +28 -0
  236. package/dist/design/logicalEdges.js.map +1 -1
  237. package/dist/design/pathBlock.d.ts +69 -0
  238. package/dist/design/pathBlock.d.ts.map +1 -0
  239. package/dist/design/pathBlock.js +286 -0
  240. package/dist/design/pathBlock.js.map +1 -0
  241. package/dist/design/svgPath.d.ts +48 -0
  242. package/dist/design/svgPath.d.ts.map +1 -0
  243. package/dist/design/svgPath.js +402 -0
  244. package/dist/design/svgPath.js.map +1 -0
  245. package/dist/fonts/usage.d.ts +5 -0
  246. package/dist/fonts/usage.d.ts.map +1 -1
  247. package/dist/fonts/usage.js +36 -3
  248. package/dist/fonts/usage.js.map +1 -1
  249. package/dist/html-backend.d.ts.map +1 -1
  250. package/dist/html-backend.js +127 -22
  251. package/dist/html-backend.js.map +1 -1
  252. package/dist/index.d.ts +19 -9
  253. package/dist/index.d.ts.map +1 -1
  254. package/dist/index.js +13 -5
  255. package/dist/index.js.map +1 -1
  256. package/dist/measure/cache.js +1 -1
  257. package/dist/measure/cache.js.map +1 -1
  258. package/dist/measure/inlineIcon.d.ts +34 -0
  259. package/dist/measure/inlineIcon.d.ts.map +1 -0
  260. package/dist/measure/inlineIcon.js +89 -0
  261. package/dist/measure/inlineIcon.js.map +1 -0
  262. package/dist/measure/rich.d.ts +2 -1
  263. package/dist/measure/rich.d.ts.map +1 -1
  264. package/dist/measure/rich.js +6 -0
  265. package/dist/measure/rich.js.map +1 -1
  266. package/dist/migrate/pageDesign.d.ts.map +1 -1
  267. package/dist/migrate/pageDesign.js +4 -2
  268. package/dist/migrate/pageDesign.js.map +1 -1
  269. package/dist/migrate/textToMarkdown.js +2 -0
  270. package/dist/migrate/textToMarkdown.js.map +1 -1
  271. package/dist/parse/blockParser.d.ts.map +1 -1
  272. package/dist/parse/blockParser.js +171 -20
  273. package/dist/parse/blockParser.js.map +1 -1
  274. package/dist/parse/index.d.ts +1 -1
  275. package/dist/parse/index.d.ts.map +1 -1
  276. package/dist/parse/index.js.map +1 -1
  277. package/dist/parse/inlineFormatting.d.ts +11 -3
  278. package/dist/parse/inlineFormatting.d.ts.map +1 -1
  279. package/dist/parse/inlineFormatting.js +63 -5
  280. package/dist/parse/inlineFormatting.js.map +1 -1
  281. package/dist/parse/inlineSnippet.d.ts +2 -1
  282. package/dist/parse/inlineSnippet.d.ts.map +1 -1
  283. package/dist/parse/inlineSnippet.js +3 -2
  284. package/dist/parse/inlineSnippet.js.map +1 -1
  285. package/dist/parse/sourceMapping.d.ts.map +1 -1
  286. package/dist/parse/sourceMapping.js +8 -1
  287. package/dist/parse/sourceMapping.js.map +1 -1
  288. package/dist/parse/types.d.ts +71 -1
  289. package/dist/parse/types.d.ts.map +1 -1
  290. package/dist/pipeline/build.d.ts.map +1 -1
  291. package/dist/pipeline/build.js +23 -11
  292. package/dist/pipeline/build.js.map +1 -1
  293. package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
  294. package/dist/pipeline/buildMeasurement.js +23 -11
  295. package/dist/pipeline/buildMeasurement.js.map +1 -1
  296. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  297. package/dist/pipeline/calloutLayout.js +142 -32
  298. package/dist/pipeline/calloutLayout.js.map +1 -1
  299. package/dist/pipeline/composedLayout.d.ts +1 -33
  300. package/dist/pipeline/composedLayout.d.ts.map +1 -1
  301. package/dist/pipeline/composedLayout.js +526 -36
  302. package/dist/pipeline/composedLayout.js.map +1 -1
  303. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  304. package/dist/pipeline/contentWarnings.js +46 -1
  305. package/dist/pipeline/contentWarnings.js.map +1 -1
  306. package/dist/pipeline/continuation.d.ts.map +1 -1
  307. package/dist/pipeline/continuation.js +3 -2
  308. package/dist/pipeline/continuation.js.map +1 -1
  309. package/dist/pipeline/headerFooter.d.ts +19 -1
  310. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  311. package/dist/pipeline/headerFooter.js +145 -5
  312. package/dist/pipeline/headerFooter.js.map +1 -1
  313. package/dist/pipeline/partPalette.d.ts.map +1 -1
  314. package/dist/pipeline/partPalette.js +40 -1
  315. package/dist/pipeline/partPalette.js.map +1 -1
  316. package/dist/pipeline/resourceLayout.d.ts +1 -1
  317. package/dist/pipeline/resourceLayout.d.ts.map +1 -1
  318. package/dist/pipeline/resourceLayout.js +44 -15
  319. package/dist/pipeline/resourceLayout.js.map +1 -1
  320. package/dist/preflight.d.ts.map +1 -1
  321. package/dist/preflight.js +36 -1
  322. package/dist/preflight.js.map +1 -1
  323. package/dist/types.d.ts +305 -22
  324. package/dist/types.d.ts.map +1 -1
  325. package/dist/vdt.d.ts +384 -11
  326. package/dist/vdt.d.ts.map +1 -1
  327. package/dist/vdt.js.map +1 -1
  328. package/package.json +1 -1
  329. package/dist/composed/round2Types.d.ts +0 -185
  330. package/dist/composed/round2Types.d.ts.map +0 -1
  331. package/dist/composed/round2Types.js +0 -2
  332. package/dist/composed/round2Types.js.map +0 -1
@@ -0,0 +1,402 @@
1
+ /** The longest path data read (characters): a design's shape is a few
2
+ * hundred; anything far longer is no decoration. */
3
+ export const MAX_PATH_DATA_LENGTH = 65536;
4
+ /** How many numbers each command takes. */
5
+ const ARITY = {
6
+ M: 2, L: 2, H: 1, V: 1, C: 6, S: 4, Q: 4, T: 2, A: 7, Z: 0,
7
+ };
8
+ function isDigit(c) {
9
+ return c >= 48 && c <= 57;
10
+ }
11
+ function isSpace(c) {
12
+ // Space, tab, line feed, form feed, carriage return (the SVG `wsp`).
13
+ return c === 32 || c === 9 || c === 10 || c === 12 || c === 13;
14
+ }
15
+ /** Reads the data one token at a time. */
16
+ class Scanner {
17
+ s;
18
+ i = 0;
19
+ constructor(s) {
20
+ this.s = s;
21
+ }
22
+ /** Skips white space and at most one comma between them. */
23
+ skipSeparators() {
24
+ const s = this.s;
25
+ while (this.i < s.length && isSpace(s.charCodeAt(this.i)))
26
+ this.i++;
27
+ if (this.i < s.length && s.charCodeAt(this.i) === 44) {
28
+ this.i++;
29
+ while (this.i < s.length && isSpace(s.charCodeAt(this.i)))
30
+ this.i++;
31
+ }
32
+ }
33
+ atEnd() {
34
+ return this.i >= this.s.length;
35
+ }
36
+ /** Whether a number starts here (a sign, a digit or a point). */
37
+ atNumber() {
38
+ const c = this.s.charCodeAt(this.i);
39
+ return isDigit(c) || c === 43 || c === 45 || c === 46;
40
+ }
41
+ /** A number in the SVG grammar: sign, digits, a fraction, an exponent.
42
+ * `undefined` when none starts here. */
43
+ number() {
44
+ const s = this.s;
45
+ const start = this.i;
46
+ let j = start;
47
+ if (j < s.length && (s.charCodeAt(j) === 43 || s.charCodeAt(j) === 45))
48
+ j++;
49
+ let digits = 0;
50
+ while (j < s.length && isDigit(s.charCodeAt(j))) {
51
+ j++;
52
+ digits++;
53
+ }
54
+ if (j < s.length && s.charCodeAt(j) === 46) {
55
+ j++;
56
+ while (j < s.length && isDigit(s.charCodeAt(j))) {
57
+ j++;
58
+ digits++;
59
+ }
60
+ }
61
+ if (digits === 0)
62
+ return undefined;
63
+ // An exponent only when digits follow it (`1e` is the number 1 and a
64
+ // stray letter, which the caller rejects).
65
+ if (j < s.length && (s.charCodeAt(j) === 101 || s.charCodeAt(j) === 69)) {
66
+ let k = j + 1;
67
+ if (k < s.length && (s.charCodeAt(k) === 43 || s.charCodeAt(k) === 45))
68
+ k++;
69
+ const e0 = k;
70
+ while (k < s.length && isDigit(s.charCodeAt(k)))
71
+ k++;
72
+ if (k > e0)
73
+ j = k;
74
+ }
75
+ const v = Number(s.slice(start, j));
76
+ if (!Number.isFinite(v))
77
+ return undefined;
78
+ this.i = j;
79
+ return v;
80
+ }
81
+ /** An arc flag: a single `0` or `1`, which needs no separator after it
82
+ * (`a1 1 0 01 1 1`). */
83
+ flag() {
84
+ const c = this.s.charCodeAt(this.i);
85
+ if (c === 48 || c === 49) {
86
+ this.i++;
87
+ return c === 48 ? 0 : 1;
88
+ }
89
+ return undefined;
90
+ }
91
+ }
92
+ /** The outline `d` describes, in its own units; or why it cannot be read. */
93
+ export function parseSvgPath(d) {
94
+ if (typeof d !== 'string')
95
+ return { ok: false, error: 'path data is not a string', at: 0 };
96
+ if (d.length > MAX_PATH_DATA_LENGTH)
97
+ return { ok: false, error: `path data longer than ${MAX_PATH_DATA_LENGTH} characters`, at: MAX_PATH_DATA_LENGTH };
98
+ const sc = new Scanner(d);
99
+ const subpaths = [];
100
+ let current;
101
+ // The current point, the subpath's start, and the last control point of
102
+ // a cubic or quadratic (for `S` and `T`).
103
+ let x = 0;
104
+ let y = 0;
105
+ let sx = 0;
106
+ let sy = 0;
107
+ let lastCubic;
108
+ let lastQuad;
109
+ let cmd = '';
110
+ let first = true;
111
+ const startSubpath = (px, py) => {
112
+ current = [{ op: 'M', x: px, y: py }];
113
+ subpaths.push(current);
114
+ };
115
+ /** A drawing command after `Z` starts again from the subpath's start. */
116
+ const ensureSubpath = () => {
117
+ if (!current)
118
+ startSubpath(x, y);
119
+ return current;
120
+ };
121
+ sc.skipSeparators();
122
+ while (!sc.atEnd()) {
123
+ const at = sc.i;
124
+ const ch = d.charAt(sc.i);
125
+ const upper = ch.toUpperCase();
126
+ if (ARITY[upper] !== undefined && ch !== 'e' && ch !== 'E') {
127
+ cmd = ch;
128
+ sc.i++;
129
+ sc.skipSeparators();
130
+ }
131
+ else if (!cmd || !sc.atNumber()) {
132
+ return { ok: false, error: `unexpected '${ch}'`, at };
133
+ }
134
+ else if (cmd === 'Z' || cmd === 'z') {
135
+ return { ok: false, error: 'numbers after a close', at };
136
+ }
137
+ // An implicit repeat of a move is a line (SVG 1.1 §8.3.2).
138
+ const op = cmd.toUpperCase();
139
+ const rel = cmd !== op;
140
+ if (first && op !== 'M')
141
+ return { ok: false, error: 'path data must start with a move (M or m)', at };
142
+ first = false;
143
+ if (op === 'Z') {
144
+ if (current)
145
+ current.push({ op: 'Z' });
146
+ x = sx;
147
+ y = sy;
148
+ current = undefined;
149
+ lastCubic = undefined;
150
+ lastQuad = undefined;
151
+ continue;
152
+ }
153
+ // Every set of numbers the command takes, until the next letter.
154
+ let sets = 0;
155
+ do {
156
+ const args = [];
157
+ const n = ARITY[op];
158
+ for (let k = 0; k < n; k++) {
159
+ const isFlag = op === 'A' && (k === 3 || k === 4);
160
+ const v = isFlag ? sc.flag() : sc.number();
161
+ if (v === undefined) {
162
+ return { ok: false, error: isFlag ? `arc flag must be 0 or 1` : `'${cmd}' needs ${n} numbers`, at: sc.i };
163
+ }
164
+ args.push(v);
165
+ sc.skipSeparators();
166
+ }
167
+ sets++;
168
+ const ox = rel ? x : 0;
169
+ const oy = rel ? y : 0;
170
+ switch (op) {
171
+ case 'M': {
172
+ const px = ox + args[0];
173
+ const py = oy + args[1];
174
+ if (sets === 1) {
175
+ startSubpath(px, py);
176
+ sx = px;
177
+ sy = py;
178
+ }
179
+ else {
180
+ ensureSubpath().push({ op: 'L', x: px, y: py });
181
+ }
182
+ x = px;
183
+ y = py;
184
+ lastCubic = undefined;
185
+ lastQuad = undefined;
186
+ break;
187
+ }
188
+ case 'L':
189
+ case 'H':
190
+ case 'V': {
191
+ const px = op === 'V' ? x : ox + args[0];
192
+ const py = op === 'H' ? y : op === 'V' ? (rel ? y : 0) + args[0] : oy + args[1];
193
+ ensureSubpath().push({ op: 'L', x: px, y: py });
194
+ x = px;
195
+ y = py;
196
+ lastCubic = undefined;
197
+ lastQuad = undefined;
198
+ break;
199
+ }
200
+ case 'C':
201
+ case 'S': {
202
+ let x1;
203
+ let y1;
204
+ let rest;
205
+ if (op === 'C') {
206
+ x1 = ox + args[0];
207
+ y1 = oy + args[1];
208
+ rest = args.slice(2);
209
+ }
210
+ else {
211
+ x1 = lastCubic ? 2 * x - lastCubic.x : x;
212
+ y1 = lastCubic ? 2 * y - lastCubic.y : y;
213
+ rest = args;
214
+ }
215
+ const x2 = ox + rest[0];
216
+ const y2 = oy + rest[1];
217
+ const px = ox + rest[2];
218
+ const py = oy + rest[3];
219
+ ensureSubpath().push({ op: 'C', x1, y1, x2, y2, x: px, y: py });
220
+ lastCubic = { x: x2, y: y2 };
221
+ lastQuad = undefined;
222
+ x = px;
223
+ y = py;
224
+ break;
225
+ }
226
+ case 'Q':
227
+ case 'T': {
228
+ let x1;
229
+ let y1;
230
+ let px;
231
+ let py;
232
+ if (op === 'Q') {
233
+ x1 = ox + args[0];
234
+ y1 = oy + args[1];
235
+ px = ox + args[2];
236
+ py = oy + args[3];
237
+ }
238
+ else {
239
+ x1 = lastQuad ? 2 * x - lastQuad.x : x;
240
+ y1 = lastQuad ? 2 * y - lastQuad.y : y;
241
+ px = ox + args[0];
242
+ py = oy + args[1];
243
+ }
244
+ ensureSubpath().push({ op: 'Q', x1, y1, x: px, y: py });
245
+ lastQuad = { x: x1, y: y1 };
246
+ lastCubic = undefined;
247
+ x = px;
248
+ y = py;
249
+ break;
250
+ }
251
+ case 'A': {
252
+ const px = ox + args[5];
253
+ const py = oy + args[6];
254
+ const sub = ensureSubpath();
255
+ for (const c of arcToCubics(x, y, args[0], args[1], args[2], args[3] === 1, args[4] === 1, px, py))
256
+ sub.push(c);
257
+ x = px;
258
+ y = py;
259
+ lastCubic = undefined;
260
+ lastQuad = undefined;
261
+ break;
262
+ }
263
+ }
264
+ } while (!sc.atEnd() && sc.atNumber());
265
+ }
266
+ if (first)
267
+ return { ok: false, error: 'empty path data', at: 0 };
268
+ return { ok: true, subpaths };
269
+ }
270
+ /**
271
+ * An elliptical arc from `(x0, y0)` to `(x, y)` as cubic Bézier curves
272
+ * (SVG 1.1 implementation notes F.6): radii scaled up when too small to
273
+ * reach, a zero radius a straight line, the same point nothing. Each curve
274
+ * spans at most a quarter turn.
275
+ */
276
+ export function arcToCubics(x0, y0, rxIn, ryIn, angleDeg, largeArc, sweep, x, y) {
277
+ if (x0 === x && y0 === y)
278
+ return [];
279
+ let rx = Math.abs(rxIn);
280
+ let ry = Math.abs(ryIn);
281
+ if (rx === 0 || ry === 0)
282
+ return [{ op: 'L', x, y }];
283
+ const phi = ((angleDeg % 360) * Math.PI) / 180;
284
+ const cos = Math.cos(phi);
285
+ const sin = Math.sin(phi);
286
+ // The end points in the ellipse's own frame, centred between them.
287
+ const dx = (x0 - x) / 2;
288
+ const dy = (y0 - y) / 2;
289
+ const x1p = cos * dx + sin * dy;
290
+ const y1p = -sin * dx + cos * dy;
291
+ const lambda = (x1p * x1p) / (rx * rx) + (y1p * y1p) / (ry * ry);
292
+ if (lambda > 1) {
293
+ const s = Math.sqrt(lambda);
294
+ rx *= s;
295
+ ry *= s;
296
+ }
297
+ const rx2 = rx * rx;
298
+ const ry2 = ry * ry;
299
+ const num = rx2 * ry2 - rx2 * y1p * y1p - ry2 * x1p * x1p;
300
+ const den = rx2 * y1p * y1p + ry2 * x1p * x1p;
301
+ let coef = den === 0 ? 0 : Math.sqrt(Math.max(0, num / den));
302
+ if (largeArc === sweep)
303
+ coef = -coef;
304
+ const cxp = coef * ((rx * y1p) / ry);
305
+ const cyp = coef * (-(ry * x1p) / rx);
306
+ const cx = cos * cxp - sin * cyp + (x0 + x) / 2;
307
+ const cy = sin * cxp + cos * cyp + (y0 + y) / 2;
308
+ const angle = (ux, uy, vx, vy) => {
309
+ const dot = ux * vx + uy * vy;
310
+ const len = Math.hypot(ux, uy) * Math.hypot(vx, vy);
311
+ let a = Math.acos(Math.max(-1, Math.min(1, len === 0 ? 1 : dot / len)));
312
+ if (ux * vy - uy * vx < 0)
313
+ a = -a;
314
+ return a;
315
+ };
316
+ const ux = (x1p - cxp) / rx;
317
+ const uy = (y1p - cyp) / ry;
318
+ const vx = (-x1p - cxp) / rx;
319
+ const vy = (-y1p - cyp) / ry;
320
+ const theta1 = angle(1, 0, ux, uy);
321
+ let delta = angle(ux, uy, vx, vy);
322
+ if (!sweep && delta > 0)
323
+ delta -= 2 * Math.PI;
324
+ else if (sweep && delta < 0)
325
+ delta += 2 * Math.PI;
326
+ const segments = Math.max(1, Math.ceil(Math.abs(delta) / (Math.PI / 2) - 1e-9));
327
+ const step = delta / segments;
328
+ // The control arm of a curve over `step`: 4/3 tan(step/4).
329
+ const k = (4 / 3) * Math.tan(step / 4);
330
+ const point = (t) => {
331
+ const ex = rx * Math.cos(t);
332
+ const ey = ry * Math.sin(t);
333
+ return { x: cx + cos * ex - sin * ey, y: cy + sin * ex + cos * ey };
334
+ };
335
+ const tangent = (t) => {
336
+ const ex = -rx * Math.sin(t);
337
+ const ey = ry * Math.cos(t);
338
+ return { x: cos * ex - sin * ey, y: sin * ex + cos * ey };
339
+ };
340
+ const out = [];
341
+ let t = theta1;
342
+ let p = { x: x0, y: y0 };
343
+ for (let s = 0; s < segments; s++) {
344
+ const t2 = t + step;
345
+ const d1 = tangent(t);
346
+ const d2 = tangent(t2);
347
+ // The last curve ends exactly on the given point.
348
+ const q = s === segments - 1 ? { x, y } : point(t2);
349
+ out.push({ op: 'C', x1: p.x + k * d1.x, y1: p.y + k * d1.y, x2: q.x - k * d2.x, y2: q.y - k * d2.y, x: q.x, y: q.y });
350
+ p = q;
351
+ t = t2;
352
+ }
353
+ return out;
354
+ }
355
+ /** `subpaths` mapped by `x' = ox + x·sx`, `y' = oy + y·sy` (a viewBox laid
356
+ * on a box: an affine map, under which a Bézier curve stays one). */
357
+ export function mapPath(subpaths, ox, oy, sx, sy) {
358
+ const X = (v) => ox + v * sx;
359
+ const Y = (v) => oy + v * sy;
360
+ return subpaths.map((sp) => sp.map((c) => {
361
+ switch (c.op) {
362
+ case 'M':
363
+ case 'L':
364
+ return { op: c.op, x: X(c.x), y: Y(c.y) };
365
+ case 'C':
366
+ return { op: 'C', x1: X(c.x1), y1: Y(c.y1), x2: X(c.x2), y2: Y(c.y2), x: X(c.x), y: Y(c.y) };
367
+ case 'Q':
368
+ return { op: 'Q', x1: X(c.x1), y1: Y(c.y1), x: X(c.x), y: Y(c.y) };
369
+ case 'Z':
370
+ return { op: 'Z' };
371
+ }
372
+ }));
373
+ }
374
+ /** Parses kept per data string: the same running-head chevrons are laid on
375
+ * every page. Cleared whole when it grows past this many. */
376
+ const CACHE_LIMIT = 256;
377
+ const cache = new Map();
378
+ /** `parseSvgPath`, remembered per data string. The outline returned is
379
+ * shared: map it (`mapPath`), never change it. */
380
+ export function parseSvgPathCached(d) {
381
+ const hit = cache.get(d);
382
+ if (hit)
383
+ return hit;
384
+ const r = parseSvgPath(d);
385
+ if (cache.size >= CACHE_LIMIT)
386
+ cache.clear();
387
+ cache.set(d, r);
388
+ return r;
389
+ }
390
+ /** The `viewBox` a path element is written in: `[1, 1]` when unset, none
391
+ * when either side is not a positive finite number. */
392
+ export function pathViewBox(vb) {
393
+ if (vb === undefined)
394
+ return [1, 1];
395
+ if (!Array.isArray(vb) || vb.length !== 2)
396
+ return undefined;
397
+ const [w, h] = vb;
398
+ if (typeof w !== 'number' || typeof h !== 'number' || !(w > 0) || !(h > 0) || !Number.isFinite(w) || !Number.isFinite(h))
399
+ return undefined;
400
+ return [w, h];
401
+ }
402
+ //# sourceMappingURL=svgPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svgPath.js","sourceRoot":"","sources":["../../src/design/svgPath.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,11 @@ export type FontContentText = string | readonly string[] | undefined;
11
11
  * styles, running heads, design elements and comic lettering.
12
12
  */
13
13
  export declare function configFontFamilies(config: PostextConfig, markdown?: FontContentText): string[];
14
+ /** The faces the glyphs of inline symbols are set in (#1058): every
15
+ * `font="…"` of a `:icon[…]{glyph=… font=…}` the text writes (in a
16
+ * figure's labels and its `::caption` / `::note` lines). Read with a scan,
17
+ * not an expression: a long line is never read again from each opening. */
18
+ export declare function iconFontFamilies(markdown: FontContentText): string[];
14
19
  /** The faces code is set in (#624): the listings' when the text holds a
15
20
  * fence (and the configuration reads fences) or the configuration has a
16
21
  * `codeStyle` section, the inline code's when it sets inline code. */
@@ -1 +1 @@
1
- {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/fonts/usage.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAO7C;;;oEAGoE;AACpE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;AAgCrE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CAyE9F;AASD;;uEAEuE;AACvE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CAO5F;AAED,MAAM,WAAW,cAAc;IAAG,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAAE;AAE9E,eAAO,MAAM,sBAAsB,EAAE,SAAS,cAAc,EAK3D,CAAC;AAEF,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC;;;6BAGyB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;4BACwB;IACxB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAKD;;;oDAGoD;AACpD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAEzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CA6G9G"}
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/fonts/usage.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAQ7C;;;oEAGoE;AACpE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;AAgCrE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CA4E9F;AAED;;;4EAG4E;AAC5E,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,EAAE,CAgBpE;AASD;;uEAEuE;AACvE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,MAAM,EAAE,CAO5F;AAED,MAAM,WAAW,cAAc;IAAG,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAAE;AAE9E,eAAO,MAAM,sBAAsB,EAAE,SAAS,cAAc,EAK3D,CAAC;AAEF,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC;;;6BAGyB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;4BACwB;IACxB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAKD;;;oDAGoD;AACpD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAEzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CA+G9G"}
@@ -7,6 +7,7 @@ import { primaryFontFamily } from '../measure/font';
7
7
  import { comicFontFamilies, comicFontUses } from '../comics/fonts';
8
8
  import { DEFAULT_CODE_STYLE } from '../defaults/codeStyle';
9
9
  import { codeFenceOpen } from '../parse/codeFence';
10
+ import { parseDirectiveAttrs } from '../parse/attrs';
10
11
  /** Config keys naming a font family: `fontFamily`, `bodyFontFamily`,
11
12
  * `headerFontFamily`, `separatorFontFamily`, `numberFontFamily`… */
12
13
  const FONT_FAMILY_KEY = /^(?:f|[a-z]\w*F)ontFamily$/;
@@ -64,10 +65,11 @@ export function configFontFamilies(config, markdown) {
64
65
  families.add(level.fontFamily);
65
66
  families.add(level.separatorFontFamily);
66
67
  }
67
- // Callout styles: title, glyph icon / marker and body fonts. Unset fields
68
- // inherit the headings / body families collected above.
68
+ // Callout styles: title, glyph icon / marker, the glyph of the label tab
69
+ // (#1054) and body fonts. Unset fields inherit the headings / body
70
+ // families collected above.
69
71
  for (const style of config.calloutStyles ?? []) {
70
- for (const family of [style.titleStyle?.fontFamily, style.icon?.fontFamily, style.marker?.fontFamily, style.body?.fontFamily]) {
72
+ for (const family of [style.titleStyle?.fontFamily, style.icon?.fontFamily, style.marker?.fontFamily, style.label?.icon?.fontFamily, style.body?.fontFamily]) {
71
73
  if (family)
72
74
  families.add(family);
73
75
  }
@@ -131,10 +133,38 @@ export function configFontFamilies(config, markdown) {
131
133
  // configuration sets one.
132
134
  for (const family of codeFontFamilies(config, markdown))
133
135
  families.add(family);
136
+ // The glyphs of inline symbols (#1058), in the faces the text names.
137
+ for (const family of iconFontFamilies(markdown))
138
+ families.add(family);
134
139
  // A CSS font stack sets its text in the first family (the engine's
135
140
  // `primaryFontFamily`): load that one.
136
141
  return [...new Set(Array.from(families, primaryFontFamily))];
137
142
  }
143
+ /** The faces the glyphs of inline symbols are set in (#1058): every
144
+ * `font="…"` of a `:icon[…]{glyph=… font=…}` the text writes (in a
145
+ * figure's labels and its `::caption` / `::note` lines). Read with a scan,
146
+ * not an expression: a long line is never read again from each opening. */
147
+ export function iconFontFamilies(markdown) {
148
+ if (markdown === undefined)
149
+ return [];
150
+ const out = new Set();
151
+ for (const text of typeof markdown === 'string' ? [markdown] : markdown) {
152
+ for (let at = text.indexOf(':icon['); at >= 0; at = text.indexOf(':icon[', at + 1)) {
153
+ const close = text.indexOf(']{', at);
154
+ const lineEnd = text.indexOf('\n', at);
155
+ if (close < 0 || (lineEnd >= 0 && close > lineEnd))
156
+ continue;
157
+ const end = text.indexOf('}', close);
158
+ if (end < 0 || (lineEnd >= 0 && end > lineEnd))
159
+ continue;
160
+ const attrs = parseDirectiveAttrs(text.slice(close + 2, end));
161
+ const font = attrs.font?.trim();
162
+ if (font && attrs.glyph)
163
+ out.add(primaryFontFamily(font));
164
+ }
165
+ }
166
+ return [...out];
167
+ }
138
168
  /** Whether `text` holds a line that opens a code fence. */
139
169
  function hasCodeFence(text) {
140
170
  if (text === undefined)
@@ -237,6 +267,9 @@ export function collectFontUsage(config, doc) {
237
267
  add(primaryFontFamily(h.family), { weight: h.weight, style: h.italic ? 'italic' : 'normal' });
238
268
  for (const c of comicFontUses(config, doc?.markdown))
239
269
  add(primaryFontFamily(c.family), { weight: c.weight, style: c.style });
270
+ // The glyphs of inline symbols (#1058): upright, regular.
271
+ for (const family of iconFontFamilies(doc?.markdown))
272
+ add(family, { weight: 400, style: 'normal' });
240
273
  const body = config.bodyText?.fontFamily;
241
274
  if (typeof body === 'string' && body.trim()) {
242
275
  const emphasis = config.cjk?.emphasis ?? 'auto';
@@ -1 +1 @@
1
- {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/fonts/usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/fonts/usage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"html-backend.d.ts","sourceRoot":"","sources":["../src/html-backend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EAuBX,aAAa,EACd,MAAM,OAAO,CAAC;AAIf,OAAO,EAA8B,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AA+InF,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;kDAI8C;IAC9C,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG;QAC5D;;;0BAGkB;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IACF;;;;;;;;;;;;iEAY6D;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;4DAGwD;IACxD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC1D;;;;;;;2DAOuD;IACvD,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;KAAE,CAAC;IACnG;;;wDAGoD;IACpD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C;;;;;;;uEAOmE;IACnE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;;;;;;;uBAUmB;IACnB,cAAc,CAAC,EAAE,OAAO,GAAG;QACzB,KAAK,CAAC,EAAE,mBAAmB,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;QACvC;2DACmD;QACnD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;KAClD,CAAC;CACH;AAgWD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,CAajE;AA8+FD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,8EAA8E;IAC9E,cAAc,EAAE,MAAM,CAAC;IACvB;4EACwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,QAS4B,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,WAAW,EAChB,OAAO,GAAE,iBAAsB,GAC9B,eAAe,CAuGjB;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAEtF"}
1
+ {"version":3,"file":"html-backend.d.ts","sourceRoot":"","sources":["../src/html-backend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EAwBX,aAAa,EACd,MAAM,OAAO,CAAC;AAKf,OAAO,EAA8B,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAgJnF,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;kDAI8C;IAC9C,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG;QAC5D;;;0BAGkB;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;IACF;;;;;;;;;;;;iEAY6D;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;4DAGwD;IACxD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC1D;;;;;;;2DAOuD;IACvD,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;KAAE,CAAC;IACnG;;;wDAGoD;IACpD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C;;;;;;;uEAOmE;IACnE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;;;;;;;uBAUmB;IACnB,cAAc,CAAC,EAAE,OAAO,GAAG;QACzB,KAAK,CAAC,EAAE,mBAAmB,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;QACvC;2DACmD;QACnD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;KAClD,CAAC;CACH;AAgWD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,CAajE;AAwlGD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,8EAA8E;IAC9E,cAAc,EAAE,MAAM,CAAC;IACvB;4EACwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,QAS4B,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,WAAW,EAChB,OAAO,GAAE,iBAAsB,GAC9B,eAAe,CAuGjB;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAEtF"}