@silurus/ooxml 0.85.3 → 0.86.1

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 (56) hide show
  1. package/README.md +39 -7
  2. package/dist/assets/render-worker-D21h5TGR.js +10 -0
  3. package/dist/assets/render-worker-Dsfekaht.js +11 -0
  4. package/dist/assets/render-worker-DxU7IrKo.js +31 -0
  5. package/dist/bounded-raw-part-cache-BfbSxRIL.js +119 -0
  6. package/dist/{canvas-viewer-mechanics-CDNMJ-Yz.js → canvas-viewer-mechanics-DN5SqWGS.js} +329 -192
  7. package/dist/{comment-ui-runtime-DAKBCpsM.js → comment-ui-runtime-DEtgcmj7.js} +5 -5
  8. package/dist/comment-ui-runtime-TLHustXJ.js +2 -0
  9. package/dist/{comment-ui-runtime-CAbpuWi_.js → comment-ui-runtime-lXwVOgjW.js} +4 -4
  10. package/dist/{comments-Brfxa3hQ.js → comments-CAn2A_Xh.js} +1 -1
  11. package/dist/delimited-text-worker-host-DcHj_JZt.js +27 -0
  12. package/dist/{document-pull-client-F3ox_VXK.js → document-pull-client-uopDjRde.js} +4477 -4431
  13. package/dist/{docx-BYvm3TWw.js → docx-wPzeF76A.js} +519 -334
  14. package/dist/docx.mjs +7 -7
  15. package/dist/docx_parser_bg.wasm +0 -0
  16. package/dist/{dom-interaction-boundary-CDGegIB5.js → dom-interaction-boundary-CswB9Tzi.js} +60 -57
  17. package/dist/{line-metrics-BGtFM-ec.js → hyperlink-BR1NCO7S.js} +954 -935
  18. package/dist/index.mjs +4 -4
  19. package/dist/{line-distribute-BsV4MVZ2.js → line-distribute-IsUGfHXm.js} +10 -10
  20. package/dist/line-metrics-CBbw80Ko.js +60 -0
  21. package/dist/node.mjs +266 -266
  22. package/dist/{pptx-BqpVTP8p.js → pptx-BxJ_RBSY.js} +173 -165
  23. package/dist/pptx.mjs +5 -5
  24. package/dist/pptx_parser_bg.wasm +0 -0
  25. package/dist/{render-DeZpRCfx.js → render-DEiun_AH.js} +1 -1
  26. package/dist/{render-worker-host-BKtXmlEF.js → render-worker-host-BEfLZvSL.js} +1 -1
  27. package/dist/{render-worker-host-CNKQ76tu.js → render-worker-host-Ba6Fchqr.js} +1 -1
  28. package/dist/{render-worker-host-CBcQXsR5.js → render-worker-host-C3xwtHnv.js} +1 -1
  29. package/dist/{resource-measurement-D41R-0Bl.js → resource-measurement-CclArDRs.js} +10 -10
  30. package/dist/{session-n2p5_jxV.js → session-BuJL_xcp.js} +87 -87
  31. package/dist/{slide-pull-client-Dwek7xW8.js → slide-pull-client-Ck8wfRT_.js} +1239 -1165
  32. package/dist/types/chart-ex.d.ts +2 -2
  33. package/dist/types/docx.d.ts +10 -11
  34. package/dist/types/index.d.ts +38 -19
  35. package/dist/types/math.d.ts +1 -1
  36. package/dist/types/node.d.ts +6 -5
  37. package/dist/types/pptx.d.ts +10 -10
  38. package/dist/types/region-map.d.ts +2 -2
  39. package/dist/types/three-d.d.ts +2 -2
  40. package/dist/types/tiff.d.ts +1 -1
  41. package/dist/types/xlsx.d.ts +34 -14
  42. package/dist/{worksheet-pull-client-C9sC36Vu.js → worksheet-pull-client-CAvuf22q.js} +72 -69
  43. package/dist/{xlsx-DSU6pV1O.js → xlsx-Bblm5r1h.js} +1752 -1592
  44. package/dist/xlsx.mjs +5 -5
  45. package/dist/xlsx_parser_bg.wasm +0 -0
  46. package/package.json +1 -1
  47. package/dist/assets/render-worker-D1O73gYW.js +0 -10
  48. package/dist/assets/render-worker-DHP0rgcW.js +0 -24
  49. package/dist/assets/render-worker-V2wWYA4O.js +0 -11
  50. package/dist/bounded-raw-part-cache-C6ro6Ezf.js +0 -254
  51. package/dist/comment-ui-runtime-DTaaZdXC.js +0 -2
  52. /package/dist/{comment-occurrence-tj54AXXB.js → comment-occurrence-CqejEuts.js} +0 -0
  53. /package/dist/{highlight-rect-DBcYVJDv.js → highlight-rect-FuUSmL3a.js} +0 -0
  54. /package/dist/{read-only-comment-decoration-Mv_SAiHy.js → read-only-comment-decoration-BTnWEeo5.js} +0 -0
  55. /package/dist/{read-only-comment-margin-Cqu-Ir0C.js → read-only-comment-margin-plStyGfE.js} +0 -0
  56. /package/dist/{source-key-BkBB3X82.js → source-key-Ktb1GRE5.js} +0 -0
@@ -99,20 +99,32 @@ var w = class e extends Error {
99
99
  url: Ce,
100
100
  loadFamily: "Noto Sans Arabic"
101
101
  }
102
+ }, Ee = {
103
+ "noto sans cjk sc": "Noto Sans SC",
104
+ "noto serif cjk sc": "Noto Serif SC",
105
+ "noto sans cjk tc": "Noto Sans TC",
106
+ "noto serif cjk tc": "Noto Serif TC",
107
+ "noto sans cjk jp": "Noto Sans JP",
108
+ "noto serif cjk jp": "Noto Serif JP",
109
+ "noto sans cjk kr": "Noto Sans KR",
110
+ "noto serif cjk kr": "Noto Serif KR",
111
+ "noto sans cjk hk": "Noto Sans HK"
102
112
  };
