postext 1.29.1 → 1.30.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 (300) hide show
  1. package/dist/__tests__/arabicLocale.test.js +5 -5
  2. package/dist/__tests__/arabicLocale.test.js.map +1 -1
  3. package/dist/__tests__/bundle/balloonPlacementPin.test.js +5 -4
  4. package/dist/__tests__/bundle/balloonPlacementPin.test.js.map +1 -1
  5. package/dist/__tests__/bundle/cjkRulesPin.test.js +8 -6
  6. package/dist/__tests__/bundle/cjkRulesPin.test.js.map +1 -1
  7. package/dist/__tests__/bundle/designOverflowPin.test.js +1 -1
  8. package/dist/__tests__/bundle/flowColumnsPin.test.js +4 -3
  9. package/dist/__tests__/bundle/flowColumnsPin.test.js.map +1 -1
  10. package/dist/__tests__/bundle/gridBalancingPin.test.js +5 -4
  11. package/dist/__tests__/bundle/gridBalancingPin.test.js.map +1 -1
  12. package/dist/__tests__/bundle/gridBreakRulesPin.test.js +14 -10
  13. package/dist/__tests__/bundle/gridBreakRulesPin.test.js.map +1 -1
  14. package/dist/__tests__/bundle/indexGroupSplitPin.test.js +4 -3
  15. package/dist/__tests__/bundle/indexGroupSplitPin.test.js.map +1 -1
  16. package/dist/__tests__/bundle/looseOrderPin.test.js +5 -4
  17. package/dist/__tests__/bundle/looseOrderPin.test.js.map +1 -1
  18. package/dist/__tests__/bundle/refLabelBreaksPin.test.js +5 -4
  19. package/dist/__tests__/bundle/refLabelBreaksPin.test.js.map +1 -1
  20. package/dist/__tests__/bundle/scriptContextPin.test.js +6 -5
  21. package/dist/__tests__/bundle/scriptContextPin.test.js.map +1 -1
  22. package/dist/__tests__/bundle/shapingLanguagePin.test.js +142 -46
  23. package/dist/__tests__/bundle/shapingLanguagePin.test.js.map +1 -1
  24. package/dist/__tests__/bundle/taskBoxPin.test.js +1 -1
  25. package/dist/__tests__/bundle/trailingStepPin.test.js +4 -3
  26. package/dist/__tests__/bundle/trailingStepPin.test.js.map +1 -1
  27. package/dist/__tests__/bundle/wideFloatStretchPin.test.js +4 -3
  28. package/dist/__tests__/bundle/wideFloatStretchPin.test.js.map +1 -1
  29. package/dist/__tests__/bundle.test.js +1 -1
  30. package/dist/__tests__/cellText.test.d.ts +2 -0
  31. package/dist/__tests__/cellText.test.d.ts.map +1 -0
  32. package/dist/__tests__/cellText.test.js +281 -0
  33. package/dist/__tests__/cellText.test.js.map +1 -0
  34. package/dist/__tests__/chineseLocale.test.js +24 -7
  35. package/dist/__tests__/chineseLocale.test.js.map +1 -1
  36. package/dist/__tests__/cjk/japaneseHtml.test.js +3 -3
  37. package/dist/__tests__/cjk/japaneseHtml.test.js.map +1 -1
  38. package/dist/__tests__/cjk/japaneseRuby.test.js +1 -1
  39. package/dist/__tests__/cjk/japaneseRuby.test.js.map +1 -1
  40. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js +3 -3
  41. package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js.map +1 -1
  42. package/dist/__tests__/codeBlocks.test.js +1 -1
  43. package/dist/__tests__/contextState.test.d.ts +2 -0
  44. package/dist/__tests__/contextState.test.d.ts.map +1 -0
  45. package/dist/__tests__/contextState.test.js +478 -0
  46. package/dist/__tests__/contextState.test.js.map +1 -0
  47. package/dist/__tests__/contextText.test.d.ts +2 -0
  48. package/dist/__tests__/contextText.test.d.ts.map +1 -0
  49. package/dist/__tests__/contextText.test.js +371 -0
  50. package/dist/__tests__/contextText.test.js.map +1 -0
  51. package/dist/__tests__/design/designTextRender.test.js +8 -1
  52. package/dist/__tests__/design/designTextRender.test.js.map +1 -1
  53. package/dist/__tests__/exports.test.js +6 -0
  54. package/dist/__tests__/exports.test.js.map +1 -1
  55. package/dist/__tests__/fontUsage.test.js +40 -0
  56. package/dist/__tests__/fontUsage.test.js.map +1 -1
  57. package/dist/__tests__/hardBreaks.test.js +1 -1
  58. package/dist/__tests__/headingInlineMarks.test.js +1 -1
  59. package/dist/__tests__/html-backend.test.js +6 -2
  60. package/dist/__tests__/html-backend.test.js.map +1 -1
  61. package/dist/__tests__/japaneseNotes.test.js +4 -2
  62. package/dist/__tests__/japaneseNotes.test.js.map +1 -1
  63. package/dist/__tests__/lineEndPieces.test.d.ts +2 -0
  64. package/dist/__tests__/lineEndPieces.test.d.ts.map +1 -0
  65. package/dist/__tests__/lineEndPieces.test.js +374 -0
  66. package/dist/__tests__/lineEndPieces.test.js.map +1 -0
  67. package/dist/__tests__/mathSizeMigration.test.js +2 -2
  68. package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js +1 -1
  69. package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js +1 -1
  70. package/dist/__tests__/pipeline/colonListRoom.test.js +1 -1
  71. package/dist/__tests__/pipeline/compoundBreaks.test.js +1 -1
  72. package/dist/__tests__/pipeline/dashBreaks.test.js +1 -1
  73. package/dist/__tests__/pipeline/headingSplitOrphans.test.js +1 -1
  74. package/dist/__tests__/pipeline/inlineFigureSpace.test.js +1 -1
  75. package/dist/__tests__/pipeline/paragraphContainerTail.test.js +1 -1
  76. package/dist/__tests__/pipeline/raggedOptimal.test.js +1 -1
  77. package/dist/__tests__/plainGeminateHead.test.d.ts +2 -0
  78. package/dist/__tests__/plainGeminateHead.test.d.ts.map +1 -0
  79. package/dist/__tests__/plainGeminateHead.test.js +92 -0
  80. package/dist/__tests__/plainGeminateHead.test.js.map +1 -0
  81. package/dist/__tests__/presets/showcaseShapingLanguage.test.d.ts +2 -0
  82. package/dist/__tests__/presets/showcaseShapingLanguage.test.d.ts.map +1 -0
  83. package/dist/__tests__/presets/showcaseShapingLanguage.test.js +52 -0
  84. package/dist/__tests__/presets/showcaseShapingLanguage.test.js.map +1 -0
  85. package/dist/__tests__/reshapedTracking.test.d.ts +2 -0
  86. package/dist/__tests__/reshapedTracking.test.d.ts.map +1 -0
  87. package/dist/__tests__/reshapedTracking.test.js +358 -0
  88. package/dist/__tests__/reshapedTracking.test.js.map +1 -0
  89. package/dist/__tests__/rtl/designRunsPainted.test.d.ts +2 -0
  90. package/dist/__tests__/rtl/designRunsPainted.test.d.ts.map +1 -0
  91. package/dist/__tests__/rtl/designRunsPainted.test.js +184 -0
  92. package/dist/__tests__/rtl/designRunsPainted.test.js.map +1 -0
  93. package/dist/__tests__/rtl/designTextPaint.test.js +5 -1
  94. package/dist/__tests__/rtl/designTextPaint.test.js.map +1 -1
  95. package/dist/__tests__/rtl/htmlRtl.test.js +3 -3
  96. package/dist/__tests__/rtl/htmlRtl.test.js.map +1 -1
  97. package/dist/__tests__/rtl/listMarkerDirection.test.js +28 -28
  98. package/dist/__tests__/rtl/listMarkerDirection.test.js.map +1 -1
  99. package/dist/__tests__/rtl/tocNumberPainted.test.d.ts +2 -0
  100. package/dist/__tests__/rtl/tocNumberPainted.test.d.ts.map +1 -0
  101. package/dist/__tests__/rtl/tocNumberPainted.test.js +113 -0
  102. package/dist/__tests__/rtl/tocNumberPainted.test.js.map +1 -0
  103. package/dist/__tests__/scriptContext.test.js +141 -1
  104. package/dist/__tests__/scriptContext.test.js.map +1 -1
  105. package/dist/__tests__/shapingLanguage.test.js +60 -43
  106. package/dist/__tests__/shapingLanguage.test.js.map +1 -1
  107. package/dist/__tests__/trackedLetters.test.d.ts +2 -0
  108. package/dist/__tests__/trackedLetters.test.d.ts.map +1 -0
  109. package/dist/__tests__/trackedLetters.test.js +380 -0
  110. package/dist/__tests__/trackedLetters.test.js.map +1 -0
  111. package/dist/__tests__/trackedLigatures.test.js +23 -10
  112. package/dist/__tests__/trackedLigatures.test.js.map +1 -1
  113. package/dist/__tests__/verseLines.test.js +1 -1
  114. package/dist/__tests__/wordCacheOrder.test.d.ts +2 -0
  115. package/dist/__tests__/wordCacheOrder.test.d.ts.map +1 -0
  116. package/dist/__tests__/wordCacheOrder.test.js +352 -0
  117. package/dist/__tests__/wordCacheOrder.test.js.map +1 -0
  118. package/dist/__tests__/wordPieces.test.d.ts +2 -0
  119. package/dist/__tests__/wordPieces.test.d.ts.map +1 -0
  120. package/dist/__tests__/wordPieces.test.js +762 -0
  121. package/dist/__tests__/wordPieces.test.js.map +1 -0
  122. package/dist/bidi.d.ts +12 -0
  123. package/dist/bidi.d.ts.map +1 -1
  124. package/dist/bidi.js +23 -0
  125. package/dist/bidi.js.map +1 -1
  126. package/dist/bundle/configVersion.d.ts +49 -23
  127. package/dist/bundle/configVersion.d.ts.map +1 -1
  128. package/dist/bundle/configVersion.js +54 -25
  129. package/dist/bundle/configVersion.js.map +1 -1
  130. package/dist/canvas-backend/annotations.d.ts.map +1 -1
  131. package/dist/canvas-backend/annotations.js +8 -7
  132. package/dist/canvas-backend/annotations.js.map +1 -1
  133. package/dist/canvas-backend/blockRender.d.ts.map +1 -1
  134. package/dist/canvas-backend/blockRender.js +81 -47
  135. package/dist/canvas-backend/blockRender.js.map +1 -1
  136. package/dist/canvas-backend/cellText.d.ts +12 -0
  137. package/dist/canvas-backend/cellText.d.ts.map +1 -0
  138. package/dist/canvas-backend/cellText.js +114 -0
  139. package/dist/canvas-backend/cellText.js.map +1 -0
  140. package/dist/canvas-backend/chip.d.ts.map +1 -1
  141. package/dist/canvas-backend/chip.js +12 -9
  142. package/dist/canvas-backend/chip.js.map +1 -1
  143. package/dist/canvas-backend/comic.d.ts.map +1 -1
  144. package/dist/canvas-backend/comic.js +9 -8
  145. package/dist/canvas-backend/comic.js.map +1 -1
  146. package/dist/canvas-backend/contextState.d.ts +69 -0
  147. package/dist/canvas-backend/contextState.d.ts.map +1 -0
  148. package/dist/canvas-backend/contextState.js +96 -0
  149. package/dist/canvas-backend/contextState.js.map +1 -0
  150. package/dist/canvas-backend/contextText.d.ts +76 -0
  151. package/dist/canvas-backend/contextText.d.ts.map +1 -0
  152. package/dist/canvas-backend/contextText.js +102 -0
  153. package/dist/canvas-backend/contextText.js.map +1 -0
  154. package/dist/canvas-backend/decorations.d.ts.map +1 -1
  155. package/dist/canvas-backend/decorations.js +11 -10
  156. package/dist/canvas-backend/decorations.js.map +1 -1
  157. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  158. package/dist/canvas-backend/headerFooter.js +23 -15
  159. package/dist/canvas-backend/headerFooter.js.map +1 -1
  160. package/dist/canvas-backend/index.d.ts.map +1 -1
  161. package/dist/canvas-backend/index.js +41 -17
  162. package/dist/canvas-backend/index.js.map +1 -1
  163. package/dist/canvas-backend/mirrorFrame.d.ts.map +1 -1
  164. package/dist/canvas-backend/mirrorFrame.js +5 -4
  165. package/dist/canvas-backend/mirrorFrame.js.map +1 -1
  166. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  167. package/dist/canvas-backend/renderResourceBlock.js +36 -29
  168. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  169. package/dist/canvas-backend/runDirection.d.ts.map +1 -1
  170. package/dist/canvas-backend/runDirection.js +9 -5
  171. package/dist/canvas-backend/runDirection.js.map +1 -1
  172. package/dist/canvas-backend/scriptText.d.ts.map +1 -1
  173. package/dist/canvas-backend/scriptText.js +11 -9
  174. package/dist/canvas-backend/scriptText.js.map +1 -1
  175. package/dist/canvas-backend/segmentText.d.ts.map +1 -1
  176. package/dist/canvas-backend/segmentText.js +18 -5
  177. package/dist/canvas-backend/segmentText.js.map +1 -1
  178. package/dist/canvas-backend/swatch.d.ts.map +1 -1
  179. package/dist/canvas-backend/swatch.js +3 -2
  180. package/dist/canvas-backend/swatch.js.map +1 -1
  181. package/dist/canvas-backend/trackedText.d.ts +75 -1
  182. package/dist/canvas-backend/trackedText.d.ts.map +1 -1
  183. package/dist/canvas-backend/trackedText.js +192 -28
  184. package/dist/canvas-backend/trackedText.js.map +1 -1
  185. package/dist/canvas-backend/verticalText.d.ts +12 -2
  186. package/dist/canvas-backend/verticalText.d.ts.map +1 -1
  187. package/dist/canvas-backend/verticalText.js +64 -38
  188. package/dist/canvas-backend/verticalText.js.map +1 -1
  189. package/dist/canvas-backend/wordPieces.d.ts +31 -0
  190. package/dist/canvas-backend/wordPieces.d.ts.map +1 -0
  191. package/dist/canvas-backend/wordPieces.js +132 -0
  192. package/dist/canvas-backend/wordPieces.js.map +1 -0
  193. package/dist/canvas-backend/wordRuns.d.ts +13 -1
  194. package/dist/canvas-backend/wordRuns.d.ts.map +1 -1
  195. package/dist/canvas-backend/wordRuns.js +38 -23
  196. package/dist/canvas-backend/wordRuns.js.map +1 -1
  197. package/dist/comics/lettering/__tests__/fitAsPainted.test.d.ts +2 -0
  198. package/dist/comics/lettering/__tests__/fitAsPainted.test.d.ts.map +1 -0
  199. package/dist/comics/lettering/__tests__/fitAsPainted.test.js +97 -0
  200. package/dist/comics/lettering/__tests__/fitAsPainted.test.js.map +1 -0
  201. package/dist/comics/lettering/shape-text.d.ts.map +1 -1
  202. package/dist/comics/lettering/shape-text.js +39 -11
  203. package/dist/comics/lettering/shape-text.js.map +1 -1
  204. package/dist/defaults/bodyText.d.ts.map +1 -1
  205. package/dist/defaults/bodyText.js +6 -5
  206. package/dist/defaults/bodyText.js.map +1 -1
  207. package/dist/design/bidiText.d.ts +45 -6
  208. package/dist/design/bidiText.d.ts.map +1 -1
  209. package/dist/design/bidiText.js +78 -10
  210. package/dist/design/bidiText.js.map +1 -1
  211. package/dist/design/cjkText.d.ts +3 -0
  212. package/dist/design/cjkText.d.ts.map +1 -1
  213. package/dist/design/cjkText.js +1 -1
  214. package/dist/design/cjkText.js.map +1 -1
  215. package/dist/design/layout.d.ts.map +1 -1
  216. package/dist/design/layout.js +36 -5
  217. package/dist/design/layout.js.map +1 -1
  218. package/dist/design/richText.d.ts +9 -1
  219. package/dist/design/richText.d.ts.map +1 -1
  220. package/dist/design/richText.js +8 -2
  221. package/dist/design/richText.js.map +1 -1
  222. package/dist/fonts/usage.d.ts +2 -0
  223. package/dist/fonts/usage.d.ts.map +1 -1
  224. package/dist/fonts/usage.js +18 -0
  225. package/dist/fonts/usage.js.map +1 -1
  226. package/dist/html-backend.d.ts.map +1 -1
  227. package/dist/html-backend.js +664 -84
  228. package/dist/html-backend.js.map +1 -1
  229. package/dist/index.d.ts +3 -1
  230. package/dist/index.d.ts.map +1 -1
  231. package/dist/index.js +4 -1
  232. package/dist/index.js.map +1 -1
  233. package/dist/knuthPlass/breakpoints.d.ts.map +1 -1
  234. package/dist/knuthPlass/breakpoints.js +4 -2
  235. package/dist/knuthPlass/breakpoints.js.map +1 -1
  236. package/dist/knuthPlass/pretextAdapter.d.ts +6 -3
  237. package/dist/knuthPlass/pretextAdapter.d.ts.map +1 -1
  238. package/dist/knuthPlass/pretextAdapter.js +11 -3
  239. package/dist/knuthPlass/pretextAdapter.js.map +1 -1
  240. package/dist/knuthPlass/richAdapter.d.ts +13 -1
  241. package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
  242. package/dist/knuthPlass/richAdapter.js +53 -5
  243. package/dist/knuthPlass/richAdapter.js.map +1 -1
  244. package/dist/knuthPlass/tracking.d.ts.map +1 -1
  245. package/dist/knuthPlass/tracking.js +3 -2
  246. package/dist/knuthPlass/tracking.js.map +1 -1
  247. package/dist/knuthPlass/types.d.ts +6 -0
  248. package/dist/knuthPlass/types.d.ts.map +1 -1
  249. package/dist/locale.d.ts +25 -18
  250. package/dist/locale.d.ts.map +1 -1
  251. package/dist/locale.js +27 -20
  252. package/dist/locale.js.map +1 -1
  253. package/dist/looseLines.d.ts.map +1 -1
  254. package/dist/looseLines.js +3 -2
  255. package/dist/looseLines.js.map +1 -1
  256. package/dist/measure/canvas.d.ts +21 -0
  257. package/dist/measure/canvas.d.ts.map +1 -1
  258. package/dist/measure/canvas.js +165 -85
  259. package/dist/measure/canvas.js.map +1 -1
  260. package/dist/measure/cjkCompose.d.ts.map +1 -1
  261. package/dist/measure/cjkCompose.js +31 -5
  262. package/dist/measure/cjkCompose.js.map +1 -1
  263. package/dist/measure/plain.d.ts.map +1 -1
  264. package/dist/measure/plain.js +31 -6
  265. package/dist/measure/plain.js.map +1 -1
  266. package/dist/measure/pretextLanguage.d.ts.map +1 -1
  267. package/dist/measure/pretextLanguage.js +49 -7
  268. package/dist/measure/pretextLanguage.js.map +1 -1
  269. package/dist/measure/rich.d.ts +18 -1
  270. package/dist/measure/rich.d.ts.map +1 -1
  271. package/dist/measure/rich.js +200 -29
  272. package/dist/measure/rich.js.map +1 -1
  273. package/dist/measure/script.d.ts +17 -1
  274. package/dist/measure/script.d.ts.map +1 -1
  275. package/dist/measure/script.js +17 -1
  276. package/dist/measure/script.js.map +1 -1
  277. package/dist/measure/trackedLigatures.d.ts +59 -0
  278. package/dist/measure/trackedLigatures.d.ts.map +1 -0
  279. package/dist/measure/trackedLigatures.js +144 -0
  280. package/dist/measure/trackedLigatures.js.map +1 -0
  281. package/dist/pipeline/build.d.ts.map +1 -1
  282. package/dist/pipeline/build.js +4 -3
  283. package/dist/pipeline/build.js.map +1 -1
  284. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  285. package/dist/pipeline/calloutLayout.js +26 -7
  286. package/dist/pipeline/calloutLayout.js.map +1 -1
  287. package/dist/pipeline/lists.d.ts +13 -4
  288. package/dist/pipeline/lists.d.ts.map +1 -1
  289. package/dist/pipeline/lists.js +49 -12
  290. package/dist/pipeline/lists.js.map +1 -1
  291. package/dist/pipeline/toc.d.ts.map +1 -1
  292. package/dist/pipeline/toc.js +33 -9
  293. package/dist/pipeline/toc.js.map +1 -1
  294. package/dist/types.d.ts +35 -22
  295. package/dist/types.d.ts.map +1 -1
  296. package/dist/wordPieces.d.ts +120 -0
  297. package/dist/wordPieces.d.ts.map +1 -0
  298. package/dist/wordPieces.js +319 -0
  299. package/dist/wordPieces.js.map +1 -0
  300. package/package.json +1 -1
