shellfie 2.0.17 → 2.0.19

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 (107) hide show
  1. package/README.md +44 -12
  2. package/dist/renderer/customGlyphs.d.ts.map +1 -1
  3. package/dist/renderer/customGlyphs.js +67 -41
  4. package/dist/renderer/customGlyphs.js.map +1 -1
  5. package/dist/renderer/index.d.ts.map +1 -1
  6. package/dist/renderer/index.js +11 -4
  7. package/dist/renderer/index.js.map +1 -1
  8. package/dist/renderer/text.d.ts.map +1 -1
  9. package/dist/renderer/text.js +9 -3
  10. package/dist/renderer/text.js.map +1 -1
  11. package/dist/themes/3024-night.d.ts +3 -0
  12. package/dist/themes/3024-night.d.ts.map +1 -0
  13. package/dist/themes/3024-night.js +27 -0
  14. package/dist/themes/3024-night.js.map +1 -0
  15. package/dist/themes/a11y-dark.d.ts +3 -0
  16. package/dist/themes/a11y-dark.d.ts.map +1 -0
  17. package/dist/themes/a11y-dark.js +27 -0
  18. package/dist/themes/a11y-dark.js.map +1 -0
  19. package/dist/themes/base16-dark.d.ts +3 -0
  20. package/dist/themes/base16-dark.d.ts.map +1 -0
  21. package/dist/themes/base16-dark.js +27 -0
  22. package/dist/themes/base16-dark.js.map +1 -0
  23. package/dist/themes/base16-light.d.ts +3 -0
  24. package/dist/themes/base16-light.d.ts.map +1 -0
  25. package/dist/themes/base16-light.js +27 -0
  26. package/dist/themes/base16-light.js.map +1 -0
  27. package/dist/themes/blackboard.d.ts +3 -0
  28. package/dist/themes/blackboard.d.ts.map +1 -0
  29. package/dist/themes/blackboard.js +27 -0
  30. package/dist/themes/blackboard.js.map +1 -0
  31. package/dist/themes/cobalt.d.ts +3 -0
  32. package/dist/themes/cobalt.d.ts.map +1 -0
  33. package/dist/themes/cobalt.js +27 -0
  34. package/dist/themes/cobalt.js.map +1 -0
  35. package/dist/themes/dracula-pro.d.ts +3 -0
  36. package/dist/themes/dracula-pro.d.ts.map +1 -0
  37. package/dist/themes/dracula-pro.js +27 -0
  38. package/dist/themes/dracula-pro.js.map +1 -0
  39. package/dist/themes/duotone-dark.d.ts +3 -0
  40. package/dist/themes/duotone-dark.d.ts.map +1 -0
  41. package/dist/themes/duotone-dark.js +27 -0
  42. package/dist/themes/duotone-dark.js.map +1 -0
  43. package/dist/themes/hopscotch.d.ts +3 -0
  44. package/dist/themes/hopscotch.d.ts.map +1 -0
  45. package/dist/themes/hopscotch.js +27 -0
  46. package/dist/themes/hopscotch.js.map +1 -0
  47. package/dist/themes/index.d.ts +48 -2
  48. package/dist/themes/index.d.ts.map +1 -1
  49. package/dist/themes/index.js +96 -4
  50. package/dist/themes/index.js.map +1 -1
  51. package/dist/themes/lucario.d.ts +3 -0
  52. package/dist/themes/lucario.d.ts.map +1 -0
  53. package/dist/themes/lucario.js +27 -0
  54. package/dist/themes/lucario.js.map +1 -0
  55. package/dist/themes/material.d.ts +3 -0
  56. package/dist/themes/material.d.ts.map +1 -0
  57. package/dist/themes/material.js +27 -0
  58. package/dist/themes/material.js.map +1 -0
  59. package/dist/themes/oceanic-next.d.ts +3 -0
  60. package/dist/themes/oceanic-next.d.ts.map +1 -0
  61. package/dist/themes/oceanic-next.js +27 -0
  62. package/dist/themes/oceanic-next.js.map +1 -0
  63. package/dist/themes/one-light.d.ts +3 -0
  64. package/dist/themes/one-light.d.ts.map +1 -0
  65. package/dist/themes/one-light.js +27 -0
  66. package/dist/themes/one-light.js.map +1 -0
  67. package/dist/themes/panda-syntax.d.ts +3 -0
  68. package/dist/themes/panda-syntax.d.ts.map +1 -0
  69. package/dist/themes/panda-syntax.js +27 -0
  70. package/dist/themes/panda-syntax.js.map +1 -0
  71. package/dist/themes/paraiso-dark.d.ts +3 -0
  72. package/dist/themes/paraiso-dark.d.ts.map +1 -0
  73. package/dist/themes/paraiso-dark.js +27 -0
  74. package/dist/themes/paraiso-dark.js.map +1 -0
  75. package/dist/themes/seti.d.ts +3 -0
  76. package/dist/themes/seti.d.ts.map +1 -0
  77. package/dist/themes/seti.js +27 -0
  78. package/dist/themes/seti.js.map +1 -0
  79. package/dist/themes/shades-of-purple.d.ts +3 -0
  80. package/dist/themes/shades-of-purple.d.ts.map +1 -0
  81. package/dist/themes/shades-of-purple.js +27 -0
  82. package/dist/themes/shades-of-purple.js.map +1 -0
  83. package/dist/themes/synthwave-84.d.ts +3 -0
  84. package/dist/themes/synthwave-84.d.ts.map +1 -0
  85. package/dist/themes/synthwave-84.js +27 -0
  86. package/dist/themes/synthwave-84.js.map +1 -0
  87. package/dist/themes/twilight.d.ts +3 -0
  88. package/dist/themes/twilight.d.ts.map +1 -0
  89. package/dist/themes/twilight.js +27 -0
  90. package/dist/themes/twilight.js.map +1 -0
  91. package/dist/themes/verminal.d.ts +3 -0
  92. package/dist/themes/verminal.d.ts.map +1 -0
  93. package/dist/themes/verminal.js +27 -0
  94. package/dist/themes/verminal.js.map +1 -0
  95. package/dist/themes/vscode.d.ts +3 -0
  96. package/dist/themes/vscode.d.ts.map +1 -0
  97. package/dist/themes/vscode.js +27 -0
  98. package/dist/themes/vscode.js.map +1 -0
  99. package/dist/themes/yeti.d.ts +3 -0
  100. package/dist/themes/yeti.d.ts.map +1 -0
  101. package/dist/themes/yeti.js +27 -0
  102. package/dist/themes/yeti.js.map +1 -0
  103. package/dist/themes/zenburn.d.ts +3 -0
  104. package/dist/themes/zenburn.d.ts.map +1 -0
  105. package/dist/themes/zenburn.js +27 -0
  106. package/dist/themes/zenburn.js.map +1 -0
  107. package/package.json +1 -1