103
- //#endregion
104
- //#region packages/core/src/fonts/scripts.ts
105
- function Ee(e) {
113
+ function De(e) {
114
+ return e ? Ee[e.trim().toLowerCase()] ?? null : null;
115
+ }
116
+ function Oe(e) {
106
117
  if (!e) return null;
107
- let t = e.toLowerCase();
108
- return /[ᄀ-ᇿ㄰-㆏가-힯]/.test(e) ? "kr" : /[぀-ヿ]/.test(e) ? "jp" : /jhenghei|微軟正黑|新細明|細明|pmingliu|mingliu|dfkai|標楷|華康|cns11643|kaiti tc|ming\s*liu/.test(t) || /新細明體|細明體|標楷體|微軟正黑體|華康/.test(e) ? "tc" : /simsun|nsimsun|simhei|simkai|simfang|yahei|dengxian|fangsong|kaiti|youyuan|lisu|stsong|stkaiti|stfangsong|stheiti|stxihei|stzhongsong|songti sc|heiti sc|微软雅黑/.test(t) || /宋体|黑体|楷体|仿宋|等线|微软雅黑|隶书|幼圆/.test(e) ? "sc" : /malgun|batang|gulim|dotum|gungsuh|nanum|new gulim|hancom|hy(gothic|graphic|namu)?/.test(t) ? "kr" : /\bmeiryo\b|\byu\s*(gothic|mincho)\b|yugothic|yumincho|hiragino|\bms\s*(gothic|mincho|pgothic|pmincho|ui\s*gothic)\b|\bms[pg]?(gothic|mincho)\b|ipa(ex)?(gothic|mincho)|noto\s+(sans|serif)\s+jp|游ゴシック|游明朝|MS|メイリオ|ヒラギノ/.test(t) || /游ゴシック|游明朝|MS ゴシック|MS 明朝|MS Pゴシック|メイリオ|ヒラギノ/.test(e) ? "jp" : null;
118
+ let t = De(e) ?? e.trim(), n = t.toLowerCase(), r = n.match(/^noto\s+(?:sans|serif)\s+(?:cjk\s+)?(sc|tc|hk|jp|kr)$/);
119
+ return r ? r[1] : /[ᄀ-ᇿ㄰-㆏가-힯]/.test(t) ? "kr" : /[぀-ヿ]/.test(t) ? "jp" : /jhenghei|微軟正黑|新細明|細明|pmingliu|mingliu|dfkai|標楷|華康|cns11643|kaiti tc|ming\s*liu/.test(n) || /新細明體|細明體|標楷體|微軟正黑體|華康/.test(t) ? "tc" : /simsun|nsimsun|simhei|simkai|simfang|yahei|dengxian|fangsong|kaiti|youyuan|lisu|stsong|stkaiti|stfangsong|stheiti|stxihei|stzhongsong|songti sc|heiti sc|微软雅黑/.test(n) || /宋体|黑体|楷体|仿宋|等线|微软雅黑|隶书|幼圆/.test(t) ? "sc" : /malgun|batang|gulim|dotum|gungsuh|nanum|new gulim|hancom|hy(gothic|graphic|namu)?/.test(n) ? "kr" : /\bmeiryo\b|\byu\s*(gothic|mincho)\b|yugothic|yumincho|hiragino|\bms\s*(gothic|mincho|pgothic|pmincho|ui\s*gothic)\b|\bms[pg]?(gothic|mincho)\b|ipa(ex)?(gothic|mincho)|noto\s+(sans|serif)\s+jp|游ゴシック|游明朝|MS|メイリオ|ヒラギノ/.test(n) || /游ゴシック|游明朝|MS ゴシック|MS 明朝|MS Pゴシック|メイリオ|ヒラギノ/.test(t) ? "jp" : null;
109
120
  }
110
- function De(e) {
121
+ function ke(e) {
111
122
  if (!e) return "sans";
112
123
  let t = e.toLowerCase();
113
124
  return /mono|courier|consolas|等幅|gothic_m/.test(t) ? "mono" : /roman|times|cambria|caladea|georgia|garamond|century(?!\s*gothic)|palatino|antiqua|didot|bodoni|playfair|source serif|noto serif|min\s*cho|明朝体|明朝|song|sung|simsun|nsimsun|batang|gungsuh|ming\s*liu|mingliu|pmingliu|fang\s*song|fangsong|kai\s*ti|kaiti|simkai|simfang|stsong|stkaiti|stfangsong|stzhongsong|新細明|細明|宋体|楷体|楷體|仿宋|標楷|游明朝|MS 明朝|ms mincho|yu mincho|hiragino mincho|ヒラギノ明朝/.test(t) || /新細明體|細明體|宋体|明朝|楷体|楷體|仿宋|標楷體|游明朝|MS 明朝/.test(e) ? "serif" : "sans";
114
125
  }
115
- function Oe(e, t) {
126
+ function Ae(e, t) {
127
+ if (e === "hk" && t === "serif") return [];
116
128
  let n = t === "serif" ? "Noto Serif" : "Noto Sans", r = {
117
129
  jp: [
118
130
  "jp",
@@ -132,6 +144,13 @@ function Oe(e, t) {
132
144
  "jp",
133
145
  "kr"
134
146
  ],
147
+ hk: [
148
+ "hk",
149
+ "tc",
150
+ "sc",
151
+ "jp",
152
+ "kr"
153
+ ],
135
154
  kr: [
136
155
  "kr",
137
156
  "jp",
@@ -142,31 +161,39 @@ function Oe(e, t) {
142
161
  kr: "KR",
143
162
  sc: "SC",
144
163
  tc: "TC",
164
+ hk: "HK",
145
165
  jp: "JP"
146
166
  };
147
167
  return r[e].map((e) => `${n} ${i[e]}`);
148
168
  }
149
- var ke = [
169
+ var je = [
150
170
  "Noto Sans",
151
171
  "Noto Sans Hebrew",
152
172
  "Noto Sans Thai",
153
173
  "Noto Sans Devanagari"
154
- ], Ae = ["Noto Serif", "Noto Serif Hebrew"], E = (e) => `https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`, je = {
174
+ ], Me = ["Noto Serif", "Noto Serif Hebrew"], E = (e) => `https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`, Ne = {
155
175
  "noto sans kr": { url: E("Noto+Sans+KR") },
156
176
  "noto sans sc": { url: E("Noto+Sans+SC") },
157
177
  "noto sans tc": { url: E("Noto+Sans+TC") },
178
+ "noto sans hk": { url: E("Noto+Sans+HK") },
158
179
  "noto sans jp": { url: E("Noto+Sans+JP") },
159
180
  "noto serif kr": { url: E("Noto+Serif+KR") },
160
181
  "noto serif sc": { url: E("Noto+Serif+SC") },
161
182
  "noto serif tc": { url: E("Noto+Serif+TC") },
162
- "noto serif jp": { url: E("Noto+Serif+JP") },
183
+ "noto serif jp": { url: E("Noto+Serif+JP") }
184
+ }, Pe = Object.fromEntries(Object.entries(Ee).map(([e, t]) => [e, {
185
+ ...Ne[t.toLowerCase()],
186
+ loadFamily: t
187
+ }])), Fe = {
188
+ ...Ne,
189
+ ...Pe,
163
190
  "noto sans": { url: E("Noto+Sans") },
164
191
  "noto serif": { url: E("Noto+Serif") },
165
192
  "noto sans devanagari": { url: E("Noto+Sans+Devanagari") },
166
193
  "noto sans thai": { url: E("Noto+Sans+Thai") },
167
194
  "noto sans hebrew": { url: E("Noto+Sans+Hebrew") },
168
195
  "noto serif hebrew": { url: E("Noto+Serif+Hebrew") }
169
- }, Me = class e {
196
+ }, Ie = class e {
170
197
  hasHan = !1;
171
198
  hasHangul = !1;
172
199
  hasKana = !1;
@@ -196,24 +223,26 @@ var ke = [
196
223
  "kr",
197
224
  "sc",
198
225
  "tc",
226
+ "hk",
199
227
  "jp"
200
228
  ]) if (t.has(n)) {
201
229
  let t = {
202
230
  kr: "KR",
203
231
  sc: "SC",
204
232
  tc: "TC",
233
+ hk: "HK",
205
234
  jp: "JP"
206
235
  }[n];
207
- e.push(`Noto Sans ${t}`, `Noto Serif ${t}`);
236
+ e.push(`Noto Sans ${t}`), n !== "hk" && e.push(`Noto Serif ${t}`);
208
237
  }
209
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;
210
239
  }
211
240
  };
212
- function Ne(e, t) {
213
- let n = new Me(t);
241
+ function Le(e, t) {
242
+ let n = new Ie(t);
214
243
  return n.addText(e), n.names();
215
244
  }
216
- var Pe = {
245
+ var Re = {
217
246
  accentbordercallout1: {
218
247
  adj: [
219
248
  ["adj1", "val 18750"],
@@ -22076,15 +22105,15 @@ var Pe = {
22076
22105
  ]
22077
22106
  }]
22078
22107
  }
22079
- }, D = 216e5, Fe = Math.PI * 2 / D;
22080
- function Ie(e) {
22108
+ }, D = 216e5, ze = Math.PI * 2 / D;
22109
+ function Be(e) {
22081
22110
  let t = e.trim().split(/\s+/);
22082
22111
  return {
22083
22112
  op: t[0],
22084
22113
  argTokens: t.slice(1)
22085
22114
  };
22086
22115
  }
22087
- function Le(e, t, n) {
22116
+ function Ve(e, t, n) {
22088
22117
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
22089
22118
  Object.assign(c, {
22090
22119
  w: r,
@@ -22173,10 +22202,10 @@ function Le(e, t, n) {
22173
22202
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
22174
22203
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
22175
22204
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
22176
- case "sin": return t[0] * Math.sin(t[1] * Fe);
22177
- case "cos": return t[0] * Math.cos(t[1] * Fe);
22178
- case "tan": return t[0] * Math.tan(t[1] * Fe);
22179
- case "at2": return Math.atan2(t[1], t[0]) / Fe;
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;
22180
22209
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
22181
22210
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
22182
22211
  default: throw Error(`preset-shape: unknown operator "${e}" in "${[n.op, ...n.argTokens].join(" ")}"`);
@@ -22185,8 +22214,8 @@ function Le(e, t, n) {
22185
22214
  }
22186
22215
  //#endregion
22187
22216
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
22188
- var Re = Math.PI * 2 / 216e5;
22189
- function ze(e, t, n, r, i, a, o) {
22217
+ var He = Math.PI * 2 / 216e5;
22218
+ function Ue(e, t, n, r, i, a, o) {
22190
22219
  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;
22191
22220
  for (let r of t.cmds) switch (r[0]) {
22192
22221
  case "m": {
@@ -22210,7 +22239,7 @@ function ze(e, t, n, r, i, a, o) {
22210
22239
  break;
22211
22240
  }
22212
22241
  case "a": {
22213
- let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * Re, u = n.resolve(r[4]) * Re, 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;
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;
22214
22243
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
22215
22244
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
22216
22245
  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));
@@ -22223,44 +22252,44 @@ function ze(e, t, n, r, i, a, o) {
22223
22252
  }
22224
22253
  //#endregion
22225
22254
  //#region packages/core/src/shape/preset-geometry/index.ts
22226
- var O = Pe, Be = /* @__PURE__ */ new WeakMap();
22227
- function Ve(e) {
22228
- let t = Be.get(e);
22255
+ var O = Re, We = /* @__PURE__ */ new WeakMap();
22256
+ function Ge(e) {
22257
+ let t = We.get(e);
22229
22258
  return t || (t = {
22230
- adj: e.adj.map(([e, t]) => [e, Ie(t)]),
22231
- gd: e.gd.map(([e, t]) => [e, Ie(t)])
22232
- }, Be.set(e, 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;
22233
22262
  }
22234
- function He(e, t, n, r) {
22235
- let i = Ve(e);
22236
- return Le({
22263
+ function Ke(e, t, n, r) {
22264
+ let i = Ge(e);
22265
+ return Ve({
22237
22266
  w: t,
22238
22267
  h: n,
22239
22268
  adj: r
22240
22269
  }, i.adj, i.gd);
22241
22270
  }
22242
- function Ue(e) {
22271
+ function qe(e) {
22243
22272
  return e.toLowerCase() in O;
22244
22273
  }
22245
- function We(e, t, n, r, i, a, o = []) {
22274
+ function Je(e, t, n, r, i, a, o = []) {
22246
22275
  let s = O[t.toLowerCase()];
22247
22276
  if (!s) return !1;
22248
- let c = He(s, i, a, o);
22249
- for (let t of s.paths) ze(e, t, c, n, r, i, a);
22277
+ let c = Ke(s, i, a, o);
22278
+ for (let t of s.paths) Ue(e, t, c, n, r, i, a);
22250
22279
  return !0;
22251
22280
  }
22252
- function Ge(e, t, n, r, i, a, o = []) {
22281
+ function Ye(e, t, n, r, i, a, o = []) {
22253
22282
  let s = O[t.toLowerCase()];
22254
22283
  if (!s) return !1;
22255
- let c = He(s, i, a, o);
22256
- for (let t of s.paths) t.fill !== "none" && ze(e, t, c, n, r, i, a);
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);
22257
22286
  return !0;
22258
22287
  }
22259
- var Ke = {
22288
+ var Xe = {
22260
22289
  wedgeroundrectcallout: "roundrect",
22261
22290
  wedgeellipsecallout: "ellipse",
22262
22291
  wedgerectcallout: null
22263
- }, qe = {
22292
+ }, Ze = {
22264
22293
  adj: [],
22265
22294
  gd: [],
22266
22295
  paths: [{
@@ -22294,20 +22323,20 @@ var Ke = {
22294
22323
  ]
22295
22324
  }]
22296
22325
  };
22297
- function Je(e, t, n) {
22326
+ function Qe(e, t, n) {
22298
22327
  let r = e[n];
22299
22328
  if (typeof r == "number") return r;
22300
22329
  let i = t.adj[n];
22301
22330
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
22302
22331
  }
22303
- function Ye(e, t, n, r) {
22332
+ function $e(e, t, n, r) {
22304
22333
  let i = O[e];
22305
22334
  if (!i) return null;
22306
- if (e in Ke) {
22307
- let a = Je(r, i, 0), o = Je(r, i, 1), s = t / 2 + t * a / 1e5, c = n / 2 + n * o / 1e5;
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;
22308
22337
  if (s >= 0 && s <= t && c >= 0 && c <= n) {
22309
- let t = Ke[e];
22310
- t === "roundrect" ? (i = O.roundrect, r = [Je(r, O[e], 2)]) : t && O[t] ? (i = O[t], r = []) : (i = qe, r = []);
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 = []);
22311
22340
  }
22312
22341
  }
22313
22342
  return {
@@ -22315,8 +22344,8 @@ function Ye(e, t, n, r) {
22315
22344
  adj: r
22316
22345
  };
22317
22346
  }
22318
- function Xe(e, t, n, r, i, a = []) {
22319
- let o = Ye(e.toLowerCase(), r, i, a);
22347
+ function et(e, t, n, r, i, a = []) {
22348
+ let o = $e(e.toLowerCase(), r, i, a);
22320
22349
  if (!o) return null;
22321
22350
  let s = Infinity, c = Infinity, l = -Infinity, u = -Infinity, d = (e, t) => {
22322
22351
  !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));
@@ -22333,8 +22362,8 @@ function Xe(e, t, n, r, i, a = []) {
22333
22362
  d(e - Math.abs(n), t - Math.abs(r)), d(e + Math.abs(n), t + Math.abs(r));
22334
22363
  },
22335
22364
  closePath() {}
22336
- }, p = He(o.def, r, i, o.adj);
22337
- for (let e of o.def.paths) ze(f, e, p, t, n, r, i);
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);
22338
22367
  return Number.isFinite(s) ? {
22339
22368
  x: s,
22340
22369
  y: c,
@@ -22347,19 +22376,19 @@ function Xe(e, t, n, r, i, a = []) {
22347
22376
  h: i
22348
22377
  };
22349
22378
  }
22350
- function Ze(e, t, n, r, i, a, o, s, c, l, u) {
22351
- let d = Ye(t.toLowerCase(), i, a, o);
22379
+ function tt(e, t, n, r, i, a, o, s, c, l, u) {
22380
+ let d = $e(t.toLowerCase(), i, a, o);
22352
22381
  if (!d) return !1;
22353
22382
  let { def: f } = d;
22354
22383
  o = d.adj;
22355
- let p = He(f, i, a, o), m = !1, h = f.paths.length - 1;
22384
+ let p = Ke(f, i, a, o), m = !1, h = f.paths.length - 1;
22356
22385
  for (let t = 0; t < f.paths.length; t++) {
22357
22386
  let o = f.paths[t];
22358
- e.beginPath(), ze(e, o, p, n, r, i, a);
22387
+ e.beginPath(), Ue(e, o, p, n, r, i, a);
22359
22388
  let d = o.fill;
22360
22389
  if (d !== "none" && s != null) {
22361
22390
  e.save(), e.fillStyle = s, e.fill();
22362
- let t = $e(d);
22391
+ let t = rt(d);
22363
22392
  t && (e.fillStyle = t, e.fill()), e.restore(), m ||= (l(), !0);
22364
22393
  }
22365
22394
  if (o.stroke && c) {
@@ -22369,10 +22398,10 @@ function Ze(e, t, n, r, i, a, o, s, c, l, u) {
22369
22398
  }
22370
22399
  return !0;
22371
22400
  }
22372
- function Qe(e, t, n, r, i, a) {
22401
+ function nt(e, t, n, r, i, a) {
22373
22402
  let o = O[e.toLowerCase()];
22374
22403
  if (!o || o.paths.length === 0) return null;
22375
- let s = o.paths[o.paths.length - 1], c = He(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 = [];
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 = [];
22376
22405
  for (let e of s.cmds) switch (e[0]) {
22377
22406
  case "m":
22378
22407
  h = d(c.resolve(e[1])), g = f(c.resolve(e[2])), p = h, m = g, S.push({
@@ -22412,7 +22441,7 @@ function Qe(e, t, n, r, i, a) {
22412
22441
  vertices: S
22413
22442
  };
22414
22443
  }
22415
- function $e(e) {
22444
+ function rt(e) {
22416
22445
  switch (e) {
22417
22446
  case "lighten": return "rgba(255,255,255,0.30)";
22418
22447
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -22459,6 +22488,9 @@ var k = {
22459
22488
  BEGINPATH: 59,
22460
22489
  ENDPATH: 60,
22461
22490
  CLOSEFIGURE: 61,
22491
+ FILLPATH: 62,
22492
+ STROKEANDFILLPATH: 63,
22493
+ STROKEPATH: 64,
22462
22494
  SELECTCLIPPATH: 67,
22463
22495
  EXTCREATEFONTINDIRECTW: 82,
22464
22496
  EXTTEXTOUTW: 84,
@@ -22495,7 +22527,7 @@ var k = {
22495
22527
  TWIPS: 6,
22496
22528
  ISOTROPIC: 7,
22497
22529
  ANISOTROPIC: 8
22498
- }, et = () => ({
22530
+ }, it = () => ({
22499
22531
  m11: 1,
22500
22532
  m12: 0,
22501
22533
  m21: 0,
@@ -22503,7 +22535,7 @@ var k = {
22503
22535
  dx: 0,
22504
22536
  dy: 0
22505
22537
  });
22506
- function tt(e, t) {
22538
+ function at(e, t) {
22507
22539
  return {
22508
22540
  m11: e.m11 * t.m11 + e.m21 * t.m12,
22509
22541
  m12: e.m12 * t.m11 + e.m22 * t.m12,
@@ -22513,7 +22545,7 @@ function tt(e, t) {
22513
22545
  dy: e.m12 * t.dx + e.m22 * t.dy + e.dy
22514
22546
  };
22515
22547
  }
22516
- var nt = class {
22548
+ var ot = class {
22517
22549
  p;
22518
22550
  constructor(e, t, n) {
22519
22551
  this.dv = e, this.end = n, this.p = t;
@@ -22556,58 +22588,68 @@ var nt = class {
22556
22588
  skip(e) {
22557
22589
  this.p += e;
22558
22590
  }
22559
- };
22560
- function rt(e, t, n) {
22591
+ }, st = 2162688;
22592
+ function M(e, t) {
22593
+ if (!e.inPath) return !0;
22594
+ if (e.pathDiscarded) return !1;
22595
+ let n = e.pathCommandCount + t;
22596
+ return !Number.isSafeInteger(n) || t < 0 || n > e.maxPathCommands ? (e.ctx.beginPath(), e.pathDiscarded = !0, !1) : (e.pathCommandCount = n, !0);
22597
+ }
22598
+ function ct(e, t, n) {
22599
+ let r = n === F ? 4 : 8;
22600
+ return Math.min(t, Math.floor(e.remaining / r));
22601
+ }
22602
+ function lt(e, t, n) {
22561
22603
  return e.wt.m11 * t + e.wt.m21 * n + e.wt.dx;
22562
22604
  }
22563
- function it(e, t, n) {
22605
+ function ut(e, t, n) {
22564
22606
  return e.wt.m12 * t + e.wt.m22 * n + e.wt.dy;
22565
22607
  }
22566
- function at(e) {
22608
+ function dt(e) {
22567
22609
  return e.winExtX === 0 ? 1 : e.vpExtX / e.winExtX;
22568
22610
  }
22569
- function ot(e) {
22611
+ function ft(e) {
22570
22612
  return e.winExtY === 0 ? 1 : e.vpExtY / e.winExtY;
22571
22613
  }
22572
- function st(e) {
22573
- return Math.min(Math.abs(at(e)), Math.abs(ot(e)));
22614
+ function pt(e) {
22615
+ return Math.min(Math.abs(dt(e)), Math.abs(ft(e)));
22574
22616
  }
22575
- function ct(e) {
22576
- return e.mapMode === j.ISOTROPIC ? at(e) < 0 ? -st(e) : st(e) : at(e);
22617
+ function mt(e) {
22618
+ return e.mapMode === j.ISOTROPIC ? dt(e) < 0 ? -pt(e) : pt(e) : dt(e);
22577
22619
  }
22578
- function lt(e) {
22579
- return e.mapMode === j.ISOTROPIC ? ot(e) < 0 ? -st(e) : st(e) : ot(e);
22620
+ function ht(e) {
22621
+ return e.mapMode === j.ISOTROPIC ? ft(e) < 0 ? -pt(e) : pt(e) : ft(e);
22580
22622
  }
22581
- function ut(e, t) {
22582
- return (t - e.winOrgX) * ct(e) + e.vpOrgX;
22623
+ function gt(e, t) {
22624
+ return (t - e.winOrgX) * mt(e) + e.vpOrgX;
22583
22625
  }
22584
- function dt(e, t) {
22585
- return (t - e.winOrgY) * lt(e) + e.vpOrgY;
22626
+ function _t(e, t) {
22627
+ return (t - e.winOrgY) * ht(e) + e.vpOrgY;
22586
22628
  }
22587
- function M(e, t, n) {
22588
- let r = ut(e, rt(e, t, n)), i = dt(e, it(e, t, n));
22629
+ function N(e, t, n) {
22630
+ let r = gt(e, lt(e, t, n)), i = _t(e, ut(e, t, n));
22589
22631
  return [(r - e.left) * e.W / e.boundsW, (i - e.top) * e.H / e.boundsH];
22590
22632
  }
22591
- function ft(e) {
22633
+ function vt(e) {
22592
22634
  return (Math.hypot(e.wt.m11, e.wt.m12) + Math.hypot(e.wt.m21, e.wt.m22)) / 2;
22593
22635
  }
22594
- function pt(e) {
22595
- return (Math.abs(ct(e)) + Math.abs(lt(e))) / 2;
22636
+ function yt(e) {
22637
+ return (Math.abs(mt(e)) + Math.abs(ht(e))) / 2;
22596
22638
  }
22597
- function mt(e) {
22639
+ function bt(e) {
22598
22640
  return (e.W / e.boundsW + e.H / e.boundsH) / 2;
22599
22641
  }
22600
- function ht(e) {
22642
+ function xt(e) {
22601
22643
  return Math.hypot(e.wt.m21, e.wt.m22);
22602
22644
  }
22603
- function gt(e) {
22645
+ function St(e) {
22604
22646
  return e.H / e.boundsH;
22605
22647
  }
22606
- function N(e, t) {
22607
- let n = t * ft(e) * pt(e) * mt(e);
22648
+ function P(e, t) {
22649
+ let n = t * vt(e) * yt(e) * bt(e);
22608
22650
  return Math.max(.75, n);
22609
22651
  }
22610
- function _t(e, t) {
22652
+ function Ct(e, t) {
22611
22653
  if (e.mapMode = t, t === j.TEXT) {
22612
22654
  e.winOrgX = 0, e.winOrgY = 0, e.vpOrgX = 0, e.vpOrgY = 0, e.winExtX = 1, e.winExtY = 1, e.vpExtX = 1, e.vpExtY = 1;
22613
22655
  return;
@@ -22616,7 +22658,7 @@ function _t(e, t) {
22616
22658
  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;
22617
22659
  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));
22618
22660
  }
22619
- var vt = {
22661
+ var wt = {
22620
22662
  [A.WHITE_BRUSH]: {
22621
22663
  kind: "brush",
22622
22664
  fill: "#ffffff"
@@ -22641,7 +22683,7 @@ var vt = {
22641
22683
  kind: "brush",
22642
22684
  fill: null
22643
22685
  }
22644
- }, yt = {
22686
+ }, Tt = {
22645
22687
  [A.WHITE_PEN]: {
22646
22688
  kind: "pen",
22647
22689
  stroke: "#ffffff",
@@ -22663,13 +22705,13 @@ var vt = {
22663
22705
  width: 1
22664
22706
  }
22665
22707
  };
22666
- function bt(e, t) {
22667
- let n = vt[t];
22708
+ function Et(e, t) {
22709
+ let n = wt[t];
22668
22710
  if (n) {
22669
22711
  e.curBrush = n;
22670
22712
  return;
22671
22713
  }
22672
- let r = yt[t];
22714
+ let r = Tt[t];
22673
22715
  if (r) {
22674
22716
  e.curPen = r;
22675
22717
  return;
@@ -22679,118 +22721,135 @@ function bt(e, t) {
22679
22721
  fill: "#000000"
22680
22722
  });
22681
22723
  }
22682
- function xt(e) {
22724
+ function Dt(e) {
22683
22725
  let t = 0, n = 0, r = 0, i = 0;
22684
22726
  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++);
22685
22727
  if (i === 0) return "#808080";
22686
22728
  let a = (e) => Math.round(e / i).toString(16).padStart(2, "0");
22687
22729
  return `#${a(t)}${a(n)}${a(r)}`;
22688
22730
  }
22689
- var P = (e) => [e.i16(), e.i16()], F = (e) => [e.i32(), e.i32()];
22690
- function St(e, t, n) {
22731
+ var F = (e) => [e.i16(), e.i16()], I = (e) => [e.i32(), e.i32()];
22732
+ function Ot(e, t, n) {
22691
22733
  t.skip(16);
22692
22734
  let r = t.u32();
22693
- if (r < 2 || r > 1048576 || !e.curPen || e.curPen.stroke == null) return;
22694
- let { ctx: i } = e;
22695
- i.beginPath();
22696
- let a = 0, o = 0;
22697
- for (let s = 0; s < r && !(t.remaining < 4); s++) {
22698
- let [r, c] = n(t), [l, u] = M(e, r, c);
22699
- s === 0 ? i.moveTo(l, u) : i.lineTo(l, u), a = r, o = c;
22735
+ if (r < 2 || r > 1048576 || !e.inPath && (!e.curPen || e.curPen.stroke == null)) return;
22736
+ let { ctx: i } = e, a = M(e, ct(t, r, n));
22737
+ e.inPath || i.beginPath();
22738
+ let o = 0, s = 0;
22739
+ for (let c = 0; c < r && !(t.remaining < 4); c++) {
22740
+ let [r, l] = n(t), [u, d] = N(e, r, l);
22741
+ a && (c === 0 ? i.moveTo(u, d) : i.lineTo(u, d)), o = r, s = l;
22700
22742
  }
22701
- i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0, e.curX = a, e.curY = o;
22743
+ !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;
22702
22744
  }
22703
- function Ct(e, t, n) {
22745
+ function kt(e, t, n) {
22704
22746
  t.skip(16);
22705
22747
  let r = t.u32();
22706
22748
  if (r < 1 || r > 1048576) return;
22707
- let { ctx: i } = e, a = e.curPen != null && e.curPen.stroke != null;
22708
- if (a) {
22749
+ let { ctx: i } = e, a = e.inPath || e.curPen != null && e.curPen.stroke != null, o = !e.inPath || M(e, ct(t, r, n));
22750
+ if (a && !e.inPath) {
22709
22751
  i.beginPath();
22710
- let [t, n] = M(e, e.curX, e.curY);
22752
+ let [t, n] = N(e, e.curX, e.curY);
22711
22753
  i.moveTo(t, n);
22712
22754
  }
22713
- for (let o = 0; o < r && !(t.remaining < 4); o++) {
22714
- let [r, o] = n(t);
22715
- if (a) {
22716
- let [t, n] = M(e, r, o);
22755
+ for (let s = 0; s < r && !(t.remaining < 4); s++) {
22756
+ let [r, s] = n(t);
22757
+ if (a && o) {
22758
+ let [t, n] = N(e, r, s);
22717
22759
  i.lineTo(t, n);
22718
22760
  }
22719
- e.curX = r, e.curY = o;
22761
+ e.curX = r, e.curY = s;
22720
22762
  }
22721
- a && e.curPen && (i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0);
22763
+ a && !e.inPath && e.curPen && (i.strokeStyle = e.curPen.stroke, i.lineWidth = P(e, e.curPen.width), i.stroke(), e.drew = !0);
22722
22764
  }
22723
- function wt(e, t, n) {
22765
+ function At(e, t, n) {
22724
22766
  t.skip(16);
22725
22767
  let r = t.u32();
22726
22768
  if (r < 2 || r > 1048576) return;
22727
- let { ctx: i } = e;
22769
+ let { ctx: i } = e, a = M(e, ct(t, r, n) + 1);
22728
22770
  e.inPath || i.beginPath();
22729
- let a = !1;
22730
- for (let o = 0; o < r && !(t.remaining < 4); o++) {
22731
- let [r, o] = n(t), [s, c] = M(e, r, o);
22732
- a ? i.lineTo(s, c) : (i.moveTo(s, c), a = !0);
22771
+ let o = !1;
22772
+ for (let s = 0; s < r && !(t.remaining < 4); s++) {
22773
+ let [r, s] = n(t), [c, l] = N(e, r, s);
22774
+ o ? a && i.lineTo(c, l) : (a && i.moveTo(c, l), o = !0);
22733
22775
  }
22734
- 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)));
22776
+ 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)));
22735
22777
  }
22736
- function Tt(e, t, n, r) {
22778
+ function jt(e, t, n, r) {
22737
22779
  t.skip(16);
22738
22780
  let i = t.u32();
22739
22781
  if (i < 1 || i > 1048576) return;
22740
- let a = [];
22741
- for (let e = 0; e < i && !(t.remaining < 4); e++) a.push(n(t));
22742
- if (a.length < (r ? 3 : 4)) {
22743
- a.length && (e.curX = a[a.length - 1][0], e.curY = a[a.length - 1][1]);
22782
+ let a = ct(t, i, n), o = !e.inPath || M(e, a);
22783
+ if (e.inPath && !o) {
22784
+ for (let r = 0; r < a; r++) {
22785
+ let [r, i] = n(t);
22786
+ e.curX = r, e.curY = i;
22787
+ }
22788
+ return;
22789
+ }
22790
+ let s = [];
22791
+ for (let e = 0; e < i && !(t.remaining < 4); e++) s.push(n(t));
22792
+ if (s.length < (r ? 3 : 4)) {
22793
+ s.length && (e.curX = s[s.length - 1][0], e.curY = s[s.length - 1][1]);
22744
22794
  return;
22745
22795
  }
22746
- let o = e.curPen != null && e.curPen.stroke != null, { ctx: s } = e;
22747
- if (o) {
22748
- s.beginPath();
22749
- let t = r ? M(e, e.curX, e.curY) : M(e, a[0][0], a[0][1]);
22750
- s.moveTo(t[0], t[1]);
22796
+ let c = e.inPath || e.curPen != null && e.curPen.stroke != null, { ctx: l } = e;
22797
+ if (c) {
22798
+ e.inPath || l.beginPath();
22799
+ let t = r ? N(e, e.curX, e.curY) : N(e, s[0][0], s[0][1]);
22800
+ (!r || !e.inPath) && l.moveTo(t[0], t[1]);
22751
22801
  }
22752
- let c = +!r;
22753
- for (; c + 2 < a.length + +!!r; c += 3) {
22754
- let t = a[c], n = a[c + 1], r = a[c + 2];
22802
+ let u = +!r;
22803
+ for (; u + 2 < s.length + +!!r; u += 3) {
22804
+ let t = s[u], n = s[u + 1], r = s[u + 2];
22755
22805
  if (!t || !n || !r) break;
22756
- if (o) {
22757
- let i = M(e, t[0], t[1]), a = M(e, n[0], n[1]), o = M(e, r[0], r[1]);
22758
- s.bezierCurveTo(i[0], i[1], a[0], a[1], o[0], o[1]);
22806
+ if (c) {
22807
+ let i = N(e, t[0], t[1]), a = N(e, n[0], n[1]), o = N(e, r[0], r[1]);
22808
+ l.bezierCurveTo(i[0], i[1], a[0], a[1], o[0], o[1]);
22759
22809
  }
22760
22810
  e.curX = r[0], e.curY = r[1];
22761
22811
  }
22762
- o && e.curPen && (s.strokeStyle = e.curPen.stroke, s.lineWidth = N(e, e.curPen.width), s.stroke(), e.drew = !0);
22812
+ c && !e.inPath && e.curPen && (l.strokeStyle = e.curPen.stroke, l.lineWidth = P(e, e.curPen.width), l.stroke(), e.drew = !0);
22763
22813
  }
22764
- function Et(e, t, n, r) {
22814
+ function Mt(e, t, n, r) {
22765
22815
  t.skip(16);
22766
22816
  let i = t.u32(), a = t.u32();
22767
22817
  if (i <= 0 || i > 65536 || a <= 0 || a > 2097152) return;
22768
- let o = [];
22818
+ let o = [], s = 0;
22769
22819
  for (let e = 0; e < i; e++) {
22770
22820
  if (t.remaining < 4) return;
22771
- o.push(t.u32());
22821
+ let e = t.u32();
22822
+ if (s += e, !Number.isSafeInteger(s) || s > 2097152) return;
22823
+ o.push(e);
22772
22824
  }
22773
- let { ctx: s } = e;
22774
- e.inPath || s.beginPath();
22775
- let c = !1;
22825
+ if (s !== a) return;
22826
+ let { ctx: c } = e, l = M(e, ct(t, a, n) + (r ? i : 0));
22827
+ e.inPath || c.beginPath();
22828
+ let u = !1;
22776
22829
  for (let i of o) {
22777
22830
  if (i < 2) {
22778
22831
  for (let e = 0; e < i && t.remaining >= 4; e++) n(t);
22779
22832
  continue;
22780
22833
  }
22781
22834
  for (let r = 0; r < i && !(t.remaining < 4); r++) {
22782
- let [i, a] = n(t), [o, c] = M(e, i, a);
22783
- r === 0 ? s.moveTo(o, c) : s.lineTo(o, c);
22835
+ let [i, a] = n(t);
22836
+ if (l) {
22837
+ let [t, n] = N(e, i, a);
22838
+ r === 0 ? c.moveTo(t, n) : c.lineTo(t, n);
22839
+ }
22784
22840
  }
22785
- r && s.closePath(), c = !0;
22841
+ r && l && c.closePath(), u = !0;
22786
22842
  }
22787
- !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));
22843
+ !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));
22788
22844
  }
22789
- function Dt(e, t, n, r, i) {
22790
- let { ctx: a } = e, o = M(e, t, n), s = M(e, r, n), c = M(e, r, i), l = M(e, t, i);
22791
- 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));
22845
+ function Nt(e, t, n, r, i) {
22846
+ 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);
22847
+ 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));
22792
22848
  }
22793
- function Ot(t) {
22849
+ function Pt(e, t, n) {
22850
+ !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;
22851
+ }
22852
+ function Ft(t) {
22794
22853
  let n = t.u32(), r = t.u32(), i = t.i32();
22795
22854
  t.i32();
22796
22855
  let a = t.u32();
@@ -22800,7 +22859,7 @@ function Ot(t) {
22800
22859
  width: Math.abs(i)
22801
22860
  }];
22802
22861
  }
22803
- function kt(t) {
22862
+ function It(t) {
22804
22863
  let n = t.u32();
22805
22864
  t.skip(16);
22806
22865
  let r = t.u32(), i = t.u32();
@@ -22812,27 +22871,27 @@ function kt(t) {
22812
22871
  width: Math.abs(i)
22813
22872
  }];
22814
22873
  }
22815
- function At(t) {
22874
+ function Lt(t) {
22816
22875
  let n = t.u32(), r = t.u32(), i = t.u32();
22817
22876
  return t.u32(), [n, {
22818
22877
  kind: "brush",
22819
22878
  fill: r === 1 ? null : e(i)
22820
22879
  }];
22821
22880
  }
22822
- function jt(e, t, n) {
22881
+ function Rt(e, t, n) {
22823
22882
  let r = e.u32();
22824
22883
  e.u32();
22825
22884
  let i = e.u32(), o = e.u32(), s = e.u32(), c = e.u32(), l = "#808080";
22826
22885
  try {
22827
22886
  let e = a(t, n + i, o, n + s, c);
22828
- e && (l = xt(e));
22887
+ e && (l = Dt(e));
22829
22888
  } catch {}
22830
22889
  return [r, {
22831
22890
  kind: "brush",
22832
22891
  fill: l
22833
22892
  }];
22834
22893
  }
22835
- function Mt(e, t, n) {
22894
+ function zt(e, t, n) {
22836
22895
  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 = "";
22837
22896
  for (let e = 0; e < 32; e++) {
22838
22897
  let n = i + 28 + e * 2;
@@ -22850,7 +22909,7 @@ function Mt(e, t, n) {
22850
22909
  escapement: o
22851
22910
  }];
22852
22911
  }
22853
- function Nt(e, t, n, r) {
22912
+ function Bt(e, t, n, r) {
22854
22913
  t.skip(16), t.u32(), t.f32(), t.f32();
22855
22914
  let i = t.i32(), a = t.i32(), o = t.u32(), s = t.u32();
22856
22915
  if (t.u32(), o <= 0 || o > 65536) return;
@@ -22861,9 +22920,9 @@ function Nt(e, t, n, r) {
22861
22920
  c += String.fromCharCode(n.getUint16(t, !0));
22862
22921
  }
22863
22922
  if (c.length === 0) return;
22864
- let l = e.curFont, u = Math.abs(l?.height ?? 0) * ht(e) * Math.abs(lt(e)) * gt(e);
22923
+ let l = e.curFont, u = Math.abs(l?.height ?? 0) * xt(e) * Math.abs(ht(e)) * St(e);
22865
22924
  if (!Number.isFinite(u) || u < 1) return;
22866
- let { ctx: d } = e, [f, p] = M(e, i, a);
22925
+ let { ctx: d } = e, [f, p] = N(e, i, a);
22867
22926
  d.fillStyle = e.textColor;
22868
22927
  let m = l && l.weight >= 700 ? "bold " : "";
22869
22928
  d.font = `${l?.italic ? "italic " : ""}${m}${u}px ${l?.face || "sans-serif"}`;
@@ -22882,30 +22941,30 @@ function Nt(e, t, n, r) {
22882
22941
  e.drew = !0;
22883
22942
  } catch {}
22884
22943
  }
22885
- function Pt(e, t, n, r, i, s, c, l, u, d, f) {
22944
+ function Vt(e, t, n, r, i, s, c, l, u, d, f) {
22886
22945
  if (i === 0 || c === 0) return;
22887
22946
  let p = a(t, n + r, i, n + s, c);
22888
22947
  if (!p) return;
22889
- let [m, h] = M(e, l, u), [g, _] = M(e, d, f);
22948
+ let [m, h] = N(e, l, u), [g, _] = N(e, d, f);
22890
22949
  o(e.ctx, p, m, h, g, _) && (e.drew = !0);
22891
22950
  }
22892
- function Ft(e, t, n, r) {
22951
+ function Ht(e, t, n, r) {
22893
22952
  t.skip(16);
22894
22953
  let i = t.i32(), a = t.i32(), o = t.i32(), s = t.i32();
22895
- t.u32(), t.i32(), t.i32(), t.skip(24), t.u32(), t.u32(), Pt(e, n, r, t.u32(), t.u32(), t.u32(), t.u32(), i, a, i + o, a + s);
22954
+ t.u32(), t.i32(), t.i32(), t.skip(24), t.u32(), t.u32(), Vt(e, n, r, t.u32(), t.u32(), t.u32(), t.u32(), i, a, i + o, a + s);
22896
22955
  }
22897
- function It(e, t, n, r) {
22956
+ function Ut(e, t, n, r) {
22898
22957
  t.skip(16);
22899
22958
  let i = t.i32(), a = t.i32();
22900
22959
  t.i32(), t.i32(), t.i32(), t.i32();
22901
22960
  let o = t.u32(), s = t.u32(), c = t.u32(), l = t.u32();
22902
22961
  t.u32(), t.u32();
22903
22962
  let u = t.i32(), d = t.i32();
22904
- Pt(e, n, r, o, s, c, l, i, a, i + u, a + d);
22963
+ Vt(e, n, r, o, s, c, l, i, a, i + u, a + d);
22905
22964
  }
22906
- function Lt(t, n, r, a) {
22965
+ function Wt(t, n, r, a, o = {}) {
22907
22966
  if (!i(t) || r <= 0 || a <= 0) return !1;
22908
- let o = new DataView(t.buffer, t.byteOffset, t.byteLength), s = {
22967
+ let s = new DataView(t.buffer, t.byteOffset, t.byteLength), c = {
22909
22968
  ctx: n,
22910
22969
  W: r,
22911
22970
  H: a,
@@ -22913,7 +22972,7 @@ function Lt(t, n, r, a) {
22913
22972
  top: 0,
22914
22973
  boundsW: r,
22915
22974
  boundsH: a,
22916
- wt: et(),
22975
+ wt: it(),
22917
22976
  mapMode: j.TEXT,
22918
22977
  winOrgX: 0,
22919
22978
  winOrgY: 0,
@@ -22937,292 +22996,311 @@ function Lt(t, n, r, a) {
22937
22996
  curY: 0,
22938
22997
  stack: [],
22939
22998
  drew: !1,
22940
- inPath: !1
22941
- }, c = 0;
22942
- for (; c + 8 <= t.length;) {
22943
- let r = o.getUint32(c, !0), i = o.getUint32(c + 4, !0);
22999
+ inPath: !1,
23000
+ pathCommandCount: 0,
23001
+ pathDiscarded: !1,
23002
+ maxPathCommands: Number.isSafeInteger(o.maxPathCommands) && o.maxPathCommands > 0 ? Math.min(o.maxPathCommands, st) : st
23003
+ }, l = 0;
23004
+ for (; l + 8 <= t.length;) {
23005
+ let r = s.getUint32(l, !0), i = s.getUint32(l + 4, !0);
22944
23006
  if (i < 8 || i & 3) break;
22945
- let a = c + i;
23007
+ let a = l + i;
22946
23008
  if (a > t.length || r === k.EOF) break;
22947
- let l = new nt(o, c + 8, a);
23009
+ let o = new ot(s, l + 8, a);
22948
23010
  try {
22949
23011
  switch (r) {
22950
23012
  case k.HEADER: {
22951
- 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);
22952
- if (s.left = e, s.top = t, s.boundsW = Math.max(1, n - e), s.boundsH = Math.max(1, r - t), a >= c + 88) {
22953
- 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;
22954
- if (d > 0 && f > 0 && i > 0 && a > 0 && l > 0 && u > 0) {
22955
- let n = i / (l * 100), r = a / (u * 100);
22956
- 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;
23013
+ 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);
23014
+ if (c.left = e, c.top = t, c.boundsW = Math.max(1, n - e), c.boundsH = Math.max(1, r - t), a >= l + 88) {
23015
+ 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;
23016
+ if (d > 0 && f > 0 && i > 0 && a > 0 && o > 0 && u > 0) {
23017
+ let n = i / (o * 100), r = a / (u * 100);
23018
+ 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;
22957
23019
  }
22958
23020
  }
22959
23021
  break;
22960
23022
  }
22961
23023
  case k.SETWORLDTRANSFORM:
22962
- s.wt = l.xform();
23024
+ c.wt = o.xform();
22963
23025
  break;
22964
23026
  case k.MODIFYWORLDTRANSFORM: {
22965
- let e = l.xform(), t = l.u32();
22966
- t === 1 ? s.wt = et() : t === 2 ? s.wt = tt(e, s.wt) : t === 3 ? s.wt = tt(s.wt, e) : t === 4 && (s.wt = e);
23027
+ let e = o.xform(), t = o.u32();
23028
+ t === 1 ? c.wt = it() : t === 2 ? c.wt = at(e, c.wt) : t === 3 ? c.wt = at(c.wt, e) : t === 4 && (c.wt = e);
22967
23029
  break;
22968
23030
  }
22969
23031
  case k.SETMAPMODE:
22970
- _t(s, l.u32());
23032
+ Ct(c, o.u32());
22971
23033
  break;
22972
23034
  case k.SETWINDOWORGEX:
22973
- s.winOrgX = l.i32(), s.winOrgY = l.i32();
23035
+ c.winOrgX = o.i32(), c.winOrgY = o.i32();
22974
23036
  break;
22975
23037
  case k.SETWINDOWEXTEX: {
22976
- let e = l.i32(), t = l.i32();
22977
- e !== 0 && (s.winExtX = e), t !== 0 && (s.winExtY = t);
23038
+ let e = o.i32(), t = o.i32();
23039
+ e !== 0 && (c.winExtX = e), t !== 0 && (c.winExtY = t);
22978
23040
  break;
22979
23041
  }
22980
23042
  case k.SETVIEWPORTORGEX:
22981
- s.vpOrgX = l.i32(), s.vpOrgY = l.i32();
23043
+ c.vpOrgX = o.i32(), c.vpOrgY = o.i32();
22982
23044
  break;
22983
23045
  case k.SETVIEWPORTEXTEX: {
22984
- let e = l.i32(), t = l.i32();
22985
- e !== 0 && (s.vpExtX = e), t !== 0 && (s.vpExtY = t);
23046
+ let e = o.i32(), t = o.i32();
23047
+ e !== 0 && (c.vpExtX = e), t !== 0 && (c.vpExtY = t);
22986
23048
  break;
22987
23049
  }
22988
23050
  case k.SCALEWINDOWEXTEX: {
22989
- let e = l.i32(), t = l.i32(), n = l.i32(), r = l.i32();
22990
- t !== 0 && (s.winExtX = s.winExtX * e / t), r !== 0 && (s.winExtY = s.winExtY * n / r);
23051
+ let e = o.i32(), t = o.i32(), n = o.i32(), r = o.i32();
23052
+ t !== 0 && (c.winExtX = c.winExtX * e / t), r !== 0 && (c.winExtY = c.winExtY * n / r);
22991
23053
  break;
22992
23054
  }
22993
23055
  case k.SCALEVIEWPORTEXTEX: {
22994
- let e = l.i32(), t = l.i32(), n = l.i32(), r = l.i32();
22995
- t !== 0 && (s.vpExtX = s.vpExtX * e / t), r !== 0 && (s.vpExtY = s.vpExtY * n / r);
23056
+ let e = o.i32(), t = o.i32(), n = o.i32(), r = o.i32();
23057
+ t !== 0 && (c.vpExtX = c.vpExtX * e / t), r !== 0 && (c.vpExtY = c.vpExtY * n / r);
22996
23058
  break;
22997
23059
  }
22998
23060
  case k.SAVEDC:
22999
- s.ctx.save(), s.stack.push({
23000
- wt: { ...s.wt },
23001
- mapMode: s.mapMode,
23002
- winOrgX: s.winOrgX,
23003
- winOrgY: s.winOrgY,
23004
- winExtX: s.winExtX,
23005
- winExtY: s.winExtY,
23006
- vpOrgX: s.vpOrgX,
23007
- vpOrgY: s.vpOrgY,
23008
- vpExtX: s.vpExtX,
23009
- vpExtY: s.vpExtY,
23010
- curPen: s.curPen,
23011
- curBrush: s.curBrush,
23012
- curFont: s.curFont,
23013
- textColor: s.textColor,
23014
- bkMode: s.bkMode,
23015
- textAlign: s.textAlign,
23016
- fillRule: s.fillRule,
23017
- curX: s.curX,
23018
- curY: s.curY
23061
+ c.ctx.save(), c.stack.push({
23062
+ wt: { ...c.wt },
23063
+ mapMode: c.mapMode,
23064
+ winOrgX: c.winOrgX,
23065
+ winOrgY: c.winOrgY,
23066
+ winExtX: c.winExtX,
23067
+ winExtY: c.winExtY,
23068
+ vpOrgX: c.vpOrgX,
23069
+ vpOrgY: c.vpOrgY,
23070
+ vpExtX: c.vpExtX,
23071
+ vpExtY: c.vpExtY,
23072
+ curPen: c.curPen,
23073
+ curBrush: c.curBrush,
23074
+ curFont: c.curFont,
23075
+ textColor: c.textColor,
23076
+ bkMode: c.bkMode,
23077
+ textAlign: c.textAlign,
23078
+ fillRule: c.fillRule,
23079
+ curX: c.curX,
23080
+ curY: c.curY
23019
23081
  });
23020
23082
  break;
23021
23083
  case k.RESTOREDC: {
23022
- let e = l.i32(), t = Math.min(Math.abs(e) || 1, s.stack.length), n;
23023
- for (let e = 0; e < t; e++) n = s.stack.pop(), s.ctx.restore();
23024
- 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);
23084
+ let e = o.i32(), t = Math.min(Math.abs(e) || 1, c.stack.length), n;
23085
+ for (let e = 0; e < t; e++) n = c.stack.pop(), c.ctx.restore();
23086
+ 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);
23025
23087
  break;
23026
23088
  }
23027
23089
  case k.BEGINPATH:
23028
- s.ctx.beginPath(), s.inPath = !0;
23090
+ c.ctx.beginPath(), c.inPath = !0, c.pathCommandCount = 0, c.pathDiscarded = !1;
23029
23091
  break;
23030
23092
  case k.CLOSEFIGURE:
23031
- s.inPath && s.ctx.closePath();
23093
+ c.inPath && M(c, 1) && c.ctx.closePath();
23032
23094
  break;
23033
23095
  case k.ENDPATH:
23034
- s.inPath = !1;
23096
+ c.inPath = !1;
23097
+ break;
23098
+ case k.FILLPATH:
23099
+ Pt(c, !0, !1);
23100
+ break;
23101
+ case k.STROKEANDFILLPATH:
23102
+ Pt(c, !0, !0);
23103
+ break;
23104
+ case k.STROKEPATH:
23105
+ Pt(c, !1, !0);
23035
23106
  break;
23036
23107
  case k.SELECTCLIPPATH:
23037
- try {
23038
- s.ctx.clip(s.fillRule);
23108
+ if (!c.pathDiscarded) try {
23109
+ c.ctx.clip(c.fillRule);
23039
23110
  } catch {}
23111
+ c.pathCommandCount = 0, c.pathDiscarded = !1;
23040
23112
  break;
23041
23113
  case k.SELECTOBJECT: {
23042
- let e = l.u32();
23043
- if (e & 2147483648) bt(s, e >>> 0);
23114
+ let e = o.u32();
23115
+ if (e & 2147483648) Et(c, e >>> 0);
23044
23116
  else {
23045
- let t = s.objects.get(e);
23046
- t?.kind === "pen" ? s.curPen = t : t?.kind === "brush" ? s.curBrush = t : t?.kind === "font" && (s.curFont = t);
23117
+ let t = c.objects.get(e);
23118
+ t?.kind === "pen" ? c.curPen = t : t?.kind === "brush" ? c.curBrush = t : t?.kind === "font" && (c.curFont = t);
23047
23119
  }
23048
23120
  break;
23049
23121
  }
23050
23122
  case k.DELETEOBJECT: {
23051
- let e = l.u32(), t = s.objects.get(e);
23052
- t && (t === s.curPen && (s.curPen = null), t === s.curBrush && (s.curBrush = null), t === s.curFont && (s.curFont = null), s.objects.delete(e));
23123
+ let e = o.u32(), t = c.objects.get(e);
23124
+ t && (t === c.curPen && (c.curPen = null), t === c.curBrush && (c.curBrush = null), t === c.curFont && (c.curFont = null), c.objects.delete(e));
23053
23125
  break;
23054
23126
  }
23055
23127
  case k.CREATEPEN: {
23056
- let [e, t] = Ot(l);
23057
- s.objects.set(e, t);
23128
+ let [e, t] = Ft(o);
23129
+ c.objects.set(e, t);
23058
23130
  break;
23059
23131
  }
23060
23132
  case k.EXTCREATEPEN: {
23061
- let [e, t] = kt(l);
23062
- s.objects.set(e, t);
23133
+ let [e, t] = It(o);
23134
+ c.objects.set(e, t);
23063
23135
  break;
23064
23136
  }
23065
23137
  case k.CREATEBRUSHINDIRECT: {
23066
- let [e, t] = At(l);
23067
- s.objects.set(e, t);
23138
+ let [e, t] = Lt(o);
23139
+ c.objects.set(e, t);
23068
23140
  break;
23069
23141
  }
23070
23142
  case k.CREATEMONOBRUSH:
23071
23143
  case k.CREATEDIBPATTERNBRUSHPT: {
23072
- let [e, t] = jt(l, o, c);
23073
- s.objects.set(e, t);
23144
+ let [e, t] = Rt(o, s, l);
23145
+ c.objects.set(e, t);
23074
23146
  break;
23075
23147
  }
23076
23148
  case k.EXTCREATEFONTINDIRECTW: {
23077
- let [e, t] = Mt(l, o, c);
23078
- s.objects.set(e, t);
23149
+ let [e, t] = zt(o, s, l);
23150
+ c.objects.set(e, t);
23079
23151
  break;
23080
23152
  }
23081
23153
  case k.POLYLINE16:
23082
- St(s, l, P);
23154
+ Ot(c, o, F);
23083
23155
  break;
23084
23156
  case k.POLYLINE:
23085
- St(s, l, F);
23157
+ Ot(c, o, I);
23086
23158
  break;
23087
23159
  case k.POLYLINETO16:
23088
- Ct(s, l, P);
23160
+ kt(c, o, F);
23089
23161
  break;
23090
23162
  case k.POLYLINETO:
23091
- Ct(s, l, F);
23163
+ kt(c, o, I);
23092
23164
  break;
23093
23165
  case k.POLYGON16:
23094
- wt(s, l, P);
23166
+ At(c, o, F);
23095
23167
  break;
23096
23168
  case k.POLYGON:
23097
- wt(s, l, F);
23169
+ At(c, o, I);
23098
23170
  break;
23099
23171
  case k.POLYBEZIER16:
23100
- Tt(s, l, P, !1);
23172
+ jt(c, o, F, !1);
23101
23173
  break;
23102
23174
  case k.POLYBEZIER:
23103
- Tt(s, l, F, !1);
23175
+ jt(c, o, I, !1);
23104
23176
  break;
23105
23177
  case k.POLYBEZIERTO16:
23106
- Tt(s, l, P, !0);
23178
+ jt(c, o, F, !0);
23107
23179
  break;
23108
23180
  case k.POLYBEZIERTO:
23109
- Tt(s, l, F, !0);
23181
+ jt(c, o, I, !0);
23110
23182
  break;
23111
23183
  case k.POLYPOLYGON16:
23112
- Et(s, l, P, !0);
23184
+ Mt(c, o, F, !0);
23113
23185
  break;
23114
23186
  case k.POLYPOLYGON:
23115
- Et(s, l, F, !0);
23187
+ Mt(c, o, I, !0);
23116
23188
  break;
23117
23189
  case k.POLYPOLYLINE16:
23118
- Et(s, l, P, !1);
23190
+ Mt(c, o, F, !1);
23119
23191
  break;
23120
23192
  case k.POLYPOLYLINE:
23121
- Et(s, l, F, !1);
23193
+ Mt(c, o, I, !1);
23122
23194
  break;
23123
23195
  case k.MOVETOEX:
23124
- s.curX = l.i32(), s.curY = l.i32();
23196
+ if (c.curX = o.i32(), c.curY = o.i32(), c.inPath && M(c, 1)) {
23197
+ let [e, t] = N(c, c.curX, c.curY);
23198
+ c.ctx.moveTo(e, t);
23199
+ }
23125
23200
  break;
23126
23201
  case k.LINETO: {
23127
- let e = l.i32(), t = l.i32();
23128
- if (s.curPen && s.curPen.stroke != null) {
23129
- let [r, i] = M(s, s.curX, s.curY), [a, o] = M(s, e, t);
23130
- 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;
23202
+ let e = o.i32(), t = o.i32();
23203
+ if (c.inPath && M(c, 1)) {
23204
+ let [n, r] = N(c, e, t);
23205
+ c.ctx.lineTo(n, r);
23206
+ } else if (c.curPen && c.curPen.stroke != null) {
23207
+ let [n, r] = N(c, c.curX, c.curY), [i, a] = N(c, e, t);
23208
+ 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;
23131
23209
  }
23132
- s.curX = e, s.curY = t;
23210
+ c.curX = e, c.curY = t;
23133
23211
  break;
23134
23212
  }
23135
23213
  case k.RECTANGLE:
23136
- Dt(s, l.i32(), l.i32(), l.i32(), l.i32());
23214
+ Nt(c, o.i32(), o.i32(), o.i32(), o.i32());
23137
23215
  break;
23138
23216
  case k.ELLIPSE: {
23139
- 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);
23140
- 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);
23217
+ 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);
23218
+ 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);
23141
23219
  break;
23142
23220
  }
23143
23221
  case k.SETPOLYFILLMODE:
23144
- s.fillRule = l.u32() === 1 ? "evenodd" : "nonzero";
23222
+ c.fillRule = o.u32() === 1 ? "evenodd" : "nonzero";
23145
23223
  break;
23146
23224
  case k.SETTEXTCOLOR:
23147
- s.textColor = e(l.u32());
23225
+ c.textColor = e(o.u32());
23148
23226
  break;
23149
23227
  case k.SETTEXTALIGN:
23150
- s.textAlign = l.u32();
23228
+ c.textAlign = o.u32();
23151
23229
  break;
23152
23230
  case k.SETBKMODE:
23153
- s.bkMode = l.u32();
23231
+ c.bkMode = o.u32();
23154
23232
  break;
23155
23233
  case k.EXTTEXTOUTW:
23156
- Nt(s, l, o, c);
23234
+ Bt(c, o, s, l);
23157
23235
  break;
23158
23236
  case k.BITBLT:
23159
- Ft(s, l, o, c);
23237
+ Ht(c, o, s, l);
23160
23238
  break;
23161
23239
  case k.STRETCHDIBITS:
23162
- It(s, l, o, c);
23240
+ Ut(c, o, s, l);
23163
23241
  break;
23164
23242
  default: break;
23165
23243
  }
23166
23244
  } catch {}
23167
- c = a;
23245
+ l = a;
23168
23246
  }
23169
- return s.drew;
23247
+ return c.drew;
23170
23248
  }
23171
- async function Rt(e, t, n) {
23249
+ async function Gt(e, t, n) {
23172
23250
  if (!i(e) || t <= 0 || n <= 0) return null;
23173
23251
  let a = r(t, n);
23174
23252
  if (!a) return null;
23175
23253
  let o = a.getContext("2d");
23176
- return !o || (o.lineJoin = "round", o.lineCap = "round", !Lt(e, o, t, n)) ? null : createImageBitmap(a);
23254
+ return !o || (o.lineJoin = "round", o.lineCap = "round", !Wt(e, o, t, n)) ? null : createImageBitmap(a);
23177
23255
  }
23178
23256
  //#endregion
23179
23257
  //#region packages/core/src/image/image-bitmap-lifecycle.ts
23180
- function zt(e) {
23258
+ function Kt(e) {
23181
23259
  let t = e.close;
23182
23260
  typeof t == "function" && t.call(e);
23183
23261
  }
23184
23262
  //#endregion
23185
23263
  //#region packages/core/src/image/raster-dimensions.ts
23186
- function Bt(e, t) {
23264
+ function qt(e, t) {
23187
23265
  return e[t] << 8 | e[t + 1];
23188
23266
  }
23189
- function Vt(e, t) {
23267
+ function Jt(e, t) {
23190
23268
  return (e[t] << 24 | e[t + 1] << 16 | e[t + 2] << 8 | e[t + 3]) >>> 0;
23191
23269
  }
23192
- function I(e, t) {
23270
+ function Yt(e, t) {
23193
23271
  return e[t] | e[t + 1] << 8;
23194
23272
  }
23195
- function Ht(e, t) {
23273
+ function Xt(e, t) {
23196
23274
  return e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24 | 0;
23197
23275
  }
23198
- function Ut(e) {
23276
+ function Zt(e) {
23199
23277
  let t = e.length;
23200
23278
  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 ? {
23201
- width: Vt(e, 16),
23202
- height: Vt(e, 20)
23279
+ width: Jt(e, 16),
23280
+ height: Jt(e, 20)
23203
23281
  } : null : t >= 10 && e[0] === 71 && e[1] === 73 && e[2] === 70 && e[3] === 56 && (e[4] === 55 || e[4] === 57) && e[5] === 97 ? {
23204
- width: I(e, 6),
23205
- height: I(e, 8)
23206
- } : t >= 26 && e[0] === 66 && e[1] === 77 ? Wt(e, 14) === 12 ? {
23207
- width: I(e, 18),
23208
- height: I(e, 20)
23282
+ width: Yt(e, 6),
23283
+ height: Yt(e, 8)
23284
+ } : t >= 26 && e[0] === 66 && e[1] === 77 ? Qt(e, 14) === 12 ? {
23285
+ width: Yt(e, 18),
23286
+ height: Yt(e, 20)
23209
23287
  } : {
23210
- width: Math.abs(Ht(e, 18)),
23211
- height: Math.abs(Ht(e, 22))
23212
- } : 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 ? Gt(e) : t >= 4 && e[0] === 255 && e[1] === 216 ? Jt(e) : t >= 4 && (e[0] === 73 && e[1] === 73 || e[0] === 77 && e[1] === 77) ? y(e) : null;
23288
+ width: Math.abs(Xt(e, 18)),
23289
+ height: Math.abs(Xt(e, 22))
23290
+ } : 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 ? $t(e) : t >= 4 && e[0] === 255 && e[1] === 216 ? nn(e) : t >= 4 && (e[0] === 73 && e[1] === 73 || e[0] === 77 && e[1] === 77) ? y(e) : null;
23213
23291
  }
23214
- function Wt(e, t) {
23292
+ function Qt(e, t) {
23215
23293
  return (e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24) >>> 0;
23216
23294
  }
23217
- function Gt(e) {
23295
+ function $t(e) {
23218
23296
  let t = e.length, n = e[12], r = e[13], i = e[14], a = e[15];
23219
23297
  if (n === 86 && r === 80 && i === 56 && a === 32) return t < 30 ? null : {
23220
- width: I(e, 26) & 16383,
23221
- height: I(e, 28) & 16383
23298
+ width: Yt(e, 26) & 16383,
23299
+ height: Yt(e, 28) & 16383
23222
23300
  };
23223
23301
  if (n === 86 && r === 80 && i === 56 && a === 76) {
23224
23302
  if (t < 25 || e[20] !== 47) return null;
23225
- let n = Wt(e, 21);
23303
+ let n = Qt(e, 21);
23226
23304
  return {
23227
23305
  width: (n & 16383) + 1,
23228
23306
  height: (n >>> 14 & 16383) + 1
@@ -23233,11 +23311,11 @@ function Gt(e) {
23233
23311
  height: (e[27] | e[28] << 8 | e[29] << 16) + 1
23234
23312
  } : null;
23235
23313
  }
23236
- function Kt(e) {
23314
+ function en(e) {
23237
23315
  return e.length >= 6 && e[0] === 69 && e[1] === 120 && e[2] === 105 && e[3] === 102 && e[4] === 0 && e[5] === 0;
23238
23316
  }
23239
- function qt(e) {
23240
- if (e.length < 14 || !Kt(e)) return null;
23317
+ function tn(e) {
23318
+ if (e.length < 14 || !en(e)) return null;
23241
23319
  let t = e[6] === 73 && e[7] === 73, n = e[6] === 77 && e[7] === 77;
23242
23320
  if (!t && !n) return null;
23243
23321
  let r = new DataView(e.buffer, e.byteOffset, e.byteLength);
@@ -23259,7 +23337,7 @@ function L(e, t) {
23259
23337
  height: e.width
23260
23338
  } : e;
23261
23339
  }
23262
- function Jt(e) {
23340
+ function nn(e) {
23263
23341
  let t = e.length, n = 2, r = null, i = !1, a = null;
23264
23342
  for (; n + 1 < t;) {
23265
23343
  if (e[n] !== 255) {
@@ -23277,10 +23355,10 @@ function Jt(e) {
23277
23355
  }
23278
23356
  if (o === 217 || o === 218) return a ? L(a, r) : null;
23279
23357
  if (n + 3 >= t) return null;
23280
- let s = Bt(e, n + 2);
23358
+ let s = qt(e, n + 2);
23281
23359
  if (o >= 192 && o <= 207 && o !== 196 && o !== 200 && o !== 204) {
23282
23360
  if (s < 7 || n + 8 >= t) return null;
23283
- let r = Bt(e, n + 5), i = Bt(e, n + 7);
23361
+ let r = qt(e, n + 5), i = qt(e, n + 7);
23284
23362
  a ??= {
23285
23363
  width: i,
23286
23364
  height: r
@@ -23291,23 +23369,23 @@ function Jt(e) {
23291
23369
  if (c > t) return a ? L(a, r) : null;
23292
23370
  if (o === 225 && !i) {
23293
23371
  let t = e.subarray(n + 4, c);
23294
- Kt(t) && (i = !0, r = qt(t));
23372
+ en(t) && (i = !0, r = tn(t));
23295
23373
  }
23296
23374
  n = c;
23297
23375
  }
23298
23376
  return a ? L(a, r) : null;
23299
23377
  }
23300
- function Yt(e) {
23378
+ function rn(e) {
23301
23379
  let { width: t, height: n } = e;
23302
23380
  return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 32767 || n > 32767 ? !0 : t * n > u;
23303
23381
  }
23304
- function Xt(e) {
23382
+ function an(e) {
23305
23383
  let { width: t, height: n } = e;
23306
23384
  return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 134217728 || n > 134217728 ? !0 : t * n > p;
23307
23385
  }
23308
23386
  //#endregion
23309
23387
  //#region packages/core/src/image/raster-blob-inspection.ts
23310
- function Zt(e) {
23388
+ function on(e) {
23311
23389
  switch (e.split(";", 1)[0]?.trim().toLowerCase()) {
23312
23390
  case "image/png":
23313
23391
  case "image/jpeg":
@@ -23319,17 +23397,17 @@ function Zt(e) {
23319
23397
  default: return !1;
23320
23398
  }
23321
23399
  }
23322
- function Qt(e, t = !1) {
23400
+ function sn(e, t = !1) {
23323
23401
  return e !== null && e !== "wmf" && e !== "emf" && (e !== "tiff" || t);
23324
23402
  }
23325
- var $t = 64 * 1024;
23326
- function en(e) {
23403
+ var cn = 64 * 1024;
23404
+ function ln(e) {
23327
23405
  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;
23328
23406
  }
23329
- function tn(e) {
23407
+ function un(e) {
23330
23408
  return e >= 192 && e <= 207 && e !== 196 && e !== 200 && e !== 204;
23331
23409
  }
23332
- async function nn(e) {
23410
+ async function dn(e) {
23333
23411
  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;
23334
23412
  try {
23335
23413
  for (;;) {
@@ -23348,7 +23426,7 @@ async function nn(e) {
23348
23426
  continue;
23349
23427
  }
23350
23428
  if (u) {
23351
- if (u[d++] = m, d === u.length && (Kt(u) && (p = !0, f = qt(u)), u = null, d = 0, p && l)) return await t.cancel(), L(l, f);
23429
+ if (u[d++] = m, d === u.length && (en(u) && (p = !0, f = tn(u)), u = null, d = 0, p && l)) return await t.cancel(), L(l, f);
23352
23430
  continue;
23353
23431
  }
23354
23432
  if (a > 0) {
@@ -23362,7 +23440,7 @@ async function nn(e) {
23362
23440
  }
23363
23441
  let e = i << 8 | m;
23364
23442
  if (e < 2) return null;
23365
- if (tn(r)) {
23443
+ if (un(r)) {
23366
23444
  if (e < 7) return null;
23367
23445
  l ? a = e - 2 : (o = new Uint8Array(5), s = 0, c = e - 7);
23368
23446
  } else r === 225 && !p && e > 2 ? (u = new Uint8Array(e - 2), d = 0) : a = e - 2;
@@ -23383,7 +23461,7 @@ async function nn(e) {
23383
23461
  t.releaseLock();
23384
23462
  }
23385
23463
  }
23386
- async function rn(e, t) {
23464
+ async function fn(e, t) {
23387
23465
  if (t.length < 8 || !S(t)) return null;
23388
23466
  let n = t[0] === 73, r = new DataView(t.buffer, t.byteOffset, t.byteLength).getUint32(4, n);
23389
23467
  if (!Number.isSafeInteger(r) || r < 8 || r > e.size - 2) return null;
@@ -23405,22 +23483,22 @@ async function rn(e, t) {
23405
23483
  height: u
23406
23484
  };
23407
23485
  }
23408
- async function an(e, t) {
23409
- let n = t ?? new Uint8Array(await e.slice(0, $t).arrayBuffer()), r = en(n);
23486
+ async function pn(e, t) {
23487
+ let n = t ?? new Uint8Array(await e.slice(0, cn).arrayBuffer()), r = ln(n);
23410
23488
  if (!r) return {
23411
23489
  format: null,
23412
23490
  dimensions: null
23413
23491
  };
23414
- let i = Ut(n);
23492
+ let i = Zt(n);
23415
23493
  return r === "jpeg" ? {
23416
23494
  format: r,
23417
- dimensions: await nn(e) ?? i
23495
+ dimensions: await dn(e) ?? i
23418
23496
  } : i ? {
23419
23497
  format: r,
23420
23498
  dimensions: i
23421
23499
  } : r === "tiff" ? {
23422
23500
  format: r,
23423
- dimensions: await rn(e, n)
23501
+ dimensions: await fn(e, n)
23424
23502
  } : {
23425
23503
  format: r,
23426
23504
  dimensions: null
@@ -23428,13 +23506,13 @@ async function an(e, t) {
23428
23506
  }
23429
23507
  //#endregion
23430
23508
  //#region packages/core/src/image/optional-image-fallback.ts
23431
- var on = class e extends Error {
23509
+ var mn = class e extends Error {
23432
23510
  code = "ooxml-optional-image-codec-unavailable";
23433
23511
  constructor(t) {
23434
23512
  super(`${t.toUpperCase()} image requires an optional codec`), this.codec = t, this.name = "OptionalImageCodecUnavailableError", Object.setPrototypeOf(this, e.prototype);
23435
23513
  }
23436
23514
  };
23437
- function sn(e, t) {
23515
+ function hn(e, t) {
23438
23516
  if (typeof e != "object" || !e) return !1;
23439
23517
  try {
23440
23518
  let n = e;
@@ -23443,8 +23521,8 @@ function sn(e, t) {
23443
23521
  return !1;
23444
23522
  }
23445
23523
  }
23446
- var cn = { tiff: "TIFF image unavailable" };
23447
- function ln(e, t, n) {
23524
+ var gn = { tiff: "TIFF image unavailable" };
23525
+ function _n(e, t, n) {
23448
23526
  if (!(![
23449
23527
  n.x,
23450
23528
  n.y,
@@ -23454,7 +23532,7 @@ function ln(e, t, n) {
23454
23532
  e.save();
23455
23533
  try {
23456
23534
  e.fillStyle = "#888", e.font = "11px sans-serif", e.textAlign = "center", e.textBaseline = "middle";
23457
- let r = cn[t];
23535
+ let r = gn[t];
23458
23536
  e.fillText(r, n.x + n.width / 2, n.y + n.height / 2, n.width);
23459
23537
  } finally {
23460
23538
  e.restore();
@@ -23463,14 +23541,14 @@ function ln(e, t, n) {
23463
23541
  }
23464
23542
  //#endregion
23465
23543
  //#region packages/core/src/image/raster-or-metafile.ts
23466
- function un(e, t) {
23544
+ function vn(e, t) {
23467
23545
  return e.width <= 0 || e.height <= 0 || e.width > 32767 || e.height > 32767 || e.width * e.height > t;
23468
23546
  }
23469
- function dn(e) {
23547
+ function yn(e) {
23470
23548
  let t = e.split(";", 1)[0]?.trim().toLowerCase();
23471
23549
  return t === "image/tiff" || t === "image/x-tiff";
23472
23550
  }
23473
- function fn(e, t, n, r = !1) {
23551
+ function bn(e, t, n, r = !1) {
23474
23552
  let i = {
23475
23553
  retainedDimensions: e,
23476
23554
  resizeOptions: null
@@ -23484,31 +23562,31 @@ function fn(e, t, n, r = !1) {
23484
23562
  }
23485
23563
  } : i;
23486
23564
  }
23487
- function pn(e, t, n) {
23565
+ function xn(e, t, n) {
23488
23566
  let r = Math.max(e.width, e.height);
23489
23567
  if (!Number.isFinite(r) || r > t) return new h("image-dimension", t, Number.isFinite(r) ? r : 2 ** 53 - 1);
23490
23568
  let i = e.width * e.height;
23491
23569
  return new h("image-pixels", n, Number.isSafeInteger(i) && i >= 0 ? i : 2 ** 53 - 1);
23492
23570
  }
23493
- async function mn(e, t = {}) {
23494
- return hn(e, t);
23571
+ async function Sn(e, t = {}) {
23572
+ return Cn(e, t);
23495
23573
  }
23496
- async function hn(e, r = {}, a) {
23574
+ async function Cn(e, r = {}, a) {
23497
23575
  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());
23498
23576
  if (s(x)) {
23499
23577
  let { w: r, h: i } = n(o, l);
23500
- return gn(await t(new Uint8Array(await e.arrayBuffer()), r, i, f), y);
23578
+ return wn(await t(new Uint8Array(await e.arrayBuffer()), r, i, f), y);
23501
23579
  }
23502
23580
  if (i(x)) {
23503
23581
  let { w: t, h: r } = n(o, l);
23504
- return gn(await Rt(new Uint8Array(await e.arrayBuffer()), t, r), y);
23582
+ return wn(await Gt(new Uint8Array(await e.arrayBuffer()), t, r), y);
23505
23583
  }
23506
- let C = (a ?? await an(e, x)).dimensions;
23507
- if (C && Xt(C)) throw pn(C, c, p);
23508
- let te = S(x) || dn(e.type), w = C ? fn(C, g, _, te) : null;
23509
- if (w && un(w.retainedDimensions, y)) throw pn(w.retainedDimensions, m, y);
23584
+ let C = (a ?? await pn(e, x)).dimensions;
23585
+ if (C && an(C)) throw xn(C, c, p);
23586
+ let te = S(x) || yn(e.type), w = C ? bn(C, g, _, te) : null;
23587
+ if (w && vn(w.retainedDimensions, y)) throw xn(w.retainedDimensions, m, y);
23510
23588
  if (te) {
23511
- if (!h) throw new on("tiff");
23589
+ if (!h) throw new mn("tiff");
23512
23590
  let t;
23513
23591
  try {
23514
23592
  t = await h.render(new Uint8Array(await e.arrayBuffer()), {
@@ -23520,38 +23598,38 @@ async function hn(e, r = {}, a) {
23520
23598
  throw d(e) || ee(e) ? e : new b("TIFF codec failed to decode the image", { cause: e });
23521
23599
  }
23522
23600
  if (!t) throw new b("TIFF codec failed to decode the image");
23523
- return gn(t, y);
23601
+ return wn(t, y);
23524
23602
  }
23525
- return gn(w?.resizeOptions ? await createImageBitmap(e, w.resizeOptions) : await createImageBitmap(e), y);
23603
+ return wn(w?.resizeOptions ? await createImageBitmap(e, w.resizeOptions) : await createImageBitmap(e), y);
23526
23604
  }
23527
- function gn(e, t = u) {
23605
+ function wn(e, t = u) {
23528
23606
  if (!e) return null;
23529
23607
  let n = {
23530
23608
  width: Number(e.width),
23531
23609
  height: Number(e.height)
23532
23610
  };
23533
- if (!un(n, t)) return e;
23534
- throw zt(e), pn(n, m, t);
23611
+ if (!vn(n, t)) return e;
23612
+ throw Kt(e), xn(n, m, t);
23535
23613
  }
23536
23614
  //#endregion
23537
23615
  //#region packages/core/src/image/decode-gate.ts
23538
- var _n = /* @__PURE__ */ new WeakMap();
23539
- async function vn(e, t) {
23540
- let n = _n.get(e);
23616
+ var Tn = /* @__PURE__ */ new WeakMap();
23617
+ async function En(e, t) {
23618
+ let n = Tn.get(e);
23541
23619
  n || (n = {
23542
23620
  active: 0,
23543
23621
  waiters: []
23544
- }, _n.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
23622
+ }, Tn.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
23545
23623
  try {
23546
23624
  return await Promise.resolve(), await t();
23547
23625
  } finally {
23548
23626
  let t = n.waiters.shift();
23549
- t ? t() : (n.active--, n.active === 0 && _n.delete(e));
23627
+ t ? t() : (n.active--, n.active === 0 && Tn.delete(e));
23550
23628
  }
23551
23629
  }
23552
23630
  //#endregion
23553
23631
  //#region packages/core/src/image/adaptive-image-budget.ts
23554
- function yn(e = void 0) {
23632
+ function Dn(e = void 0) {
23555
23633
  if (e !== void 0 && (typeof e != "object" || !e || Array.isArray(e))) throw TypeError("imageResources must be an object when provided");
23556
23634
  let t = e?.decodedByteBudget ?? 134217728;
23557
23635
  if (!Number.isSafeInteger(t) || t < 4 || t > 536870912) throw RangeError(`imageResources.decodedByteBudget must be a safe integer from 4 to ${g} bytes`);
@@ -23565,13 +23643,13 @@ function yn(e = void 0) {
23565
23643
  resolution: r
23566
23644
  });
23567
23645
  }
23568
- function bn(e) {
23646
+ function On(e) {
23569
23647
  return Number.isFinite(e) && e > 0 ? Math.max(1, Math.ceil(e)) : 1;
23570
23648
  }
23571
- function xn(e) {
23649
+ function kn(e) {
23572
23650
  return Number.isSafeInteger(e) && (e ?? 0) > 0 ? e : 1;
23573
23651
  }
23574
- function Sn(e, t) {
23652
+ function An(e, t) {
23575
23653
  let n = 0;
23576
23654
  for (let r of e.values()) {
23577
23655
  let e = t(r), i = e.width * e.height * r.surfaces * 4;
@@ -23579,10 +23657,10 @@ function Sn(e, t) {
23579
23657
  }
23580
23658
  return n;
23581
23659
  }
23582
- function Cn(e, t) {
23660
+ function jn(e, t) {
23583
23661
  let n = /* @__PURE__ */ new Map();
23584
23662
  for (let t of e) {
23585
- let e = bn(t.targetWidthPx), r = bn(t.targetHeightPx), i = t.sourceWidthPx !== void 0 && t.sourceHeightPx !== void 0, a = i ? bn(t.sourceWidthPx) : void 0, o = i ? bn(t.sourceHeightPx) : void 0, s = xn(t.retainedSurfaceCount), c = n.get(t.key);
23663
+ let e = On(t.targetWidthPx), r = On(t.targetHeightPx), i = t.sourceWidthPx !== void 0 && t.sourceHeightPx !== void 0, a = i ? On(t.sourceWidthPx) : void 0, o = i ? On(t.sourceHeightPx) : void 0, s = kn(t.retainedSurfaceCount), c = n.get(t.key);
23586
23664
  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, {
23587
23665
  targetWidth: e,
23588
23666
  targetHeight: r,
@@ -23615,10 +23693,10 @@ function Cn(e, t) {
23615
23693
  retainedPixels: s,
23616
23694
  maxRetainedPixels: n ?? s
23617
23695
  });
23618
- }, s = Sn(n, r), c = [...n.values()].every((e) => {
23696
+ }, s = An(n, r), c = [...n.values()].every((e) => {
23619
23697
  let t = r(e);
23620
23698
  return t.width * t.height <= u;
23621
- }), 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 = Sn(n, (e) => a(e, 1));
23699
+ }), 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 = An(n, (e) => a(e, 1));
23622
23700
  if (d) {
23623
23701
  let e = /* @__PURE__ */ new Map();
23624
23702
  for (let [t, i] of n) {
@@ -23663,7 +23741,7 @@ function Cn(e, t) {
23663
23741
  }
23664
23742
  if (t.strategy === "strict" && f > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, f);
23665
23743
  if (t.strategy === "adaptive") {
23666
- let e = Sn(n, (e) => a(e, 0));
23744
+ let e = An(n, (e) => a(e, 0));
23667
23745
  if (e > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, e);
23668
23746
  }
23669
23747
  let p = 1;
@@ -23671,13 +23749,13 @@ function Cn(e, t) {
23671
23749
  let e = 0, r = 1;
23672
23750
  for (let i = 0; i < 40; i++) {
23673
23751
  let i = (e + r) / 2;
23674
- Sn(n, (e) => a(e, i)) <= t.decodedByteBudget ? e = i : r = i;
23752
+ An(n, (e) => a(e, i)) <= t.decodedByteBudget ? e = i : r = i;
23675
23753
  }
23676
23754
  p = e;
23677
23755
  }
23678
23756
  let m = /* @__PURE__ */ new Map();
23679
23757
  for (let [e, t] of n) m.set(e, o(t, p));
23680
- let g = Sn(n, (e) => a(e, p)), _ = p < 1 && n.size > 0 ? Math.min(...[...n.entries()].flatMap(([e, t]) => {
23758
+ let g = An(n, (e) => a(e, p)), _ = p < 1 && n.size > 0 ? Math.min(...[...n.entries()].flatMap(([e, t]) => {
23681
23759
  let n = m.get(e);
23682
23760
  return [n.width / t.targetWidth, n.height / t.targetHeight];
23683
23761
  })) : p;
@@ -23691,48 +23769,48 @@ function Cn(e, t) {
23691
23769
  }
23692
23770
  //#endregion
23693
23771
  //#region packages/core/src/image/bitmap-image-by-path.ts
23694
- function wn(e) {
23772
+ function Mn(e) {
23695
23773
  return typeof e == "object" && !!e || typeof e == "function";
23696
23774
  }
23697
- var Tn = 256, R = /* @__PURE__ */ new WeakMap(), En = /* @__PURE__ */ new WeakMap(), Dn = /* @__PURE__ */ new WeakMap(), On = /* @__PURE__ */ new WeakMap();
23775
+ var Nn = 256, R = /* @__PURE__ */ new WeakMap(), Pn = /* @__PURE__ */ new WeakMap(), Fn = /* @__PURE__ */ new WeakMap(), In = /* @__PURE__ */ new WeakMap();
23698
23776
  function z(e) {
23699
- return Dn.get(e) ?? 0;
23777
+ return Fn.get(e) ?? 0;
23700
23778
  }
23701
- function kn(e, t) {
23702
- return On.get(e)?.get(t) ?? 0;
23779
+ function Ln(e, t) {
23780
+ return In.get(e)?.get(t) ?? 0;
23703
23781
  }
23704
- function An(e, t) {
23782
+ function Rn(e, t) {
23705
23783
  if (z(e) !== t) throw Error("Decoded bitmap cache was dropped during raster inspection");
23706
23784
  }
23707
- function jn(e, t) {
23785
+ function zn(e, t) {
23708
23786
  return {
23709
23787
  owner: e,
23710
23788
  ownerGeneration: z(e),
23711
23789
  namespace: t,
23712
- namespaceGeneration: kn(e, t)
23790
+ namespaceGeneration: Ln(e, t)
23713
23791
  };
23714
23792
  }
23715
- function Mn(e, t) {
23793
+ function Bn(e, t) {
23716
23794
  if (t.owner !== e || z(e) !== t.ownerGeneration) throw Error("Decoded bitmap cache was dropped during a derived image operation");
23717
23795
  }
23718
- function Nn(e, t, n) {
23719
- if (Mn(e, n), n.namespace !== t || kn(e, t) !== n.namespaceGeneration) throw Error("Decoded bitmap cache namespace was dropped during a derived image operation");
23796
+ function Vn(e, t, n) {
23797
+ if (Bn(e, n), n.namespace !== t || Ln(e, t) !== n.namespaceGeneration) throw Error("Decoded bitmap cache namespace was dropped during a derived image operation");
23720
23798
  }
23721
- function Pn(e) {
23722
- let t = En.get(e);
23799
+ function Hn(e) {
23800
+ let t = Pn.get(e);
23723
23801
  if (t) for (let e of t.values()) e.then((e) => {
23724
23802
  e.initialBlob = void 0;
23725
23803
  }).catch(() => {});
23726
23804
  }
23727
- function Fn(e, t, n, r) {
23728
- let i = En.get(e);
23729
- i || (i = /* @__PURE__ */ new Map(), En.set(e, i));
23805
+ function Un(e, t, n, r) {
23806
+ let i = Pn.get(e);
23807
+ i || (i = /* @__PURE__ */ new Map(), Pn.set(e, i));
23730
23808
  let a = i.get(t);
23731
23809
  if (a) return a;
23732
- let o = vn(e, async () => {
23810
+ let o = En(e, async () => {
23733
23811
  let e = await r(t, n);
23734
23812
  return {
23735
- inspection: await an(e),
23813
+ inspection: await pn(e),
23736
23814
  initialBlob: e
23737
23815
  };
23738
23816
  }).catch((e) => {
@@ -23740,10 +23818,10 @@ function Fn(e, t, n, r) {
23740
23818
  });
23741
23819
  return i.set(t, o), o;
23742
23820
  }
23743
- async function In(e, t, n, r = n) {
23744
- return (await Fn(r, e, t, n)).inspection;
23821
+ async function Wn(e, t, n, r = n) {
23822
+ return (await Un(r, e, t, n)).inspection;
23745
23823
  }
23746
- function Ln(e) {
23824
+ function Gn(e) {
23747
23825
  let t = R.get(e);
23748
23826
  return t || (t = {
23749
23827
  entries: /* @__PURE__ */ new Map(),
@@ -23751,9 +23829,9 @@ function Ln(e) {
23751
23829
  retainedLimit: f
23752
23830
  }, R.set(e, t)), t;
23753
23831
  }
23754
- var Rn = /* @__PURE__ */ new WeakMap(), zn = /* @__PURE__ */ new WeakMap();
23755
- async function Bn(e, t, n) {
23756
- let r = zn.get(e);
23832
+ var Kn = /* @__PURE__ */ new WeakMap(), qn = /* @__PURE__ */ new WeakMap();
23833
+ async function Jn(e, t, n) {
23834
+ let r = qn.get(e);
23757
23835
  if (!r) {
23758
23836
  let i;
23759
23837
  r = {
@@ -23761,12 +23839,12 @@ async function Bn(e, t, n) {
23761
23839
  i = e;
23762
23840
  }),
23763
23841
  pending: 1
23764
- }, zn.set(e, r);
23842
+ }, qn.set(e, r);
23765
23843
  let a;
23766
23844
  try {
23767
- return a = Wn(e, t), await n();
23845
+ return a = Qn(e, t), await n();
23768
23846
  } finally {
23769
- Pn(e), a?.(), i(), r.pending--, r.pending === 0 && zn.delete(e);
23847
+ Hn(e), a?.(), i(), r.pending--, r.pending === 0 && qn.delete(e);
23770
23848
  }
23771
23849
  }
23772
23850
  let i = r, a = i.tail.catch(() => {}), o, s = new Promise((e) => {
@@ -23775,22 +23853,22 @@ async function Bn(e, t, n) {
23775
23853
  i.pending++, i.tail = a.then(() => s), await a;
23776
23854
  let c;
23777
23855
  try {
23778
- return c = Wn(e, t), await n();
23856
+ return c = Qn(e, t), await n();
23779
23857
  } finally {
23780
- Pn(e), c?.(), o(), i.pending--, i.pending === 0 && zn.delete(e);
23858
+ Hn(e), c?.(), o(), i.pending--, i.pending === 0 && qn.delete(e);
23781
23859
  }
23782
23860
  }
23783
- var Vn = /* @__PURE__ */ new WeakSet();
23784
- function Hn(e) {
23785
- !e || Vn.has(e) || (Vn.add(e), zt(e));
23861
+ var Yn = /* @__PURE__ */ new WeakSet();
23862
+ function Xn(e) {
23863
+ !e || Yn.has(e) || (Yn.add(e), Kt(e));
23786
23864
  }
23787
- function Un(e) {
23865
+ function Zn(e) {
23788
23866
  try {
23789
- Hn(e);
23867
+ Xn(e);
23790
23868
  } catch {}
23791
23869
  }
23792
- function Wn(e, t) {
23793
- let n = yn(t), r = Rn.get(e);
23870
+ function Qn(e, t) {
23871
+ let n = Dn(t), r = Kn.get(e);
23794
23872
  r || (r = {
23795
23873
  count: 0,
23796
23874
  deferred: [],
@@ -23798,11 +23876,11 @@ function Wn(e, t) {
23798
23876
  activeBitmaps: /* @__PURE__ */ new WeakSet(),
23799
23877
  limits: /* @__PURE__ */ new Map(),
23800
23878
  activeLimit: n.decodedByteBudget
23801
- }, Rn.set(e, r));
23879
+ }, Kn.set(e, r));
23802
23880
  let i = r, a = Symbol("decoded-image-lease");
23803
23881
  i.limits.set(a, n.decodedByteBudget), i.activeLimit = Math.min(...i.limits.values());
23804
- let o = Ln(e);
23805
- for (o.retainedLimit = i.activeLimit; o.retainedBytes > o.retainedLimit && qn(e, o););
23882
+ let o = Gn(e);
23883
+ for (o.retainedLimit = i.activeLimit; o.retainedBytes > o.retainedLimit && tr(e, o););
23806
23884
  i.count++;
23807
23885
  let s = !1;
23808
23886
  return () => {
@@ -23813,43 +23891,43 @@ function Wn(e, t) {
23813
23891
  t && (t.retainedLimit = i.activeLimit);
23814
23892
  return;
23815
23893
  }
23816
- for (let e of i.deferred) e.then((e) => Hn(e)).catch(() => {});
23817
- i.deferred = [], i.activeBytes = 0, i.activeBitmaps = /* @__PURE__ */ new WeakSet(), Rn.delete(e);
23894
+ for (let e of i.deferred) e.then((e) => Xn(e)).catch(() => {});
23895
+ i.deferred = [], i.activeBytes = 0, i.activeBitmaps = /* @__PURE__ */ new WeakSet(), Kn.delete(e);
23818
23896
  let t = R.get(e);
23819
23897
  t && (t.retainedLimit = f);
23820
23898
  };
23821
23899
  }
23822
- function Gn(e) {
23900
+ function $n(e) {
23823
23901
  if (!e) return 0;
23824
23902
  let t = Number(e.width), n = Number(e.height);
23825
23903
  return Number.isSafeInteger(t) && t > 0 && Number.isSafeInteger(n) && n > 0 ? t * n * 4 : 0;
23826
23904
  }
23827
- function Kn(e, t) {
23905
+ function er(e, t) {
23828
23906
  if (!t) return;
23829
- let n = Rn.get(e);
23907
+ let n = Kn.get(e);
23830
23908
  if (!n || n.count === 0 || n.activeBitmaps.has(t)) return;
23831
- let r = n.activeBytes + Gn(t);
23909
+ let r = n.activeBytes + $n(t);
23832
23910
  if (r > n.activeLimit) throw new h("active-decoded-bytes", n.activeLimit, r);
23833
23911
  n.activeBitmaps.add(t), n.activeBytes = r;
23834
23912
  }
23835
- function qn(e, t, n) {
23913
+ function tr(e, t, n) {
23836
23914
  let r = [...t.entries].find(([e]) => e !== n);
23837
23915
  if (!r) return !1;
23838
23916
  let [i, a] = r;
23839
- return t.entries.delete(i), t.retainedBytes -= a.weight, Jn(e, a.ownedPromise), !0;
23917
+ return t.entries.delete(i), t.retainedBytes -= a.weight, nr(e, a.ownedPromise), !0;
23840
23918
  }
23841
- function Jn(e, t) {
23842
- let n = Rn.get(e);
23919
+ function nr(e, t) {
23920
+ let n = Kn.get(e);
23843
23921
  if (n && n.count > 0) {
23844
23922
  n.deferred.push(t);
23845
23923
  return;
23846
23924
  }
23847
- t.then((e) => Hn(e)).catch(() => {});
23925
+ t.then((e) => Xn(e)).catch(() => {});
23848
23926
  }
23849
23927
  function B(e) {
23850
23928
  if (!(typeof e != "number" || !Number.isFinite(e) || !(e > 0))) return Math.ceil(e);
23851
23929
  }
23852
- function Yn(e) {
23930
+ function rr(e) {
23853
23931
  return {
23854
23932
  ...e,
23855
23933
  targetWidthPx: B(e.targetWidthPx),
@@ -23860,10 +23938,10 @@ function V(e) {
23860
23938
  let t = e.maxRetainedPixels;
23861
23939
  return typeof t == "number" && Number.isSafeInteger(t) && t > 0 ? Math.min(t, f / 4) : f / 4;
23862
23940
  }
23863
- function Xn(e) {
23941
+ function ir(e) {
23864
23942
  return V(e) < f / 4;
23865
23943
  }
23866
- function Zn(e, t) {
23944
+ function ar(e, t) {
23867
23945
  if (!e) return null;
23868
23946
  let n = V(t), r = Number(e.width), i = Number(e.height), a = Math.max(r, i);
23869
23947
  if (!Number.isFinite(a) || a > 32767) throw new h("image-dimension", m, Number.isFinite(a) ? a : 2 ** 53 - 1);
@@ -23875,10 +23953,10 @@ function H(e, t = {}) {
23875
23953
  let n = B(t.targetWidthPx), r = B(t.targetHeightPx), i = `${e.length}:${e}`, a = V(t);
23876
23954
  return n || r ? `raster:${i}:${n ?? 0}x${r ?? 0}:p${a}` : `native:${i}`;
23877
23955
  }
23878
- function Qn(e) {
23956
+ function or(e) {
23879
23957
  return e.inspection.format === "wmf" || e.inspection.format === "emf";
23880
23958
  }
23881
- function $n(e) {
23959
+ function sr(e) {
23882
23960
  let t = n(e.widthPt ?? 0, e.heightPt ?? 0);
23883
23961
  return {
23884
23962
  width: t.w,
@@ -23887,15 +23965,15 @@ function $n(e) {
23887
23965
  pixelLimit: V(e)
23888
23966
  };
23889
23967
  }
23890
- function er(e, t) {
23968
+ function cr(e, t) {
23891
23969
  return `metafile:${`${e.length}:${e}`}:s${+!!t.suppressBoundaryFrame}:p${t.pixelLimit}:`;
23892
23970
  }
23893
- function tr(e, t, n) {
23894
- let r = $n(t), i = B(n?.width) ?? r.width, a = B(n?.height) ?? r.height;
23895
- return `${er(e, r)}${i}x${a}`;
23971
+ function lr(e, t, n) {
23972
+ let r = sr(t), i = B(n?.width) ?? r.width, a = B(n?.height) ?? r.height;
23973
+ return `${cr(e, r)}${i}x${a}`;
23896
23974
  }
23897
- function nr(e, t, n) {
23898
- let r = $n(n), i = `${U}${er(t, r)}`, a;
23975
+ function ur(e, t, n) {
23976
+ let r = sr(n), i = `${U}${cr(t, r)}`, a;
23899
23977
  for (let t of R.get(e)?.entries.keys() ?? []) {
23900
23978
  if (!t.startsWith(i)) continue;
23901
23979
  let e = /^(\d+)x(\d+)$/.exec(t.slice(i.length));
@@ -23910,7 +23988,7 @@ function nr(e, t, n) {
23910
23988
  }
23911
23989
  return a?.key;
23912
23990
  }
23913
- function rr(e, t, n, r) {
23991
+ function dr(e, t, n, r) {
23914
23992
  let i = B(n.targetWidthPx), a = B(n.targetHeightPx);
23915
23993
  if (!i && !a) return;
23916
23994
  let o = V(n), s = `${U}raster:${`${t.length}:${t}`}:`, c;
@@ -23928,20 +24006,20 @@ function rr(e, t, n, r) {
23928
24006
  }
23929
24007
  return c?.key;
23930
24008
  }
23931
- function ir(e, t = {}) {
24009
+ function fr(e, t = {}) {
23932
24010
  let n = V(t), r = e.inspection.dimensions;
23933
24011
  if (!r) return !1;
23934
24012
  let i = r.width * r.height;
23935
- if (t.maxRetainedPixels !== void 0 && !Yt(r) && i <= n) return !1;
24013
+ if (t.maxRetainedPixels !== void 0 && !rn(r) && i <= n) return !1;
23936
24014
  let a = B(t.targetWidthPx), o = B(t.targetHeightPx);
23937
- 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)) || Yt(r) || i > n;
23938
- }
23939
- async function ar(e, t, n, r = {}, i, a) {
23940
- i && Mn(n, i);
23941
- let o = Yn(r), s = i?.ownerGeneration ?? z(n), c = await Fn(n, e, t, n);
23942
- i ? Mn(n, i) : An(n, s);
23943
- let l = Qn(c);
23944
- if (a) return l ? tr(e, o, {
24015
+ 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)) || rn(r) || i > n;
24016
+ }
24017
+ async function pr(e, t, n, r = {}, i, a) {
24018
+ i && Bn(n, i);
24019
+ let o = rr(r), s = i?.ownerGeneration ?? z(n), c = await Un(n, e, t, n);
24020
+ i ? Bn(n, i) : Rn(n, s);
24021
+ let l = or(c);
24022
+ if (a) return l ? lr(e, o, {
23945
24023
  width: Number(a.width),
23946
24024
  height: Number(a.height)
23947
24025
  }) : H(e, {
@@ -23949,19 +24027,19 @@ async function ar(e, t, n, r = {}, i, a) {
23949
24027
  targetHeightPx: Number(a.height),
23950
24028
  maxRetainedPixels: o.maxRetainedPixels
23951
24029
  });
23952
- if (l) return nr(n, e, o) ?? tr(e, o);
24030
+ if (l) return ur(n, e, o) ?? lr(e, o);
23953
24031
  if (!o.targetWidthPx && !o.targetHeightPx) return H(e);
23954
24032
  let u = `${U}${H(e)}`;
23955
- return !Xn(o) && R.get(n)?.entries.has(u) ? H(e) : ir(c, o) ? rr(n, e, o, c.inspection.dimensions) ?? H(e, o) : H(e);
24033
+ return !ir(o) && R.get(n)?.entries.has(u) ? H(e) : fr(c, o) ? dr(n, e, o, c.inspection.dimensions) ?? H(e, o) : H(e);
23956
24034
  }
23957
- function or(e, t, n) {
23958
- let r = Ln(t), i = r.entries, a = i.get(e);
23959
- if (a) return i.delete(e), i.set(e, a), a.promise.then((e) => (Kn(t, e), e));
23960
- let o = vn(t, n), s = o.then(({ bitmap: e, owned: t }) => t ? e : null), c = o.then(({ bitmap: e, owned: n }) => {
24035
+ function mr(e, t, n) {
24036
+ let r = Gn(t), i = r.entries, a = i.get(e);
24037
+ if (a) return i.delete(e), i.set(e, a), a.promise.then((e) => (er(t, e), e));
24038
+ let o = En(t, n), s = o.then(({ bitmap: e, owned: t }) => t ? e : null).catch(() => null), c = o.then(({ bitmap: e, owned: n }) => {
23961
24039
  try {
23962
- return Kn(t, e), e;
24040
+ return er(t, e), e;
23963
24041
  } catch (t) {
23964
- throw n && Hn(e), t;
24042
+ throw n && Xn(e), t;
23965
24043
  }
23966
24044
  }), l = {
23967
24045
  promise: c,
@@ -23974,23 +24052,23 @@ function or(e, t, n) {
23974
24052
  i.delete(e);
23975
24053
  return;
23976
24054
  }
23977
- for (l.weight = Gn(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && qn(t, r, e););
24055
+ for (l.weight = $n(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && tr(t, r, e););
23978
24056
  }
23979
24057
  }).catch(() => {}), c.catch(() => {
23980
- i.get(e) === l && (i.delete(e), r.retainedBytes -= l.weight, Jn(t, s));
23981
- }), i.set(e, l); i.size > Tn && qn(t, r, e););
24058
+ i.get(e) === l && (i.delete(e), r.retainedBytes -= l.weight, nr(t, s));
24059
+ }), i.set(e, l); i.size > Nn && tr(t, r, e););
23982
24060
  return c;
23983
24061
  }
23984
- var sr = "base", U = `${sr}:`, cr = "derived:";
23985
- function lr(e, t, n, r) {
23986
- return or(`${e}:${t}`, n, r);
24062
+ var hr = "base", U = `${hr}:`, gr = "derived:";
24063
+ function _r(e, t, n, r) {
24064
+ return mr(`${e}:${t}`, n, r);
23987
24065
  }
23988
- function ur(e, t, n, r, i) {
23989
- return i && Nn(n, e, i), lr(`${cr}${e}`, t, n, r);
24066
+ function vr(e, t, n, r, i) {
24067
+ return i && Vn(n, e, i), _r(`${gr}${e}`, t, n, r);
23990
24068
  }
23991
- function dr(e, t, n, r = {}, i = n) {
23992
- let a = Yn(r), { widthPt: o = 0, heightPt: s = 0, suppressBoundaryFrame: c = !1, tiff: l, targetWidthPx: u, targetHeightPx: d, maxRetainedPixels: f, svgDecoder: p } = a;
23993
- if (t === "image/svg+xml" && p) return lr(sr, H(e, a), i, async () => ({
24069
+ function yr(e, t, n, r = {}, i = n) {
24070
+ let a = rr(r), { widthPt: o = 0, heightPt: s = 0, suppressBoundaryFrame: c = !1, tiff: l, targetWidthPx: u, targetHeightPx: d, maxRetainedPixels: f, svgDecoder: p } = a;
24071
+ if (t === "image/svg+xml" && p) return _r(hr, H(e, a), i, async () => ({
23994
24072
  bitmap: await p(await n(e, t), {
23995
24073
  targetWidthPx: u,
23996
24074
  targetHeightPx: d
@@ -23999,7 +24077,7 @@ function dr(e, t, n, r = {}, i = n) {
23999
24077
  }));
24000
24078
  let m = (r, p, m = !0) => {
24001
24079
  let h = p?.initialBlob;
24002
- return p && (p.initialBlob = void 0), lr(sr, r, i, async () => {
24080
+ return p && (p.initialBlob = void 0), _r(hr, r, i, async () => {
24003
24081
  let r = h ?? await n(e, t), i = {
24004
24082
  widthPt: o,
24005
24083
  heightPt: s,
@@ -24010,41 +24088,41 @@ function dr(e, t, n, r = {}, i = n) {
24010
24088
  maxRetainedPixels: f
24011
24089
  };
24012
24090
  return {
24013
- bitmap: p ? await hn(r, i, p.inspection) : await mn(r, i),
24091
+ bitmap: p ? await Cn(r, i, p.inspection) : await Sn(r, i),
24014
24092
  owned: !0
24015
24093
  };
24016
- }).then((e) => Zn(e, a));
24094
+ }).then((e) => ar(e, a));
24017
24095
  }, h = z(i);
24018
- return Fn(i, e, t, n).then((t) => {
24019
- if (An(i, h), Qn(t)) return m(nr(i, e, a) ?? tr(e, a), t);
24096
+ return Un(i, e, t, n).then((t) => {
24097
+ if (Rn(i, h), or(t)) return m(ur(i, e, a) ?? lr(e, a), t);
24020
24098
  if (!u && !d) return m(H(e), t, !1);
24021
24099
  let n = `${U}${H(e)}`;
24022
- if (!Xn(a) && R.get(i)?.entries.has(n)) return m(H(e), t, !1);
24023
- let r = ir(t, a);
24024
- return m(r ? rr(i, e, a, t.inspection.dimensions) ?? H(e, a) : H(e), t, r);
24100
+ if (!ir(a) && R.get(i)?.entries.has(n)) return m(H(e), t, !1);
24101
+ let r = fr(t, a);
24102
+ return m(r ? dr(i, e, a, t.inspection.dimensions) ?? H(e, a) : H(e), t, r);
24025
24103
  });
24026
24104
  }
24027
- function fr(e, t) {
24105
+ function br(e, t) {
24028
24106
  return R.get(t)?.entries.get(`${U}${H(e)}`)?.bitmap;
24029
24107
  }
24030
- function pr(e) {
24031
- if (!wn(e)) return;
24032
- Dn.set(e, z(e) + 1), On.delete(e), En.delete(e);
24108
+ function xr(e) {
24109
+ if (!Mn(e)) return;
24110
+ Fn.set(e, z(e) + 1), In.delete(e), Pn.delete(e);
24033
24111
  let t = R.get(e);
24034
24112
  if (t) {
24035
- for (let n of t.entries.values()) Jn(e, n.ownedPromise);
24113
+ for (let n of t.entries.values()) nr(e, n.ownedPromise);
24036
24114
  t.entries.clear(), t.retainedBytes = 0, R.delete(e);
24037
24115
  }
24038
24116
  }
24039
24117
  //#endregion
24040
24118
  //#region packages/core/src/image/svg-image-by-path.ts
24041
- var mr = /* @__PURE__ */ new WeakMap(), hr = 256;
24042
- function gr(e) {
24043
- let t = mr.get(e);
24044
- return t || (t = { imgs: /* @__PURE__ */ new Map() }, mr.set(e, t)), t;
24119
+ var Sr = /* @__PURE__ */ new WeakMap(), Cr = 256;
24120
+ function wr(e) {
24121
+ let t = Sr.get(e);
24122
+ return t || (t = { imgs: /* @__PURE__ */ new Map() }, Sr.set(e, t)), t;
24045
24123
  }
24046
- function _r(e, t, n = {}) {
24047
- if (typeof Image > "u") return dr(e, "image/svg+xml", t, {
24124
+ function Tr(e, t, n = {}) {
24125
+ if (typeof Image > "u") return yr(e, "image/svg+xml", t, {
24048
24126
  targetWidthPx: n.targetWidthPx,
24049
24127
  targetHeightPx: n.targetHeightPx,
24050
24128
  maxRetainedPixels: n.maxRetainedPixels,
@@ -24053,10 +24131,10 @@ function _r(e, t, n = {}) {
24053
24131
  if (!t) throw Error(`svg decode failed: ${e}`);
24054
24132
  return t;
24055
24133
  });
24056
- let r = gr(t), i = r.imgs.get(e);
24134
+ let r = wr(t), i = r.imgs.get(e);
24057
24135
  if (i) return r.imgs.delete(e), r.imgs.set(e, i), i.promise;
24058
24136
  let a = {};
24059
- if (a.promise = vn(t, async () => {
24137
+ if (a.promise = En(t, async () => {
24060
24138
  if (r.imgs.get(e) !== a) throw Error("SVG decode was superseded before it started");
24061
24139
  let n = await t(e, "image/svg+xml"), i = URL.createObjectURL(n);
24062
24140
  try {
@@ -24071,44 +24149,44 @@ function _r(e, t, n = {}) {
24071
24149
  }
24072
24150
  }), a.promise.catch(() => {
24073
24151
  r.imgs.get(e) === a && r.imgs.delete(e);
24074
- }), r.imgs.set(e, a), r.imgs.size > hr) {
24152
+ }), r.imgs.set(e, a), r.imgs.size > Cr) {
24075
24153
  let e = r.imgs.keys().next().value;
24076
24154
  r.imgs.delete(e);
24077
24155
  }
24078
24156
  return a.promise;
24079
24157
  }
24080
- function vr(e) {
24081
- let t = mr.get(e);
24082
- t && (t.imgs.clear(), mr.delete(e));
24158
+ function Er(e) {
24159
+ let t = Sr.get(e);
24160
+ t && (t.imgs.clear(), Sr.delete(e));
24083
24161
  }
24084
24162
  //#endregion
24085
24163
  //#region packages/core/src/image/duotone.ts
24086
- function yr(e) {
24164
+ function Dr(e) {
24087
24165
  return /^[0-9a-fA-F]{6}$/.test(e) ? [
24088
24166
  parseInt(e.slice(0, 2), 16),
24089
24167
  parseInt(e.slice(2, 4), 16),
24090
24168
  parseInt(e.slice(4, 6), 16)
24091
24169
  ] : null;
24092
24170
  }
24093
- function br(e, t, n) {
24171
+ function Or(e, t, n) {
24094
24172
  return (.299 * e + .587 * t + .114 * n) / 255;
24095
24173
  }
24096
- function xr(e, t, n) {
24097
- let r = yr(t), i = yr(n);
24174
+ function kr(e, t, n) {
24175
+ let r = Dr(t), i = Dr(n);
24098
24176
  if (!r || !i) return e;
24099
24177
  let [a, o, s] = r, [c, l, u] = i, d = e.data;
24100
24178
  for (let e = 0; e < d.length; e += 4) {
24101
24179
  if (d[e + 3] === 0) continue;
24102
- let t = br(d[e], d[e + 1], d[e + 2]);
24180
+ let t = Or(d[e], d[e + 1], d[e + 2]);
24103
24181
  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);
24104
24182
  }
24105
24183
  return e;
24106
24184
  }
24107
- var Sr = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
24108
- async function Cr(e, t, n) {
24185
+ var Ar = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
24186
+ async function jr(e, t, n) {
24109
24187
  let { width: r, height: i } = n;
24110
24188
  if (r <= 0 || i <= 0 || typeof createImageBitmap > "u") return e;
24111
- let a = (n.offscreenFactory ?? Sr)(r, i);
24189
+ let a = (n.offscreenFactory ?? Ar)(r, i);
24112
24190
  if (!a) return e;
24113
24191
  let o = a.getContext("2d");
24114
24192
  if (!o) return e;
@@ -24119,24 +24197,24 @@ async function Cr(e, t, n) {
24119
24197
  } catch {
24120
24198
  return e;
24121
24199
  }
24122
- xr(s, t.clr1, t.clr2), o.putImageData(s, 0, 0);
24200
+ kr(s, t.clr1, t.clr2), o.putImageData(s, 0, 0);
24123
24201
  let c = C(r, i, n.targetWidthPx, n.targetHeightPx);
24124
24202
  return c ? createImageBitmap(a, c) : createImageBitmap(a);
24125
24203
  }
24126
24204
  //#endregion
24127
24205
  //#region packages/core/src/image/blip-gate.ts
24128
- function wr(e) {
24206
+ function Mr(e) {
24129
24207
  return e.svgImagePath != null && e.srcRect == null;
24130
24208
  }
24131
24209
  //#endregion
24132
24210
  //#region packages/core/src/math/mathml.ts
24133
- var Tr = {
24211
+ var Nr = {
24134
24212
  "&": "&amp;",
24135
24213
  "<": "&lt;",
24136
24214
  ">": "&gt;",
24137
24215
  "\"": "&quot;"
24138
- }, W = (e) => e.replace(/[&<>"]/g, (e) => Tr[e]);
24139
- function Er(e, t = "roman") {
24216
+ }, W = (e) => e.replace(/[&<>"]/g, (e) => Nr[e]);
24217
+ function Pr(e, t = "roman") {
24140
24218
  if (t === "double-struck" || t === "monospace") return t;
24141
24219
  if (t === "fraktur") return e === "bold" || e === "boldItalic" ? "bold-fraktur" : "fraktur";
24142
24220
  if (t === "script") return e === "bold" || e === "boldItalic" ? "bold-script" : "script";
@@ -24153,9 +24231,9 @@ function Er(e, t = "roman") {
24153
24231
  case "italic": return null;
24154
24232
  }
24155
24233
  }
24156
- var Dr = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Or = "+−±∓×÷·∗⋅∘∙*/", kr = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Ar = "([{⟨⌈⌊", jr = ")]}⟩⌉⌋", Mr = ",;";
24157
- function Nr(e, t, n) {
24158
- let r = Er(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
24234
+ var Fr = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Ir = "+−±∓×÷·∗⋅∘∙*/", Lr = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Rr = "([{⟨⌈⌊", zr = ")]}⟩⌉⌋", Br = ",;";
24235
+ function Vr(e, t, n) {
24236
+ let r = Pr(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
24159
24237
  o &&= (a += `<mn${i}>${W(o)}</mn>`, "");
24160
24238
  };
24161
24239
  for (let t of e) {
@@ -24167,56 +24245,56 @@ function Nr(e, t, n) {
24167
24245
  o += t;
24168
24246
  continue;
24169
24247
  }
24170
- s(), Or.includes(t) || kr.includes(t) || Mr.includes(t) ? a += `<mo>${W(t)}</mo>` : Ar.includes(t) || jr.includes(t) ? a += `<mo fence="true" stretchy="false">${W(t)}</mo>` : a += `<mi${i}>${W(t)}</mi>`;
24248
+ s(), Ir.includes(t) || Lr.includes(t) || Br.includes(t) ? a += `<mo>${W(t)}</mo>` : Rr.includes(t) || zr.includes(t) ? a += `<mo fence="true" stretchy="false">${W(t)}</mo>` : a += `<mi${i}>${W(t)}</mi>`;
24171
24249
  }
24172
24250
  return s(), a;
24173
24251
  }
24174
24252
  function G(e) {
24175
- return e.map(Pr).join("");
24253
+ return e.map(Hr).join("");
24176
24254
  }
24177
24255
  function K(e) {
24178
24256
  return `<mrow>${G(e)}</mrow>`;
24179
24257
  }
24180
- function Pr(e) {
24258
+ function Hr(e) {
24181
24259
  switch (e.kind) {
24182
- case "run": return Nr(e.text, e.style, e.__script);
24260
+ case "run": return Vr(e.text, e.style, e.__script);
24183
24261
  case "group": return K(e.items);
24184
24262
  case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${K(e.num)}${K(e.den)}</mfrac>`;
24185
24263
  case "sup": return `<msup>${K(e.base)}${K(e.sup ?? [])}</msup>`;
24186
24264
  case "sub": return `<msub>${K(e.base)}${K(e.sub ?? [])}</msub>`;
24187
24265
  case "subSup": return `<msubsup>${K(e.base)}${K(e.sub ?? [])}${K(e.sup ?? [])}</msubsup>`;
24188
- case "nary": return Ur(e);
24189
- case "delimiter": return Wr(e);
24266
+ case "nary": return Zr(e);
24267
+ case "delimiter": return Qr(e);
24190
24268
  case "radical": return e.index && e.index.length ? `<mroot>${K(e.radicand)}${K(e.index)}</mroot>` : `<msqrt>${G(e.radicand)}</msqrt>`;
24191
- case "limit": return Br(e);
24192
- case "array": return Vr(e);
24269
+ case "limit": return Jr(e);
24270
+ case "array": return Yr(e);
24193
24271
  case "groupChr": {
24194
- let t = K(e.base), n = Dr.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${W(e.char)}</mo>`;
24272
+ let t = K(e.base), n = Fr.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${W(e.char)}</mo>`;
24195
24273
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
24196
24274
  }
24197
24275
  case "bar": {
24198
24276
  let t = K(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
24199
24277
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
24200
24278
  }
24201
- case "accent": return zr(e);
24279
+ case "accent": return qr(e);
24202
24280
  case "func": return `<mrow>${K(e.name)}<mo>&#x2061;</mo>${K(e.arg)}</mrow>`;
24203
- case "phant": return Fr(e);
24281
+ case "phant": return Ur(e);
24204
24282
  case "sPre": return `<mmultiscripts>${K(e.base)}<mprescripts/>${K(e.sub)}${K(e.sup)}</mmultiscripts>`;
24205
24283
  case "box": return K(e.base);
24206
- case "borderBox": return Ir(e);
24284
+ case "borderBox": return Wr(e);
24207
24285
  }
24208
24286
  }
24209
- function Fr(e) {
24287
+ function Ur(e) {
24210
24288
  let t = e.show ? G(e.base) : `<mphantom>${G(e.base)}</mphantom>`, n = [];
24211
24289
  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>`;
24212
24290
  }
24213
- function Ir(e) {
24291
+ function Wr(e) {
24214
24292
  let t = [], n = !e.hideTop, r = !e.hideBot, i = !e.hideLeft, a = !e.hideRight;
24215
24293
  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");
24216
24294
  let o = G(e.base);
24217
24295
  return t.length ? `<menclose notation="${t.join(" ")}">${o}</menclose>` : `<mrow>${o}</mrow>`;
24218
24296
  }
24219
- var Lr = {
24297
+ var Gr = {
24220
24298
  "̀": "`",
24221
24299
  "́": "´",
24222
24300
  "̂": "^",
@@ -24227,7 +24305,7 @@ var Lr = {
24227
24305
  "̌": "ˇ",
24228
24306
  "⃗": "→",
24229
24307
  "⃖": "←"
24230
- }, Rr = new Set([
24308
+ }, Kr = new Set([
24231
24309
  "̅",
24232
24310
  "̄",
24233
24311
  "¯",
@@ -24235,36 +24313,36 @@ var Lr = {
24235
24313
  "̲",
24236
24314
  "̳"
24237
24315
  ]);
24238
- function zr(e) {
24316
+ function qr(e) {
24239
24317
  let t = K(e.base);
24240
- if (Rr.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
24241
- let n = Lr[e.char] ?? e.char;
24318
+ if (Kr.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
24319
+ let n = Gr[e.char] ?? e.char;
24242
24320
  return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${W(n)}</mo></mover>`;
24243
24321
  }
24244
- function Br(e) {
24322
+ function Jr(e) {
24245
24323
  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;
24246
24324
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
24247
24325
  }
24248
- function Vr(e) {
24326
+ function Yr(e) {
24249
24327
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
24250
24328
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
24251
24329
  let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${G(e)}</mtd>`).join("")}</mtr>`).join("");
24252
24330
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
24253
24331
  }
24254
- var Hr = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
24255
- function Ur(e) {
24256
- let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : Hr.has(e.op), n = `<mo largeop="true">${W(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
24332
+ var Xr = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
24333
+ function Zr(e) {
24334
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : Xr.has(e.op), n = `<mo largeop="true">${W(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
24257
24335
  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>`;
24258
24336
  }
24259
- function Wr(e) {
24337
+ function Qr(e) {
24260
24338
  let t = (e) => `<mo fence="true" stretchy="true">${W(e)}</mo>`, n = e.items.map((e) => K(e)).join("<mo separator=\"true\">,</mo>");
24261
24339
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
24262
24340
  }
24263
- function Gr(e, t) {
24341
+ function $r(e, t) {
24264
24342
  return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${G(e)}</math>`;
24265
24343
  }
24266
- var Kr = 64;
24267
- function qr(e, t, n) {
24344
+ var ei = 64;
24345
+ function ti(e, t, n) {
24268
24346
  let r = Math.max(1, Math.round(t * 256)), i = Math.max(1, Math.round(n * 256));
24269
24347
  return e.replace(/<svg([^>]*?)>/, (e, t) => `<svg${t.replace(/\s(?:width|height)="[^"]*"/g, "")} width="${r}" height="${i}">`);
24270
24348
  }
@@ -24275,7 +24353,7 @@ function J(e, t, n = 0) {
24275
24353
  let r = Number.parseFloat(q(e, t) ?? "");
24276
24354
  return Number.isFinite(r) ? r : n;
24277
24355
  }
24278
- function Jr(e) {
24356
+ function ni(e) {
24279
24357
  let t = /* @__PURE__ */ new Map();
24280
24358
  for (let n of [
24281
24359
  "fill",
@@ -24298,8 +24376,8 @@ function Jr(e) {
24298
24376
  }
24299
24377
  return t;
24300
24378
  }
24301
- function Yr(e, t, n) {
24302
- let r = Jr(t), i = { ...n }, a = r.get("fill");
24379
+ function ri(e, t, n) {
24380
+ let r = ni(t), i = { ...n }, a = r.get("fill");
24303
24381
  a === "none" ? i.fill = !1 : a && (i.fill = !0, e.fillStyle = a);
24304
24382
  let o = r.get("stroke");
24305
24383
  o === "none" ? i.stroke = !1 : o && (i.stroke = !0, e.strokeStyle = o);
@@ -24314,7 +24392,7 @@ function Yr(e, t, n) {
24314
24392
  let d = Number.parseFloat(r.get("opacity") ?? "");
24315
24393
  return Number.isFinite(d) && (e.globalAlpha *= Math.max(0, Math.min(1, d))), i;
24316
24394
  }
24317
- function Xr(e, t) {
24395
+ function ii(e, t) {
24318
24396
  if (!t) return;
24319
24397
  let n = /([a-zA-Z]+)\(([^)]*)\)/g;
24320
24398
  for (let r = n.exec(t); r; r = n.exec(t)) {
@@ -24339,10 +24417,10 @@ function Xr(e, t) {
24339
24417
  }
24340
24418
  }
24341
24419
  }
24342
- function Zr(e, t, n) {
24420
+ function ai(e, t, n) {
24343
24421
  n.fill && e.fill(t, n.fillRule), n.stroke && e.lineWidth > 0 && e.stroke(t);
24344
24422
  }
24345
- function Qr(e, t, n, r) {
24423
+ function oi(e, t, n, r) {
24346
24424
  let i = q(t.slice(0, t.indexOf(">") + 1), "viewBox")?.trim().split(/[\s,]+/).map(Number);
24347
24425
  if (!i || i.length !== 4 || i.some((e) => !Number.isFinite(e))) throw TypeError("MathJax SVG must contain a finite viewBox");
24348
24426
  let [a, o, s, c] = i;
@@ -24361,23 +24439,23 @@ function Qr(e, t, n, r) {
24361
24439
  continue;
24362
24440
  }
24363
24441
  if (a === "g") {
24364
- u.push(l), e.save(), l = Yr(e, i, l), Xr(e, q(i, "transform"));
24442
+ u.push(l), e.save(), l = ri(e, i, l), ii(e, q(i, "transform"));
24365
24443
  continue;
24366
24444
  }
24367
24445
  if (a !== "path" && a !== "rect" && a !== "line") continue;
24368
24446
  e.save();
24369
- let s = Yr(e, i, l);
24370
- Xr(e, q(i, "transform"));
24447
+ let s = ri(e, i, l);
24448
+ ii(e, q(i, "transform"));
24371
24449
  let c = a === "path" ? new Path2D(q(i, "d") ?? "") : new Path2D();
24372
- 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"))), Zr(e, c, s), e.restore();
24450
+ 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"))), ai(e, c, s), e.restore();
24373
24451
  }
24374
24452
  e.restore();
24375
24453
  }
24376
- async function $r(e, t) {
24454
+ async function si(e, t) {
24377
24455
  let { width: n, height: i } = _(e.widthEm * 256, (e.ascentEm + e.descentEm) * 256), a = r(n, i), o = a?.getContext("2d");
24378
24456
  if (!a || !o || typeof Path2D > "u") throw Error("Math SVG rasterization requires Canvas 2D and Path2D support");
24379
- Qr(o, qr(te(e.svg, t), e.widthEm, e.ascentEm + e.descentEm), n, i);
24380
- let s = a, c = n, l = i, u = Kr / 256, d = Math.max(1, Math.round(n * u)), f = Math.max(1, Math.round(i * u));
24457
+ oi(o, ti(te(e.svg, t), e.widthEm, e.ascentEm + e.descentEm), n, i);
24458
+ let s = a, c = n, l = i, u = ei / 256, d = Math.max(1, Math.round(n * u)), f = Math.max(1, Math.round(i * u));
24381
24459
  for (; c > d || l > f;) {
24382
24460
  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");
24383
24461
  if (!n || !i) break;
@@ -24389,7 +24467,7 @@ async function $r(e, t) {
24389
24467
  heightPx: l
24390
24468
  };
24391
24469
  }
24392
- function ei(e, t) {
24470
+ function ci(e, t) {
24393
24471
  let n = r(e.widthPx, e.heightPx);
24394
24472
  if (!n) return e.source;
24395
24473
  let i = n.getContext("2d");
@@ -24397,21 +24475,21 @@ function ei(e, t) {
24397
24475
  }
24398
24476
  //#endregion
24399
24477
  //#region packages/core/src/canvas/env.ts
24400
- function ti(e) {
24478
+ function li(e) {
24401
24479
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
24402
24480
  }
24403
- function ni(e = 1) {
24481
+ function ui(e = 1) {
24404
24482
  return typeof window < "u" && window.devicePixelRatio || e;
24405
24483
  }
24406
24484
  //#endregion
24407
24485
  //#region packages/core/src/canvas/crisp.ts
24408
- function ri(e, t, n) {
24486
+ function di(e, t, n) {
24409
24487
  let r = Math.round(t * n) % 2 == 1 ? .5 : 0, i = e * n;
24410
24488
  return (Math.round(i - r) + r) / n - e;
24411
24489
  }
24412
24490
  //#endregion
24413
24491
  //#region packages/core/src/internal/runtime-generation.ts
24414
- var ii = class {
24492
+ var fi = class {
24415
24493
  state = "uninitialized";
24416
24494
  generationValue = 0;
24417
24495
  readiness;
@@ -24465,17 +24543,17 @@ var ii = class {
24465
24543
  assertCurrent(e) {
24466
24544
  if (this.state !== "ready" || e !== this.generationValue) throw Error("WASM archive session belongs to a discarded runtime generation");
24467
24545
  }
24468
- }, ai = class e extends Error {
24546
+ }, pi = class e extends Error {
24469
24547
  code = "parser-crashed";
24470
24548
  constructor(t) {
24471
24549
  super(t), this.name = "WasmTrapError", Object.setPrototypeOf(this, e.prototype);
24472
24550
  }
24473
24551
  };
24474
- function oi(e) {
24552
+ function mi(e) {
24475
24553
  let t = globalThis.WebAssembly?.RuntimeError;
24476
24554
  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;
24477
24555
  }
24478
- function si(e) {
24556
+ function hi(e) {
24479
24557
  try {
24480
24558
  if ((typeof e != "object" || !e) && typeof e != "function") return;
24481
24559
  let t = Reflect.get(e, "__destroy_into_raw");
@@ -24484,27 +24562,27 @@ function si(e) {
24484
24562
  }
24485
24563
  //#endregion
24486
24564
  //#region packages/core/src/worker/pull-credit-error.ts
24487
- var ci = "ooxml-insufficient-credit", li = "OOXML_INSUFFICIENT_CREDIT:";
24488
- function ui(e) {
24565
+ var gi = "ooxml-insufficient-credit", _i = "OOXML_INSUFFICIENT_CREDIT:";
24566
+ function vi(e) {
24489
24567
  return typeof e == "number" && Number.isSafeInteger(e) && e > 0;
24490
24568
  }
24491
- function di(e) {
24569
+ function yi(e) {
24492
24570
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24493
24571
  let t = e;
24494
- return ui(t.requiredBytes) && ui(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
24572
+ return vi(t.requiredBytes) && vi(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
24495
24573
  }
24496
- var fi = class e extends RangeError {
24497
- code = ci;
24574
+ var bi = class e extends RangeError {
24575
+ code = gi;
24498
24576
  requiredBytes;
24499
24577
  offeredBytes;
24500
24578
  constructor(t) {
24501
24579
  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);
24502
24580
  }
24503
24581
  };
24504
- function pi(e) {
24505
- if (e instanceof fi) return e;
24582
+ function xi(e) {
24583
+ if (e instanceof bi) return e;
24506
24584
  let t = e instanceof Error ? e.message : String(e);
24507
- if (!t.startsWith(li)) return;
24585
+ if (!t.startsWith(_i)) return;
24508
24586
  let n;
24509
24587
  try {
24510
24588
  n = JSON.parse(t.slice(26));
@@ -24513,55 +24591,55 @@ function pi(e) {
24513
24591
  }
24514
24592
  if (!n || typeof n != "object" || Array.isArray(n)) return;
24515
24593
  let r = n;
24516
- if (!(r.code !== "ooxml-insufficient-credit" || !di(r))) return new fi(r);
24594
+ if (!(r.code !== "ooxml-insufficient-credit" || !yi(r))) return new bi(r);
24517
24595
  }
24518
- function mi(e, t, n) {
24519
- let r = pi(e);
24596
+ function Si(e, t, n) {
24597
+ let r = xi(e);
24520
24598
  if (!(!r || r.offeredBytes !== t || r.requiredBytes > n)) return r;
24521
24599
  }
24522
- function hi(e, t, n) {
24523
- if (gi(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
24600
+ function Ci(e, t, n) {
24601
+ if (wi(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
24524
24602
  }
24525
- function gi(e) {
24526
- return e instanceof fi || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && di(e);
24603
+ function wi(e) {
24604
+ return e instanceof bi || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && yi(e);
24527
24605
  }
24528
24606
  //#endregion
24529
24607
  //#region packages/core/src/worker/error-wire.ts
24530
- var _i = "OOXML_RESOURCE_LIMIT:", vi = 128, yi = 256, bi = 4096;
24608
+ var Ti = "OOXML_RESOURCE_LIMIT:", Ei = 128, Di = 256, Oi = 4096;
24531
24609
  function Y(e) {
24532
24610
  return typeof e == "number" && Number.isSafeInteger(e) && e >= 0;
24533
24611
  }
24534
- function xi(e) {
24612
+ function ki(e) {
24535
24613
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24536
24614
  let t = e;
24537
24615
  return Y(t.archiveEntryCount) && Y(t.declaredInflatedBytes) && (t.largestInflatedEntryBytes === void 0 || Y(t.largestInflatedEntryBytes)) && Y(t.distinctInflatedBytes) && Y(t.operationInflatedBytes);
24538
24616
  }
24539
- function Si(e) {
24617
+ function Ai(e) {
24540
24618
  let t;
24541
24619
  try {
24542
24620
  t = JSON.parse(new TextDecoder().decode(e));
24543
24621
  } catch {
24544
24622
  throw TypeError("OOXML resource usage checkpoint is not valid JSON");
24545
24623
  }
24546
- if (!xi(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
24624
+ if (!ki(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
24547
24625
  return t;
24548
24626
  }
24549
- function Ci(e) {
24627
+ function ji(e) {
24550
24628
  return e === "docx" || e === "xlsx" || e === "pptx";
24551
24629
  }
24552
- function wi(e) {
24630
+ function Mi(e) {
24553
24631
  return e === "container" || e === "decompression" || e === "parsing" || e === "serialization" || e === "layout" || e === "rendering" || e === "worker";
24554
24632
  }
24555
- function Ti(e, t) {
24633
+ function Ni(e, t) {
24556
24634
  return typeof e == "string" && e.length > 0 && e.length <= t && !/[\u0000-\u001f\u007f]/u.test(e);
24557
24635
  }
24558
- function Ei(e) {
24559
- return Ti(e, vi) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
24636
+ function Pi(e) {
24637
+ return Ni(e, Ei) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
24560
24638
  }
24561
- function Di(e) {
24562
- return !Ti(e, bi) || 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 !== "..");
24639
+ function Fi(e) {
24640
+ return !Ni(e, Oi) || 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 !== "..");
24563
24641
  }
24564
- var Oi = new Map([
24642
+ var Ii = new Map([
24565
24643
  ["archive-entry:declared-inflated-bytes", {
24566
24644
  stage: "container",
24567
24645
  part: "required"
@@ -24608,20 +24686,20 @@ var Oi = new Map([
24608
24686
  part: "optional",
24609
24687
  configurable: !1
24610
24688
  }]
24611
- ]), ki = new Set([...Oi.keys()].map((e) => e.slice(0, e.indexOf(":")))), Ai = new Set([...Oi.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
24612
- function ji(e) {
24689
+ ]), Li = new Set([...Ii.keys()].map((e) => e.slice(0, e.indexOf(":")))), Ri = new Set([...Ii.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
24690
+ function zi(e) {
24613
24691
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24614
24692
  let t = e;
24615
- return !Ci(t.format) || !Ti(t.operation, yi) || !Ei(t.resource) || !Ei(t.metric) || !Y(t.limit) || !Y(t.observed) || typeof t.configurable != "boolean" || !xi(t.usage) ? !1 : !("part" in t) || Di(t.part);
24693
+ return !ji(t.format) || !Ni(t.operation, Di) || !Pi(t.resource) || !Pi(t.metric) || !Y(t.limit) || !Y(t.observed) || typeof t.configurable != "boolean" || !ki(t.usage) ? !1 : !("part" in t) || Fi(t.part);
24616
24694
  }
24617
- function Mi(e) {
24695
+ function Bi(e) {
24618
24696
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
24619
24697
  let t = e;
24620
- if (!wi(t.stage) || !ji(t.violation)) return !1;
24621
- let n = t.violation, r = Oi.get(`${n.resource}:${n.metric}`);
24622
- 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 : !(ki.has(n.resource) && Ai.has(n.metric));
24698
+ if (!Mi(t.stage) || !zi(t.violation)) return !1;
24699
+ let n = t.violation, r = Ii.get(`${n.resource}:${n.metric}`);
24700
+ 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 : !(Li.has(n.resource) && Ri.has(n.metric));
24623
24701
  }
24624
- function Ni(e) {
24702
+ function Vi(e) {
24625
24703
  return {
24626
24704
  archiveEntryCount: e.archiveEntryCount,
24627
24705
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -24630,8 +24708,8 @@ function Ni(e) {
24630
24708
  operationInflatedBytes: e.operationInflatedBytes
24631
24709
  };
24632
24710
  }
24633
- function Pi(e) {
24634
- if (!Mi(e)) return;
24711
+ function Hi(e) {
24712
+ if (!Bi(e)) return;
24635
24713
  let t = e.violation, n = {
24636
24714
  stage: e.stage,
24637
24715
  violation: {
@@ -24643,18 +24721,18 @@ function Pi(e) {
24643
24721
  limit: t.limit,
24644
24722
  observed: t.observed,
24645
24723
  configurable: t.configurable,
24646
- usage: Ni(t.usage)
24724
+ usage: Vi(t.usage)
24647
24725
  }
24648
24726
  };
24649
- return Mi(n) ? n : void 0;
24727
+ return Bi(n) ? n : void 0;
24650
24728
  }
24651
- function Fi(e) {
24729
+ function Ui(e) {
24652
24730
  let t = e.violation;
24653
24731
  return `OOXML resource limit exceeded${t.part ? ` for ${t.part}` : ""}: ${t.metric} ${t.observed} > ${t.limit}`;
24654
24732
  }
24655
- function Ii(e) {
24733
+ function Wi(e) {
24656
24734
  let t = e instanceof Error ? e.message : String(e);
24657
- if (!t.startsWith(_i)) return;
24735
+ if (!t.startsWith(Ti)) return;
24658
24736
  let n;
24659
24737
  try {
24660
24738
  n = JSON.parse(t.slice(21));
@@ -24663,9 +24741,9 @@ function Ii(e) {
24663
24741
  }
24664
24742
  if (!n || typeof n != "object") return;
24665
24743
  let r = n;
24666
- if (!(r.code !== "ooxml-resource-limit" || !Mi(r.details))) return new T(Fi(r.details), r.details);
24744
+ if (!(r.code !== "ooxml-resource-limit" || !Bi(r.details))) return new T(Ui(r.details), r.details);
24667
24745
  }
24668
- function Li(e) {
24746
+ function Gi(e) {
24669
24747
  let t = l(e);
24670
24748
  if (t) {
24671
24749
  let e = new h(t.metric, t.limit, t.observed);
@@ -24682,7 +24760,7 @@ function Li(e) {
24682
24760
  errorName: "TiffDecodeError",
24683
24761
  code: "ooxml-tiff-decode"
24684
24762
  };
24685
- let r = pi(e);
24763
+ let r = xi(e);
24686
24764
  if (r) return {
24687
24765
  message: r.message,
24688
24766
  errorName: r.name,
@@ -24692,11 +24770,11 @@ function Li(e) {
24692
24770
  offeredBytes: r.offeredBytes
24693
24771
  }
24694
24772
  };
24695
- let i = e instanceof w || e instanceof T ? e : Ii(e);
24773
+ let i = e instanceof w || e instanceof T ? e : Wi(e);
24696
24774
  if (i instanceof T) {
24697
- let e = Pi(i.details);
24775
+ let e = Hi(i.details);
24698
24776
  return e ? {
24699
- message: typeof i.message == "string" ? i.message : Fi(e),
24777
+ message: typeof i.message == "string" ? i.message : Ui(e),
24700
24778
  errorName: "OoxmlResourceLimitError",
24701
24779
  code: "ooxml-resource-limit",
24702
24780
  resourceLimit: e
@@ -24707,24 +24785,24 @@ function Li(e) {
24707
24785
  }
24708
24786
  if (i instanceof w) return {
24709
24787
  message: typeof i.message == "string" ? i.message : String(i.message),
24710
- errorName: Ti(i.name, vi) ? i.name : "OoxmlError",
24711
- ...Ei(i.code) ? { code: i.code } : {}
24788
+ errorName: Ni(i.name, Ei) ? i.name : "OoxmlError",
24789
+ ...Pi(i.code) ? { code: i.code } : {}
24712
24790
  };
24713
24791
  let a = e instanceof Error ? e.message : String(e);
24714
- if (typeof a == "string" && a.startsWith(_i)) return {
24792
+ if (typeof a == "string" && a.startsWith(Ti)) return {
24715
24793
  message: "Invalid OOXML resource-limit payload",
24716
24794
  errorName: "Error"
24717
24795
  };
24718
24796
  let o = e instanceof Error ? e : Error(a), s = o;
24719
24797
  return {
24720
24798
  message: typeof o.message == "string" ? o.message : String(o.message),
24721
- errorName: Ti(o.name, vi) ? o.name : "Error",
24799
+ errorName: Ni(o.name, Ei) ? o.name : "Error",
24722
24800
  ...typeof s.code == "string" ? { code: s.code } : {}
24723
24801
  };
24724
24802
  }
24725
- function Ri(e) {
24803
+ function Ki(e) {
24726
24804
  try {
24727
- return Li(e);
24805
+ return Gi(e);
24728
24806
  } catch {
24729
24807
  return {
24730
24808
  message: "Worker operation failed with an unreadable error",
@@ -24732,93 +24810,93 @@ function Ri(e) {
24732
24810
  };
24733
24811
  }
24734
24812
  }
24735
- var zi = new Set([
24813
+ var qi = new Set([
24736
24814
  "encrypted",
24737
24815
  "invalid-password",
24738
24816
  "unsupported-encryption",
24739
24817
  "legacy-binary-format",
24740
24818
  "not-ooxml"
24741
- ]), Bi = {
24819
+ ]), Ji = {
24742
24820
  "image-dimension": !0,
24743
24821
  "image-pixels": !0,
24744
24822
  "active-decoded-bytes": !0
24745
24823
  };
24746
- function Vi(e) {
24747
- return typeof e == "string" && Object.prototype.hasOwnProperty.call(Bi, e);
24824
+ function Yi(e) {
24825
+ return typeof e == "string" && Object.prototype.hasOwnProperty.call(Ji, e);
24748
24826
  }
24749
- function Hi(e, t) {
24827
+ function Xi(e, t) {
24750
24828
  if (e !== "ooxml-decoded-image-limit" || !t || typeof t != "object") return;
24751
24829
  let n = t, r = n.metric, i = n.limit, a = n.observed;
24752
- if (!(!Vi(r) || !Y(i) || !Y(a) || a <= i)) return {
24830
+ if (!(!Yi(r) || !Y(i) || !Y(a) || a <= i)) return {
24753
24831
  metric: r,
24754
24832
  limit: i,
24755
24833
  observed: a
24756
24834
  };
24757
24835
  }
24758
- function Ui(e) {
24759
- 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 = Ti(n, vi) ? n : void 0, l = typeof r == "string" ? r : void 0, u = Hi(l, i);
24836
+ function Zi(e) {
24837
+ 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 = Ni(n, Ei) ? n : void 0, l = typeof r == "string" ? r : void 0, u = Xi(l, i);
24760
24838
  if (u) return new h(u.metric, u.limit, u.observed);
24761
24839
  if (l === "ooxml-tiff-decode") return new b(s);
24762
- if (l === "ooxml-insufficient-credit" && di(a)) return new fi(a);
24763
- if (l === "ooxml-resource-limit" && Mi(o)) return new T(s, o);
24764
- if (l && zi.has(l)) return new w(l, s);
24840
+ if (l === "ooxml-insufficient-credit" && yi(a)) return new bi(a);
24841
+ if (l === "ooxml-resource-limit" && Bi(o)) return new T(s, o);
24842
+ if (l && qi.has(l)) return new w(l, s);
24765
24843
  let d = c === "TypeError" ? TypeError(s) : c === "RangeError" ? RangeError(s) : Error(s);
24766
24844
  return c && (d.name = c), l !== void 0 && Object.assign(d, { code: l }), d;
24767
24845
  }
24768
- function Wi(e) {
24846
+ function Qi(e) {
24769
24847
  try {
24770
- return Ui(e);
24848
+ return Zi(e);
24771
24849
  } catch {
24772
24850
  return /* @__PURE__ */ Error("Worker operation failed with an unreadable error payload");
24773
24851
  }
24774
24852
  }
24775
24853
  //#endregion
24776
24854
  //#region packages/core/src/worker/resource-policy.ts
24777
- var Gi = Object.freeze({
24855
+ var $i = Object.freeze({
24778
24856
  maxArchiveEntryBytes: ne,
24779
24857
  maxTotalInflatedBytes: re,
24780
24858
  maxArchiveEntries: ie
24781
24859
  });
24782
- function Ki(e, t, n) {
24860
+ function ea(e, t, n) {
24783
24861
  if (t === void 0) return n;
24784
24862
  if (t === null) return null;
24785
24863
  if (!Number.isSafeInteger(t) || t <= 0) throw RangeError(`resourceLimits.${e} must be null or a positive safe integer number of bytes`);
24786
24864
  return t;
24787
24865
  }
24788
- function qi(e) {
24789
- if (e === void 0) return Gi.maxArchiveEntries;
24866
+ function ta(e) {
24867
+ if (e === void 0) return $i.maxArchiveEntries;
24790
24868
  if (e === null) return null;
24791
24869
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError("resourceLimits.maxArchiveEntries must be null or a positive safe integer");
24792
24870
  if (e > 2e4) throw RangeError(`resourceLimits.maxArchiveEntries must not exceed the internal hard ceiling of ${ae}`);
24793
24871
  return e;
24794
24872
  }
24795
- function Ji(e) {
24873
+ function na(e) {
24796
24874
  if (!(e === void 0 || !(e > 0))) {
24797
24875
  if (!Number.isSafeInteger(e)) throw RangeError("maxZipEntryBytes must be a positive safe integer number of bytes");
24798
24876
  return e;
24799
24877
  }
24800
24878
  }
24801
- function Yi(e) {
24879
+ function ra(e) {
24802
24880
  let t = e.resourceLimits;
24803
24881
  if (t !== void 0 && (typeof t != "object" || !t || Array.isArray(t))) throw TypeError("resourceLimits must be an object when provided");
24804
- let n = Ji(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
24882
+ let n = na(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
24805
24883
  if (n !== void 0 && r !== void 0 && n !== r) throw RangeError("maxZipEntryBytes conflicts with resourceLimits.maxArchiveEntryBytes");
24806
24884
  return Object.freeze({
24807
- maxArchiveEntryBytes: Ki("maxArchiveEntryBytes", r === void 0 ? n : r, Gi.maxArchiveEntryBytes),
24808
- maxTotalInflatedBytes: Ki("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, Gi.maxTotalInflatedBytes),
24809
- maxArchiveEntries: qi(t?.maxArchiveEntries)
24885
+ maxArchiveEntryBytes: ea("maxArchiveEntryBytes", r === void 0 ? n : r, $i.maxArchiveEntryBytes),
24886
+ maxTotalInflatedBytes: ea("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, $i.maxTotalInflatedBytes),
24887
+ maxArchiveEntries: ta(t?.maxArchiveEntries)
24810
24888
  });
24811
24889
  }
24812
- function Xi(e) {
24890
+ function ia(e) {
24813
24891
  if (e.debug !== void 0 && typeof e.debug != "boolean") throw TypeError("debug must be a boolean when provided");
24814
24892
  if (e.onResourceMetrics !== void 0 && typeof e.onResourceMetrics != "function") throw TypeError("onResourceMetrics must be a function when provided");
24815
24893
  return Object.freeze({
24816
- policy: Yi(e),
24894
+ policy: ra(e),
24817
24895
  debug: e.debug ?? !1,
24818
24896
  ...e.onResourceMetrics ? { onResourceMetrics: e.onResourceMetrics } : {}
24819
24897
  });
24820
24898
  }
24821
- function Zi(e) {
24899
+ function aa(e) {
24822
24900
  return [
24823
24901
  e.maxArchiveEntryBytes === null ? 0n : BigInt(e.maxArchiveEntryBytes),
24824
24902
  e.maxTotalInflatedBytes === null ? 0n : BigInt(e.maxTotalInflatedBytes),
@@ -24827,7 +24905,7 @@ function Zi(e) {
24827
24905
  }
24828
24906
  //#endregion
24829
24907
  //#region packages/core/src/internal/console-tui.ts
24830
- var Qi = [
24908
+ var oa = [
24831
24909
  "font-family: \"SFMono-Regular\", Menlo, Monaco, Consolas, monospace",
24832
24910
  "font-size: 12px",
24833
24911
  "line-height: 1.35",
@@ -24835,29 +24913,29 @@ var Qi = [
24835
24913
  "letter-spacing: 0",
24836
24914
  "white-space: pre"
24837
24915
  ].join(";");
24838
- function $i(e) {
24839
- if (ea()) {
24840
- console.log(`%c${e}`, Qi);
24916
+ function sa(e) {
24917
+ if (ca()) {
24918
+ console.log(`%c${e}`, oa);
24841
24919
  return;
24842
24920
  }
24843
24921
  console.log(e);
24844
24922
  }
24845
- function ea() {
24923
+ function ca() {
24846
24924
  return typeof window < "u" && globalThis.process?.release?.name !== "node";
24847
24925
  }
24848
24926
  //#endregion
24849
24927
  //#region packages/core/src/worker/resource-debug-view.ts
24850
- function ta(e) {
24851
- let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [oa(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
24852
- if (r.push(X(`mode ${e.mode.padEnd(8)} elapsed ${ia(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(X(`source ${ra(e.sourceBytes)}`, 68)), r.push(sa(" admission ", 68)), r.push(ca("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(ca("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(X(`entry count ${e.usage ? aa(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : aa(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(X(`declared inflated ${ra(e.usage.declaredInflatedBytes)}`, 68)) : r.push(X("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
24853
- r.push(sa(" checkpoints ", 68));
24928
+ function la(e) {
24929
+ let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [ma(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
24930
+ if (r.push(X(`mode ${e.mode.padEnd(8)} elapsed ${fa(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(X(`source ${da(e.sourceBytes)}`, 68)), r.push(ha(" admission ", 68)), r.push(ga("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(ga("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(X(`entry count ${e.usage ? pa(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : pa(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(X(`declared inflated ${da(e.usage.declaredInflatedBytes)}`, 68)) : r.push(X("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
24931
+ r.push(ha(" checkpoints ", 68));
24854
24932
  for (let t of e.checkpoints) {
24855
- let e = t.usage ? ra(t.usage.distinctInflatedBytes) : "—";
24856
- r.push(X(`${ia(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
24933
+ let e = t.usage ? da(t.usage.distinctInflatedBytes) : "—";
24934
+ r.push(X(`${fa(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
24857
24935
  }
24858
24936
  }
24859
- if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(sa(" result ", 68)), r.push(X(Object.entries(e.outcome).map(([e, t]) => `${e} ${aa(t)}`).join(" "), 68))), e.error) {
24860
- r.push(sa(" failure ", 68));
24937
+ if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(ha(" result ", 68)), r.push(X(Object.entries(e.outcome).map(([e, t]) => `${e} ${pa(t)}`).join(" "), 68))), e.error) {
24938
+ r.push(ha(" failure ", 68));
24861
24939
  let t = [
24862
24940
  e.error.code,
24863
24941
  e.error.stage,
@@ -24868,10 +24946,10 @@ function ta(e) {
24868
24946
  }
24869
24947
  return r.push(`└${"─".repeat(68)}┘`), r.join("\n");
24870
24948
  }
24871
- function na(e) {
24872
- $i(ta(e));
24949
+ function ua(e) {
24950
+ sa(la(e));
24873
24951
  }
24874
- function ra(e) {
24952
+ function da(e) {
24875
24953
  if (!Number.isFinite(e) || e < 0) return "—";
24876
24954
  let t = [
24877
24955
  "B",
@@ -24884,17 +24962,17 @@ function ra(e) {
24884
24962
  let i = r === 0 || n >= 100 ? 0 : n >= 10 ? 1 : 2;
24885
24963
  return `${n.toFixed(i)} ${t[r]}`;
24886
24964
  }
24887
- function ia(e) {
24965
+ function fa(e) {
24888
24966
  return e < 1e3 ? `${Math.round(e)} ms` : `${(e / 1e3).toFixed(2)} s`;
24889
24967
  }
24890
- function aa(e) {
24968
+ function pa(e) {
24891
24969
  return Number.isSafeInteger(e) ? e.toLocaleString("en-US") : "—";
24892
24970
  }
24893
- function oa(e, t) {
24971
+ function ma(e, t) {
24894
24972
  let n = e.slice(0, t);
24895
24973
  return `┌${n}${"─".repeat(t - n.length)}┐`;
24896
24974
  }
24897
- function sa(e, t) {
24975
+ function ha(e, t) {
24898
24976
  let n = e.slice(0, t);
24899
24977
  return `├${n}${"─".repeat(t - n.length)}┤`;
24900
24978
  }
@@ -24902,20 +24980,20 @@ function X(e, t) {
24902
24980
  let n = e.slice(0, t - 2);
24903
24981
  return `│ ${n}${" ".repeat(t - n.length - 2)} │`;
24904
24982
  }
24905
- function ca(e, t, n, r) {
24906
- 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 ? "—" : ra(t)} / ${n === null ? "public off" : ra(n)}`;
24983
+ function ga(e, t, n, r) {
24984
+ 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 ? "—" : da(t)} / ${n === null ? "public off" : da(n)}`;
24907
24985
  return X(`${e.padEnd(14)} ${o} ${s}`, r);
24908
24986
  }
24909
24987
  //#endregion
24910
24988
  //#region packages/core/src/worker/resource-debug.ts
24911
- var la = 1e3;
24912
- async function ua(e, t) {
24913
- e.observeUsage(await t(la));
24989
+ var _a = 1e3;
24990
+ async function va(e, t) {
24991
+ e.observeUsage(await t(_a));
24914
24992
  let n = e.current();
24915
24993
  if (!n) throw Error("OOXML resource metrics are not ready");
24916
24994
  return n;
24917
24995
  }
24918
- var da = class {
24996
+ var ya = class {
24919
24997
  now;
24920
24998
  startedAt;
24921
24999
  policy;
@@ -24929,7 +25007,7 @@ var da = class {
24929
25007
  terminalOutcome;
24930
25008
  terminalElapsedMs;
24931
25009
  constructor(e) {
24932
- this.options = e, this.now = e.now ?? ma, this.startedAt = this.now(), this.policy = Object.freeze({
25010
+ this.options = e, this.now = e.now ?? Sa, this.startedAt = this.now(), this.policy = Object.freeze({
24933
25011
  maxArchiveEntryBytes: e.policy.maxArchiveEntryBytes,
24934
25012
  maxTotalInflatedBytes: e.policy.maxTotalInflatedBytes,
24935
25013
  maxArchiveEntries: e.policy.maxArchiveEntries
@@ -24943,16 +25021,16 @@ var da = class {
24943
25021
  }
24944
25022
  checkpoint(e, t) {
24945
25023
  if (!this.options.enabled || this.finished) return;
24946
- t && (this.lastUsage = ha(t));
25024
+ t && (this.lastUsage = Ca(t));
24947
25025
  let n = this.lastUsage;
24948
25026
  this.checkpoints.push(Object.freeze({
24949
- name: va(e),
24950
- elapsedMs: _a(this.startedAt, this.now()),
25027
+ name: Ea(e),
25028
+ elapsedMs: Ta(this.startedAt, this.now()),
24951
25029
  ...n ? { usage: n } : {}
24952
25030
  }));
24953
25031
  }
24954
25032
  observeUsage(e) {
24955
- !this.options.enabled || !e || (this.lastUsage = ha(e));
25033
+ !this.options.enabled || !e || (this.lastUsage = Ca(e));
24956
25034
  }
24957
25035
  current() {
24958
25036
  if (!(!this.options.enabled || !this.terminalStatus)) return this.report(this.terminalStatus, this.terminalError, this.terminalOutcome);
@@ -24965,12 +25043,12 @@ var da = class {
24965
25043
  }
24966
25044
  finish(e, t, n) {
24967
25045
  if (!this.options.enabled || this.finished) return;
24968
- this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = _a(this.startedAt, this.now());
25046
+ this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = Ta(this.startedAt, this.now());
24969
25047
  let r = this.report(e, t, n);
24970
- return this.options.onMetrics && fa(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && fa(na, r), r;
25048
+ return this.options.onMetrics && ba(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && ba(ua, r), r;
24971
25049
  }
24972
25050
  report(e, t, n) {
24973
- let r = ga(t) ?? this.lastUsage;
25051
+ let r = wa(t) ?? this.lastUsage;
24974
25052
  return Object.freeze({
24975
25053
  schemaVersion: 1,
24976
25054
  scope: this.options.scope ?? "load",
@@ -24978,28 +25056,28 @@ var da = class {
24978
25056
  mode: this.mode,
24979
25057
  status: e,
24980
25058
  ...this.sourceBytes === void 0 ? {} : { sourceBytes: this.sourceBytes },
24981
- elapsedMs: this.terminalElapsedMs ?? _a(this.startedAt, this.now()),
25059
+ elapsedMs: this.terminalElapsedMs ?? Ta(this.startedAt, this.now()),
24982
25060
  policy: this.policy,
24983
25061
  ...r ? { usage: r } : {},
24984
25062
  checkpoints: Object.freeze([...this.checkpoints]),
24985
- ...n ? { outcome: ya(n) } : {},
24986
- ...e === "error" ? { error: ba(t) } : {}
25063
+ ...n ? { outcome: Da(n) } : {},
25064
+ ...e === "error" ? { error: Oa(t) } : {}
24987
25065
  });
24988
25066
  }
24989
25067
  };
24990
- function fa(e, t) {
25068
+ function ba(e, t) {
24991
25069
  try {
24992
25070
  let n = e(t);
24993
- pa(n) && Promise.resolve(n).catch(() => void 0);
25071
+ xa(n) && Promise.resolve(n).catch(() => void 0);
24994
25072
  } catch {}
24995
25073
  }
24996
- function pa(e) {
25074
+ function xa(e) {
24997
25075
  return (typeof e == "object" && !!e || typeof e == "function") && typeof e.then == "function";
24998
25076
  }
24999
- function ma() {
25077
+ function Sa() {
25000
25078
  return typeof performance > "u" ? Date.now() : performance.now();
25001
25079
  }
25002
- function ha(e) {
25080
+ function Ca(e) {
25003
25081
  return Object.freeze({
25004
25082
  archiveEntryCount: e.archiveEntryCount,
25005
25083
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -25008,23 +25086,23 @@ function ha(e) {
25008
25086
  operationInflatedBytes: e.operationInflatedBytes
25009
25087
  });
25010
25088
  }
25011
- function ga(e) {
25089
+ function wa(e) {
25012
25090
  try {
25013
- return e instanceof T ? ha(e.details.violation.usage) : void 0;
25091
+ return e instanceof T ? Ca(e.details.violation.usage) : void 0;
25014
25092
  } catch {
25015
25093
  return;
25016
25094
  }
25017
25095
  }
25018
- function _a(e, t) {
25096
+ function Ta(e, t) {
25019
25097
  return Math.max(0, Math.round((t - e) * 10) / 10);
25020
25098
  }
25021
- function va(e) {
25099
+ function Ea(e) {
25022
25100
  return e.replace(/[^a-z0-9 -]/giu, "").trim().slice(0, 32) || "checkpoint";
25023
25101
  }
25024
- function ya(e) {
25102
+ function Da(e) {
25025
25103
  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)));
25026
25104
  }
25027
- function ba(e) {
25105
+ function Oa(e) {
25028
25106
  try {
25029
25107
  if (e instanceof T) {
25030
25108
  let t = e.details.violation;
@@ -25036,7 +25114,7 @@ function ba(e) {
25036
25114
  });
25037
25115
  }
25038
25116
  if (e instanceof w || e instanceof h) return Object.freeze({ code: e.code });
25039
- if (e instanceof ai || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
25117
+ if (e instanceof pi || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
25040
25118
  } catch {}
25041
25119
  return Object.freeze({});
25042
25120
  }
@@ -25044,10 +25122,10 @@ var Z = "ooxml-pull-v1";
25044
25122
  function Q(e, t) {
25045
25123
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError(`${t} must be a positive safe integer`);
25046
25124
  }
25047
- function xa(e) {
25125
+ function ka(e) {
25048
25126
  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");
25049
25127
  }
25050
- var Sa = class {
25128
+ var Aa = class {
25051
25129
  bridge;
25052
25130
  options;
25053
25131
  sequence = 0;
@@ -25060,7 +25138,7 @@ var Sa = class {
25060
25138
  orphanedRequestIds = /* @__PURE__ */ new Set();
25061
25139
  transferDisposers = /* @__PURE__ */ new Set();
25062
25140
  constructor(e, t) {
25063
- xa(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;
25141
+ ka(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;
25064
25142
  }
25065
25143
  async pull(e, t) {
25066
25144
  if (this.validateCredit(e), this.ending || this.completed) throw Error("pull session is closed");
@@ -25077,7 +25155,7 @@ var Sa = class {
25077
25155
  sequence: n,
25078
25156
  byteCredit: e
25079
25157
  }), t);
25080
- if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw Wi(r.error);
25158
+ if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw Qi(r.error);
25081
25159
  if (r.kind !== "chunk") throw Error(`expected chunk response, received ${r.kind}`);
25082
25160
  if (this.ending) throw this.disposePayload(r.payload), Error("pull session is closed");
25083
25161
  try {
@@ -25087,7 +25165,7 @@ var Sa = class {
25087
25165
  }
25088
25166
  return this.outstanding = !0, this.makeChunk(r);
25089
25167
  } catch (e) {
25090
- throw !gi(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
25168
+ throw !wi(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
25091
25169
  } finally {
25092
25170
  this.pulling = !1;
25093
25171
  }
@@ -25153,7 +25231,7 @@ var Sa = class {
25153
25231
  this.forgetLifecycleOrphans();
25154
25232
  return;
25155
25233
  }
25156
- throw Wi(r.error);
25234
+ throw Qi(r.error);
25157
25235
  }
25158
25236
  if (r.kind !== "accepted" || r.command !== e) throw Error(`expected ${e} acceptance`);
25159
25237
  (e === "cancel" || e === "close") && this.forgetLifecycleOrphans();
@@ -25217,7 +25295,7 @@ var Sa = class {
25217
25295
  this.options.disposeTransferred?.(e);
25218
25296
  } catch {}
25219
25297
  }
25220
- }, Ca = class {
25298
+ }, ja = class {
25221
25299
  owner;
25222
25300
  queue = Promise.resolve();
25223
25301
  leases = /* @__PURE__ */ new Map();
@@ -25274,7 +25352,7 @@ var Sa = class {
25274
25352
  }
25275
25353
  return this.fatal;
25276
25354
  }
25277
- }, wa = class {
25355
+ }, Ma = class {
25278
25356
  options;
25279
25357
  coordinator;
25280
25358
  coordinatorOwner = Symbol("pull-session-host");
@@ -25292,7 +25370,7 @@ var Sa = class {
25292
25370
  driverCloseComplete = !1;
25293
25371
  completed = !1;
25294
25372
  constructor(e) {
25295
- xa(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());
25373
+ ka(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());
25296
25374
  }
25297
25375
  dispatch(e, t) {
25298
25376
  return this.coordinator.enqueue(async () => {
@@ -25351,7 +25429,7 @@ var Sa = class {
25351
25429
  case "close": return await this.close(), { response: this.accepted(e, "close") };
25352
25430
  }
25353
25431
  } catch (t) {
25354
- let n = Ri(t);
25432
+ let n = Ki(t);
25355
25433
  return n.code === "ooxml-resource-limit" && (n = await this.coordinator.poison(n)), { response: this.errorResponse(e, n) };
25356
25434
  }
25357
25435
  }
@@ -25561,7 +25639,7 @@ var Sa = class {
25561
25639
  return;
25562
25640
  }
25563
25641
  }
25564
- }, Ta = [
25642
+ }, Na = [
25565
25643
  "L",
25566
25644
  "R",
25567
25645
  "AL",
@@ -25585,7 +25663,7 @@ var Sa = class {
25585
25663
  "RLI",
25586
25664
  "FSI",
25587
25665
  "PDI"
25588
- ], Ea = [
25666
+ ], Pa = [
25589
25667
  0,
25590
25668
  9,
25591
25669
  10,
@@ -26853,7 +26931,7 @@ var Sa = class {
26853
26931
  1048574,
26854
26932
  1048576,
26855
26933
  1114110
26856
- ], Da = [
26934
+ ], Fa = [
26857
26935
  9,
26858
26936
  11,
26859
26937
  10,
@@ -28121,7 +28199,7 @@ var Sa = class {
28121
28199
  9,
28122
28200
  0,
28123
28201
  9
28124
- ], Oa = [
28202
+ ], Ia = [
28125
28203
  40,
28126
28204
  41,
28127
28205
  41,
@@ -28978,7 +29056,7 @@ var Sa = class {
28978
29056
  65379,
28979
29057
  65379,
28980
29058
  65378
28981
- ], ka = [
29059
+ ], La = [
28982
29060
  40,
28983
29061
  41,
28984
29062
  0,
@@ -29366,42 +29444,42 @@ var Sa = class {
29366
29444
  ];
29367
29445
  //#endregion
29368
29446
  //#region packages/core/src/text/bidi/char-data.ts
29369
- function Aa(e) {
29370
- let t = 0, n = Ea.length - 1;
29447
+ function Ra(e) {
29448
+ let t = 0, n = Pa.length - 1;
29371
29449
  for (; t < n;) {
29372
29450
  let r = t + n + 1 >> 1;
29373
- Ea[r] <= e ? t = r : n = r - 1;
29451
+ Pa[r] <= e ? t = r : n = r - 1;
29374
29452
  }
29375
- return Da[t];
29453
+ return Fa[t];
29376
29454
  }
29377
- function ja(e) {
29378
- return Ta[Aa(e)];
29455
+ function za(e) {
29456
+ return Na[Ra(e)];
29379
29457
  }
29380
- var Ma = (() => {
29458
+ var Ba = (() => {
29381
29459
  let e = /* @__PURE__ */ new Map();
29382
- for (let t = 0; t < Oa.length; t += 2) e.set(Oa[t], Oa[t + 1]);
29460
+ for (let t = 0; t < Ia.length; t += 2) e.set(Ia[t], Ia[t + 1]);
29383
29461
  return e;
29384
29462
  })();
29385
- function Na(e) {
29386
- return Ma.get(e) ?? null;
29463
+ function Va(e) {
29464
+ return Ba.get(e) ?? null;
29387
29465
  }
29388
- var Pa = (() => {
29466
+ var Ha = (() => {
29389
29467
  let e = /* @__PURE__ */ new Map();
29390
- for (let t = 0; t < ka.length; t += 3) e.set(ka[t], {
29391
- pair: ka[t + 1],
29392
- type: ka[t + 2] === 0 ? "o" : "c"
29468
+ for (let t = 0; t < La.length; t += 3) e.set(La[t], {
29469
+ pair: La[t + 1],
29470
+ type: La[t + 2] === 0 ? "o" : "c"
29393
29471
  });
29394
29472
  return e;
29395
29473
  })();
29396
- function Fa(e) {
29397
- return Pa.get(e) ?? null;
29474
+ function Ua(e) {
29475
+ return Ha.get(e) ?? null;
29398
29476
  }
29399
- var Ia = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", La = (e) => e === "LRI" || e === "RLI" || e === "FSI", Ra = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", za = (e) => e & 1 ? e + 2 : e + 1, Ba = (e) => e & 1 ? e + 1 : e + 2;
29400
- function Va(e, t, n) {
29477
+ var Wa = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", Ga = (e) => e === "LRI" || e === "RLI" || e === "FSI", Ka = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", qa = (e) => e & 1 ? e + 2 : e + 1, Ja = (e) => e & 1 ? e + 1 : e + 2;
29478
+ function Ya(e, t, n) {
29401
29479
  let r = 0;
29402
29480
  for (let i = t; i < n; i++) {
29403
29481
  let t = e[i];
29404
- if (La(t)) r++;
29482
+ if (Ga(t)) r++;
29405
29483
  else if (t === "PDI") r > 0 && r--;
29406
29484
  else if (r === 0) {
29407
29485
  if (t === "L") return 0;
@@ -29410,11 +29488,11 @@ function Va(e, t, n) {
29410
29488
  }
29411
29489
  return 0;
29412
29490
  }
29413
- function Ha(e) {
29491
+ function Xa(e) {
29414
29492
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
29415
29493
  for (let a = 0; a < t; a++) {
29416
29494
  let t = e[a];
29417
- if (La(t)) i.push(a);
29495
+ if (Ga(t)) i.push(a);
29418
29496
  else if (t === "PDI" && i.length) {
29419
29497
  let e = i.pop();
29420
29498
  n[e] = a, r[a] = e;
@@ -29425,7 +29503,7 @@ function Ha(e) {
29425
29503
  initOf: r
29426
29504
  };
29427
29505
  }
29428
- function Ua(e, t, n) {
29506
+ function Za(e, t, n) {
29429
29507
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
29430
29508
  level: t,
29431
29509
  override: "neutral",
@@ -29439,7 +29517,7 @@ function Ua(e, t, n) {
29439
29517
  case "RLO":
29440
29518
  case "LRO": {
29441
29519
  i[d] = u().level;
29442
- let e = r === "RLE" || r === "RLO" ? za(u().level) : Ba(u().level);
29520
+ let e = r === "RLE" || r === "RLO" ? qa(u().level) : Ja(u().level);
29443
29521
  e <= 125 && s === 0 && c === 0 ? o.push({
29444
29522
  level: e,
29445
29523
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -29454,8 +29532,8 @@ function Ua(e, t, n) {
29454
29532
  let t = u().override;
29455
29533
  t !== "neutral" && (a[d] = t);
29456
29534
  let f;
29457
- f = r === "RLI" ? "R" : r === "LRI" ? "L" : Va(e, d + 1, n[d]) === 1 ? "R" : "L";
29458
- let p = f === "R" ? za(u().level) : Ba(u().level);
29535
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : Ya(e, d + 1, n[d]) === 1 ? "R" : "L";
29536
+ let p = f === "R" ? qa(u().level) : Ja(u().level);
29459
29537
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
29460
29538
  level: p,
29461
29539
  override: "neutral",
@@ -29497,10 +29575,10 @@ function Ua(e, t, n) {
29497
29575
  types: a
29498
29576
  };
29499
29577
  }
29500
- function Wa(e) {
29578
+ function Qa(e) {
29501
29579
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
29502
29580
  }
29503
- function Ga(e, t, n, r, i, a) {
29581
+ function $a(e, t, n, r, i, a) {
29504
29582
  let o = e.length, s = [];
29505
29583
  for (let e = 0; e < o; e++) n[e] || s.push(e);
29506
29584
  let c = [];
@@ -29518,7 +29596,7 @@ function Ga(e, t, n, r, i, a) {
29518
29596
  for (;;) {
29519
29597
  for (let e of p) f.push(e);
29520
29598
  let t = p[p.length - 1];
29521
- if (La(e[t]) && i[t] !== o) {
29599
+ if (Ga(e[t]) && i[t] !== o) {
29522
29600
  let e = l.get(i[t]);
29523
29601
  if (e) {
29524
29602
  p = e;
@@ -29533,7 +29611,7 @@ function Ga(e, t, n, r, i, a) {
29533
29611
  break;
29534
29612
  }
29535
29613
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
29536
- if (!(La(e[_]) && i[_] === o)) {
29614
+ if (!(Ga(e[_]) && i[_] === o)) {
29537
29615
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
29538
29616
  v = t[e];
29539
29617
  break;
@@ -29549,8 +29627,8 @@ function Ga(e, t, n, r, i, a) {
29549
29627
  }
29550
29628
  return d;
29551
29629
  }
29552
- var Ka = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29553
- function qa(e, t, n, r, i) {
29630
+ var eo = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29631
+ function to(e, t, n, r, i) {
29554
29632
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
29555
29633
  for (let e = 0; e < o; e++) {
29556
29634
  let t = a[e];
@@ -29597,15 +29675,15 @@ function qa(e, t, n, r, i) {
29597
29675
  outer: for (let n = 0; n < o; n++) {
29598
29676
  let i = a[n];
29599
29677
  if (r[i] !== "ON") continue;
29600
- let o = Fa(t[i]);
29678
+ let o = Ua(t[i]);
29601
29679
  if (o) if (o.type === "o") {
29602
29680
  if (e.length === 63) break outer;
29603
29681
  e.push({
29604
- expect: Wa(o.pair),
29682
+ expect: Qa(o.pair),
29605
29683
  pos: n
29606
29684
  });
29607
29685
  } else {
29608
- let r = Wa(t[i]);
29686
+ let r = Qa(t[i]);
29609
29687
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
29610
29688
  f.push({
29611
29689
  open: e[t].pos,
@@ -29623,7 +29701,7 @@ function qa(e, t, n, r, i) {
29623
29701
  for (let { open: e, close: t } of f) {
29624
29702
  let n = !1, i = !1;
29625
29703
  for (let o = e + 1; o < t; o++) {
29626
- let e = Ka(r[a[o]]);
29704
+ let e = eo(r[a[o]]);
29627
29705
  e === u ? n = !0 : e === d && (i = !0);
29628
29706
  }
29629
29707
  let o = null;
@@ -29631,7 +29709,7 @@ function qa(e, t, n, r, i) {
29631
29709
  else if (i) {
29632
29710
  let t = s;
29633
29711
  for (let n = e - 1; n >= 0; n--) {
29634
- let e = Ka(r[a[n]]);
29712
+ let e = eo(r[a[n]]);
29635
29713
  if (e) {
29636
29714
  t = e;
29637
29715
  break;
@@ -29642,29 +29720,29 @@ function qa(e, t, n, r, i) {
29642
29720
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
29643
29721
  }
29644
29722
  for (let e = 0; e < o; e++) {
29645
- if (!Ra(r[a[e]])) continue;
29723
+ if (!Ka(r[a[e]])) continue;
29646
29724
  let t = e;
29647
- for (; t < o && Ra(r[a[t]]);) t++;
29648
- let n = e > 0 ? Ka(r[a[e - 1]]) : s, i = t < o ? Ka(r[a[t]]) : c;
29725
+ for (; t < o && Ka(r[a[t]]);) t++;
29726
+ let n = e > 0 ? eo(r[a[e - 1]]) : s, i = t < o ? eo(r[a[t]]) : c;
29649
29727
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
29650
29728
  e = t - 1;
29651
29729
  }
29652
- for (let e = 0; e < o; e++) Ra(r[a[e]]) && (r[a[e]] = u);
29730
+ for (let e = 0; e < o; e++) Ka(r[a[e]]) && (r[a[e]] = u);
29653
29731
  for (let e = 0; e < o; e++) {
29654
29732
  let t = a[e], n = r[t];
29655
29733
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
29656
29734
  }
29657
29735
  }
29658
- function Ja(e, t, n) {
29736
+ function no(e, t, n) {
29659
29737
  let r = e.length, i = Array(r);
29660
- for (let t = 0; t < r; t++) i[t] = n?.[t] ?? ja(e[t]);
29661
- let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Va(i, 0, r), { pdiOf: o, initOf: s } = Ha(i), { levels: c, types: l } = Ua(i, a, o), u = Array(r);
29662
- for (let e = 0; e < r; e++) u[e] = Ia(i[e]);
29663
- let d = Ga(i, c, u, a, o, s), f = l.slice();
29664
- for (let t of d) qa(t, e, i, f, c);
29738
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? za(e[t]);
29739
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Ya(i, 0, r), { pdiOf: o, initOf: s } = Xa(i), { levels: c, types: l } = Za(i, a, o), u = Array(r);
29740
+ for (let e = 0; e < r; e++) u[e] = Wa(i[e]);
29741
+ let d = $a(i, c, u, a, o, s), f = l.slice();
29742
+ for (let t of d) to(t, e, i, f, c);
29665
29743
  let p = (e) => {
29666
29744
  let t = i[e];
29667
- return t === "WS" || La(t) || t === "PDI" || u[e];
29745
+ return t === "WS" || Ga(t) || t === "PDI" || u[e];
29668
29746
  };
29669
29747
  for (let e = 0; e < r; e++) {
29670
29748
  let t = i[e];
@@ -29680,7 +29758,7 @@ function Ja(e, t, n) {
29680
29758
  paragraphLevel: a
29681
29759
  };
29682
29760
  }
29683
- function Ya(e, t, n) {
29761
+ function ro(e, t, n) {
29684
29762
  let r = [];
29685
29763
  for (let i = t; i < n; i++) {
29686
29764
  let t = e[i];
@@ -29708,7 +29786,7 @@ function Ya(e, t, n) {
29708
29786
  }
29709
29787
  //#endregion
29710
29788
  //#region packages/core/src/text/bidi/uax9/index.ts
29711
- function Xa(e) {
29789
+ function io(e) {
29712
29790
  let t = [], n = [], r = [];
29713
29791
  for (let i = 0; i < e.length;) {
29714
29792
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -29720,9 +29798,9 @@ function Xa(e) {
29720
29798
  starts: r
29721
29799
  };
29722
29800
  }
29723
- var Za = class {
29801
+ var ao = class {
29724
29802
  computeLevels(e, t, n) {
29725
- let { cps: r, units: i, starts: a } = Xa(e), { levels: o, paragraphLevel: s } = Ja(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29803
+ let { cps: r, units: i, starts: a } = io(e), { levels: o, paragraphLevel: s } = no(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29726
29804
  for (let e = 0; e < o.length; e++) {
29727
29805
  let t = o[e] === -1 ? 255 : o[e];
29728
29806
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -29733,63 +29811,63 @@ var Za = class {
29733
29811
  };
29734
29812
  }
29735
29813
  reorderVisual(e, t, n) {
29736
- return Ya(e, t, n);
29814
+ return ro(e, t, n);
29737
29815
  }
29738
29816
  getMirror(e) {
29739
- return Na(e);
29817
+ return Va(e);
29740
29818
  }
29741
29819
  };
29742
- function Qa() {
29743
- return new Za();
29820
+ function oo() {
29821
+ return new ao();
29744
29822
  }
29745
29823
  //#endregion
29746
29824
  //#region packages/core/src/text/bidi/engine.ts
29747
- var $a = null;
29748
- function eo() {
29749
- return $a === null && ($a = Qa()), $a;
29825
+ var so = null;
29826
+ function co() {
29827
+ return so === null && (so = oo()), so;
29750
29828
  }
29751
29829
  //#endregion
29752
29830
  //#region packages/core/src/text/bidi/line-order.ts
29753
- var to = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
29754
- function no(e) {
29755
- return to.test(e);
29831
+ var lo = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
29832
+ function uo(e) {
29833
+ return lo.test(e);
29756
29834
  }
29757
- function ro(e, t, n) {
29835
+ function fo(e, t, n) {
29758
29836
  let r = n.length, i = new Uint8Array(r);
29759
29837
  for (let a = 0; a < r; a++) {
29760
29838
  let r = e[n[a]];
29761
29839
  i[a] = r === 255 ? t : r;
29762
29840
  }
29763
29841
  return {
29764
- order: eo().reorderVisual(i, 0, r),
29842
+ order: co().reorderVisual(i, 0, r),
29765
29843
  segLevels: i
29766
29844
  };
29767
29845
  }
29768
29846
  //#endregion
29769
29847
  //#region packages/core/src/text/kinsoku/rules.ts
29770
- var io = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", ao = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
29771
- function oo(e) {
29848
+ var po = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", mo = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
29849
+ function ho(e) {
29772
29850
  let t = /* @__PURE__ */ new Set();
29773
29851
  for (let n of e) t.add(n.codePointAt(0));
29774
29852
  return t;
29775
29853
  }
29776
- function so(e) {
29854
+ function go(e) {
29777
29855
  return {
29778
29856
  enabled: e?.kinsoku !== !1,
29779
- lineStartForbidden: oo(e?.noLineBreaksBefore ?? io),
29780
- lineEndForbidden: oo(e?.noLineBreaksAfter ?? ao)
29857
+ lineStartForbidden: ho(e?.noLineBreaksBefore ?? po),
29858
+ lineEndForbidden: ho(e?.noLineBreaksAfter ?? mo)
29781
29859
  };
29782
29860
  }
29783
- var co = so();
29861
+ var _o = go();
29784
29862
  //#endregion
29785
29863
  //#region packages/core/src/text/kinsoku/split.ts
29786
- function lo(e, t, n, r = 1) {
29864
+ function vo(e, t, n, r = 1) {
29787
29865
  if (!n.enabled || t <= 0 || t >= e.length) return t;
29788
29866
  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;
29789
29867
  for (; o > r && (i(o) || a(o - 1));) o--;
29790
29868
  return o <= r && (i(o) || a(o - 1)) ? t : o;
29791
29869
  }
29792
- function uo(e, t, n) {
29870
+ function yo(e, t, n) {
29793
29871
  if (!t.enabled) return 0;
29794
29872
  let r = e.length - n;
29795
29873
  for (let n = 1; n <= r; n++) {
@@ -29802,15 +29880,15 @@ function uo(e, t, n) {
29802
29880
  }
29803
29881
  //#endregion
29804
29882
  //#region packages/core/src/text/cjk-ranges.ts
29805
- function fo(e) {
29883
+ function bo(e) {
29806
29884
  return e >= 12288 && e <= 40959 || e >= 44032 && e <= 55203 || e >= 63744 && e <= 64255 || e >= 65280 && e <= 65519;
29807
29885
  }
29808
- function po(e) {
29809
- return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !fo(e);
29886
+ function xo(e) {
29887
+ return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !bo(e);
29810
29888
  }
29811
29889
  //#endregion
29812
29890
  //#region packages/core/src/text/line-break-class.generated.ts
29813
- var mo = /* @__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("."), ho = [
29891
+ var So = /* @__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("."), Co = [
29814
29892
  0,
29815
29893
  9,
29816
29894
  10,
@@ -32433,7 +32511,7 @@ var mo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
32433
32511
  917632,
32434
32512
  917760,
32435
32513
  918e3
32436
- ], go = [
32514
+ ], wo = [
32437
32515
  1,
32438
32516
  15,
32439
32517
  4,
@@ -35056,7 +35134,7 @@ var mo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35056
35134
  11,
35057
35135
  1,
35058
35136
  11
35059
- ], _o = [
35137
+ ], To = [
35060
35138
  4352,
35061
35139
  8361,
35062
35140
  8986,
@@ -35186,7 +35264,7 @@ var mo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35186
35264
  129775,
35187
35265
  131072,
35188
35266
  196608
35189
- ], vo = [
35267
+ ], Eo = [
35190
35268
  4448,
35191
35269
  8362,
35192
35270
  8988,
@@ -35319,68 +35397,68 @@ var mo = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
35319
35397
  ];
35320
35398
  //#endregion
35321
35399
  //#region packages/core/src/text/line-break.ts
35322
- function yo(e) {
35323
- let t = 0, n = ho.length - 1;
35400
+ function Do(e) {
35401
+ let t = 0, n = Co.length - 1;
35324
35402
  for (; t < n;) {
35325
35403
  let r = t + n + 1 >> 1;
35326
- ho[r] <= e ? t = r : n = r - 1;
35404
+ Co[r] <= e ? t = r : n = r - 1;
35327
35405
  }
35328
- return mo[go[t]];
35406
+ return So[wo[t]];
35329
35407
  }
35330
- function bo(e) {
35331
- let t = 0, n = _o.length - 1;
35332
- if (n < 0 || e < _o[0]) return !1;
35408
+ function Oo(e) {
35409
+ let t = 0, n = To.length - 1;
35410
+ if (n < 0 || e < To[0]) return !1;
35333
35411
  for (; t < n;) {
35334
35412
  let r = t + n + 1 >> 1;
35335
- _o[r] <= e ? t = r : n = r - 1;
35413
+ To[r] <= e ? t = r : n = r - 1;
35336
35414
  }
35337
- return e < vo[t];
35415
+ return e < Eo[t];
35338
35416
  }
35339
- function xo(e, t) {
35340
- let n = yo(e);
35417
+ function ko(e, t) {
35418
+ let n = Do(e);
35341
35419
  if (n === "OP") return !0;
35342
- let r = yo(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
35343
- 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" && !bo(t) || n === "CP" && !bo(e) && (a || r === "NU"));
35420
+ let r = Do(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
35421
+ 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" && !Oo(t) || n === "CP" && !Oo(e) && (a || r === "NU"));
35344
35422
  }
35345
35423
  //#endregion
35346
35424
  //#region packages/core/src/text/sea-break.ts
35347
- function So(e) {
35425
+ function Ao(e) {
35348
35426
  return e === "my" || e === "bo";
35349
35427
  }
35350
35428
  function $(e) {
35351
35429
  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;
35352
35430
  }
35353
- function Co(e) {
35431
+ function jo(e) {
35354
35432
  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;
35355
35433
  }
35356
- function wo(e) {
35434
+ function Mo(e) {
35357
35435
  return e <= 3711 ? "th" : e <= 3839 ? "lo" : e <= 4095 ? "bo" : e <= 4255 ? "my" : e <= 6143 ? "km" : "my";
35358
35436
  }
35359
- function To(e) {
35437
+ function No(e) {
35360
35438
  for (let t of e) if ($(t.codePointAt(0))) return !0;
35361
35439
  return !1;
35362
35440
  }
35363
- function Eo(e) {
35441
+ function Po(e) {
35364
35442
  for (let t of e) {
35365
35443
  let e = t.codePointAt(0);
35366
- if ($(e)) return So(wo(e));
35444
+ if ($(e)) return Ao(Mo(e));
35367
35445
  }
35368
35446
  return !1;
35369
35447
  }
35370
- function Do(e) {
35448
+ function Fo(e) {
35371
35449
  let t = !1;
35372
35450
  for (let n of e) {
35373
35451
  let e = n.codePointAt(0);
35374
35452
  if ($(e)) {
35375
- if (So(wo(e))) return !1;
35453
+ if (Ao(Mo(e))) return !1;
35376
35454
  t = !0;
35377
35455
  }
35378
35456
  }
35379
35457
  return t;
35380
35458
  }
35381
- var Oo, ko = /* @__PURE__ */ new Map();
35382
- function Ao(e) {
35383
- let t = ko.get(e);
35459
+ var Io, Lo = /* @__PURE__ */ new Map();
35460
+ function Ro(e) {
35461
+ let t = Lo.get(e);
35384
35462
  if (t !== void 0) return t;
35385
35463
  let n = null;
35386
35464
  try {
@@ -35388,19 +35466,19 @@ function Ao(e) {
35388
35466
  } catch {
35389
35467
  n = null;
35390
35468
  }
35391
- return ko.set(e, n), n;
35469
+ return Lo.set(e, n), n;
35392
35470
  }
35393
- function jo(e) {
35394
- if (Oo === null) return null;
35395
- if (typeof Oo == "function") {
35396
- let t = Oo;
35471
+ function zo(e) {
35472
+ if (Io === null) return null;
35473
+ if (typeof Io == "function") {
35474
+ let t = Io;
35397
35475
  return (n) => t(n, e);
35398
35476
  }
35399
- let t = Ao(e);
35477
+ let t = Ro(e);
35400
35478
  return t ? (e) => t.segment(e) : null;
35401
35479
  }
35402
- function Mo(e) {
35403
- if (!To(e)) return [];
35480
+ function Bo(e) {
35481
+ if (!No(e)) return [];
35404
35482
  let t = [], n = e.length, r = 0;
35405
35483
  for (; r < n;) {
35406
35484
  let i = e.codePointAt(r), a = i > 65535 ? 2 : 1;
@@ -35408,16 +35486,16 @@ function Mo(e) {
35408
35486
  r += a;
35409
35487
  continue;
35410
35488
  }
35411
- let o = wo(i), s = So(o), c = r + a;
35489
+ let o = Mo(i), s = Ao(o), c = r + a;
35412
35490
  for (; c < n;) {
35413
35491
  let t = e.codePointAt(c);
35414
- if (!$(t) || So(wo(t)) !== s) break;
35492
+ if (!$(t) || Ao(Mo(t)) !== s) break;
35415
35493
  c += t > 65535 ? 2 : 1;
35416
35494
  }
35417
35495
  let l = e.slice(r, c);
35418
- if (s) for (let e of Bo(l)) t.push(r + e);
35496
+ if (s) for (let e of Jo(l)) t.push(r + e);
35419
35497
  else {
35420
- let e = jo(o);
35498
+ let e = zo(o);
35421
35499
  if (e) {
35422
35500
  let n = [];
35423
35501
  try {
@@ -35430,42 +35508,42 @@ function Mo(e) {
35430
35508
  }
35431
35509
  return t;
35432
35510
  }
35433
- function No(e) {
35434
- if (!To(e)) return [];
35511
+ function Vo(e) {
35512
+ if (!No(e)) return [];
35435
35513
  let t = [], n = e.length, r = e.codePointAt(0), i = r > 65535 ? 2 : 1;
35436
35514
  for (; i < n;) {
35437
35515
  let n = e.codePointAt(i), a = n > 65535 ? 2 : 1;
35438
- $(r) !== $(n) && !Po(r) && !Po(n) && t.push(i), r = n, i += a;
35516
+ $(r) !== $(n) && !Ho(r) && !Ho(n) && t.push(i), r = n, i += a;
35439
35517
  }
35440
35518
  return t;
35441
35519
  }
35442
- function Po(e) {
35520
+ function Ho(e) {
35443
35521
  return e === 32 || e === 9 || e === 10 || e === 13 || e === 12288 || e === 160 || e === 8199 || e === 8239 || e === 8288 || e === 65279;
35444
35522
  }
35445
- function Fo(e, t) {
35446
- if (!To(e)) return [];
35447
- let n = e.length, r = new Set(Mo(e)), i = new Set(Bo(e)), a = (e) => {
35523
+ function Uo(e, t) {
35524
+ if (!No(e)) return [];
35525
+ let n = e.length, r = new Set(Bo(e)), i = new Set(Jo(e)), a = (e) => {
35448
35526
  i.has(e) && r.add(e);
35449
35527
  };
35450
- for (let t of No(e)) a(t);
35528
+ for (let t of Vo(e)) a(t);
35451
35529
  if (t?.cjk) {
35452
35530
  let t = e.codePointAt(0), r = t > 65535 ? 2 : 1;
35453
35531
  for (; r < n;) {
35454
35532
  let n = e.codePointAt(r);
35455
- (fo(n) || fo(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
35533
+ (bo(n) || bo(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
35456
35534
  }
35457
35535
  }
35458
35536
  let o = t?.kinsoku, s = o != null && o.enabled !== !1, c = [];
35459
35537
  for (let t of r) if (!(t <= 0 || t >= n)) {
35460
35538
  if (s) {
35461
- let n = e.codePointAt(t), r = Io(e, t);
35539
+ let n = e.codePointAt(t), r = Wo(e, t);
35462
35540
  if (r !== void 0 && o.lineEndForbidden.has(r) || o.lineStartForbidden.has(n)) continue;
35463
35541
  }
35464
35542
  c.push(t);
35465
35543
  }
35466
35544
  return c.sort((e, t) => e - t), c;
35467
35545
  }
35468
- function Io(e, t) {
35546
+ function Wo(e, t) {
35469
35547
  if (t <= 0) return;
35470
35548
  let n = e.charCodeAt(t - 1);
35471
35549
  if (n >= 56320 && n <= 57343 && t >= 2) {
@@ -35474,7 +35552,7 @@ function Io(e, t) {
35474
35552
  }
35475
35553
  return n;
35476
35554
  }
35477
- function Lo(e, t, n, r, i, a = !1) {
35555
+ function Go(e, t, n, r, i, a = !1) {
35478
35556
  let o = e.length;
35479
35557
  if (n >= o) return n;
35480
35558
  if (a) {
@@ -35490,19 +35568,19 @@ function Lo(e, t, n, r, i, a = !1) {
35490
35568
  for (let a of t) a <= n || a >= o || i(e.slice(n, a)) <= r && (s = a);
35491
35569
  return i(e.slice(n, o)) <= r && (s = o), s;
35492
35570
  }
35493
- var Ro;
35494
- function zo() {
35495
- if (Ro !== void 0) return Ro;
35571
+ var Ko;
35572
+ function qo() {
35573
+ if (Ko !== void 0) return Ko;
35496
35574
  let e = null;
35497
35575
  try {
35498
35576
  typeof Intl < "u" && typeof Intl.Segmenter == "function" && (e = new Intl.Segmenter(void 0, { granularity: "grapheme" }));
35499
35577
  } catch {
35500
35578
  e = null;
35501
35579
  }
35502
- return Ro = e, e;
35580
+ return Ko = e, e;
35503
35581
  }
35504
- function Bo(e) {
35505
- let t = zo();
35582
+ function Jo(e) {
35583
+ let t = qo();
35506
35584
  if (t) try {
35507
35585
  let n = [];
35508
35586
  for (let r of t.segment(e)) r.index > 0 && n.push(r.index);
@@ -35517,12 +35595,12 @@ function Bo(e) {
35517
35595
  }
35518
35596
  //#endregion
35519
35597
  //#region packages/core/src/text/vertical-orientation.generated.ts
35520
- var Vo = [
35598
+ var Yo = [
35521
35599
  "U",
35522
35600
  "R",
35523
35601
  "Tu",
35524
35602
  "Tr"
35525
- ], Ho = [
35603
+ ], Xo = [
35526
35604
  0,
35527
35605
  167,
35528
35606
  168,
@@ -35803,7 +35881,7 @@ var Vo = [
35803
35881
  1048574,
35804
35882
  1048576,
35805
35883
  1114110
35806
- ], Uo = [
35884
+ ], Zo = [
35807
35885
  1,
35808
35886
  0,
35809
35887
  1,
@@ -36087,29 +36165,29 @@ var Vo = [
36087
36165
  ];
36088
36166
  //#endregion
36089
36167
  //#region packages/core/src/text/vertical-orientation.ts
36090
- function Wo(e) {
36091
- let t = 0, n = Ho.length - 1;
36168
+ function Qo(e) {
36169
+ let t = 0, n = Xo.length - 1;
36092
36170
  for (; t < n;) {
36093
36171
  let r = t + n + 1 >> 1;
36094
- Ho[r] <= e ? t = r : n = r - 1;
36172
+ Xo[r] <= e ? t = r : n = r - 1;
36095
36173
  }
36096
- return Uo[t];
36174
+ return Zo[t];
36097
36175
  }
36098
- function Go(e) {
36099
- return Vo[Wo(e)];
36176
+ function $o(e) {
36177
+ return Yo[Qo(e)];
36100
36178
  }
36101
- function Ko(e) {
36102
- return qo.get(e) ?? null;
36179
+ function es(e) {
36180
+ return ts.get(e) ?? null;
36103
36181
  }
36104
- var qo = new Map([
36182
+ var ts = new Map([
36105
36183
  [65292, 65040],
36106
36184
  [12289, 65041],
36107
36185
  [12290, 65042]
36108
36186
  ]);
36109
- function Jo(e) {
36110
- return Yo.get(e) ?? null;
36187
+ function ns(e) {
36188
+ return rs.get(e) ?? null;
36111
36189
  }
36112
- var Yo = new Map([
36190
+ var rs = new Map([
36113
36191
  [65288, 65077],
36114
36192
  [65289, 65078],
36115
36193
  [65371, 65079],
@@ -36128,40 +36206,40 @@ var Yo = new Map([
36128
36206
  [12303, 65092],
36129
36207
  [12310, 65047],
36130
36208
  [12311, 65048]
36131
- ]), Xo = new Set([65307]);
36132
- function Zo(e) {
36133
- return Xo.has(e);
36209
+ ]), is = new Set([65307]);
36210
+ function as(e) {
36211
+ return is.has(e);
36134
36212
  }
36135
- var Qo = new Set([
36213
+ var os = new Set([
36136
36214
  12540,
36137
36215
  12316,
36138
36216
  65374
36139
36217
  ]);
36140
- function $o(e) {
36141
- return Qo.has(e);
36218
+ function ss(e) {
36219
+ return os.has(e);
36142
36220
  }
36143
36221
  //#endregion
36144
36222
  //#region packages/core/src/text/vertical-vert-feature.ts
36145
- var es = 256, ts = 200, ns = /* @__PURE__ */ new WeakMap();
36146
- function rs(e) {
36223
+ var cs = 256, ls = 200, us = /* @__PURE__ */ new WeakMap();
36224
+ function ds(e) {
36147
36225
  let t = e.canvas, n = t?.ownerDocument?.defaultView?.HTMLCanvasElement;
36148
36226
  return typeof n == "function" && t instanceof n || typeof HTMLCanvasElement < "u" && t instanceof HTMLCanvasElement ? t : null;
36149
36227
  }
36150
- function is(e, t) {
36228
+ function fs(e, t) {
36151
36229
  return e.replace(/(^|\s)\d*\.?\d+(?:px|pt|pc|in|cm|mm|q|em|rem|%)(?:\/[^\s]+)?(?=\s)/i, `$1${t}`);
36152
36230
  }
36153
- function as(e, t = !0) {
36231
+ function ps(e, t = !0) {
36154
36232
  let n = e.trim();
36155
36233
  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(", ");
36156
36234
  }
36157
- function os(e) {
36235
+ function ms(e) {
36158
36236
  try {
36159
36237
  let t = e.ownerDocument?.defaultView, n = t?.getComputedStyle ? t.getComputedStyle(e) : typeof getComputedStyle == "function" ? getComputedStyle(e) : null;
36160
36238
  if (n?.fontFeatureSettings) return n.fontFeatureSettings;
36161
36239
  } catch {}
36162
36240
  return e.style.fontFeatureSettings;
36163
36241
  }
36164
- function ss(e, t) {
36242
+ function hs(e, t) {
36165
36243
  if (e.isConnected) return t();
36166
36244
  let n = e.ownerDocument ?? (typeof document > "u" ? null : document), r = n?.body ?? n?.documentElement;
36167
36245
  if (!r) return t();
@@ -36202,15 +36280,15 @@ function ss(e, t) {
36202
36280
  if (t !== void 0 && !c) throw t;
36203
36281
  }
36204
36282
  }
36205
- function cs(e, t) {
36206
- let n = rs(e);
36207
- return n === null ? t() : ss(n, t);
36283
+ function gs(e, t) {
36284
+ let n = ds(e);
36285
+ return n === null ? t() : hs(n, t);
36208
36286
  }
36209
- function ls(e) {
36210
- let t = ns.get(e);
36287
+ function _s(e) {
36288
+ let t = us.get(e);
36211
36289
  if (t) return t;
36212
36290
  let n = e.createElement("canvas");
36213
- n.width = es, n.height = es, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
36291
+ n.width = cs, n.height = cs, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
36214
36292
  position: "fixed",
36215
36293
  left: "-99999px",
36216
36294
  top: "0",
@@ -36224,9 +36302,9 @@ function ls(e) {
36224
36302
  }, i = () => {
36225
36303
  r.epoch += 1, r.cache.clear();
36226
36304
  };
36227
- return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), ns.set(e, r), r;
36305
+ return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), us.set(e, r), r;
36228
36306
  }
36229
- function us(e, t) {
36307
+ function vs(e, t) {
36230
36308
  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;
36231
36309
  for (let e = 0; e < r; e += 1) for (let t = 0; t < n; t += 1) {
36232
36310
  let r = i[(e * n + t) * 4 + 3];
@@ -36253,28 +36331,28 @@ function us(e, t) {
36253
36331
  ]
36254
36332
  };
36255
36333
  }
36256
- function ds(e, t, n) {
36334
+ function ys(e, t, n) {
36257
36335
  let r = e.canvas;
36258
36336
  r.style.fontFeatureSettings = n, e.font = e.font, e.clearRect(0, 0, r.width, r.height);
36259
36337
  let i = String.fromCodePoint(t);
36260
- return e.fillText(i, r.width / 2, r.height / 2), us(e, i);
36338
+ return e.fillText(i, r.width / 2, r.height / 2), vs(e, i);
36261
36339
  }
36262
- function fs(e, t) {
36340
+ function bs(e, t) {
36263
36341
  let n = 0, r = Math.min(e.length, t.length);
36264
36342
  for (let i = 0; i < r; i += 1) n += Math.abs(e[i] - t[i]);
36265
36343
  return n;
36266
36344
  }
36267
- function ps(e, t, n, r) {
36345
+ function xs(e, t, n, r) {
36268
36346
  let i = (e, t, n, r) => {
36269
- let i = Math.max(fs(e, t), fs(n, r));
36270
- return Math.min(fs(e, n), fs(e, r), fs(t, n), fs(t, r)) > i;
36347
+ let i = Math.max(bs(e, t), bs(n, r));
36348
+ return Math.min(bs(e, n), bs(e, r), bs(t, n), bs(t, r)) > i;
36271
36349
  };
36272
36350
  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);
36273
36351
  }
36274
- function ms(e, t) {
36275
- let n = rs(e);
36352
+ function Ss(e, t) {
36353
+ let n = ds(e);
36276
36354
  if (n === null || typeof document > "u") return !1;
36277
- let r = n.ownerDocument ?? document, i = ls(r), a = os(n), o = `${i.epoch}:${is(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
36355
+ let r = n.ownerDocument ?? document, i = _s(r), a = ms(n), o = `${i.epoch}:${fs(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
36278
36356
  if (s !== void 0) return s;
36279
36357
  let c = !1, l = r.body ?? r.documentElement;
36280
36358
  if (!l) return !1;
@@ -36284,9 +36362,9 @@ function ms(e, t) {
36284
36362
  if (d !== null) {
36285
36363
  let n = i.canvas.style.fontFeatureSettings;
36286
36364
  try {
36287
- d.font = is(e.font, `${ts}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
36288
- let n = as(a, !1), r = as(a, !0), i = ds(d, t, n), o = ds(d, t, n), s = ds(d, t, r), l = ds(d, t, r);
36289
- c = i !== null && o !== null && s !== null && l !== null && ps(i, o, s, l);
36365
+ d.font = fs(e.font, `${ls}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
36366
+ let n = ps(a, !1), r = ps(a, !0), i = ys(d, t, n), o = ys(d, t, n), s = ys(d, t, r), l = ys(d, t, r);
36367
+ c = i !== null && o !== null && s !== null && l !== null && xs(i, o, s, l);
36290
36368
  } catch {
36291
36369
  c = !1;
36292
36370
  } finally {
@@ -36295,11 +36373,11 @@ function ms(e, t) {
36295
36373
  }
36296
36374
  return i.cache.set(o, c), c;
36297
36375
  }
36298
- function hs(e, t) {
36376
+ function Cs(e, t) {
36299
36377
  let n = e.canvas;
36300
- return n?.style ? cs(e, () => {
36378
+ return n?.style ? gs(e, () => {
36301
36379
  let r = n.style, i = r.fontFeatureSettings;
36302
- r.fontFeatureSettings = as(os(n)), e.font = e.font;
36380
+ r.fontFeatureSettings = ps(ms(n)), e.font = e.font;
36303
36381
  try {
36304
36382
  return t();
36305
36383
  } finally {
@@ -36307,8 +36385,8 @@ function hs(e, t) {
36307
36385
  }
36308
36386
  }) : t();
36309
36387
  }
36310
- function gs(e, t) {
36311
- return hs(e, () => {
36388
+ function ws(e, t) {
36389
+ return Cs(e, () => {
36312
36390
  let n = e.textAlign, r = e.textBaseline;
36313
36391
  e.textAlign = "center", e.textBaseline = "middle";
36314
36392
  try {
@@ -36327,13 +36405,13 @@ function gs(e, t) {
36327
36405
  }
36328
36406
  //#endregion
36329
36407
  //#region packages/core/src/interaction/hyperlink.ts
36330
- var _s = [
36408
+ var Ts = [
36331
36409
  "http",
36332
36410
  "https",
36333
36411
  "mailto",
36334
36412
  "tel"
36335
36413
  ];
36336
- function vs(e) {
36414
+ function Es(e) {
36337
36415
  let t = "";
36338
36416
  for (let n of e) {
36339
36417
  let e = n.codePointAt(0);
@@ -36342,73 +36420,14 @@ function vs(e) {
36342
36420
  let n = /^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);
36343
36421
  return n ? n[1].toLowerCase() : null;
36344
36422
  }
36345
- function ys(e, t = _s) {
36423
+ function Ds(e, t = Ts) {
36346
36424
  if (e === "") return null;
36347
- let n = vs(e);
36425
+ let n = Es(e);
36348
36426
  return n === null || t.includes(n) ? e : null;
36349
36427
  }
36350
- function bs(e, t = _s, n = typeof window < "u" ? window : void 0) {
36351
- let r = ys(e, t);
36428
+ function Os(e, t = Ts, n = typeof window < "u" ? window : void 0) {
36429
+ let r = Ds(e, t);
36352
36430
  return r === null || !n ? !1 : (n.open(r, "_blank", "noopener,noreferrer"), !0);
36353
36431
  }
36354
36432
  //#endregion
36355
- //#region packages/core/src/text/line-metrics.ts
36356
- var xs = [
36357
- [(e) => e.includes("meiryo ui") || e.includes("meiryoui") || e.includes("メイリオ") && e.includes("ui"), {
36358
- asc: 2171 * 1.3 / 2048,
36359
- desc: 430 * 1.3 / 2048,
36360
- eaOnly: !0
36361
- }],
36362
- [(e) => e.includes("meiryo") || e.includes("メイリオ"), {
36363
- asc: 2210 / 2048,
36364
- desc: 1059 / 2048
36365
- }],
36366
- [(e) => !e.includes("ui") && (e.includes("yu mincho") || e.includes("yumincho") || e.includes("游明朝") || e.includes("yu gothic") || e.includes("yugothic") || e.includes("游ゴシック")), {
36367
- asc: 1802 * 1.3 / 2048,
36368
- desc: 455 * 1.3 / 2048,
36369
- eaOnly: !0
36370
- }],
36371
- [(e) => e.includes("sakkal majalla") || e.includes("majalla"), {
36372
- asc: 1810 / 2048,
36373
- desc: 1050 / 2048
36374
- }],
36375
- [(e) => e === "times new roman", {
36376
- asc: 1825 / 2048,
36377
- desc: 530 / 2048
36378
- }],
36379
- [(e) => e === "arial", {
36380
- asc: 1854 / 2048,
36381
- desc: 501 / 2048
36382
- }]
36383
- ];
36384
- function Ss(e, t) {
36385
- if (!e) return null;
36386
- let n = e.toLowerCase();
36387
- for (let [e, r] of xs) if (e(n) && (t || !r.eaOnly)) return r;
36388
- return null;
36389
- }
36390
- function Cs(e, t = !1) {
36391
- let n = Ss(e, t);
36392
- return n === null ? null : n.asc + n.desc;
36393
- }
36394
- function ws(e, t, n = !1) {
36395
- let r = Cs(e, n);
36396
- return r === null ? 0 : r * t;
36397
- }
36398
- function Ts(e, t, n, r, i = !1) {
36399
- let a = Ss(e, i);
36400
- if (a === null) return {
36401
- ascent: n,
36402
- descent: r
36403
- };
36404
- let o = (a.asc + a.desc) * t;
36405
- return n + r <= o ? {
36406
- ascent: n,
36407
- descent: r
36408
- } : {
36409
- ascent: a.asc * t,
36410
- descent: a.desc * t
36411
- };
36412
- }
36413
- //#endregion
36414
- export { ri as $, _e as $t, ro as A, Qe as At, Xi as B, Oe as Bt, xo as C, sn as Ct, lo as D, zt as Dt, uo as E, Qt as Et, wa as F, Le as Ft, Ii as G, oe as Gt, Zi as H, De as Ht, Ca as I, ke as It, hi as J, ue as Jt, Ri as K, se as Kt, la as L, Ae as Lt, eo as M, Ue as Mt, Sa as N, Ze as Nt, co as O, Ge as Ot, Z as P, Ie as Pt, ii as Q, be as Qt, da as R, je as Rt, Fo as S, Cn as St, po as T, Zt as Tt, Si as U, Ne as Ut, Yi as V, Ee as Vt, Wi as W, Te as Wt, si as X, ce as Xt, ai as Y, le as Yt, oi as Z, de as Zt, Bo as _, fr as _t, bs as a, he as an, wr as at, Co as b, Bn as bt, hs as c, T as cn, yr as ct, Ko as d, _r as dt, ve as en, ni as et, Go as f, jn as ft, Lo as g, In as gt, To as h, ur as ht, vs as i, me as in, Gr as it, no as j, Xe as jt, so as k, We as kt, cs as l, br as lt, Zo as m, dr as mt, ws as n, ge as nn, $r as nt, gs as o, fe as on, Cr as ot, $o as p, pr as pt, mi as q, xe as qt, _s as r, pe as rn, ei as rt, ms as s, w as sn, xr as st, Ts as t, ye as tn, ti as tt, Jo as u, vr as ut, Do as v, Un as vt, fo as w, ln as wt, $ as x, yn as xt, Eo as y, ar as yt, ua as z, Me as zt };
36433
+ export { ui as $, _e as $t, uo as A, et as At, ra as B, Oe as Bt, bo as C, _n as Ct, _o as D, Ye as Dt, vo as E, Kt as Et, ja as F, je as Ft, Ki as G, oe as Gt, Ai as H, De as Ht, _a as I, Me as It, pi as J, ue as Jt, Si as K, se as Kt, ya as L, Fe as Lt, Aa as M, tt as Mt, Z as N, Be as Nt, go as O, Je as Ot, Ma as P, Ve as Pt, di as Q, be as Qt, va as R, Ie as Rt, Do as S, hn as St, yo as T, sn as Tt, Qi as U, Le as Ut, aa as V, ke as Vt, Wi as W, Te as Wt, mi as X, ce as Xt, hi as Y, le as Yt, fi as Z, de as Zt, Po as _, Zn as _t, Ss as a, he as an, jr as at, Uo as b, Dn as bt, ns as c, T as cn, Or as ct, ss as d, zn as dt, ve as en, li as et, as as f, xr as ft, Fo as g, br as gt, Jo as h, Wn as ht, ws as i, me as in, Mr as it, co as j, qe as jt, fo as k, nt as kt, es as l, Er as lt, Go as m, vr as mt, Es as n, ge as nn, ci as nt, Cs as o, fe as on, kr as ot, No as p, yr as pt, Ci as q, xe as qt, Os as r, pe as rn, $r as rt, gs as s, w as sn, Dr as st, Ts as t, ye as tn, si as tt, $o as u, Tr as ut, jo as v, pr as vt, xo as w, on as wt, ko as x, jn as xt, $ as y, Jn as yt, ia as z, Ae as zt };