@silurus/ooxml 0.86.0 → 0.87.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 (67) hide show
  1. package/README.md +42 -2
  2. package/dist/assets/render-worker-CeK_iqK3.js +10 -0
  3. package/dist/assets/render-worker-DusrDhPk.js +11 -0
  4. package/dist/assets/render-worker-n2ZG0lrQ.js +31 -0
  5. package/dist/bounded-raw-part-cache-Cg1BsSZQ.js +119 -0
  6. package/dist/{canvas-viewer-mechanics-B3A7KLLi.js → canvas-viewer-mechanics-Cpk0YFvM.js} +301 -155
  7. package/dist/chart-ex.mjs +1 -1
  8. package/dist/cjk-fallback-bLI3z70h.js +46 -0
  9. package/dist/{comment-ui-runtime-ssI6IE39.js → comment-ui-runtime-BfE7MJZn.js} +4 -4
  10. package/dist/comment-ui-runtime-BsK8pmUT.js +2 -0
  11. package/dist/{comment-ui-runtime-DEtgcmj7.js → comment-ui-runtime-DcJOYlw-.js} +5 -5
  12. package/dist/{comments-CAn2A_Xh.js → comments-Diid5ujN.js} +1 -1
  13. package/dist/{document-pull-client-xZrA2IjM.js → document-pull-client-yKxI8aDH.js} +4326 -4238
  14. package/dist/{docx-DzDiGvqe.js → docx-BkSRiy07.js} +541 -349
  15. package/dist/docx.mjs +7 -7
  16. package/dist/docx_parser_bg.wasm +0 -0
  17. package/dist/{dom-interaction-boundary-DK1JLkrz.js → dom-interaction-boundary-CBUQJsIM.js} +63 -57
  18. package/dist/{hyperlink-enyPbflR.js → hyperlink-ArrU3ArU.js} +1014 -951
  19. package/dist/index.mjs +4 -4
  20. package/dist/line-distribute-Dtudnqhs.js +1023 -0
  21. package/dist/math.mjs +2 -2
  22. package/dist/node.mjs +380 -376
  23. package/dist/{pptx-D_U62nl-.js → pptx-62MmVbYB.js} +462 -447
  24. package/dist/pptx.mjs +7 -7
  25. package/dist/pptx_parser_bg.wasm +0 -0
  26. package/dist/region-map.mjs +1 -1
  27. package/dist/{render-DSn0d35X.js → render-8Zo7dnds.js} +31 -29
  28. package/dist/{render-worker-host-CbYDBg7U.js → render-worker-host-BfbnEChF.js} +1 -1
  29. package/dist/{render-worker-host-CO0UYoQh.js → render-worker-host-DNL9dWRh.js} +1 -1
  30. package/dist/{render-worker-host-BHz9vjxB.js → render-worker-host-IkHrYOci.js} +1 -1
  31. package/dist/{resource-measurement-Do07ZRcR.js → resource-measurement-CJsgolre.js} +9 -9
  32. package/dist/{session-C1GYhr6n.js → session-CrU8f8DI.js} +91 -91
  33. package/dist/{slide-pull-client-DuEaUxPw.js → slide-pull-client-B9KA8bU6.js} +1069 -966
  34. package/dist/three-d.mjs +1 -1
  35. package/dist/tiff.mjs +1 -1
  36. package/dist/types/chart-ex.d.ts +2 -2
  37. package/dist/types/docx.d.ts +15 -12
  38. package/dist/types/index.d.ts +23 -18
  39. package/dist/types/math.d.ts +1 -1
  40. package/dist/types/node.d.ts +12 -6
  41. package/dist/types/pptx.d.ts +15 -11
  42. package/dist/types/region-map.d.ts +2 -2
  43. package/dist/types/three-d.d.ts +2 -2
  44. package/dist/types/tiff.d.ts +1 -1
  45. package/dist/types/xlsx.d.ts +15 -11
  46. package/dist/{worksheet-pull-client-eDiHHEG2.js → worksheet-pull-client-eIcQ-xlD.js} +65 -65
  47. package/dist/{xlsx-CMHmYTHP.js → xlsx-CRcSzZNq.js} +1656 -1630
  48. package/dist/xlsx.mjs +4 -4
  49. package/dist/xlsx_parser_bg.wasm +0 -0
  50. package/package.json +1 -1
  51. package/dist/assets/render-worker-BCGnuBLj.js +0 -10
  52. package/dist/assets/render-worker-CB4DxjXg.js +0 -31
  53. package/dist/assets/render-worker-CHW0F0n6.js +0 -11
  54. package/dist/bounded-raw-part-cache-DVx3Camo.js +0 -256
  55. package/dist/comment-ui-runtime-TLHustXJ.js +0 -2
  56. package/dist/line-distribute-BFB575d6.js +0 -1023
  57. /package/dist/{comment-occurrence-Dhdplprg.js → comment-occurrence-C8Y2uoVr.js} +0 -0
  58. /package/dist/{delimited-text-worker-host-DcHj_JZt.js → delimited-text-worker-host-BVY-Ecni.js} +0 -0
  59. /package/dist/{highlight-rect-FuUSmL3a.js → highlight-rect-C5hkRqUr.js} +0 -0
  60. /package/dist/{line-metrics-CBbw80Ko.js → line-metrics-B60C86uh.js} +0 -0
  61. /package/dist/{mathjax-DS69BmJd.js → mathjax-DoyWZbSp.js} +0 -0
  62. /package/dist/{read-only-comment-decoration-BTnWEeo5.js → read-only-comment-decoration-Dz7eTQ4d.js} +0 -0
  63. /package/dist/{read-only-comment-margin-plStyGfE.js → read-only-comment-margin-DkgzASAl.js} +0 -0
  64. /package/dist/{renderer-module-contract-Cu-GKuPd.js → renderer-module-contract-D91rkYHH.js} +0 -0
  65. /package/dist/{source-key-Ktb1GRE5.js → source-key-DIJG8BA0.js} +0 -0
  66. /package/dist/{transfer-mIj7E7NB.js → transfer-p6iCC2R7.js} +0 -0
  67. /package/dist/{visible-index-DPoQYSDt.js → visible-index-BgiHEc1z.js} +0 -0