package/README.md CHANGED
@@ -175,7 +175,7 @@ The font gets base64-encoded directly into the SVG. No external requests, no COR
175
175
 
176
176
  ## Themes
177
177
 
178
- shellfie comes with 12 built-in themes:
178
+ shellfie comes with 35 built-in themes:
179
179
 
180
180
  ```typescript
181
181
  import shellfie, { dracula, nord, tokyoNight } from "shellfie";
@@ -183,21 +183,53 @@ import shellfie, { dracula, nord, tokyoNight } from "shellfie";
183
183
  shellfie(output, { theme: dracula });
184
184
  ```
185
185
 
186
- | Dracula | Nord | Tokyo Night |
187
- | -------------------------------------------- | -------------------------------------- | ---------------------------------------------------- |
188
- | ![Dracula](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/dracula.svg) | ![Nord](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/nord.svg) | ![Tokyo Night](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/tokyo-night.svg) |
186
+ | Dracula | Dracula PRO | Nord |
187
+ | -------------------------------------------- | --------------------------------------------- | -------------------------------------- |
188
+ | ![Dracula](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/dracula.svg) | ![Dracula PRO](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/dracula-pro.svg) | ![Nord](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/nord.svg) |
189
189
 
190
- | One Dark | Monokai | Catppuccin Mocha |
191
- | ---------------------------------------------- | -------------------------------------------- | -------------------------------------------------------------- |
192
- | ![One Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/one-dark.svg) | ![Monokai](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/monokai.svg) | ![Catppuccin Mocha](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/catppuccin-mocha.svg) |
190
+ | Tokyo Night | One Dark | One Light |
191
+ | ---------------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
192
+ | ![Tokyo Night](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/tokyo-night.svg) | ![One Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/one-dark.svg) | ![One Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/one-light.svg) |
193
193
 