@@ -2,8 +2,9 @@ import { dimensionToPx } from '../units';
2
2
  import { columnRuleSegments, footnoteRuleSegments } from '../columnRule';
3
3
  import { cropMarkSegments } from '../cropMarks';
4
4
  import { CHARACTER_GRID_COLOR } from '../pipeline/cjkGrid';
5
+ import { restoreContext, saveContext } from './contextState';
5
6
  export function renderBaselineGrid(ctx, contentArea, baselineIncrement, color, lineWidth, textExtent) {
6
- ctx.save();
7
+ saveContext(ctx);
7
8
  ctx.strokeStyle = color;
8
9
  ctx.lineWidth = lineWidth;
9
10
  // Baselines live on the global grid anchored at the content-area top
@@ -26,13 +27,13 @@ export function renderBaselineGrid(ctx, contentArea, baselineIncrement, color, l
26
27
  ctx.stroke();
27
28
  y += baselineIncrement;
28
29
  }
29
- ctx.restore();
30
+ restoreContext(ctx);
30
31
  }
31
32
  /** The character grid (稿纸) over the type area (`cjk.grid.show`): one
32
33
  * square per character position, drawn in a light grey (see
33
34
  * `cjkGridCells`). */
34
35
  export function renderCharacterGrid(ctx, cells) {
35
- ctx.save();
36
+ saveContext(ctx);
36
37
  ctx.strokeStyle = CHARACTER_GRID_COLOR;
37
38
  ctx.lineWidth = 0.5;
38
39
  ctx.beginPath();
@@ -52,7 +53,7 @@ export function renderCharacterGrid(ctx, cells) {
52
53
  }
53
54
  });