@@ -2,7 +2,7 @@ import { cn as e, dn as t, fn as n, hn as r, ln as i, mn as a, pn as o, un as s
2
2
  import { a as c, c as l, i as u, l as d, n as f, o as p, r as m, s as h, t as g } from "./pixel-budget-Dgjw269h.js";
3
3
  import { L as _ } from "./three-d-YYghQndN.js";
4
4
  import { a as v, c as y, i as b, n as x, o as S, r as C, s as ee } from "./raster-target-ojDdQizC.js";
5
- import { t as te } from "./mathjax-DS69BmJd.js";
5
+ import { t as te } from "./mathjax-DoyWZbSp.js";
6
6
  //#region packages/core/src/errors/ooxml-error.ts
7
7
  var w = class e extends Error {
8
8
  code;
@@ -193,7 +193,11 @@ var je = [
193
193
  "noto sans thai": { url: E("Noto+Sans+Thai") },
194
194
  "noto sans hebrew": { url: E("Noto+Sans+Hebrew") },
195
195
  "noto serif hebrew": { url: E("Noto+Serif+Hebrew") }
196
- }, Ie = class e {
196
+ };
197
+ function Ie(e) {
198
+ return /\p{Script=Han}/u.test(e);
199
+ }
200
+ var Le = class e {
197
201
  hasHan = !1;
198
202
  hasHangul = !1;
199
203
  hasKana = !1;
@@ -205,6 +209,12 @@ var je = [
205
209
  constructor(e) {
206
210
  this.cjkLang = e;
207
211
  }
212
+ scriptCjkLanguage() {
213
+ return this.hasHangul ? "kr" : this.hasKana ? "jp" : null;
214
+ }
215
+ preferredCjkLanguage() {
216
+ return this.scriptCjkLanguage() ?? this.cjkLang ?? "jp";
217
+ }
208
218
  clone() {
209
219
  let t = new e(this.cjkLang);
210
220
  return t.hasHan = this.hasHan, t.hasHangul = this.hasHangul, t.hasKana = this.hasKana, t.hasArabic = this.hasArabic, t.hasThai = this.hasThai, t.hasHebrew = this.hasHebrew, t.hasDevanagari = this.hasDevanagari, t.hasCyrGreek = this.hasCyrGreek, t;
@@ -213,36 +223,40 @@ var je = [
213
223
  let t = () => this.hasHan && this.hasHangul && this.hasKana && this.hasArabic && this.hasThai && this.hasHebrew && this.hasDevanagari && this.hasCyrGreek;
214
224
  outer: for (let n of e) if (n) for (let e of n) {
215
225
  let n = e.codePointAt(0);
216
- if (n !== void 0 && !(n <= 591) && (n >= 4352 && n <= 4607 || n >= 12592 && n <= 12687 || n >= 44032 && n <= 55215 ? this.hasHangul = !0 : n >= 12352 && n <= 12543 ? this.hasKana = !0 : n >= 13312 && n <= 19903 || n >= 19968 && n <= 40959 || n >= 63744 && n <= 64255 || n >= 131072 && n <= 195103 ? this.hasHan = !0 : n >= 1536 && n <= 1791 || n >= 1872 && n <= 1919 || n >= 2208 && n <= 2303 || n >= 64336 && n <= 65023 || n >= 65136 && n <= 65279 ? this.hasArabic = !0 : n >= 3584 && n <= 3711 ? this.hasThai = !0 : n >= 1424 && n <= 1535 || n >= 64285 && n <= 64335 ? this.hasHebrew = !0 : n >= 2304 && n <= 2431 ? this.hasDevanagari = !0 : (n >= 1024 && n <= 1279 || n >= 880 && n <= 1023) && (this.hasCyrGreek = !0), t())) break outer;
226
+ if (n !== void 0 && !(n <= 591) && (n >= 4352 && n <= 4607 || n >= 12592 && n <= 12687 || n >= 44032 && n <= 55215 ? this.hasHangul = !0 : n >= 12352 && n <= 12543 ? this.hasKana = !0 : Ie(e) ? this.hasHan = !0 : n >= 1536 && n <= 1791 || n >= 1872 && n <= 1919 || n >= 2208 && n <= 2303 || n >= 64336 && n <= 65023 || n >= 65136 && n <= 65279 ? this.hasArabic = !0 : n >= 3584 && n <= 3711 ? this.hasThai = !0 : n >= 1424 && n <= 1535 || n >= 64285 && n <= 64335 ? this.hasHebrew = !0 : n >= 2304 && n <= 2431 ? this.hasDevanagari = !0 : (n >= 1024 && n <= 1279 || n >= 880 && n <= 1023) && (this.hasCyrGreek = !0), t())) break outer;
217
227
  }
218
228
  }
219
- names() {
220
- let e = [], t = /* @__PURE__ */ new Set();
221
- this.hasHangul && t.add("kr"), this.hasKana && t.add("jp"), this.hasHan && t.size === 0 && t.add(this.cjkLang ?? "jp");
222
- for (let n of [
229
+ names(e = !1) {
230
+ let t = [], n = /* @__PURE__ */ new Set();
231
+ this.hasHangul && n.add("kr"), this.hasKana && n.add("jp"), this.hasHan && (n.size === 0 || e) && n.add(this.cjkLang ?? "jp");
232
+ for (let e of [
223
233
  "kr",
224
234
  "sc",
225
235
  "tc",
226
236
  "hk",
227
237
  "jp"
228
- ]) if (t.has(n)) {
229
- let t = {
238
+ ]) if (n.has(e)) {
239
+ let n = {
230
240
  kr: "KR",
231
241
  sc: "SC",
232
242
  tc: "TC",
233
243
  hk: "HK",
234
244
  jp: "JP"
235
- }[n];
236
- e.push(`Noto Sans ${t}`), n !== "hk" && e.push(`Noto Serif ${t}`);
245
+ }[e];
246
+ t.push(`Noto Sans ${n}`), e !== "hk" && t.push(`Noto Serif ${n}`);
237
247
  }
238
- return this.hasCyrGreek && e.push("Noto Sans", "Noto Serif"), this.hasArabic && e.push("Noto Naskh Arabic", "Noto Sans Arabic"), this.hasThai && e.push("Noto Sans Thai"), this.hasHebrew && e.push("Noto Sans Hebrew", "Noto Serif Hebrew"), this.hasDevanagari && e.push("Noto Sans Devanagari"), e;
248
+ return this.hasCyrGreek && t.push("Noto Sans", "Noto Serif"), this.hasArabic && t.push("Noto Naskh Arabic", "Noto Sans Arabic"), this.hasThai && t.push("Noto Sans Thai"), this.hasHebrew && t.push("Noto Sans Hebrew", "Noto Serif Hebrew"), this.hasDevanagari && t.push("Noto Sans Devanagari"), t;
239
249
  }
240
250
  };
241
- function Le(e, t) {
242
- let n = new Ie(t);
243
- return n.addText(e), n.names();
251
+ function Re(e, t, n = !1) {
252
+ let r = new Le(t);
253
+ return r.addText(e), r.names(n);
254
+ }
255
+ function ze(e, t) {
256
+ let n = new Le(t);
257
+ return n.addText(e), n.preferredCjkLanguage();
244
258
  }
245
- var Re = {
259
+ var Be = {
246
260
  accentbordercallout1: {
247
261
  adj: [
248
262
  ["adj1", "val 18750"],
@@ -22105,15 +22119,15 @@ var Re = {
22105
22119
  ]
22106
22120
  }]
22107
22121
  }
22108
- }, D = 216e5, ze = Math.PI * 2 / D;
22109
- function Be(e) {
22122
+ }, D = 216e5, Ve = Math.PI * 2 / D;
22123
+ function He(e) {
22110
22124
  let t = e.trim().split(/\s+/);
22111
22125
  return {
22112
22126
  op: t[0],
22113
22127
  argTokens: t.slice(1)
22114
22128
  };
22115
22129
  }
22116
- function Ve(e, t, n) {
22130
+ function Ue(e, t, n) {
22117
22131
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
22118
22132
  Object.assign(c, {
22119
22133
  w: r,
@@ -22202,10 +22216,10 @@ function Ve(e, t, n) {
22202
22216
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
22203
22217
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
22204
22218
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
22205
- case "sin": return t[0] * Math.sin(t[1] * ze);
22206
- case "cos": return t[0] * Math.cos(t[1] * ze);
22207
- case "tan": return t[0] * Math.tan(t[1] * ze);
22208
- case "at2": return Math.atan2(t[1], t[0]) / ze;
22219
+ case "sin": return t[0] * Math.sin(t[1] * Ve);
22220
+ case "cos": return t[0] * Math.cos(t[1] * Ve);
22221
+ case "tan": return t[0] * Math.tan(t[1] * Ve);
22222
+ case "at2": return Math.atan2(t[1], t[0]) / Ve;
22209
22223
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
22210
22224
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
22211
22225
  default: throw Error(`preset-shape: unknown operator "${e}" in "${[n.op, ...n.argTokens].join(" ")}"`);
@@ -22214,8 +22228,8 @@ function Ve(e, t, n) {
22214
22228
  }
22215
22229
  //#endregion
22216
22230
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
22217
- var He = Math.PI * 2 / 216e5;
22218
- function Ue(e, t, n, r, i, a, o) {
22231
+ var We = Math.PI * 2 / 216e5;
22232
+ function Ge(e, t, n, r, i, a, o) {
22219
22233
  let s = t.w == null ? 1 : a / t.w, c = t.h == null ? 1 : o / t.h, l = (e) => r + e * s, u = (e) => i + e * c, d = 0, f = 0;
22220
22234
  for (let r of t.cmds) switch (r[0]) {
22221
22235
  case "m": {
@@ -22239,7 +22253,7 @@ function Ue(e, t, n, r, i, a, o) {
22239
22253
  break;
22240
22254
  }
22241
22255
  case "a": {
22242
- let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * He, u = n.resolve(r[4]) * He, p = Math.PI * 2, m = (e) => Math.atan2(t * Math.sin(e), i * Math.cos(e)), h = m(l), g = Math.trunc(u / p), _ = u - g * p, v = m(l + _) - h;
22256
+ let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * We, u = n.resolve(r[4]) * We, p = Math.PI * 2, m = (e) => Math.atan2(t * Math.sin(e), i * Math.cos(e)), h = m(l), g = Math.trunc(u / p), _ = u - g * p, v = m(l + _) - h;
22243
22257
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
22244
22258
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
22245
22259
  Math.abs(a) > 1e-6 && Math.abs(o) > 1e-6 && (e.ellipse(b, x, Math.abs(a), Math.abs(o), 0, h, y, u < 0), d = b + a * Math.cos(y), f = x + o * Math.sin(y));
@@ -22252,44 +22266,44 @@ function Ue(e, t, n, r, i, a, o) {
22252
22266
  }
22253
22267
  //#endregion
22254
22268
  //#region packages/core/src/shape/preset-geometry/index.ts
22255
- var O = Re, We = /* @__PURE__ */ new WeakMap();
22256
- function Ge(e) {
22257
- let t = We.get(e);
22269
+ var O = Be, Ke = /* @__PURE__ */ new WeakMap();
22270
+ function qe(e) {
22271
+ let t = Ke.get(e);
22258
22272
  return t || (t = {
22259
- adj: e.adj.map(([e, t]) => [e, Be(t)]),
22260
- gd: e.gd.map(([e, t]) => [e, Be(t)])
22261
- }, We.set(e, t)), t;
22273
+ adj: e.adj.map(([e, t]) => [e, He(t)]),
22274
+ gd: e.gd.map(([e, t]) => [e, He(t)])
22275
+ }, Ke.set(e, t)), t;
22262
22276
  }
22263
- function Ke(e, t, n, r) {
22264
- let i = Ge(e);
22265
- return Ve({
22277
+ function Je(e, t, n, r) {
22278
+ let i = qe(e);
22279
+ return Ue({
22266
22280
  w: t,
22267
22281
  h: n,
22268
22282
  adj: r
22269
22283
  }, i.adj, i.gd);
22270
22284
  }
22271
- function qe(e) {
22285
+ function Ye(e) {
22272
22286
  return e.toLowerCase() in O;
22273
22287
  }
22274
- function Je(e, t, n, r, i, a, o = []) {
22288
+ function Xe(e, t, n, r, i, a, o = []) {
22275
22289
  let s = O[t.toLowerCase()];
22276
22290
  if (!s) return !1;
22277
- let c = Ke(s, i, a, o);
22278
- for (let t of s.paths) Ue(e, t, c, n, r, i, a);
22291
+ let c = Je(s, i, a, o);
22292
+ for (let t of s.paths) Ge(e, t, c, n, r, i, a);
22279
22293
  return !0;
22280
22294
  }
22281
- function Ye(e, t, n, r, i, a, o = []) {
22295
+ function Ze(e, t, n, r, i, a, o = []) {
22282
22296
  let s = O[t.toLowerCase()];
22283
22297
  if (!s) return !1;
22284
- let c = Ke(s, i, a, o);
22285
- for (let t of s.paths) t.fill !== "none" && Ue(e, t, c, n, r, i, a);
22298
+ let c = Je(s, i, a, o);
22299
+ for (let t of s.paths) t.fill !== "none" && Ge(e, t, c, n, r, i, a);
22286
22300
  return !0;
22287
22301
  }
22288
- var Xe = {
22302
+ var Qe = {
22289
22303
  wedgeroundrectcallout: "roundrect",
22290
22304
  wedgeellipsecallout: "ellipse",
22291
22305
  wedgerectcallout: null
22292
- }, Ze = {
22306
+ }, $e = {
22293
22307
  adj: [],
22294
22308
  gd: [],
22295
22309
  paths: [{
@@ -22323,20 +22337,20 @@ var Xe = {
22323
22337
  ]
22324
22338
  }]
22325
22339
  };
22326
- function Qe(e, t, n) {
22340
+ function et(e, t, n) {
22327
22341
  let r = e[n];
22328
22342
  if (typeof r == "number") return r;
22329
22343
  let i = t.adj[n];
22330
22344
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
22331
22345
  }
22332
- function $e(e, t, n, r) {
22346
+ function tt(e, t, n, r) {
22333
22347
  let i = O[e];
22334
22348
  if (!i) return null;
22335
- if (e in Xe) {
22336
- let a = Qe(r, i, 0), o = Qe(r, i, 1), s = t / 2 + t * a / 1e5, c = n / 2 + n * o / 1e5;
22349
+ if (e in Qe) {
22350
+ let a = et(r, i, 0), o = et(r, i, 1), s = t / 2 + t * a / 1e5, c = n / 2 + n * o / 1e5;
22337
22351
  if (s >= 0 && s <= t && c >= 0 && c <= n) {
22338
- let t = Xe[e];
22339
- t === "roundrect" ? (i = O.roundrect, r = [Qe(r, O[e], 2)]) : t && O[t] ? (i = O[t], r = []) : (i = Ze, r = []);
22352
+ let t = Qe[e];
22353
+ t === "roundrect" ? (i = O.roundrect, r = [et(r, O[e], 2)]) : t && O[t] ? (i = O[t], r = []) : (i = $e, r = []);
22340
22354
  }
22341
22355
  }
22342
22356
  return {
@@ -22344,8 +22358,8 @@ function $e(e, t, n, r) {
22344
22358
  adj: r
22345
22359
  };
22346
22360
  }
22347
- function et(e, t, n, r, i, a = []) {
22348
- let o = $e(e.toLowerCase(), r, i, a);
22361
+ function nt(e, t, n, r, i, a = []) {
22362
+ let o = tt(e.toLowerCase(), r, i, a);
22349
22363
  if (!o) return null;
22350
22364
  let s = Infinity, c = Infinity, l = -Infinity, u = -Infinity, d = (e, t) => {
22351
22365
  !Number.isFinite(e) || !Number.isFinite(t) || (s = Math.min(s, e), c = Math.min(c, t), l = Math.max(l, e), u = Math.max(u, t));
@@ -22362,8 +22376,8 @@ function et(e, t, n, r, i, a = []) {
22362
22376
  d(e - Math.abs(n), t - Math.abs(r)), d(e + Math.abs(n), t + Math.abs(r));
22363
22377
  },
22364
22378
  closePath() {}
22365
- }, p = Ke(o.def, r, i, o.adj);
22366
- for (let e of o.def.paths) Ue(f, e, p, t, n, r, i);
22379
+ }, p = Je(o.def, r, i, o.adj);
22380
+ for (let e of o.def.paths) Ge(f, e, p, t, n, r, i);
22367
22381
  return Number.isFinite(s) ? {
22368
22382
  x: s,
22369
22383
  y: c,
@@ -22376,19 +22390,19 @@ function et(e, t, n, r, i, a = []) {
22376
22390
  h: i
22377
22391
  };
22378
22392
  }
22379
- function tt(e, t, n, r, i, a, o, s, c, l, u) {
22380
- let d = $e(t.toLowerCase(), i, a, o);
22393
+ function rt(e, t, n, r, i, a, o, s, c, l, u) {
22394
+ let d = tt(t.toLowerCase(), i, a, o);
22381
22395
  if (!d) return !1;
22382
22396
  let { def: f } = d;
22383
22397
  o = d.adj;
22384
- let p = Ke(f, i, a, o), m = !1, h = f.paths.length - 1;
22398
+ let p = Je(f, i, a, o), m = !1, h = f.paths.length - 1;
22385
22399
  for (let t = 0; t < f.paths.length; t++) {
22386
22400
  let o = f.paths[t];
22387
- e.beginPath(), Ue(e, o, p, n, r, i, a);
22401
+ e.beginPath(), Ge(e, o, p, n, r, i, a);
22388
22402
  let d = o.fill;
22389
22403
  if (d !== "none" && s != null) {
22390
22404
  e.save(), e.fillStyle = s, e.fill();
22391
- let t = rt(d);
22405
+ let t = at(d);
22392
22406
  t && (e.fillStyle = t, e.fill()), e.restore(), m ||= (l(), !0);
22393
22407
  }
22394
22408
  if (o.stroke && c) {
@@ -22398,10 +22412,10 @@ function tt(e, t, n, r, i, a, o, s, c, l, u) {
22398
22412
  }
22399
22413
  return !0;
22400
22414
  }
22401
- function nt(e, t, n, r, i, a) {
22415
+ function it(e, t, n, r, i, a) {
22402
22416
  let o = O[e.toLowerCase()];
22403
22417
  if (!o || o.paths.length === 0) return null;
22404
- let s = o.paths[o.paths.length - 1], c = Ke(o, r, i, a), l = s.w == null ? 1 : r / s.w, u = s.h == null ? 1 : i / s.h, d = (e) => t + e * l, f = (e) => n + e * u, p = 0, m = 0, h = 0, g = 0, _ = 0, v = 0, y = !1, b = 0, x = 0, S = [];
22418
+ let s = o.paths[o.paths.length - 1], c = Je(o, r, i, a), l = s.w == null ? 1 : r / s.w, u = s.h == null ? 1 : i / s.h, d = (e) => t + e * l, f = (e) => n + e * u, p = 0, m = 0, h = 0, g = 0, _ = 0, v = 0, y = !1, b = 0, x = 0, S = [];
22405
22419
  for (let e of s.cmds) switch (e[0]) {
22406
22420
  case "m":
22407
22421
  h = d(c.resolve(e[1])), g = f(c.resolve(e[2])), p = h, m = g, S.push({
@@ -22441,7 +22455,7 @@ function nt(e, t, n, r, i, a) {
22441
22455
  vertices: S
22442
22456
  };
22443
22457
  }
22444
- function rt(e) {
22458
+ function at(e) {
22445
22459
  switch (e) {
22446
22460
  case "lighten": return "rgba(255,255,255,0.30)";
22447
22461
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -22488,6 +22502,9 @@ var k = {
22488
22502
  BEGINPATH: 59,
22489
22503
  ENDPATH: 60,
22490
22504
  CLOSEFIGURE: 61,
22505
+ FILLPATH: 62,
22506
+ STROKEANDFILLPATH: 63,
22507
+ STROKEPATH: 64,
22491
22508
  SELECTCLIPPATH: 67,
22492
22509
  EXTCREATEFONTINDIRECTW: 82,
22493
22510
  EXTTEXTOUTW: 84,
@@ -22524,7 +22541,7 @@ var k = {
22524
22541
  TWIPS: 6,
22525
22542
  ISOTROPIC: 7,
22526
22543
  ANISOTROPIC: 8
22527
- }, it = () => ({
22544
+ }, ot = () => ({
22528
22545
  m11: 1,
22529
22546
  m12: 0,
22530
22547
  m21: 0,
@@ -22532,7 +22549,7 @@ var k = {
22532
22549
  dx: 0,
22533
22550
  dy: 0
22534
22551
  });
22535
- function at(e, t) {
22552
+ function st(e, t) {
22536
22553
  return {
22537
22554
  m11: e.m11 * t.m11 + e.m21 * t.m12,
22538
22555
  m12: e.m12 * t.m11 + e.m22 * t.m12,
@@ -22542,7 +22559,7 @@ function at(e, t) {
22542
22559
  dy: e.m12 * t.dx + e.m22 * t.dy + e.dy
22543
22560
  };
22544
22561
  }
22545
- var ot = class {
22562
+ var ct = class {
22546
22563
  p;
22547
22564
  constructor(e, t, n) {
22548
22565
  this.dv = e, this.end = n, this.p = t;
@@ -22585,58 +22602,68 @@ var ot = class {
22585
22602
  skip(e) {
22586
22603
  this.p += e;
22587
22604
  }
22588
- };
22589
- function st(e, t, n) {
22605
+ }, lt = 2162688;
22606
+ function M(e, t) {
22607
+ if (!e.inPath) return !0;
22608
+ if (e.pathDiscarded) return !1;
22609
+ let n = e.pathCommandCount + t;
22610
+ return !Number.isSafeInteger(n) || t < 0 || n > e.maxPathCommands ? (e.ctx.beginPath(), e.pathDiscarded = !0, !1) : (e.pathCommandCount = n, !0);
22611
+ }
22612
+ function ut(e, t, n) {
22613
+ let r = n === F ? 4 : 8;
22614
+ return Math.min(t, Math.floor(e.remaining / r));
22615
+ }
22616
+ function dt(e, t, n) {
22590
22617
  return e.wt.m11 * t + e.wt.m21 * n + e.wt.dx;
22591
22618
  }
22592
- function ct(e, t, n) {
22619
+ function ft(e, t, n) {
22593
22620
  return e.wt.m12 * t + e.wt.m22 * n + e.wt.dy;
22594
22621
  }
22595
- function lt(e) {
22622
+ function pt(e) {
22596
22623
  return e.winExtX === 0 ? 1 : e.vpExtX / e.winExtX;
22597
22624
  }
22598
- function ut(e) {
22625
+ function mt(e) {
22599
22626
  return e.winExtY === 0 ? 1 : e.vpExtY / e.winExtY;
22600
22627
  }
22601
- function dt(e) {
22602
- return Math.min(Math.abs(lt(e)), Math.abs(ut(e)));
22628
+ function ht(e) {
22629
+ return Math.min(Math.abs(pt(e)), Math.abs(mt(e)));
22603
22630
  }
22604
- function ft(e) {
22605
- return e.mapMode === j.ISOTROPIC ? lt(e) < 0 ? -dt(e) : dt(e) : lt(e);
22631
+ function gt(e) {
22632
+ return e.mapMode === j.ISOTROPIC ? pt(e) < 0 ? -ht(e) : ht(e) : pt(e);
22606
22633
  }
22607
- function pt(e) {
22608
- return e.mapMode === j.ISOTROPIC ? ut(e) < 0 ? -dt(e) : dt(e) : ut(e);
22634
+ function _t(e) {
22635
+ return e.mapMode === j.ISOTROPIC ? mt(e) < 0 ? -ht(e) : ht(e) : mt(e);
22609
22636
  }
22610
- function mt(e, t) {
22611
- return (t - e.winOrgX) * ft(e) + e.vpOrgX;
22637
+ function vt(e, t) {
22638
+ return (t - e.winOrgX) * gt(e) + e.vpOrgX;
22612
22639
  }
22613
- function ht(e, t) {
22614
- return (t - e.winOrgY) * pt(e) + e.vpOrgY;
22640
+ function yt(e, t) {
22641
+ return (t - e.winOrgY) * _t(e) + e.vpOrgY;
22615
22642
  }
22616
- function M(e, t, n) {
22617
- let r = mt(e, st(e, t, n)), i = ht(e, ct(e, t, n));
22643
+ function N(e, t, n) {
22644
+ let r = vt(e, dt(e, t, n)), i = yt(e, ft(e, t, n));
22618
22645
  return [(r - e.left) * e.W / e.boundsW, (i - e.top) * e.H / e.boundsH];
22619
22646
  }
22620
- function gt(e) {
22647
+ function bt(e) {
22621
22648
  return (Math.hypot(e.wt.m11, e.wt.m12) + Math.hypot(e.wt.m21, e.wt.m22)) / 2;
22622
22649
  }
22623
- function _t(e) {
22624
- return (Math.abs(ft(e)) + Math.abs(pt(e))) / 2;
22650
+ function xt(e) {
22651
+ return (Math.abs(gt(e)) + Math.abs(_t(e))) / 2;
22625
22652
  }
22626
- function vt(e) {
22653
+ function St(e) {
22627
22654
  return (e.W / e.boundsW + e.H / e.boundsH) / 2;
22628
22655
  }
22629
- function yt(e) {
22656
+ function Ct(e) {
22630
22657
  return Math.hypot(e.wt.m21, e.wt.m22);
22631
22658
  }
22632
- function bt(e) {
22659
+ function wt(e) {
22633
22660
  return e.H / e.boundsH;
22634
22661
  }
22635
- function N(e, t) {
22636
- let n = t * gt(e) * _t(e) * vt(e);
22662
+ function P(e, t) {
22663
+ let n = t * bt(e) * xt(e) * St(e);
22637
22664
  return Math.max(.75, n);
22638
22665
  }
22639
- function xt(e, t) {
22666
+ function Tt(e, t) {
22640
22667
  if (e.mapMode = t, t === j.TEXT) {
22641
22668
  e.winOrgX = 0, e.winOrgY = 0, e.vpOrgX = 0, e.vpOrgY = 0, e.winExtX = 1, e.winExtY = 1, e.vpExtX = 1, e.vpExtY = 1;
22642
22669
  return;
@@ -22645,7 +22672,7 @@ function xt(e, t) {
22645
22672
  let n = 25.4, r = t === j.LOMETRIC ? .1 : t === j.HIMETRIC ? .01 : t === j.LOENGLISH ? .01 * n : t === j.HIENGLISH ? .001 * n : t === j.TWIPS ? n / 1440 : 0;
22646
22673
  r <= 0 || (e.winOrgX = 0, e.winOrgY = 0, e.vpOrgX = 0, e.vpOrgY = 0, e.winExtX = 1, e.winExtY = 1, e.vpExtX = r * e.devPxPerMmX, e.vpExtY = -(r * e.devPxPerMmY));
22647
22674
  }
22648
- var St = {
22675
+ var Et = {
22649
22676
  [A.WHITE_BRUSH]: {
22650
22677
  kind: "brush",
22651
22678
  fill: "#ffffff"
@@ -22670,7 +22697,7 @@ var St = {
22670
22697
  kind: "brush",
22671
22698
  fill: null
22672
22699
  }
22673
- }, Ct = {
22700
+ }, Dt = {
22674
22701
  [A.WHITE_PEN]: {
22675
22702
  kind: "pen",
22676
22703
  stroke: "#ffffff",
@@ -22692,13 +22719,13 @@ var St = {
22692
22719
  width: 1
22693
22720
  }
22694
22721
  };
22695
- function wt(e, t) {
22696
- let n = St[t];
22722
+ function Ot(e, t) {
22723
+ let n = Et[t];
22697
22724
  if (n) {
22698
22725
  e.curBrush = n;
22699
22726
  return;
22700
22727
  }
22701
- let r = Ct[t];
22728
+ let r = Dt[t];
22702
22729
  if (r) {
22703
22730
  e.curPen = r;
22704
22731
  return;
@@ -22708,118 +22735,135 @@ function wt(e, t) {
22708
22735
  fill: "#000000"
22709
22736
  });
22710
22737
  }
22711
- function Tt(e) {
22738
+ function kt(e) {
22712
22739
  let t = 0, n = 0, r = 0, i = 0;
22713
22740
  for (let a = 0; a < e.data.length; a += 4) e.data[a + 3] !== 0 && (t += e.data[a], n += e.data[a + 1], r += e.data[a + 2], i++);
22714
22741
  if (i === 0) return "#808080";
22715
22742
  let a = (e) => Math.round(e / i).toString(16).padStart(2, "0");
22716
22743
  return `#${a(t)}${a(n)}${a(r)}`;
22717
22744
  }
22718
- var P = (e) => [e.i16(), e.i16()], F = (e) => [e.i32(), e.i32()];
22719
- function Et(e, t, n) {
22745
+ var F = (e) => [e.i16(), e.i16()], I = (e) => [e.i32(), e.i32()];
22746
+ function At(e, t, n) {
22720
22747
  t.skip(16);
22721
22748
  let r = t.u32();
22722
- if (r < 2 || r > 1048576 || !e.curPen || e.curPen.stroke == null) return;
22723
- let { ctx: i } = e;
22724
- i.beginPath();
22725
- let a = 0, o = 0;
22726
- for (let s = 0; s < r && !(t.remaining < 4); s++) {
22727
- let [r, c] = n(t), [l, u] = M(e, r, c);
22728
- s === 0 ? i.moveTo(l, u) : i.lineTo(l, u), a = r, o = c;
22749
+ if (r < 2 || r > 1048576 || !e.inPath && (!e.curPen || e.curPen.stroke == null)) return;
22750
+ let { ctx: i } = e, a = M(e, ut(t, r, n));
22751
+ e.inPath || i.beginPath();
22752
+ let o = 0, s = 0;
22753
+ for (let c = 0; c < r && !(t.remaining < 4); c++) {
22754
+ let [r, l] = n(t), [u, d] = N(e, r, l);
22755
+ a && (c === 0 ? i.moveTo(u, d) : i.lineTo(u, d)), o = r, s = l;
22729
22756
  }
22730
- i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0, e.curX = a, e.curY = o;
22757
+ !e.inPath && e.curPen?.stroke != null && (i.strokeStyle = e.curPen.stroke, i.lineWidth = P(e, e.curPen.width), i.stroke(), e.drew = !0), e.curX = o, e.curY = s;
22731
22758
  }
22732
- function Dt(e, t, n) {
22759
+ function jt(e, t, n) {
22733
22760
  t.skip(16);
22734
22761
  let r = t.u32();
22735
22762
  if (r < 1 || r > 1048576) return;
22736
- let { ctx: i } = e, a = e.curPen != null && e.curPen.stroke != null;
22737
- if (a) {
22763
+ let { ctx: i } = e, a = e.inPath || e.curPen != null && e.curPen.stroke != null, o = !e.inPath || M(e, ut(t, r, n));
22764
+ if (a && !e.inPath) {
22738
22765
  i.beginPath();
22739
- let [t, n] = M(e, e.curX, e.curY);
22766
+ let [t, n] = N(e, e.curX, e.curY);
22740
22767
  i.moveTo(t, n);
22741
22768
  }
22742
- for (let o = 0; o < r && !(t.remaining < 4); o++) {
22743
- let [r, o] = n(t);
22744
- if (a) {
22745
- let [t, n] = M(e, r, o);
22769
+ for (let s = 0; s < r && !(t.remaining < 4); s++) {
22770
+ let [r, s] = n(t);
22771
+ if (a && o) {
22772
+ let [t, n] = N(e, r, s);
22746
22773
  i.lineTo(t, n);
22747
22774
  }
22748
- e.curX = r, e.curY = o;
22775
+ e.curX = r, e.curY = s;
22749
22776
  }
22750
- a && e.curPen && (i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0);
22777
+ a && !e.inPath && e.curPen && (i.strokeStyle = e.curPen.stroke, i.lineWidth = P(e, e.curPen.width), i.stroke(), e.drew = !0);
22751
22778
  }
22752
- function Ot(e, t, n) {
22779
+ function Mt(e, t, n) {
22753
22780
  t.skip(16);
22754
22781
  let r = t.u32();
22755
22782
  if (r < 2 || r > 1048576) return;
22756
- let { ctx: i } = e;
22783
+ let { ctx: i } = e, a = M(e, ut(t, r, n) + 1);
22757
22784
  e.inPath || i.beginPath();
22758
- let a = !1;
22759
- for (let o = 0; o < r && !(t.remaining < 4); o++) {
22760
- let [r, o] = n(t), [s, c] = M(e, r, o);
22761
- a ? i.lineTo(s, c) : (i.moveTo(s, c), a = !0);
22785
+ let o = !1;
22786
+ for (let s = 0; s < r && !(t.remaining < 4); s++) {
22787
+ let [r, s] = n(t), [c, l] = N(e, r, s);
22788
+ o ? a && i.lineTo(c, l) : (a && i.moveTo(c, l), o = !0);
22762
22789
  }
22763
- a && (i.closePath(), !e.inPath && (e.curBrush && e.curBrush.fill != null && (i.fillStyle = e.curBrush.fill, i.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0)));
22790
+ o && (a && i.closePath(), !e.inPath && (e.curBrush && e.curBrush.fill != null && (i.fillStyle = e.curBrush.fill, i.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (i.strokeStyle = e.curPen.stroke, i.lineWidth = P(e, e.curPen.width), i.stroke(), e.drew = !0)));
22764
22791
  }
22765
- function kt(e, t, n, r) {
22792
+ function Nt(e, t, n, r) {
22766
22793
  t.skip(16);
22767
22794
  let i = t.u32();
22768
22795
  if (i < 1 || i > 1048576) return;
22769
- let a = [];
22770
- for (let e = 0; e < i && !(t.remaining < 4); e++) a.push(n(t));
22771
- if (a.length < (r ? 3 : 4)) {
22772
- a.length && (e.curX = a[a.length - 1][0], e.curY = a[a.length - 1][1]);
22796
+ let a = ut(t, i, n), o = !e.inPath || M(e, a);
22797
+ if (e.inPath && !o) {
22798
+ for (let r = 0; r < a; r++) {
22799
+ let [r, i] = n(t);
22800
+ e.curX = r, e.curY = i;
22801
+ }
22802
+ return;
22803
+ }
22804
+ let s = [];
22805
+ for (let e = 0; e < i && !(t.remaining < 4); e++) s.push(n(t));
22806
+ if (s.length < (r ? 3 : 4)) {
22807
+ s.length && (e.curX = s[s.length - 1][0], e.curY = s[s.length - 1][1]);
22773
22808
  return;
22774
22809
  }
22775
- let o = e.curPen != null && e.curPen.stroke != null, { ctx: s } = e;
22776
- if (o) {
22777
- s.beginPath();
22778
- let t = r ? M(e, e.curX, e.curY) : M(e, a[0][0], a[0][1]);
22779
- s.moveTo(t[0], t[1]);
22810
+ let c = e.inPath || e.curPen != null && e.curPen.stroke != null, { ctx: l } = e;
22811
+ if (c) {
22812
+ e.inPath || l.beginPath();
22813
+ let t = r ? N(e, e.curX, e.curY) : N(e, s[0][0], s[0][1]);
22814
+ (!r || !e.inPath) && l.moveTo(t[0], t[1]);
22780
22815
  }
22781
- let c = +!r;
22782
- for (; c + 2 < a.length + +!!r; c += 3) {
22783
- let t = a[c], n = a[c + 1], r = a[c + 2];
22816
+ let u = +!r;
22817
+ for (; u + 2 < s.length + +!!r; u += 3) {
22818
+ let t = s[u], n = s[u + 1], r = s[u + 2];
22784
22819
  if (!t || !n || !r) break;
22785
- if (o) {
22786
- let i = M(e, t[0], t[1]), a = M(e, n[0], n[1]), o = M(e, r[0], r[1]);
22787
- s.bezierCurveTo(i[0], i[1], a[0], a[1], o[0], o[1]);
22820
+ if (c) {
22821
+ let i = N(e, t[0], t[1]), a = N(e, n[0], n[1]), o = N(e, r[0], r[1]);
22822
+ l.bezierCurveTo(i[0], i[1], a[0], a[1], o[0], o[1]);
22788
22823
  }
22789
22824
  e.curX = r[0], e.curY = r[1];
22790
22825
  }
22791
- o && e.curPen && (s.strokeStyle = e.curPen.stroke, s.lineWidth = N(e, e.curPen.width), s.stroke(), e.drew = !0);
22826
+ c && !e.inPath && e.curPen && (l.strokeStyle = e.curPen.stroke, l.lineWidth = P(e, e.curPen.width), l.stroke(), e.drew = !0);
22792
22827
  }
22793
- function At(e, t, n, r) {
22828
+ function Pt(e, t, n, r) {
22794
22829
  t.skip(16);
22795
22830
  let i = t.u32(), a = t.u32();
22796
22831
  if (i <= 0 || i > 65536 || a <= 0 || a > 2097152) return;
22797
- let o = [];
22832
+ let o = [], s = 0;
22798
22833
  for (let e = 0; e < i; e++) {
22799
22834
  if (t.remaining < 4) return;
22800
- o.push(t.u32());
22835
+ let e = t.u32();
22836
+ if (s += e, !Number.isSafeInteger(s) || s > 2097152) return;
22837
+ o.push(e);
22801
22838
  }
22802
- let { ctx: s } = e;
22803
- e.inPath || s.beginPath();
22804
- let c = !1;
22839
+ if (s !== a) return;
22840
+ let { ctx: c } = e, l = M(e, ut(t, a, n) + (r ? i : 0));
22841
+ e.inPath || c.beginPath();
22842
+ let u = !1;
22805
22843
  for (let i of o) {
22806
22844
  if (i < 2) {
22807
22845
  for (let e = 0; e < i && t.remaining >= 4; e++) n(t);
22808
22846
  continue;
22809
22847
  }
22810
22848
  for (let r = 0; r < i && !(t.remaining < 4); r++) {
22811
- let [i, a] = n(t), [o, c] = M(e, i, a);
22812
- r === 0 ? s.moveTo(o, c) : s.lineTo(o, c);
22849
+ let [i, a] = n(t);
22850
+ if (l) {
22851
+ let [t, n] = N(e, i, a);
22852
+ r === 0 ? c.moveTo(t, n) : c.lineTo(t, n);
22853
+ }
22813
22854
  }
22814
- r && s.closePath(), c = !0;
22855
+ r && l && c.closePath(), u = !0;
22815
22856
  }
22816
- !c || e.inPath || (r && e.curBrush && e.curBrush.fill != null && (s.fillStyle = e.curBrush.fill, s.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (s.strokeStyle = e.curPen.stroke, s.lineWidth = N(e, e.curPen.width), s.stroke(), e.drew = !0));
22857
+ !u || e.inPath || (r && e.curBrush && e.curBrush.fill != null && (c.fillStyle = e.curBrush.fill, c.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (c.strokeStyle = e.curPen.stroke, c.lineWidth = P(e, e.curPen.width), c.stroke(), e.drew = !0));
22817
22858
  }
22818
- function jt(e, t, n, r, i) {
22819
- let { ctx: a } = e, o = M(e, t, n), s = M(e, r, n), c = M(e, r, i), l = M(e, t, i);
22820
- e.inPath || a.beginPath(), a.moveTo(o[0], o[1]), a.lineTo(s[0], s[1]), a.lineTo(c[0], c[1]), a.lineTo(l[0], l[1]), a.closePath(), !e.inPath && (e.curBrush && e.curBrush.fill != null && (a.fillStyle = e.curBrush.fill, a.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (a.strokeStyle = e.curPen.stroke, a.lineWidth = N(e, e.curPen.width), a.stroke(), e.drew = !0));
22859
+ function Ft(e, t, n, r, i) {
22860
+ let { ctx: a } = e, o = N(e, t, n), s = N(e, r, n), c = N(e, r, i), l = N(e, t, i), u = M(e, 5);
22861
+ e.inPath || a.beginPath(), u && (a.moveTo(o[0], o[1]), a.lineTo(s[0], s[1]), a.lineTo(c[0], c[1]), a.lineTo(l[0], l[1]), a.closePath()), !e.inPath && (e.curBrush && e.curBrush.fill != null && (a.fillStyle = e.curBrush.fill, a.fill(e.fillRule), e.drew = !0), e.curPen && e.curPen.stroke != null && (a.strokeStyle = e.curPen.stroke, a.lineWidth = P(e, e.curPen.width), a.stroke(), e.drew = !0));
22821
22862
  }
22822
- function Mt(t) {
22863
+ function It(e, t, n) {
22864
+ !e.pathDiscarded && t && e.curBrush?.fill != null && (e.ctx.fillStyle = e.curBrush.fill, e.ctx.fill(e.fillRule), e.drew = !0), !e.pathDiscarded && n && e.curPen?.stroke != null && (e.ctx.strokeStyle = e.curPen.stroke, e.ctx.lineWidth = P(e, e.curPen.width), e.ctx.stroke(), e.drew = !0), e.ctx.beginPath(), e.pathCommandCount = 0, e.pathDiscarded = !1;
22865
+ }
22866
+ function Lt(t) {
22823
22867
  let n = t.u32(), r = t.u32(), i = t.i32();
22824
22868
  t.i32();
22825
22869
  let a = t.u32();
@@ -22829,7 +22873,7 @@ function Mt(t) {
22829
22873
  width: Math.abs(i)
22830
22874
  }];
22831
22875
  }
22832
- function Nt(t) {
22876
+ function Rt(t) {
22833
22877
  let n = t.u32();
22834
22878
  t.skip(16);
22835
22879
  let r = t.u32(), i = t.u32();
@@ -22841,27 +22885,27 @@ function Nt(t) {
22841
22885
  width: Math.abs(i)
22842
22886
  }];
22843
22887
  }
22844
- function Pt(t) {
22888
+ function zt(t) {
22845
22889
  let n = t.u32(), r = t.u32(), i = t.u32();
22846
22890
  return t.u32(), [n, {
22847
22891
  kind: "brush",
22848
22892
  fill: r === 1 ? null : e(i)
22849
22893
  }];
22850
22894
  }
22851
- function Ft(e, t, n) {
22895
+ function Bt(e, t, n) {
22852
22896
  let r = e.u32();
22853
22897
  e.u32();
22854
22898
  let i = e.u32(), o = e.u32(), s = e.u32(), c = e.u32(), l = "#808080";
22855
22899
  try {
22856
22900
  let e = a(t, n + i, o, n + s, c);
22857
- e && (l = Tt(e));
22901
+ e && (l = kt(e));
22858
22902
  } catch {}
22859
22903
  return [r, {
22860
22904
  kind: "brush",
22861
22905
  fill: l
22862
22906
  }];
22863
22907
  }
22864
- function It(e, t, n) {
22908
+ function Vt(e, t, n) {
22865
22909
  let r = e.u32(), i = n + 12, a = t.getInt32(i, !0), o = t.getInt32(i + 8, !0), s = t.getInt32(i + 16, !0), c = t.getUint8(i + 20), l = "";
22866
22910
  for (let e = 0; e < 32; e++) {
22867
22911
  let n = i + 28 + e * 2;
@@ -22879,7 +22923,7 @@ function It(e, t, n) {
22879
22923
  escapement: o
22880
22924
  }];
22881
22925
  }
22882
- function Lt(e, t, n, r) {
22926
+ function Ht(e, t, n, r) {
22883
22927
  t.skip(16), t.u32(), t.f32(), t.f32();
22884
22928
  let i = t.i32(), a = t.i32(), o = t.u32(), s = t.u32();
22885
22929
  if (t.u32(), o <= 0 || o > 65536) return;
@@ -22890,9 +22934,9 @@ function Lt(e, t, n, r) {
22890
22934
  c += String.fromCharCode(n.getUint16(t, !0));
22891
22935
  }
22892
22936
  if (c.length === 0) return;
22893
- let l = e.curFont, u = Math.abs(l?.height ?? 0) * yt(e) * Math.abs(pt(e)) * bt(e);
22937
+ let l = e.curFont, u = Math.abs(l?.height ?? 0) * Ct(e) * Math.abs(_t(e)) * wt(e);
22894
22938
  if (!Number.isFinite(u) || u < 1) return;
22895
- let { ctx: d } = e, [f, p] = M(e, i, a);
22939
+ let { ctx: d } = e, [f, p] = N(e, i, a);
22896
22940
  d.fillStyle = e.textColor;
22897
22941
  let m = l && l.weight >= 700 ? "bold " : "";
22898
22942
  d.font = `${l?.italic ? "italic " : ""}${m}${u}px ${l?.face || "sans-serif"}`;
@@ -22911,30 +22955,30 @@ function Lt(e, t, n, r) {
22911
22955
  e.drew = !0;
22912
22956
  } catch {}
22913
22957
  }
22914
- function Rt(e, t, n, r, i, s, c, l, u, d, f) {
22958
+ function Ut(e, t, n, r, i, s, c, l, u, d, f) {
22915
22959
  if (i === 0 || c === 0) return;
22916
22960
  let p = a(t, n + r, i, n + s, c);
22917
22961
  if (!p) return;
22918
- let [m, h] = M(e, l, u), [g, _] = M(e, d, f);
22962
+ let [m, h] = N(e, l, u), [g, _] = N(e, d, f);
22919
22963
  o(e.ctx, p, m, h, g, _) && (e.drew = !0);
22920
22964
  }
22921
- function zt(e, t, n, r) {
22965
+ function Wt(e, t, n, r) {
22922
22966
  t.skip(16);
22923
22967
  let i = t.i32(), a = t.i32(), o = t.i32(), s = t.i32();
22924
- t.u32(), t.i32(), t.i32(), t.skip(24), t.u32(), t.u32(), Rt(e, n, r, t.u32(), t.u32(), t.u32(), t.u32(), i, a, i + o, a + s);
22968
+ t.u32(), t.i32(), t.i32(), t.skip(24), t.u32(), t.u32(), Ut(e, n, r, t.u32(), t.u32(), t.u32(), t.u32(), i, a, i + o, a + s);
22925
22969
  }
22926
- function Bt(e, t, n, r) {
22970
+ function Gt(e, t, n, r) {
22927
22971
  t.skip(16);
22928
22972
  let i = t.i32(), a = t.i32();
22929
22973
  t.i32(), t.i32(), t.i32(), t.i32();
22930
22974
  let o = t.u32(), s = t.u32(), c = t.u32(), l = t.u32();
22931
22975
  t.u32(), t.u32();
22932
22976
  let u = t.i32(), d = t.i32();
22933
- Rt(e, n, r, o, s, c, l, i, a, i + u, a + d);
22977
+ Ut(e, n, r, o, s, c, l, i, a, i + u, a + d);
22934
22978
  }
22935
- function Vt(t, n, r, a) {
22979
+ function Kt(t, n, r, a, o = {}) {
22936
22980
  if (!i(t) || r <= 0 || a <= 0) return !1;
22937
- let o = new DataView(t.buffer, t.byteOffset, t.byteLength), s = {
22981
+ let s = new DataView(t.buffer, t.byteOffset, t.byteLength), c = {
22938
22982
  ctx: n,
22939
22983
  W: r,
22940
22984
  H: a,
@@ -22942,7 +22986,7 @@ function Vt(t, n, r, a) {
22942
22986
  top: 0,
22943
22987
  boundsW: r,
22944
22988
  boundsH: a,
22945
- wt: it(),
22989
+ wt: ot(),
22946
22990
  mapMode: j.TEXT,
22947
22991
  winOrgX: 0,
22948
22992
  winOrgY: 0,
@@ -22966,292 +23010,311 @@ function Vt(t, n, r, a) {
22966
23010
  curY: 0,
22967
23011
  stack: [],
22968
23012
  drew: !1,
22969
- inPath: !1
22970
- }, c = 0;
22971
- for (; c + 8 <= t.length;) {
22972
- let r = o.getUint32(c, !0), i = o.getUint32(c + 4, !0);
23013
+ inPath: !1,
23014
+ pathCommandCount: 0,
23015
+ pathDiscarded: !1,
23016
+ maxPathCommands: Number.isSafeInteger(o.maxPathCommands) && o.maxPathCommands > 0 ? Math.min(o.maxPathCommands, lt) : lt
23017
+ }, l = 0;
23018
+ for (; l + 8 <= t.length;) {
23019
+ let r = s.getUint32(l, !0), i = s.getUint32(l + 4, !0);
22973
23020
  if (i < 8 || i & 3) break;
22974
- let a = c + i;
23021
+ let a = l + i;
22975
23022
  if (a > t.length || r === k.EOF) break;
22976
- let l = new ot(o, c + 8, a);
23023
+ let o = new ct(s, l + 8, a);
22977
23024
  try {
22978
23025
  switch (r) {
22979
23026
  case k.HEADER: {
22980
- let e = o.getInt32(c + 8, !0), t = o.getInt32(c + 12, !0), n = o.getInt32(c + 16, !0), r = o.getInt32(c + 20, !0);
22981
- if (s.left = e, s.top = t, s.boundsW = Math.max(1, n - e), s.boundsH = Math.max(1, r - t), a >= c + 88) {
22982
- let e = o.getInt32(c + 24, !0), t = o.getInt32(c + 28, !0), n = o.getInt32(c + 32, !0), r = o.getInt32(c + 36, !0), i = o.getInt32(c + 72, !0), a = o.getInt32(c + 76, !0), l = o.getInt32(c + 80, !0), u = o.getInt32(c + 84, !0), d = n - e, f = r - t;
22983
- if (d > 0 && f > 0 && i > 0 && a > 0 && l > 0 && u > 0) {
22984
- let n = i / (l * 100), r = a / (u * 100);
22985
- s.left = e * n, s.top = t * r, s.boundsW = Math.max(1, d * n), s.boundsH = Math.max(1, f * r), s.devPxPerMmX = i / l, s.devPxPerMmY = a / u;
23027
+ let e = s.getInt32(l + 8, !0), t = s.getInt32(l + 12, !0), n = s.getInt32(l + 16, !0), r = s.getInt32(l + 20, !0);
23028
+ if (c.left = e, c.top = t, c.boundsW = Math.max(1, n - e), c.boundsH = Math.max(1, r - t), a >= l + 88) {
23029
+ let e = s.getInt32(l + 24, !0), t = s.getInt32(l + 28, !0), n = s.getInt32(l + 32, !0), r = s.getInt32(l + 36, !0), i = s.getInt32(l + 72, !0), a = s.getInt32(l + 76, !0), o = s.getInt32(l + 80, !0), u = s.getInt32(l + 84, !0), d = n - e, f = r - t;
23030
+ if (d > 0 && f > 0 && i > 0 && a > 0 && o > 0 && u > 0) {
23031
+ let n = i / (o * 100), r = a / (u * 100);
23032
+ c.left = e * n, c.top = t * r, c.boundsW = Math.max(1, d * n), c.boundsH = Math.max(1, f * r), c.devPxPerMmX = i / o, c.devPxPerMmY = a / u;
22986
23033
  }
22987
23034
  }
22988
23035
  break;
22989
23036
  }
22990
23037
  case k.SETWORLDTRANSFORM:
22991
- s.wt = l.xform();
23038
+ c.wt = o.xform();
22992
23039
  break;
22993
23040
  case k.MODIFYWORLDTRANSFORM: {
22994
- let e = l.xform(), t = l.u32();
22995
- t === 1 ? s.wt = it() : t === 2 ? s.wt = at(e, s.wt) : t === 3 ? s.wt = at(s.wt, e) : t === 4 && (s.wt = e);
23041
+ let e = o.xform(), t = o.u32();
23042
+ t === 1 ? c.wt = ot() : t === 2 ? c.wt = st(e, c.wt) : t === 3 ? c.wt = st(c.wt, e) : t === 4 && (c.wt = e);
22996
23043
  break;
22997
23044
  }
22998
23045
  case k.SETMAPMODE:
22999
- xt(s, l.u32());
23046
+ Tt(c, o.u32());
23000
23047
  break;
23001
23048
  case k.SETWINDOWORGEX:
23002
- s.winOrgX = l.i32(), s.winOrgY = l.i32();
23049
+ c.winOrgX = o.i32(), c.winOrgY = o.i32();
23003
23050
  break;
23004
23051
  case k.SETWINDOWEXTEX: {
23005
- let e = l.i32(), t = l.i32();
23006
- e !== 0 && (s.winExtX = e), t !== 0 && (s.winExtY = t);
23052
+ let e = o.i32(), t = o.i32();
23053
+ e !== 0 && (c.winExtX = e), t !== 0 && (c.winExtY = t);
23007
23054
  break;
23008
23055
  }
23009
23056
  case k.SETVIEWPORTORGEX:
23010
- s.vpOrgX = l.i32(), s.vpOrgY = l.i32();
23057
+ c.vpOrgX = o.i32(), c.vpOrgY = o.i32();
23011
23058
  break;
23012
23059
  case k.SETVIEWPORTEXTEX: {
23013
- let e = l.i32(), t = l.i32();
23014
- e !== 0 && (s.vpExtX = e), t !== 0 && (s.vpExtY = t);
23060
+ let e = o.i32(), t = o.i32();
23061
+ e !== 0 && (c.vpExtX = e), t !== 0 && (c.vpExtY = t);
23015
23062
  break;
23016
23063
  }
23017
23064
  case k.SCALEWINDOWEXTEX: {
23018
- let e = l.i32(), t = l.i32(), n = l.i32(), r = l.i32();
23019
- t !== 0 && (s.winExtX = s.winExtX * e / t), r !== 0 && (s.winExtY = s.winExtY * n / r);
23065
+ let e = o.i32(), t = o.i32(), n = o.i32(), r = o.i32();
23066
+ t !== 0 && (c.winExtX = c.winExtX * e / t), r !== 0 && (c.winExtY = c.winExtY * n / r);
23020
23067
  break;
23021
23068
  }
23022
23069
  case k.SCALEVIEWPORTEXTEX: {
23023
- let e = l.i32(), t = l.i32(), n = l.i32(), r = l.i32();
23024
- t !== 0 && (s.vpExtX = s.vpExtX * e / t), r !== 0 && (s.vpExtY = s.vpExtY * n / r);
23070
+ let e = o.i32(), t = o.i32(), n = o.i32(), r = o.i32();
23071
+ t !== 0 && (c.vpExtX = c.vpExtX * e / t), r !== 0 && (c.vpExtY = c.vpExtY * n / r);
23025
23072
  break;
23026
23073
  }
23027
23074
  case k.SAVEDC:
23028
- s.ctx.save(), s.stack.push({
23029
- wt: { ...s.wt },
23030
- mapMode: s.mapMode,
23031
- winOrgX: s.winOrgX,
23032
- winOrgY: s.winOrgY,
23033
- winExtX: s.winExtX,
23034
- winExtY: s.winExtY,
23035
- vpOrgX: s.vpOrgX,
23036
- vpOrgY: s.vpOrgY,
23037
- vpExtX: s.vpExtX,
23038
- vpExtY: s.vpExtY,
23039
- curPen: s.curPen,
23040
- curBrush: s.curBrush,
23041
- curFont: s.curFont,
23042
- textColor: s.textColor,
23043
- bkMode: s.bkMode,
23044
- textAlign: s.textAlign,
23045
- fillRule: s.fillRule,
23046
- curX: s.curX,
23047
- curY: s.curY
23075
+ c.ctx.save(), c.stack.push({
23076
+ wt: { ...c.wt },
23077
+ mapMode: c.mapMode,
23078
+ winOrgX: c.winOrgX,
23079
+ winOrgY: c.winOrgY,
23080
+ winExtX: c.winExtX,
23081
+ winExtY: c.winExtY,
23082
+ vpOrgX: c.vpOrgX,
23083
+ vpOrgY: c.vpOrgY,
23084
+ vpExtX: c.vpExtX,
23085
+ vpExtY: c.vpExtY,
23086
+ curPen: c.curPen,
23087
+ curBrush: c.curBrush,
23088
+ curFont: c.curFont,
23089
+ textColor: c.textColor,
23090
+ bkMode: c.bkMode,
23091
+ textAlign: c.textAlign,
23092
+ fillRule: c.fillRule,
23093
+ curX: c.curX,
23094
+ curY: c.curY
23048
23095
  });
23049
23096
  break;
23050
23097
  case k.RESTOREDC: {
23051
- let e = l.i32(), t = Math.min(Math.abs(e) || 1, s.stack.length), n;
23052
- for (let e = 0; e < t; e++) n = s.stack.pop(), s.ctx.restore();
23053
- n && (s.wt = n.wt, s.mapMode = n.mapMode, s.winOrgX = n.winOrgX, s.winOrgY = n.winOrgY, s.winExtX = n.winExtX, s.winExtY = n.winExtY, s.vpOrgX = n.vpOrgX, s.vpOrgY = n.vpOrgY, s.vpExtX = n.vpExtX, s.vpExtY = n.vpExtY, s.curPen = n.curPen, s.curBrush = n.curBrush, s.curFont = n.curFont, s.textColor = n.textColor, s.bkMode = n.bkMode, s.textAlign = n.textAlign, s.fillRule = n.fillRule, s.curX = n.curX, s.curY = n.curY);
23098
+ let e = o.i32(), t = Math.min(Math.abs(e) || 1, c.stack.length), n;
23099
+ for (let e = 0; e < t; e++) n = c.stack.pop(), c.ctx.restore();
23100
+ n && (c.wt = n.wt, c.mapMode = n.mapMode, c.winOrgX = n.winOrgX, c.winOrgY = n.winOrgY, c.winExtX = n.winExtX, c.winExtY = n.winExtY, c.vpOrgX = n.vpOrgX, c.vpOrgY = n.vpOrgY, c.vpExtX = n.vpExtX, c.vpExtY = n.vpExtY, c.curPen = n.curPen, c.curBrush = n.curBrush, c.curFont = n.curFont, c.textColor = n.textColor, c.bkMode = n.bkMode, c.textAlign = n.textAlign, c.fillRule = n.fillRule, c.curX = n.curX, c.curY = n.curY);
23054
23101
  break;
23055
23102
  }
23056
23103
  case k.BEGINPATH:
23057
- s.ctx.beginPath(), s.inPath = !0;
23104
+ c.ctx.beginPath(), c.inPath = !0, c.pathCommandCount = 0, c.pathDiscarded = !1;
23058
23105
  break;
23059
23106
  case k.CLOSEFIGURE:
23060
- s.inPath && s.ctx.closePath();
23107
+ c.inPath && M(c, 1) && c.ctx.closePath();
23061
23108
  break;
23062
23109
  case k.ENDPATH:
23063
- s.inPath = !1;
23110
+ c.inPath = !1;
23111
+ break;
23112
+ case k.FILLPATH:
23113
+ It(c, !0, !1);
23114
+ break;
23115
+ case k.STROKEANDFILLPATH:
23116
+ It(c, !0, !0);
23117
+ break;
23118
+ case k.STROKEPATH:
23119
+ It(c, !1, !0);
23064
23120
  break;
23065
23121
  case k.SELECTCLIPPATH:
23066
- try {
23067
- s.ctx.clip(s.fillRule);
23122
+ if (!c.pathDiscarded) try {
23123
+ c.ctx.clip(c.fillRule);
23068
23124
  } catch {}
23125
+ c.pathCommandCount = 0, c.pathDiscarded = !1;
23069
23126
  break;
23070
23127
  case k.SELECTOBJECT: {
23071
- let e = l.u32();
23072
- if (e & 2147483648) wt(s, e >>> 0);
23128
+ let e = o.u32();
23129
+ if (e & 2147483648) Ot(c, e >>> 0);
23073
23130
  else {
23074
- let t = s.objects.get(e);
23075
- t?.kind === "pen" ? s.curPen = t : t?.kind === "brush" ? s.curBrush = t : t?.kind === "font" && (s.curFont = t);
23131
+ let t = c.objects.get(e);
23132
+ t?.kind === "pen" ? c.curPen = t : t?.kind === "brush" ? c.curBrush = t : t?.kind === "font" && (c.curFont = t);
23076
23133
  }
23077
23134
  break;
23078
23135
  }
23079
23136
  case k.DELETEOBJECT: {
23080
- let e = l.u32(), t = s.objects.get(e);
23081
- t && (t === s.curPen && (s.curPen = null), t === s.curBrush && (s.curBrush = null), t === s.curFont && (s.curFont = null), s.objects.delete(e));
23137
+ let e = o.u32(), t = c.objects.get(e);
23138
+ t && (t === c.curPen && (c.curPen = null), t === c.curBrush && (c.curBrush = null), t === c.curFont && (c.curFont = null), c.objects.delete(e));
23082
23139
  break;
23083
23140
  }
23084
23141
  case k.CREATEPEN: {
23085
- let [e, t] = Mt(l);
23086
- s.objects.set(e, t);
23142
+ let [e, t] = Lt(o);
23143
+ c.objects.set(e, t);
23087
23144
  break;
23088
23145
  }
23089
23146
  case k.EXTCREATEPEN: {
23090
- let [e, t] = Nt(l);
23091
- s.objects.set(e, t);
23147
+ let [e, t] = Rt(o);
23148
+ c.objects.set(e, t);
23092
23149
  break;
23093
23150
  }
23094
23151
  case k.CREATEBRUSHINDIRECT: {
23095
- let [e, t] = Pt(l);
23096
- s.objects.set(e, t);
23152
+ let [e, t] = zt(o);
23153
+ c.objects.set(e, t);
23097
23154
  break;
23098
23155
  }
23099
23156
  case k.CREATEMONOBRUSH:
23100
23157
  case k.CREATEDIBPATTERNBRUSHPT: {
23101
- let [e, t] = Ft(l, o, c);
23102
- s.objects.set(e, t);
23158
+ let [e, t] = Bt(o, s, l);
23159
+ c.objects.set(e, t);
23103
23160
  break;
23104
23161
  }
23105
23162
  case k.EXTCREATEFONTINDIRECTW: {
23106
- let [e, t] = It(l, o, c);
23107
- s.objects.set(e, t);
23163
+ let [e, t] = Vt(o, s, l);
23164
+ c.objects.set(e, t);
23108
23165
  break;
23109
23166
  }
23110
23167
  case k.POLYLINE16:
23111
- Et(s, l, P);
23168
+ At(c, o, F);
23112
23169
  break;
23113
23170
  case k.POLYLINE:
23114
- Et(s, l, F);
23171
+ At(c, o, I);
23115
23172
  break;
23116
23173
  case k.POLYLINETO16:
23117
- Dt(s, l, P);
23174
+ jt(c, o, F);
23118
23175
  break;
23119
23176
  case k.POLYLINETO:
23120
- Dt(s, l, F);
23177
+ jt(c, o, I);
23121
23178
  break;
23122
23179
  case k.POLYGON16:
23123
- Ot(s, l, P);
23180
+ Mt(c, o, F);
23124
23181
  break;
23125
23182
  case k.POLYGON:
23126
- Ot(s, l, F);
23183
+ Mt(c, o, I);
23127
23184
  break;
23128
23185
  case k.POLYBEZIER16:
23129
- kt(s, l, P, !1);
23186
+ Nt(c, o, F, !1);
23130
23187
  break;
23131
23188
  case k.POLYBEZIER:
23132
- kt(s, l, F, !1);
23189
+ Nt(c, o, I, !1);
23133
23190
  break;
23134
23191
  case k.POLYBEZIERTO16:
23135
- kt(s, l, P, !0);
23192
+ Nt(c, o, F, !0);
23136
23193
  break;
23137
23194
  case k.POLYBEZIERTO:
23138
- kt(s, l, F, !0);
23195
+ Nt(c, o, I, !0);
23139
23196
  break;
23140
23197
  case k.POLYPOLYGON16:
23141
- At(s, l, P, !0);
23198
+ Pt(c, o, F, !0);
23142
23199
  break;
23143
23200
  case k.POLYPOLYGON:
23144
- At(s, l, F, !0);
23201
+ Pt(c, o, I, !0);
23145
23202
  break;
23146
23203
  case k.POLYPOLYLINE16:
23147
- At(s, l, P, !1);
23204
+ Pt(c, o, F, !1);
23148
23205
  break;
23149
23206
  case k.POLYPOLYLINE:
23150
- At(s, l, F, !1);
23207
+ Pt(c, o, I, !1);
23151
23208
  break;
23152
23209
  case k.MOVETOEX:
23153
- s.curX = l.i32(), s.curY = l.i32();
23210
+ if (c.curX = o.i32(), c.curY = o.i32(), c.inPath && M(c, 1)) {
23211
+ let [e, t] = N(c, c.curX, c.curY);
23212
+ c.ctx.moveTo(e, t);
23213
+ }
23154
23214
  break;
23155
23215
  case k.LINETO: {
23156
- let e = l.i32(), t = l.i32();
23157
- if (s.curPen && s.curPen.stroke != null) {
23158
- let [r, i] = M(s, s.curX, s.curY), [a, o] = M(s, e, t);
23159
- n.beginPath(), n.moveTo(r, i), n.lineTo(a, o), n.strokeStyle = s.curPen.stroke, n.lineWidth = N(s, s.curPen.width), n.stroke(), s.drew = !0;
23216
+ let e = o.i32(), t = o.i32();
23217
+ if (c.inPath && M(c, 1)) {
23218
+ let [n, r] = N(c, e, t);
23219
+ c.ctx.lineTo(n, r);
23220
+ } else if (c.curPen && c.curPen.stroke != null) {
23221
+ let [n, r] = N(c, c.curX, c.curY), [i, a] = N(c, e, t);
23222
+ c.ctx.beginPath(), c.ctx.moveTo(n, r), c.ctx.lineTo(i, a), c.ctx.strokeStyle = c.curPen.stroke, c.ctx.lineWidth = P(c, c.curPen.width), c.ctx.stroke(), c.drew = !0;
23160
23223
  }
23161
- s.curX = e, s.curY = t;
23224
+ c.curX = e, c.curY = t;
23162
23225
  break;
23163
23226
  }
23164
23227
  case k.RECTANGLE:
23165
- jt(s, l.i32(), l.i32(), l.i32(), l.i32());
23228
+ Ft(c, o.i32(), o.i32(), o.i32(), o.i32());
23166
23229
  break;
23167
23230
  case k.ELLIPSE: {
23168
- let e = l.i32(), t = l.i32(), r = l.i32(), i = l.i32(), [a, o] = [(e + r) / 2, (t + i) / 2], [c, u] = M(s, a, o), [d] = M(s, r, o), [, f] = M(s, a, i), p = Math.abs(d - c), m = Math.abs(f - u);
23169
- n.beginPath(), n.ellipse(c, u, p, m, 0, 0, Math.PI * 2), s.curBrush && s.curBrush.fill != null && (n.fillStyle = s.curBrush.fill, n.fill(s.fillRule), s.drew = !0), s.curPen && s.curPen.stroke != null && (n.strokeStyle = s.curPen.stroke, n.lineWidth = N(s, s.curPen.width), n.stroke(), s.drew = !0);
23231
+ let e = o.i32(), t = o.i32(), r = o.i32(), i = o.i32(), [a, s] = [(e + r) / 2, (t + i) / 2], [l, u] = N(c, a, s), [d] = N(c, r, s), [, f] = N(c, a, i), p = Math.abs(d - l), m = Math.abs(f - u);
23232
+ n.beginPath(), n.ellipse(l, u, p, m, 0, 0, Math.PI * 2), c.curBrush && c.curBrush.fill != null && (n.fillStyle = c.curBrush.fill, n.fill(c.fillRule), c.drew = !0), c.curPen && c.curPen.stroke != null && (n.strokeStyle = c.curPen.stroke, n.lineWidth = P(c, c.curPen.width), n.stroke(), c.drew = !0);
23170
23233
  break;
23171
23234
  }
23172
23235
  case k.SETPOLYFILLMODE:
23173
- s.fillRule = l.u32() === 1 ? "evenodd" : "nonzero";
23236
+ c.fillRule = o.u32() === 1 ? "evenodd" : "nonzero";
23174
23237
  break;
23175
23238
  case k.SETTEXTCOLOR:
23176
- s.textColor = e(l.u32());
23239
+ c.textColor = e(o.u32());
23177
23240
  break;
23178
23241
  case k.SETTEXTALIGN:
23179
- s.textAlign = l.u32();
23242
+ c.textAlign = o.u32();
23180
23243
  break;
23181
23244
  case k.SETBKMODE:
23182
- s.bkMode = l.u32();
23245
+ c.bkMode = o.u32();
23183
23246
  break;
23184
23247
  case k.EXTTEXTOUTW:
23185
- Lt(s, l, o, c);
23248
+ Ht(c, o, s, l);
23186
23249
  break;
23187
23250
  case k.BITBLT:
23188
- zt(s, l, o, c);
23251
+ Wt(c, o, s, l);
23189
23252
  break;
23190
23253
  case k.STRETCHDIBITS:
23191
- Bt(s, l, o, c);
23254
+ Gt(c, o, s, l);
23192
23255
  break;
23193
23256
  default: break;
23194
23257
  }
23195
23258
  } catch {}
23196
- c = a;
23259
+ l = a;
23197
23260
  }
23198
- return s.drew;
23261
+ return c.drew;
23199
23262
  }
23200
- async function Ht(e, t, n) {
23263
+ async function qt(e, t, n) {
23201
23264
  if (!i(e) || t <= 0 || n <= 0) return null;
23202
23265
  let a = r(t, n);
23203
23266
  if (!a) return null;
23204
23267
  let o = a.getContext("2d");
23205
- return !o || (o.lineJoin = "round", o.lineCap = "round", !Vt(e, o, t, n)) ? null : createImageBitmap(a);
23268
+ return !o || (o.lineJoin = "round", o.lineCap = "round", !Kt(e, o, t, n)) ? null : createImageBitmap(a);
23206
23269
  }
23207
23270
  //#endregion
23208
23271
  //#region packages/core/src/image/image-bitmap-lifecycle.ts
23209
- function Ut(e) {
23272
+ function Jt(e) {
23210
23273
  let t = e.close;
23211
23274
  typeof t == "function" && t.call(e);
23212
23275
  }
23213
23276
  //#endregion
23214
23277
  //#region packages/core/src/image/raster-dimensions.ts
23215
- function Wt(e, t) {
23278
+ function Yt(e, t) {
23216
23279
  return e[t] << 8 | e[t + 1];
23217
23280
  }
23218
- function Gt(e, t) {
23281
+ function Xt(e, t) {
23219
23282
  return (e[t] << 24 | e[t + 1] << 16 | e[t + 2] << 8 | e[t + 3]) >>> 0;
23220
23283
  }
23221
- function Kt(e, t) {
23284
+ function Zt(e, t) {
23222
23285
  return e[t] | e[t + 1] << 8;
23223
23286
  }
23224
- function qt(e, t) {
23287
+ function Qt(e, t) {
23225
23288
  return e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24 | 0;
23226
23289
  }
23227
- function Jt(e) {
23290
+ function $t(e) {
23228
23291
  let t = e.length;
23229
23292
  return t >= 24 && e[0] === 137 && e[1] === 80 && e[2] === 78 && e[3] === 71 && e[4] === 13 && e[5] === 10 && e[6] === 26 && e[7] === 10 ? e[12] === 73 && e[13] === 72 && e[14] === 68 && e[15] === 82 ? {
23230
- width: Gt(e, 16),
23231
- height: Gt(e, 20)
23293
+ width: Xt(e, 16),
23294
+ height: Xt(e, 20)
23232
23295
  } : null : t >= 10 && e[0] === 71 && e[1] === 73 && e[2] === 70 && e[3] === 56 && (e[4] === 55 || e[4] === 57) && e[5] === 97 ? {
23233
- width: Kt(e, 6),
23234
- height: Kt(e, 8)
23235
- } : t >= 26 && e[0] === 66 && e[1] === 77 ? Yt(e, 14) === 12 ? {
23236
- width: Kt(e, 18),
23237
- height: Kt(e, 20)
23296
+ width: Zt(e, 6),
23297
+ height: Zt(e, 8)
23298
+ } : t >= 26 && e[0] === 66 && e[1] === 77 ? en(e, 14) === 12 ? {
23299
+ width: Zt(e, 18),
23300
+ height: Zt(e, 20)
23238
23301
  } : {
23239
- width: Math.abs(qt(e, 18)),
23240
- height: Math.abs(qt(e, 22))
23241
- } : t >= 16 && e[0] === 82 && e[1] === 73 && e[2] === 70 && e[3] === 70 && e[8] === 87 && e[9] === 69 && e[10] === 66 && e[11] === 80 ? Xt(e) : t >= 4 && e[0] === 255 && e[1] === 216 ? $t(e) : t >= 4 && (e[0] === 73 && e[1] === 73 || e[0] === 77 && e[1] === 77) ? y(e) : null;
23302
+ width: Math.abs(Qt(e, 18)),
23303
+ height: Math.abs(Qt(e, 22))
23304
+ } : t >= 16 && e[0] === 82 && e[1] === 73 && e[2] === 70 && e[3] === 70 && e[8] === 87 && e[9] === 69 && e[10] === 66 && e[11] === 80 ? tn(e) : t >= 4 && e[0] === 255 && e[1] === 216 ? an(e) : t >= 4 && (e[0] === 73 && e[1] === 73 || e[0] === 77 && e[1] === 77) ? y(e) : null;
23242
23305
  }
23243
- function Yt(e, t) {
23306
+ function en(e, t) {
23244
23307
  return (e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24) >>> 0;
23245
23308
  }
23246
- function Xt(e) {
23309
+ function tn(e) {
23247
23310
  let t = e.length, n = e[12], r = e[13], i = e[14], a = e[15];
23248
23311
  if (n === 86 && r === 80 && i === 56 && a === 32) return t < 30 ? null : {
23249
- width: Kt(e, 26) & 16383,
23250
- height: Kt(e, 28) & 16383
23312
+ width: Zt(e, 26) & 16383,
23313
+ height: Zt(e, 28) & 16383
23251
23314
  };
23252
23315
  if (n === 86 && r === 80 && i === 56 && a === 76) {
23253
23316
  if (t < 25 || e[20] !== 47) return null;
23254
- let n = Yt(e, 21);
23317
+ let n = en(e, 21);
23255
23318
  return {
23256
23319
  width: (n & 16383) + 1,
23257
23320
  height: (n >>> 14 & 16383) + 1
@@ -23262,11 +23325,11 @@ function Xt(e) {
23262
23325
  height: (e[27] | e[28] << 8 | e[29] << 16) + 1
23263
23326
  } : null;
23264
23327
  }
23265
- function Zt(e) {
23328
+ function nn(e) {
23266
23329
  return e.length >= 6 && e[0] === 69 && e[1] === 120 && e[2] === 105 && e[3] === 102 && e[4] === 0 && e[5] === 0;
23267
23330
  }
23268
- function Qt(e) {
23269
- if (e.length < 14 || !Zt(e)) return null;
23331
+ function rn(e) {
23332
+ if (e.length < 14 || !nn(e)) return null;
23270
23333
  let t = e[6] === 73 && e[7] === 73, n = e[6] === 77 && e[7] === 77;
23271
23334
  if (!t && !n) return null;
23272
23335
  let r = new DataView(e.buffer, e.byteOffset, e.byteLength);
@@ -23282,13 +23345,13 @@ function Qt(e) {
23282
23345
  }
23283
23346
  return null;
23284
23347
  }
23285
- function I(e, t) {
23348
+ function L(e, t) {
23286
23349
  return t !== null && t >= 5 && t <= 8 ? {
23287
23350
  width: e.height,
23288
23351
  height: e.width
23289
23352
  } : e;
23290
23353
  }
23291
- function $t(e) {
23354
+ function an(e) {
23292
23355
  let t = e.length, n = 2, r = null, i = !1, a = null;
23293
23356
  for (; n + 1 < t;) {
23294
23357
  if (e[n] !== 255) {
@@ -23304,12 +23367,12 @@ function $t(e) {
23304
23367
  n += 2;
23305
23368
  continue;
23306
23369
  }
23307
- if (o === 217 || o === 218) return a ? I(a, r) : null;
23370
+ if (o === 217 || o === 218) return a ? L(a, r) : null;
23308
23371
  if (n + 3 >= t) return null;
23309
- let s = Wt(e, n + 2);
23372
+ let s = Yt(e, n + 2);
23310
23373
  if (o >= 192 && o <= 207 && o !== 196 && o !== 200 && o !== 204) {
23311
23374
  if (s < 7 || n + 8 >= t) return null;
23312
- let r = Wt(e, n + 5), i = Wt(e, n + 7);
23375
+ let r = Yt(e, n + 5), i = Yt(e, n + 7);
23313
23376
  a ??= {
23314
23377
  width: i,
23315
23378
  height: r
@@ -23317,26 +23380,26 @@ function $t(e) {
23317
23380
  }
23318
23381
  if (s < 2) return null;
23319
23382
  let c = n + 2 + s;
23320
- if (c > t) return a ? I(a, r) : null;
23383
+ if (c > t) return a ? L(a, r) : null;
23321
23384
  if (o === 225 && !i) {
23322
23385
  let t = e.subarray(n + 4, c);
23323
- Zt(t) && (i = !0, r = Qt(t));
23386
+ nn(t) && (i = !0, r = rn(t));
23324
23387
  }
23325
23388
  n = c;
23326
23389
  }
23327
- return a ? I(a, r) : null;
23390
+ return a ? L(a, r) : null;
23328
23391
  }
23329
- function en(e) {
23392
+ function on(e) {
23330
23393
  let { width: t, height: n } = e;
23331
23394
  return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 32767 || n > 32767 ? !0 : t * n > u;
23332
23395
  }
23333
- function tn(e) {
23396
+ function sn(e) {
23334
23397
  let { width: t, height: n } = e;
23335
23398
  return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 134217728 || n > 134217728 ? !0 : t * n > p;
23336
23399
  }
23337
23400
  //#endregion
23338
23401
  //#region packages/core/src/image/raster-blob-inspection.ts
23339
- function nn(e) {
23402
+ function cn(e) {
23340
23403
  switch (e.split(";", 1)[0]?.trim().toLowerCase()) {
23341
23404
  case "image/png":
23342
23405
  case "image/jpeg":
@@ -23348,22 +23411,22 @@ function nn(e) {
23348
23411
  default: return !1;
23349
23412
  }
23350
23413
  }
23351
- function rn(e, t = !1) {
23414
+ function ln(e, t = !1) {
23352
23415
  return e !== null && e !== "wmf" && e !== "emf" && (e !== "tiff" || t);
23353
23416
  }
23354
- var an = 64 * 1024;
23355
- function on(e) {
23417
+ var un = 64 * 1024;
23418
+ function dn(e) {
23356
23419
  return s(e) ? "wmf" : i(e) ? "emf" : e.length >= 8 && e[0] === 137 && e[1] === 80 && e[2] === 78 && e[3] === 71 && e[4] === 13 && e[5] === 10 && e[6] === 26 && e[7] === 10 ? "png" : e.length >= 2 && e[0] === 255 && e[1] === 216 ? "jpeg" : e.length >= 6 && e[0] === 71 && e[1] === 73 && e[2] === 70 && e[3] === 56 && (e[4] === 55 || e[4] === 57) && e[5] === 97 ? "gif" : e.length >= 2 && e[0] === 66 && e[1] === 77 ? "bmp" : e.length >= 12 && e[0] === 82 && e[1] === 73 && e[2] === 70 && e[3] === 70 && e[8] === 87 && e[9] === 69 && e[10] === 66 && e[11] === 80 ? "webp" : S(e) ? "tiff" : null;
23357
23420
  }
23358
- function sn(e) {
23421
+ function fn(e) {
23359
23422
  return e >= 192 && e <= 207 && e !== 196 && e !== 200 && e !== 204;
23360
23423
  }
23361
- async function cn(e) {
23424
+ async function pn(e) {
23362
23425
  let t = e.slice(2).stream().getReader(), n = !1, r = -1, i = -1, a = 0, o = null, s = 0, c = 0, l = null, u = null, d = 0, f = null, p = !1;
23363
23426
  try {
23364
23427
  for (;;) {
23365
23428
  let { value: e, done: m } = await t.read();
23366
- if (m) return l ? I(l, f) : null;
23429
+ if (m) return l ? L(l, f) : null;
23367
23430
  for (let m of e) {
23368
23431
  if (o) {
23369
23432
  if (o[s++] = m, s === o.length) {
@@ -23371,13 +23434,13 @@ async function cn(e) {
23371
23434
  if (l ??= {
23372
23435
  width: n,
23373
23436
  height: e
23374
- }, o = null, s = 0, p) return await t.cancel(), I(l, f);
23437
+ }, o = null, s = 0, p) return await t.cancel(), L(l, f);
23375
23438
  a = c, c = 0;
23376
23439
  }
23377
23440
  continue;
23378
23441
  }
23379
23442
  if (u) {
23380
- if (u[d++] = m, d === u.length && (Zt(u) && (p = !0, f = Qt(u)), u = null, d = 0, p && l)) return await t.cancel(), I(l, f);
23443
+ if (u[d++] = m, d === u.length && (nn(u) && (p = !0, f = rn(u)), u = null, d = 0, p && l)) return await t.cancel(), L(l, f);
23381
23444
  continue;
23382
23445
  }
23383
23446
  if (a > 0) {
@@ -23391,7 +23454,7 @@ async function cn(e) {
23391
23454
  }
23392
23455
  let e = i << 8 | m;
23393
23456
  if (e < 2) return null;
23394
- if (sn(r)) {
23457
+ if (fn(r)) {
23395
23458
  if (e < 7) return null;
23396
23459
  l ? a = e - 2 : (o = new Uint8Array(5), s = 0, c = e - 7);
23397
23460
  } else r === 225 && !p && e > 2 ? (u = new Uint8Array(e - 2), d = 0) : a = e - 2;
@@ -23403,7 +23466,7 @@ async function cn(e) {
23403
23466
  continue;
23404
23467
  }
23405
23468
  if (m !== 255 && (n = !1, m !== 0)) {
23406
- if (m === 217 || m === 218) return await t.cancel(), l ? I(l, f) : null;
23469
+ if (m === 217 || m === 218) return await t.cancel(), l ? L(l, f) : null;
23407
23470
  m === 216 || m === 1 || m >= 208 && m <= 215 || (r = m);
23408
23471
  }
23409
23472
  }
@@ -23412,7 +23475,7 @@ async function cn(e) {
23412
23475
  t.releaseLock();
23413
23476
  }
23414
23477
  }
23415
- async function ln(e, t) {
23478
+ async function mn(e, t) {
23416
23479
  if (t.length < 8 || !S(t)) return null;
23417
23480
  let n = t[0] === 73, r = new DataView(t.buffer, t.byteOffset, t.byteLength).getUint32(4, n);
23418
23481
  if (!Number.isSafeInteger(r) || r < 8 || r > e.size - 2) return null;
@@ -23434,22 +23497,22 @@ async function ln(e, t) {
23434
23497
  height: u
23435
23498
  };
23436
23499
  }
23437
- async function un(e, t) {
23438
- let n = t ?? new Uint8Array(await e.slice(0, an).arrayBuffer()), r = on(n);
23500
+ async function hn(e, t) {
23501
+ let n = t ?? new Uint8Array(await e.slice(0, un).arrayBuffer()), r = dn(n);
23439
23502
  if (!r) return {
23440
23503
  format: null,
23441
23504
  dimensions: null
23442
23505
  };
23443
- let i = Jt(n);
23506
+ let i = $t(n);
23444
23507
  return r === "jpeg" ? {
23445
23508
  format: r,
23446
- dimensions: await cn(e) ?? i
23509
+ dimensions: await pn(e) ?? i
23447
23510
  } : i ? {
23448
23511
  format: r,
23449
23512
  dimensions: i
23450
23513
  } : r === "tiff" ? {
23451
23514
  format: r,
23452
- dimensions: await ln(e, n)
23515
+ dimensions: await mn(e, n)
23453
23516
  } : {
23454
23517
  format: r,
23455
23518
  dimensions: null
@@ -23457,13 +23520,13 @@ async function un(e, t) {
23457
23520
  }
23458
23521
  //#endregion
23459
23522
  //#region packages/core/src/image/optional-image-fallback.ts
23460
- var dn = class e extends Error {
23523
+ var gn = class e extends Error {
23461
23524
  code = "ooxml-optional-image-codec-unavailable";
23462
23525
  constructor(t) {
23463
23526
  super(`${t.toUpperCase()} image requires an optional codec`), this.codec = t, this.name = "OptionalImageCodecUnavailableError", Object.setPrototypeOf(this, e.prototype);
23464
23527
  }
23465
23528
  };
23466
- function fn(e, t) {
23529
+ function _n(e, t) {
23467
23530
  if (typeof e != "object" || !e) return !1;
23468
23531
  try {
23469
23532
  let n = e;
@@ -23472,8 +23535,8 @@ function fn(e, t) {
23472
23535
  return !1;
23473
23536
  }
23474
23537
  }
23475
- var pn = { tiff: "TIFF image unavailable" };
23476
- function mn(e, t, n) {
23538
+ var vn = { tiff: "TIFF image unavailable" };
23539
+ function yn(e, t, n) {
23477
23540
  if (!(![
23478
23541
  n.x,
23479
23542
  n.y,
@@ -23483,7 +23546,7 @@ function mn(e, t, n) {
23483
23546
  e.save();
23484
23547
  try {
23485
23548
  e.fillStyle = "#888", e.font = "11px sans-serif", e.textAlign = "center", e.textBaseline = "middle";
23486
- let r = pn[t];
23549
+ let r = vn[t];
23487
23550
  e.fillText(r, n.x + n.width / 2, n.y + n.height / 2, n.width);
23488
23551
  } finally {
23489
23552
  e.restore();
@@ -23492,14 +23555,14 @@ function mn(e, t, n) {
23492
23555
  }
23493
23556
  //#endregion
23494
23557
  //#region packages/core/src/image/raster-or-metafile.ts
23495
- function hn(e, t) {
23558
+ function bn(e, t) {
23496
23559
  return e.width <= 0 || e.height <= 0 || e.width > 32767 || e.height > 32767 || e.width * e.height > t;
23497
23560
  }
23498
- function gn(e) {
23561
+ function xn(e) {
23499
23562
  let t = e.split(";", 1)[0]?.trim().toLowerCase();
23500
23563
  return t === "image/tiff" || t === "image/x-tiff";
23501
23564
  }
23502
- function _n(e, t, n, r = !1) {
23565
+ function Sn(e, t, n, r = !1) {
23503
23566
  let i = {
23504
23567
  retainedDimensions: e,
23505
23568
  resizeOptions: null
@@ -23513,31 +23576,31 @@ function _n(e, t, n, r = !1) {
23513
23576
  }
23514
23577
  } : i;
23515
23578
  }
23516
- function vn(e, t, n) {
23579
+ function Cn(e, t, n) {
23517
23580
  let r = Math.max(e.width, e.height);
23518
23581
  if (!Number.isFinite(r) || r > t) return new h("image-dimension", t, Number.isFinite(r) ? r : 2 ** 53 - 1);
23519
23582
  let i = e.width * e.height;
23520
23583
  return new h("image-pixels", n, Number.isSafeInteger(i) && i >= 0 ? i : 2 ** 53 - 1);
23521
23584
  }
23522
- async function yn(e, t = {}) {
23523
- return bn(e, t);
23585
+ async function wn(e, t = {}) {
23586
+ return Tn(e, t);
23524
23587
  }
23525
- async function bn(e, r = {}, a) {
23588
+ async function Tn(e, r = {}, a) {
23526
23589
  let { widthPt: o = 0, heightPt: l = 0, suppressBoundaryFrame: f = !1, tiff: h, targetWidthPx: g, targetHeightPx: _, maxRetainedPixels: v = u } = r, y = Number.isSafeInteger(v) && v > 0 ? Math.min(v, u) : u, x = new Uint8Array(await e.slice(0, 64 * 1024).arrayBuffer());
23527
23590
  if (s(x)) {
23528
23591
  let { w: r, h: i } = n(o, l);
23529
- return xn(await t(new Uint8Array(await e.arrayBuffer()), r, i, f), y);
23592
+ return En(await t(new Uint8Array(await e.arrayBuffer()), r, i, f), y);
23530
23593
  }
23531
23594
  if (i(x)) {
23532
23595
  let { w: t, h: r } = n(o, l);
23533
- return xn(await Ht(new Uint8Array(await e.arrayBuffer()), t, r), y);
23596
+ return En(await qt(new Uint8Array(await e.arrayBuffer()), t, r), y);
23534
23597
  }
23535
- let C = (a ?? await un(e, x)).dimensions;
23536
- if (C && tn(C)) throw vn(C, c, p);
23537
- let te = S(x) || gn(e.type), w = C ? _n(C, g, _, te) : null;
23538
- if (w && hn(w.retainedDimensions, y)) throw vn(w.retainedDimensions, m, y);
23598
+ let C = (a ?? await hn(e, x)).dimensions;
23599
+ if (C && sn(C)) throw Cn(C, c, p);
23600
+ let te = S(x) || xn(e.type), w = C ? Sn(C, g, _, te) : null;
23601
+ if (w && bn(w.retainedDimensions, y)) throw Cn(w.retainedDimensions, m, y);
23539
23602
  if (te) {
23540
- if (!h) throw new dn("tiff");
23603
+ if (!h) throw new gn("tiff");
23541
23604
  let t;
23542
23605
  try {
23543
23606
  t = await h.render(new Uint8Array(await e.arrayBuffer()), {
@@ -23549,38 +23612,38 @@ async function bn(e, r = {}, a) {
23549
23612
  throw d(e) || ee(e) ? e : new b("TIFF codec failed to decode the image", { cause: e });
23550
23613
  }
23551
23614
  if (!t) throw new b("TIFF codec failed to decode the image");
23552
- return xn(t, y);
23615
+ return En(t, y);
23553
23616
  }
23554
- return xn(w?.resizeOptions ? await createImageBitmap(e, w.resizeOptions) : await createImageBitmap(e), y);
23617
+ return En(w?.resizeOptions ? await createImageBitmap(e, w.resizeOptions) : await createImageBitmap(e), y);
23555
23618
  }
23556
- function xn(e, t = u) {
23619
+ function En(e, t = u) {
23557
23620
  if (!e) return null;
23558
23621
  let n = {
23559
23622
  width: Number(e.width),
23560
23623
  height: Number(e.height)
23561
23624
  };
23562
- if (!hn(n, t)) return e;
23563
- throw Ut(e), vn(n, m, t);
23625
+ if (!bn(n, t)) return e;
23626
+ throw Jt(e), Cn(n, m, t);
23564
23627
  }
23565
23628
  //#endregion
23566
23629
  //#region packages/core/src/image/decode-gate.ts
23567
- var Sn = /* @__PURE__ */ new WeakMap();
23568
- async function Cn(e, t) {
23569
- let n = Sn.get(e);
23630
+ var Dn = /* @__PURE__ */ new WeakMap();
23631
+ async function On(e, t) {
23632
+ let n = Dn.get(e);
23570
23633
  n || (n = {
23571
23634
  active: 0,
23572
23635
  waiters: []
23573
- }, Sn.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
23636
+ }, Dn.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
23574
23637
  try {
23575
23638
  return await Promise.resolve(), await t();
23576
23639
  } finally {
23577
23640
  let t = n.waiters.shift();
23578
- t ? t() : (n.active--, n.active === 0 && Sn.delete(e));
23641
+ t ? t() : (n.active--, n.active === 0 && Dn.delete(e));
23579
23642
  }
23580
23643
  }
23581
23644
  //#endregion
23582
23645
  //#region packages/core/src/image/adaptive-image-budget.ts
23583
- function wn(e = void 0) {
23646
+ function kn(e = void 0) {
23584
23647
  if (e !== void 0 && (typeof e != "object" || !e || Array.isArray(e))) throw TypeError("imageResources must be an object when provided");
23585
23648
  let t = e?.decodedByteBudget ?? 134217728;
23586
23649
  if (!Number.isSafeInteger(t) || t < 4 || t > 536870912) throw RangeError(`imageResources.decodedByteBudget must be a safe integer from 4 to ${g} bytes`);
@@ -23594,13 +23657,13 @@ function wn(e = void 0) {
23594
23657
  resolution: r
23595
23658
  });
23596
23659
  }
23597
- function Tn(e) {
23660
+ function An(e) {
23598
23661
  return Number.isFinite(e) && e > 0 ? Math.max(1, Math.ceil(e)) : 1;
23599
23662
  }
23600
- function En(e) {
23663
+ function jn(e) {
23601
23664
  return Number.isSafeInteger(e) && (e ?? 0) > 0 ? e : 1;
23602
23665
  }
23603
- function Dn(e, t) {
23666
+ function Mn(e, t) {
23604
23667
  let n = 0;
23605
23668
  for (let r of e.values()) {
23606
23669
  let e = t(r), i = e.width * e.height * r.surfaces * 4;
@@ -23608,10 +23671,10 @@ function Dn(e, t) {
23608
23671
  }
23609
23672
  return n;
23610
23673
  }
23611
- function On(e, t) {
23674
+ function Nn(e, t) {
23612
23675
  let n = /* @__PURE__ */ new Map();
23613
23676
  for (let t of e) {
23614
- let e = Tn(t.targetWidthPx), r = Tn(t.targetHeightPx), i = t.sourceWidthPx !== void 0 && t.sourceHeightPx !== void 0, a = i ? Tn(t.sourceWidthPx) : void 0, o = i ? Tn(t.sourceHeightPx) : void 0, s = En(t.retainedSurfaceCount), c = n.get(t.key);
23677
+ let e = An(t.targetWidthPx), r = An(t.targetHeightPx), i = t.sourceWidthPx !== void 0 && t.sourceHeightPx !== void 0, a = i ? An(t.sourceWidthPx) : void 0, o = i ? An(t.sourceHeightPx) : void 0, s = jn(t.retainedSurfaceCount), c = n.get(t.key);
23615
23678
  c ? (c.targetWidth = Math.max(c.targetWidth, e), c.targetHeight = Math.max(c.targetHeight, r), a !== void 0 && o !== void 0 && (c.sourceWidth = Math.max(c.sourceWidth ?? 0, a), c.sourceHeight = Math.max(c.sourceHeight ?? 0, o)), c.surfaces = Math.max(c.surfaces, s)) : n.set(t.key, {
23616
23679
  targetWidth: e,
23617
23680
  targetHeight: r,
@@ -23644,10 +23707,10 @@ function On(e, t) {
23644
23707
  retainedPixels: s,
23645
23708
  maxRetainedPixels: n ?? s
23646
23709
  });
23647
- }, s = Dn(n, r), c = [...n.values()].every((e) => {
23710
+ }, s = Mn(n, r), c = [...n.values()].every((e) => {
23648
23711
  let t = r(e);
23649
23712
  return t.width * t.height <= u;
23650
- }), l = [...n.values()].some((e) => e.sourceWidth === void 0 || e.sourceHeight === void 0), d = t.resolution === "native-if-fit" && !l && c && s <= t.decodedByteBudget, f = Dn(n, (e) => a(e, 1));
23713
+ }), l = [...n.values()].some((e) => e.sourceWidth === void 0 || e.sourceHeight === void 0), d = t.resolution === "native-if-fit" && !l && c && s <= t.decodedByteBudget, f = Mn(n, (e) => a(e, 1));
23651
23714
  if (d) {
23652
23715
  let e = /* @__PURE__ */ new Map();
23653
23716
  for (let [t, i] of n) {
@@ -23692,7 +23755,7 @@ function On(e, t) {
23692
23755
  }
23693
23756
  if (t.strategy === "strict" && f > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, f);
23694
23757
  if (t.strategy === "adaptive") {
23695
- let e = Dn(n, (e) => a(e, 0));
23758
+ let e = Mn(n, (e) => a(e, 0));
23696
23759
  if (e > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, e);
23697
23760
  }
23698
23761
  let p = 1;
@@ -23700,13 +23763,13 @@ function On(e, t) {
23700
23763
  let e = 0, r = 1;
23701
23764
  for (let i = 0; i < 40; i++) {
23702
23765
  let i = (e + r) / 2;
23703
- Dn(n, (e) => a(e, i)) <= t.decodedByteBudget ? e = i : r = i;
23766
+ Mn(n, (e) => a(e, i)) <= t.decodedByteBudget ? e = i : r = i;
23704
23767
  }
23705
23768
  p = e;
23706
23769
  }
23707
23770
  let m = /* @__PURE__ */ new Map();
23708
23771
  for (let [e, t] of n) m.set(e, o(t, p));
23709
- let g = Dn(n, (e) => a(e, p)), _ = p < 1 && n.size > 0 ? Math.min(...[...n.entries()].flatMap(([e, t]) => {
23772
+ let g = Mn(n, (e) => a(e, p)), _ = p < 1 && n.size > 0 ? Math.min(...[...n.entries()].flatMap(([e, t]) => {
23710
23773
  let n = m.get(e);
23711
23774
  return [n.width / t.targetWidth, n.height / t.targetHeight];
23712
23775
  })) : p;
@@ -23720,48 +23783,48 @@ function On(e, t) {
23720
23783
  }
23721
23784
  //#endregion
23722
23785
  //#region packages/core/src/image/bitmap-image-by-path.ts
23723
- function kn(e) {
23786
+ function Pn(e) {
23724
23787
  return typeof e == "object" && !!e || typeof e == "function";
23725
23788
  }
23726
- var An = 256, L = /* @__PURE__ */ new WeakMap(), jn = /* @__PURE__ */ new WeakMap(), Mn = /* @__PURE__ */ new WeakMap(), Nn = /* @__PURE__ */ new WeakMap();
23727
- function R(e) {
23728
- return Mn.get(e) ?? 0;
23789
+ var Fn = 256, R = /* @__PURE__ */ new WeakMap(), In = /* @__PURE__ */ new WeakMap(), Ln = /* @__PURE__ */ new WeakMap(), Rn = /* @__PURE__ */ new WeakMap();
23790
+ function z(e) {
23791
+ return Ln.get(e) ?? 0;
23729
23792
  }
23730
- function Pn(e, t) {
23731
- return Nn.get(e)?.get(t) ?? 0;
23793
+ function zn(e, t) {
23794
+ return Rn.get(e)?.get(t) ?? 0;
23732
23795
  }
23733
- function Fn(e, t) {
23734
- if (R(e) !== t) throw Error("Decoded bitmap cache was dropped during raster inspection");
23796
+ function Bn(e, t) {
23797
+ if (z(e) !== t) throw Error("Decoded bitmap cache was dropped during raster inspection");
23735
23798
  }
23736
- function In(e, t) {
23799
+ function Vn(e, t) {
23737
23800
  return {
23738
23801
  owner: e,
23739
- ownerGeneration: R(e),
23802
+ ownerGeneration: z(e),
23740
23803
  namespace: t,
23741
- namespaceGeneration: Pn(e, t)
23804
+ namespaceGeneration: zn(e, t)
23742
23805
  };
23743
23806
  }
23744
- function Ln(e, t) {
23745
- if (t.owner !== e || R(e) !== t.ownerGeneration) throw Error("Decoded bitmap cache was dropped during a derived image operation");
23807
+ function Hn(e, t) {
23808
+ if (t.owner !== e || z(e) !== t.ownerGeneration) throw Error("Decoded bitmap cache was dropped during a derived image operation");
23746
23809
  }
23747
- function Rn(e, t, n) {
23748
- if (Ln(e, n), n.namespace !== t || Pn(e, t) !== n.namespaceGeneration) throw Error("Decoded bitmap cache namespace was dropped during a derived image operation");
23810
+ function Un(e, t, n) {
23811
+ if (Hn(e, n), n.namespace !== t || zn(e, t) !== n.namespaceGeneration) throw Error("Decoded bitmap cache namespace was dropped during a derived image operation");
23749
23812
  }
23750
- function zn(e) {
23751
- let t = jn.get(e);
23813
+ function Wn(e) {
23814
+ let t = In.get(e);
23752
23815
  if (t) for (let e of t.values()) e.then((e) => {
23753
23816
  e.initialBlob = void 0;
23754
23817
  }).catch(() => {});
23755
23818
  }
23756
- function Bn(e, t, n, r) {
23757
- let i = jn.get(e);
23758
- i || (i = /* @__PURE__ */ new Map(), jn.set(e, i));
23819
+ function Gn(e, t, n, r) {
23820
+ let i = In.get(e);
23821
+ i || (i = /* @__PURE__ */ new Map(), In.set(e, i));
23759
23822
  let a = i.get(t);
23760
23823
  if (a) return a;
23761
- let o = Cn(e, async () => {
23824
+ let o = On(e, async () => {
23762
23825
  let e = await r(t, n);
23763
23826
  return {
23764
- inspection: await un(e),
23827
+ inspection: await hn(e),
23765
23828
  initialBlob: e
23766
23829
  };
23767
23830
  }).catch((e) => {
@@ -23769,20 +23832,20 @@ function Bn(e, t, n, r) {
23769
23832
  });
23770
23833
  return i.set(t, o), o;
23771
23834
  }
23772
- async function Vn(e, t, n, r = n) {
23773
- return (await Bn(r, e, t, n)).inspection;
23835
+ async function Kn(e, t, n, r = n) {
23836
+ return (await Gn(r, e, t, n)).inspection;
23774
23837
  }
23775
- function Hn(e) {
23776
- let t = L.get(e);
23838
+ function qn(e) {
23839
+ let t = R.get(e);
23777
23840
  return t || (t = {
23778
23841
  entries: /* @__PURE__ */ new Map(),
23779
23842
  retainedBytes: 0,
23780
23843
  retainedLimit: f
23781
- }, L.set(e, t)), t;
23844
+ }, R.set(e, t)), t;
23782
23845
  }
23783
- var Un = /* @__PURE__ */ new WeakMap(), Wn = /* @__PURE__ */ new WeakMap();
23784
- async function Gn(e, t, n) {
23785
- let r = Wn.get(e);
23846
+ var Jn = /* @__PURE__ */ new WeakMap(), Yn = /* @__PURE__ */ new WeakMap();
23847
+ async function Xn(e, t, n) {
23848
+ let r = Yn.get(e);
23786
23849
  if (!r) {
23787
23850
  let i;
23788
23851
  r = {
@@ -23790,12 +23853,12 @@ async function Gn(e, t, n) {
23790
23853
  i = e;
23791
23854
  }),
23792
23855
  pending: 1
23793
- }, Wn.set(e, r);
23856
+ }, Yn.set(e, r);
23794
23857
  let a;
23795
23858
  try {
23796
- return a = Yn(e, t), await n();
23859
+ return a = er(e, t), await n();
23797
23860
  } finally {
23798
- zn(e), a?.(), i(), r.pending--, r.pending === 0 && Wn.delete(e);
23861
+ Wn(e), a?.(), i(), r.pending--, r.pending === 0 && Yn.delete(e);
23799
23862
  }
23800
23863
  }
23801
23864
  let i = r, a = i.tail.catch(() => {}), o, s = new Promise((e) => {
@@ -23804,22 +23867,22 @@ async function Gn(e, t, n) {
23804
23867
  i.pending++, i.tail = a.then(() => s), await a;
23805
23868
  let c;
23806
23869
  try {
23807
- return c = Yn(e, t), await n();
23870
+ return c = er(e, t), await n();
23808
23871
  } finally {
23809
- zn(e), c?.(), o(), i.pending--, i.pending === 0 && Wn.delete(e);
23872
+ Wn(e), c?.(), o(), i.pending--, i.pending === 0 && Yn.delete(e);
23810
23873
  }
23811
23874
  }
23812
- var Kn = /* @__PURE__ */ new WeakSet();
23813
- function qn(e) {
23814
- !e || Kn.has(e) || (Kn.add(e), Ut(e));
23875
+ var Zn = /* @__PURE__ */ new WeakSet();
23876
+ function Qn(e) {
23877
+ !e || Zn.has(e) || (Zn.add(e), Jt(e));
23815
23878
  }
23816
- function Jn(e) {
23879
+ function $n(e) {
23817
23880
  try {
23818
- qn(e);
23881
+ Qn(e);
23819
23882
  } catch {}
23820
23883
  }
23821
- function Yn(e, t) {
23822
- let n = wn(t), r = Un.get(e);
23884
+ function er(e, t) {
23885
+ let n = kn(t), r = Jn.get(e);
23823
23886
  r || (r = {
23824
23887
  count: 0,
23825
23888
  deferred: [],
@@ -23827,105 +23890,105 @@ function Yn(e, t) {
23827
23890
  activeBitmaps: /* @__PURE__ */ new WeakSet(),
23828
23891
  limits: /* @__PURE__ */ new Map(),
23829
23892
  activeLimit: n.decodedByteBudget
23830
- }, Un.set(e, r));
23893
+ }, Jn.set(e, r));
23831
23894
  let i = r, a = Symbol("decoded-image-lease");
23832
23895
  i.limits.set(a, n.decodedByteBudget), i.activeLimit = Math.min(...i.limits.values());
23833
- let o = Hn(e);
23834
- for (o.retainedLimit = i.activeLimit; o.retainedBytes > o.retainedLimit && Qn(e, o););
23896
+ let o = qn(e);
23897
+ for (o.retainedLimit = i.activeLimit; o.retainedBytes > o.retainedLimit && rr(e, o););
23835
23898
  i.count++;
23836
23899
  let s = !1;
23837
23900
  return () => {
23838
23901
  if (s) return;
23839
23902
  if (s = !0, i.count--, i.limits.delete(a), i.count > 0) {
23840
23903
  i.activeLimit = Math.min(...i.limits.values());
23841
- let t = L.get(e);
23904
+ let t = R.get(e);
23842
23905
  t && (t.retainedLimit = i.activeLimit);
23843
23906
  return;
23844
23907
  }
23845
- for (let e of i.deferred) e.then((e) => qn(e)).catch(() => {});
23846
- i.deferred = [], i.activeBytes = 0, i.activeBitmaps = /* @__PURE__ */ new WeakSet(), Un.delete(e);
23847
- let t = L.get(e);
23908
+ for (let e of i.deferred) e.then((e) => Qn(e)).catch(() => {});
23909
+ i.deferred = [], i.activeBytes = 0, i.activeBitmaps = /* @__PURE__ */ new WeakSet(), Jn.delete(e);
23910
+ let t = R.get(e);
23848
23911
  t && (t.retainedLimit = f);
23849
23912
  };
23850
23913
  }
23851
- function Xn(e) {
23914
+ function tr(e) {
23852
23915
  if (!e) return 0;
23853
23916
  let t = Number(e.width), n = Number(e.height);
23854
23917
  return Number.isSafeInteger(t) && t > 0 && Number.isSafeInteger(n) && n > 0 ? t * n * 4 : 0;
23855
23918
  }
23856
- function Zn(e, t) {
23919
+ function nr(e, t) {
23857
23920
  if (!t) return;
23858
- let n = Un.get(e);
23921
+ let n = Jn.get(e);
23859
23922
  if (!n || n.count === 0 || n.activeBitmaps.has(t)) return;
23860
- let r = n.activeBytes + Xn(t);
23923
+ let r = n.activeBytes + tr(t);
23861
23924
  if (r > n.activeLimit) throw new h("active-decoded-bytes", n.activeLimit, r);
23862
23925
  n.activeBitmaps.add(t), n.activeBytes = r;
23863
23926
  }
23864
- function Qn(e, t, n) {
23927
+ function rr(e, t, n) {
23865
23928
  let r = [...t.entries].find(([e]) => e !== n);
23866
23929
  if (!r) return !1;
23867
23930
  let [i, a] = r;
23868
- return t.entries.delete(i), t.retainedBytes -= a.weight, $n(e, a.ownedPromise), !0;
23931
+ return t.entries.delete(i), t.retainedBytes -= a.weight, ir(e, a.ownedPromise), !0;
23869
23932
  }
23870
- function $n(e, t) {
23871
- let n = Un.get(e);
23933
+ function ir(e, t) {
23934
+ let n = Jn.get(e);
23872
23935
  if (n && n.count > 0) {
23873
23936
  n.deferred.push(t);
23874
23937
  return;
23875
23938
  }
23876
- t.then((e) => qn(e)).catch(() => {});
23939
+ t.then((e) => Qn(e)).catch(() => {});
23877
23940
  }
23878
- function z(e) {
23941
+ function B(e) {
23879
23942
  if (!(typeof e != "number" || !Number.isFinite(e) || !(e > 0))) return Math.ceil(e);
23880
23943
  }
23881
- function er(e) {
23944
+ function ar(e) {
23882
23945
  return {
23883
23946
  ...e,
23884
- targetWidthPx: z(e.targetWidthPx),
23885
- targetHeightPx: z(e.targetHeightPx)
23947
+ targetWidthPx: B(e.targetWidthPx),
23948
+ targetHeightPx: B(e.targetHeightPx)
23886
23949
  };
23887
23950
  }
23888
- function B(e) {
23951
+ function V(e) {
23889
23952
  let t = e.maxRetainedPixels;
23890
23953
  return typeof t == "number" && Number.isSafeInteger(t) && t > 0 ? Math.min(t, f / 4) : f / 4;
23891
23954
  }
23892
- function tr(e) {
23893
- return B(e) < f / 4;
23955
+ function or(e) {
23956
+ return V(e) < f / 4;
23894
23957
  }
23895
- function nr(e, t) {
23958
+ function sr(e, t) {
23896
23959
  if (!e) return null;
23897
- let n = B(t), r = Number(e.width), i = Number(e.height), a = Math.max(r, i);
23960
+ let n = V(t), r = Number(e.width), i = Number(e.height), a = Math.max(r, i);
23898
23961
  if (!Number.isFinite(a) || a > 32767) throw new h("image-dimension", m, Number.isFinite(a) ? a : 2 ** 53 - 1);
23899
23962
  let o = r * i;
23900
23963
  if (!(r > 0) || !(i > 0) || o > n) throw new h("image-pixels", n, Number.isSafeInteger(o) && o >= 0 ? o : 2 ** 53 - 1);
23901
23964
  return e;
23902
23965
  }
23903
- function V(e, t = {}) {
23904
- let n = z(t.targetWidthPx), r = z(t.targetHeightPx), i = `${e.length}:${e}`, a = B(t);
23966
+ function H(e, t = {}) {
23967
+ let n = B(t.targetWidthPx), r = B(t.targetHeightPx), i = `${e.length}:${e}`, a = V(t);
23905
23968
  return n || r ? `raster:${i}:${n ?? 0}x${r ?? 0}:p${a}` : `native:${i}`;
23906
23969
  }
23907
- function rr(e) {
23970
+ function cr(e) {
23908
23971
  return e.inspection.format === "wmf" || e.inspection.format === "emf";
23909
23972
  }
23910
- function ir(e) {
23973
+ function lr(e) {
23911
23974
  let t = n(e.widthPt ?? 0, e.heightPt ?? 0);
23912
23975
  return {
23913
23976
  width: t.w,
23914
23977
  height: t.h,
23915
23978
  suppressBoundaryFrame: e.suppressBoundaryFrame === !0,
23916
- pixelLimit: B(e)
23979
+ pixelLimit: V(e)
23917
23980
  };
23918
23981
  }
23919
- function ar(e, t) {
23982
+ function ur(e, t) {
23920
23983
  return `metafile:${`${e.length}:${e}`}:s${+!!t.suppressBoundaryFrame}:p${t.pixelLimit}:`;
23921
23984
  }
23922
- function or(e, t, n) {
23923
- let r = ir(t), i = z(n?.width) ?? r.width, a = z(n?.height) ?? r.height;
23924
- return `${ar(e, r)}${i}x${a}`;
23985
+ function dr(e, t, n) {
23986
+ let r = lr(t), i = B(n?.width) ?? r.width, a = B(n?.height) ?? r.height;
23987
+ return `${ur(e, r)}${i}x${a}`;
23925
23988
  }
23926
- function sr(e, t, n) {
23927
- let r = ir(n), i = `${H}${ar(t, r)}`, a;
23928
- for (let t of L.get(e)?.entries.keys() ?? []) {
23989
+ function fr(e, t, n) {
23990
+ let r = lr(n), i = `${U}${ur(t, r)}`, a;
23991
+ for (let t of R.get(e)?.entries.keys() ?? []) {
23929
23992
  if (!t.startsWith(i)) continue;
23930
23993
  let e = /^(\d+)x(\d+)$/.exec(t.slice(i.length));
23931
23994
  if (!e) continue;
@@ -23933,17 +23996,17 @@ function sr(e, t, n) {
23933
23996
  if (n < r.width || o < r.height) continue;
23934
23997
  let s = n * o;
23935
23998
  (!a || s < a.pixels) && (a = {
23936
- key: t.slice(H.length),
23999
+ key: t.slice(U.length),
23937
24000
  pixels: s
23938
24001
  });
23939
24002
  }
23940
24003
  return a?.key;
23941
24004
  }
23942
- function cr(e, t, n, r) {
23943
- let i = z(n.targetWidthPx), a = z(n.targetHeightPx);
24005
+ function pr(e, t, n, r) {
24006
+ let i = B(n.targetWidthPx), a = B(n.targetHeightPx);
23944
24007
  if (!i && !a) return;
23945
- let o = B(n), s = `${H}raster:${`${t.length}:${t}`}:`, c;
23946
- for (let [t, n] of L.get(e)?.entries ?? []) {
24008
+ let o = V(n), s = `${U}raster:${`${t.length}:${t}`}:`, c;
24009
+ for (let [t, n] of R.get(e)?.entries ?? []) {
23947
24010
  if (!t.startsWith(s)) continue;
23948
24011
  let e = /^(\d+)x(\d+):p(\d+)$/.exec(t.slice(s.length));
23949
24012
  if (!e) continue;
@@ -23951,46 +24014,46 @@ function cr(e, t, n, r) {
23951
24014
  if (Number(e[3]) !== o || l < (i ?? 0) || u < (a ?? 0)) continue;
23952
24015
  let d = Number(n.bitmap?.width), f = Number(n.bitmap?.height), p = Number.isFinite(d) && d > 0 && Number.isFinite(f) && f > 0, m = r ? x(r, l, u) ?? r : void 0, h = p ? d * f : m ? m.width * m.height : l * u;
23953
24016
  (!c || h < c.pixels) && (c = {
23954
- key: t.slice(H.length),
24017
+ key: t.slice(U.length),
23955
24018
  pixels: h
23956
24019
  });
23957
24020
  }
23958
24021
  return c?.key;
23959
24022
  }
23960
- function lr(e, t = {}) {
23961
- let n = B(t), r = e.inspection.dimensions;
24023
+ function mr(e, t = {}) {
24024
+ let n = V(t), r = e.inspection.dimensions;
23962
24025
  if (!r) return !1;
23963
24026
  let i = r.width * r.height;
23964
- if (t.maxRetainedPixels !== void 0 && !en(r) && i <= n) return !1;
23965
- let a = z(t.targetWidthPx), o = z(t.targetHeightPx);
23966
- return (e.inspection.format === "tiff" ? (a !== void 0 || o !== void 0) && (a === void 0 || a < r.width) && (o === void 0 || o < r.height) : a !== void 0 && o !== void 0 && (a < r.width || o < r.height)) || en(r) || i > n;
23967
- }
23968
- async function ur(e, t, n, r = {}, i, a) {
23969
- i && Ln(n, i);
23970
- let o = er(r), s = i?.ownerGeneration ?? R(n), c = await Bn(n, e, t, n);
23971
- i ? Ln(n, i) : Fn(n, s);
23972
- let l = rr(c);
23973
- if (a) return l ? or(e, o, {
24027
+ if (t.maxRetainedPixels !== void 0 && !on(r) && i <= n) return !1;
24028
+ let a = B(t.targetWidthPx), o = B(t.targetHeightPx);
24029
+ return (e.inspection.format === "tiff" ? (a !== void 0 || o !== void 0) && (a === void 0 || a < r.width) && (o === void 0 || o < r.height) : a !== void 0 && o !== void 0 && (a < r.width || o < r.height)) || on(r) || i > n;
24030
+ }
24031
+ async function hr(e, t, n, r = {}, i, a) {
24032
+ i && Hn(n, i);
24033
+ let o = ar(r), s = i?.ownerGeneration ?? z(n), c = await Gn(n, e, t, n);
24034
+ i ? Hn(n, i) : Bn(n, s);
24035
+ let l = cr(c);
24036
+ if (a) return l ? dr(e, o, {
23974
24037
  width: Number(a.width),
23975
24038
  height: Number(a.height)
23976
- }) : V(e, {
24039
+ }) : H(e, {
23977
24040
  targetWidthPx: Number(a.width),
23978
24041
  targetHeightPx: Number(a.height),
23979
24042
  maxRetainedPixels: o.maxRetainedPixels
23980
24043
  });
23981
- if (l) return sr(n, e, o) ?? or(e, o);
23982
- if (!o.targetWidthPx && !o.targetHeightPx) return V(e);
23983
- let u = `${H}${V(e)}`;
23984
- return !tr(o) && L.get(n)?.entries.has(u) ? V(e) : lr(c, o) ? cr(n, e, o, c.inspection.dimensions) ?? V(e, o) : V(e);
23985
- }
23986
- function dr(e, t, n) {
23987
- let r = Hn(t), i = r.entries, a = i.get(e);
23988
- if (a) return i.delete(e), i.set(e, a), a.promise.then((e) => (Zn(t, e), e));
23989
- let o = Cn(t, n), s = o.then(({ bitmap: e, owned: t }) => t ? e : null).catch(() => null), c = o.then(({ bitmap: e, owned: n }) => {
24044
+ if (l) return fr(n, e, o) ?? dr(e, o);
24045
+ if (!o.targetWidthPx && !o.targetHeightPx) return H(e);
24046
+ let u = `${U}${H(e)}`;
24047
+ return !or(o) && R.get(n)?.entries.has(u) ? H(e) : mr(c, o) ? pr(n, e, o, c.inspection.dimensions) ?? H(e, o) : H(e);
24048
+ }
24049
+ function gr(e, t, n) {
24050
+ let r = qn(t), i = r.entries, a = i.get(e);
24051
+ if (a) return i.delete(e), i.set(e, a), a.promise.then((e) => (nr(t, e), e));
24052
+ let o = On(t, n), s = o.then(({ bitmap: e, owned: t }) => t ? e : null).catch(() => null), c = o.then(({ bitmap: e, owned: n }) => {
23990
24053
  try {
23991
- return Zn(t, e), e;
24054
+ return nr(t, e), e;
23992
24055
  } catch (t) {
23993
- throw n && qn(e), t;
24056
+ throw n && Qn(e), t;
23994
24057
  }
23995
24058
  }), l = {
23996
24059
  promise: c,
@@ -24003,23 +24066,23 @@ function dr(e, t, n) {
24003
24066
  i.delete(e);
24004
24067
  return;
24005
24068
  }
24006
- for (l.weight = Xn(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && Qn(t, r, e););
24069
+ for (l.weight = tr(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && rr(t, r, e););
24007
24070
  }
24008
24071
  }).catch(() => {}), c.catch(() => {
24009
- i.get(e) === l && (i.delete(e), r.retainedBytes -= l.weight, $n(t, s));
24010
- }), i.set(e, l); i.size > An && Qn(t, r, e););
24072
+ i.get(e) === l && (i.delete(e), r.retainedBytes -= l.weight, ir(t, s));
24073
+ }), i.set(e, l); i.size > Fn && rr(t, r, e););
24011
24074
  return c;
24012
24075
  }
24013
- var fr = "base", H = `${fr}:`, pr = "derived:";
24014
- function mr(e, t, n, r) {
24015
- return dr(`${e}:${t}`, n, r);
24076
+ var _r = "base", U = `${_r}:`, vr = "derived:";
24077
+ function yr(e, t, n, r) {
24078
+ return gr(`${e}:${t}`, n, r);
24016
24079
  }
24017
- function hr(e, t, n, r, i) {
24018
- return i && Rn(n, e, i), mr(`${pr}${e}`, t, n, r);
24080
+ function br(e, t, n, r, i) {
24081
+ return i && Un(n, e, i), yr(`${vr}${e}`, t, n, r);
24019
24082
  }
24020
- function gr(e, t, n, r = {}, i = n) {
24021
- let a = er(r), { widthPt: o = 0, heightPt: s = 0, suppressBoundaryFrame: c = !1, tiff: l, targetWidthPx: u, targetHeightPx: d, maxRetainedPixels: f, svgDecoder: p } = a;
24022
- if (t === "image/svg+xml" && p) return mr(fr, V(e, a), i, async () => ({
24083
+ function xr(e, t, n, r = {}, i = n) {
24084
+ let a = ar(r), { widthPt: o = 0, heightPt: s = 0, suppressBoundaryFrame: c = !1, tiff: l, targetWidthPx: u, targetHeightPx: d, maxRetainedPixels: f, svgDecoder: p } = a;
24085
+ if (t === "image/svg+xml" && p) return yr(_r, H(e, a), i, async () => ({
24023
24086
  bitmap: await p(await n(e, t), {
24024
24087
  targetWidthPx: u,
24025
24088
  targetHeightPx: d
@@ -24028,7 +24091,7 @@ function gr(e, t, n, r = {}, i = n) {
24028
24091
  }));
24029
24092
  let m = (r, p, m = !0) => {
24030
24093
  let h = p?.initialBlob;
24031
- return p && (p.initialBlob = void 0), mr(fr, r, i, async () => {
24094
+ return p && (p.initialBlob = void 0), yr(_r, r, i, async () => {
24032
24095
  let r = h ?? await n(e, t), i = {
24033
24096
  widthPt: o,
24034
24097
  heightPt: s,
@@ -24039,41 +24102,41 @@ function gr(e, t, n, r = {}, i = n) {
24039
24102
  maxRetainedPixels: f
24040
24103
  };
24041
24104
  return {
24042
- bitmap: p ? await bn(r, i, p.inspection) : await yn(r, i),
24105
+ bitmap: p ? await Tn(r, i, p.inspection) : await wn(r, i),
24043
24106
  owned: !0
24044
24107
  };
24045
- }).then((e) => nr(e, a));
24046
- }, h = R(i);
24047
- return Bn(i, e, t, n).then((t) => {
24048
- if (Fn(i, h), rr(t)) return m(sr(i, e, a) ?? or(e, a), t);
24049
- if (!u && !d) return m(V(e), t, !1);
24050
- let n = `${H}${V(e)}`;
24051
- if (!tr(a) && L.get(i)?.entries.has(n)) return m(V(e), t, !1);
24052
- let r = lr(t, a);
24053
- return m(r ? cr(i, e, a, t.inspection.dimensions) ?? V(e, a) : V(e), t, r);
24108
+ }).then((e) => sr(e, a));
24109
+ }, h = z(i);
24110
+ return Gn(i, e, t, n).then((t) => {
24111
+ if (Bn(i, h), cr(t)) return m(fr(i, e, a) ?? dr(e, a), t);
24112
+ if (!u && !d) return m(H(e), t, !1);
24113
+ let n = `${U}${H(e)}`;
24114
+ if (!or(a) && R.get(i)?.entries.has(n)) return m(H(e), t, !1);
24115
+ let r = mr(t, a);
24116
+ return m(r ? pr(i, e, a, t.inspection.dimensions) ?? H(e, a) : H(e), t, r);
24054
24117
  });
24055
24118
  }
24056
- function _r(e, t) {
24057
- return L.get(t)?.entries.get(`${H}${V(e)}`)?.bitmap;
24119
+ function Sr(e, t) {
24120
+ return R.get(t)?.entries.get(`${U}${H(e)}`)?.bitmap;
24058
24121
  }
24059
- function vr(e) {
24060
- if (!kn(e)) return;
24061
- Mn.set(e, R(e) + 1), Nn.delete(e), jn.delete(e);
24062
- let t = L.get(e);
24122
+ function Cr(e) {
24123
+ if (!Pn(e)) return;
24124
+ Ln.set(e, z(e) + 1), Rn.delete(e), In.delete(e);
24125
+ let t = R.get(e);
24063
24126
  if (t) {
24064
- for (let n of t.entries.values()) $n(e, n.ownedPromise);
24065
- t.entries.clear(), t.retainedBytes = 0, L.delete(e);
24127
+ for (let n of t.entries.values()) ir(e, n.ownedPromise);
24128
+ t.entries.clear(), t.retainedBytes = 0, R.delete(e);
24066
24129
  }
24067
24130
  }
24068
24131
  //#endregion
24069
24132
  //#region packages/core/src/image/svg-image-by-path.ts
24070
- var yr = /* @__PURE__ */ new WeakMap(), br = 256;
24071
- function xr(e) {
24072
- let t = yr.get(e);
24073
- return t || (t = { imgs: /* @__PURE__ */ new Map() }, yr.set(e, t)), t;
24133
+ var wr = /* @__PURE__ */ new WeakMap(), Tr = 256;
24134
+ function Er(e) {
24135
+ let t = wr.get(e);
24136
+ return t || (t = { imgs: /* @__PURE__ */ new Map() }, wr.set(e, t)), t;
24074
24137
  }
24075
- function Sr(e, t, n = {}) {
24076
- if (typeof Image > "u") return gr(e, "image/svg+xml", t, {
24138
+ function Dr(e, t, n = {}) {
24139
+ if (typeof Image > "u") return xr(e, "image/svg+xml", t, {
24077
24140
  targetWidthPx: n.targetWidthPx,
24078
24141
  targetHeightPx: n.targetHeightPx,
24079
24142
  maxRetainedPixels: n.maxRetainedPixels,
@@ -24082,10 +24145,10 @@ function Sr(e, t, n = {}) {
24082
24145
  if (!t) throw Error(`svg decode failed: ${e}`);
24083
24146
  return t;
24084
24147
  });
24085
- let r = xr(t), i = r.imgs.get(e);
24148
+ let r = Er(t), i = r.imgs.get(e);
24086
24149
  if (i) return r.imgs.delete(e), r.imgs.set(e, i), i.promise;
24087
24150
  let a = {};
24088
- if (a.promise = Cn(t, async () => {
24151
+ if (a.promise = On(t, async () => {
24089
24152
  if (r.imgs.get(e) !== a) throw Error("SVG decode was superseded before it started");
24090
24153
  let n = await t(e, "image/svg+xml"), i = URL.createObjectURL(n);
24091
24154
  try {
@@ -24100,44 +24163,44 @@ function Sr(e, t, n = {}) {
24100
24163
  }
24101
24164
  }), a.promise.catch(() => {
24102
24165
  r.imgs.get(e) === a && r.imgs.delete(e);
24103
- }), r.imgs.set(e, a), r.imgs.size > br) {
24166
+ }), r.imgs.set(e, a), r.imgs.size > Tr) {
24104
24167
  let e = r.imgs.keys().next().value;
24105
24168
  r.imgs.delete(e);
24106
24169
  }
24107
24170
  return a.promise;
24108
24171
  }
24109
- function Cr(e) {
24110
- let t = yr.get(e);
24111
- t && (t.imgs.clear(), yr.delete(e));
24172
+ function Or(e) {
24173
+ let t = wr.get(e);
24174
+ t && (t.imgs.clear(), wr.delete(e));
24112
24175
  }
24113
24176
  //#endregion
24114
24177
  //#region packages/core/src/image/duotone.ts
24115
- function wr(e) {
24178
+ function kr(e) {
24116
24179
  return /^[0-9a-fA-F]{6}$/.test(e) ? [
24117
24180
  parseInt(e.slice(0, 2), 16),
24118
24181
  parseInt(e.slice(2, 4), 16),
24119
24182
  parseInt(e.slice(4, 6), 16)
24120
24183
  ] : null;
24121
24184
  }
24122
- function Tr(e, t, n) {
24185
+ function Ar(e, t, n) {
24123
24186
  return (.299 * e + .587 * t + .114 * n) / 255;
24124
24187
  }
24125
- function Er(e, t, n) {
24126
- let r = wr(t), i = wr(n);
24188
+ function jr(e, t, n) {
24189
+ let r = kr(t), i = kr(n);
24127
24190
  if (!r || !i) return e;
24128
24191
  let [a, o, s] = r, [c, l, u] = i, d = e.data;
24129
24192
  for (let e = 0; e < d.length; e += 4) {
24130
24193
  if (d[e + 3] === 0) continue;
24131
- let t = Tr(d[e], d[e + 1], d[e + 2]);
24194
+ let t = Ar(d[e], d[e + 1], d[e + 2]);
24132
24195
  d[e] = Math.round(a + (c - a) * t), d[e + 1] = Math.round(o + (l - o) * t), d[e + 2] = Math.round(s + (u - s) * t);
24133
24196
  }
24134
24197
  return e;
24135
24198
  }
24136
- var Dr = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
24137
- async function Or(e, t, n) {
24199
+ var Mr = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
24200
+ async function Nr(e, t, n) {
24138
24201
  let { width: r, height: i } = n;
24139
24202
  if (r <= 0 || i <= 0 || typeof createImageBitmap > "u") return e;
24140
- let a = (n.offscreenFactory ?? Dr)(r, i);
24203
+ let a = (n.offscreenFactory ?? Mr)(r, i);
24141
24204
  if (!a) return e;
24142
24205
  let o = a.getContext("2d");
24143
24206
  if (!o) return e;
@@ -24148,24 +24211,24 @@ async function Or(e, t, n) {
24148
24211
  } catch {
24149
24212
  return e;
24150
24213
  }
24151
- Er(s, t.clr1, t.clr2), o.putImageData(s, 0, 0);
24214
+ jr(s, t.clr1, t.clr2), o.putImageData(s, 0, 0);
24152
24215
  let c = C(r, i, n.targetWidthPx, n.targetHeightPx);
24153
24216
  return c ? createImageBitmap(a, c) : createImageBitmap(a);
24154
24217
  }
24155
24218
  //#endregion
24156
24219
  //#region packages/core/src/image/blip-gate.ts
24157
- function kr(e) {
24220
+ function Pr(e) {
24158
24221
  return e.svgImagePath != null && e.srcRect == null;
24159
24222
  }
24160
24223
  //#endregion
24161
24224
  //#region packages/core/src/math/mathml.ts
24162
- var Ar = {
24225
+ var Fr = {
24163
24226
  "&": "&amp;",
24164
24227
  "<": "&lt;",
24165
24228
  ">": "&gt;",
24166
24229
  "\"": "&quot;"
24167
- }, U = (e) => e.replace(/[&<>"]/g, (e) => Ar[e]);
24168
- function jr(e, t = "roman") {
24230
+ }, W = (e) => e.replace(/[&<>"]/g, (e) => Fr[e]);
24231
+ function Ir(e, t = "roman") {
24169
24232
  if (t === "double-struck" || t === "monospace") return t;
24170
24233
  if (t === "fraktur") return e === "bold" || e === "boldItalic" ? "bold-fraktur" : "fraktur";
24171
24234
  if (t === "script") return e === "bold" || e === "boldItalic" ? "bold-script" : "script";
@@ -24182,10 +24245,10 @@ function jr(e, t = "roman") {
24182
24245
  case "italic": return null;
24183
24246
  }
24184
24247
  }
24185
- var Mr = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Nr = "+−±∓×÷·∗⋅∘∙*/", Pr = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Fr = "([{⟨⌈⌊", Ir = ")]}⟩⌉⌋", Lr = ",;";
24186
- function Rr(e, t, n) {
24187
- let r = jr(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
24188
- o &&= (a += `<mn${i}>${U(o)}</mn>`, "");
24248
+ var Lr = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Rr = "+−±∓×÷·∗⋅∘∙*/", zr = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Br = "([{⟨⌈⌊", Vr = ")]}⟩⌉⌋", Hr = ",;";
24249
+ function Ur(e, t, n) {
24250
+ let r = Ir(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
24251
+ o &&= (a += `<mn${i}>${W(o)}</mn>`, "");
24189
24252
  };
24190
24253
  for (let t of e) {
24191
24254
  if (t === " ") {
@@ -24196,56 +24259,56 @@ function Rr(e, t, n) {
24196
24259
  o += t;
24197
24260
  continue;
24198
24261
  }
24199
- s(), Nr.includes(t) || Pr.includes(t) || Lr.includes(t) ? a += `<mo>${U(t)}</mo>` : Fr.includes(t) || Ir.includes(t) ? a += `<mo fence="true" stretchy="false">${U(t)}</mo>` : a += `<mi${i}>${U(t)}</mi>`;
24262
+ s(), Rr.includes(t) || zr.includes(t) || Hr.includes(t) ? a += `<mo>${W(t)}</mo>` : Br.includes(t) || Vr.includes(t) ? a += `<mo fence="true" stretchy="false">${W(t)}</mo>` : a += `<mi${i}>${W(t)}</mi>`;
24200
24263
  }
24201
24264
  return s(), a;
24202
24265
  }
24203
- function W(e) {
24204
- return e.map(zr).join("");
24205
- }
24206
24266
  function G(e) {
24207
- return `<mrow>${W(e)}</mrow>`;
24267
+ return e.map(Wr).join("");
24208
24268
  }
24209
- function zr(e) {
24269
+ function K(e) {
24270
+ return `<mrow>${G(e)}</mrow>`;
24271
+ }
24272
+ function Wr(e) {
24210
24273
  switch (e.kind) {
24211
- case "run": return Rr(e.text, e.style, e.__script);
24212
- case "group": return G(e.items);
24213
- case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${G(e.num)}${G(e.den)}</mfrac>`;
24214
- case "sup": return `<msup>${G(e.base)}${G(e.sup ?? [])}</msup>`;
24215
- case "sub": return `<msub>${G(e.base)}${G(e.sub ?? [])}</msub>`;
24216
- case "subSup": return `<msubsup>${G(e.base)}${G(e.sub ?? [])}${G(e.sup ?? [])}</msubsup>`;
24217
- case "nary": return Jr(e);
24218
- case "delimiter": return Yr(e);
24219
- case "radical": return e.index && e.index.length ? `<mroot>${G(e.radicand)}${G(e.index)}</mroot>` : `<msqrt>${W(e.radicand)}</msqrt>`;
24220
- case "limit": return Gr(e);
24221
- case "array": return Kr(e);
24274
+ case "run": return Ur(e.text, e.style, e.__script);
24275
+ case "group": return K(e.items);
24276
+ case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${K(e.num)}${K(e.den)}</mfrac>`;
24277
+ case "sup": return `<msup>${K(e.base)}${K(e.sup ?? [])}</msup>`;
24278
+ case "sub": return `<msub>${K(e.base)}${K(e.sub ?? [])}</msub>`;
24279
+ case "subSup": return `<msubsup>${K(e.base)}${K(e.sub ?? [])}${K(e.sup ?? [])}</msubsup>`;
24280
+ case "nary": return $r(e);
24281
+ case "delimiter": return ei(e);
24282
+ case "radical": return e.index && e.index.length ? `<mroot>${K(e.radicand)}${K(e.index)}</mroot>` : `<msqrt>${G(e.radicand)}</msqrt>`;
24283
+ case "limit": return Xr(e);
24284
+ case "array": return Zr(e);
24222
24285
  case "groupChr": {
24223
- let t = G(e.base), n = Mr.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${U(e.char)}</mo>`;
24286
+ let t = K(e.base), n = Lr.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${W(e.char)}</mo>`;
24224
24287
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
24225
24288
  }
24226
24289
  case "bar": {
24227
- let t = G(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
24290
+ let t = K(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
24228
24291
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
24229
24292
  }
24230
- case "accent": return Wr(e);
24231
- case "func": return `<mrow>${G(e.name)}<mo>&#x2061;</mo>${G(e.arg)}</mrow>`;
24232
- case "phant": return Br(e);
24233
- case "sPre": return `<mmultiscripts>${G(e.base)}<mprescripts/>${G(e.sub)}${G(e.sup)}</mmultiscripts>`;
24234
- case "box": return G(e.base);
24235
- case "borderBox": return Vr(e);
24293
+ case "accent": return Yr(e);
24294
+ case "func": return `<mrow>${K(e.name)}<mo>&#x2061;</mo>${K(e.arg)}</mrow>`;
24295
+ case "phant": return Gr(e);
24296
+ case "sPre": return `<mmultiscripts>${K(e.base)}<mprescripts/>${K(e.sub)}${K(e.sup)}</mmultiscripts>`;
24297
+ case "box": return K(e.base);
24298
+ case "borderBox": return Kr(e);
24236
24299
  }
24237
24300
  }
24238
- function Br(e) {
24239
- let t = e.show ? W(e.base) : `<mphantom>${W(e.base)}</mphantom>`, n = [];
24301
+ function Gr(e) {
24302
+ let t = e.show ? G(e.base) : `<mphantom>${G(e.base)}</mphantom>`, n = [];
24240
24303
  return e.zeroWid && n.push("width=\"0\""), e.zeroAsc && n.push("height=\"0\""), e.zeroDesc && n.push("depth=\"0\""), n.length ? `<mpadded ${n.join(" ")}>${t}</mpadded>` : `<mrow>${t}</mrow>`;
24241
24304
  }
24242
- function Vr(e) {
24305
+ function Kr(e) {
24243
24306
  let t = [], n = !e.hideTop, r = !e.hideBot, i = !e.hideLeft, a = !e.hideRight;
24244
24307
  n && r && i && a ? t.push("box") : (n && t.push("top"), r && t.push("bottom"), i && t.push("left"), a && t.push("right")), e.strikeH && t.push("horizontalstrike"), e.strikeV && t.push("verticalstrike"), e.strikeBltr && t.push("updiagonalstrike"), e.strikeTlbr && t.push("downdiagonalstrike");
24245
- let o = W(e.base);
24308
+ let o = G(e.base);
24246
24309
  return t.length ? `<menclose notation="${t.join(" ")}">${o}</menclose>` : `<mrow>${o}</mrow>`;
24247
24310
  }
24248
- var Hr = {
24311
+ var qr = {
24249
24312
  "̀": "`",
24250
24313
  "́": "´",
24251
24314
  "̂": "^",
@@ -24256,7 +24319,7 @@ var Hr = {
24256
24319
  "̌": "ˇ",
24257
24320
  "⃗": "→",
24258
24321
  "⃖": "←"
24259
- }, Ur = new Set([
24322
+ }, Jr = new Set([
24260
24323
  "̅",
24261
24324
  "̄",
24262
24325
  "¯",
@@ -24264,47 +24327,47 @@ var Hr = {
24264
24327
  "̲",
24265
24328
  "̳"
24266
24329
  ]);
24267
- function Wr(e) {
24268
- let t = G(e.base);
24269
- if (Ur.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
24270
- let n = Hr[e.char] ?? e.char;
24271
- return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${U(n)}</mo></mover>`;
24330
+ function Yr(e) {
24331
+ let t = K(e.base);
24332
+ if (Jr.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
24333
+ let n = qr[e.char] ?? e.char;
24334
+ return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${W(n)}</mo></mover>`;
24272
24335
  }
24273
- function Gr(e) {
24274
- let t = G(e.base), n = e.lower && e.lower.length ? G(e.lower) : null, r = e.upper && e.upper.length ? G(e.upper) : null;
24336
+ function Xr(e) {
24337
+ let t = K(e.base), n = e.lower && e.lower.length ? K(e.lower) : null, r = e.upper && e.upper.length ? K(e.upper) : null;
24275
24338
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
24276
24339
  }
24277
- function Kr(e) {
24340
+ function Zr(e) {
24278
24341
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
24279
24342
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
24280
- let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${W(e)}</mtd>`).join("")}</mtr>`).join("");
24343
+ let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${G(e)}</mtd>`).join("")}</mtr>`).join("");
24281
24344
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
24282
24345
  }
24283
- var qr = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
24284
- function Jr(e) {
24285
- let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : qr.has(e.op), n = `<mo largeop="true">${U(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
24286
- return a = t ? r.length && i.length ? `<msubsup>${n}${G(r)}${G(i)}</msubsup>` : r.length ? `<msub>${n}${G(r)}</msub>` : i.length ? `<msup>${n}${G(i)}</msup>` : n : r.length && i.length ? `<munderover>${n}${G(r)}${G(i)}</munderover>` : r.length ? `<munder>${n}${G(r)}</munder>` : i.length ? `<mover>${n}${G(i)}</mover>` : n, `<mrow>${a}${W(e.body)}</mrow>`;
24346
+ var Qr = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
24347
+ function $r(e) {
24348
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : Qr.has(e.op), n = `<mo largeop="true">${W(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
24349
+ return a = t ? r.length && i.length ? `<msubsup>${n}${K(r)}${K(i)}</msubsup>` : r.length ? `<msub>${n}${K(r)}</msub>` : i.length ? `<msup>${n}${K(i)}</msup>` : n : r.length && i.length ? `<munderover>${n}${K(r)}${K(i)}</munderover>` : r.length ? `<munder>${n}${K(r)}</munder>` : i.length ? `<mover>${n}${K(i)}</mover>` : n, `<mrow>${a}${G(e.body)}</mrow>`;
24287
24350
  }
24288
- function Yr(e) {
24289
- let t = (e) => `<mo fence="true" stretchy="true">${U(e)}</mo>`, n = e.items.map((e) => G(e)).join("<mo separator=\"true\">,</mo>");
24351
+ function ei(e) {
24352
+ let t = (e) => `<mo fence="true" stretchy="true">${W(e)}</mo>`, n = e.items.map((e) => K(e)).join("<mo separator=\"true\">,</mo>");
24290
24353
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
24291
24354
  }
24292
- function Xr(e, t) {
24293
- return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${W(e)}</math>`;
24355
+ function ti(e, t) {
24356
+ return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${G(e)}</math>`;
24294
24357
  }
24295
- var Zr = 64;
24296
- function Qr(e, t, n) {
24358
+ var ni = 64;
24359
+ function ri(e, t, n) {
24297
24360
  let r = Math.max(1, Math.round(t * 256)), i = Math.max(1, Math.round(n * 256));
24298
24361
  return e.replace(/<svg([^>]*?)>/, (e, t) => `<svg${t.replace(/\s(?:width|height)="[^"]*"/g, "")} width="${r}" height="${i}">`);
24299
24362
  }
24300
- function K(e, t) {
24363
+ function q(e, t) {
24301
24364
  return RegExp(`(?:^|\\s)${t}="([^"]*)"`).exec(e)?.[1];
24302
24365
  }
24303
- function q(e, t, n = 0) {
24304
- let r = Number.parseFloat(K(e, t) ?? "");
24366
+ function J(e, t, n = 0) {
24367
+ let r = Number.parseFloat(q(e, t) ?? "");
24305
24368
  return Number.isFinite(r) ? r : n;
24306
24369
  }
24307
- function $r(e) {
24370
+ function ii(e) {
24308
24371
  let t = /* @__PURE__ */ new Map();
24309
24372
  for (let n of [
24310
24373
  "fill",
@@ -24315,10 +24378,10 @@ function $r(e) {
24315
24378
  "fill-rule",
24316
24379
  "opacity"
24317
24380
  ]) {
24318
- let r = K(e, n);
24381
+ let r = q(e, n);
24319
24382
  r !== void 0 && t.set(n, r);
24320
24383
  }
24321
- let n = K(e, "style");
24384
+ let n = q(e, "style");
24322
24385
  if (n) for (let e of n.split(";")) {
24323
24386
  let n = e.indexOf(":");
24324
24387
  if (n < 0) continue;
@@ -24327,8 +24390,8 @@ function $r(e) {
24327
24390
  }
24328
24391
  return t;
24329
24392
  }
24330
- function ei(e, t, n) {
24331
- let r = $r(t), i = { ...n }, a = r.get("fill");
24393
+ function ai(e, t, n) {
24394
+ let r = ii(t), i = { ...n }, a = r.get("fill");
24332
24395
  a === "none" ? i.fill = !1 : a && (i.fill = !0, e.fillStyle = a);
24333
24396
  let o = r.get("stroke");
24334
24397
  o === "none" ? i.stroke = !1 : o && (i.stroke = !0, e.strokeStyle = o);
@@ -24343,7 +24406,7 @@ function ei(e, t, n) {
24343
24406
  let d = Number.parseFloat(r.get("opacity") ?? "");
24344
24407
  return Number.isFinite(d) && (e.globalAlpha *= Math.max(0, Math.min(1, d))), i;
24345
24408
  }
24346
- function ti(e, t) {
24409
+ function oi(e, t) {
24347
24410
  if (!t) return;
24348
24411
  let n = /([a-zA-Z]+)\(([^)]*)\)/g;
24349
24412
  for (let r = n.exec(t); r; r = n.exec(t)) {
@@ -24368,11 +24431,11 @@ function ti(e, t) {
24368
24431
  }
24369
24432
  }
24370
24433
  }
24371
- function ni(e, t, n) {
24434
+ function si(e, t, n) {
24372
24435
  n.fill && e.fill(t, n.fillRule), n.stroke && e.lineWidth > 0 && e.stroke(t);
24373
24436
  }
24374
- function ri(e, t, n, r) {
24375
- let i = K(t.slice(0, t.indexOf(">") + 1), "viewBox")?.trim().split(/[\s,]+/).map(Number);
24437
+ function ci(e, t, n, r) {
24438
+ let i = q(t.slice(0, t.indexOf(">") + 1), "viewBox")?.trim().split(/[\s,]+/).map(Number);
24376
24439
  if (!i || i.length !== 4 || i.some((e) => !Number.isFinite(e))) throw TypeError("MathJax SVG must contain a finite viewBox");
24377
24440
  let [a, o, s, c] = i;
24378
24441
  if (!(s > 0) || !(c > 0)) throw TypeError("MathJax SVG viewBox must have positive dimensions");
@@ -24390,23 +24453,23 @@ function ri(e, t, n, r) {
24390
24453
  continue;
24391
24454
  }
24392
24455
  if (a === "g") {
24393
- u.push(l), e.save(), l = ei(e, i, l), ti(e, K(i, "transform"));
24456
+ u.push(l), e.save(), l = ai(e, i, l), oi(e, q(i, "transform"));
24394
24457
  continue;
24395
24458
  }
24396
24459
  if (a !== "path" && a !== "rect" && a !== "line") continue;
24397
24460
  e.save();
24398
- let s = ei(e, i, l);
24399
- ti(e, K(i, "transform"));
24400
- let c = a === "path" ? new Path2D(K(i, "d") ?? "") : new Path2D();
24401
- a === "rect" ? c.rect(q(i, "x"), q(i, "y"), q(i, "width"), q(i, "height")) : a === "line" && (c.moveTo(q(i, "x1"), q(i, "y1")), c.lineTo(q(i, "x2"), q(i, "y2"))), ni(e, c, s), e.restore();
24461
+ let s = ai(e, i, l);
24462
+ oi(e, q(i, "transform"));
24463
+ let c = a === "path" ? new Path2D(q(i, "d") ?? "") : new Path2D();
24464
+ a === "rect" ? c.rect(J(i, "x"), J(i, "y"), J(i, "width"), J(i, "height")) : a === "line" && (c.moveTo(J(i, "x1"), J(i, "y1")), c.lineTo(J(i, "x2"), J(i, "y2"))), si(e, c, s), e.restore();
24402
24465
  }
24403
24466
  e.restore();
24404
24467
  }
24405
- async function ii(e, t) {
24468
+ async function li(e, t) {
24406
24469
  let { width: n, height: i } = _(e.widthEm * 256, (e.ascentEm + e.descentEm) * 256), a = r(n, i), o = a?.getContext("2d");
24407
24470
  if (!a || !o || typeof Path2D > "u") throw Error("Math SVG rasterization requires Canvas 2D and Path2D support");
24408
- ri(o, Qr(te(e.svg, t), e.widthEm, e.ascentEm + e.descentEm), n, i);
24409
- let s = a, c = n, l = i, u = Zr / 256, d = Math.max(1, Math.round(n * u)), f = Math.max(1, Math.round(i * u));
24471
+ ci(o, ri(te(e.svg, t), e.widthEm, e.ascentEm + e.descentEm), n, i);
24472
+ let s = a, c = n, l = i, u = ni / 256, d = Math.max(1, Math.round(n * u)), f = Math.max(1, Math.round(i * u));
24410
24473
  for (; c > d || l > f;) {
24411
24474
  let e = Math.max(d, Math.ceil(c / 2)), t = Math.max(f, Math.ceil(l / 2)), n = r(e, t), i = n?.getContext("2d");
24412
24475
  if (!n || !i) break;
@@ -24418,7 +24481,7 @@ async function ii(e, t) {
24418
24481
  heightPx: l
24419
24482
  };
24420
24483
  }
24421
- function ai(e, t) {
24484
+ function ui(e, t) {
24422
24485
  let n = r(e.widthPx, e.heightPx);
24423
24486
  if (!n) return e.source;
24424
24487
  let i = n.getContext("2d");
@@ -24426,21 +24489,21 @@ function ai(e, t) {
24426
24489
  }
24427
24490
  //#endregion
24428
24491
  //#region packages/core/src/canvas/env.ts
24429
- function oi(e) {
24492
+ function di(e) {
24430
24493
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
24431
24494
  }
24432
- function si(e = 1) {
24495
+ function fi(e = 1) {
24433
24496
  return typeof window < "u" && window.devicePixelRatio || e;
24434
24497
  }
24435
24498
  //#endregion
24436
24499
  //#region packages/core/src/canvas/crisp.ts
24437
- function ci(e, t, n) {
24500
+ function pi(e, t, n) {
24438
24501
  let r = Math.round(t * n) % 2 == 1 ? .5 : 0, i = e * n;
24439
24502
  return (Math.round(i - r) + r) / n - e;
24440
24503
  }
24441
24504
  //#endregion
24442
24505
  //#region packages/core/src/internal/runtime-generation.ts
24443
- var li = class {
24506
+ var mi = class {
24444
24507
  state = "uninitialized";
24445
24508
  generationValue = 0;
24446
24509
  readiness;
@@ -24494,17 +24557,17 @@ var li = class {
24494
24557
  assertCurrent(e) {
24495
24558
  if (this.state !== "ready" || e !== this.generationValue) throw Error("WASM archive session belongs to a discarded runtime generation");
24496
24559
  }
24497
- }, ui = class e extends Error {
24560
+ }, hi = class e extends Error {
24498
24561
  code = "parser-crashed";
24499
24562
  constructor(t) {
24500
24563
  super(t), this.name = "WasmTrapError", Object.setPrototypeOf(this, e.prototype);
24501
24564
  }
24502
24565
  };
24503
- function di(e) {
24566
+ function gi(e) {
24504
24567
  let t = globalThis.WebAssembly?.RuntimeError;
24505
24568
  return t && e instanceof t || e instanceof RangeError ? !0 : e instanceof Error ? e.name === "RuntimeError" || e.name === "CompileError" || e.name === "LinkError" || e.name === "InternalError" || e.name === "OOMError" : !1;
24506
24569
  }
24507
- function fi(e) {
24570
+ function _i(e) {
24508
24571
  try {
24509
24572
  if ((typeof e != "object" || !e) && typeof e != "function") return;
24510
24573
  let t = Reflect.get(e, "__destroy_into_raw");
@@ -24513,27 +24576,27 @@ function fi(e) {
24513
24576
  }
24514
24577
  //#endregion
24515
24578
  //#region packages/core/src/worker/pull-credit-error.ts
24516
- var pi = "ooxml-insufficient-credit", mi = "OOXML_INSUFFICIENT_CREDIT:";
24517
- function hi(e) {
24579
+ var vi = "ooxml-insufficient-credit", yi = "OOXML_INSUFFICIENT_CREDIT:";
24580
+ function bi(e) {
24518
24581
  return typeof e == "number" && Number.isSafeInteger(e) && e > 0;
24519
24582
  }
24520
- function gi(e) {
24583
+ function xi(e) {
24521
24584
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24522
24585
  let t = e;
24523
- return hi(t.requiredBytes) && hi(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
24586
+ return bi(t.requiredBytes) && bi(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
24524
24587
  }
24525
- var _i = class e extends RangeError {
24526
- code = pi;
24588
+ var Si = class e extends RangeError {
24589
+ code = vi;
24527
24590
  requiredBytes;
24528
24591
  offeredBytes;
24529
24592
  constructor(t) {
24530
24593
  super(`Pull unit requires ${t.requiredBytes} bytes but credit is ${t.offeredBytes}`), this.name = "PullSessionInsufficientCreditError", this.requiredBytes = t.requiredBytes, this.offeredBytes = t.offeredBytes, Object.setPrototypeOf(this, e.prototype);
24531
24594
  }
24532
24595
  };
24533
- function vi(e) {
24534
- if (e instanceof _i) return e;
24596
+ function Ci(e) {
24597
+ if (e instanceof Si) return e;
24535
24598
  let t = e instanceof Error ? e.message : String(e);
24536
- if (!t.startsWith(mi)) return;
24599
+ if (!t.startsWith(yi)) return;
24537
24600
  let n;
24538
24601
  try {
24539
24602
  n = JSON.parse(t.slice(26));
@@ -24542,55 +24605,55 @@ function vi(e) {
24542
24605
  }
24543
24606
  if (!n || typeof n != "object" || Array.isArray(n)) return;
24544
24607
  let r = n;
24545
- if (!(r.code !== "ooxml-insufficient-credit" || !gi(r))) return new _i(r);
24608
+ if (!(r.code !== "ooxml-insufficient-credit" || !xi(r))) return new Si(r);
24546
24609
  }
24547
- function yi(e, t, n) {
24548
- let r = vi(e);
24610
+ function wi(e, t, n) {
24611
+ let r = Ci(e);
24549
24612
  if (!(!r || r.offeredBytes !== t || r.requiredBytes > n)) return r;
24550
24613
  }
24551
- function bi(e, t, n) {
24552
- if (xi(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
24614
+ function Ti(e, t, n) {
24615
+ if (Ei(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
24553
24616
  }
24554
- function xi(e) {
24555
- return e instanceof _i || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && gi(e);
24617
+ function Ei(e) {
24618
+ return e instanceof Si || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && xi(e);
24556
24619
  }
24557
24620
  //#endregion
24558
24621
  //#region packages/core/src/worker/error-wire.ts
24559
- var Si = "OOXML_RESOURCE_LIMIT:", Ci = 128, wi = 256, Ti = 4096;
24560
- function J(e) {
24622
+ var Di = "OOXML_RESOURCE_LIMIT:", Oi = 128, ki = 256, Ai = 4096;
24623
+ function Y(e) {
24561
24624
  return typeof e == "number" && Number.isSafeInteger(e) && e >= 0;
24562
24625
  }
24563
- function Ei(e) {
24626
+ function ji(e) {
24564
24627
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24565
24628
  let t = e;
24566
- return J(t.archiveEntryCount) && J(t.declaredInflatedBytes) && (t.largestInflatedEntryBytes === void 0 || J(t.largestInflatedEntryBytes)) && J(t.distinctInflatedBytes) && J(t.operationInflatedBytes);
24629
+ return Y(t.archiveEntryCount) && Y(t.declaredInflatedBytes) && (t.largestInflatedEntryBytes === void 0 || Y(t.largestInflatedEntryBytes)) && Y(t.distinctInflatedBytes) && Y(t.operationInflatedBytes);
24567
24630
  }
24568
- function Di(e) {
24631
+ function Mi(e) {
24569
24632
  let t;
24570
24633
  try {
24571
24634
  t = JSON.parse(new TextDecoder().decode(e));
24572
24635
  } catch {
24573
24636
  throw TypeError("OOXML resource usage checkpoint is not valid JSON");
24574
24637
  }
24575
- if (!Ei(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
24638
+ if (!ji(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
24576
24639
  return t;
24577
24640
  }
24578
- function Oi(e) {
24641
+ function Ni(e) {
24579
24642
  return e === "docx" || e === "xlsx" || e === "pptx";
24580
24643
  }
24581
- function ki(e) {
24644
+ function Pi(e) {
24582
24645
  return e === "container" || e === "decompression" || e === "parsing" || e === "serialization" || e === "layout" || e === "rendering" || e === "worker";
24583
24646
  }
24584
- function Y(e, t) {
24647
+ function Fi(e, t) {
24585
24648
  return typeof e == "string" && e.length > 0 && e.length <= t && !/[\u0000-\u001f\u007f]/u.test(e);
24586
24649
  }
24587
- function Ai(e) {
24588
- return Y(e, Ci) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
24650
+ function Ii(e) {
24651
+ return Fi(e, Oi) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
24589
24652
  }
24590
- function ji(e) {
24591
- return !Y(e, Ti) || e.startsWith("/") || e.startsWith("\\") || e.includes("\\") || e.includes("?") || e.includes("#") || e.includes("://") || /^[a-z]:/iu.test(e) ? !1 : e.split("/").every((e) => e !== "" && e !== "." && e !== "..");
24653
+ function Li(e) {
24654
+ return !Fi(e, Ai) || e.startsWith("/") || e.startsWith("\\") || e.includes("\\") || e.includes("?") || e.includes("#") || e.includes("://") || /^[a-z]:/iu.test(e) ? !1 : e.split("/").every((e) => e !== "" && e !== "." && e !== "..");
24592
24655
  }
24593
- var Mi = new Map([
24656
+ var Ri = new Map([
24594
24657
  ["archive-entry:declared-inflated-bytes", {
24595
24658
  stage: "container",
24596
24659
  part: "required"
@@ -24637,20 +24700,20 @@ var Mi = new Map([
24637
24700
  part: "optional",
24638
24701
  configurable: !1
24639
24702
  }]
24640
- ]), Ni = new Set([...Mi.keys()].map((e) => e.slice(0, e.indexOf(":")))), Pi = new Set([...Mi.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
24641
- function Fi(e) {
24703
+ ]), zi = new Set([...Ri.keys()].map((e) => e.slice(0, e.indexOf(":")))), Bi = new Set([...Ri.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
24704
+ function Vi(e) {
24642
24705
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24643
24706
  let t = e;
24644
- return !Oi(t.format) || !Y(t.operation, wi) || !Ai(t.resource) || !Ai(t.metric) || !J(t.limit) || !J(t.observed) || typeof t.configurable != "boolean" || !Ei(t.usage) ? !1 : !("part" in t) || ji(t.part);
24707
+ return !Ni(t.format) || !Fi(t.operation, ki) || !Ii(t.resource) || !Ii(t.metric) || !Y(t.limit) || !Y(t.observed) || typeof t.configurable != "boolean" || !ji(t.usage) ? !1 : !("part" in t) || Li(t.part);
24645
24708
  }
24646
- function Ii(e) {
24709
+ function Hi(e) {
24647
24710
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24648
24711
  let t = e;
24649
- if (!ki(t.stage) || !Fi(t.violation)) return !1;
24650
- let n = t.violation, r = Mi.get(`${n.resource}:${n.metric}`);
24651
- return r ? t.stage !== r.stage || r.configurable === !1 && n.configurable !== !1 ? !1 : r.part === "required" ? n.part !== void 0 : r.part === "forbidden" ? n.part === void 0 : !0 : !(Ni.has(n.resource) && Pi.has(n.metric));
24712
+ if (!Pi(t.stage) || !Vi(t.violation)) return !1;
24713
+ let n = t.violation, r = Ri.get(`${n.resource}:${n.metric}`);
24714
+ return r ? t.stage !== r.stage || r.configurable === !1 && n.configurable !== !1 ? !1 : r.part === "required" ? n.part !== void 0 : r.part === "forbidden" ? n.part === void 0 : !0 : !(zi.has(n.resource) && Bi.has(n.metric));
24652
24715
  }
24653
- function Li(e) {
24716
+ function Ui(e) {
24654
24717
  return {
24655
24718
  archiveEntryCount: e.archiveEntryCount,
24656
24719
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -24659,8 +24722,8 @@ function Li(e) {
24659
24722
  operationInflatedBytes: e.operationInflatedBytes
24660
24723
  };
24661
24724
  }
24662
- function Ri(e) {
24663
- if (!Ii(e)) return;
24725
+ function Wi(e) {
24726
+ if (!Hi(e)) return;
24664
24727
  let t = e.violation, n = {
24665
24728
  stage: e.stage,
24666
24729
  violation: {
@@ -24672,18 +24735,18 @@ function Ri(e) {
24672
24735
  limit: t.limit,
24673
24736
  observed: t.observed,
24674
24737
  configurable: t.configurable,
24675
- usage: Li(t.usage)
24738
+ usage: Ui(t.usage)
24676
24739
  }
24677
24740
  };
24678
- return Ii(n) ? n : void 0;
24741
+ return Hi(n) ? n : void 0;
24679
24742
  }
24680
- function zi(e) {
24743
+ function Gi(e) {
24681
24744
  let t = e.violation;
24682
24745
  return `OOXML resource limit exceeded${t.part ? ` for ${t.part}` : ""}: ${t.metric} ${t.observed} > ${t.limit}`;
24683
24746
  }
24684
- function Bi(e) {
24747
+ function Ki(e) {
24685
24748
  let t = e instanceof Error ? e.message : String(e);
24686
- if (!t.startsWith(Si)) return;
24749
+ if (!t.startsWith(Di)) return;
24687
24750
  let n;
24688
24751
  try {
24689
24752
  n = JSON.parse(t.slice(21));
@@ -24692,9 +24755,9 @@ function Bi(e) {
24692
24755
  }
24693
24756
  if (!n || typeof n != "object") return;
24694
24757
  let r = n;
24695
- if (!(r.code !== "ooxml-resource-limit" || !Ii(r.details))) return new T(zi(r.details), r.details);
24758
+ if (!(r.code !== "ooxml-resource-limit" || !Hi(r.details))) return new T(Gi(r.details), r.details);
24696
24759
  }
24697
- function Vi(e) {
24760
+ function qi(e) {
24698
24761
  let t = l(e);
24699
24762
  if (t) {
24700
24763
  let e = new h(t.metric, t.limit, t.observed);
@@ -24711,7 +24774,7 @@ function Vi(e) {
24711
24774
  errorName: "TiffDecodeError",
24712
24775
  code: "ooxml-tiff-decode"
24713
24776
  };
24714
- let r = vi(e);
24777
+ let r = Ci(e);
24715
24778
  if (r) return {
24716
24779
  message: r.message,
24717
24780
  errorName: r.name,
@@ -24721,11 +24784,11 @@ function Vi(e) {
24721
24784
  offeredBytes: r.offeredBytes
24722
24785
  }
24723
24786
  };
24724
- let i = e instanceof w || e instanceof T ? e : Bi(e);
24787
+ let i = e instanceof w || e instanceof T ? e : Ki(e);
24725
24788
  if (i instanceof T) {
24726
- let e = Ri(i.details);
24789
+ let e = Wi(i.details);
24727
24790
  return e ? {
24728
- message: typeof i.message == "string" ? i.message : zi(e),
24791
+ message: typeof i.message == "string" ? i.message : Gi(e),
24729
24792
  errorName: "OoxmlResourceLimitError",
24730
24793
  code: "ooxml-resource-limit",
24731
24794
  resourceLimit: e
@@ -24736,24 +24799,24 @@ function Vi(e) {
24736
24799
  }
24737
24800
  if (i instanceof w) return {
24738
24801
  message: typeof i.message == "string" ? i.message : String(i.message),
24739
- errorName: Y(i.name, Ci) ? i.name : "OoxmlError",
24740
- ...Ai(i.code) ? { code: i.code } : {}
24802
+ errorName: Fi(i.name, Oi) ? i.name : "OoxmlError",
24803
+ ...Ii(i.code) ? { code: i.code } : {}
24741
24804
  };
24742
24805
  let a = e instanceof Error ? e.message : String(e);
24743
- if (typeof a == "string" && a.startsWith(Si)) return {
24806
+ if (typeof a == "string" && a.startsWith(Di)) return {
24744
24807
  message: "Invalid OOXML resource-limit payload",
24745
24808
  errorName: "Error"
24746
24809
  };
24747
24810
  let o = e instanceof Error ? e : Error(a), s = o;
24748
24811
  return {
24749
24812
  message: typeof o.message == "string" ? o.message : String(o.message),
24750
- errorName: Y(o.name, Ci) ? o.name : "Error",
24813
+ errorName: Fi(o.name, Oi) ? o.name : "Error",
24751
24814
  ...typeof s.code == "string" ? { code: s.code } : {}
24752
24815
  };
24753
24816
  }
24754
- function Hi(e) {
24817
+ function Ji(e) {
24755
24818
  try {
24756
- return Vi(e);
24819
+ return qi(e);
24757
24820
  } catch {
24758
24821
  return {
24759
24822
  message: "Worker operation failed with an unreadable error",
@@ -24761,93 +24824,93 @@ function Hi(e) {
24761
24824
  };
24762
24825
  }
24763
24826
  }
24764
- var Ui = new Set([
24827
+ var Yi = new Set([
24765
24828
  "encrypted",
24766
24829
  "invalid-password",
24767
24830
  "unsupported-encryption",
24768
24831
  "legacy-binary-format",
24769
24832
  "not-ooxml"
24770
- ]), Wi = {
24833
+ ]), Xi = {
24771
24834
  "image-dimension": !0,
24772
24835
  "image-pixels": !0,
24773
24836
  "active-decoded-bytes": !0
24774
24837
  };
24775
- function Gi(e) {
24776
- return typeof e == "string" && Object.prototype.hasOwnProperty.call(Wi, e);
24838
+ function Zi(e) {
24839
+ return typeof e == "string" && Object.prototype.hasOwnProperty.call(Xi, e);
24777
24840
  }
24778
- function Ki(e, t) {
24841
+ function Qi(e, t) {
24779
24842
  if (e !== "ooxml-decoded-image-limit" || !t || typeof t != "object") return;
24780
24843
  let n = t, r = n.metric, i = n.limit, a = n.observed;
24781
- if (!(!Gi(r) || !J(i) || !J(a) || a <= i)) return {
24844
+ if (!(!Zi(r) || !Y(i) || !Y(a) || a <= i)) return {
24782
24845
  metric: r,
24783
24846
  limit: i,
24784
24847
  observed: a
24785
24848
  };
24786
24849
  }
24787
- function qi(e) {
24788
- let t = e.message, n = e.errorName, r = e.code, i = e.decodedImage, a = e.insufficientCredit, o = e.resourceLimit, s = typeof t == "string" ? t : "Worker operation failed with an invalid error payload", c = Y(n, Ci) ? n : void 0, l = typeof r == "string" ? r : void 0, u = Ki(l, i);
24850
+ function $i(e) {
24851
+ let t = e.message, n = e.errorName, r = e.code, i = e.decodedImage, a = e.insufficientCredit, o = e.resourceLimit, s = typeof t == "string" ? t : "Worker operation failed with an invalid error payload", c = Fi(n, Oi) ? n : void 0, l = typeof r == "string" ? r : void 0, u = Qi(l, i);
24789
24852
  if (u) return new h(u.metric, u.limit, u.observed);
24790
24853
  if (l === "ooxml-tiff-decode") return new b(s);
24791
- if (l === "ooxml-insufficient-credit" && gi(a)) return new _i(a);
24792
- if (l === "ooxml-resource-limit" && Ii(o)) return new T(s, o);
24793
- if (l && Ui.has(l)) return new w(l, s);
24854
+ if (l === "ooxml-insufficient-credit" && xi(a)) return new Si(a);
24855
+ if (l === "ooxml-resource-limit" && Hi(o)) return new T(s, o);
24856
+ if (l && Yi.has(l)) return new w(l, s);
24794
24857
  let d = c === "TypeError" ? TypeError(s) : c === "RangeError" ? RangeError(s) : Error(s);
24795
24858
  return c && (d.name = c), l !== void 0 && Object.assign(d, { code: l }), d;
24796
24859
  }
24797
- function Ji(e) {
24860
+ function ea(e) {
24798
24861
  try {
24799
- return qi(e);
24862
+ return $i(e);
24800
24863
  } catch {
24801
24864
  return /* @__PURE__ */ Error("Worker operation failed with an unreadable error payload");
24802
24865
  }
24803
24866
  }
24804
24867
  //#endregion
24805
24868
  //#region packages/core/src/worker/resource-policy.ts
24806
- var Yi = Object.freeze({
24869
+ var ta = Object.freeze({
24807
24870
  maxArchiveEntryBytes: ne,
24808
24871
  maxTotalInflatedBytes: re,
24809
24872
  maxArchiveEntries: ie
24810
24873
  });
24811
- function Xi(e, t, n) {
24874
+ function na(e, t, n) {
24812
24875
  if (t === void 0) return n;
24813
24876
  if (t === null) return null;
24814
24877
  if (!Number.isSafeInteger(t) || t <= 0) throw RangeError(`resourceLimits.${e} must be null or a positive safe integer number of bytes`);
24815
24878
  return t;
24816
24879
  }
24817
- function Zi(e) {
24818
- if (e === void 0) return Yi.maxArchiveEntries;
24880
+ function ra(e) {
24881
+ if (e === void 0) return ta.maxArchiveEntries;
24819
24882
  if (e === null) return null;
24820
24883
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError("resourceLimits.maxArchiveEntries must be null or a positive safe integer");
24821
24884
  if (e > 2e4) throw RangeError(`resourceLimits.maxArchiveEntries must not exceed the internal hard ceiling of ${ae}`);
24822
24885
  return e;
24823
24886
  }
24824
- function Qi(e) {
24887
+ function ia(e) {
24825
24888
  if (!(e === void 0 || !(e > 0))) {
24826
24889
  if (!Number.isSafeInteger(e)) throw RangeError("maxZipEntryBytes must be a positive safe integer number of bytes");
24827
24890
  return e;
24828
24891
  }
24829
24892
  }
24830
- function $i(e) {
24893
+ function aa(e) {
24831
24894
  let t = e.resourceLimits;
24832
24895
  if (t !== void 0 && (typeof t != "object" || !t || Array.isArray(t))) throw TypeError("resourceLimits must be an object when provided");
24833
- let n = Qi(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
24896
+ let n = ia(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
24834
24897
  if (n !== void 0 && r !== void 0 && n !== r) throw RangeError("maxZipEntryBytes conflicts with resourceLimits.maxArchiveEntryBytes");
24835
24898
  return Object.freeze({
24836
- maxArchiveEntryBytes: Xi("maxArchiveEntryBytes", r === void 0 ? n : r, Yi.maxArchiveEntryBytes),
24837
- maxTotalInflatedBytes: Xi("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, Yi.maxTotalInflatedBytes),
24838
- maxArchiveEntries: Zi(t?.maxArchiveEntries)
24899
+ maxArchiveEntryBytes: na("maxArchiveEntryBytes", r === void 0 ? n : r, ta.maxArchiveEntryBytes),
24900
+ maxTotalInflatedBytes: na("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, ta.maxTotalInflatedBytes),
24901
+ maxArchiveEntries: ra(t?.maxArchiveEntries)
24839
24902
  });
24840
24903
  }
24841
- function ea(e) {
24904
+ function oa(e) {
24842
24905
  if (e.debug !== void 0 && typeof e.debug != "boolean") throw TypeError("debug must be a boolean when provided");
24843
24906
  if (e.onResourceMetrics !== void 0 && typeof e.onResourceMetrics != "function") throw TypeError("onResourceMetrics must be a function when provided");
24844
24907
  return Object.freeze({
24845
- policy: $i(e),
24908
+ policy: aa(e),
24846
24909
  debug: e.debug ?? !1,
24847
24910
  ...e.onResourceMetrics ? { onResourceMetrics: e.onResourceMetrics } : {}
24848
24911
  });
24849
24912
  }
24850
- function ta(e) {
24913
+ function sa(e) {
24851
24914
  return [
24852
24915
  e.maxArchiveEntryBytes === null ? 0n : BigInt(e.maxArchiveEntryBytes),
24853
24916
  e.maxTotalInflatedBytes === null ? 0n : BigInt(e.maxTotalInflatedBytes),
@@ -24856,7 +24919,7 @@ function ta(e) {
24856
24919
  }
24857
24920
  //#endregion
24858
24921
  //#region packages/core/src/internal/console-tui.ts
24859
- var na = [
24922
+ var ca = [
24860
24923
  "font-family: \"SFMono-Regular\", Menlo, Monaco, Consolas, monospace",
24861
24924
  "font-size: 12px",
24862
24925
  "line-height: 1.35",
@@ -24864,29 +24927,29 @@ var na = [
24864
24927
  "letter-spacing: 0",
24865
24928
  "white-space: pre"
24866
24929
  ].join(";");
24867
- function ra(e) {
24868
- if (ia()) {
24869
- console.log(`%c${e}`, na);
24930
+ function la(e) {
24931
+ if (ua()) {
24932
+ console.log(`%c${e}`, ca);
24870
24933
  return;
24871
24934
  }
24872
24935
  console.log(e);
24873
24936
  }
24874
- function ia() {
24937
+ function ua() {
24875
24938
  return typeof window < "u" && globalThis.process?.release?.name !== "node";
24876
24939
  }
24877
24940
  //#endregion
24878
24941
  //#region packages/core/src/worker/resource-debug-view.ts
24879
- function aa(e) {
24880
- let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [ua(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
24881
- if (r.push(X(`mode ${e.mode.padEnd(8)} elapsed ${ca(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(X(`source ${sa(e.sourceBytes)}`, 68)), r.push(da(" admission ", 68)), r.push(fa("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(fa("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(X(`entry count ${e.usage ? la(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : la(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(X(`declared inflated ${sa(e.usage.declaredInflatedBytes)}`, 68)) : r.push(X("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
24882
- r.push(da(" checkpoints ", 68));
24942
+ function da(e) {
24943
+ let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [ga(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
24944
+ if (r.push(X(`mode ${e.mode.padEnd(8)} elapsed ${ma(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(X(`source ${pa(e.sourceBytes)}`, 68)), r.push(_a(" admission ", 68)), r.push(va("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(va("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(X(`entry count ${e.usage ? ha(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : ha(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(X(`declared inflated ${pa(e.usage.declaredInflatedBytes)}`, 68)) : r.push(X("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
24945
+ r.push(_a(" checkpoints ", 68));
24883
24946
  for (let t of e.checkpoints) {
24884
- let e = t.usage ? sa(t.usage.distinctInflatedBytes) : "—";
24885
- r.push(X(`${ca(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
24947
+ let e = t.usage ? pa(t.usage.distinctInflatedBytes) : "—";
24948
+ r.push(X(`${ma(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
24886
24949
  }
24887
24950
  }
24888
- if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(da(" result ", 68)), r.push(X(Object.entries(e.outcome).map(([e, t]) => `${e} ${la(t)}`).join(" "), 68))), e.error) {
24889
- r.push(da(" failure ", 68));
24951
+ if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(_a(" result ", 68)), r.push(X(Object.entries(e.outcome).map(([e, t]) => `${e} ${ha(t)}`).join(" "), 68))), e.error) {
24952
+ r.push(_a(" failure ", 68));
24890
24953
  let t = [
24891
24954
  e.error.code,
24892
24955
  e.error.stage,
@@ -24897,10 +24960,10 @@ function aa(e) {
24897
24960
  }
24898
24961
  return r.push(`└${"─".repeat(68)}┘`), r.join("\n");
24899
24962
  }
24900
- function oa(e) {
24901
- ra(aa(e));
24963
+ function fa(e) {
24964
+ la(da(e));
24902
24965
  }
24903
- function sa(e) {
24966
+ function pa(e) {
24904
24967
  if (!Number.isFinite(e) || e < 0) return "—";
24905
24968
  let t = [
24906
24969
  "B",
@@ -24913,17 +24976,17 @@ function sa(e) {
24913
24976
  let i = r === 0 || n >= 100 ? 0 : n >= 10 ? 1 : 2;
24914
24977
  return `${n.toFixed(i)} ${t[r]}`;
24915
24978
  }
24916
- function ca(e) {
24979
+ function ma(e) {
24917
24980
  return e < 1e3 ? `${Math.round(e)} ms` : `${(e / 1e3).toFixed(2)} s`;
24918
24981
  }
24919
- function la(e) {
24982
+ function ha(e) {
24920
24983
  return Number.isSafeInteger(e) ? e.toLocaleString("en-US") : "—";
24921
24984
  }
24922
- function ua(e, t) {
24985
+ function ga(e, t) {
24923
24986
  let n = e.slice(0, t);
24924
24987
  return `┌${n}${"─".repeat(t - n.length)}┐`;
24925
24988
  }
24926
- function da(e, t) {
24989
+ function _a(e, t) {
24927
24990
  let n = e.slice(0, t);
24928
24991
  return `├${n}${"─".repeat(t - n.length)}┤`;
24929
24992
  }
@@ -24931,20 +24994,20 @@ function X(e, t) {
24931
24994
  let n = e.slice(0, t - 2);
24932
24995
  return `│ ${n}${" ".repeat(t - n.length - 2)} │`;
24933
24996
  }
24934
- function fa(e, t, n, r) {
24935
- let i = t === void 0 || n === null || n <= 0 ? 0 : Math.min(1, t / n), a = Math.round(i * 16), o = `${"█".repeat(a)}${"░".repeat(16 - a)}`, s = `${t === void 0 ? "—" : sa(t)} / ${n === null ? "public off" : sa(n)}`;
24997
+ function va(e, t, n, r) {
24998
+ let i = t === void 0 || n === null || n <= 0 ? 0 : Math.min(1, t / n), a = Math.round(i * 16), o = `${"█".repeat(a)}${"░".repeat(16 - a)}`, s = `${t === void 0 ? "—" : pa(t)} / ${n === null ? "public off" : pa(n)}`;
24936
24999
  return X(`${e.padEnd(14)} ${o} ${s}`, r);
24937
25000
  }
24938
25001
  //#endregion
24939
25002
  //#region packages/core/src/worker/resource-debug.ts
24940
- var pa = 1e3;
24941
- async function ma(e, t) {
24942
- e.observeUsage(await t(pa));
25003
+ var ya = 1e3;
25004
+ async function ba(e, t) {
25005
+ e.observeUsage(await t(ya));
24943
25006
  let n = e.current();
24944
25007
  if (!n) throw Error("OOXML resource metrics are not ready");
24945
25008
  return n;
24946
25009
  }
24947
- var ha = class {
25010
+ var xa = class {
24948
25011
  now;
24949
25012
  startedAt;
24950
25013
  policy;
@@ -24958,7 +25021,7 @@ var ha = class {
24958
25021
  terminalOutcome;
24959
25022
  terminalElapsedMs;
24960
25023
  constructor(e) {
24961
- this.options = e, this.now = e.now ?? va, this.startedAt = this.now(), this.policy = Object.freeze({
25024
+ this.options = e, this.now = e.now ?? wa, this.startedAt = this.now(), this.policy = Object.freeze({
24962
25025
  maxArchiveEntryBytes: e.policy.maxArchiveEntryBytes,
24963
25026
  maxTotalInflatedBytes: e.policy.maxTotalInflatedBytes,
24964
25027
  maxArchiveEntries: e.policy.maxArchiveEntries
@@ -24972,16 +25035,16 @@ var ha = class {
24972
25035
  }
24973
25036
  checkpoint(e, t) {
24974
25037
  if (!this.options.enabled || this.finished) return;
24975
- t && (this.lastUsage = ya(t));
25038
+ t && (this.lastUsage = Ta(t));
24976
25039
  let n = this.lastUsage;
24977
25040
  this.checkpoints.push(Object.freeze({
24978
- name: Sa(e),
24979
- elapsedMs: xa(this.startedAt, this.now()),
25041
+ name: Oa(e),
25042
+ elapsedMs: Da(this.startedAt, this.now()),
24980
25043
  ...n ? { usage: n } : {}
24981
25044
  }));
24982
25045
  }
24983
25046
  observeUsage(e) {
24984
- !this.options.enabled || !e || (this.lastUsage = ya(e));
25047
+ !this.options.enabled || !e || (this.lastUsage = Ta(e));
24985
25048
  }
24986
25049
  current() {
24987
25050
  if (!(!this.options.enabled || !this.terminalStatus)) return this.report(this.terminalStatus, this.terminalError, this.terminalOutcome);
@@ -24994,12 +25057,12 @@ var ha = class {
24994
25057
  }
24995
25058
  finish(e, t, n) {
24996
25059
  if (!this.options.enabled || this.finished) return;
24997
- this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = xa(this.startedAt, this.now());
25060
+ this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = Da(this.startedAt, this.now());
24998
25061
  let r = this.report(e, t, n);
24999
- return this.options.onMetrics && ga(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && ga(oa, r), r;
25062
+ return this.options.onMetrics && Sa(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && Sa(fa, r), r;
25000
25063
  }
25001
25064
  report(e, t, n) {
25002
- let r = ba(t) ?? this.lastUsage;
25065
+ let r = Ea(t) ?? this.lastUsage;
25003
25066
  return Object.freeze({
25004
25067
  schemaVersion: 1,
25005
25068
  scope: this.options.scope ?? "load",
@@ -25007,28 +25070,28 @@ var ha = class {
25007
25070
  mode: this.mode,
25008
25071
  status: e,
25009
25072
  ...this.sourceBytes === void 0 ? {} : { sourceBytes: this.sourceBytes },
25010
- elapsedMs: this.terminalElapsedMs ?? xa(this.startedAt, this.now()),
25073
+ elapsedMs: this.terminalElapsedMs ?? Da(this.startedAt, this.now()),
25011
25074
  policy: this.policy,
25012
25075
  ...r ? { usage: r } : {},
25013
25076
  checkpoints: Object.freeze([...this.checkpoints]),
25014
- ...n ? { outcome: Ca(n) } : {},
25015
- ...e === "error" ? { error: wa(t) } : {}
25077
+ ...n ? { outcome: ka(n) } : {},
25078
+ ...e === "error" ? { error: Aa(t) } : {}
25016
25079
  });
25017
25080
  }
25018
25081
  };
25019
- function ga(e, t) {
25082
+ function Sa(e, t) {
25020
25083
  try {
25021
25084
  let n = e(t);
25022
- _a(n) && Promise.resolve(n).catch(() => void 0);
25085
+ Ca(n) && Promise.resolve(n).catch(() => void 0);
25023
25086
  } catch {}
25024
25087
  }
25025
- function _a(e) {
25088
+ function Ca(e) {
25026
25089
  return (typeof e == "object" && !!e || typeof e == "function") && typeof e.then == "function";
25027
25090
  }
25028
- function va() {
25091
+ function wa() {
25029
25092
  return typeof performance > "u" ? Date.now() : performance.now();
25030
25093
  }
25031
- function ya(e) {
25094
+ function Ta(e) {
25032
25095
  return Object.freeze({
25033
25096
  archiveEntryCount: e.archiveEntryCount,
25034
25097
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -25037,23 +25100,23 @@ function ya(e) {
25037
25100
  operationInflatedBytes: e.operationInflatedBytes
25038
25101
  });
25039
25102
  }
25040
- function ba(e) {
25103
+ function Ea(e) {
25041
25104
  try {
25042
- return e instanceof T ? ya(e.details.violation.usage) : void 0;
25105
+ return e instanceof T ? Ta(e.details.violation.usage) : void 0;
25043
25106
  } catch {
25044
25107
  return;
25045
25108
  }
25046
25109
  }
25047
- function xa(e, t) {
25110
+ function Da(e, t) {
25048
25111
  return Math.max(0, Math.round((t - e) * 10) / 10);
25049
25112
  }
25050
- function Sa(e) {
25113
+ function Oa(e) {
25051
25114
  return e.replace(/[^a-z0-9 -]/giu, "").trim().slice(0, 32) || "checkpoint";
25052
25115
  }
25053
- function Ca(e) {
25116
+ function ka(e) {
25054
25117
  return Object.freeze(Object.fromEntries(Object.entries(e).filter(([e, t]) => /^[a-z][a-z0-9-]{0,31}$/u.test(e) && Number.isSafeInteger(t) && t >= 0)));
25055
25118
  }
25056
- function wa(e) {
25119
+ function Aa(e) {
25057
25120
  try {
25058
25121
  if (e instanceof T) {
25059
25122
  let t = e.details.violation;
@@ -25065,7 +25128,7 @@ function wa(e) {
25065
25128
  });
25066
25129
  }
25067
25130
  if (e instanceof w || e instanceof h) return Object.freeze({ code: e.code });
25068
- if (e instanceof ui || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
25131
+ if (e instanceof hi || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
25069
25132
  } catch {}
25070
25133
  return Object.freeze({});
25071
25134
  }
@@ -25073,10 +25136,10 @@ var Z = "ooxml-pull-v1";
25073
25136
  function Q(e, t) {
25074
25137
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError(`${t} must be a positive safe integer`);
25075
25138
  }
25076
- function Ta(e) {
25139
+ function ja(e) {
25077
25140
  if (!(typeof e == "string" && e.length > 0 || typeof e == "number" && Number.isSafeInteger(e) && e > 0)) throw RangeError("session id must be a non-empty string or positive safe integer");
25078
25141
  }
25079
- var Ea = class {
25142
+ var Ma = class {
25080
25143
  bridge;
25081
25144
  options;
25082
25145
  sequence = 0;
@@ -25089,7 +25152,7 @@ var Ea = class {
25089
25152
  orphanedRequestIds = /* @__PURE__ */ new Set();
25090
25153
  transferDisposers = /* @__PURE__ */ new Set();
25091
25154
  constructor(e, t) {
25092
- Ta(t.sessionId), Q(t.operationId, "operation id"), Q(t.generation, "generation"), Q(t.maxByteCredit, "max byte credit"), t.cancelGraceMs !== void 0 && Q(t.cancelGraceMs, "cancel grace"), this.bridge = e, this.options = t;
25155
+ ja(t.sessionId), Q(t.operationId, "operation id"), Q(t.generation, "generation"), Q(t.maxByteCredit, "max byte credit"), t.cancelGraceMs !== void 0 && Q(t.cancelGraceMs, "cancel grace"), this.bridge = e, this.options = t;
25093
25156
  }
25094
25157
  async pull(e, t) {
25095
25158
  if (this.validateCredit(e), this.ending || this.completed) throw Error("pull session is closed");
@@ -25106,7 +25169,7 @@ var Ea = class {
25106
25169
  sequence: n,
25107
25170
  byteCredit: e
25108
25171
  }), t);
25109
- if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw Ji(r.error);
25172
+ if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw ea(r.error);
25110
25173
  if (r.kind !== "chunk") throw Error(`expected chunk response, received ${r.kind}`);
25111
25174
  if (this.ending) throw this.disposePayload(r.payload), Error("pull session is closed");
25112
25175
  try {
@@ -25116,7 +25179,7 @@ var Ea = class {
25116
25179
  }
25117
25180
  return this.outstanding = !0, this.makeChunk(r);
25118
25181
  } catch (e) {
25119
- throw !xi(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
25182
+ throw !Ei(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
25120
25183
  } finally {
25121
25184
  this.pulling = !1;
25122
25185
  }
@@ -25182,7 +25245,7 @@ var Ea = class {
25182
25245
  this.forgetLifecycleOrphans();
25183
25246
  return;
25184
25247
  }
25185
- throw Ji(r.error);
25248
+ throw ea(r.error);
25186
25249
  }
25187
25250
  if (r.kind !== "accepted" || r.command !== e) throw Error(`expected ${e} acceptance`);
25188
25251
  (e === "cancel" || e === "close") && this.forgetLifecycleOrphans();
@@ -25246,7 +25309,7 @@ var Ea = class {
25246
25309
  this.options.disposeTransferred?.(e);
25247
25310
  } catch {}
25248
25311
  }
25249
- }, Da = class {
25312
+ }, Na = class {
25250
25313
  owner;
25251
25314
  queue = Promise.resolve();
25252
25315
  leases = /* @__PURE__ */ new Map();
@@ -25303,7 +25366,7 @@ var Ea = class {
25303
25366
  }
25304
25367
  return this.fatal;
25305
25368
  }
25306
- }, Oa = class {
25369
+ }, Pa = class {
25307
25370
  options;
25308
25371
  coordinator;
25309
25372
  coordinatorOwner = Symbol("pull-session-host");
@@ -25321,7 +25384,7 @@ var Ea = class {
25321
25384
  driverCloseComplete = !1;
25322
25385
  completed = !1;
25323
25386
  constructor(e) {
25324
- Ta(e.sessionId), Q(e.operationId, "operation id"), Q(e.generation, "generation"), Q(e.maxByteCredit, "max byte credit"), e.wireLeaseIdStart !== void 0 && Q(e.wireLeaseIdStart, "wire lease id start"), this.options = e, this.coordinator = e.coordinator, this.nextWireLeaseId = e.wireLeaseIdStart ?? 1, this.unregisterCleanup = this.coordinator.registerCleanup(() => this.forceFatalCleanup());
25387
+ ja(e.sessionId), Q(e.operationId, "operation id"), Q(e.generation, "generation"), Q(e.maxByteCredit, "max byte credit"), e.wireLeaseIdStart !== void 0 && Q(e.wireLeaseIdStart, "wire lease id start"), this.options = e, this.coordinator = e.coordinator, this.nextWireLeaseId = e.wireLeaseIdStart ?? 1, this.unregisterCleanup = this.coordinator.registerCleanup(() => this.forceFatalCleanup());
25325
25388
  }
25326
25389
  dispatch(e, t) {
25327
25390
  return this.coordinator.enqueue(async () => {
@@ -25380,7 +25443,7 @@ var Ea = class {
25380
25443
  case "close": return await this.close(), { response: this.accepted(e, "close") };
25381
25444
  }
25382
25445
  } catch (t) {
25383
- let n = Hi(t);
25446
+ let n = Ji(t);
25384
25447
  return n.code === "ooxml-resource-limit" && (n = await this.coordinator.poison(n)), { response: this.errorResponse(e, n) };
25385
25448
  }
25386
25449
  }
@@ -25590,7 +25653,7 @@ var Ea = class {
25590
25653
  return;
25591
25654
  }
25592
25655
  }
25593
- }, ka = [
25656
+ }, Fa = [
25594
25657
  "L",
25595
25658
  "R",
25596
25659
  "AL",
@@ -25614,7 +25677,7 @@ var Ea = class {
25614
25677
  "RLI",
25615
25678
  "FSI",
25616
25679
  "PDI"
25617
- ], Aa = [
25680
+ ], Ia = [
25618
25681
  0,
25619
25682
  9,
25620
25683
  10,
@@ -26882,7 +26945,7 @@ var Ea = class {
26882
26945
  1048574,
26883
26946
  1048576,
26884
26947
  1114110
26885
- ], ja = [
26948
+ ], La = [
26886
26949
  9,
26887
26950
  11,
26888
26951
  10,
@@ -28150,7 +28213,7 @@ var Ea = class {
28150
28213
  9,
28151
28214
  0,
28152
28215
  9
28153
- ], Ma = [
28216
+ ], Ra = [
28154
28217
  40,
28155
28218
  41,
28156
28219
  41,
@@ -29007,7 +29070,7 @@ var Ea = class {
29007
29070
  65379,
29008
29071
  65379,
29009
29072
  65378
29010
- ], Na = [
29073
+ ], za = [
29011
29074
  40,
29012
29075
  41,
29013
29076
  0,
@@ -29395,42 +29458,42 @@ var Ea = class {
29395
29458
  ];
29396
29459
  //#endregion
29397
29460
  //#region packages/core/src/text/bidi/char-data.ts
29398
- function Pa(e) {
29399
- let t = 0, n = Aa.length - 1;
29461
+ function Ba(e) {
29462
+ let t = 0, n = Ia.length - 1;
29400
29463
  for (; t < n;) {
29401
29464
  let r = t + n + 1 >> 1;
29402
- Aa[r] <= e ? t = r : n = r - 1;
29465
+ Ia[r] <= e ? t = r : n = r - 1;
29403
29466
  }
29404
- return ja[t];
29467
+ return La[t];
29405
29468
  }
29406
- function Fa(e) {
29407
- return ka[Pa(e)];
29469
+ function Va(e) {
29470
+ return Fa[Ba(e)];
29408
29471
  }
29409
- var Ia = (() => {
29472
+ var Ha = (() => {
29410
29473
  let e = /* @__PURE__ */ new Map();
29411
- for (let t = 0; t < Ma.length; t += 2) e.set(Ma[t], Ma[t + 1]);
29474
+ for (let t = 0; t < Ra.length; t += 2) e.set(Ra[t], Ra[t + 1]);
29412
29475
  return e;
29413
29476
  })();
29414
- function La(e) {
29415
- return Ia.get(e) ?? null;
29477
+ function Ua(e) {
29478
+ return Ha.get(e) ?? null;
29416
29479
  }
29417
- var Ra = (() => {
29480
+ var Wa = (() => {
29418
29481
  let e = /* @__PURE__ */ new Map();
29419
- for (let t = 0; t < Na.length; t += 3) e.set(Na[t], {
29420
- pair: Na[t + 1],
29421
- type: Na[t + 2] === 0 ? "o" : "c"
29482
+ for (let t = 0; t < za.length; t += 3) e.set(za[t], {
29483
+ pair: za[t + 1],
29484
+ type: za[t + 2] === 0 ? "o" : "c"
29422
29485
  });
29423
29486
  return e;
29424
29487
  })();
29425
- function za(e) {
29426
- return Ra.get(e) ?? null;
29488
+ function Ga(e) {
29489
+ return Wa.get(e) ?? null;
29427
29490
  }
29428
- var Ba = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", Va = (e) => e === "LRI" || e === "RLI" || e === "FSI", Ha = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", Ua = (e) => e & 1 ? e + 2 : e + 1, Wa = (e) => e & 1 ? e + 1 : e + 2;
29429
- function Ga(e, t, n) {
29491
+ var Ka = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", qa = (e) => e === "LRI" || e === "RLI" || e === "FSI", Ja = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", Ya = (e) => e & 1 ? e + 2 : e + 1, Xa = (e) => e & 1 ? e + 1 : e + 2;
29492
+ function Za(e, t, n) {
29430
29493
  let r = 0;
29431
29494
  for (let i = t; i < n; i++) {
29432
29495
  let t = e[i];
29433
- if (Va(t)) r++;
29496
+ if (qa(t)) r++;
29434
29497
  else if (t === "PDI") r > 0 && r--;
29435
29498
  else if (r === 0) {
29436
29499
  if (t === "L") return 0;
@@ -29439,11 +29502,11 @@ function Ga(e, t, n) {
29439
29502
  }
29440
29503
  return 0;
29441
29504
  }
29442
- function Ka(e) {
29505
+ function Qa(e) {
29443
29506
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
29444
29507
  for (let a = 0; a < t; a++) {
29445
29508
  let t = e[a];
29446
- if (Va(t)) i.push(a);
29509
+ if (qa(t)) i.push(a);
29447
29510
  else if (t === "PDI" && i.length) {
29448
29511
  let e = i.pop();
29449
29512
  n[e] = a, r[a] = e;
@@ -29454,7 +29517,7 @@ function Ka(e) {
29454
29517
  initOf: r
29455
29518
  };
29456
29519
  }
29457
- function qa(e, t, n) {
29520
+ function $a(e, t, n) {
29458
29521
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
29459
29522
  level: t,
29460
29523
  override: "neutral",
@@ -29468,7 +29531,7 @@ function qa(e, t, n) {
29468
29531
  case "RLO":
29469
29532
  case "LRO": {
29470
29533
  i[d] = u().level;
29471
- let e = r === "RLE" || r === "RLO" ? Ua(u().level) : Wa(u().level);
29534
+ let e = r === "RLE" || r === "RLO" ? Ya(u().level) : Xa(u().level);
29472
29535
  e <= 125 && s === 0 && c === 0 ? o.push({
29473
29536
  level: e,
29474
29537
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -29483,8 +29546,8 @@ function qa(e, t, n) {
29483
29546
  let t = u().override;
29484
29547
  t !== "neutral" && (a[d] = t);
29485
29548
  let f;
29486
- f = r === "RLI" ? "R" : r === "LRI" ? "L" : Ga(e, d + 1, n[d]) === 1 ? "R" : "L";
29487
- let p = f === "R" ? Ua(u().level) : Wa(u().level);
29549
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : Za(e, d + 1, n[d]) === 1 ? "R" : "L";
29550
+ let p = f === "R" ? Ya(u().level) : Xa(u().level);
29488
29551
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
29489
29552
  level: p,
29490
29553
  override: "neutral",
@@ -29526,10 +29589,10 @@ function qa(e, t, n) {
29526
29589
  types: a
29527
29590
  };
29528
29591
  }
29529
- function Ja(e) {
29592
+ function eo(e) {
29530
29593
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
29531
29594
  }
29532
- function Ya(e, t, n, r, i, a) {
29595
+ function to(e, t, n, r, i, a) {
29533
29596
  let o = e.length, s = [];
29534
29597
  for (let e = 0; e < o; e++) n[e] || s.push(e);
29535
29598
  let c = [];
@@ -29547,7 +29610,7 @@ function Ya(e, t, n, r, i, a) {
29547
29610
  for (;;) {
29548
29611
  for (let e of p) f.push(e);
29549
29612
  let t = p[p.length - 1];
29550
- if (Va(e[t]) && i[t] !== o) {
29613
+ if (qa(e[t]) && i[t] !== o) {
29551
29614
  let e = l.get(i[t]);
29552
29615
  if (e) {
29553
29616
  p = e;
@@ -29562,7 +29625,7 @@ function Ya(e, t, n, r, i, a) {
29562
29625
  break;
29563
29626
  }
29564
29627
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
29565
- if (!(Va(e[_]) && i[_] === o)) {
29628
+ if (!(qa(e[_]) && i[_] === o)) {
29566
29629
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
29567
29630
  v = t[e];
29568
29631
  break;
@@ -29578,8 +29641,8 @@ function Ya(e, t, n, r, i, a) {
29578
29641
  }
29579
29642
  return d;
29580
29643
  }
29581
- var Xa = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29582
- function Za(e, t, n, r, i) {
29644
+ var no = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29645
+ function ro(e, t, n, r, i) {
29583
29646
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
29584
29647
  for (let e = 0; e < o; e++) {
29585
29648
  let t = a[e];
@@ -29626,15 +29689,15 @@ function Za(e, t, n, r, i) {
29626
29689
  outer: for (let n = 0; n < o; n++) {
29627
29690
  let i = a[n];
29628
29691
  if (r[i] !== "ON") continue;
29629
- let o = za(t[i]);
29692
+ let o = Ga(t[i]);
29630
29693
  if (o) if (o.type === "o") {
29631
29694
  if (e.length === 63) break outer;
29632
29695
  e.push({
29633
- expect: Ja(o.pair),
29696
+ expect: eo(o.pair),
29634
29697
  pos: n
29635
29698
  });
29636
29699
  } else {
29637
- let r = Ja(t[i]);
29700
+ let r = eo(t[i]);
29638
29701
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
29639
29702
  f.push({
29640
29703
  open: e[t].pos,
@@ -29652,7 +29715,7 @@ function Za(e, t, n, r, i) {
29652
29715
  for (let { open: e, close: t } of f) {
29653
29716
  let n = !1, i = !1;
29654
29717
  for (let o = e + 1; o < t; o++) {
29655
- let e = Xa(r[a[o]]);
29718
+ let e = no(r[a[o]]);
29656
29719
  e === u ? n = !0 : e === d && (i = !0);
29657
29720
  }
29658
29721
  let o = null;
@@ -29660,7 +29723,7 @@ function Za(e, t, n, r, i) {
29660
29723
  else if (i) {
29661
29724
  let t = s;
29662
29725
  for (let n = e - 1; n >= 0; n--) {
29663
- let e = Xa(r[a[n]]);
29726
+ let e = no(r[a[n]]);
29664
29727
  if (e) {
29665
29728
  t = e;
29666
29729
  break;
@@ -29671,29 +29734,29 @@ function Za(e, t, n, r, i) {
29671
29734
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
29672
29735
  }
29673
29736
  for (let e = 0; e < o; e++) {
29674
- if (!Ha(r[a[e]])) continue;
29737
+ if (!Ja(r[a[e]])) continue;
29675
29738
  let t = e;
29676
- for (; t < o && Ha(r[a[t]]);) t++;
29677
- let n = e > 0 ? Xa(r[a[e - 1]]) : s, i = t < o ? Xa(r[a[t]]) : c;
29739
+ for (; t < o && Ja(r[a[t]]);) t++;
29740
+ let n = e > 0 ? no(r[a[e - 1]]) : s, i = t < o ? no(r[a[t]]) : c;
29678
29741
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
29679
29742
  e = t - 1;
29680
29743
  }
29681
- for (let e = 0; e < o; e++) Ha(r[a[e]]) && (r[a[e]] = u);
29744
+ for (let e = 0; e < o; e++) Ja(r[a[e]]) && (r[a[e]] = u);
29682
29745
  for (let e = 0; e < o; e++) {
29683
29746
  let t = a[e], n = r[t];
29684
29747
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
29685
29748
  }
29686
29749
  }
29687
- function Qa(e, t, n) {
29750
+ function io(e, t, n) {
29688
29751
  let r = e.length, i = Array(r);
29689
- for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Fa(e[t]);
29690
- let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Ga(i, 0, r), { pdiOf: o, initOf: s } = Ka(i), { levels: c, types: l } = qa(i, a, o), u = Array(r);
29691
- for (let e = 0; e < r; e++) u[e] = Ba(i[e]);
29692
- let d = Ya(i, c, u, a, o, s), f = l.slice();
29693
- for (let t of d) Za(t, e, i, f, c);
29752
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Va(e[t]);
29753
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Za(i, 0, r), { pdiOf: o, initOf: s } = Qa(i), { levels: c, types: l } = $a(i, a, o), u = Array(r);
29754
+ for (let e = 0; e < r; e++) u[e] = Ka(i[e]);
29755
+ let d = to(i, c, u, a, o, s), f = l.slice();
29756
+ for (let t of d) ro(t, e, i, f, c);
29694
29757
  let p = (e) => {
29695
29758
  let t = i[e];
29696
- return t === "WS" || Va(t) || t === "PDI" || u[e];
29759
+ return t === "WS" || qa(t) || t === "PDI" || u[e];
29697
29760
  };
29698
29761
  for (let e = 0; e < r; e++) {
29699
29762
  let t = i[e];
@@ -29709,7 +29772,7 @@ function Qa(e, t, n) {
29709
29772
  paragraphLevel: a
29710
29773
  };
29711
29774
  }
29712
- function $a(e, t, n) {
29775
+ function ao(e, t, n) {
29713
29776
  let r = [];
29714
29777
  for (let i = t; i < n; i++) {
29715
29778
  let t = e[i];
@@ -29737,7 +29800,7 @@ function $a(e, t, n) {
29737
29800
  }
29738
29801
  //#endregion
29739
29802
  //#region packages/core/src/text/bidi/uax9/index.ts
29740
- function eo(e) {
29803
+ function oo(e) {
29741
29804
  let t = [], n = [], r = [];
29742
29805
  for (let i = 0; i < e.length;) {
29743
29806
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -29749,9 +29812,9 @@ function eo(e) {
29749
29812
  starts: r
29750
29813
  };
29751
29814
  }
29752
- var to = class {
29815
+ var so = class {
29753
29816
  computeLevels(e, t, n) {
29754
- let { cps: r, units: i, starts: a } = eo(e), { levels: o, paragraphLevel: s } = Qa(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29817
+ let { cps: r, units: i, starts: a } = oo(e), { levels: o, paragraphLevel: s } = io(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29755
29818
  for (let e = 0; e < o.length; e++) {
29756
29819
  let t = o[e] === -1 ? 255 : o[e];
29757
29820
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -29762,63 +29825,63 @@ var to = class {
29762
29825
  };
29763
29826
  }
29764
29827
  reorderVisual(e, t, n) {
29765
- return $a(e, t, n);
29828
+ return ao(e, t, n);
29766
29829
  }
29767
29830
  getMirror(e) {
29768
- return La(e);
29831
+ return Ua(e);
29769
29832
  }
29770
29833
  };
29771
- function no() {
29772
- return new to();
29834
+ function co() {
29835
+ return new so();
29773
29836
  }
29774
29837
  //#endregion
29775
29838
  //#region packages/core/src/text/bidi/engine.ts
29776
- var ro = null;
29777
- function io() {
29778
- return ro === null && (ro = no()), ro;
29839
+ var lo = null;
29840
+ function uo() {
29841
+ return lo === null && (lo = co()), lo;
29779
29842
  }
29780
29843
  //#endregion
29781
29844
  //#region packages/core/src/text/bidi/line-order.ts
29782
- var ao = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
29783
- function oo(e) {
29784
- return ao.test(e);
29845
+ var fo = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
29846
+ function po(e) {
29847
+ return fo.test(e);
29785
29848
  }
29786
- function so(e, t, n) {
29849
+ function mo(e, t, n) {
29787
29850
  let r = n.length, i = new Uint8Array(r);
29788
29851
  for (let a = 0; a < r; a++) {
29789
29852
  let r = e[n[a]];
29790
29853
  i[a] = r === 255 ? t : r;
29791
29854
  }
29792
29855
  return {
29793
- order: io().reorderVisual(i, 0, r),
29856
+ order: uo().reorderVisual(i, 0, r),
29794
29857
  segLevels: i
29795
29858
  };
29796
29859
  }
29797
29860
  //#endregion
29798
29861
  //#region packages/core/src/text/kinsoku/rules.ts
29799
- var co = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", lo = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
29800
- function uo(e) {
29862
+ var ho = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", go = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
29863
+ function _o(e) {
29801
29864
  let t = /* @__PURE__ */ new Set();
29802
29865
  for (let n of e) t.add(n.codePointAt(0));
29803
29866
  return t;
29804
29867
  }
29805
- function fo(e) {
29868
+ function vo(e) {
29806
29869
  return {
29807
29870
  enabled: e?.kinsoku !== !1,
29808
- lineStartForbidden: uo(e?.noLineBreaksBefore ?? co),
29809
- lineEndForbidden: uo(e?.noLineBreaksAfter ?? lo)
29871
+ lineStartForbidden: _o(e?.noLineBreaksBefore ?? ho),
29872
+ lineEndForbidden: _o(e?.noLineBreaksAfter ?? go)
29810
29873
  };
29811
29874
  }
29812
- var po = fo();
29875
+ var yo = vo();
29813
29876
  //#endregion
29814
29877
  //#region packages/core/src/text/kinsoku/split.ts
29815
- function mo(e, t, n, r = 1) {
29878
+ function bo(e, t, n, r = 1) {
29816
29879
  if (!n.enabled || t <= 0 || t >= e.length) return t;
29817
29880
  let i = (t) => t < e.length && n.lineStartForbidden.has(e[t].codePointAt(0)), a = (t) => t >= 0 && n.lineEndForbidden.has(e[t].codePointAt(0)), o = t;
29818
29881
  for (; o > r && (i(o) || a(o - 1));) o--;
29819
29882
  return o <= r && (i(o) || a(o - 1)) ? t : o;
29820
29883
  }
29821
- function ho(e, t, n) {
29884
+ function xo(e, t, n) {
29822
29885
  if (!t.enabled) return 0;
29823
29886
  let r = e.length - n;
29824
29887
  for (let n = 1; n <= r; n++) {
@@ -29831,15 +29894,15 @@ function ho(e, t, n) {
29831
29894
  }
29832
29895
  //#endregion
29833
29896
  //#region packages/core/src/text/cjk-ranges.ts
29834
- function go(e) {
29897
+ function So(e) {
29835
29898
  return e >= 12288 && e <= 40959 || e >= 44032 && e <= 55203 || e >= 63744 && e <= 64255 || e >= 65280 && e <= 65519;
29836
29899
  }
29837
- function _o(e) {
29838
- return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !go(e);
29900
+ function Co(e) {
29901
+ return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !So(e);
29839
29902
  }
29840
29903
  //#endregion
29841
29904
  //#region packages/core/src/text/line-break-class.generated.ts
29842
- var vo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB.CL.CP.EB.EM.EX.H2.H3.HL.HH.HY.ID.IN.IS.JL.JT.JV.NS.NU.OP.PO.PR.QU.RI.SY.VF.VI".split("."), yo = [
29905
+ var wo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB.CL.CP.EB.EM.EX.H2.H3.HL.HH.HY.ID.IN.IS.JL.JT.JV.NS.NU.OP.PO.PR.QU.RI.SY.VF.VI".split("."), To = [
29843
29906
  0,
29844
29907
  9,
29845
29908
  10,
@@ -32462,7 +32525,7 @@ var vo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
32462
32525
  917632,
32463
32526
  917760,
32464
32527
  918e3
32465
- ], bo = [
32528
+ ], Eo = [
32466
32529
  1,
32467
32530
  15,
32468
32531
  4,
@@ -35085,7 +35148,7 @@ var vo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35085
35148
  11,
35086
35149
  1,
35087
35150
  11
35088
- ], xo = [
35151
+ ], Do = [
35089
35152
  4352,
35090
35153
  8361,
35091
35154
  8986,
@@ -35215,7 +35278,7 @@ var vo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35215
35278
  129775,
35216
35279
  131072,
35217
35280
  196608
35218
- ], So = [
35281
+ ], Oo = [
35219
35282
  4448,
35220
35283
  8362,
35221
35284
  8988,
@@ -35348,68 +35411,68 @@ var vo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35348
35411
  ];
35349
35412
  //#endregion
35350
35413
  //#region packages/core/src/text/line-break.ts
35351
- function Co(e) {
35352
- let t = 0, n = yo.length - 1;
35414
+ function ko(e) {
35415
+ let t = 0, n = To.length - 1;
35353
35416
  for (; t < n;) {
35354
35417
  let r = t + n + 1 >> 1;
35355
- yo[r] <= e ? t = r : n = r - 1;
35418
+ To[r] <= e ? t = r : n = r - 1;
35356
35419
  }
35357
- return vo[bo[t]];
35420
+ return wo[Eo[t]];
35358
35421
  }
35359
- function wo(e) {
35360
- let t = 0, n = xo.length - 1;
35361
- if (n < 0 || e < xo[0]) return !1;
35422
+ function Ao(e) {
35423
+ let t = 0, n = Do.length - 1;
35424
+ if (n < 0 || e < Do[0]) return !1;
35362
35425
  for (; t < n;) {
35363
35426
  let r = t + n + 1 >> 1;
35364
- xo[r] <= e ? t = r : n = r - 1;
35427
+ Do[r] <= e ? t = r : n = r - 1;
35365
35428
  }
35366
- return e < So[t];
35429
+ return e < Oo[t];
35367
35430
  }
35368
- function To(e, t) {
35369
- let n = Co(e);
35431
+ function jo(e, t) {
35432
+ let n = ko(e);
35370
35433
  if (n === "OP") return !0;
35371
- let r = Co(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
35372
- return !!(i && (a || r === "NU" || r === "PR" || r === "PO") || a && (n === "NU" || n === "PR" || n === "PO") || n === "PR" && (r === "ID" || r === "EB" || r === "EM") || (n === "ID" || n === "EB" || n === "EM") && r === "PO" || n === "NU" && (r === "NU" || r === "PO" || r === "PR") || r === "NU" && (n === "PO" || n === "PR" || n === "HY" || n === "IS") || (i || n === "NU") && r === "OP" && !wo(t) || n === "CP" && !wo(e) && (a || r === "NU"));
35434
+ let r = ko(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
35435
+ return !!(i && (a || r === "NU" || r === "PR" || r === "PO") || a && (n === "NU" || n === "PR" || n === "PO") || n === "PR" && (r === "ID" || r === "EB" || r === "EM") || (n === "ID" || n === "EB" || n === "EM") && r === "PO" || n === "NU" && (r === "NU" || r === "PO" || r === "PR") || r === "NU" && (n === "PO" || n === "PR" || n === "HY" || n === "IS") || (i || n === "NU") && r === "OP" && !Ao(t) || n === "CP" && !Ao(e) && (a || r === "NU"));
35373
35436
  }
35374
35437
  //#endregion
35375
35438
  //#region packages/core/src/text/sea-break.ts
35376
- function Eo(e) {
35439
+ function Mo(e) {
35377
35440
  return e === "my" || e === "bo";
35378
35441
  }
35379
35442
  function $(e) {
35380
35443
  return e >= 3584 && e <= 3711 || e >= 3712 && e <= 3839 || e >= 6016 && e <= 6143 || e >= 4096 && e <= 4255 || e >= 43616 && e <= 43647 || e >= 43488 && e <= 43519 || e >= 3840 && e <= 4095;
35381
35444
  }
35382
- function Do(e) {
35445
+ function No(e) {
35383
35446
  return e === 3633 || e >= 3635 && e <= 3642 || e >= 3655 && e <= 3662 || e === 3761 || e >= 3763 && e <= 3772 || e >= 3784 && e <= 3790 || e >= 6068 && e <= 6099 || e === 6109;
35384
35447
  }
35385
- function Oo(e) {
35448
+ function Po(e) {
35386
35449
  return e <= 3711 ? "th" : e <= 3839 ? "lo" : e <= 4095 ? "bo" : e <= 4255 ? "my" : e <= 6143 ? "km" : "my";
35387
35450
  }
35388
- function ko(e) {
35451
+ function Fo(e) {
35389
35452
  for (let t of e) if ($(t.codePointAt(0))) return !0;
35390
35453
  return !1;
35391
35454
  }
35392
- function Ao(e) {
35455
+ function Io(e) {
35393
35456
  for (let t of e) {
35394
35457
  let e = t.codePointAt(0);
35395
- if ($(e)) return Eo(Oo(e));
35458
+ if ($(e)) return Mo(Po(e));
35396
35459
  }
35397
35460
  return !1;
35398
35461
  }
35399
- function jo(e) {
35462
+ function Lo(e) {
35400
35463
  let t = !1;
35401
35464
  for (let n of e) {
35402
35465
  let e = n.codePointAt(0);
35403
35466
  if ($(e)) {
35404
- if (Eo(Oo(e))) return !1;
35467
+ if (Mo(Po(e))) return !1;
35405
35468
  t = !0;
35406
35469
  }
35407
35470
  }
35408
35471
  return t;
35409
35472
  }
35410
- var Mo, No = /* @__PURE__ */ new Map();
35411
- function Po(e) {
35412
- let t = No.get(e);
35473
+ var Ro, zo = /* @__PURE__ */ new Map();
35474
+ function Bo(e) {
35475
+ let t = zo.get(e);
35413
35476
  if (t !== void 0) return t;
35414
35477
  let n = null;
35415
35478
  try {
@@ -35417,19 +35480,19 @@ function Po(e) {
35417
35480
  } catch {
35418
35481
  n = null;
35419
35482
  }
35420
- return No.set(e, n), n;
35483
+ return zo.set(e, n), n;
35421
35484
  }
35422
- function Fo(e) {
35423
- if (Mo === null) return null;
35424
- if (typeof Mo == "function") {
35425
- let t = Mo;
35485
+ function Vo(e) {
35486
+ if (Ro === null) return null;
35487
+ if (typeof Ro == "function") {
35488
+ let t = Ro;
35426
35489
  return (n) => t(n, e);
35427
35490
  }
35428
- let t = Po(e);
35491
+ let t = Bo(e);
35429
35492
  return t ? (e) => t.segment(e) : null;
35430
35493
  }
35431
- function Io(e) {
35432
- if (!ko(e)) return [];
35494
+ function Ho(e) {
35495
+ if (!Fo(e)) return [];
35433
35496
  let t = [], n = e.length, r = 0;
35434
35497
  for (; r < n;) {
35435
35498
  let i = e.codePointAt(r), a = i > 65535 ? 2 : 1;
@@ -35437,16 +35500,16 @@ function Io(e) {
35437
35500
  r += a;
35438
35501
  continue;
35439
35502
  }
35440
- let o = Oo(i), s = Eo(o), c = r + a;
35503
+ let o = Po(i), s = Mo(o), c = r + a;
35441
35504
  for (; c < n;) {
35442
35505
  let t = e.codePointAt(c);
35443
- if (!$(t) || Eo(Oo(t)) !== s) break;
35506
+ if (!$(t) || Mo(Po(t)) !== s) break;
35444
35507
  c += t > 65535 ? 2 : 1;
35445
35508
  }
35446
35509
  let l = e.slice(r, c);
35447
- if (s) for (let e of Wo(l)) t.push(r + e);
35510
+ if (s) for (let e of Xo(l)) t.push(r + e);
35448
35511
  else {
35449
- let e = Fo(o);
35512
+ let e = Vo(o);
35450
35513
  if (e) {
35451
35514
  let n = [];
35452
35515
  try {
@@ -35459,42 +35522,42 @@ function Io(e) {
35459
35522
  }
35460
35523
  return t;
35461
35524
  }
35462
- function Lo(e) {
35463
- if (!ko(e)) return [];
35525
+ function Uo(e) {
35526
+ if (!Fo(e)) return [];
35464
35527
  let t = [], n = e.length, r = e.codePointAt(0), i = r > 65535 ? 2 : 1;
35465
35528
  for (; i < n;) {
35466
35529
  let n = e.codePointAt(i), a = n > 65535 ? 2 : 1;
35467
- $(r) !== $(n) && !Ro(r) && !Ro(n) && t.push(i), r = n, i += a;
35530
+ $(r) !== $(n) && !Wo(r) && !Wo(n) && t.push(i), r = n, i += a;
35468
35531
  }
35469
35532
  return t;
35470
35533
  }
35471
- function Ro(e) {
35534
+ function Wo(e) {
35472
35535
  return e === 32 || e === 9 || e === 10 || e === 13 || e === 12288 || e === 160 || e === 8199 || e === 8239 || e === 8288 || e === 65279;
35473
35536
  }
35474
- function zo(e, t) {
35475
- if (!ko(e)) return [];
35476
- let n = e.length, r = new Set(Io(e)), i = new Set(Wo(e)), a = (e) => {
35537
+ function Go(e, t) {
35538
+ if (!Fo(e)) return [];
35539
+ let n = e.length, r = new Set(Ho(e)), i = new Set(Xo(e)), a = (e) => {
35477
35540
  i.has(e) && r.add(e);
35478
35541
  };
35479
- for (let t of Lo(e)) a(t);
35542
+ for (let t of Uo(e)) a(t);
35480
35543
  if (t?.cjk) {
35481
35544
  let t = e.codePointAt(0), r = t > 65535 ? 2 : 1;
35482
35545
  for (; r < n;) {
35483
35546
  let n = e.codePointAt(r);
35484
- (go(n) || go(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
35547
+ (So(n) || So(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
35485
35548
  }
35486
35549
  }
35487
35550
  let o = t?.kinsoku, s = o != null && o.enabled !== !1, c = [];
35488
35551
  for (let t of r) if (!(t <= 0 || t >= n)) {
35489
35552
  if (s) {
35490
- let n = e.codePointAt(t), r = Bo(e, t);
35553
+ let n = e.codePointAt(t), r = Ko(e, t);
35491
35554
  if (r !== void 0 && o.lineEndForbidden.has(r) || o.lineStartForbidden.has(n)) continue;
35492
35555
  }
35493
35556
  c.push(t);
35494
35557
  }
35495
35558
  return c.sort((e, t) => e - t), c;
35496
35559
  }
35497
- function Bo(e, t) {
35560
+ function Ko(e, t) {
35498
35561
  if (t <= 0) return;
35499
35562
  let n = e.charCodeAt(t - 1);
35500
35563
  if (n >= 56320 && n <= 57343 && t >= 2) {
@@ -35503,7 +35566,7 @@ function Bo(e, t) {
35503
35566
  }
35504
35567
  return n;
35505
35568
  }
35506
- function Vo(e, t, n, r, i, a = !1) {
35569
+ function qo(e, t, n, r, i, a = !1) {
35507
35570
  let o = e.length;
35508
35571
  if (n >= o) return n;
35509
35572
  if (a) {
@@ -35519,19 +35582,19 @@ function Vo(e, t, n, r, i, a = !1) {
35519
35582
  for (let a of t) a <= n || a >= o || i(e.slice(n, a)) <= r && (s = a);
35520
35583
  return i(e.slice(n, o)) <= r && (s = o), s;
35521
35584
  }
35522
- var Ho;
35523
- function Uo() {
35524
- if (Ho !== void 0) return Ho;
35585
+ var Jo;
35586
+ function Yo() {
35587
+ if (Jo !== void 0) return Jo;
35525
35588
  let e = null;
35526
35589
  try {
35527
35590
  typeof Intl < "u" && typeof Intl.Segmenter == "function" && (e = new Intl.Segmenter(void 0, { granularity: "grapheme" }));
35528
35591
  } catch {
35529
35592
  e = null;
35530
35593
  }
35531
- return Ho = e, e;
35594
+ return Jo = e, e;
35532
35595
  }
35533
- function Wo(e) {
35534
- let t = Uo();
35596
+ function Xo(e) {
35597
+ let t = Yo();
35535
35598
  if (t) try {
35536
35599
  let n = [];
35537
35600
  for (let r of t.segment(e)) r.index > 0 && n.push(r.index);
@@ -35546,12 +35609,12 @@ function Wo(e) {
35546
35609
  }
35547
35610
  //#endregion
35548
35611
  //#region packages/core/src/text/vertical-orientation.generated.ts
35549
- var Go = [
35612
+ var Zo = [
35550
35613
  "U",
35551
35614
  "R",
35552
35615
  "Tu",
35553
35616
  "Tr"
35554
- ], Ko = [
35617
+ ], Qo = [
35555
35618
  0,
35556
35619
  167,
35557
35620
  168,
@@ -35832,7 +35895,7 @@ var Go = [
35832
35895
  1048574,
35833
35896
  1048576,
35834
35897
  1114110
35835
- ], qo = [
35898
+ ], $o = [
35836
35899
  1,
35837
35900
  0,
35838
35901
  1,
@@ -36116,29 +36179,29 @@ var Go = [
36116
36179
  ];
36117
36180
  //#endregion
36118
36181
  //#region packages/core/src/text/vertical-orientation.ts
36119
- function Jo(e) {
36120
- let t = 0, n = Ko.length - 1;
36182
+ function es(e) {
36183
+ let t = 0, n = Qo.length - 1;
36121
36184
  for (; t < n;) {
36122
36185
  let r = t + n + 1 >> 1;
36123
- Ko[r] <= e ? t = r : n = r - 1;
36186
+ Qo[r] <= e ? t = r : n = r - 1;
36124
36187
  }
36125
- return qo[t];
36188
+ return $o[t];
36126
36189
  }
36127
- function Yo(e) {
36128
- return Go[Jo(e)];
36190
+ function ts(e) {
36191
+ return Zo[es(e)];
36129
36192
  }
36130
- function Xo(e) {
36131
- return Zo.get(e) ?? null;
36193
+ function ns(e) {
36194
+ return rs.get(e) ?? null;
36132
36195
  }
36133
- var Zo = new Map([
36196
+ var rs = new Map([
36134
36197
  [65292, 65040],
36135
36198
  [12289, 65041],
36136
36199
  [12290, 65042]
36137
36200
  ]);
36138
- function Qo(e) {
36139
- return $o.get(e) ?? null;
36201
+ function is(e) {
36202
+ return as.get(e) ?? null;
36140
36203
  }
36141
- var $o = new Map([
36204
+ var as = new Map([
36142
36205
  [65288, 65077],
36143
36206
  [65289, 65078],
36144
36207
  [65371, 65079],
@@ -36157,40 +36220,40 @@ var $o = new Map([
36157
36220
  [12303, 65092],
36158
36221
  [12310, 65047],
36159
36222
  [12311, 65048]
36160
- ]), es = new Set([65307]);
36161
- function ts(e) {
36162
- return es.has(e);
36223
+ ]), os = new Set([65307]);
36224
+ function ss(e) {
36225
+ return os.has(e);
36163
36226
  }
36164
- var ns = new Set([
36227
+ var cs = new Set([
36165
36228
  12540,
36166
36229
  12316,
36167
36230
  65374
36168
36231
  ]);
36169
- function rs(e) {
36170
- return ns.has(e);
36232
+ function ls(e) {
36233
+ return cs.has(e);
36171
36234
  }
36172
36235
  //#endregion
36173
36236
  //#region packages/core/src/text/vertical-vert-feature.ts
36174
- var is = 256, as = 200, os = /* @__PURE__ */ new WeakMap();
36175
- function ss(e) {
36237
+ var us = 256, ds = 200, fs = /* @__PURE__ */ new WeakMap();
36238
+ function ps(e) {
36176
36239
  let t = e.canvas, n = t?.ownerDocument?.defaultView?.HTMLCanvasElement;
36177
36240
  return typeof n == "function" && t instanceof n || typeof HTMLCanvasElement < "u" && t instanceof HTMLCanvasElement ? t : null;
36178
36241
  }
36179
- function cs(e, t) {
36242
+ function ms(e, t) {
36180
36243
  return e.replace(/(^|\s)\d*\.?\d+(?:px|pt|pc|in|cm|mm|q|em|rem|%)(?:\/[^\s]+)?(?=\s)/i, `$1${t}`);
36181
36244
  }
36182
- function ls(e, t = !0) {
36245
+ function hs(e, t = !0) {
36183
36246
  let n = e.trim();
36184
36247
  return [...n === "" || n.toLowerCase() === "normal" ? [] : n.split(",").map((e) => e.trim()).filter((e) => !/^(["'])vert\1(?:\s+(?:on|off|\d+))?$/i.test(e)), `"vert" ${+!!t}`].join(", ");
36185
36248
  }
36186
- function us(e) {
36249
+ function gs(e) {
36187
36250
  try {
36188
36251
  let t = e.ownerDocument?.defaultView, n = t?.getComputedStyle ? t.getComputedStyle(e) : typeof getComputedStyle == "function" ? getComputedStyle(e) : null;
36189
36252
  if (n?.fontFeatureSettings) return n.fontFeatureSettings;
36190
36253
  } catch {}
36191
36254
  return e.style.fontFeatureSettings;
36192
36255
  }
36193
- function ds(e, t) {
36256
+ function _s(e, t) {
36194
36257
  if (e.isConnected) return t();
36195
36258
  let n = e.ownerDocument ?? (typeof document > "u" ? null : document), r = n?.body ?? n?.documentElement;
36196
36259
  if (!r) return t();
@@ -36231,15 +36294,15 @@ function ds(e, t) {
36231
36294
  if (t !== void 0 && !c) throw t;
36232
36295
  }
36233
36296
  }
36234
- function fs(e, t) {
36235
- let n = ss(e);
36236
- return n === null ? t() : ds(n, t);
36297
+ function vs(e, t) {
36298
+ let n = ps(e);
36299
+ return n === null ? t() : _s(n, t);
36237
36300
  }
36238
- function ps(e) {
36239
- let t = os.get(e);
36301
+ function ys(e) {
36302
+ let t = fs.get(e);
36240
36303
  if (t) return t;
36241
36304
  let n = e.createElement("canvas");
36242
- n.width = is, n.height = is, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
36305
+ n.width = us, n.height = us, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
36243
36306
  position: "fixed",
36244
36307
  left: "-99999px",
36245
36308
  top: "0",
@@ -36253,9 +36316,9 @@ function ps(e) {
36253
36316
  }, i = () => {
36254
36317
  r.epoch += 1, r.cache.clear();
36255
36318
  };
36256
- return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), os.set(e, r), r;
36319
+ return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), fs.set(e, r), r;
36257
36320
  }
36258
- function ms(e, t) {
36321
+ function bs(e, t) {
36259
36322
  let { width: n, height: r } = e.canvas, i = e.getImageData(0, 0, n, r).data, a = new Uint8ClampedArray(n * r), o = n, s = r, c = -1, l = -1, u = 0, d = 0, f = 0;
36260
36323
  for (let e = 0; e < r; e += 1) for (let t = 0; t < n; t += 1) {
36261
36324
  let r = i[(e * n + t) * 4 + 3];
@@ -36282,28 +36345,28 @@ function ms(e, t) {
36282
36345
  ]
36283
36346
  };
36284
36347
  }
36285
- function hs(e, t, n) {
36348
+ function xs(e, t, n) {
36286
36349
  let r = e.canvas;
36287
36350
  r.style.fontFeatureSettings = n, e.font = e.font, e.clearRect(0, 0, r.width, r.height);
36288
36351
  let i = String.fromCodePoint(t);
36289
- return e.fillText(i, r.width / 2, r.height / 2), ms(e, i);
36352
+ return e.fillText(i, r.width / 2, r.height / 2), bs(e, i);
36290
36353
  }
36291
- function gs(e, t) {
36354
+ function Ss(e, t) {
36292
36355
  let n = 0, r = Math.min(e.length, t.length);
36293
36356
  for (let i = 0; i < r; i += 1) n += Math.abs(e[i] - t[i]);
36294
36357
  return n;
36295
36358
  }
36296
- function _s(e, t, n, r) {
36359
+ function Cs(e, t, n, r) {
36297
36360
  let i = (e, t, n, r) => {
36298
- let i = Math.max(gs(e, t), gs(n, r));
36299
- return Math.min(gs(e, n), gs(e, r), gs(t, n), gs(t, r)) > i;
36361
+ let i = Math.max(Ss(e, t), Ss(n, r));
36362
+ return Math.min(Ss(e, n), Ss(e, r), Ss(t, n), Ss(t, r)) > i;
36300
36363
  };
36301
36364
  return i(e.alpha, t.alpha, n.alpha, r.alpha) || i(e.geometry, t.geometry, n.geometry, r.geometry) || i(e.metrics, t.metrics, n.metrics, r.metrics);
36302
36365
  }
36303
- function vs(e, t) {
36304
- let n = ss(e);
36366
+ function ws(e, t) {
36367
+ let n = ps(e);
36305
36368
  if (n === null || typeof document > "u") return !1;
36306
- let r = n.ownerDocument ?? document, i = ps(r), a = us(n), o = `${i.epoch}:${cs(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
36369
+ let r = n.ownerDocument ?? document, i = ys(r), a = gs(n), o = `${i.epoch}:${ms(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
36307
36370
  if (s !== void 0) return s;
36308
36371
  let c = !1, l = r.body ?? r.documentElement;
36309
36372
  if (!l) return !1;
@@ -36313,9 +36376,9 @@ function vs(e, t) {
36313
36376
  if (d !== null) {
36314
36377
  let n = i.canvas.style.fontFeatureSettings;
36315
36378
  try {
36316
- d.font = cs(e.font, `${as}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
36317
- let n = ls(a, !1), r = ls(a, !0), i = hs(d, t, n), o = hs(d, t, n), s = hs(d, t, r), l = hs(d, t, r);
36318
- c = i !== null && o !== null && s !== null && l !== null && _s(i, o, s, l);
36379
+ d.font = ms(e.font, `${ds}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
36380
+ let n = hs(a, !1), r = hs(a, !0), i = xs(d, t, n), o = xs(d, t, n), s = xs(d, t, r), l = xs(d, t, r);
36381
+ c = i !== null && o !== null && s !== null && l !== null && Cs(i, o, s, l);
36319
36382
  } catch {
36320
36383
  c = !1;
36321
36384
  } finally {
@@ -36324,11 +36387,11 @@ function vs(e, t) {
36324
36387
  }
36325
36388
  return i.cache.set(o, c), c;
36326
36389
  }
36327
- function ys(e, t) {
36390
+ function Ts(e, t) {
36328
36391
  let n = e.canvas;
36329
- return n?.style ? fs(e, () => {
36392
+ return n?.style ? vs(e, () => {
36330
36393
  let r = n.style, i = r.fontFeatureSettings;
36331
- r.fontFeatureSettings = ls(us(n)), e.font = e.font;
36394
+ r.fontFeatureSettings = hs(gs(n)), e.font = e.font;
36332
36395
  try {
36333
36396
  return t();
36334
36397
  } finally {
@@ -36336,8 +36399,8 @@ function ys(e, t) {
36336
36399
  }
36337
36400
  }) : t();
36338
36401
  }
36339
- function bs(e, t) {
36340
- return ys(e, () => {
36402
+ function Es(e, t) {
36403
+ return Ts(e, () => {
36341
36404
  let n = e.textAlign, r = e.textBaseline;
36342
36405
  e.textAlign = "center", e.textBaseline = "middle";
36343
36406
  try {
@@ -36356,13 +36419,13 @@ function bs(e, t) {
36356
36419
  }
36357
36420
  //#endregion
36358
36421
  //#region packages/core/src/interaction/hyperlink.ts
36359
- var xs = [
36422
+ var Ds = [
36360
36423
  "http",
36361
36424
  "https",
36362
36425
  "mailto",
36363
36426
  "tel"
36364
36427
  ];
36365
- function Ss(e) {
36428
+ function Os(e) {
36366
36429
  let t = "";
36367
36430
  for (let n of e) {
36368
36431
  let e = n.codePointAt(0);
@@ -36371,14 +36434,14 @@ function Ss(e) {
36371
36434
  let n = /^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);
36372
36435
  return n ? n[1].toLowerCase() : null;
36373
36436
  }
36374
- function Cs(e, t = xs) {
36437
+ function ks(e, t = Ds) {
36375
36438
  if (e === "") return null;
36376
- let n = Ss(e);
36439
+ let n = Os(e);
36377
36440
  return n === null || t.includes(n) ? e : null;
36378
36441
  }
36379
- function ws(e, t = xs, n = typeof window < "u" ? window : void 0) {
36380
- let r = Cs(e, t);
36442
+ function As(e, t = Ds, n = typeof window < "u" ? window : void 0) {
36443
+ let r = ks(e, t);
36381
36444
  return r === null || !n ? !1 : (n.open(r, "_blank", "noopener,noreferrer"), !0);
36382
36445
  }
36383
36446
  //#endregion
36384
- export { oi as $, ve as $t, io as A, qe as At, ta as B, ke as Bt, _o as C, nn as Ct, fo as D, Je as Dt, po as E, Ye as Et, pa as F, Me as Ft, yi as G, se as Gt, Ji as H, Le as Ht, ha as I, Fe as It, fi as J, le as Jt, bi as K, xe as Kt, ma as L, Ie as Lt, Z as M, Be as Mt, Oa as N, Ve as Nt, so as O, nt as Ot, Da as P, je as Pt, si as Q, _e as Qt, ea as R, Ae as Rt, go as S, mn as St, mo as T, Ut as Tt, Bi as U, Te as Ut, Di as V, De as Vt, Hi as W, oe as Wt, li as X, de as Xt, di as Y, ce as Yt, ci as Z, be as Zt, Ao as _, ur as _t, vs as a, fe as an, Er as at, zo as b, On as bt, Qo as c, Cr as ct, rs as d, vr as dt, ye as en, ii as et, ts as f, gr as ft, jo as g, Jn as gt, Wo as h, _r as ht, bs as i, he as in, Or as it, Ea as j, tt as jt, oo as k, et as kt, Xo as l, Sr as lt, Vo as m, Vn as mt, Ss as n, pe as nn, Xr as nt, ys as o, w as on, wr as ot, ko as p, hr as pt, ui as q, ue as qt, ws as r, me as rn, kr as rt, fs as s, T as sn, Tr as st, xs as t, ge as tn, ai as tt, Yo as u, In as ut, Do as v, Gn as vt, ho as w, rn as wt, To as x, fn as xt, $ as y, wn as yt, $i as z, Oe as zt };
36447
+ export { fi as $, de as $t, po as A, nt as At, aa as B, ze as Bt, So as C, yn as Ct, yo as D, Ze as Dt, bo as E, Jt as Et, Na as F, je as Ft, Ji as G, Re as Gt, Mi as H, ke as Ht, ya as I, Me as It, hi as J, se as Jt, wi as K, Te as Kt, xa as L, Fe as Lt, Ma as M, rt as Mt, Z as N, He as Nt, vo as O, Xe as Ot, Pa as P, Ue as Pt, pi as Q, ce as Qt, ba as R, Le as Rt, ko as S, _n as St, xo as T, ln as Tt, ea as U, Ie as Ut, sa as V, Oe as Vt, Ki as W, De as Wt, gi as X, ue as Xt, _i as Y, xe as Yt, mi as Z, le as Zt, Io as _, $n as _t, ws as a, pe as an, Nr as at, Go as b, kn as bt, is as c, fe as cn, Ar as ct, ls as d, Vn as dt, be as en, di as et, ss as f, Cr as ft, Lo as g, Sr as gt, Xo as h, Kn as ht, Es as i, ge as in, Pr as it, uo as j, Ye as jt, mo as k, it as kt, ns as l, w as ln, Or as lt, qo as m, br as mt, Os as n, ve as nn, ui as nt, Ts as o, me as on, jr as ot, Fo as p, xr as pt, Ti as q, oe as qt, As as r, ye as rn, ti as rt, vs as s, he as sn, kr as st, Ds as t, _e as tn, li as tt, ts as u, T as un, Dr as ut, No as v, hr as vt, Co as w, cn as wt, jo as x, Nn as xt, $ as y, Xn as yt, oa as z, Ae as zt };