194
- | GitHub Dark | GitHub Light | Gruvbox Dark |
194
+ | Monokai | Catppuccin Mocha | Material |
195
+ | -------------------------------------------- | -------------------------------------------------------------- | ---------------------------------------------- |
196
+ | ![Monokai](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/monokai.svg) | ![Catppuccin Mocha](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/catppuccin-mocha.svg) | ![Material](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/material.svg) |
197
+
198
+ | GitHub Dark | GitHub Light | VS Code |
199
+ | ---------------------------------------------------- | ------------------------------------------------------ | ---------------------------------------------- |
200
+ | ![GitHub Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/github-dark.svg) | ![GitHub Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/github-light.svg) | ![VS Code](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/vscode.svg) |
201
+
202
+ | Gruvbox Dark | Gruvbox Light | Solarized Dark |
203
+ | ------------------------------------------------------ | -------------------------------------------------------- | ---------------------------------------------------------- |
204
+ | ![Gruvbox Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/gruvbox-dark.svg) | ![Gruvbox Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/gruvbox-light.svg) | ![Solarized Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/solarized-dark.svg) |
205
+
206
+ | Solarized Light | SynthWave '84 | Shades of Purple |
207
+ | ------------------------------------------------------------ | ------------------------------------------------------ | -------------------------------------------------------------- |
208
+ | ![Solarized Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/solarized-light.svg) | ![SynthWave '84](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/synthwave-84.svg) | ![Shades of Purple](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/shades-of-purple.svg) |
209
+
210
+ | Cobalt | Oceanic Next | Lucario |
211
+ | -------------------------------------------- | ------------------------------------------------------ | ---------------------------------------------- |
212
+ | ![Cobalt](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/cobalt.svg) | ![Oceanic Next](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/oceanic-next.svg) | ![Lucario](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/lucario.svg) |
213
+
214
+ | Panda Syntax | Hopscotch | Paraiso Dark |
215
+ | ---------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------------ |
216
+ | ![Panda Syntax](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/panda-syntax.svg) | ![Hopscotch](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/hopscotch.svg) | ![Paraiso Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/paraiso-dark.svg) |
217
+
218
+ | Base16 Dark | Base16 Light | Duotone Dark |
195
219
  | ---------------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------ |
196
- | ![GitHub Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/github-dark.svg) | ![GitHub Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/github-light.svg) | ![Gruvbox Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/gruvbox-dark.svg) |
220
+ | ![Base16 Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/base16-dark.svg) | ![Base16 Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/base16-light.svg) | ![Duotone Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/duotone-dark.svg) |
221
+
222
+ | 3024 Night | A11y Dark | Blackboard |
223
+ | ---------------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
224
+ | ![3024 Night](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/3024-night.svg) | ![A11y Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/a11y-dark.svg) | ![Blackboard](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/blackboard.svg) |
225
+
226
+ | Seti | Twilight | Verminal |
227
+ | -------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
228
+ | ![Seti](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/seti.svg) | ![Twilight](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/twilight.svg) | ![Verminal](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/verminal.svg) |
197
229
 
198
- | Gruvbox Light | Solarized Dark | Solarized Light |
199
- | -------------------------------------------------------- | ---------------------------------------------------------- | ------------------------------------------------------------ |
200
- | ![Gruvbox Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/gruvbox-light.svg) | ![Solarized Dark](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/solarized-dark.svg) | ![Solarized Light](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/solarized-light.svg) |
230
+ | Yeti | Zenburn |
231
+ | -------------------------------------------- | ---------------------------------------------- |
232
+ | ![Yeti](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/yeti.svg) | ![Zenburn](https://raw.githubusercontent.com/tool3/shellfie/refs/heads/master/examples/svgs/themes/zenburn.svg) |
201
233
 
202
234
  ## Custom Themes
203
235
 
@@ -1 +1 @@
1
- {"version":3,"file":"customGlyphs.d.ts","sourceRoot":"","sources":["../../src/renderer/customGlyphs.ts"],"names":[],"mappings":"AAOA,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQxD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQ1D;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,WAAW,CAkCb"}
1
+ {"version":3,"file":"customGlyphs.d.ts","sourceRoot":"","sources":["../../src/renderer/customGlyphs.ts"],"names":[],"mappings":"AAeA,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQxD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQ1D;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,WAAW,CAkCb"}
@@ -9,6 +9,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.isCustomGlyph = isCustomGlyph;
10
10
  exports.containsCustomGlyphs = containsCustomGlyphs;
11
11
  exports.renderCustomGlyph = renderCustomGlyph;
12
+ /**
13
+ * Round a coordinate value to 2 decimal places to eliminate floating-point precision artifacts
14
+ * (e.g., 19.599999999999998 → 19.6) while preserving enough precision to avoid gaps between blocks.
15
+ */
16
+ function r(value) {
17
+ return Math.round(value * 100) / 100;
18
+ }
12
19
  function isCustomGlyph(codePoint) {
13
20
  return ((codePoint >= 0x2500 && codePoint <= 0x257f) ||
14
21
  (codePoint >= 0x2580 && codePoint <= 0x259f) ||
@@ -39,10 +46,10 @@ function renderCustomGlyph(char, ctx) {
39
46
  // Black Square (U+25A0) - render as cell-width square, vertically centered
40
47
  if (codePoint === 0x25a0) {
41
48
  const { cellWidth, cellHeight, x, y, color } = ctx;
42
- const size = cellWidth;
43
- const squareY = y + (cellHeight - size) / 2;
49
+ const size = r(cellWidth);
50
+ const squareY = r(y + (cellHeight - cellWidth) / 2);
44
51
  return {
45
- svg: `<rect x="${x}" y="${squareY}" width="${size}" height="${size}" fill="${color}" shape-rendering="crispEdges"/>`,
52
+ svg: `<rect x="${r(x)}" y="${squareY}" width="${size}" height="${size}" fill="${color}" shape-rendering="crispEdges"/>`,
46
53
  handled: true,
47
54
  };
48
55
  }
@@ -344,120 +351,139 @@ function renderDiagonalLine(codePoint, ctx) {
344
351
  function renderBlockElement(codePoint, ctx) {
345
352
  const { cellWidth, cellHeight, x, y, color } = ctx;
346
353
  const crisp = ' shape-rendering="crispEdges"';
354
+ // Pre-compute rounded values for common fractions
355
+ const w = r(cellWidth);
356
+ const h = r(cellHeight);
357
+ const w2 = r(cellWidth / 2);
358
+ const w4 = r(cellWidth / 4);
359
+ const w8 = r(cellWidth / 8);
360
+ const w38 = r(cellWidth * 3 / 8);
361
+ const w58 = r(cellWidth * 5 / 8);
362
+ const w34 = r(cellWidth * 3 / 4);
363
+ const w78 = r(cellWidth * 7 / 8);
364
+ const h2 = r(cellHeight / 2);
365
+ const h4 = r(cellHeight / 4);
366
+ const h8 = r(cellHeight / 8);
367
+ const h38 = r(cellHeight * 3 / 8);
368
+ const h58 = r(cellHeight * 5 / 8);
369
+ const h34 = r(cellHeight * 3 / 4);
370
+ const h78 = r(cellHeight * 7 / 8);
371
+ const rx = r(x);
372
+ const ry = r(y);
347
373
  let svg = '';
348
374
  switch (codePoint) {
349
375
  case 0x2580: // Upper half block
350
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
376
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`;
351
377
  break;
352
378
  case 0x2581: // Lower 1/8
353
- svg = `<rect x="${x}" y="${y + cellHeight * 7 / 8}" width="${cellWidth}" height="${cellHeight / 8}" fill="${color}"${crisp}/>`;
379
+ svg = `<rect x="${rx}" y="${r(y + h78)}" width="${w}" height="${h8}" fill="${color}"${crisp}/>`;
354
380
  break;
355
381
  case 0x2582: // Lower 1/4
356
- svg = `<rect x="${x}" y="${y + cellHeight * 3 / 4}" width="${cellWidth}" height="${cellHeight / 4}" fill="${color}"${crisp}/>`;
382
+ svg = `<rect x="${rx}" y="${r(y + h34)}" width="${w}" height="${h4}" fill="${color}"${crisp}/>`;
357
383
  break;
358
384
  case 0x2583: // Lower 3/8
359
- svg = `<rect x="${x}" y="${y + cellHeight * 5 / 8}" width="${cellWidth}" height="${cellHeight * 3 / 8}" fill="${color}"${crisp}/>`;
385
+ svg = `<rect x="${rx}" y="${r(y + h58)}" width="${w}" height="${h38}" fill="${color}"${crisp}/>`;
360
386
  break;
361
387
  case 0x2584: // Lower half
362
- svg = `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
388
+ svg = `<rect x="${rx}" y="${r(y + h2)}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`;
363
389
  break;
364
390
  case 0x2585: // Lower 5/8
365
- svg = `<rect x="${x}" y="${y + cellHeight * 3 / 8}" width="${cellWidth}" height="${cellHeight * 5 / 8}" fill="${color}"${crisp}/>`;
391
+ svg = `<rect x="${rx}" y="${r(y + h38)}" width="${w}" height="${h58}" fill="${color}"${crisp}/>`;
366
392
  break;
367
393
  case 0x2586: // Lower 3/4
368
- svg = `<rect x="${x}" y="${y + cellHeight / 4}" width="${cellWidth}" height="${cellHeight * 3 / 4}" fill="${color}"${crisp}/>`;
394
+ svg = `<rect x="${rx}" y="${r(y + h4)}" width="${w}" height="${h34}" fill="${color}"${crisp}/>`;
369
395
  break;
370
396
  case 0x2587: // Lower 7/8
371
- svg = `<rect x="${x}" y="${y + cellHeight / 8}" width="${cellWidth}" height="${cellHeight * 7 / 8}" fill="${color}"${crisp}/>`;
397
+ svg = `<rect x="${rx}" y="${r(y + h8)}" width="${w}" height="${h78}" fill="${color}"${crisp}/>`;
372
398
  break;
373
399
  case 0x2588: // Full block
374
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight}" fill="${color}"${crisp}/>`;
400
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h}" fill="${color}"${crisp}/>`;
375
401
  break;
376
402
  case 0x2589: // Left 7/8
377
- svg = `<rect x="${x}" y="${y}" width="${cellWidth * 7 / 8}" height="${cellHeight}" fill="${color}"${crisp}/>`;
403
+ svg = `<rect x="${rx}" y="${ry}" width="${w78}" height="${h}" fill="${color}"${crisp}/>`;
378
404
  break;
379
405
  case 0x258a: // Left 3/4
380
- svg = `<rect x="${x}" y="${y}" width="${cellWidth * 3 / 4}" height="${cellHeight}" fill="${color}"${crisp}/>`;
406
+ svg = `<rect x="${rx}" y="${ry}" width="${w34}" height="${h}" fill="${color}"${crisp}/>`;
381
407
  break;
382
408
  case 0x258b: // Left 5/8
383
- svg = `<rect x="${x}" y="${y}" width="${cellWidth * 5 / 8}" height="${cellHeight}" fill="${color}"${crisp}/>`;
409
+ svg = `<rect x="${rx}" y="${ry}" width="${w58}" height="${h}" fill="${color}"${crisp}/>`;
384
410
  break;
385
411
  case 0x258c: // Left half
386
- svg = `<rect x="${x}" y="${y}" width="${cellWidth / 2}" height="${cellHeight}" fill="${color}"${crisp}/>`;
412
+ svg = `<rect x="${rx}" y="${ry}" width="${w2}" height="${h}" fill="${color}"${crisp}/>`;
387
413
  break;
388
414
  case 0x258d: // Left 3/8
389
- svg = `<rect x="${x}" y="${y}" width="${cellWidth * 3 / 8}" height="${cellHeight}" fill="${color}"${crisp}/>`;
415
+ svg = `<rect x="${rx}" y="${ry}" width="${w38}" height="${h}" fill="${color}"${crisp}/>`;
390
416
  break;
391
417
  case 0x258e: // Left 1/4
392
- svg = `<rect x="${x}" y="${y}" width="${cellWidth / 4}" height="${cellHeight}" fill="${color}"${crisp}/>`;
418
+ svg = `<rect x="${rx}" y="${ry}" width="${w4}" height="${h}" fill="${color}"${crisp}/>`;
393
419
  break;
394
420
  case 0x258f: // Left 1/8
395
- svg = `<rect x="${x}" y="${y}" width="${cellWidth / 8}" height="${cellHeight}" fill="${color}"${crisp}/>`;
421
+ svg = `<rect x="${rx}" y="${ry}" width="${w8}" height="${h}" fill="${color}"${crisp}/>`;
396
422
  break;
397
423
  case 0x2590: // Right half block
398
- svg = `<rect x="${x + cellWidth / 2}" y="${y}" width="${cellWidth / 2}" height="${cellHeight}" fill="${color}"${crisp}/>`;
424
+ svg = `<rect x="${r(x + w2)}" y="${ry}" width="${w2}" height="${h}" fill="${color}"${crisp}/>`;
399
425
  break;
400
426
  case 0x2591: // Light shade (25%)
401
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight}" fill="${color}" fill-opacity="0.25"${crisp}/>`;
427
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h}" fill="${color}" fill-opacity="0.25"${crisp}/>`;
402
428
  break;
403
429
  case 0x2592: // Medium shade (50%)
404
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight}" fill="${color}" fill-opacity="0.5"${crisp}/>`;
430
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h}" fill="${color}" fill-opacity="0.5"${crisp}/>`;
405
431
  break;
406
432
  case 0x2593: // Dark shade (75%)
407
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight}" fill="${color}" fill-opacity="0.75"${crisp}/>`;
433
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h}" fill="${color}" fill-opacity="0.75"${crisp}/>`;
408
434
  break;