54
55
  ctx.stroke();
55
- ctx.restore();
56
+ restoreContext(ctx);
56
57
  }
57
58
  export function renderColumnRule(ctx, columns, color, lineWidth, footnoteAreas) {
58
59
  if (columns.length < 2)
@@ -62,7 +63,7 @@ export function renderColumnRule(ctx, columns, color, lineWidth, footnoteAreas)
62
63
  const segments = columnRuleSegments(columns, footnoteAreas);
63
64
  if (segments.length === 0)
64
65
  return;
65
- ctx.save();
66
+ saveContext(ctx);
66
67
  ctx.strokeStyle = color;
67
68
  ctx.lineWidth = lineWidth;
68
69
  for (const seg of segments) {
@@ -71,13 +72,13 @@ export function renderColumnRule(ctx, columns, color, lineWidth, footnoteAreas)
71
72
  ctx.lineTo(seg.x, seg.bottom);
72
73
  ctx.stroke();
73
74
  }
74
- ctx.restore();
75
+ restoreContext(ctx);
75
76
  }
76
77
  export function renderCutLines(ctx, page, doc) {
77
78
  const { cutLines, dpi } = doc.config.page;
78
79
  if (!cutLines.enabled)
79
80
  return;
80
- ctx.save();
81
+ saveContext(ctx);
81
82
  ctx.strokeStyle = cutLines.color.hex;
82
83
  ctx.lineWidth = dimensionToPx(cutLines.markWidth, dpi);
83
84
  // Two marks at each trim corner, clear of the bleed (see `cropMarkSegments`).
@@ -87,7 +88,7 @@ export function renderCutLines(ctx, page, doc) {
87
88
  ctx.lineTo(seg.x2, seg.y2);
88
89
  ctx.stroke();
89
90
  }
90
- ctx.restore();
91
+ restoreContext(ctx);
91
92
  }
