postext 0.3.2 → 0.3.4

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 (72) hide show
  1. package/dist/__tests__/exports.test.js +11 -0
  2. package/dist/__tests__/exports.test.js.map +1 -1
  3. package/dist/__tests__/math.test.d.ts +2 -0
  4. package/dist/__tests__/math.test.d.ts.map +1 -0
  5. package/dist/__tests__/math.test.js +59 -0
  6. package/dist/__tests__/math.test.js.map +1 -0
  7. package/dist/canvas-backend.d.ts.map +1 -1
  8. package/dist/canvas-backend.js +59 -1
  9. package/dist/canvas-backend.js.map +1 -1
  10. package/dist/defaults/bodyText.js +1 -1
  11. package/dist/defaults/bodyText.js.map +1 -1
  12. package/dist/defaults/debug.d.ts.map +1 -1
  13. package/dist/defaults/debug.js +45 -0
  14. package/dist/defaults/debug.js.map +1 -1
  15. package/dist/defaults/index.d.ts +1 -0
  16. package/dist/defaults/index.d.ts.map +1 -1
  17. package/dist/defaults/index.js +9 -0
  18. package/dist/defaults/index.js.map +1 -1
  19. package/dist/defaults/math.d.ts +5 -0
  20. package/dist/defaults/math.d.ts.map +1 -0
  21. package/dist/defaults/math.js +50 -0
  22. package/dist/defaults/math.js.map +1 -0
  23. package/dist/html-backend.d.ts.map +1 -1
  24. package/dist/html-backend.js +24 -1
  25. package/dist/html-backend.js.map +1 -1
  26. package/dist/index.d.ts +6 -3
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +3 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/knuthPlass.d.ts +1 -0
  31. package/dist/knuthPlass.d.ts.map +1 -1
  32. package/dist/knuthPlass.js +2 -1
  33. package/dist/knuthPlass.js.map +1 -1
  34. package/dist/math/engine.d.ts +16 -0
  35. package/dist/math/engine.d.ts.map +1 -0
  36. package/dist/math/engine.js +314 -0
  37. package/dist/math/engine.js.map +1 -0
  38. package/dist/math/index.d.ts +3 -0
  39. package/dist/math/index.d.ts.map +1 -0
  40. package/dist/math/index.js +2 -0
  41. package/dist/math/index.js.map +1 -0
  42. package/dist/math/pathTransform.d.ts +8 -0
  43. package/dist/math/pathTransform.d.ts.map +1 -0
  44. package/dist/math/pathTransform.js +298 -0
  45. package/dist/math/pathTransform.js.map +1 -0
  46. package/dist/math/types.d.ts +34 -0
  47. package/dist/math/types.d.ts.map +1 -0
  48. package/dist/math/types.js +2 -0
  49. package/dist/math/types.js.map +1 -0
  50. package/dist/measure.d.ts.map +1 -1
  51. package/dist/measure.js +16 -1
  52. package/dist/measure.js.map +1 -1
  53. package/dist/parse.d.ts +50 -2
  54. package/dist/parse.d.ts.map +1 -1
  55. package/dist/parse.js +237 -10
  56. package/dist/parse.js.map +1 -1
  57. package/dist/pipeline/build.d.ts.map +1 -1
  58. package/dist/pipeline/build.js +93 -15
  59. package/dist/pipeline/build.js.map +1 -1
  60. package/dist/pipeline/config.d.ts.map +1 -1
  61. package/dist/pipeline/config.js +2 -1
  62. package/dist/pipeline/config.js.map +1 -1
  63. package/dist/pipeline/styles.d.ts +1 -0
  64. package/dist/pipeline/styles.d.ts.map +1 -1
  65. package/dist/pipeline/styles.js +22 -0
  66. package/dist/pipeline/styles.js.map +1 -1
  67. package/dist/types.d.ts +41 -1
  68. package/dist/types.d.ts.map +1 -1
  69. package/dist/vdt.d.ts +13 -4
  70. package/dist/vdt.d.ts.map +1 -1
  71. package/dist/vdt.js.map +1 -1
  72. package/package.json +4 -3
@@ -53,6 +53,20 @@ function pickSegmentColor(seg, block) {
53
53
  return block.italicColor;
54
54
  return block.color;
55
55
  }