409
435
  case 0x2594: // Upper 1/8 block
410
- svg = `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight / 8}" fill="${color}"${crisp}/>`;
436
+ svg = `<rect x="${rx}" y="${ry}" width="${w}" height="${h8}" fill="${color}"${crisp}/>`;
411
437
  break;
412
438
  case 0x2595: // Right 1/8 block
413
- svg = `<rect x="${x + cellWidth * 7 / 8}" y="${y}" width="${cellWidth / 8}" height="${cellHeight}" fill="${color}"${crisp}/>`;
439
+ svg = `<rect x="${r(x + w78)}" y="${ry}" width="${w8}" height="${h}" fill="${color}"${crisp}/>`;
414
440
  break;
415
441
  case 0x2596: // Lower left
416
- svg = `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
442
+ svg = `<rect x="${rx}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`;
417
443
  break;
418
444
  case 0x2597: // Lower right
419
- svg = `<rect x="${x + cellWidth / 2}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
445
+ svg = `<rect x="${r(x + w2)}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`;
420
446
  break;
421
447
  case 0x2598: // Upper left
422
- svg = `<rect x="${x}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
448
+ svg = `<rect x="${rx}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`;
423
449
  break;
424
450
  case 0x2599: // Upper left, lower left, lower right
425
451
  svg = [
426
- `<rect x="${x}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
427
- `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
452
+ `<rect x="${rx}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
453
+ `<rect x="${rx}" y="${r(y + h2)}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`,
428
454
  ].join('');