92
93
  /** The page's content area. Pages built by the pipeline carry it directly
93
94
  * (`page.contentArea` — per page, so mirrored margins are honoured); the
@@ -119,7 +120,7 @@ export function renderFootnoteRules(ctx, page) {
119
120
  const rules = footnoteRuleSegments(page);
120
121
  if (rules.length === 0)
121
122
  return;
122
- ctx.save();
123
+ saveContext(ctx);
123
124
  for (const r of rules) {
124
125
  ctx.strokeStyle = r.color;
125
126
  ctx.lineWidth = r.lineWidthPx;
@@ -128,6 +129,6 @@ export function renderFootnoteRules(ctx, page) {
128
129
  ctx.lineTo(r.x + r.width, r.y);
129
130
  ctx.stroke();
130
131
  }
131
- ctx.restore();
132
+ restoreContext(ctx);
132
133
  }
133
134
  //# sourceMappingURL=decorations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorations.js","sourceRoot":"","sources":["../../src/canvas-backend/decorations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorations.js","sourceRoot":"","sources":["../../src/canvas-backend/decorations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"headerFooter.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/headerFooter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAKnB,MAAM,QAAQ,CAAC;AAgGhB;0EAC0E;AAC1E,wBAAgB,eAAe,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAmF9F;AAmDD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,aAAa;AACnB,mEAAmE;AACnE,MAAM,GAAE,MAAM,GAAG,IAAW,GAC3B,IAAI,CAON"}
1
+ {"version":3,"file":"headerFooter.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/headerFooter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAKnB,MAAM,QAAQ,CAAC;AAkGhB;0EAC0E;AAC1E,wBAAgB,eAAe,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAwF9F;AAmDD,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,wBAAwB,EAC7B,IAAI,EAAE,aAAa;AACnB,mEAAmE;AACnE,MAAM,GAAE,MAAM,GAAG,IAAW,GAC3B,IAAI,CAON"}
@@ -5,6 +5,8 @@ import { paintRunInDirection, runPaintOrder } from './runDirection';
5
5
  import { fillTrackedWord } from './trackedText';
6
6
  import { hasCJK } from '../measure/cjk';
7
7
  import { markCuts } from '../measure/markCuts';
8
+ import { restoreContext, saveContext, setLetterSpacing } from './contextState';
9
+ import { fillCellRuns } from './cellText';
8
10
  /** Adds a rounded rectangle to the current path, as a closed subpath. */