56
+ function renderMathSegmentSvg(seg, xPx, line, block) {
57
+ const render = seg.mathRender;
58
+ if (!render)
59
+ return '';
60
+ // Position the SVG with top = (line.baseline - block.bbox.y - ascent).
61
+ // line.bbox.y is absolute; we need top relative to the line's wrapper top.
62
+ const topOffset = line.baseline - line.bbox.y - render.ascentPx;
63
+ const color = block.color;
64
+ // Use the pre-serialised self-contained SVG. Replace any currentColor fills
65
+ // with the block colour so the SVG is independent of CSS inheritance.
66
+ const svg = render.svg
67
+ .replace(/<svg\b[^>]*>/, `<svg xmlns="http://www.w3.org/2000/svg" viewBox="${render.viewBox.minX} ${render.viewBox.minY} ${render.viewBox.width} ${render.viewBox.height}" width="${render.widthPx}" height="${render.heightPx}" style="color:${color};">`);
68
+ return `<span style="position:absolute;left:${xPx.toFixed(3)}px;top:${topOffset.toFixed(3)}px;display:inline-block;line-height:0;">${svg}</span>`;
69
+ }
56
70
  function renderSegments(line, block) {
57
71
  if (!line.segments || line.segments.length === 0) {
58
72
  return `<span style="position:absolute;left:0;top:0;white-space:pre;">${esc(line.text)}</span>`;
@@ -72,13 +86,22 @@ function renderSegments(line, block) {
72
86
  const justifiedSpaceWidth = useJustify
73
87
  ? (effectiveWidth - wordWidth) / spaceCount
74
88
  : 0;
89
+ // Centred alignment — used by math display blocks. Distribute leading gap.
90
+ const useCenter = block.textAlign === 'center';
91
+ const contentWidth = line.segments.reduce((s, seg) => s + seg.width, 0);
92
+ const centerLeft = useCenter ? Math.max(0, (effectiveWidth - contentWidth) / 2) : 0;
75
93
  const parts = [];
76
- let x = 0;
94
+ let x = centerLeft;
77
95
  for (const seg of line.segments) {
78
96
  if (seg.kind === 'space') {
79
97
  x += useJustify ? justifiedSpaceWidth : seg.width;
80
98
  continue;
81
99
  }
100
+ if (seg.kind === 'math') {
101
+ parts.push(renderMathSegmentSvg(seg, x, line, block));
102
+ x += seg.width;
103
+ continue;
104
+ }
82
105
  const font = quoteFontString(pickSegmentFont(seg, block));
83
106
  const color = pickSegmentColor(seg, block);
84
107
  const fontDecl = font !== quoteFontString(block.fontString) ? `font:${font};` : '';
@@ -1 +1 @@
1
- {"version":3,"file":"html-backend.js","sourceRoot":"","sources":["../src/html-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html-backend.js","sourceRoot":"","sources":["../src/html-backend.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -11,8 +11,11 @@ export { hyphenateText, setHyphenationLocale } from './hyphenate';
11
11
  export { parseMarkdown } from './parse';
12
12
  export { extractFrontmatter } from './frontmatter';
13
13
  export type { ParsedFrontmatter } from './frontmatter';
14
- export { DEFAULT_PAGE_CONFIG, DEFAULT_CUT_LINES, PAGE_SIZE_PRESETS, resolvePageConfig, DEFAULT_LAYOUT_CONFIG, DEFAULT_COLUMN_RULE, resolveLayoutConfig, stripLayoutDefaults, DEFAULT_BODY_TEXT_CONFIG, DEFAULT_HYPHENATION_CONFIG, resolveBodyTextConfig, stripBodyTextDefaults, hyphenationEqual, DEFAULT_HEADINGS_CONFIG, resolveHeadingsConfig, stripHeadingsDefaults, DEFAULT_UNORDERED_LISTS_STATIC, resolveUnorderedListsConfig, stripUnorderedListsDefaults, DEFAULT_ORDERED_LISTS_STATIC, resolveOrderedListsConfig, stripOrderedListsDefaults, dimensionsEqual, colorsEqual, resolveColorValue, applyPaletteToConfig, applyPaletteToResolvedConfig, DEFAULT_COLOR_PALETTE, DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR_ID, DEFAULT_MAIN_COLOR_NAME, DEFAULT_MAIN_COLOR_HEX, cloneDefaultColorPalette, isDefaultColorPalette, stripPageDefaults, stripConfigDefaults, DEFAULT_DEBUG_CONFIG, resolveDebugConfig, stripDebugDefaults, DEFAULT_HTML_VIEWER_CONFIG, resolveHtmlViewerConfig, stripHtmlViewerDefaults } from './defaults';
15
- export type { PostextContent, DocumentMetadata, PostextResource, PostextNote, PostextConfig, PostextSectionOverride, ColumnConfig, ResourcePlacementConfig, TypographyConfig, ReferenceConfig, PlacementStrategy, ColorModel, ColorValue, ColorPaletteEntry, DimensionUnit, Dimension, PageSizePreset, PageMargins, BaselineGridConfig, CutLinesConfig, PageConfig, ResolvedPageConfig, LayoutType, ColumnRuleConfig, LayoutConfig, ResolvedLayoutConfig, TextAlign, HyphenationLocale, HyphenationConfig, ResolvedHyphenationConfig, BodyTextConfig, ResolvedBodyTextConfig, HeadingLevelConfig, ResolvedHeadingLevelConfig, HeadingsConfig, ResolvedHeadingsConfig, UnorderedListLevelConfig, ResolvedUnorderedListLevelConfig, UnorderedListsConfig, ResolvedUnorderedListsConfig, OrderedListLevelConfig, ResolvedOrderedListLevelConfig, OrderedListsConfig, ResolvedOrderedListsConfig, OrderedListNumberFormat, SyncIndicatorConfig, DebugConfig, ResolvedDebugConfig, HtmlViewerConfig, ResolvedHtmlViewerConfig, } from './types';
14
+ export { DEFAULT_PAGE_CONFIG, DEFAULT_CUT_LINES, PAGE_SIZE_PRESETS, resolvePageConfig, DEFAULT_LAYOUT_CONFIG, DEFAULT_COLUMN_RULE, resolveLayoutConfig, stripLayoutDefaults, DEFAULT_BODY_TEXT_CONFIG, DEFAULT_HYPHENATION_CONFIG, resolveBodyTextConfig, stripBodyTextDefaults, hyphenationEqual, DEFAULT_HEADINGS_CONFIG, resolveHeadingsConfig, stripHeadingsDefaults, DEFAULT_UNORDERED_LISTS_STATIC, resolveUnorderedListsConfig, stripUnorderedListsDefaults, DEFAULT_ORDERED_LISTS_STATIC, resolveOrderedListsConfig, stripOrderedListsDefaults, DEFAULT_MATH_CONFIG, resolveMathConfig, stripMathDefaults, dimensionsEqual, colorsEqual, resolveColorValue, applyPaletteToConfig, applyPaletteToResolvedConfig, DEFAULT_COLOR_PALETTE, DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR_ID, DEFAULT_MAIN_COLOR_NAME, DEFAULT_MAIN_COLOR_HEX, cloneDefaultColorPalette, isDefaultColorPalette, stripPageDefaults, stripConfigDefaults, DEFAULT_DEBUG_CONFIG, resolveDebugConfig, stripDebugDefaults, DEFAULT_HTML_VIEWER_CONFIG, resolveHtmlViewerConfig, stripHtmlViewerDefaults } from './defaults';
15
+ export type { PostextContent, DocumentMetadata, PostextResource, PostextNote, PostextConfig, PostextSectionOverride, ColumnConfig, ResourcePlacementConfig, TypographyConfig, ReferenceConfig, PlacementStrategy, ColorModel, ColorValue, ColorPaletteEntry, DimensionUnit, Dimension, PageSizePreset, PageMargins, BaselineGridConfig, CutLinesConfig, PageConfig, ResolvedPageConfig, LayoutType, ColumnRuleConfig, LayoutConfig, ResolvedLayoutConfig, TextAlign, HyphenationLocale, HyphenationConfig, ResolvedHyphenationConfig, BodyTextConfig, ResolvedBodyTextConfig, HeadingLevelConfig, ResolvedHeadingLevelConfig, HeadingsConfig, ResolvedHeadingsConfig, UnorderedListLevelConfig, ResolvedUnorderedListLevelConfig, UnorderedListsConfig, ResolvedUnorderedListsConfig, OrderedListLevelConfig, ResolvedOrderedListLevelConfig, OrderedListsConfig, ResolvedOrderedListsConfig, OrderedListNumberFormat, SyncIndicatorConfig, DebugConfig, ResolvedDebugConfig, WarningsToggleConfig, ResolvedWarningsToggleConfig, HtmlViewerConfig, ResolvedHtmlViewerConfig, MathConfig, ResolvedMathConfig, } from './types';
16
16
  export type { BoundingBox, ResolvedConfig, VDTBlockType, VDTLineSegment, VDTLine, VDTBlock, VDTColumn, VDTFootnoteArea, VDTPage, VDTDocument, } from './vdt';
17
- export type { ContentBlock, ContentBlockType, InlineSpan, ListKind } from './parse';
17
+ export type { ContentBlock, ContentBlockType, InlineSpan, TextSpan, MathSpan, MathMeta, ListKind, ParseIssue } from './parse';
18
+ export { parseMarkdownWithIssues, MATH_PLACEHOLDER } from './parse';
19
+ export type { MathRender, MathPath, MathViewBox } from './math/types';
20
+ export { initMathEngine, isMathReady, onMathReady, renderMath, placeholderRender, clearMathCache } from './math';
18
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -7,5 +7,7 @@ export { buildFontString, measureBlock, measureRichBlock, measureGlyphWidth, ini
7
7
  export { hyphenateText, setHyphenationLocale } from './hyphenate';
8
8
  export { parseMarkdown } from './parse';
9
9
  export { extractFrontmatter } from './frontmatter';
10
- export { DEFAULT_PAGE_CONFIG, DEFAULT_CUT_LINES, PAGE_SIZE_PRESETS, resolvePageConfig, DEFAULT_LAYOUT_CONFIG, DEFAULT_COLUMN_RULE, resolveLayoutConfig, stripLayoutDefaults, DEFAULT_BODY_TEXT_CONFIG, DEFAULT_HYPHENATION_CONFIG, resolveBodyTextConfig, stripBodyTextDefaults, hyphenationEqual, DEFAULT_HEADINGS_CONFIG, resolveHeadingsConfig, stripHeadingsDefaults, DEFAULT_UNORDERED_LISTS_STATIC, resolveUnorderedListsConfig, stripUnorderedListsDefaults, DEFAULT_ORDERED_LISTS_STATIC, resolveOrderedListsConfig, stripOrderedListsDefaults, dimensionsEqual, colorsEqual, resolveColorValue, applyPaletteToConfig, applyPaletteToResolvedConfig, DEFAULT_COLOR_PALETTE, DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR_ID, DEFAULT_MAIN_COLOR_NAME, DEFAULT_MAIN_COLOR_HEX, cloneDefaultColorPalette, isDefaultColorPalette, stripPageDefaults, stripConfigDefaults, DEFAULT_DEBUG_CONFIG, resolveDebugConfig, stripDebugDefaults, DEFAULT_HTML_VIEWER_CONFIG, resolveHtmlViewerConfig, stripHtmlViewerDefaults } from './defaults';
10
+ export { DEFAULT_PAGE_CONFIG, DEFAULT_CUT_LINES, PAGE_SIZE_PRESETS, resolvePageConfig, DEFAULT_LAYOUT_CONFIG, DEFAULT_COLUMN_RULE, resolveLayoutConfig, stripLayoutDefaults, DEFAULT_BODY_TEXT_CONFIG, DEFAULT_HYPHENATION_CONFIG, resolveBodyTextConfig, stripBodyTextDefaults, hyphenationEqual, DEFAULT_HEADINGS_CONFIG, resolveHeadingsConfig, stripHeadingsDefaults, DEFAULT_UNORDERED_LISTS_STATIC, resolveUnorderedListsConfig, stripUnorderedListsDefaults, DEFAULT_ORDERED_LISTS_STATIC, resolveOrderedListsConfig, stripOrderedListsDefaults, DEFAULT_MATH_CONFIG, resolveMathConfig, stripMathDefaults, dimensionsEqual, colorsEqual, resolveColorValue, applyPaletteToConfig, applyPaletteToResolvedConfig, DEFAULT_COLOR_PALETTE, DEFAULT_MAIN_COLOR, DEFAULT_MAIN_COLOR_ID, DEFAULT_MAIN_COLOR_NAME, DEFAULT_MAIN_COLOR_HEX, cloneDefaultColorPalette, isDefaultColorPalette, stripPageDefaults, stripConfigDefaults, DEFAULT_DEBUG_CONFIG, resolveDebugConfig, stripDebugDefaults, DEFAULT_HTML_VIEWER_CONFIG, resolveHtmlViewerConfig, stripHtmlViewerDefaults } from './defaults';
11
+ export { parseMarkdownWithIssues, MATH_PLACEHOLDER } from './parse';
12
+ export { initMathEngine, isMathReady, onMathReady, renderMath, placeholderRender, clearMathCache } from './math';
11
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAE1M,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,eAAe,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAE1M,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAsEniC,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC"}
@@ -68,6 +68,7 @@ interface RichToken {
68
68
  width: number;
69
69
  breakPoints?: RichBreakPoint[];
70
70
  hyphenWidth?: number;
71
+ mathRender?: import('./math/types').MathRender;
71
72
  }
72
73
  export interface RichTokenMeta {
73
74
  bold: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"knuthPlass.d.ts","sourceRoot":"","sources":["../src/knuthPlass.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAiBzC,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;AAMhD,MAAM,WAAW,SAAS;IACxB,0DAA0D;IAC1D,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzC,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,eAAe,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,oDAAoD;IACpD,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,8DAA8D;IAC9D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;uEAImE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;qEACiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA8CD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,EAAE,CAyShF;AAQD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,wBAAwB,EAClC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,GACrB,MAAM,EAAE,CAmFV;AAMD,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EAAE,EACnB,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,GACrB,MAAM,EAAE,CA4FV;AAUD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,EAAE,MAAM,EAAE,EAChB,QAAQ,EAAE,wBAAwB,EAClC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAC1C,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAC3C,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,SAAS,GACnB,OAAO,EAAE,CAoGX;AAMD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,SAAS,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAC1C,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAC3C,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,SAAS,GACnB,OAAO,EAAE,CAsGX"}
1
+ {"version":3,"file":"knuthPlass.d.ts","sourceRoot":"","sources":["../src/knuthPlass.ts"],"names":[],"mappings":"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"}
@@ -590,11 +590,12 @@ export function reconstructRichLines(items, breaks, tokens, lineHeightPx, lineWi
590
590
  : token.text;
591
591
  const cleanText = cleanSoftHyphens(subText);
592
592
  lineSegments.push({
593
- kind: 'text',
593
+ kind: token.mathRender ? 'math' : 'text',
594
594
  text: cleanText,
595
595
  width: it.width,
596
596
  bold: meta.bold || undefined,
597
597
  italic: meta.italic || undefined,
598
+ ...(token.mathRender ? { mathRender: token.mathRender } : {}),
598
599
  });
599
600
  textParts.push(cleanText);
600
601
  }
@@ -1 +1 @@
1
- {"version":3,"file":"knuthPlass.js","sourceRoot":"","sources":["../src/knuthPlass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knuthPlass.js","sourceRoot":"","sources":["../src/knuthPlass.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { MathRender } from './types';
2
+ export declare function isMathReady(): boolean;
3
+ export declare function onMathReady(fn: () => void): () => void;
4
+ export declare function initMathEngine(): Promise<void>;
5
+ export interface RenderOptions {
6
+ /** Body line-box in px. Inline math is scaled down to fit. Display math
7
+ * is not clamped. */
8
+ lineBoxPx?: number;
9
+ /** Override the default colour (MathJax emits "currentColor" which is a
10
+ * CSS construct; we substitute here so the SVG is self-contained). */
11
+ color?: string;
12
+ }
13
+ export declare function renderMath(tex: string, displayMode: boolean, fontSizePx: number, options?: RenderOptions): MathRender;
14
+ export declare function placeholderRender(tex: string, displayMode: boolean, fontSizePx: number): MathRender;
15
+ export declare function clearMathCache(): void;
16
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/math/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAyB,MAAM,SAAS,CAAC;AA+BjE,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAOtD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAwBpD;AA6JD,MAAM,WAAW,aAAa;IAC5B;0BACsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;2EACuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAuBD,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,aAAkB,GAC1B,UAAU,CA8FZ;AAmBD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAenG;AAED,wBAAgB,cAAc,IAAI,IAAI,CAErC"}
@@ -0,0 +1,314 @@
1
+ import { IDENTITY, multiply, parseSvgTransform, transformPath, } from './pathTransform';
2
+ let handle = null;
3
+ let initPromise = null;
4
+ const initListeners = new Set();
5
+ export function isMathReady() {
6
+ return handle !== null;
7
+ }
8
+ export function onMathReady(fn) {
9
+ if (handle !== null) {
10
+ fn();
11
+ return () => { };
12
+ }
13
+ initListeners.add(fn);
14
+ return () => { initListeners.delete(fn); };
15
+ }
16
+ export async function initMathEngine() {
17
+ if (handle !== null)
18
+ return;
19
+ if (initPromise)
20
+ return initPromise;
21
+ initPromise = (async () => {
22
+ // Dynamically import so the ~1 MB MathJax bundle is only paid for on
23
+ // documents that actually contain math.
24
+ const [{ mathjax }, { TeX }, { SVG }, { liteAdaptor }, { RegisterHTMLHandler }, allPackages] = await Promise.all([
25
+ import('mathjax-full/js/mathjax.js'),
26
+ import('mathjax-full/js/input/tex.js'),
27
+ import('mathjax-full/js/output/svg.js'),
28
+ import('mathjax-full/js/adaptors/liteAdaptor.js'),
29
+ import('mathjax-full/js/handlers/html.js'),
30
+ import('mathjax-full/js/input/tex/AllPackages.js'),
31
+ ]);
32
+ const adaptor = liteAdaptor();
33
+ RegisterHTMLHandler(adaptor);
34
+ const tex = new TeX({ packages: allPackages.AllPackages });
35
+ const svg = new SVG({ fontCache: 'local', exFactor: 0.5 });
36
+ const document = mathjax.document('', { InputJax: tex, OutputJax: svg });
37
+ handle = { document, adaptor };
38
+ for (const fn of initListeners)
39
+ fn();
40
+ initListeners.clear();
41
+ })();
42
+ return initPromise;
43
+ }
44
+ // ---------------------------------------------------------------------------
45
+ // LRU cache
46
+ // ---------------------------------------------------------------------------
47
+ const MAX_CACHE = 512;
48
+ const cache = new Map();
49
+ function cacheKey(tex, displayMode, fontSizePx, lineBoxPx) {
50
+ return `${displayMode ? 'D' : 'I'}|${fontSizePx}|${lineBoxPx}|${tex}`;
51
+ }
52
+ function cacheGet(key) {
53
+ const v = cache.get(key);
54
+ if (v) {
55
+ cache.delete(key);
56
+ cache.set(key, v);
57
+ }
58
+ return v;
59
+ }
60
+ function cacheSet(key, v) {
61
+ if (cache.has(key))
62
+ cache.delete(key);
63
+ cache.set(key, v);
64
+ if (cache.size > MAX_CACHE) {
65
+ const first = cache.keys().next().value;
66
+ if (first !== undefined)
67
+ cache.delete(first);
68
+ }
69
+ }
70
+ function parseExValue(attr) {
71
+ if (!attr)
72
+ return null;
73
+ const m = /(-?\d*\.?\d+)ex/.exec(attr);
74
+ return m ? Number(m[1]) : null;
75
+ }
76
+ function parseStyleVerticalAlign(style) {
77
+ if (!style)
78
+ return 0;
79
+ const m = /vertical-align:\s*(-?\d*\.?\d+)ex/.exec(style);
80
+ return m ? Number(m[1]) : 0;
81
+ }
82
+ const ATTR_RE = /(\w[\w:-]*)\s*=\s*"([^"]*)"/g;
83
+ function readAttrs(tagText) {
84
+ const out = {};
85
+ let m;
86
+ while ((m = ATTR_RE.exec(tagText)) !== null) {
87
+ out[m[1]] = m[2];
88
+ }
89
+ return out;
90
+ }
91
+ // Walk SVG string as a stream of tokens and accumulate a CTM per leaf.
92
+ // Emits `<path>` and `<use>` leaves with their resolved transform.
93
+ function parseSvg(svgMarkup) {
94
+ // Root <svg>
95
+ const svgOpen = /<svg\b([^>]*)>/.exec(svgMarkup);
96
+ if (!svgOpen)
97
+ return null;
98
+ const rootAttrs = readAttrs(svgOpen[1]);
99
+ const vb = rootAttrs['viewBox']?.split(/\s+/).map(Number) ?? [0, 0, 0, 0];
100
+ const viewBox = { minX: vb[0], minY: vb[1], width: vb[2], height: vb[3] };
101
+ const widthEx = parseExValue(rootAttrs['width']) ?? 0;
102
+ const heightEx = parseExValue(rootAttrs['height']) ?? 0;
103
+ const verticalAlignEx = parseStyleVerticalAlign(rootAttrs['style']);
104
+ const defs = new Map();
105
+ // Collect defs: <path id="..." d="..."/>
106
+ const defsBlock = /<defs\b[^>]*>([\s\S]*?)<\/defs>/.exec(svgMarkup);
107
+ if (defsBlock) {
108
+ const inner = defsBlock[1];
109
+ const pathRe = /<path\b([^>]*)\/?>/g;
110
+ let pm;
111
+ while ((pm = pathRe.exec(inner)) !== null) {
112
+ const a = readAttrs(pm[1]);
113
+ if (a['id'] && a['d'])
114
+ defs.set(a['id'], a['d']);
115
+ }
116
+ }
117
+ // Walk the tree with a transform stack, ignoring the <defs> block.
118
+ const bodyStart = defsBlock ? defsBlock.index + defsBlock[0].length : svgOpen.index + svgOpen[0].length;
119
+ const body = svgMarkup.slice(bodyStart, svgMarkup.lastIndexOf('</svg>'));
120
+ const paths = [];
121
+ const stack = [
122
+ { matrix: IDENTITY, fill: 'currentColor', stroke: 'currentColor', tag: '__root__' },
123
+ ];
124
+ // Tokenise into start/end/self-closing tags plus text runs.
125
+ const tagRe = /<(\/?)(\w+)([^>]*?)(\/?)>/g;
126
+ let tm;
127
+ while ((tm = tagRe.exec(body)) !== null) {
128
+ const [, closing, name, attrText, selfClose] = tm;
129
+ if (closing) {
130
+ // Only pop if the most recently pushed frame was for this tag —
131
+ // leaves like <use> and <path> share closing tags but never pushed.
132
+ if (stack.length > 1 && stack[stack.length - 1].tag === name)
133
+ stack.pop();
134
+ continue;
135
+ }
136
+ const attrs = readAttrs(attrText);
137
+ const parent = stack[stack.length - 1];
138
+ let ctm = parent.matrix;
139
+ if (attrs['transform'])
140
+ ctm = multiply(ctm, parseSvgTransform(attrs['transform']));
141
+ const fill = attrs['fill'] ?? parent.fill;
142
+ const stroke = attrs['stroke'] ?? parent.stroke;
143
+ if (name === 'path' && attrs['d']) {
144
+ const dOut = transformPath(attrs['d'], ctm);
145
+ paths.push({ d: dOut, fill });
146
+ }
147
+ else if (name === 'use') {
148
+ const ref = attrs['xlink:href'] ?? attrs['href'] ?? '';
149
+ const id = ref.startsWith('#') ? ref.slice(1) : ref;
150
+ const dRaw = defs.get(id);
151
+ if (dRaw) {
152
+ const dOut = transformPath(dRaw, ctm);
153
+ paths.push({ d: dOut, fill });
154
+ }
155
+ }
156
+ else if (name === 'rect') {
157
+ // MathJax emits <rect> for fraction bars, sqrt bars, etc.
158
+ const x = Number(attrs['x'] ?? 0);
159
+ const y = Number(attrs['y'] ?? 0);
160
+ const w = Number(attrs['width'] ?? 0);
161
+ const h = Number(attrs['height'] ?? 0);
162
+ if (w > 0 && h > 0) {
163
+ const rectPath = `M${x} ${y}L${x + w} ${y}L${x + w} ${y + h}L${x} ${y + h}Z`;
164
+ const dOut = transformPath(rectPath, ctm);
165
+ paths.push({ d: dOut, fill: fill === 'none' ? (stroke !== 'none' ? stroke : fill) : fill });
166
+ }
167
+ }
168
+ if (!selfClose && (name === 'g' || name === 'svg')) {
169
+ stack.push({ matrix: ctm, fill, stroke, tag: name });
170
+ }
171
+ }
172
+ return { viewBox, widthEx, heightEx, verticalAlignEx, paths, defs };
173
+ }
174
+ function errorRender(tex, displayMode, fontSizePx, message) {
175
+ // Tiny red box so the error is still spatially present on the page.
176
+ const widthPx = Math.max(8, fontSizePx * 0.8);
177
+ const heightPx = fontSizePx;
178
+ return {
179
+ tex,
180
+ displayMode,
181
+ svg: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10" width="${widthPx}" height="${heightPx}"><rect x="0" y="0" width="10" height="10" fill="#c62828" opacity="0.15"/><rect x="0" y="0" width="10" height="10" fill="none" stroke="#c62828" stroke-width="0.5"/></svg>`,
182
+ paths: [
183
+ { d: 'M0 0L10 0L10 10L0 10Z', fill: '#c6282826' },
184
+ ],
185
+ viewBox: { minX: 0, minY: 0, width: 10, height: 10 },
186
+ widthPx,
187
+ heightPx,
188
+ ascentPx: heightPx * 0.75,
189
+ depthPx: heightPx * 0.25,
190
+ scale: 1,
191
+ error: message,
192
+ };
193
+ }
194
+ export function renderMath(tex, displayMode, fontSizePx, options = {}) {
195
+ const lineBoxPx = options.lineBoxPx ?? Number.POSITIVE_INFINITY;
196
+ const key = cacheKey(tex, displayMode, fontSizePx, lineBoxPx === Number.POSITIVE_INFINITY ? 0 : lineBoxPx);
197
+ const cached = cacheGet(key);
198
+ if (cached)
199
+ return cached;
200
+ if (!handle) {
201
+ const r = placeholderRender(tex, displayMode, fontSizePx);
202
+ // Do NOT cache the placeholder — we want the real render to replace it.
203
+ return r;
204
+ }
205
+ let svgMarkup = '';
206
+ try {
207
+ const em = fontSizePx;
208
+ const ex = fontSizePx * 0.5;
209
+ const node = handle.document.convert(tex, {
210
+ display: displayMode,
211
+ em,
212
+ ex,
213
+ containerWidth: 80 * em,
214
+ });
215
+ svgMarkup = handle.adaptor.outerHTML(node);
216
+ }
217
+ catch (e) {
218
+ const msg = e instanceof Error ? e.message : String(e);
219
+ const r = errorRender(tex, displayMode, fontSizePx, msg);
220
+ cacheSet(key, r);
221
+ return r;
222
+ }
223
+ // MathJax wraps the <svg> in <mjx-container>. Strip that wrapper.
224
+ const inner = /<svg[\s\S]*<\/svg>/.exec(svgMarkup);
225
+ if (!inner) {
226
+ const r = errorRender(tex, displayMode, fontSizePx, 'MathJax did not return an <svg> element');
227
+ cacheSet(key, r);
228
+ return r;
229
+ }
230
+ const svgOnly = inner[0];
231
+ // Check for error markers emitted by MathJax's noerrors/noundefined.
232
+ // merror/mtext with data-merror → error in the TeX source.
233
+ let error;
234
+ const merror = /data-mml-node="merror"[\s\S]*?title="([^"]*)"/.exec(svgOnly);
235
+ if (merror)
236
+ error = merror[1];
237
+ else if (/data-mml-node="merror"/.test(svgOnly))
238
+ error = 'Invalid LaTeX';
239
+ const parsed = parseSvg(svgOnly);
240
+ if (!parsed) {
241
+ const r = errorRender(tex, displayMode, fontSizePx, 'Could not parse MathJax SVG output');
242
+ cacheSet(key, r);
243
+ return r;
244
+ }
245
+ const exPx = fontSizePx * 0.5;
246
+ let widthPx = parsed.widthEx * exPx;
247
+ let heightPx = parsed.heightEx * exPx;
248
+ // vertical-align is negative when the depth extends below baseline.
249
+ const depthPx = -parsed.verticalAlignEx * exPx;
250
+ let ascentPx = heightPx - depthPx;
251
+ let scale = 1;
252
+ // Inline scale-down: keep the grid intact even if the formula is tall.
253
+ if (!displayMode && heightPx > lineBoxPx && lineBoxPx > 0) {
254
+ scale = lineBoxPx / heightPx;
255
+ widthPx *= scale;
256
+ heightPx *= scale;
257
+ ascentPx *= scale;
258
+ // depth scales too
259
+ }
260
+ const colour = options.color ?? 'currentColor';
261
+ const resolvedPaths = parsed.paths.map((p) => ({
262
+ d: p.d,
263
+ fill: p.fill === 'currentColor' ? colour : p.fill,
264
+ }));
265
+ const svgSerialized = serializeForHtml(parsed, svgOnly, widthPx, heightPx, ascentPx);
266
+ const render = {
267
+ tex,
268
+ displayMode,
269
+ svg: svgSerialized,
270
+ paths: resolvedPaths,
271
+ viewBox: parsed.viewBox,
272
+ widthPx,
273
+ heightPx,
274
+ ascentPx,
275
+ depthPx: heightPx - ascentPx,
276
+ scale,
277
+ ...(error ? { error } : {}),
278
+ };
279
+ cacheSet(key, render);
280
+ return render;
281
+ }
282
+ // Re-serialise the MathJax SVG with our computed widthPx/heightPx so the
283
+ // HTML backend can embed it directly and get correct layout without having
284
+ // to know about ex units.
285
+ function serializeForHtml(parsed, svgOnly, widthPx, heightPx, _ascentPx) {
286
+ const { viewBox } = parsed;
287
+ // Replace the <svg> open tag's attributes with our px-based sizing so the
288
+ // SVG participates in the surrounding flow as a block of the exact box
289
+ // size we have measured.
290
+ return svgOnly.replace(/<svg\b[^>]*>/, `<svg xmlns="http://www.w3.org/2000/svg" viewBox="${viewBox.minX} ${viewBox.minY} ${viewBox.width} ${viewBox.height}" width="${widthPx}" height="${heightPx}">`);
291
+ }
292
+ // Provisional render used before MathJax finishes loading. Width heuristic is
293
+ // deliberately rough — it exists only so layout doesn't shift by too much
294
+ // once the real render arrives.
295
+ export function placeholderRender(tex, displayMode, fontSizePx) {
296
+ const widthPx = Math.max(fontSizePx, tex.length * fontSizePx * 0.55);
297
+ const heightPx = displayMode ? fontSizePx * 1.6 : fontSizePx;
298
+ return {
299
+ tex,
300
+ displayMode,
301
+ svg: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${widthPx} ${heightPx}" width="${widthPx}" height="${heightPx}"><rect x="0" y="0" width="${widthPx}" height="${heightPx}" fill="#cccccc" opacity="0.2"/></svg>`,
302
+ paths: [],
303
+ viewBox: { minX: 0, minY: 0, width: widthPx, height: heightPx },
304
+ widthPx,
305
+ heightPx,
306
+ ascentPx: heightPx * 0.75,
307
+ depthPx: heightPx * 0.25,
308
+ scale: 1,
309
+ };
310
+ }
311
+ export function clearMathCache() {
312
+ cache.clear();
313
+ }
314
+ //# sourceMappingURL=engine.js.map