429
455
  break;
430
456
  case 0x259a: // Upper left, lower right
431
457
  svg = [
432
- `<rect x="${x}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
433
- `<rect x="${x + cellWidth / 2}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
458
+ `<rect x="${rx}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
459
+ `<rect x="${r(x + w2)}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
434
460
  ].join('');
435
461
  break;
436
462
  case 0x259b: // Upper left, upper right, lower left
437
463
  svg = [
438
- `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
439
- `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
464
+ `<rect x="${rx}" y="${ry}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`,
465
+ `<rect x="${rx}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
440
466
  ].join('');
441
467
  break;
442
468
  case 0x259c: // Upper left, upper right, lower right
443
469
  svg = [
444
- `<rect x="${x}" y="${y}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
445
- `<rect x="${x + cellWidth / 2}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
470
+ `<rect x="${rx}" y="${ry}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`,
471
+ `<rect x="${r(x + w2)}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
446
472
  ].join('');
447
473
  break;
448
474
  case 0x259d: // Upper right
449
- svg = `<rect x="${x + cellWidth / 2}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`;
475
+ svg = `<rect x="${r(x + w2)}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`;
450
476
  break;
451
477
  case 0x259e: // Upper right, lower left
452
478
  svg = [
453
- `<rect x="${x + cellWidth / 2}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
454
- `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
479
+ `<rect x="${r(x + w2)}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
480
+ `<rect x="${rx}" y="${r(y + h2)}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
455
481
  ].join('');
456
482
  break;
457
483
  case 0x259f: // Upper right, lower left, lower right
458
484
  svg = [
459
- `<rect x="${x + cellWidth / 2}" y="${y}" width="${cellWidth / 2}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
460
- `<rect x="${x}" y="${y + cellHeight / 2}" width="${cellWidth}" height="${cellHeight / 2}" fill="${color}"${crisp}/>`,
485
+ `<rect x="${r(x + w2)}" y="${ry}" width="${w2}" height="${h2}" fill="${color}"${crisp}/>`,
486
+ `<rect x="${rx}" y="${r(y + h2)}" width="${w}" height="${h2}" fill="${color}"${crisp}/>`,
461
487
  ].join('');
462
488
  break;
463
489
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"customGlyphs.js","sourceRoot":"","sources":["../../src/renderer/customGlyphs.ts"],"names":[],"mappings":"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,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAA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"}
1
+ {"version":3,"file":"customGlyphs.js","sourceRoot":"","sources":["../../src/renderer/customGlyphs.ts"],"names":[],"mappings":"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AE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAC1B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/renderer/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,aAAa,EAKd,MAAM,UAAU,CAAC;AAIlB,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAyOD,eAAO,MAAM,SAAS,GAAI,OAAO,UAAU,EAAE,EAAE,SAAS,aAAa,KAAG,YA4HvE,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/renderer/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,aAAa,EAKd,MAAM,UAAU,CAAC;AAWlB,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAyOD,eAAO,MAAM,SAAS,GAAI,OAAO,UAAU,EAAE,EAAE,SAAS,aAAa,KAAG,YA6HvE,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC"}
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getDefaultFontConfig = exports.escapeXml = exports.resolveColor = exports.dimColor = exports.darkTheme = exports.createTheme = exports.renderSvg = void 0;
4
4
  const parser_1 = require("../parser");
5
5
  const text_1 = require("./text");
6
+ /**
7
+ * Round a coordinate value to avoid floating-point precision issues in SVG rendering.
8
+ */
9
+ function r(value) {
10
+ return Math.round(value * 100) / 100;
11
+ }
6
12
  const calculateDimensions = (lines, options) => {
7
13
  const { template, font, padding, watermark, watermarkPadding, header, footer } = options;
8
14
  const charWidth = font.size * font.charWidth;
@@ -126,7 +132,7 @@ const renderTitleBar = (template, title, contentWidth, theme, font, header, show
126
132
  parts.push(renderControls(template, controlX, controlY));
127
133
  }
128
134
  if (title) {
129
- parts.push(`<text x="${contentWidth / 2}" y="${bgHeight / 2 + font.size / 3}" fill="${theme.foreground}" font-family="${font.family}" font-size="${font.size - 2}" text-anchor="middle" opacity="0.8">${(0, text_1.escapeXml)(title)}</text>`);
135
+ parts.push(`<text x="${r(contentWidth / 2)}" y="${r(bgHeight / 2 + font.size / 3)}" fill="${theme.foreground}" font-family="${font.family}" font-size="${font.size - 2}" text-anchor="middle" opacity="0.8">${(0, text_1.escapeXml)(title)}</text>`);
130
136
  }
131
137
  return parts.join('\n ');
132
138
  };
@@ -179,8 +185,9 @@ const renderSvg = (lines, options) => {
179
185
  const dim = calculateDimensions(lines, options);
180
186
  const fontFamily = font.embedData ? `'EmbeddedFont', ${font.family}` : font.family;
181
187
  // Use exact dimensions if provided, otherwise use calculated content dimensions
182
- const svgWidth = options.width ?? dim.contentWidth;
183
- const svgHeight = options.height ?? dim.contentHeight;
188
+ // Round to avoid floating-point precision issues in SVG rendering
189
+ const svgWidth = r(options.width ?? dim.contentWidth);
190
+ const svgHeight = r(options.height ?? dim.contentHeight);
184
191
  const svgParts = [
185
192
  `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${svgWidth} ${svgHeight}" width="${svgWidth}" height="${svgHeight}">`,
186
193
  ];
@@ -253,7 +260,7 @@ const renderSvg = (lines, options) => {
253
260
  x += result.width;
254
261
  });
255
262
  if (tspans.some(t => t.length > 0)) {
256
- svgParts.push(` <text y="${y}" font-family="${fontFamily}" font-size="${font.size}" xml:space="preserve">${tspans.join('')}</text>`);
263
+ svgParts.push(` <text y="${r(y)}" font-family="${fontFamily}" font-size="${font.size}" xml:space="preserve">${tspans.join('')}</text>`);
257
264
  }
258
265
  });
259
266
  svgParts.push(` </g>`);