9
11
  function traceRoundedRect(ctx, x, y, w, h, r) {
10
12
  const radius = Math.max(0, Math.min(r, w / 2, h / 2));
@@ -43,7 +45,7 @@ function drawBoxBackground(ctx, x, y, w, h, style) {
43
45
  const bw = style.borderColor ? Math.max(0, style.borderWidthPx) : 0;
44
46
  const solid = bw > 0 && (bw >= w || bw >= h);
45
47
  const outerRadius = Math.max(0, Math.min(style.borderRadiusPx, w / 2, h / 2));
46
- ctx.save();
48
+ saveContext(ctx);
47
49
  if (outerRadius > 0) {
48
50
  if (style.backgroundColor || solid) {
49
51
  drawRoundedRectPath(ctx, x, y, w, h, outerRadius);
@@ -70,7 +72,7 @@ function drawBoxBackground(ctx, x, y, w, h, style) {
70
72
  ctx.strokeRect(x + bw / 2, y + bw / 2, w - bw, h - bw);
71
73
  }
72
74
  }
73
- ctx.restore();
75
+ restoreContext(ctx);
74
76
  }
75
77
  /** Paint one design text block (horizontal, right to left or vertical) as
76
78
  * the design slots do; also used for the lettering of comic balloons. */
@@ -78,7 +80,7 @@ export function renderTextBlock(ctx, block) {
78
80
  if (block.box) {
79
81
  drawBoxBackground(ctx, block.bbox.x, block.bbox.y, block.bbox.width, block.bbox.height, block.box);
80
82
  }
81
- ctx.save();
83
+ saveContext(ctx);
82
84
  if (block.clip) {
83
85
  ctx.beginPath();
84
86
  ctx.rect(block.bbox.x, block.bbox.y, block.bbox.width, block.bbox.height);
@@ -90,7 +92,7 @@ export function renderTextBlock(ctx, block) {
90
92
  // Negative tracking tightens the letters (EF-82).
91
93
  const tracked = block.letterSpacingPx !== undefined && block.letterSpacingPx !== 0;
92
94
  if (tracked)
93
- ctx.letterSpacing = `${block.letterSpacingPx}px`;
95
+ setLetterSpacing(ctx, block.letterSpacingPx);
94
96
  // An outline is stroked over the filled glyphs (or alone, for hollow
95
97
  // letters), centred on their edges — as PDF render mode 2 / 1 and CSS
96
98
  // `-webkit-text-stroke` do.
@@ -142,17 +144,23 @@ export function renderTextBlock(ctx, block) {
142
144
  const runX = x + (run.inkOffset ?? 0);
143
145
  const runY = line.baselineY + (run.baselineShift ?? 0);
144
146
  if (run.inkScale === undefined) {
145
- paintRunInDirection(ctx, run.rtl, () => paint(run.text, runX, runY, segmentOrientation(run)), run.text);
147
+ // A run whose width is its box (`inkOffset`) comes from the CJK
148
+ // composer, which measured its characters one by one: its cells
149
+ // are painted where they were measured (#770, `cellText.ts`).
150
+ const cells = run.inkOffset !== undefined && !run.rtl && !verticalPaintActive()
151
+ && fillCellRuns(ctx, run.text, runX, runY, (cell, cx, cy) => put(cell, cx, cy));
152
+ if (!cells)
153
+ paintRunInDirection(ctx, run.rtl, () => paint(run.text, runX, runY, segmentOrientation(run)), run.text);
146
154
  }
147
155
  else {
148
156
  // A dash of a 破折号 (#652): stretched along the line from where
149
157
  // its glyph starts, and turned with the column down a vertical
150
158
  // line, as a body segment's is (`fillSegmentText`).
151
- ctx.save();
159
+ saveContext(ctx);
152
160
  ctx.translate(runX, runY);
153
161
  ctx.scale(run.inkScale, 1);
154
162
  paint(run.text, 0, 0, verticalPaintActive() ? 'sideways' : undefined);
155
- ctx.restore();
163
+ restoreContext(ctx);
156
164
  }
157
165
  x += run.width;
158
166
  }
@@ -161,11 +169,11 @@ export function renderTextBlock(ctx, block) {
161
169
  if (vertical)
162
170
  setVerticalPaint(outerPaint);
163
171
  if (tracked)
164
- ctx.letterSpacing = '0px';
165
- ctx.restore();
172
+ setLetterSpacing(ctx, 0);
173
+ restoreContext(ctx);
166
174
  }
167
175
  function renderRuleBlock(ctx, block) {
168
- ctx.save();
176
+ saveContext(ctx);
169
177
  ctx.fillStyle = block.color;
170
178
  // A vertical rule is `thickness` wide and `bbox.height` tall; a horizontal
171
179
  // one is `bbox.width` wide and `thickness` tall.
@@ -175,7 +183,7 @@ function renderRuleBlock(ctx, block) {
175
183
  else {
176
184
  ctx.fillRect(block.bbox.x, block.bbox.y, block.bbox.width, block.thicknessPx);
177
185
  }
178
- ctx.restore();
186
+ restoreContext(ctx);
179
187
  }
180
188
  function renderBoxBlock(ctx, block) {
181
189
  const clip = block.clip;
@@ -184,11 +192,11 @@ function renderBoxBlock(ctx, block) {
184
192
  return;
185
193
  }
186
194
  // A callout stripe on a rounded frame: clipped to the frame's outline.
187
- ctx.save();
195
+ saveContext(ctx);
188
196
  roundedOutlinePath(ctx, clip);
189
197
  ctx.clip();
190
198
  drawBoxBackground(ctx, block.bbox.x, block.bbox.y, block.bbox.width, block.bbox.height, block.box);
191
- ctx.restore();
199
+ restoreContext(ctx);
192
200
  }
193
201
  /** Image block (e.g. a callout icon): drawn from the resource image
194
202
  * registry, with a neutral placeholder when the image is not decoded yet. */
@@ -196,7 +204,7 @@ function renderImageBlock(ctx, block, inkHex) {
196
204
  const { x, y, width, height } = block.bbox;
197
205
  if (width <= 0 || height <= 0)
198
206
  return;
199
- ctx.save();
207
+ saveContext(ctx);
200
208
  // Single ink tints an SVG picture, never a bitmap; a VDT without the
201
209
  // kind leaves it to the registry.
202
210
  const svg = block.imageKind === undefined ? undefined : block.imageKind === 'svg';
@@ -210,7 +218,7 @@ function renderImageBlock(ctx, block, inkHex) {
210
218
  ctx.strokeRect(bx + 0.5, by + 0.5, bw - 1, bh - 1);
211
219
  }
212
220
  }, block.upright === true);
213
- ctx.restore();
221
+ restoreContext(ctx);
214
222
  }
215
223
  export function renderHeaderFooterSlot(ctx, slot,
216
224
  /** The document's single ink (`documentInkHex`), null when off. */
@@ -1 +1 @@
1
- {"version":3,"file":"headerFooter.js","sourceRoot":"","sources":["../../src/canvas-backend/headerFooter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headerFooter.js","sourceRoot":"","sources":["../../src/canvas-backend/headerFooter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAiBlE,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC/J,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;gBAOY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;6CAGyC;IACzC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C;;;;;;;+DAO2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;4EAGwE;IACxE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;uEAGmE;IACnE,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAQD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,IAAI,CAsBN;AAuRD,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAI1G;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,CAejG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAiBlE,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGpE,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC/J,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;gBAOY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;6CAGyC;IACzC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C;;;;;;;+DAO2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;4EAGwE;IACxE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;uEAGmE;IACnE,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAQD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,IAAI,CAsBN;AA4SD,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,CAI1G;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,CAejG"}
@@ -7,7 +7,7 @@ import { cjkGridCells } from '../pipeline/cjkGrid';
7
7
  import { renderBlock } from './blockRender';
8
8
  import { renderHeaderFooterSlot } from './headerFooter';
9
9
  import { documentInkHex } from '../svg/singleInk';
10
- import { renderLangOf, shapingLanguageOf } from '../locale';
10
+ import { shapingLanguageOf } from '../locale';
11
11
  import { setSegmentLanguages } from './wordRuns';
12
12
  import { setMissingImageSink, setTintUnflagged } from './renderResourceBlock';
13
13
  import { setVerticalPaint } from './verticalText';
@@ -15,6 +15,8 @@ import { beginMirroredFlow } from './mirrorFrame';
15
15
  import { renderComicPage } from './comic';
16
16
  import { pageComics } from '../comics/transform';
17
17
  import { proofPixels } from '../color/softProof';
18
+ import { resetContextState, restoreContext, saveContext } from './contextState';
19
+ import { resetWordSpacing } from './contextText';
18
20
  export { registerResourceImage, unregisterResourceImage, clearResourceImages, getResourceImage, } from './renderResourceBlock';
19
21
  export { registerVerticalAlternates, unregisterVerticalAlternates, loadVerticalAlternates, verticalTwinName, VERTICAL_ALTERNATE_SAMPLE } from './verticalText';
20
22
  /** How far the painted area sits inside the sheet: the trim offset when
@@ -63,34 +65,56 @@ function paintPage(page, doc, canvas, options) {
63
65
  const direction = 'direction' in ctx ? ctx.direction : undefined;
64
66
  if (direction !== undefined)
65
67
  ctx.direction = 'ltr';
68
+ // The page sets the language it paints in (`paintContext`); what the
69
+ // host draws over it afterwards is the host's, in the context's own.
70
+ const language = 'lang' in ctx ? ctx.lang : undefined;
66
71
  try {
67
72
  paintContext(ctx, canvas, page, doc, options);
68
73
  }
69
74
  finally {
70
75
  if (direction !== undefined)
71
76
  ctx.direction = direction;
77
+ // Every text of the page set the word spacing that keys its word
78
+ // cache (`contextText.ts`): the canvas is left at the one it had when
79
+ // it was given its size.
80
+ resetWordSpacing(ctx);
81
+ if (language !== undefined && ctx.lang !== language)
82
+ ctx.lang = language;
72
83
  }
73
84
  }
74
- /** {@link renderLangOf} of each resolved config: every page of a document
75
- * asks for it. */
85
+ /** {@link shapingLanguageOf} of each resolved config: every page of a
86
+ * document asks for it. */
76
87
  const langByConfig = new WeakMap();
77
88
  function langOf(config) {
78
89
  if (langByConfig.has(config))
79
90
  return langByConfig.get(config);
80
- const lang = shapingLanguageOf(config) ?? renderLangOf(config);
91
+ const lang = shapingLanguageOf(config);
81
92
  langByConfig.set(config, lang);
82
93
  return lang;
83
94
  }
84
95
  function paintContext(ctx, canvas, page, doc, options) {
96
+ // The canvas was just given its size: its state is new.
97
+ resetContextState(ctx);
85
98
  // The page is painted in the language it was measured in (`ctx.lang`,
86
- // Chrome 136+; #764): the document's, so the browser picks the glyph
87
- // forms of that language, and a run's own where it names one. A
88
- // document shaped in the host's language keeps what it had: its own
89
- // when it is Chinese, Japanese, Korean or written right to left.
99
+ // Chrome 136+; #764): the document's own (the default of
100
+ // `bodyText.shapingLanguage` since postext 1.30, #770), so the browser
101
+ // picks the glyph forms the layout measured, and a run's own where it
102
+ // names one. The language holds through every `save()` of the page
103
+ // (`saveContext`): a context loses it there.
104
+ //
105
+ // A document shaped in the host's language (`'host'`) was measured in
106
+ // the host's, and is painted in it: the context is left as it comes. Up
107
+ // to postext 1.29.1 a Chinese, Japanese, Korean or right-to-left
108
+ // document had its own language set here all the same, and lost it at
109
+ // the first `save()`, so its columns, its design text and its captions
110
+ // were painted in the host's, as they still are; only what was painted
111
+ // in no saved state at all (a floated text box on a page with no cut
112
+ // lines, not vertical and not mirrored) took the document's language,
113
+ // against its measure.
90
114
  const lang = langOf(doc.config);
91
115
  if (lang !== undefined && 'lang' in ctx)
92
116
  ctx.lang = lang;
93
- setSegmentLanguages(doc.config.bodyText?.shapingLanguage === 'document');
117
+ setSegmentLanguages(doc.config.bodyText?.shapingLanguage !== 'host');
94
118
  // The bitmap is a whole number of pixels; the page rarely is. Drawing at
95
119
  // `scale` would leave the last column (and row) of pixels only partly
96
120
  // covered — a light hairline at the edge of a dark or coloured page — so
@@ -128,7 +152,7 @@ function paintContext(ctx, canvas, page, doc, options) {
128
152
  const bleedClip = trimOff > 0;
129
153
  if (bleedClip) {
130
154
  const bleedInset = Math.max(0, trimOff - bleedPx);
131
- ctx.save();
155
+ saveContext(ctx);
132
156
  ctx.beginPath();
133
157
  ctx.rect(bleedInset, bleedInset, page.width - bleedInset * 2, page.height - bleedInset * 2);
134
158
  ctx.clip();
@@ -141,7 +165,7 @@ function paintContext(ctx, canvas, page, doc, options) {
141
165
  const flow = verticalFlowOf(page);
142
166
  let outerVertical = null;
143
167
  if (flow) {
144
- ctx.save();
168
+ saveContext(ctx);
145
169
  ctx.transform(0, 1, -1, 0, page.width, 0);
146
170
  outerVertical = setVerticalPaint({
147
171
  region: doc.config.cjk?.region ?? 'mainland',
@@ -181,7 +205,7 @@ function paintContext(ctx, canvas, page, doc, options) {
181
205
  const hanging = doc.config.cjk?.hangingPunctuation !== 'none';
182
206
  for (const col of page.columns) {
183
207
  const clip = columnClipRect(col, doc.config.page.dpi, hanging);
184
- ctx.save();
208
+ saveContext(ctx);
185
209
  ctx.beginPath();
186
210
  ctx.rect(clip.x, clip.y, clip.width, clip.height);
187
211
  ctx.clip();
@@ -190,7 +214,7 @@ function paintContext(ctx, canvas, page, doc, options) {
190
214
  continue;
191
215
  renderBlock(ctx, block, col.bbox.width, col.bbox.x, inkHex);
192
216
  }
193
- ctx.restore();
217
+ restoreContext(ctx);
194
218
  // A part row of the contents carries a design of its own, which may
195
219
  // run past the column (a band reaching beyond the page numbers): it
196
220
  // is drawn outside the column clip, like a float.
@@ -210,7 +234,7 @@ function paintContext(ctx, canvas, page, doc, options) {
210
234
  renderFootnoteRules(ctx, page);
211
235
  if (flow) {
212
236
  setVerticalPaint(outerVertical);
213
- ctx.restore();
237
+ restoreContext(ctx);
214
238
  }
215
239
  endMirror?.();
216
240
  // A comic page's panels and lettering (or its half of a spread), and the
@@ -225,7 +249,7 @@ function paintContext(ctx, canvas, page, doc, options) {
225
249
  if (page.footer)
226
250
  renderHeaderFooterSlot(ctx, page.footer, inkHex);
227
251
  if (bleedClip)
228
- ctx.restore();
252
+ restoreContext(ctx);
229
253
  if (options?.pageNegative) {
230
254
  ctx.filter = 'none';
231
255
  }
@@ -252,7 +276,7 @@ function paintPrintPreview(ctx, canvas, page, doc, preview, pxPerPagePx, inset)
252
276
  const marks = preview.marksFor?.(page.index) ?? [];
253
277
  if (!guides && marks.length === 0)
254
278
  return;
255
- ctx.save();
279
+ saveContext(ctx);
256
280
  const line = 1 / pxPerPagePx;
257
281
  ctx.lineWidth = line;
258
282
  if (guides) {
@@ -283,7 +307,7 @@ function paintPrintPreview(ctx, canvas, page, doc, preview, pxPerPagePx, inset)
283
307
  ctx.strokeRect(m.x, m.y, m.width, m.height);
284
308
  }
285
309
  }
286
- ctx.restore();
310
+ restoreContext(ctx);
287
311
  }
288
312
  /** Screen-only colours of the print preview's guides. */
289
313
  const PREVIEW_TRIM_COLOR = '#00a3d9';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/canvas-backend/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnJ,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAwC/J;qCACqC;AACrC,SAAS,SAAS,CAAC,GAAgB,EAAE,OAA2B;IAC9D,OAAO,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAa,EACb,GAAgB,EAChB,MAAyB,EACzB,OAA2B;IAE3B,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACrC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE;YAC1D,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACjC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrB,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1H,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;gBAAS,CAAC;YACT,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAChB,IAAa,EACb,GAAgB,EAChB,MAAyB,EACzB,OAA2B;IAE3B,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAE3E,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,sEAAsE;IACtE,sEAAsE;IACtE,yEAAyE;IACzE,kEAAkE;IAClE,MAAM,SAAS,GAAG,WAAW,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,IAAI,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;IACnD,IAAI,CAAC;QACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,IAAI,SAAS,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IACzD,CAAC;AACH,CAAC;AAED;mBACmB;AACnB,MAAM,YAAY,GAAG,IAAI,OAAO,EAA8B,CAAC;AAC/D,SAAS,MAAM,CAAC,MAA6B;IAC3C,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAC/D,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CACnB,GAA6B,EAC7B,MAAyB,EACzB,IAAa,EACb,GAAgB,EAChB,OAA2B;IAE3B,sEAAsE;IACtE,qEAAqE;IACrE,gEAAgE;IAChE,oEAAoE;IACpE,iEAAiE;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,IAAI,GAAG;QAAG,GAAmD,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1G,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,KAAK,UAAU,CAAC,CAAC;IACzE,yEAAyE;IACzE,sEAAsE;IACtE,yEAAyE;IACzE,oEAAoE;IACpE,8DAA8D;IAC9D,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACnD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACrD,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,KAAK,GAAG,CAAC;QAAE,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC;IAC3B,CAAC;IAED,0EAA0E;IAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IACvE,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC;IAC/B,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE1C,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrG,IAAI,OAAO,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,QAAQ,CACV,OAAO,GAAG,OAAO,EACjB,OAAO,GAAG,OAAO,EACjB,IAAI,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,EACpC,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,CAAC;IAC9B,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,GAAG,UAAU,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;QAC5F,GAAG,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,qEAAqE;IACrE,yEAAyE;IACzE,gCAAgC;IAChC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,aAAa,GAAwC,IAAI,CAAC;IAC9D,IAAI,IAAI,EAAE,CAAC;QACT,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1C,aAAa,GAAG,gBAAgB,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,IAAI,UAAU;YAC5C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,aAAa,IAAI,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5H,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACzC,wEAAwE;QACxE,sEAAsE;QACtE,oDAAoD;QACpD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnG,kBAAkB,CAChB,GAAG,EACH,WAAW,EACX,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EACtC,eAAe,EACf,UAAU,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,IAAI,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjM,IAAI,SAAS;QAAE,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAEnD,wEAAwE;IACxE,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI,IAAI,CAAC,UAAU;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAE1E,uEAAuE;IACvE,+DAA+D;IAC/D,wEAAwE;IACxE,qCAAqC;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,KAAK,MAAM,CAAC;IAC9D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC/D,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa;gBAAE,SAAS;YACnD,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;QACD,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,oEAAoE;QACpE,oEAAoE;QACpE,kDAAkD;QAClD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa;gBAAE,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,mEAAmE;IACnE,uEAAuE;IACvE,4BAA4B;IAC5B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM;YAAE,WAAW,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;IACD,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAE/B,IAAI,IAAI,EAAE,CAAC;QACT,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChC,GAAG,CAAC,OAAO,EAAE,CAAC;IAChB,CAAC;IACD,SAAS,EAAE,EAAE,CAAC;IAEd,yEAAyE;IACzE,uEAAuE;IACvE,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE1E,uEAAuE;IACvE,IAAI,IAAI,CAAC,WAAW;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC5E,IAAI,IAAI,CAAC,MAAM;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClE,IAAI,IAAI,CAAC,MAAM;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAElE,IAAI,SAAS;QAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IAE7B,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,EAAE,YAAY;QAAE,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IAEtG,IAAI,KAAK,KAAK,CAAC;QAAE,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,oEAAoE;AACpE,SAAS,iBAAiB,CACxB,GAA6B,EAC7B,MAAyB,EACzB,IAAa,EACb,GAAgB,EAChB,OAAqB,EACrB,WAAmB,EACnB,KAAa;IAEb,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,IAAI,KAAgB,CAAC;IACrB,IAAI,CAAC;QACH,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;QACjE,OAAO;IACT,CAAC;IACD,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACpD,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC1C,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,MAAM,IAAI,GAAG,CAAC,GAAG,WAAW,CAAC;IAC7B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChG,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAU,CAAC;QACpH,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpB,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACrC,IAAI,IAAI,GAAG,KAAK;YAAE,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,WAAW,GAAG,mBAAmB,CAAC;YACtC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;YACrC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YACtC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpB,GAAG,CAAC,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC;QACzB,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACrC,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC;AAED,yDAAyD;AACzD,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AACtC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAEpD,MAAM,UAAU,UAAU,CAAC,IAAa,EAAE,GAAgB,EAAE,OAA2B;IACrF,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAgB,EAAE,OAA2B;IAC1E,gEAAgE;IAChE,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,WAAW,GAAkC,SAAS;QAC1D,CAAC,CAAC;YACE,GAAG,OAAO;YACV,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gBACf,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;oBAAE,OAAO;gBACnC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACvB,SAAS,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;SACF;QACH,CAAC,CAAC,OAAO,CAAC;IACZ,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/canvas-backend/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnJ,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAwC/J;qCACqC;AACrC,SAAS,SAAS,CAAC,GAAgB,EAAE,OAA2B;IAC9D,OAAO,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAa,EACb,GAAgB,EAChB,MAAyB,EACzB,OAA2B;IAE3B,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACrC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE;YAC1D,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACjC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrB,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1H,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;gBAAS,CAAC;YACT,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAChB,IAAa,EACb,GAAgB,EAChB,MAAyB,EACzB,OAA2B;IAE3B,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAE3E,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,sEAAsE;IACtE,sEAAsE;IACtE,yEAAyE;IACzE,kEAAkE;IAClE,MAAM,SAAS,GAAG,WAAW,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,IAAI,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;IACnD,qEAAqE;IACrE,qEAAqE;IACrE,MAAM,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC,CAAC,CAAE,GAAmD,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACvG,IAAI,CAAC;QACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,IAAI,SAAS,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QACvD,iEAAiE;QACjE,sEAAsE;QACtE,yBAAyB;QACzB,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,QAAQ,KAAK,SAAS,IAAK,GAAmD,CAAC,IAAI,KAAK,QAAQ;YAAG,GAAmD,CAAC,IAAI,GAAG,QAAQ,CAAC;IAC7K,CAAC;AACH,CAAC;AAED;4BAC4B;AAC5B,MAAM,YAAY,GAAG,IAAI,OAAO,EAA8B,CAAC;AAC/D,SAAS,MAAM,CAAC,MAA6B;IAC3C,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CACnB,GAA6B,EAC7B,MAAyB,EACzB,IAAa,EACb,GAAgB,EAChB,OAA2B;IAE3B,wDAAwD;IACxD,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvB,sEAAsE;IACtE,yDAAyD;IACzD,uEAAuE;IACvE,sEAAsE;IACtE,mEAAmE;IACnE,6CAA6C;IAC7C,EAAE;IACF,sEAAsE;IACtE,wEAAwE;IACxE,iEAAiE;IACjE,sEAAsE;IACtE,uEAAuE;IACvE,uEAAuE;IACvE,qEAAqE;IACrE,sEAAsE;IACtE,uBAAuB;IACvB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,IAAI,GAAG;QAAG,GAAmD,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1G,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,KAAK,MAAM,CAAC,CAAC;IACrE,yEAAyE;IACzE,sEAAsE;IACtE,yEAAyE;IACzE,oEAAoE;IACpE,8DAA8D;IAC9D,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACnD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACrD,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5C,IAAI,KAAK,GAAG,CAAC;QAAE,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC;IAC3B,CAAC;IAED,0EAA0E;IAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IACvE,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC;IAC/B,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE1C,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrG,IAAI,OAAO,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,QAAQ,CACV,OAAO,GAAG,OAAO,EACjB,OAAO,GAAG,OAAO,EACjB,IAAI,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,EACpC,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,CAAC;IAC9B,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;QAClD,WAAW,CAAC,GAAG,CAAC,CAAC;QACjB,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,GAAG,UAAU,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;QAC5F,GAAG,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,qEAAqE;IACrE,yEAAyE;IACzE,gCAAgC;IAChC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,aAAa,GAAwC,IAAI,CAAC;IAC9D,IAAI,IAAI,EAAE,CAAC;QACT,WAAW,CAAC,GAAG,CAAC,CAAC;QACjB,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1C,aAAa,GAAG,gBAAgB,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,IAAI,UAAU;YAC5C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,aAAa,IAAI,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5H,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QACzC,wEAAwE;QACxE,sEAAsE;QACtE,oDAAoD;QACpD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnG,kBAAkB,CAChB,GAAG,EACH,WAAW,EACX,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EACtC,eAAe,EACf,UAAU,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,IAAI,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjM,IAAI,SAAS;QAAE,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAEnD,wEAAwE;IACxE,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,0EAA0E;IAC1E,+CAA+C;IAC/C,IAAI,IAAI,CAAC,UAAU;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAE1E,uEAAuE;IACvE,+DAA+D;IAC/D,wEAAwE;IACxE,qCAAqC;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,KAAK,MAAM,CAAC;IAC9D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC/D,WAAW,CAAC,GAAG,CAAC,CAAC;QACjB,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa;gBAAE,SAAS;YACnD,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,CAAC;QACpB,oEAAoE;QACpE,oEAAoE;QACpE,kDAAkD;QAClD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa;gBAAE,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,mEAAmE;IACnE,uEAAuE;IACvE,4BAA4B;IAC5B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM;YAAE,WAAW,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;IACD,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAE/B,IAAI,IAAI,EAAE,CAAC;QACT,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAChC,cAAc,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;IACD,SAAS,EAAE,EAAE,CAAC;IAEd,yEAAyE;IACzE,uEAAuE;IACvE,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE1E,uEAAuE;IACvE,IAAI,IAAI,CAAC,WAAW;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC5E,IAAI,IAAI,CAAC,MAAM;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClE,IAAI,IAAI,CAAC,MAAM;QAAE,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAElE,IAAI,SAAS;QAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAEnC,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,EAAE,YAAY;QAAE,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IAEtG,IAAI,KAAK,KAAK,CAAC;QAAE,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,oEAAoE;AACpE,SAAS,iBAAiB,CACxB,GAA6B,EAC7B,MAAyB,EACzB,IAAa,EACb,GAAgB,EAChB,OAAqB,EACrB,WAAmB,EACnB,KAAa;IAEb,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,IAAI,KAAgB,CAAC;IACrB,IAAI,CAAC;QACH,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;QACjE,OAAO;IACT,CAAC;IACD,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACpD,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC1C,WAAW,CAAC,GAAG,CAAC,CAAC;IACjB,MAAM,IAAI,GAAG,CAAC,GAAG,WAAW,CAAC;IAC7B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChG,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAU,CAAC;QACpH,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpB,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACrC,IAAI,IAAI,GAAG,KAAK;YAAE,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,WAAW,GAAG,mBAAmB,CAAC;YACtC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;YACrC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;YACtC,GAAG,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpB,GAAG,CAAC,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC;QACzB,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACrC,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,cAAc,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED,yDAAyD;AACzD,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,mBAAmB,GAAG,SAAS,CAAC;AACtC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,kBAAkB,GAAG,SAAS,CAAC;AACrC,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAEpD,MAAM,UAAU,UAAU,CAAC,IAAa,EAAE,GAAgB,EAAE,OAA2B;IACrF,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAgB,EAAE,OAA2B;IAC1E,gEAAgE;IAChE,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,WAAW,GAAkC,SAAS;QAC1D,CAAC,CAAC;YACE,GAAG,OAAO;YACV,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gBACf,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;oBAAE,OAAO;gBACnC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACvB,SAAS,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;SACF;QACH,CAAC,CAAC,OAAO,CAAC;IACZ,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;AACrE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mirrorFrame.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/mirrorFrame.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAsBD;;;4BAG4B;AAC5B,wBAAgB,cAAc,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,CAalH;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,CAWjH;AAWD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,wBAAwB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,IAAI,CAwD5F"}
1
+ {"version":3,"file":"mirrorFrame.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/mirrorFrame.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAQH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAsBD;;;4BAG4B;AAC5B,wBAAgB,cAAc,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,CAalH;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,CAWjH;AAWD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,wBAAwB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,IAAI,CAwD5F"}
@@ -25,6 +25,7 @@
25
25
  * the flow pass and removed after it: running heads, folios and crop marks
26
26
  * paint on the sheet untouched.
27
27
  */
28
+ import { restoreContext, saveContext } from './contextState';
28
29
  /** Whether the flow of a mirrored page is being painted (see the module
29
30
  * comment). */
30
31
  let active = 0;
@@ -57,14 +58,14 @@ export function counterFlipBox(ctx, left, width, paint) {
57
58
  paint();
58
59
  return;
59
60
  }
60
- ctx.save();
61
+ saveContext(ctx);
61
62
  ctx.translate(2 * left + width, 0);
62
63
  ctx.scale(-1, 1);
63
64
  try {
64
65
  paint();
65
66
  }
66
67
  finally {
67
- ctx.restore();
68
+ restoreContext(ctx);
68
69
  }
69
70
  }
70
71
  /**
@@ -107,7 +108,7 @@ function sourceWidth(image) {
107
108
  * function that ends it, restoring the context.
108
109
  */
109
110
  export function beginMirroredFlow(ctx, originX) {
110
- ctx.save();
111
+ saveContext(ctx);
111
112
  ctx.transform(-1, 0, 0, 1, originX, 0);
112
113
  const own = new Map();
113
114
  for (const name of PATCHED)
@@ -167,7 +168,7 @@ export function beginMirroredFlow(ctx, originX) {
167
168
  else
168
169
  delete target[name];
169
170
  }
170
- ctx.restore();
171
+ restoreContext(ctx);
171
172
  };
172
173
  }
173
174
  //# sourceMappingURL=mirrorFrame.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mirrorFrame.js","sourceRoot":"","sources":["../../src/canvas-backend/mirrorFrame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mirrorFrame.js","sourceRoot":"","sources":["../../src/canvas-backend/mirrorFrame.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderResourceBlock.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/renderResourceBlock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAkC,cAAc,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAiBzG,0DAA0D;AAC1D,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAEpD,MAAM,WAAW,4BAA4B;IAC3C;;;;kEAI8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;6CAYyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAyBD,4DAA4D;AAC5D,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,4BAA4B,GACrC,IAAI,CAUN;AAED,iEAAiE;AACjE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED,uCAAuC;AACvC,wBAAgB,mBAAmB,IAAI,IAAI,CAI1C;AAED;gCACgC;AAChC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAEhF;AAED;;mEAEmE;AACnE,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAG7E;iCACiC;AACjC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAI1F;AAOD;2CAC2C;AAC3C,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAIrD;AA2GD,sEAAsE;AACtE,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAkCD;;;;gBAIgB;AAChB,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAYD;;;;;;;iCAOiC;AACjC,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,wBAAwB,EAC7B,MAAM,EAAE,MAAM,EACd,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,GAAG,CAAC,EAAE,QAAQ,EACd,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAoBT;AA6ID;;;yCAGyC;AACzC,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,wBAAwB,EAC7B,KAAK,EAAE,gBAAgB,EACvB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,IAAI,CAyDN;AAwBD,sEAAsE;AACtE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,CAczF;AAsID,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,wBAAwB,EAC7B,KAAK,EAAE,QAAQ;AACf,mEAAmE;AACnE,MAAM,GAAE,MAAM,GAAG,IAAW,GAC3B,IAAI,CAkFN"}
1
+ {"version":3,"file":"renderResourceBlock.d.ts","sourceRoot":"","sources":["../../src/canvas-backend/renderResourceBlock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAkC,cAAc,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAoBzG,0DAA0D;AAC1D,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAEpD,MAAM,WAAW,4BAA4B;IAC3C;;;;kEAI8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;6CAYyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAyBD,4DAA4D;AAC5D,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,4BAA4B,GACrC,IAAI,CAUN;AAED,iEAAiE;AACjE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED,uCAAuC;AACvC,wBAAgB,mBAAmB,IAAI,IAAI,CAI1C;AAED;gCACgC;AAChC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAEhF;AAED;;mEAEmE;AACnE,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAG7E;iCACiC;AACjC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAI1F;AAOD;2CAC2C;AAC3C,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAIrD;AA2GD,sEAAsE;AACtE,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAkCD;;;;gBAIgB;AAChB,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAYD;;;;;;;iCAOiC;AACjC,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,wBAAwB,EAC7B,MAAM,EAAE,MAAM,EACd,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,GAAG,CAAC,EAAE,QAAQ,EACd,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAoBT;AAkJD;;;yCAGyC;AACzC,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,wBAAwB,EAC7B,KAAK,EAAE,gBAAgB,EACvB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,IAAI,CAyDN;AAwBD,sEAAsE;AACtE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,wBAAwB,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,CAczF;AAsID,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,wBAAwB,EAC7B,KAAK,EAAE,QAAQ;AACf,mEAAmE;AACnE,MAAM,GAAE,MAAM,GAAG,IAAW,GAC3B,IAAI,CAkFN"}