@silurus/ooxml 0.84.1 → 0.85.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 (68) hide show
  1. package/README.md +44 -18
  2. package/dist/assets/render-worker-BRKOyWVH.js +24 -0
  3. package/dist/assets/render-worker-CtLMFj9r.js +10 -0
  4. package/dist/assets/render-worker-NZPOUOTU.js +11 -0
  5. package/dist/{canvas-viewer-mechanics-CIfhCgYA.js → canvas-viewer-mechanics-CfRzOhz5.js} +308 -234
  6. package/dist/chart-ex.mjs +270 -270
  7. package/dist/{comment-ui-runtime-CdMMApEN.js → comment-ui-runtime-CAbpuWi_.js} +4 -4
  8. package/dist/{comment-ui-runtime-C5qimVMD.js → comment-ui-runtime-DAKBCpsM.js} +5 -5
  9. package/dist/comment-ui-runtime-DTaaZdXC.js +2 -0
  10. package/dist/{comments-BAlAyIhb.js → comments-Brfxa3hQ.js} +1 -1
  11. package/dist/{document-pull-client-BXw6AAhY.js → document-pull-client-BkHHIdR4.js} +4661 -4357
  12. package/dist/{docx-BA1vB0V-.js → docx-_uelcAui.js} +338 -304
  13. package/dist/docx.mjs +7 -6
  14. package/dist/docx_parser_bg.wasm +0 -0
  15. package/dist/{dom-interaction-boundary-DS6BVyHA.js → dom-interaction-boundary-CMDDgICk.js} +1 -1
  16. package/dist/index.mjs +3 -3
  17. package/dist/line-distribute-CiKeWjBF.js +1023 -0
  18. package/dist/{line-metrics-CXyjyYd5.js → line-metrics-u87yCAfV.js} +2182 -705
  19. package/dist/math.mjs +2 -2
  20. package/dist/node.mjs +404 -394
  21. package/dist/pixel-budget-Dgjw269h.js +37 -0
  22. package/dist/{plot-area-frame-DuXZzovH.js → plot-area-frame-D5hEOgkJ.js} +691 -1418
  23. package/dist/{pptx-C17oBD8Z.js → pptx-WpBbS0mq.js} +255 -222
  24. package/dist/pptx.mjs +7 -6
  25. package/dist/pptx_parser_bg.wasm +0 -0
  26. package/dist/raster-target-whZhvVMt.js +87 -0
  27. package/dist/region-map.mjs +5 -5
  28. package/dist/{render-CVeGktZG.js → render-DrAAZWwH.js} +9 -6
  29. package/dist/{render-worker-host-BbhwA24Y.js → render-worker-host-CBVe8aeD.js} +1 -1
  30. package/dist/{render-worker-host-BWdhjVH_.js → render-worker-host-CHlwYJdK.js} +1 -1
  31. package/dist/{render-worker-host-CbaQivE7.js → render-worker-host-XDMsyVsv.js} +1 -1
  32. package/dist/{renderer-Bmky2yBc.js → renderer-XFSCOT6m.js} +1937 -1936
  33. package/dist/resource-measurement-6uR3Huao.js +150 -0
  34. package/dist/{session-Cl0RVnMs.js → session-DoPwA4gv.js} +79 -79
  35. package/dist/{slide-pull-client-BS0EeZo2.js → slide-pull-client-8i8C4VyD.js} +1054 -824
  36. package/dist/{three-d-B7LsKeOS.js → three-d-YYghQndN.js} +109 -110
  37. package/dist/three-d.mjs +726 -726
  38. package/dist/tiff.mjs +664 -78
  39. package/dist/types/chart-ex.d.ts +2 -2
  40. package/dist/types/docx.d.ts +31 -13
  41. package/dist/types/index.d.ts +46 -21
  42. package/dist/types/math.d.ts +1 -1
  43. package/dist/types/node.d.ts +11 -7
  44. package/dist/types/pptx.d.ts +35 -15
  45. package/dist/types/region-map.d.ts +2 -2
  46. package/dist/types/three-d.d.ts +2 -2
  47. package/dist/types/tiff.d.ts +13 -3
  48. package/dist/types/xlsx.d.ts +30 -13
  49. package/dist/{worksheet-pull-client-B0zfEVau.js → worksheet-pull-client-Btydoxto.js} +47 -47
  50. package/dist/{xlsx-FyKAiNo-.js → xlsx-Bd16V4Xx.js} +1395 -1196
  51. package/dist/xlsx.mjs +7 -6
  52. package/package.json +2 -2
  53. package/dist/assets/render-worker-BWPpayBu.js +0 -10
  54. package/dist/assets/render-worker-CiEWCh_T.js +0 -11
  55. package/dist/assets/render-worker-Cpmy3GDF.js +0 -24
  56. package/dist/comment-ui-runtime-aPzHfV_A.js +0 -2
  57. package/dist/line-distribute-MqInuujx.js +0 -1003
  58. package/dist/resource-measurement-esyGbzAF.js +0 -120
  59. package/dist/tiff-contract-Xjn3qXqK.js +0 -69
  60. /package/dist/{comment-occurrence-C34fWs_F.js → comment-occurrence-tj54AXXB.js} +0 -0
  61. /package/dist/{highlight-rect-MaCt0om0.js → highlight-rect-DBcYVJDv.js} +0 -0
  62. /package/dist/{mathjax-DPEX346v.js → mathjax-DS69BmJd.js} +0 -0
  63. /package/dist/{read-only-comment-decoration-BYCXoSdC.js → read-only-comment-decoration-Mv_SAiHy.js} +0 -0
  64. /package/dist/{read-only-comment-margin-C7b3l0ro.js → read-only-comment-margin-Cqu-Ir0C.js} +0 -0
  65. /package/dist/{renderer-module-contract-C6sYZvTV.js → renderer-module-contract-Cu-GKuPd.js} +0 -0
  66. /package/dist/{source-key-DORuuFb-.js → source-key-BkBB3X82.js} +0 -0
  67. /package/dist/{transfer-vNOFQuvv.js → transfer-mIj7E7NB.js} +0 -0
  68. /package/dist/{visible-index-DwJzuGmJ.js → visible-index-DPoQYSDt.js} +0 -0
@@ -1,14 +1,15 @@
1
- import { c as e, o as t, r as n } from "./tiff-contract-Xjn3qXqK.js";
2
- import { an as r, on as i } from "./plot-area-frame-DuXZzovH.js";
3
- import { L as a } from "./three-d-B7LsKeOS.js";
4
- import { t as o } from "./mathjax-DPEX346v.js";
1
+ import { cn as e, dn as t, fn as n, hn as r, ln as i, mn as a, pn as o, un as s } from "./plot-area-frame-D5hEOgkJ.js";
2
+ import { a as c, c as l, i as u, l as d, n as f, o as p, r as m, s as h, t as g } from "./pixel-budget-Dgjw269h.js";
3
+ import { L as _ } from "./three-d-YYghQndN.js";
4
+ import { a as v, c as y, i as b, n as x, o as S, r as C, s as ee } from "./raster-target-whZhvVMt.js";
5
+ import { t as te } from "./mathjax-DS69BmJd.js";
5
6
  //#region packages/core/src/errors/ooxml-error.ts
6
- var s = class e extends Error {
7
+ var w = class e extends Error {
7
8
  code;
8
9
  constructor(t, n) {
9
10
  super(n), this.name = "OoxmlError", this.code = t, Object.setPrototypeOf(this, e.prototype);
10
11
  }
11
- }, c = class e extends Error {
12
+ }, T = class e extends Error {
12
13
  code = "ooxml-resource-limit";
13
14
  details;
14
15
  constructor(t, n) {
@@ -35,7 +36,7 @@ var s = class e extends Error {
35
36
  violation: i
36
37
  }), Object.setPrototypeOf(this, e.prototype);
37
38
  }
38
- }, l = 134217728, u = 268435456, d = 4096, f = 2e4, p = 67108864, m = 67108864, h = 67108864, g = 67108864, _ = 134217728, v = 134217728, y = 1e5, b = 25e4, x = 33554432, S = 67108864, ee = 2e5, te = 5e5, ne = 67108864, re = 134217728, ie = 25e4, ae = 31457280, C = "https://fonts.googleapis.com/css2?family=Noto+Naskh+Arabic:wght@400;700&display=swap", oe = "https://fonts.googleapis.com/css2?family=Noto+Sans+Arabic:wght@400;700&display=swap", se = "https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap", ce = {
39
+ }, ne = 134217728, re = 268435456, ie = 4096, ae = 2e4, oe = 67108864, se = 67108864, ce = 67108864, le = 67108864, ue = 134217728, de = 134217728, fe = 1e5, pe = 25e4, me = 33554432, he = 67108864, ge = 2e5, _e = 5e5, ve = 67108864, ye = 134217728, be = 25e4, xe = 31457280, Se = "https://fonts.googleapis.com/css2?family=Noto+Naskh+Arabic:wght@400;700&display=swap", Ce = "https://fonts.googleapis.com/css2?family=Noto+Sans+Arabic:wght@400;700&display=swap", we = "https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap", Te = {
39
40
  calibri: {
40
41
  url: "https://fonts.googleapis.com/css2?family=Carlito:ital,wght@0,400;0,700;1,400;1,700&display=swap",
41
42
  loadFamily: "Carlito"
@@ -53,11 +54,11 @@ var s = class e extends Error {
53
54
  loadFamily: "Caladea"
54
55
  },
55
56
  "franklin gothic book": {
56
- url: se,
57
+ url: we,
57
58
  loadFamily: "Libre Franklin"
58
59
  },
59
60
  "franklin gothic medium": {
60
- url: se,
61
+ url: we,
61
62
  loadFamily: "Libre Franklin"
62
63
  },
63
64
  "nunito sans": { url: "https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap" },
@@ -71,47 +72,47 @@ var s = class e extends Error {
71
72
  "playfair display": { url: "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&display=swap" },
72
73
  ubuntu: { url: "https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,400;0,700;1,400;1,700&display=swap" },
73
74
  "sakkal majalla": {
74
- url: C,
75
+ url: Se,
75
76
  loadFamily: "Noto Naskh Arabic"
76
77
  },
77
78
  "traditional arabic": {
78
- url: C,
79
+ url: Se,
79
80
  loadFamily: "Noto Naskh Arabic"
80
81
  },
81
82
  "simplified arabic": {
82
- url: C,
83
+ url: Se,
83
84
  loadFamily: "Noto Naskh Arabic"
84
85
  },
85
86
  "arabic typesetting": {
86
- url: C,
87
+ url: Se,
87
88
  loadFamily: "Noto Naskh Arabic"
88
89
  },
89
90
  "univers next arabic": {
90
- url: oe,
91
+ url: Ce,
91
92
  loadFamily: "Noto Sans Arabic"
92
93
  },
93
94
  "noto naskh arabic": {
94
- url: C,
95
+ url: Se,
95
96
  loadFamily: "Noto Naskh Arabic"
96
97
  },
97
98
  "noto sans arabic": {
98
- url: oe,
99
+ url: Ce,
99
100
  loadFamily: "Noto Sans Arabic"
100
101
  }
101
102
  };
102
103
  //#endregion
103
104
  //#region packages/core/src/fonts/scripts.ts
104
- function le(e) {
105
+ function Ee(e) {
105
106
  if (!e) return null;
106
107
  let t = e.toLowerCase();
107
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;
108
109
  }
109
- function ue(e) {
110
+ function De(e) {
110
111
  if (!e) return "sans";
111
112
  let t = e.toLowerCase();
112
113
  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";
113
114
  }
114
- function de(e, t) {
115
+ function Oe(e, t) {
115
116
  let n = t === "serif" ? "Noto Serif" : "Noto Sans", r = {
116
117
  jp: [
117
118
  "jp",
@@ -145,27 +146,27 @@ function de(e, t) {
145
146
  };
146
147
  return r[e].map((e) => `${n} ${i[e]}`);
147
148
  }
148
- var fe = [
149
+ var ke = [
149
150
  "Noto Sans",
150
151
  "Noto Sans Hebrew",
151
152
  "Noto Sans Thai",
152
153
  "Noto Sans Devanagari"
153
- ], pe = ["Noto Serif", "Noto Serif Hebrew"], w = (e) => `https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`, me = {
154
- "noto sans kr": { url: w("Noto+Sans+KR") },
155
- "noto sans sc": { url: w("Noto+Sans+SC") },
156
- "noto sans tc": { url: w("Noto+Sans+TC") },
157
- "noto sans jp": { url: w("Noto+Sans+JP") },
158
- "noto serif kr": { url: w("Noto+Serif+KR") },
159
- "noto serif sc": { url: w("Noto+Serif+SC") },
160
- "noto serif tc": { url: w("Noto+Serif+TC") },
161
- "noto serif jp": { url: w("Noto+Serif+JP") },
162
- "noto sans": { url: w("Noto+Sans") },
163
- "noto serif": { url: w("Noto+Serif") },
164
- "noto sans devanagari": { url: w("Noto+Sans+Devanagari") },
165
- "noto sans thai": { url: w("Noto+Sans+Thai") },
166
- "noto sans hebrew": { url: w("Noto+Sans+Hebrew") },
167
- "noto serif hebrew": { url: w("Noto+Serif+Hebrew") }
168
- }, he = class e {
154
+ ], Ae = ["Noto Serif", "Noto Serif Hebrew"], E = (e) => `https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`, je = {
155
+ "noto sans kr": { url: E("Noto+Sans+KR") },
156
+ "noto sans sc": { url: E("Noto+Sans+SC") },
157
+ "noto sans tc": { url: E("Noto+Sans+TC") },
158
+ "noto sans jp": { url: E("Noto+Sans+JP") },
159
+ "noto serif kr": { url: E("Noto+Serif+KR") },
160
+ "noto serif sc": { url: E("Noto+Serif+SC") },
161
+ "noto serif tc": { url: E("Noto+Serif+TC") },
162
+ "noto serif jp": { url: E("Noto+Serif+JP") },
163
+ "noto sans": { url: E("Noto+Sans") },
164
+ "noto serif": { url: E("Noto+Serif") },
165
+ "noto sans devanagari": { url: E("Noto+Sans+Devanagari") },
166
+ "noto sans thai": { url: E("Noto+Sans+Thai") },
167
+ "noto sans hebrew": { url: E("Noto+Sans+Hebrew") },
168
+ "noto serif hebrew": { url: E("Noto+Serif+Hebrew") }
169
+ }, Me = class e {
169
170
  hasHan = !1;
170
171
  hasHangul = !1;
171
172
  hasKana = !1;
@@ -208,11 +209,11 @@ var fe = [
208
209
  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;
209
210
  }
210
211
  };
211
- function ge(e, t) {
212
- let n = new he(t);
212
+ function Ne(e, t) {
213
+ let n = new Me(t);
213
214
  return n.addText(e), n.names();
214
215
  }
215
- var _e = {
216
+ var Pe = {
216
217
  accentbordercallout1: {
217
218
  adj: [
218
219
  ["adj1", "val 18750"],
@@ -22075,15 +22076,15 @@ var _e = {
22075
22076
  ]
22076
22077
  }]
22077
22078
  }
22078
- }, T = 216e5, E = Math.PI * 2 / T;
22079
- function ve(e) {
22079
+ }, D = 216e5, Fe = Math.PI * 2 / D;
22080
+ function Ie(e) {
22080
22081
  let t = e.trim().split(/\s+/);
22081
22082
  return {
22082
22083
  op: t[0],
22083
22084
  argTokens: t.slice(1)
22084
22085
  };
22085
22086
  }
22086
- function ye(e, t, n) {
22087
+ function Le(e, t, n) {
22087
22088
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
22088
22089
  Object.assign(c, {
22089
22090
  w: r,
@@ -22128,14 +22129,14 @@ function ye(e, t, n) {
22128
22129
  lsd8: s / 8,
22129
22130
  lsd16: s / 16,
22130
22131
  lsd32: s / 32,
22131
- cd: T,
22132
- cd2: T / 2,
22133
- cd4: T / 4,
22134
- cd8: T / 8,
22135
- "3cd4": 3 * T / 4,
22136
- "3cd8": 3 * T / 8,
22137
- "5cd8": 5 * T / 8,
22138
- "7cd8": 7 * T / 8
22132
+ cd: D,
22133
+ cd2: D / 2,
22134
+ cd4: D / 4,
22135
+ cd8: D / 8,
22136
+ "3cd4": 3 * D / 4,
22137
+ "3cd8": 3 * D / 8,
22138
+ "5cd8": 5 * D / 8,
22139
+ "7cd8": 7 * D / 8
22139
22140
  }), t.forEach(([e, t], n) => {
22140
22141
  let r = a[n];
22141
22142
  c[e] = typeof r == "number" ? r : u(t), e === "adj" && (c.adj1 = c.adj), e === "adj1" && (c.adj = c.adj1);
@@ -22172,10 +22173,10 @@ function ye(e, t, n) {
22172
22173
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
22173
22174
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
22174
22175
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
22175
- case "sin": return t[0] * Math.sin(t[1] * E);
22176
- case "cos": return t[0] * Math.cos(t[1] * E);
22177
- case "tan": return t[0] * Math.tan(t[1] * E);
22178
- case "at2": return Math.atan2(t[1], t[0]) / E;
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;
22179
22180
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
22180
22181
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
22181
22182
  default: throw Error(`preset-shape: unknown operator "${e}" in "${[n.op, ...n.argTokens].join(" ")}"`);
@@ -22184,8 +22185,8 @@ function ye(e, t, n) {
22184
22185
  }
22185
22186
  //#endregion
22186
22187
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
22187
- var be = Math.PI * 2 / 216e5;
22188
- function xe(e, t, n, r, i, a, o) {
22188
+ var Re = Math.PI * 2 / 216e5;
22189
+ function ze(e, t, n, r, i, a, o) {
22189
22190
  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;
22190
22191
  for (let r of t.cmds) switch (r[0]) {
22191
22192
  case "m": {
@@ -22209,7 +22210,7 @@ function xe(e, t, n, r, i, a, o) {
22209
22210
  break;
22210
22211
  }
22211
22212
  case "a": {
22212
- let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * be, u = n.resolve(r[4]) * be, 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;
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;
22213
22214
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
22214
22215
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
22215
22216
  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));
@@ -22222,44 +22223,44 @@ function xe(e, t, n, r, i, a, o) {
22222
22223
  }
22223
22224
  //#endregion
22224
22225
  //#region packages/core/src/shape/preset-geometry/index.ts
22225
- var D = _e, Se = /* @__PURE__ */ new WeakMap();
22226
- function Ce(e) {
22227
- let t = Se.get(e);
22226
+ var O = Pe, Be = /* @__PURE__ */ new WeakMap();
22227
+ function Ve(e) {
22228
+ let t = Be.get(e);
22228
22229
  return t || (t = {
22229
- adj: e.adj.map(([e, t]) => [e, ve(t)]),
22230
- gd: e.gd.map(([e, t]) => [e, ve(t)])
22231
- }, Se.set(e, 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;
22232
22233
  }
22233
- function O(e, t, n, r) {
22234
- let i = Ce(e);
22235
- return ye({
22234
+ function He(e, t, n, r) {
22235
+ let i = Ve(e);
22236
+ return Le({
22236
22237
  w: t,
22237
22238
  h: n,
22238
22239
  adj: r
22239
22240
  }, i.adj, i.gd);
22240
22241
  }
22241
- function we(e) {
22242
- return e.toLowerCase() in D;
22242
+ function Ue(e) {
22243
+ return e.toLowerCase() in O;
22243
22244
  }
22244
- function Te(e, t, n, r, i, a, o = []) {
22245
- let s = D[t.toLowerCase()];
22245
+ function We(e, t, n, r, i, a, o = []) {
22246
+ let s = O[t.toLowerCase()];
22246
22247
  if (!s) return !1;
22247
- let c = O(s, i, a, o);
22248
- for (let t of s.paths) xe(e, t, c, n, r, i, a);
22248
+ let c = He(s, i, a, o);
22249
+ for (let t of s.paths) ze(e, t, c, n, r, i, a);
22249
22250
  return !0;
22250
22251
  }
22251
- function Ee(e, t, n, r, i, a, o = []) {
22252
- let s = D[t.toLowerCase()];
22252
+ function Ge(e, t, n, r, i, a, o = []) {
22253
+ let s = O[t.toLowerCase()];
22253
22254
  if (!s) return !1;
22254
- let c = O(s, i, a, o);
22255
- for (let t of s.paths) t.fill !== "none" && xe(e, t, c, n, r, i, a);
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);
22256
22257
  return !0;
22257
22258
  }
22258
- var De = {
22259
+ var Ke = {
22259
22260
  wedgeroundrectcallout: "roundrect",
22260
22261
  wedgeellipsecallout: "ellipse",
22261
22262
  wedgerectcallout: null
22262
- }, Oe = {
22263
+ }, qe = {
22263
22264
  adj: [],
22264
22265
  gd: [],
22265
22266
  paths: [{
@@ -22293,20 +22294,20 @@ var De = {
22293
22294
  ]
22294
22295
  }]
22295
22296
  };
22296
- function ke(e, t, n) {
22297
+ function Je(e, t, n) {
22297
22298
  let r = e[n];
22298
22299
  if (typeof r == "number") return r;
22299
22300
  let i = t.adj[n];
22300
22301
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
22301
22302
  }
22302
- function Ae(e, t, n, r) {
22303
- let i = D[e];
22303
+ function Ye(e, t, n, r) {
22304
+ let i = O[e];
22304
22305
  if (!i) return null;
22305
- if (e in De) {
22306
- let a = ke(r, i, 0), o = ke(r, i, 1), s = t / 2 + t * a / 1e5, c = n / 2 + n * o / 1e5;
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;
22307
22308
  if (s >= 0 && s <= t && c >= 0 && c <= n) {
22308
- let t = De[e];
22309
- t === "roundrect" ? (i = D.roundrect, r = [ke(r, D[e], 2)]) : t && D[t] ? (i = D[t], r = []) : (i = Oe, r = []);
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 = []);
22310
22311
  }
22311
22312
  }
22312
22313
  return {
@@ -22314,8 +22315,8 @@ function Ae(e, t, n, r) {
22314
22315
  adj: r
22315
22316
  };
22316
22317
  }
22317
- function je(e, t, n, r, i, a = []) {
22318
- let o = Ae(e.toLowerCase(), r, i, a);
22318
+ function Xe(e, t, n, r, i, a = []) {
22319
+ let o = Ye(e.toLowerCase(), r, i, a);
22319
22320
  if (!o) return null;
22320
22321
  let s = Infinity, c = Infinity, l = -Infinity, u = -Infinity, d = (e, t) => {
22321
22322
  !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));
@@ -22332,8 +22333,8 @@ function je(e, t, n, r, i, a = []) {
22332
22333
  d(e - Math.abs(n), t - Math.abs(r)), d(e + Math.abs(n), t + Math.abs(r));
22333
22334
  },
22334
22335
  closePath() {}
22335
- }, p = O(o.def, r, i, o.adj);
22336
- for (let e of o.def.paths) xe(f, e, p, t, n, r, i);
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);
22337
22338
  return Number.isFinite(s) ? {
22338
22339
  x: s,
22339
22340
  y: c,
@@ -22346,19 +22347,19 @@ function je(e, t, n, r, i, a = []) {
22346
22347
  h: i
22347
22348
  };
22348
22349
  }
22349
- function Me(e, t, n, r, i, a, o, s, c, l, u) {
22350
- let d = Ae(t.toLowerCase(), i, a, o);
22350
+ function Ze(e, t, n, r, i, a, o, s, c, l, u) {
22351
+ let d = Ye(t.toLowerCase(), i, a, o);
22351
22352
  if (!d) return !1;
22352
22353
  let { def: f } = d;
22353
22354
  o = d.adj;
22354
- let p = O(f, i, a, o), m = !1, h = f.paths.length - 1;
22355
+ let p = He(f, i, a, o), m = !1, h = f.paths.length - 1;
22355
22356
  for (let t = 0; t < f.paths.length; t++) {
22356
22357
  let o = f.paths[t];
22357
- e.beginPath(), xe(e, o, p, n, r, i, a);
22358
+ e.beginPath(), ze(e, o, p, n, r, i, a);
22358
22359
  let d = o.fill;
22359
22360
  if (d !== "none" && s != null) {
22360
22361
  e.save(), e.fillStyle = s, e.fill();
22361
- let t = Pe(d);
22362
+ let t = $e(d);
22362
22363
  t && (e.fillStyle = t, e.fill()), e.restore(), m ||= (l(), !0);
22363
22364
  }
22364
22365
  if (o.stroke && c) {
@@ -22368,10 +22369,10 @@ function Me(e, t, n, r, i, a, o, s, c, l, u) {
22368
22369
  }
22369
22370
  return !0;
22370
22371
  }
22371
- function Ne(e, t, n, r, i, a) {
22372
- let o = D[e.toLowerCase()];
22372
+ function Qe(e, t, n, r, i, a) {
22373
+ let o = O[e.toLowerCase()];
22373
22374
  if (!o || o.paths.length === 0) return null;
22374
- let s = o.paths[o.paths.length - 1], c = O(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 = [];
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 = [];
22375
22376
  for (let e of s.cmds) switch (e[0]) {
22376
22377
  case "m":
22377
22378
  h = d(c.resolve(e[1])), g = f(c.resolve(e[2])), p = h, m = g, S.push({
@@ -22396,12 +22397,12 @@ function Ne(e, t, n, r, i, a) {
22396
22397
  break;
22397
22398
  }
22398
22399
  }
22399
- let ee = Math.atan2(v, _) + Math.PI;
22400
+ let C = Math.atan2(v, _) + Math.PI;
22400
22401
  return {
22401
22402
  start: {
22402
22403
  x: p,
22403
22404
  y: m,
22404
- angle: ee
22405
+ angle: C
22405
22406
  },
22406
22407
  end: {
22407
22408
  x: h,
@@ -22411,7 +22412,7 @@ function Ne(e, t, n, r, i, a) {
22411
22412
  vertices: S
22412
22413
  };
22413
22414
  }
22414
- function Pe(e) {
22415
+ function $e(e) {
22415
22416
  switch (e) {
22416
22417
  case "lighten": return "rgba(255,255,255,0.30)";
22417
22418
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -22421,207 +22422,1650 @@ function Pe(e) {
22421
22422
  }
22422
22423
  }
22423
22424
  //#endregion
22425
+ //#region packages/core/src/image/emf.ts
22426
+ var k = {
22427
+ HEADER: 1,
22428
+ POLYBEZIER: 2,
22429
+ POLYGON: 3,
22430
+ POLYLINE: 4,
22431
+ POLYBEZIERTO: 5,
22432
+ POLYLINETO: 6,
22433
+ POLYPOLYLINE: 7,
22434
+ POLYPOLYGON: 8,
22435
+ SETWINDOWEXTEX: 9,
22436
+ SETWINDOWORGEX: 10,
22437
+ SETVIEWPORTEXTEX: 11,
22438
+ SETVIEWPORTORGEX: 12,
22439
+ EOF: 14,
22440
+ SETMAPMODE: 17,
22441
+ SETPOLYFILLMODE: 19,
22442
+ SETBKMODE: 18,
22443
+ SETTEXTALIGN: 22,
22444
+ SETTEXTCOLOR: 24,
22445
+ MOVETOEX: 27,
22446
+ SCALEVIEWPORTEXTEX: 31,
22447
+ SCALEWINDOWEXTEX: 32,
22448
+ SAVEDC: 33,
22449
+ RESTOREDC: 34,
22450
+ SETWORLDTRANSFORM: 35,
22451
+ MODIFYWORLDTRANSFORM: 36,
22452
+ SELECTOBJECT: 37,
22453
+ CREATEPEN: 38,
22454
+ CREATEBRUSHINDIRECT: 39,
22455
+ DELETEOBJECT: 40,
22456
+ ELLIPSE: 42,
22457
+ RECTANGLE: 43,
22458
+ LINETO: 54,
22459
+ BEGINPATH: 59,
22460
+ ENDPATH: 60,
22461
+ CLOSEFIGURE: 61,
22462
+ SELECTCLIPPATH: 67,
22463
+ EXTCREATEFONTINDIRECTW: 82,
22464
+ EXTTEXTOUTW: 84,
22465
+ POLYBEZIER16: 85,
22466
+ POLYGON16: 86,
22467
+ POLYLINE16: 87,
22468
+ POLYBEZIERTO16: 88,
22469
+ POLYLINETO16: 89,
22470
+ POLYPOLYLINE16: 90,
22471
+ POLYPOLYGON16: 91,
22472
+ CREATEMONOBRUSH: 93,
22473
+ CREATEDIBPATTERNBRUSHPT: 94,
22474
+ EXTCREATEPEN: 95,
22475
+ BITBLT: 76,
22476
+ STRETCHDIBITS: 81
22477
+ }, A = {
22478
+ WHITE_BRUSH: 2147483648,
22479
+ LTGRAY_BRUSH: 2147483649,
22480
+ GRAY_BRUSH: 2147483650,
22481
+ DKGRAY_BRUSH: 2147483651,
22482
+ BLACK_BRUSH: 2147483652,
22483
+ NULL_BRUSH: 2147483653,
22484
+ WHITE_PEN: 2147483654,
22485
+ BLACK_PEN: 2147483655,
22486
+ NULL_PEN: 2147483656,
22487
+ DC_BRUSH: 2147483666,
22488
+ DC_PEN: 2147483662
22489
+ }, j = {
22490
+ TEXT: 1,
22491
+ LOMETRIC: 2,
22492
+ HIMETRIC: 3,
22493
+ LOENGLISH: 4,
22494
+ HIENGLISH: 5,
22495
+ TWIPS: 6,
22496
+ ISOTROPIC: 7,
22497
+ ANISOTROPIC: 8
22498
+ }, et = () => ({
22499
+ m11: 1,
22500
+ m12: 0,
22501
+ m21: 0,
22502
+ m22: 1,
22503
+ dx: 0,
22504
+ dy: 0
22505
+ });
22506
+ function tt(e, t) {
22507
+ return {
22508
+ m11: e.m11 * t.m11 + e.m21 * t.m12,
22509
+ m12: e.m12 * t.m11 + e.m22 * t.m12,
22510
+ m21: e.m11 * t.m21 + e.m21 * t.m22,
22511
+ m22: e.m12 * t.m21 + e.m22 * t.m22,
22512
+ dx: e.m11 * t.dx + e.m21 * t.dy + e.dx,
22513
+ dy: e.m12 * t.dx + e.m22 * t.dy + e.dy
22514
+ };
22515
+ }
22516
+ var nt = class {
22517
+ p;
22518
+ constructor(e, t, n) {
22519
+ this.dv = e, this.end = n, this.p = t;
22520
+ }
22521
+ get pos() {
22522
+ return this.p;
22523
+ }
22524
+ set pos(e) {
22525
+ this.p = e;
22526
+ }
22527
+ get remaining() {
22528
+ return this.end - this.p;
22529
+ }
22530
+ i16() {
22531
+ let e = this.dv.getInt16(this.p, !0);
22532
+ return this.p += 2, e;
22533
+ }
22534
+ i32() {
22535
+ let e = this.dv.getInt32(this.p, !0);
22536
+ return this.p += 4, e;
22537
+ }
22538
+ u32() {
22539
+ let e = this.dv.getUint32(this.p, !0);
22540
+ return this.p += 4, e;
22541
+ }
22542
+ f32() {
22543
+ let e = this.dv.getFloat32(this.p, !0);
22544
+ return this.p += 4, e;
22545
+ }
22546
+ xform() {
22547
+ return {
22548
+ m11: this.f32(),
22549
+ m12: this.f32(),
22550
+ m21: this.f32(),
22551
+ m22: this.f32(),
22552
+ dx: this.f32(),
22553
+ dy: this.f32()
22554
+ };
22555
+ }
22556
+ skip(e) {
22557
+ this.p += e;
22558
+ }
22559
+ };
22560
+ function rt(e, t, n) {
22561
+ return e.wt.m11 * t + e.wt.m21 * n + e.wt.dx;
22562
+ }
22563
+ function it(e, t, n) {
22564
+ return e.wt.m12 * t + e.wt.m22 * n + e.wt.dy;
22565
+ }
22566
+ function at(e) {
22567
+ return e.winExtX === 0 ? 1 : e.vpExtX / e.winExtX;
22568
+ }
22569
+ function ot(e) {
22570
+ return e.winExtY === 0 ? 1 : e.vpExtY / e.winExtY;
22571
+ }
22572
+ function st(e) {
22573
+ return Math.min(Math.abs(at(e)), Math.abs(ot(e)));
22574
+ }
22575
+ function ct(e) {
22576
+ return e.mapMode === j.ISOTROPIC ? at(e) < 0 ? -st(e) : st(e) : at(e);
22577
+ }
22578
+ function lt(e) {
22579
+ return e.mapMode === j.ISOTROPIC ? ot(e) < 0 ? -st(e) : st(e) : ot(e);
22580
+ }
22581
+ function ut(e, t) {
22582
+ return (t - e.winOrgX) * ct(e) + e.vpOrgX;
22583
+ }
22584
+ function dt(e, t) {
22585
+ return (t - e.winOrgY) * lt(e) + e.vpOrgY;
22586
+ }
22587
+ function M(e, t, n) {
22588
+ let r = ut(e, rt(e, t, n)), i = dt(e, it(e, t, n));
22589
+ return [(r - e.left) * e.W / e.boundsW, (i - e.top) * e.H / e.boundsH];
22590
+ }
22591
+ function ft(e) {
22592
+ return (Math.hypot(e.wt.m11, e.wt.m12) + Math.hypot(e.wt.m21, e.wt.m22)) / 2;
22593
+ }
22594
+ function pt(e) {
22595
+ return (Math.abs(ct(e)) + Math.abs(lt(e))) / 2;
22596
+ }
22597
+ function mt(e) {
22598
+ return (e.W / e.boundsW + e.H / e.boundsH) / 2;
22599
+ }
22600
+ function ht(e) {
22601
+ return Math.hypot(e.wt.m21, e.wt.m22);
22602
+ }
22603
+ function gt(e) {
22604
+ return e.H / e.boundsH;
22605
+ }
22606
+ function N(e, t) {
22607
+ let n = t * ft(e) * pt(e) * mt(e);
22608
+ return Math.max(.75, n);
22609
+ }
22610
+ function _t(e, t) {
22611
+ if (e.mapMode = t, t === j.TEXT) {
22612
+ 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
+ return;
22614
+ }
22615
+ if (t === j.ANISOTROPIC || t === j.ISOTROPIC || e.devPxPerMmX <= 0 || e.devPxPerMmY <= 0) return;
22616
+ 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
+ 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
+ }
22619
+ var vt = {
22620
+ [A.WHITE_BRUSH]: {
22621
+ kind: "brush",
22622
+ fill: "#ffffff"
22623
+ },
22624
+ [A.LTGRAY_BRUSH]: {
22625
+ kind: "brush",
22626
+ fill: "#c0c0c0"
22627
+ },
22628
+ [A.GRAY_BRUSH]: {
22629
+ kind: "brush",
22630
+ fill: "#808080"
22631
+ },
22632
+ [A.DKGRAY_BRUSH]: {
22633
+ kind: "brush",
22634
+ fill: "#404040"
22635
+ },
22636
+ [A.BLACK_BRUSH]: {
22637
+ kind: "brush",
22638
+ fill: "#000000"
22639
+ },
22640
+ [A.NULL_BRUSH]: {
22641
+ kind: "brush",
22642
+ fill: null
22643
+ }
22644
+ }, yt = {
22645
+ [A.WHITE_PEN]: {
22646
+ kind: "pen",
22647
+ stroke: "#ffffff",
22648
+ width: 1
22649
+ },
22650
+ [A.BLACK_PEN]: {
22651
+ kind: "pen",
22652
+ stroke: "#000000",
22653
+ width: 1
22654
+ },
22655
+ [A.NULL_PEN]: {
22656
+ kind: "pen",
22657
+ stroke: null,
22658
+ width: 1
22659
+ },
22660
+ [A.DC_PEN]: {
22661
+ kind: "pen",
22662
+ stroke: "#000000",
22663
+ width: 1
22664
+ }
22665
+ };
22666
+ function bt(e, t) {
22667
+ let n = vt[t];
22668
+ if (n) {
22669
+ e.curBrush = n;
22670
+ return;
22671
+ }
22672
+ let r = yt[t];
22673
+ if (r) {
22674
+ e.curPen = r;
22675
+ return;
22676
+ }
22677
+ t === A.DC_BRUSH && (e.curBrush = e.curBrush ?? {
22678
+ kind: "brush",
22679
+ fill: "#000000"
22680
+ });
22681
+ }
22682
+ function xt(e) {
22683
+ let t = 0, n = 0, r = 0, i = 0;
22684
+ 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
+ if (i === 0) return "#808080";
22686
+ let a = (e) => Math.round(e / i).toString(16).padStart(2, "0");
22687
+ return `#${a(t)}${a(n)}${a(r)}`;
22688
+ }
22689
+ var P = (e) => [e.i16(), e.i16()], F = (e) => [e.i32(), e.i32()];
22690
+ function St(e, t, n) {
22691
+ t.skip(16);
22692
+ 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;
22700
+ }
22701
+ i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0, e.curX = a, e.curY = o;
22702
+ }
22703
+ function Ct(e, t, n) {
22704
+ t.skip(16);
22705
+ let r = t.u32();
22706
+ if (r < 1 || r > 1048576) return;
22707
+ let { ctx: i } = e, a = e.curPen != null && e.curPen.stroke != null;
22708
+ if (a) {
22709
+ i.beginPath();
22710
+ let [t, n] = M(e, e.curX, e.curY);
22711
+ i.moveTo(t, n);
22712
+ }
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);
22717
+ i.lineTo(t, n);
22718
+ }
22719
+ e.curX = r, e.curY = o;
22720
+ }
22721
+ a && e.curPen && (i.strokeStyle = e.curPen.stroke, i.lineWidth = N(e, e.curPen.width), i.stroke(), e.drew = !0);
22722
+ }
22723
+ function wt(e, t, n) {
22724
+ t.skip(16);
22725
+ let r = t.u32();
22726
+ if (r < 2 || r > 1048576) return;
22727
+ let { ctx: i } = e;
22728
+ 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);
22733
+ }
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)));
22735
+ }
22736
+ function Tt(e, t, n, r) {
22737
+ t.skip(16);
22738
+ let i = t.u32();
22739
+ 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]);
22744
+ return;
22745
+ }
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]);
22751
+ }
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];
22755
+ 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]);
22759
+ }
22760
+ e.curX = r[0], e.curY = r[1];
22761
+ }
22762
+ o && e.curPen && (s.strokeStyle = e.curPen.stroke, s.lineWidth = N(e, e.curPen.width), s.stroke(), e.drew = !0);
22763
+ }
22764
+ function Et(e, t, n, r) {
22765
+ t.skip(16);
22766
+ let i = t.u32(), a = t.u32();
22767
+ if (i <= 0 || i > 65536 || a <= 0 || a > 2097152) return;
22768
+ let o = [];
22769
+ for (let e = 0; e < i; e++) {
22770
+ if (t.remaining < 4) return;
22771
+ o.push(t.u32());
22772
+ }
22773
+ let { ctx: s } = e;
22774
+ e.inPath || s.beginPath();
22775
+ let c = !1;
22776
+ for (let i of o) {
22777
+ if (i < 2) {
22778
+ for (let e = 0; e < i && t.remaining >= 4; e++) n(t);
22779
+ continue;
22780
+ }
22781
+ 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);
22784
+ }
22785
+ r && s.closePath(), c = !0;
22786
+ }
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));
22788
+ }
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));
22792
+ }
22793
+ function Ot(t) {
22794
+ let n = t.u32(), r = t.u32(), i = t.i32();
22795
+ t.i32();
22796
+ let a = t.u32();
22797
+ return [n, {
22798
+ kind: "pen",
22799
+ stroke: (r & 255) == 5 ? null : e(a),
22800
+ width: Math.abs(i)
22801
+ }];
22802
+ }
22803
+ function kt(t) {
22804
+ let n = t.u32();
22805
+ t.skip(16);
22806
+ let r = t.u32(), i = t.u32();
22807
+ t.u32();
22808
+ let a = t.u32();
22809
+ return [n, {
22810
+ kind: "pen",
22811
+ stroke: (r & 255) == 5 ? null : e(a),
22812
+ width: Math.abs(i)
22813
+ }];
22814
+ }
22815
+ function At(t) {
22816
+ let n = t.u32(), r = t.u32(), i = t.u32();
22817
+ return t.u32(), [n, {
22818
+ kind: "brush",
22819
+ fill: r === 1 ? null : e(i)
22820
+ }];
22821
+ }
22822
+ function jt(e, t, n) {
22823
+ let r = e.u32();
22824
+ e.u32();
22825
+ let i = e.u32(), o = e.u32(), s = e.u32(), c = e.u32(), l = "#808080";
22826
+ try {
22827
+ let e = a(t, n + i, o, n + s, c);
22828
+ e && (l = xt(e));
22829
+ } catch {}
22830
+ return [r, {
22831
+ kind: "brush",
22832
+ fill: l
22833
+ }];
22834
+ }
22835
+ function Mt(e, t, n) {
22836
+ 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
+ for (let e = 0; e < 32; e++) {
22838
+ let n = i + 28 + e * 2;
22839
+ if (n + 2 > t.byteLength) break;
22840
+ let r = t.getUint16(n, !0);
22841
+ if (r === 0) break;
22842
+ l += String.fromCharCode(r);
22843
+ }
22844
+ return [r, {
22845
+ kind: "font",
22846
+ height: Math.abs(a),
22847
+ weight: s,
22848
+ italic: c !== 0,
22849
+ face: l,
22850
+ escapement: o
22851
+ }];
22852
+ }
22853
+ function Nt(e, t, n, r) {
22854
+ t.skip(16), t.u32(), t.f32(), t.f32();
22855
+ let i = t.i32(), a = t.i32(), o = t.u32(), s = t.u32();
22856
+ if (t.u32(), o <= 0 || o > 65536) return;
22857
+ let c = "";
22858
+ for (let e = 0; e < o; e++) {
22859
+ let t = r + s + e * 2;
22860
+ if (t + 2 > n.byteLength) break;
22861
+ c += String.fromCharCode(n.getUint16(t, !0));
22862
+ }
22863
+ if (c.length === 0) return;
22864
+ let l = e.curFont, u = Math.abs(l?.height ?? 0) * ht(e) * Math.abs(lt(e)) * gt(e);
22865
+ if (!Number.isFinite(u) || u < 1) return;
22866
+ let { ctx: d } = e, [f, p] = M(e, i, a);
22867
+ d.fillStyle = e.textColor;
22868
+ let m = l && l.weight >= 700 ? "bold " : "";
22869
+ d.font = `${l?.italic ? "italic " : ""}${m}${u}px ${l?.face || "sans-serif"}`;
22870
+ let h = e.textAlign & 6;
22871
+ d.textAlign = h === 2 ? "right" : h === 6 ? "center" : "left", d.textBaseline = (e.textAlign & 24) == 24 ? "alphabetic" : "top";
22872
+ let g = l?.escapement ?? 0;
22873
+ try {
22874
+ if (g !== 0) {
22875
+ d.save();
22876
+ try {
22877
+ d.translate(f, p), d.rotate(-g / 10 * (Math.PI / 180)), d.fillText(c, 0, 0);
22878
+ } finally {
22879
+ d.restore();
22880
+ }
22881
+ } else d.fillText(c, f, p);
22882
+ e.drew = !0;
22883
+ } catch {}
22884
+ }
22885
+ function Pt(e, t, n, r, i, s, c, l, u, d, f) {
22886
+ if (i === 0 || c === 0) return;
22887
+ let p = a(t, n + r, i, n + s, c);
22888
+ if (!p) return;
22889
+ let [m, h] = M(e, l, u), [g, _] = M(e, d, f);
22890
+ o(e.ctx, p, m, h, g, _) && (e.drew = !0);
22891
+ }
22892
+ function Ft(e, t, n, r) {
22893
+ t.skip(16);
22894
+ 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);
22896
+ }
22897
+ function It(e, t, n, r) {
22898
+ t.skip(16);
22899
+ let i = t.i32(), a = t.i32();
22900
+ t.i32(), t.i32(), t.i32(), t.i32();
22901
+ let o = t.u32(), s = t.u32(), c = t.u32(), l = t.u32();
22902
+ t.u32(), t.u32();
22903
+ let u = t.i32(), d = t.i32();
22904
+ Pt(e, n, r, o, s, c, l, i, a, i + u, a + d);
22905
+ }
22906
+ function Lt(t, n, r, a) {
22907
+ if (!i(t) || r <= 0 || a <= 0) return !1;
22908
+ let o = new DataView(t.buffer, t.byteOffset, t.byteLength), s = {
22909
+ ctx: n,
22910
+ W: r,
22911
+ H: a,
22912
+ left: 0,
22913
+ top: 0,
22914
+ boundsW: r,
22915
+ boundsH: a,
22916
+ wt: et(),
22917
+ mapMode: j.TEXT,
22918
+ winOrgX: 0,
22919
+ winOrgY: 0,
22920
+ winExtX: 1,
22921
+ winExtY: 1,
22922
+ vpOrgX: 0,
22923
+ vpOrgY: 0,
22924
+ vpExtX: 1,
22925
+ vpExtY: 1,
22926
+ devPxPerMmX: 0,
22927
+ devPxPerMmY: 0,
22928
+ objects: /* @__PURE__ */ new Map(),
22929
+ curPen: null,
22930
+ curBrush: null,
22931
+ curFont: null,
22932
+ textColor: "#000000",
22933
+ bkMode: 1,
22934
+ textAlign: 0,
22935
+ fillRule: "nonzero",
22936
+ curX: 0,
22937
+ curY: 0,
22938
+ stack: [],
22939
+ 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);
22944
+ if (i < 8 || i & 3) break;
22945
+ let a = c + i;
22946
+ if (a > t.length || r === k.EOF) break;
22947
+ let l = new nt(o, c + 8, a);
22948
+ try {
22949
+ switch (r) {
22950
+ 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;
22957
+ }
22958
+ }
22959
+ break;
22960
+ }
22961
+ case k.SETWORLDTRANSFORM:
22962
+ s.wt = l.xform();
22963
+ break;
22964
+ 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);
22967
+ break;
22968
+ }
22969
+ case k.SETMAPMODE:
22970
+ _t(s, l.u32());
22971
+ break;
22972
+ case k.SETWINDOWORGEX:
22973
+ s.winOrgX = l.i32(), s.winOrgY = l.i32();
22974
+ break;
22975
+ case k.SETWINDOWEXTEX: {
22976
+ let e = l.i32(), t = l.i32();
22977
+ e !== 0 && (s.winExtX = e), t !== 0 && (s.winExtY = t);
22978
+ break;
22979
+ }
22980
+ case k.SETVIEWPORTORGEX:
22981
+ s.vpOrgX = l.i32(), s.vpOrgY = l.i32();
22982
+ break;
22983
+ case k.SETVIEWPORTEXTEX: {
22984
+ let e = l.i32(), t = l.i32();
22985
+ e !== 0 && (s.vpExtX = e), t !== 0 && (s.vpExtY = t);
22986
+ break;
22987
+ }
22988
+ 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);
22991
+ break;
22992
+ }
22993
+ 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);
22996
+ break;
22997
+ }
22998
+ 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
23019
+ });
23020
+ break;
23021
+ 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);
23025
+ break;
23026
+ }
23027
+ case k.BEGINPATH:
23028
+ s.ctx.beginPath(), s.inPath = !0;
23029
+ break;
23030
+ case k.CLOSEFIGURE:
23031
+ s.inPath && s.ctx.closePath();
23032
+ break;
23033
+ case k.ENDPATH:
23034
+ s.inPath = !1;
23035
+ break;
23036
+ case k.SELECTCLIPPATH:
23037
+ try {
23038
+ s.ctx.clip(s.fillRule);
23039
+ } catch {}
23040
+ break;
23041
+ case k.SELECTOBJECT: {
23042
+ let e = l.u32();
23043
+ if (e & 2147483648) bt(s, e >>> 0);
23044
+ 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);
23047
+ }
23048
+ break;
23049
+ }
23050
+ 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));
23053
+ break;
23054
+ }
23055
+ case k.CREATEPEN: {
23056
+ let [e, t] = Ot(l);
23057
+ s.objects.set(e, t);
23058
+ break;
23059
+ }
23060
+ case k.EXTCREATEPEN: {
23061
+ let [e, t] = kt(l);
23062
+ s.objects.set(e, t);
23063
+ break;
23064
+ }
23065
+ case k.CREATEBRUSHINDIRECT: {
23066
+ let [e, t] = At(l);
23067
+ s.objects.set(e, t);
23068
+ break;
23069
+ }
23070
+ case k.CREATEMONOBRUSH:
23071
+ case k.CREATEDIBPATTERNBRUSHPT: {
23072
+ let [e, t] = jt(l, o, c);
23073
+ s.objects.set(e, t);
23074
+ break;
23075
+ }
23076
+ case k.EXTCREATEFONTINDIRECTW: {
23077
+ let [e, t] = Mt(l, o, c);
23078
+ s.objects.set(e, t);
23079
+ break;
23080
+ }
23081
+ case k.POLYLINE16:
23082
+ St(s, l, P);
23083
+ break;
23084
+ case k.POLYLINE:
23085
+ St(s, l, F);
23086
+ break;
23087
+ case k.POLYLINETO16:
23088
+ Ct(s, l, P);
23089
+ break;
23090
+ case k.POLYLINETO:
23091
+ Ct(s, l, F);
23092
+ break;
23093
+ case k.POLYGON16:
23094
+ wt(s, l, P);
23095
+ break;
23096
+ case k.POLYGON:
23097
+ wt(s, l, F);
23098
+ break;
23099
+ case k.POLYBEZIER16:
23100
+ Tt(s, l, P, !1);
23101
+ break;
23102
+ case k.POLYBEZIER:
23103
+ Tt(s, l, F, !1);
23104
+ break;
23105
+ case k.POLYBEZIERTO16:
23106
+ Tt(s, l, P, !0);
23107
+ break;
23108
+ case k.POLYBEZIERTO:
23109
+ Tt(s, l, F, !0);
23110
+ break;
23111
+ case k.POLYPOLYGON16:
23112
+ Et(s, l, P, !0);
23113
+ break;
23114
+ case k.POLYPOLYGON:
23115
+ Et(s, l, F, !0);
23116
+ break;
23117
+ case k.POLYPOLYLINE16:
23118
+ Et(s, l, P, !1);
23119
+ break;
23120
+ case k.POLYPOLYLINE:
23121
+ Et(s, l, F, !1);
23122
+ break;
23123
+ case k.MOVETOEX:
23124
+ s.curX = l.i32(), s.curY = l.i32();
23125
+ break;
23126
+ 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;
23131
+ }
23132
+ s.curX = e, s.curY = t;
23133
+ break;
23134
+ }
23135
+ case k.RECTANGLE:
23136
+ Dt(s, l.i32(), l.i32(), l.i32(), l.i32());
23137
+ break;
23138
+ 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);
23141
+ break;
23142
+ }
23143
+ case k.SETPOLYFILLMODE:
23144
+ s.fillRule = l.u32() === 1 ? "evenodd" : "nonzero";
23145
+ break;
23146
+ case k.SETTEXTCOLOR:
23147
+ s.textColor = e(l.u32());
23148
+ break;
23149
+ case k.SETTEXTALIGN:
23150
+ s.textAlign = l.u32();
23151
+ break;
23152
+ case k.SETBKMODE:
23153
+ s.bkMode = l.u32();
23154
+ break;
23155
+ case k.EXTTEXTOUTW:
23156
+ Nt(s, l, o, c);
23157
+ break;
23158
+ case k.BITBLT:
23159
+ Ft(s, l, o, c);
23160
+ break;
23161
+ case k.STRETCHDIBITS:
23162
+ It(s, l, o, c);
23163
+ break;
23164
+ default: break;
23165
+ }
23166
+ } catch {}
23167
+ c = a;
23168
+ }
23169
+ return s.drew;
23170
+ }
23171
+ async function Rt(e, t, n) {
23172
+ if (!i(e) || t <= 0 || n <= 0) return null;
23173
+ let a = r(t, n);
23174
+ if (!a) return null;
23175
+ let o = a.getContext("2d");
23176
+ return !o || (o.lineJoin = "round", o.lineCap = "round", !Lt(e, o, t, n)) ? null : createImageBitmap(a);
23177
+ }
23178
+ //#endregion
23179
+ //#region packages/core/src/image/image-bitmap-lifecycle.ts
23180
+ function zt(e) {
23181
+ let t = e.close;
23182
+ typeof t == "function" && t.call(e);
23183
+ }
23184
+ //#endregion
23185
+ //#region packages/core/src/image/raster-dimensions.ts
23186
+ function Bt(e, t) {
23187
+ return e[t] << 8 | e[t + 1];
23188
+ }
23189
+ function Vt(e, t) {
23190
+ return (e[t] << 24 | e[t + 1] << 16 | e[t + 2] << 8 | e[t + 3]) >>> 0;
23191
+ }
23192
+ function I(e, t) {
23193
+ return e[t] | e[t + 1] << 8;
23194
+ }
23195
+ function Ht(e, t) {
23196
+ return e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24 | 0;
23197
+ }
23198
+ function Ut(e) {
23199
+ let t = e.length;
23200
+ 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)
23203
+ } : 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)
23209
+ } : {
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;
23213
+ }
23214
+ function Wt(e, t) {
23215
+ return (e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24) >>> 0;
23216
+ }
23217
+ function Gt(e) {
23218
+ let t = e.length, n = e[12], r = e[13], i = e[14], a = e[15];
23219
+ 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
23222
+ };
23223
+ if (n === 86 && r === 80 && i === 56 && a === 76) {
23224
+ if (t < 25 || e[20] !== 47) return null;
23225
+ let n = Wt(e, 21);
23226
+ return {
23227
+ width: (n & 16383) + 1,
23228
+ height: (n >>> 14 & 16383) + 1
23229
+ };
23230
+ }
23231
+ return n === 86 && r === 80 && i === 56 && a === 88 ? t < 30 ? null : {
23232
+ width: (e[24] | e[25] << 8 | e[26] << 16) + 1,
23233
+ height: (e[27] | e[28] << 8 | e[29] << 16) + 1
23234
+ } : null;
23235
+ }
23236
+ function Kt(e) {
23237
+ return e.length >= 6 && e[0] === 69 && e[1] === 120 && e[2] === 105 && e[3] === 102 && e[4] === 0 && e[5] === 0;
23238
+ }
23239
+ function qt(e) {
23240
+ if (e.length < 14 || !Kt(e)) return null;
23241
+ let t = e[6] === 73 && e[7] === 73, n = e[6] === 77 && e[7] === 77;
23242
+ if (!t && !n) return null;
23243
+ let r = new DataView(e.buffer, e.byteOffset, e.byteLength);
23244
+ if (r.getUint16(8, t) !== 42) return null;
23245
+ let i = r.getUint32(10, t), a = 6 + i;
23246
+ if (i < 8 || a + 2 > e.length) return null;
23247
+ let o = r.getUint16(a, t), s = a + 2, c = Math.min(o, Math.floor((e.length - s) / 12));
23248
+ for (let e = 0; e < c; e++) {
23249
+ let n = s + e * 12;
23250
+ if (r.getUint16(n, t) !== 274 || r.getUint16(n + 2, t) !== 3 || r.getUint32(n + 4, t) !== 1) continue;
23251
+ let i = r.getUint16(n + 8, t);
23252
+ if (i >= 1 && i <= 8) return i;
23253
+ }
23254
+ return null;
23255
+ }
23256
+ function L(e, t) {
23257
+ return t !== null && t >= 5 && t <= 8 ? {
23258
+ width: e.height,
23259
+ height: e.width
23260
+ } : e;
23261
+ }
23262
+ function Jt(e) {
23263
+ let t = e.length, n = 2, r = null, i = !1, a = null;
23264
+ for (; n + 1 < t;) {
23265
+ if (e[n] !== 255) {
23266
+ n += 1;
23267
+ continue;
23268
+ }
23269
+ let o = e[n + 1];
23270
+ if (o === 255) {
23271
+ n += 1;
23272
+ continue;
23273
+ }
23274
+ if (o === 216 || o === 1 || o >= 208 && o <= 215) {
23275
+ n += 2;
23276
+ continue;
23277
+ }
23278
+ if (o === 217 || o === 218) return a ? L(a, r) : null;
23279
+ if (n + 3 >= t) return null;
23280
+ let s = Bt(e, n + 2);
23281
+ if (o >= 192 && o <= 207 && o !== 196 && o !== 200 && o !== 204) {
23282
+ if (s < 7 || n + 8 >= t) return null;
23283
+ let r = Bt(e, n + 5), i = Bt(e, n + 7);
23284
+ a ??= {
23285
+ width: i,
23286
+ height: r
23287
+ };
23288
+ }
23289
+ if (s < 2) return null;
23290
+ let c = n + 2 + s;
23291
+ if (c > t) return a ? L(a, r) : null;
23292
+ if (o === 225 && !i) {
23293
+ let t = e.subarray(n + 4, c);
23294
+ Kt(t) && (i = !0, r = qt(t));
23295
+ }
23296
+ n = c;
23297
+ }
23298
+ return a ? L(a, r) : null;
23299
+ }
23300
+ function Yt(e) {
23301
+ let { width: t, height: n } = e;
23302
+ return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 32767 || n > 32767 ? !0 : t * n > u;
23303
+ }
23304
+ function Xt(e) {
23305
+ let { width: t, height: n } = e;
23306
+ return !Number.isFinite(t) || !Number.isFinite(n) || t <= 0 || n <= 0 || t > 134217728 || n > 134217728 ? !0 : t * n > p;
23307
+ }
23308
+ //#endregion
23309
+ //#region packages/core/src/image/raster-blob-inspection.ts
23310
+ function Zt(e, t = !1) {
23311
+ return e !== null && e !== "wmf" && e !== "emf" && (e !== "tiff" || t);
23312
+ }
23313
+ var Qt = 64 * 1024;
23314
+ function $t(e) {
23315
+ 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;
23316
+ }
23317
+ function en(e) {
23318
+ return e >= 192 && e <= 207 && e !== 196 && e !== 200 && e !== 204;
23319
+ }
23320
+ async function tn(e) {
23321
+ 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;
23322
+ try {
23323
+ for (;;) {
23324
+ let { value: e, done: m } = await t.read();
23325
+ if (m) return l ? L(l, f) : null;
23326
+ for (let m of e) {
23327
+ if (o) {
23328
+ if (o[s++] = m, s === o.length) {
23329
+ let e = o[1] << 8 | o[2], n = o[3] << 8 | o[4];
23330
+ if (l ??= {
23331
+ width: n,
23332
+ height: e
23333
+ }, o = null, s = 0, p) return await t.cancel(), L(l, f);
23334
+ a = c, c = 0;
23335
+ }
23336
+ continue;
23337
+ }
23338
+ if (u) {
23339
+ 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);
23340
+ continue;
23341
+ }
23342
+ if (a > 0) {
23343
+ a--;
23344
+ continue;
23345
+ }
23346
+ if (r >= 0) {
23347
+ if (i < 0) {
23348
+ i = m;
23349
+ continue;
23350
+ }
23351
+ let e = i << 8 | m;
23352
+ if (e < 2) return null;
23353
+ if (en(r)) {
23354
+ if (e < 7) return null;
23355
+ l ? a = e - 2 : (o = new Uint8Array(5), s = 0, c = e - 7);
23356
+ } else r === 225 && !p && e > 2 ? (u = new Uint8Array(e - 2), d = 0) : a = e - 2;
23357
+ r = -1, i = -1;
23358
+ continue;
23359
+ }
23360
+ if (!n) {
23361
+ m === 255 && (n = !0);
23362
+ continue;
23363
+ }
23364
+ if (m !== 255 && (n = !1, m !== 0)) {
23365
+ if (m === 217 || m === 218) return await t.cancel(), l ? L(l, f) : null;
23366
+ m === 216 || m === 1 || m >= 208 && m <= 215 || (r = m);
23367
+ }
23368
+ }
23369
+ }
23370
+ } finally {
23371
+ t.releaseLock();
23372
+ }
23373
+ }
23374
+ async function nn(e, t) {
23375
+ if (t.length < 8 || !S(t)) return null;
23376
+ let n = t[0] === 73, r = new DataView(t.buffer, t.byteOffset, t.byteLength).getUint32(4, n);
23377
+ if (!Number.isSafeInteger(r) || r < 8 || r > e.size - 2) return null;
23378
+ let i = new Uint8Array(await e.slice(r, r + 2).arrayBuffer());
23379
+ if (i.length !== 2) return null;
23380
+ let a = new DataView(i.buffer, i.byteOffset, 2).getUint16(0, n), o = a * 12;
23381
+ if (r + 2 + o > e.size) return null;
23382
+ let s = new Uint8Array(await e.slice(r + 2, r + 2 + o).arrayBuffer()), c = new DataView(s.buffer, s.byteOffset, s.byteLength), l, u;
23383
+ for (let e = 0; e < a; e++) {
23384
+ let t = e * 12, r = c.getUint16(t, n);
23385
+ if (r !== 256 && r !== 257) continue;
23386
+ let i = c.getUint16(t + 2, n);
23387
+ if (c.getUint32(t + 4, n) !== 1 || i !== 1 && i !== 3 && i !== 4) return null;
23388
+ let a = i === 1 ? c.getUint8(t + 8) : i === 3 ? c.getUint16(t + 8, n) : c.getUint32(t + 8, n);
23389
+ r === 256 ? l = a : u = a;
23390
+ }
23391
+ return l === void 0 || u === void 0 ? null : {
23392
+ width: l,
23393
+ height: u
23394
+ };
23395
+ }
23396
+ async function rn(e, t) {
23397
+ let n = t ?? new Uint8Array(await e.slice(0, Qt).arrayBuffer()), r = $t(n);
23398
+ if (!r) return {
23399
+ format: null,
23400
+ dimensions: null
23401
+ };
23402
+ let i = Ut(n);
23403
+ return r === "jpeg" ? {
23404
+ format: r,
23405
+ dimensions: await tn(e) ?? i
23406
+ } : i ? {
23407
+ format: r,
23408
+ dimensions: i
23409
+ } : r === "tiff" ? {
23410
+ format: r,
23411
+ dimensions: await nn(e, n)
23412
+ } : {
23413
+ format: r,
23414
+ dimensions: null
23415
+ };
23416
+ }
23417
+ //#endregion
23418
+ //#region packages/core/src/image/optional-image-fallback.ts
23419
+ var an = class e extends Error {
23420
+ code = "ooxml-optional-image-codec-unavailable";
23421
+ constructor(t) {
23422
+ super(`${t.toUpperCase()} image requires an optional codec`), this.codec = t, this.name = "OptionalImageCodecUnavailableError", Object.setPrototypeOf(this, e.prototype);
23423
+ }
23424
+ };
23425
+ function on(e, t) {
23426
+ if (typeof e != "object" || !e) return !1;
23427
+ try {
23428
+ let n = e;
23429
+ return n.code === "ooxml-optional-image-codec-unavailable" && n.codec === "tiff" && (t === void 0 || n.codec === t);
23430
+ } catch {
23431
+ return !1;
23432
+ }
23433
+ }
23434
+ var sn = { tiff: "TIFF image unavailable" };
23435
+ function cn(e, t, n) {
23436
+ if (!(![
23437
+ n.x,
23438
+ n.y,
23439
+ n.width,
23440
+ n.height
23441
+ ].every(Number.isFinite) || n.width <= 0 || n.height <= 0)) {
23442
+ e.save();
23443
+ try {
23444
+ e.fillStyle = "#888", e.font = "11px sans-serif", e.textAlign = "center", e.textBaseline = "middle";
23445
+ let r = sn[t];
23446
+ e.fillText(r, n.x + n.width / 2, n.y + n.height / 2, n.width);
23447
+ } finally {
23448
+ e.restore();
23449
+ }
23450
+ }
23451
+ }
23452
+ //#endregion
23453
+ //#region packages/core/src/image/raster-or-metafile.ts
23454
+ function ln(e, t) {
23455
+ return e.width <= 0 || e.height <= 0 || e.width > 32767 || e.height > 32767 || e.width * e.height > t;
23456
+ }
23457
+ function un(e) {
23458
+ let t = e.split(";", 1)[0]?.trim().toLowerCase();
23459
+ return t === "image/tiff" || t === "image/x-tiff";
23460
+ }
23461
+ function dn(e, t, n, r = !1) {
23462
+ let i = {
23463
+ retainedDimensions: e,
23464
+ resizeOptions: null
23465
+ }, a = x(e, typeof t == "number" && Number.isFinite(t) && t > 0 ? t : void 0, typeof n == "number" && Number.isFinite(n) && n > 0 ? n : void 0, r);
23466
+ return a ? {
23467
+ retainedDimensions: a,
23468
+ resizeOptions: {
23469
+ resizeWidth: a.width,
23470
+ resizeQuality: "high"
23471
+ }
23472
+ } : i;
23473
+ }
23474
+ function fn(e, t, n) {
23475
+ let r = Math.max(e.width, e.height);
23476
+ if (!Number.isFinite(r) || r > t) return new h("image-dimension", t, Number.isFinite(r) ? r : 2 ** 53 - 1);
23477
+ let i = e.width * e.height;
23478
+ return new h("image-pixels", n, Number.isSafeInteger(i) && i >= 0 ? i : 2 ** 53 - 1);
23479
+ }
23480
+ async function pn(e, t = {}) {
23481
+ return mn(e, t);
23482
+ }
23483
+ async function mn(e, r = {}, a) {
23484
+ 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());
23485
+ if (s(x)) {
23486
+ let { w: r, h: i } = n(o, l);
23487
+ return hn(await t(new Uint8Array(await e.arrayBuffer()), r, i, f), y);
23488
+ }
23489
+ if (i(x)) {
23490
+ let { w: t, h: r } = n(o, l);
23491
+ return hn(await Rt(new Uint8Array(await e.arrayBuffer()), t, r), y);
23492
+ }
23493
+ let C = (a ?? await rn(e, x)).dimensions;
23494
+ if (C && Xt(C)) throw fn(C, c, p);
23495
+ let te = S(x) || un(e.type), w = C ? dn(C, g, _, te) : null;
23496
+ if (w && ln(w.retainedDimensions, y)) throw fn(w.retainedDimensions, m, y);
23497
+ if (te) {
23498
+ if (!h) throw new an("tiff");
23499
+ let t;
23500
+ try {
23501
+ t = await h.render(new Uint8Array(await e.arrayBuffer()), {
23502
+ targetWidthPx: g,
23503
+ targetHeightPx: _,
23504
+ maxRetainedPixels: y
23505
+ });
23506
+ } catch (e) {
23507
+ throw d(e) || ee(e) ? e : new b("TIFF codec failed to decode the image", { cause: e });
23508
+ }
23509
+ if (!t) throw new b("TIFF codec failed to decode the image");
23510
+ return hn(t, y);
23511
+ }
23512
+ return hn(w?.resizeOptions ? await createImageBitmap(e, w.resizeOptions) : await createImageBitmap(e), y);
23513
+ }
23514
+ function hn(e, t = u) {
23515
+ if (!e) return null;
23516
+ let n = {
23517
+ width: Number(e.width),
23518
+ height: Number(e.height)
23519
+ };
23520
+ if (!ln(n, t)) return e;
23521
+ throw zt(e), fn(n, m, t);
23522
+ }
23523
+ //#endregion
22424
23524
  //#region packages/core/src/image/decode-gate.ts
22425
- var Fe = /* @__PURE__ */ new WeakMap();
22426
- async function Ie(e, t) {
22427
- let n = Fe.get(e);
23525
+ var gn = /* @__PURE__ */ new WeakMap();
23526
+ async function _n(e, t) {
23527
+ let n = gn.get(e);
22428
23528
  n || (n = {
22429
23529
  active: 0,
22430
23530
  waiters: []
22431
- }, Fe.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
23531
+ }, gn.set(e, n)), n.active >= 2 || n.waiters.length > 0 ? await new Promise((e) => n.waiters.push(e)) : n.active++;
22432
23532
  try {
22433
23533
  return await Promise.resolve(), await t();
22434
23534
  } finally {
22435
23535
  let t = n.waiters.shift();
22436
- t ? t() : (n.active--, n.active === 0 && Fe.delete(e));
23536
+ t ? t() : (n.active--, n.active === 0 && gn.delete(e));
23537
+ }
23538
+ }
23539
+ //#endregion
23540
+ //#region packages/core/src/image/adaptive-image-budget.ts
23541
+ function vn(e = void 0) {
23542
+ if (e !== void 0 && (typeof e != "object" || !e || Array.isArray(e))) throw TypeError("imageResources must be an object when provided");
23543
+ let t = e?.decodedByteBudget ?? 134217728;
23544
+ if (!Number.isSafeInteger(t) || t < 4 || t > 536870912) throw RangeError(`imageResources.decodedByteBudget must be a safe integer from 4 to ${g} bytes`);
23545
+ let n = e?.strategy ?? "adaptive";
23546
+ if (n !== "adaptive" && n !== "strict") throw TypeError("imageResources.strategy must be 'adaptive' or 'strict'");
23547
+ return Object.freeze({
23548
+ decodedByteBudget: t,
23549
+ strategy: n
23550
+ });
23551
+ }
23552
+ function yn(e) {
23553
+ return Number.isFinite(e) && e > 0 ? Math.max(1, Math.ceil(e)) : 1;
23554
+ }
23555
+ function bn(e) {
23556
+ return Number.isSafeInteger(e) && (e ?? 0) > 0 ? e : 1;
23557
+ }
23558
+ function xn(e, t) {
23559
+ let n = 0;
23560
+ for (let r of e.values()) {
23561
+ let e = t(r), i = e.width * e.height * r.surfaces * 4;
23562
+ n = Math.min(2 ** 53 - 1, n + i);
23563
+ }
23564
+ return n;
23565
+ }
23566
+ function Sn(e, t) {
23567
+ let n = /* @__PURE__ */ new Map();
23568
+ for (let t of e) {
23569
+ let e = yn(t.targetWidthPx), r = yn(t.targetHeightPx), i = t.sourceWidthPx !== void 0 && t.sourceHeightPx !== void 0, a = i ? yn(t.sourceWidthPx) : void 0, o = i ? yn(t.sourceHeightPx) : void 0, s = bn(t.retainedSurfaceCount), c = n.get(t.key);
23570
+ 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, {
23571
+ targetWidth: e,
23572
+ targetHeight: r,
23573
+ sourceWidth: a,
23574
+ sourceHeight: o,
23575
+ surfaces: s
23576
+ });
22437
23577
  }
23578
+ let r = (e) => ({
23579
+ width: e.sourceWidth ?? e.targetWidth,
23580
+ height: e.sourceHeight ?? e.targetHeight
23581
+ }), i = (e, t) => ({
23582
+ width: Math.max(1, Math.floor(e.targetWidth * t)),
23583
+ height: Math.max(1, Math.floor(e.targetHeight * t))
23584
+ }), a = (e, t) => {
23585
+ let n = i(e, t);
23586
+ return e.sourceWidth === void 0 || e.sourceHeight === void 0 ? n : x({
23587
+ width: e.sourceWidth,
23588
+ height: e.sourceHeight
23589
+ }, n.width, n.height) ?? {
23590
+ width: e.sourceWidth,
23591
+ height: e.sourceHeight
23592
+ };
23593
+ }, o = (e, t) => {
23594
+ let n = i(e, t), r = a(e, t);
23595
+ return Object.freeze({
23596
+ ...n,
23597
+ retainedWidth: r.width,
23598
+ retainedHeight: r.height,
23599
+ retainedPixels: r.width * r.height
23600
+ });
23601
+ }, s = xn(n, r), c = [...n.values()].every((e) => {
23602
+ let t = r(e);
23603
+ return t.width * t.height <= 33554432;
23604
+ }) && s <= t.decodedByteBudget, l = xn(n, (e) => a(e, 1));
23605
+ if (c) {
23606
+ let e = /* @__PURE__ */ new Map();
23607
+ for (let [t, i] of n) {
23608
+ let n = r(i);
23609
+ e.set(t, Object.freeze({
23610
+ width: n.width,
23611
+ height: n.height,
23612
+ retainedWidth: n.width,
23613
+ retainedHeight: n.height,
23614
+ retainedPixels: n.width * n.height
23615
+ }));
23616
+ }
23617
+ return Object.freeze({
23618
+ targets: e,
23619
+ idealBytes: l,
23620
+ plannedBytes: s,
23621
+ qualityScale: 1,
23622
+ degraded: !1
23623
+ });
23624
+ }
23625
+ if (t.strategy === "strict" && l > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, l);
23626
+ if (t.strategy === "adaptive") {
23627
+ let e = xn(n, (e) => a(e, 0));
23628
+ if (e > t.decodedByteBudget) throw new h("active-decoded-bytes", t.decodedByteBudget, e);
23629
+ }
23630
+ let u = 1;
23631
+ if (t.strategy === "adaptive" && l > t.decodedByteBudget) {
23632
+ let e = 0, r = 1;
23633
+ for (let i = 0; i < 40; i++) {
23634
+ let i = (e + r) / 2;
23635
+ xn(n, (e) => a(e, i)) <= t.decodedByteBudget ? e = i : r = i;
23636
+ }
23637
+ u = e;
23638
+ }
23639
+ let d = /* @__PURE__ */ new Map();
23640
+ for (let [e, t] of n) d.set(e, o(t, u));
23641
+ let f = xn(n, (e) => a(e, u)), p = u < 1 && n.size > 0 ? Math.min(...[...n.entries()].flatMap(([e, t]) => {
23642
+ let n = d.get(e);
23643
+ return [n.width / t.targetWidth, n.height / t.targetHeight];
23644
+ })) : u;
23645
+ return Object.freeze({
23646
+ targets: d,
23647
+ idealBytes: l,
23648
+ plannedBytes: f,
23649
+ qualityScale: p,
23650
+ degraded: u < 1
23651
+ });
22438
23652
  }
22439
23653
  //#endregion
22440
23654
  //#region packages/core/src/image/bitmap-image-by-path.ts
22441
- var Le = 256, k = /* @__PURE__ */ new WeakMap();
22442
- function Re(e) {
22443
- let t = k.get(e);
23655
+ function Cn(e) {
23656
+ return typeof e == "object" && !!e || typeof e == "function";
23657
+ }
23658
+ var wn = 256, R = /* @__PURE__ */ new WeakMap(), Tn = /* @__PURE__ */ new WeakMap(), En = /* @__PURE__ */ new WeakMap(), Dn = /* @__PURE__ */ new WeakMap();
23659
+ function z(e) {
23660
+ return En.get(e) ?? 0;
23661
+ }
23662
+ function On(e, t) {
23663
+ return Dn.get(e)?.get(t) ?? 0;
23664
+ }
23665
+ function kn(e, t) {
23666
+ if (z(e) !== t) throw Error("Decoded bitmap cache was dropped during raster inspection");
23667
+ }
23668
+ function An(e, t) {
23669
+ return {
23670
+ owner: e,
23671
+ ownerGeneration: z(e),
23672
+ namespace: t,
23673
+ namespaceGeneration: On(e, t)
23674
+ };
23675
+ }
23676
+ function jn(e, t) {
23677
+ if (t.owner !== e || z(e) !== t.ownerGeneration) throw Error("Decoded bitmap cache was dropped during a derived image operation");
23678
+ }
23679
+ function Mn(e, t, n) {
23680
+ if (jn(e, n), n.namespace !== t || On(e, t) !== n.namespaceGeneration) throw Error("Decoded bitmap cache namespace was dropped during a derived image operation");
23681
+ }
23682
+ function Nn(e) {
23683
+ let t = Tn.get(e);
23684
+ if (t) for (let e of t.values()) e.then((e) => {
23685
+ e.initialBlob = void 0;
23686
+ }).catch(() => {});
23687
+ }
23688
+ function Pn(e, t, n, r) {
23689
+ let i = Tn.get(e);
23690
+ i || (i = /* @__PURE__ */ new Map(), Tn.set(e, i));
23691
+ let a = i.get(t);
23692
+ if (a) return a;
23693
+ let o = _n(e, async () => {
23694
+ let e = await r(t, n);
23695
+ return {
23696
+ inspection: await rn(e),
23697
+ initialBlob: e
23698
+ };
23699
+ }).catch((e) => {
23700
+ throw i?.delete(t), e;
23701
+ });
23702
+ return i.set(t, o), o;
23703
+ }
23704
+ async function Fn(e, t, n, r = n) {
23705
+ return (await Pn(r, e, t, n)).inspection;
23706
+ }
23707
+ function In(e) {
23708
+ let t = R.get(e);
22444
23709
  return t || (t = {
22445
23710
  entries: /* @__PURE__ */ new Map(),
22446
- retainedBytes: 0
22447
- }, k.set(e, t)), t;
23711
+ retainedBytes: 0,
23712
+ retainedLimit: f
23713
+ }, R.set(e, t)), t;
22448
23714
  }
22449
- var A = /* @__PURE__ */ new WeakMap(), ze = /* @__PURE__ */ new WeakSet();
22450
- function j(e) {
22451
- !e || ze.has(e) || (ze.add(e), i(e));
23715
+ var Ln = /* @__PURE__ */ new WeakMap(), Rn = /* @__PURE__ */ new WeakMap();
23716
+ async function zn(e, t, n) {
23717
+ let r = Rn.get(e);
23718
+ if (!r) {
23719
+ let i;
23720
+ r = {
23721
+ tail: new Promise((e) => {
23722
+ i = e;
23723
+ }),
23724
+ pending: 1
23725
+ }, Rn.set(e, r);
23726
+ let a;
23727
+ try {
23728
+ return a = Un(e, t), await n();
23729
+ } finally {
23730
+ Nn(e), a?.(), i(), r.pending--, r.pending === 0 && Rn.delete(e);
23731
+ }
23732
+ }
23733
+ let i = r, a = i.tail.catch(() => {}), o, s = new Promise((e) => {
23734
+ o = e;
23735
+ });
23736
+ i.pending++, i.tail = a.then(() => s), await a;
23737
+ let c;
23738
+ try {
23739
+ return c = Un(e, t), await n();
23740
+ } finally {
23741
+ Nn(e), c?.(), o(), i.pending--, i.pending === 0 && Rn.delete(e);
23742
+ }
22452
23743
  }
22453
- function Be(e) {
22454
- j(e);
23744
+ var Bn = /* @__PURE__ */ new WeakSet();
23745
+ function Vn(e) {
23746
+ !e || Bn.has(e) || (Bn.add(e), zt(e));
22455
23747
  }
22456
- function Ve(e) {
22457
- let t = A.get(e);
22458
- t || (t = {
23748
+ function Hn(e) {
23749
+ try {
23750
+ Vn(e);
23751
+ } catch {}
23752
+ }
23753
+ function Un(e, t) {
23754
+ let n = vn(t), r = Ln.get(e);
23755
+ r || (r = {
22459
23756
  count: 0,
22460
23757
  deferred: [],
22461
23758
  activeBytes: 0,
22462
- activeBitmaps: /* @__PURE__ */ new WeakSet()
22463
- }, A.set(e, t));
22464
- let n = t;
22465
- n.count++;
22466
- let r = !1;
23759
+ activeBitmaps: /* @__PURE__ */ new WeakSet(),
23760
+ limits: /* @__PURE__ */ new Map(),
23761
+ activeLimit: n.decodedByteBudget
23762
+ }, Ln.set(e, r));
23763
+ let i = r, a = Symbol("decoded-image-lease");
23764
+ i.limits.set(a, n.decodedByteBudget), i.activeLimit = Math.min(...i.limits.values());
23765
+ let o = In(e);
23766
+ for (o.retainedLimit = i.activeLimit; o.retainedBytes > o.retainedLimit && Kn(e, o););
23767
+ i.count++;
23768
+ let s = !1;
22467
23769
  return () => {
22468
- if (!r && (r = !0, n.count--, !(n.count > 0))) {
22469
- for (let e of n.deferred) e.then((e) => j(e)).catch(() => {});
22470
- n.deferred = [], n.activeBytes = 0, n.activeBitmaps = /* @__PURE__ */ new WeakSet(), A.delete(e);
23770
+ if (s) return;
23771
+ if (s = !0, i.count--, i.limits.delete(a), i.count > 0) {
23772
+ i.activeLimit = Math.min(...i.limits.values());
23773
+ let t = R.get(e);
23774
+ t && (t.retainedLimit = i.activeLimit);
23775
+ return;
22471
23776
  }
23777
+ for (let e of i.deferred) e.then((e) => Vn(e)).catch(() => {});
23778
+ i.deferred = [], i.activeBytes = 0, i.activeBitmaps = /* @__PURE__ */ new WeakSet(), Ln.delete(e);
23779
+ let t = R.get(e);
23780
+ t && (t.retainedLimit = f);
22472
23781
  };
22473
23782
  }
22474
- function He(e) {
23783
+ function Wn(e) {
22475
23784
  if (!e) return 0;
22476
23785
  let t = Number(e.width), n = Number(e.height);
22477
23786
  return Number.isSafeInteger(t) && t > 0 && Number.isSafeInteger(n) && n > 0 ? t * n * 4 : 0;
22478
23787
  }
22479
- function Ue(e, r) {
22480
- if (!r) return;
22481
- let i = A.get(e);
22482
- if (!i || i.count === 0 || i.activeBitmaps.has(r)) return;
22483
- let a = i.activeBytes + He(r);
22484
- if (a > 134217728) throw new t("active-decoded-bytes", n, a);
22485
- i.activeBitmaps.add(r), i.activeBytes = a;
23788
+ function Gn(e, t) {
23789
+ if (!t) return;
23790
+ let n = Ln.get(e);
23791
+ if (!n || n.count === 0 || n.activeBitmaps.has(t)) return;
23792
+ let r = n.activeBytes + Wn(t);
23793
+ if (r > n.activeLimit) throw new h("active-decoded-bytes", n.activeLimit, r);
23794
+ n.activeBitmaps.add(t), n.activeBytes = r;
22486
23795
  }
22487
- function We(e, t, n) {
23796
+ function Kn(e, t, n) {
22488
23797
  let r = [...t.entries].find(([e]) => e !== n);
22489
23798
  if (!r) return !1;
22490
23799
  let [i, a] = r;
22491
- return t.entries.delete(i), t.retainedBytes -= a.weight, Ge(e, a.ownedPromise), !0;
23800
+ return t.entries.delete(i), t.retainedBytes -= a.weight, qn(e, a.ownedPromise), !0;
22492
23801
  }
22493
- function Ge(e, t) {
22494
- let n = A.get(e);
23802
+ function qn(e, t) {
23803
+ let n = Ln.get(e);
22495
23804
  if (n && n.count > 0) {
22496
23805
  n.deferred.push(t);
22497
23806
  return;
22498
23807
  }
22499
- t.then((e) => j(e)).catch(() => {});
23808
+ t.then((e) => Vn(e)).catch(() => {});
23809
+ }
23810
+ function B(e) {
23811
+ if (!(typeof e != "number" || !Number.isFinite(e) || !(e > 0))) return Math.ceil(e);
23812
+ }
23813
+ function Jn(e) {
23814
+ return {
23815
+ ...e,
23816
+ targetWidthPx: B(e.targetWidthPx),
23817
+ targetHeightPx: B(e.targetHeightPx)
23818
+ };
23819
+ }
23820
+ function V(e) {
23821
+ let t = e.maxRetainedPixels;
23822
+ return typeof t == "number" && Number.isSafeInteger(t) && t > 0 ? Math.min(t, f / 4) : f / 4;
23823
+ }
23824
+ function Yn(e) {
23825
+ return V(e) < f / 4;
23826
+ }
23827
+ function Xn(e, t) {
23828
+ if (!e) return null;
23829
+ let n = V(t), r = Number(e.width), i = Number(e.height), a = Math.max(r, i);
23830
+ if (!Number.isFinite(a) || a > 32767) throw new h("image-dimension", m, Number.isFinite(a) ? a : 2 ** 53 - 1);
23831
+ let o = r * i;
23832
+ if (!(r > 0) || !(i > 0) || o > n) throw new h("image-pixels", n, Number.isSafeInteger(o) && o >= 0 ? o : 2 ** 53 - 1);
23833
+ return e;
23834
+ }
23835
+ function H(e, t = {}) {
23836
+ let n = B(t.targetWidthPx), r = B(t.targetHeightPx), i = `${e.length}:${e}`, a = V(t);
23837
+ return n || r ? `raster:${i}:${n ?? 0}x${r ?? 0}:p${a}` : `native:${i}`;
23838
+ }
23839
+ function Zn(e) {
23840
+ return e.inspection.format === "wmf" || e.inspection.format === "emf";
23841
+ }
23842
+ function Qn(e) {
23843
+ let t = n(e.widthPt ?? 0, e.heightPt ?? 0);
23844
+ return {
23845
+ width: t.w,
23846
+ height: t.h,
23847
+ suppressBoundaryFrame: e.suppressBoundaryFrame === !0,
23848
+ pixelLimit: V(e)
23849
+ };
23850
+ }
23851
+ function $n(e, t) {
23852
+ return `metafile:${`${e.length}:${e}`}:s${+!!t.suppressBoundaryFrame}:p${t.pixelLimit}:`;
22500
23853
  }
22501
- function Ke(e, t, r) {
22502
- let i = Re(t), a = i.entries, o = a.get(e);
22503
- if (o) return a.delete(e), a.set(e, o), o.promise.then((e) => (Ue(t, e), e));
22504
- let s = Ie(t, r), c = s.then(({ bitmap: e, owned: t }) => t ? e : null), l = s.then(({ bitmap: e, owned: n }) => {
23854
+ function er(e, t, n) {
23855
+ let r = Qn(t), i = B(n?.width) ?? r.width, a = B(n?.height) ?? r.height;
23856
+ return `${$n(e, r)}${i}x${a}`;
23857
+ }
23858
+ function tr(e, t, n) {
23859
+ let r = Qn(n), i = `${U}${$n(t, r)}`, a;
23860
+ for (let t of R.get(e)?.entries.keys() ?? []) {
23861
+ if (!t.startsWith(i)) continue;
23862
+ let e = /^(\d+)x(\d+)$/.exec(t.slice(i.length));
23863
+ if (!e) continue;
23864
+ let n = Number(e[1]), o = Number(e[2]);
23865
+ if (n < r.width || o < r.height) continue;
23866
+ let s = n * o;
23867
+ (!a || s < a.pixels) && (a = {
23868
+ key: t.slice(U.length),
23869
+ pixels: s
23870
+ });
23871
+ }
23872
+ return a?.key;
23873
+ }
23874
+ function nr(e, t, n, r) {
23875
+ let i = B(n.targetWidthPx), a = B(n.targetHeightPx);
23876
+ if (!i && !a) return;
23877
+ let o = V(n), s = `${U}raster:${`${t.length}:${t}`}:`, c;
23878
+ for (let [t, n] of R.get(e)?.entries ?? []) {
23879
+ if (!t.startsWith(s)) continue;
23880
+ let e = /^(\d+)x(\d+):p(\d+)$/.exec(t.slice(s.length));
23881
+ if (!e) continue;
23882
+ let l = Number(e[1]), u = Number(e[2]);
23883
+ if (Number(e[3]) !== o || l < (i ?? 0) || u < (a ?? 0)) continue;
23884
+ let d = Number(n.bitmap?.width), f = Number(n.bitmap?.height), p = Number.isFinite(d) && d > 0 && Number.isFinite(f) && f > 0, m = r ? Math.min(1, Math.max(l > 0 ? l / r.width : 0, u > 0 ? u / r.height : 0)) : 0, h = p ? d * f : r && m > 0 ? Math.max(1, Math.ceil(r.width * m)) * Math.max(1, Math.ceil(r.height * m)) : l * u;
23885
+ (!c || h < c.pixels) && (c = {
23886
+ key: t.slice(U.length),
23887
+ pixels: h
23888
+ });
23889
+ }
23890
+ return c?.key;
23891
+ }
23892
+ function rr(e, t = {}) {
23893
+ let n = V(t), r = e.inspection.dimensions;
23894
+ if (!r) return !1;
23895
+ let i = B(t.targetWidthPx), a = B(t.targetHeightPx);
23896
+ return (e.inspection.format === "tiff" ? (i !== void 0 || a !== void 0) && (i === void 0 || i < r.width) && (a === void 0 || a < r.height) : i !== void 0 && a !== void 0 && i < r.width && a < r.height) || Yt(r) || r.width * r.height > n;
23897
+ }
23898
+ async function ir(e, t, n, r = {}, i, a) {
23899
+ i && jn(n, i);
23900
+ let o = Jn(r), s = i?.ownerGeneration ?? z(n), c = await Pn(n, e, t, n);
23901
+ i ? jn(n, i) : kn(n, s);
23902
+ let l = Zn(c);
23903
+ if (a) return l ? er(e, o, {
23904
+ width: Number(a.width),
23905
+ height: Number(a.height)
23906
+ }) : H(e, {
23907
+ targetWidthPx: Number(a.width),
23908
+ targetHeightPx: Number(a.height),
23909
+ maxRetainedPixels: o.maxRetainedPixels
23910
+ });
23911
+ if (l) return tr(n, e, o) ?? er(e, o);
23912
+ if (!o.targetWidthPx && !o.targetHeightPx) return H(e);
23913
+ let u = `${U}${H(e)}`;
23914
+ return !Yn(o) && R.get(n)?.entries.has(u) ? H(e) : rr(c, o) ? nr(n, e, o, c.inspection.dimensions) ?? H(e, o) : H(e);
23915
+ }
23916
+ function ar(e, t, n) {
23917
+ let r = In(t), i = r.entries, a = i.get(e);
23918
+ if (a) return i.delete(e), i.set(e, a), a.promise.then((e) => (Gn(t, e), e));
23919
+ let o = _n(t, n), s = o.then(({ bitmap: e, owned: t }) => t ? e : null), c = o.then(({ bitmap: e, owned: n }) => {
22505
23920
  try {
22506
- return Ue(t, e), e;
23921
+ return Gn(t, e), e;
22507
23922
  } catch (t) {
22508
- throw n && j(e), t;
23923
+ throw n && Vn(e), t;
22509
23924
  }
22510
- }), u = {
22511
- promise: l,
22512
- ownedPromise: c,
23925
+ }), l = {
23926
+ promise: c,
23927
+ ownedPromise: s,
22513
23928
  weight: 0
22514
23929
  };
22515
- for (s.then(({ bitmap: r, owned: o }) => {
22516
- if (a.get(e) === u) {
22517
- if (u.bitmap = r, !o) {
22518
- a.delete(e);
23930
+ for (o.then(({ bitmap: n, owned: a }) => {
23931
+ if (i.get(e) === l) {
23932
+ if (l.bitmap = n, !a) {
23933
+ i.delete(e);
22519
23934
  return;
22520
23935
  }
22521
- for (u.weight = He(r), i.retainedBytes += u.weight; i.retainedBytes > n && We(t, i, e););
23936
+ for (l.weight = Wn(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && Kn(t, r, e););
22522
23937
  }
22523
- }).catch(() => {}), l.catch(() => {
22524
- a.get(e) === u && (a.delete(e), i.retainedBytes -= u.weight, Ge(t, c));
22525
- }), a.set(e, u); a.size > Le && We(t, i, e););
22526
- return l;
22527
- }
22528
- var qe = "base", Je = `${qe}:`, Ye = "derived:";
22529
- function Xe(e, t, n, r) {
22530
- return Ke(`${e}:${t}`, n, r);
22531
- }
22532
- function Ze(e, t, n, r) {
22533
- return Xe(`${Ye}${e}`, t, n, r);
22534
- }
22535
- function Qe(e, t, n, i = {}) {
22536
- let { widthPt: a = 0, heightPt: o = 0, suppressBoundaryFrame: s = !1, tiff: c } = i;
22537
- return Xe(qe, e, n, async () => ({
22538
- bitmap: await r(await n(e, t), {
22539
- widthPt: a,
22540
- heightPt: o,
22541
- suppressBoundaryFrame: s,
22542
- tiff: c
23938
+ }).catch(() => {}), c.catch(() => {
23939
+ i.get(e) === l && (i.delete(e), r.retainedBytes -= l.weight, qn(t, s));
23940
+ }), i.set(e, l); i.size > wn && Kn(t, r, e););
23941
+ return c;
23942
+ }
23943
+ var or = "base", U = `${or}:`, sr = "derived:";
23944
+ function cr(e, t, n, r) {
23945
+ return ar(`${e}:${t}`, n, r);
23946
+ }
23947
+ function lr(e, t, n, r, i) {
23948
+ return i && Mn(n, e, i), cr(`${sr}${e}`, t, n, r);
23949
+ }
23950
+ function ur(e, t, n, r = {}, i = n) {
23951
+ let a = Jn(r), { widthPt: o = 0, heightPt: s = 0, suppressBoundaryFrame: c = !1, tiff: l, targetWidthPx: u, targetHeightPx: d, maxRetainedPixels: f, svgDecoder: p } = a;
23952
+ if (t === "image/svg+xml" && p) return cr(or, H(e, a), i, async () => ({
23953
+ bitmap: await p(await n(e, t), {
23954
+ targetWidthPx: u,
23955
+ targetHeightPx: d
22543
23956
  }),
22544
23957
  owned: !0
22545
23958
  }));
23959
+ let m = (r, p) => {
23960
+ let m = p?.initialBlob;
23961
+ return p && (p.initialBlob = void 0), cr(or, r, i, async () => {
23962
+ let r = m ?? await n(e, t), i = {
23963
+ widthPt: o,
23964
+ heightPt: s,
23965
+ suppressBoundaryFrame: c,
23966
+ tiff: l,
23967
+ targetWidthPx: u,
23968
+ targetHeightPx: d,
23969
+ maxRetainedPixels: f
23970
+ };
23971
+ return {
23972
+ bitmap: p ? await mn(r, i, p.inspection) : await pn(r, i),
23973
+ owned: !0
23974
+ };
23975
+ }).then((e) => Xn(e, a));
23976
+ }, h = z(i);
23977
+ return Pn(i, e, t, n).then((t) => {
23978
+ if (kn(i, h), Zn(t)) return m(tr(i, e, a) ?? er(e, a), t);
23979
+ if (!u && !d) return m(H(e), t);
23980
+ let n = `${U}${H(e)}`;
23981
+ return !Yn(a) && R.get(i)?.entries.has(n) ? m(H(e), t) : m(rr(t, a) ? nr(i, e, a, t.inspection.dimensions) ?? H(e, a) : H(e), t);
23982
+ });
22546
23983
  }
22547
- function $e(e, t) {
22548
- return k.get(t)?.entries.get(`${Je}${e}`)?.bitmap;
23984
+ function dr(e, t) {
23985
+ return R.get(t)?.entries.get(`${U}${H(e)}`)?.bitmap;
22549
23986
  }
22550
- function et(e) {
22551
- let t = k.get(e);
23987
+ function fr(e) {
23988
+ if (!Cn(e)) return;
23989
+ En.set(e, z(e) + 1), Dn.delete(e), Tn.delete(e);
23990
+ let t = R.get(e);
22552
23991
  if (t) {
22553
- for (let n of t.entries.values()) Ge(e, n.ownedPromise);
22554
- t.entries.clear(), t.retainedBytes = 0, k.delete(e);
23992
+ for (let n of t.entries.values()) qn(e, n.ownedPromise);
23993
+ t.entries.clear(), t.retainedBytes = 0, R.delete(e);
22555
23994
  }
22556
23995
  }
22557
23996
  //#endregion
22558
23997
  //#region packages/core/src/image/svg-image-by-path.ts
22559
- var M = /* @__PURE__ */ new WeakMap(), tt = 256;
22560
- function nt(e) {
22561
- let t = M.get(e);
22562
- return t || (t = { imgs: /* @__PURE__ */ new Map() }, M.set(e, t)), t;
23998
+ var pr = /* @__PURE__ */ new WeakMap(), mr = 256;
23999
+ function hr(e) {
24000
+ let t = pr.get(e);
24001
+ return t || (t = { imgs: /* @__PURE__ */ new Map() }, pr.set(e, t)), t;
22563
24002
  }
22564
- function rt(e, t) {
22565
- if (typeof Image > "u") return Qe(e, "image/svg+xml", t).then((t) => {
24003
+ function gr(e, t, n = {}) {
24004
+ if (typeof Image > "u") return ur(e, "image/svg+xml", t, {
24005
+ targetWidthPx: n.targetWidthPx,
24006
+ targetHeightPx: n.targetHeightPx,
24007
+ maxRetainedPixels: n.maxRetainedPixels,
24008
+ svgDecoder: n.workerDecoder
24009
+ }).then((t) => {
22566
24010
  if (!t) throw Error(`svg decode failed: ${e}`);
22567
24011
  return t;
22568
24012
  });
22569
- let n = nt(t), r = n.imgs.get(e);
22570
- if (r) return n.imgs.delete(e), n.imgs.set(e, r), r.promise;
22571
- let i = {};
22572
- if (i.promise = Ie(t, async () => {
22573
- if (n.imgs.get(e) !== i) throw Error("SVG decode was superseded before it started");
22574
- let r = await t(e, "image/svg+xml"), a = URL.createObjectURL(r);
24013
+ let r = hr(t), i = r.imgs.get(e);
24014
+ if (i) return r.imgs.delete(e), r.imgs.set(e, i), i.promise;
24015
+ let a = {};
24016
+ if (a.promise = _n(t, async () => {
24017
+ if (r.imgs.get(e) !== a) throw Error("SVG decode was superseded before it started");
24018
+ let n = await t(e, "image/svg+xml"), i = URL.createObjectURL(n);
22575
24019
  try {
22576
24020
  let t = new Image();
22577
24021
  return await new Promise((n, r) => {
22578
24022
  t.onload = () => {
22579
24023
  typeof t.decode == "function" ? t.decode().then(n).catch(n) : n();
22580
- }, t.onerror = () => r(/* @__PURE__ */ Error(`svg load failed: ${e}`)), t.src = a;
24024
+ }, t.onerror = () => r(/* @__PURE__ */ Error(`svg load failed: ${e}`)), t.src = i;
22581
24025
  }), t;
22582
24026
  } finally {
22583
- URL.revokeObjectURL(a);
24027
+ URL.revokeObjectURL(i);
22584
24028
  }
22585
- }), i.promise.catch(() => {
22586
- n.imgs.get(e) === i && n.imgs.delete(e);
22587
- }), n.imgs.set(e, i), n.imgs.size > tt) {
22588
- let e = n.imgs.keys().next().value;
22589
- n.imgs.delete(e);
24029
+ }), a.promise.catch(() => {
24030
+ r.imgs.get(e) === a && r.imgs.delete(e);
24031
+ }), r.imgs.set(e, a), r.imgs.size > mr) {
24032
+ let e = r.imgs.keys().next().value;
24033
+ r.imgs.delete(e);
22590
24034
  }
22591
- return i.promise;
24035
+ return a.promise;
22592
24036
  }
22593
- function it(e) {
22594
- let t = M.get(e);
22595
- t && (t.imgs.clear(), M.delete(e));
24037
+ function _r(e) {
24038
+ let t = pr.get(e);
24039
+ t && (t.imgs.clear(), pr.delete(e));
22596
24040
  }
22597
24041
  //#endregion
22598
24042
  //#region packages/core/src/image/duotone.ts
22599
- function at(e) {
24043
+ function vr(e) {
22600
24044
  return /^[0-9a-fA-F]{6}$/.test(e) ? [
22601
24045
  parseInt(e.slice(0, 2), 16),
22602
24046
  parseInt(e.slice(2, 4), 16),
22603
24047
  parseInt(e.slice(4, 6), 16)
22604
24048
  ] : null;
22605
24049
  }
22606
- function ot(e, t, n) {
24050
+ function yr(e, t, n) {
22607
24051
  return (.299 * e + .587 * t + .114 * n) / 255;
22608
24052
  }
22609
- function st(e, t, n) {
22610
- let r = at(t), i = at(n);
24053
+ function br(e, t, n) {
24054
+ let r = vr(t), i = vr(n);
22611
24055
  if (!r || !i) return e;
22612
24056
  let [a, o, s] = r, [c, l, u] = i, d = e.data;
22613
24057
  for (let e = 0; e < d.length; e += 4) {
22614
24058
  if (d[e + 3] === 0) continue;
22615
- let t = ot(d[e], d[e + 1], d[e + 2]);
24059
+ let t = yr(d[e], d[e + 1], d[e + 2]);
22616
24060
  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);
22617
24061
  }
22618
24062
  return e;
22619
24063
  }
22620
- var ct = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
22621
- async function lt(e, t, n) {
24064
+ var xr = (e, t) => typeof OffscreenCanvas > "u" ? null : new OffscreenCanvas(e, t);
24065
+ async function Sr(e, t, n) {
22622
24066
  let { width: r, height: i } = n;
22623
24067
  if (r <= 0 || i <= 0 || typeof createImageBitmap > "u") return e;
22624
- let a = (n.offscreenFactory ?? ct)(r, i);
24068
+ let a = (n.offscreenFactory ?? xr)(r, i);
22625
24069
  if (!a) return e;
22626
24070
  let o = a.getContext("2d");
22627
24071
  if (!o) return e;
@@ -22632,22 +24076,24 @@ async function lt(e, t, n) {
22632
24076
  } catch {
22633
24077
  return e;
22634
24078
  }
22635
- return st(s, t.clr1, t.clr2), o.putImageData(s, 0, 0), createImageBitmap(a);
24079
+ br(s, t.clr1, t.clr2), o.putImageData(s, 0, 0);
24080
+ let c = C(r, i, n.targetWidthPx, n.targetHeightPx);
24081
+ return c ? createImageBitmap(a, c) : createImageBitmap(a);
22636
24082
  }
22637
24083
  //#endregion
22638
24084
  //#region packages/core/src/image/blip-gate.ts
22639
- function ut(e) {
24085
+ function Cr(e) {
22640
24086
  return e.svgImagePath != null && e.srcRect == null;
22641
24087
  }
22642
24088
  //#endregion
22643
24089
  //#region packages/core/src/math/mathml.ts
22644
- var dt = {
24090
+ var wr = {
22645
24091
  "&": "&amp;",
22646
24092
  "<": "&lt;",
22647
24093
  ">": "&gt;",
22648
24094
  "\"": "&quot;"
22649
- }, N = (e) => e.replace(/[&<>"]/g, (e) => dt[e]);
22650
- function ft(e, t = "roman") {
24095
+ }, W = (e) => e.replace(/[&<>"]/g, (e) => wr[e]);
24096
+ function Tr(e, t = "roman") {
22651
24097
  if (t === "double-struck" || t === "monospace") return t;
22652
24098
  if (t === "fraktur") return e === "bold" || e === "boldItalic" ? "bold-fraktur" : "fraktur";
22653
24099
  if (t === "script") return e === "bold" || e === "boldItalic" ? "bold-script" : "script";
@@ -22664,10 +24110,10 @@ function ft(e, t = "roman") {
22664
24110
  case "italic": return null;
22665
24111
  }
22666
24112
  }
22667
- var pt = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), mt = "+−±∓×÷·∗⋅∘∙*/", ht = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", gt = "([{⟨⌈⌊", _t = ")]}⟩⌉⌋", vt = ",;";
22668
- function yt(e, t, n) {
22669
- let r = ft(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
22670
- o &&= (a += `<mn${i}>${N(o)}</mn>`, "");
24113
+ var Er = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Dr = "+−±∓×÷·∗⋅∘∙*/", Or = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", kr = "([{⟨⌈⌊", Ar = ")]}⟩⌉⌋", jr = ",;";
24114
+ function Mr(e, t, n) {
24115
+ let r = Tr(t, n), i = r ? ` mathvariant="${r}"` : "", a = "", o = "", s = () => {
24116
+ o &&= (a += `<mn${i}>${W(o)}</mn>`, "");
22671
24117
  };
22672
24118
  for (let t of e) {
22673
24119
  if (t === " ") {
@@ -22678,56 +24124,56 @@ function yt(e, t, n) {
22678
24124
  o += t;
22679
24125
  continue;
22680
24126
  }
22681
- s(), mt.includes(t) || ht.includes(t) || vt.includes(t) ? a += `<mo>${N(t)}</mo>` : gt.includes(t) || _t.includes(t) ? a += `<mo fence="true" stretchy="false">${N(t)}</mo>` : a += `<mi${i}>${N(t)}</mi>`;
24127
+ s(), Dr.includes(t) || Or.includes(t) || jr.includes(t) ? a += `<mo>${W(t)}</mo>` : kr.includes(t) || Ar.includes(t) ? a += `<mo fence="true" stretchy="false">${W(t)}</mo>` : a += `<mi${i}>${W(t)}</mi>`;
22682
24128
  }
22683
24129
  return s(), a;
22684
24130
  }
22685
- function P(e) {
22686
- return e.map(bt).join("");
24131
+ function G(e) {
24132
+ return e.map(Nr).join("");
22687
24133
  }
22688
- function F(e) {
22689
- return `<mrow>${P(e)}</mrow>`;
24134
+ function K(e) {
24135
+ return `<mrow>${G(e)}</mrow>`;
22690
24136
  }
22691
- function bt(e) {
24137
+ function Nr(e) {
22692
24138
  switch (e.kind) {
22693
- case "run": return yt(e.text, e.style, e.__script);
22694
- case "group": return F(e.items);
22695
- case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${F(e.num)}${F(e.den)}</mfrac>`;
22696
- case "sup": return `<msup>${F(e.base)}${F(e.sup ?? [])}</msup>`;
22697
- case "sub": return `<msub>${F(e.base)}${F(e.sub ?? [])}</msub>`;
22698
- case "subSup": return `<msubsup>${F(e.base)}${F(e.sub ?? [])}${F(e.sup ?? [])}</msubsup>`;
22699
- case "nary": return kt(e);
22700
- case "delimiter": return At(e);
22701
- case "radical": return e.index && e.index.length ? `<mroot>${F(e.radicand)}${F(e.index)}</mroot>` : `<msqrt>${P(e.radicand)}</msqrt>`;
22702
- case "limit": return Et(e);
22703
- case "array": return Dt(e);
24139
+ case "run": return Mr(e.text, e.style, e.__script);
24140
+ case "group": return K(e.items);
24141
+ case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${K(e.num)}${K(e.den)}</mfrac>`;
24142
+ case "sup": return `<msup>${K(e.base)}${K(e.sup ?? [])}</msup>`;
24143
+ case "sub": return `<msub>${K(e.base)}${K(e.sub ?? [])}</msub>`;
24144
+ case "subSup": return `<msubsup>${K(e.base)}${K(e.sub ?? [])}${K(e.sup ?? [])}</msubsup>`;
24145
+ case "nary": return Hr(e);
24146
+ case "delimiter": return Ur(e);
24147
+ case "radical": return e.index && e.index.length ? `<mroot>${K(e.radicand)}${K(e.index)}</mroot>` : `<msqrt>${G(e.radicand)}</msqrt>`;
24148
+ case "limit": return zr(e);
24149
+ case "array": return Br(e);
22704
24150
  case "groupChr": {
22705
- let t = F(e.base), n = pt.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${N(e.char)}</mo>`;
24151
+ let t = K(e.base), n = Er.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${W(e.char)}</mo>`;
22706
24152
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
22707
24153
  }
22708
24154
  case "bar": {
22709
- let t = F(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
24155
+ let t = K(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
22710
24156
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
22711
24157
  }
22712
- case "accent": return Tt(e);
22713
- case "func": return `<mrow>${F(e.name)}<mo>&#x2061;</mo>${F(e.arg)}</mrow>`;
22714
- case "phant": return xt(e);
22715
- case "sPre": return `<mmultiscripts>${F(e.base)}<mprescripts/>${F(e.sub)}${F(e.sup)}</mmultiscripts>`;
22716
- case "box": return F(e.base);
22717
- case "borderBox": return St(e);
24158
+ case "accent": return Rr(e);
24159
+ case "func": return `<mrow>${K(e.name)}<mo>&#x2061;</mo>${K(e.arg)}</mrow>`;
24160
+ case "phant": return Pr(e);
24161
+ case "sPre": return `<mmultiscripts>${K(e.base)}<mprescripts/>${K(e.sub)}${K(e.sup)}</mmultiscripts>`;
24162
+ case "box": return K(e.base);
24163
+ case "borderBox": return Fr(e);
22718
24164
  }
22719
24165
  }
22720
- function xt(e) {
22721
- let t = e.show ? P(e.base) : `<mphantom>${P(e.base)}</mphantom>`, n = [];
24166
+ function Pr(e) {
24167
+ let t = e.show ? G(e.base) : `<mphantom>${G(e.base)}</mphantom>`, n = [];
22722
24168
  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>`;
22723
24169
  }
22724
- function St(e) {
24170
+ function Fr(e) {
22725
24171
  let t = [], n = !e.hideTop, r = !e.hideBot, i = !e.hideLeft, a = !e.hideRight;
22726
24172
  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");
22727
- let o = P(e.base);
24173
+ let o = G(e.base);
22728
24174
  return t.length ? `<menclose notation="${t.join(" ")}">${o}</menclose>` : `<mrow>${o}</mrow>`;
22729
24175
  }
22730
- var Ct = {
24176
+ var Ir = {
22731
24177
  "̀": "`",
22732
24178
  "́": "´",
22733
24179
  "̂": "^",
@@ -22738,7 +24184,7 @@ var Ct = {
22738
24184
  "̌": "ˇ",
22739
24185
  "⃗": "→",
22740
24186
  "⃖": "←"
22741
- }, wt = new Set([
24187
+ }, Lr = new Set([
22742
24188
  "̅",
22743
24189
  "̄",
22744
24190
  "¯",
@@ -22746,47 +24192,47 @@ var Ct = {
22746
24192
  "̲",
22747
24193
  "̳"
22748
24194
  ]);
22749
- function Tt(e) {
22750
- let t = F(e.base);
22751
- if (wt.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
22752
- let n = Ct[e.char] ?? e.char;
22753
- return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${N(n)}</mo></mover>`;
22754
- }
22755
- function Et(e) {
22756
- let t = F(e.base), n = e.lower && e.lower.length ? F(e.lower) : null, r = e.upper && e.upper.length ? F(e.upper) : null;
24195
+ function Rr(e) {
24196
+ let t = K(e.base);
24197
+ if (Lr.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
24198
+ let n = Ir[e.char] ?? e.char;
24199
+ return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${W(n)}</mo></mover>`;
24200
+ }
24201
+ function zr(e) {
24202
+ 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;
22757
24203
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
22758
24204
  }
22759
- function Dt(e) {
24205
+ function Br(e) {
22760
24206
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
22761
24207
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
22762
- let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${P(e)}</mtd>`).join("")}</mtr>`).join("");
24208
+ let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${G(e)}</mtd>`).join("")}</mtr>`).join("");
22763
24209
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
22764
24210
  }
22765
- var Ot = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
22766
- function kt(e) {
22767
- let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : Ot.has(e.op), n = `<mo largeop="true">${N(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
22768
- return a = t ? r.length && i.length ? `<msubsup>${n}${F(r)}${F(i)}</msubsup>` : r.length ? `<msub>${n}${F(r)}</msub>` : i.length ? `<msup>${n}${F(i)}</msup>` : n : r.length && i.length ? `<munderover>${n}${F(r)}${F(i)}</munderover>` : r.length ? `<munder>${n}${F(r)}</munder>` : i.length ? `<mover>${n}${F(i)}</mover>` : n, `<mrow>${a}${P(e.body)}</mrow>`;
24211
+ var Vr = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
24212
+ function Hr(e) {
24213
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : Vr.has(e.op), n = `<mo largeop="true">${W(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
24214
+ 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>`;
22769
24215
  }
22770
- function At(e) {
22771
- let t = (e) => `<mo fence="true" stretchy="true">${N(e)}</mo>`, n = e.items.map((e) => F(e)).join("<mo separator=\"true\">,</mo>");
24216
+ function Ur(e) {
24217
+ let t = (e) => `<mo fence="true" stretchy="true">${W(e)}</mo>`, n = e.items.map((e) => K(e)).join("<mo separator=\"true\">,</mo>");
22772
24218
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
22773
24219
  }
22774
- function jt(e, t) {
22775
- return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${P(e)}</math>`;
24220
+ function Wr(e, t) {
24221
+ return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${G(e)}</math>`;
22776
24222
  }
22777
- var Mt = 64;
22778
- function Nt(e, t, n) {
24223
+ var Gr = 64;
24224
+ function Kr(e, t, n) {
22779
24225
  let r = Math.max(1, Math.round(t * 256)), i = Math.max(1, Math.round(n * 256));
22780
24226
  return e.replace(/<svg([^>]*?)>/, (e, t) => `<svg${t.replace(/\s(?:width|height)="[^"]*"/g, "")} width="${r}" height="${i}">`);
22781
24227
  }
22782
- function I(e, t) {
24228
+ function q(e, t) {
22783
24229
  return RegExp(`(?:^|\\s)${t}="([^"]*)"`).exec(e)?.[1];
22784
24230
  }
22785
- function L(e, t, n = 0) {
22786
- let r = Number.parseFloat(I(e, t) ?? "");
24231
+ function J(e, t, n = 0) {
24232
+ let r = Number.parseFloat(q(e, t) ?? "");
22787
24233
  return Number.isFinite(r) ? r : n;
22788
24234
  }
22789
- function Pt(e) {
24235
+ function qr(e) {
22790
24236
  let t = /* @__PURE__ */ new Map();
22791
24237
  for (let n of [
22792
24238
  "fill",
@@ -22797,10 +24243,10 @@ function Pt(e) {
22797
24243
  "fill-rule",
22798
24244
  "opacity"
22799
24245
  ]) {
22800
- let r = I(e, n);
24246
+ let r = q(e, n);
22801
24247
  r !== void 0 && t.set(n, r);
22802
24248
  }
22803
- let n = I(e, "style");
24249
+ let n = q(e, "style");
22804
24250
  if (n) for (let e of n.split(";")) {
22805
24251
  let n = e.indexOf(":");
22806
24252
  if (n < 0) continue;
@@ -22809,8 +24255,8 @@ function Pt(e) {
22809
24255
  }
22810
24256
  return t;
22811
24257
  }
22812
- function Ft(e, t, n) {
22813
- let r = Pt(t), i = { ...n }, a = r.get("fill");
24258
+ function Jr(e, t, n) {
24259
+ let r = qr(t), i = { ...n }, a = r.get("fill");
22814
24260
  a === "none" ? i.fill = !1 : a && (i.fill = !0, e.fillStyle = a);
22815
24261
  let o = r.get("stroke");
22816
24262
  o === "none" ? i.stroke = !1 : o && (i.stroke = !0, e.strokeStyle = o);
@@ -22825,7 +24271,7 @@ function Ft(e, t, n) {
22825
24271
  let d = Number.parseFloat(r.get("opacity") ?? "");
22826
24272
  return Number.isFinite(d) && (e.globalAlpha *= Math.max(0, Math.min(1, d))), i;
22827
24273
  }
22828
- function It(e, t) {
24274
+ function Yr(e, t) {
22829
24275
  if (!t) return;
22830
24276
  let n = /([a-zA-Z]+)\(([^)]*)\)/g;
22831
24277
  for (let r = n.exec(t); r; r = n.exec(t)) {
@@ -22850,11 +24296,11 @@ function It(e, t) {
22850
24296
  }
22851
24297
  }
22852
24298
  }
22853
- function Lt(e, t, n) {
24299
+ function Xr(e, t, n) {
22854
24300
  n.fill && e.fill(t, n.fillRule), n.stroke && e.lineWidth > 0 && e.stroke(t);
22855
24301
  }
22856
- function Rt(e, t, n, r) {
22857
- let i = I(t.slice(0, t.indexOf(">") + 1), "viewBox")?.trim().split(/[\s,]+/).map(Number);
24302
+ function Zr(e, t, n, r) {
24303
+ let i = q(t.slice(0, t.indexOf(">") + 1), "viewBox")?.trim().split(/[\s,]+/).map(Number);
22858
24304
  if (!i || i.length !== 4 || i.some((e) => !Number.isFinite(e))) throw TypeError("MathJax SVG must contain a finite viewBox");
22859
24305
  let [a, o, s, c] = i;
22860
24306
  if (!(s > 0) || !(c > 0)) throw TypeError("MathJax SVG viewBox must have positive dimensions");
@@ -22872,57 +24318,57 @@ function Rt(e, t, n, r) {
22872
24318
  continue;
22873
24319
  }
22874
24320
  if (a === "g") {
22875
- u.push(l), e.save(), l = Ft(e, i, l), It(e, I(i, "transform"));
24321
+ u.push(l), e.save(), l = Jr(e, i, l), Yr(e, q(i, "transform"));
22876
24322
  continue;
22877
24323
  }
22878
24324
  if (a !== "path" && a !== "rect" && a !== "line") continue;
22879
24325
  e.save();
22880
- let s = Ft(e, i, l);
22881
- It(e, I(i, "transform"));
22882
- let c = a === "path" ? new Path2D(I(i, "d") ?? "") : new Path2D();
22883
- a === "rect" ? c.rect(L(i, "x"), L(i, "y"), L(i, "width"), L(i, "height")) : a === "line" && (c.moveTo(L(i, "x1"), L(i, "y1")), c.lineTo(L(i, "x2"), L(i, "y2"))), Lt(e, c, s), e.restore();
24326
+ let s = Jr(e, i, l);
24327
+ Yr(e, q(i, "transform"));
24328
+ let c = a === "path" ? new Path2D(q(i, "d") ?? "") : new Path2D();
24329
+ 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"))), Xr(e, c, s), e.restore();
22884
24330
  }
22885
24331
  e.restore();
22886
24332
  }
22887
- async function zt(t, n) {
22888
- let { width: r, height: i } = a(t.widthEm * 256, (t.ascentEm + t.descentEm) * 256), s = e(r, i), c = s?.getContext("2d");
22889
- if (!s || !c || typeof Path2D > "u") throw Error("Math SVG rasterization requires Canvas 2D and Path2D support");
22890
- Rt(c, Nt(o(t.svg, n), t.widthEm, t.ascentEm + t.descentEm), r, i);
22891
- let l = s, u = r, d = i, f = Mt / 256, p = Math.max(1, Math.round(r * f)), m = Math.max(1, Math.round(i * f));
22892
- for (; u > p || d > m;) {
22893
- let t = Math.max(p, Math.ceil(u / 2)), n = Math.max(m, Math.ceil(d / 2)), r = e(t, n), i = r?.getContext("2d");
22894
- if (!r || !i) break;
22895
- i.imageSmoothingEnabled = !0, i.imageSmoothingQuality = "high", i.drawImage(l, 0, 0, t, n), l = r, u = t, d = n;
24333
+ async function Qr(e, t) {
24334
+ let { width: n, height: i } = _(e.widthEm * 256, (e.ascentEm + e.descentEm) * 256), a = r(n, i), o = a?.getContext("2d");
24335
+ if (!a || !o || typeof Path2D > "u") throw Error("Math SVG rasterization requires Canvas 2D and Path2D support");
24336
+ Zr(o, Kr(te(e.svg, t), e.widthEm, e.ascentEm + e.descentEm), n, i);
24337
+ let s = a, c = n, l = i, u = Gr / 256, d = Math.max(1, Math.round(n * u)), f = Math.max(1, Math.round(i * u));
24338
+ for (; c > d || l > f;) {
24339
+ 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");
24340
+ if (!n || !i) break;
24341
+ i.imageSmoothingEnabled = !0, i.imageSmoothingQuality = "high", i.drawImage(s, 0, 0, e, t), s = n, c = e, l = t;
22896
24342
  }
22897
24343
  return {
22898
- source: l,
22899
- widthPx: u,
22900
- heightPx: d
24344
+ source: s,
24345
+ widthPx: c,
24346
+ heightPx: l
22901
24347
  };
22902
24348
  }
22903
- function Bt(t, n) {
22904
- let r = e(t.widthPx, t.heightPx);
22905
- if (!r) return t.source;
22906
- let i = r.getContext("2d");
22907
- return i ? (i.drawImage(t.source, 0, 0, t.widthPx, t.heightPx), i.globalCompositeOperation = "source-in", i.fillStyle = n, i.fillRect(0, 0, t.widthPx, t.heightPx), r) : t.source;
24349
+ function $r(e, t) {
24350
+ let n = r(e.widthPx, e.heightPx);
24351
+ if (!n) return e.source;
24352
+ let i = n.getContext("2d");
24353
+ return i ? (i.drawImage(e.source, 0, 0, e.widthPx, e.heightPx), i.globalCompositeOperation = "source-in", i.fillStyle = t, i.fillRect(0, 0, e.widthPx, e.heightPx), n) : e.source;
22908
24354
  }
22909
24355
  //#endregion
22910
24356
  //#region packages/core/src/canvas/env.ts
22911
- function Vt(e) {
24357
+ function ei(e) {
22912
24358
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
22913
24359
  }
22914
- function Ht(e = 1) {
24360
+ function ti(e = 1) {
22915
24361
  return typeof window < "u" && window.devicePixelRatio || e;
22916
24362
  }
22917
24363
  //#endregion
22918
24364
  //#region packages/core/src/canvas/crisp.ts
22919
- function Ut(e, t, n) {
24365
+ function ni(e, t, n) {
22920
24366
  let r = Math.round(t * n) % 2 == 1 ? .5 : 0, i = e * n;
22921
24367
  return (Math.round(i - r) + r) / n - e;
22922
24368
  }
22923
24369
  //#endregion
22924
24370
  //#region packages/core/src/internal/runtime-generation.ts
22925
- var Wt = class {
24371
+ var ri = class {
22926
24372
  state = "uninitialized";
22927
24373
  generationValue = 0;
22928
24374
  readiness;
@@ -22976,17 +24422,17 @@ var Wt = class {
22976
24422
  assertCurrent(e) {
22977
24423
  if (this.state !== "ready" || e !== this.generationValue) throw Error("WASM archive session belongs to a discarded runtime generation");
22978
24424
  }
22979
- }, Gt = class e extends Error {
24425
+ }, ii = class e extends Error {
22980
24426
  code = "parser-crashed";
22981
24427
  constructor(t) {
22982
24428
  super(t), this.name = "WasmTrapError", Object.setPrototypeOf(this, e.prototype);
22983
24429
  }
22984
24430
  };
22985
- function Kt(e) {
24431
+ function ai(e) {
22986
24432
  let t = globalThis.WebAssembly?.RuntimeError;
22987
24433
  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;
22988
24434
  }
22989
- function qt(e) {
24435
+ function oi(e) {
22990
24436
  try {
22991
24437
  if ((typeof e != "object" || !e) && typeof e != "function") return;
22992
24438
  let t = Reflect.get(e, "__destroy_into_raw");
@@ -22995,27 +24441,27 @@ function qt(e) {
22995
24441
  }
22996
24442
  //#endregion
22997
24443
  //#region packages/core/src/worker/pull-credit-error.ts
22998
- var Jt = "ooxml-insufficient-credit", Yt = "OOXML_INSUFFICIENT_CREDIT:";
22999
- function Xt(e) {
24444
+ var si = "ooxml-insufficient-credit", ci = "OOXML_INSUFFICIENT_CREDIT:";
24445
+ function li(e) {
23000
24446
  return typeof e == "number" && Number.isSafeInteger(e) && e > 0;
23001
24447
  }
23002
- function Zt(e) {
24448
+ function ui(e) {
23003
24449
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
23004
24450
  let t = e;
23005
- return Xt(t.requiredBytes) && Xt(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
24451
+ return li(t.requiredBytes) && li(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
23006
24452
  }
23007
- var Qt = class e extends RangeError {
23008
- code = Jt;
24453
+ var di = class e extends RangeError {
24454
+ code = si;
23009
24455
  requiredBytes;
23010
24456
  offeredBytes;
23011
24457
  constructor(t) {
23012
24458
  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);
23013
24459
  }
23014
24460
  };
23015
- function $t(e) {
23016
- if (e instanceof Qt) return e;
24461
+ function fi(e) {
24462
+ if (e instanceof di) return e;
23017
24463
  let t = e instanceof Error ? e.message : String(e);
23018
- if (!t.startsWith(Yt)) return;
24464
+ if (!t.startsWith(ci)) return;
23019
24465
  let n;
23020
24466
  try {
23021
24467
  n = JSON.parse(t.slice(26));
@@ -23024,55 +24470,55 @@ function $t(e) {
23024
24470
  }
23025
24471
  if (!n || typeof n != "object" || Array.isArray(n)) return;
23026
24472
  let r = n;
23027
- if (!(r.code !== "ooxml-insufficient-credit" || !Zt(r))) return new Qt(r);
24473
+ if (!(r.code !== "ooxml-insufficient-credit" || !ui(r))) return new di(r);
23028
24474
  }
23029
- function en(e, t, n) {
23030
- let r = $t(e);
24475
+ function pi(e, t, n) {
24476
+ let r = fi(e);
23031
24477
  if (!(!r || r.offeredBytes !== t || r.requiredBytes > n)) return r;
23032
24478
  }
23033
- function tn(e, t, n) {
23034
- if (nn(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
24479
+ function mi(e, t, n) {
24480
+ if (hi(e)) return e.offeredBytes === t && e.requiredBytes <= n ? e.requiredBytes : void 0;
23035
24481
  }
23036
- function nn(e) {
23037
- return e instanceof Qt || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && Zt(e);
24482
+ function hi(e) {
24483
+ return e instanceof di || !!e && typeof e == "object" && e.code === "ooxml-insufficient-credit" && ui(e);
23038
24484
  }
23039
24485
  //#endregion
23040
24486
  //#region packages/core/src/worker/error-wire.ts
23041
- var rn = "OOXML_RESOURCE_LIMIT:", an = 128, on = 256, sn = 4096;
23042
- function R(e) {
24487
+ var gi = "OOXML_RESOURCE_LIMIT:", _i = 128, vi = 256, yi = 4096;
24488
+ function Y(e) {
23043
24489
  return typeof e == "number" && Number.isSafeInteger(e) && e >= 0;
23044
24490
  }
23045
- function cn(e) {
24491
+ function bi(e) {
23046
24492
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
23047
24493
  let t = e;
23048
- return R(t.archiveEntryCount) && R(t.declaredInflatedBytes) && (t.largestInflatedEntryBytes === void 0 || R(t.largestInflatedEntryBytes)) && R(t.distinctInflatedBytes) && R(t.operationInflatedBytes);
24494
+ return Y(t.archiveEntryCount) && Y(t.declaredInflatedBytes) && (t.largestInflatedEntryBytes === void 0 || Y(t.largestInflatedEntryBytes)) && Y(t.distinctInflatedBytes) && Y(t.operationInflatedBytes);
23049
24495
  }
23050
- function ln(e) {
24496
+ function xi(e) {
23051
24497
  let t;
23052
24498
  try {
23053
24499
  t = JSON.parse(new TextDecoder().decode(e));
23054
24500
  } catch {
23055
24501
  throw TypeError("OOXML resource usage checkpoint is not valid JSON");
23056
24502
  }
23057
- if (!cn(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
24503
+ if (!bi(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
23058
24504
  return t;
23059
24505
  }
23060
- function un(e) {
24506
+ function Si(e) {
23061
24507
  return e === "docx" || e === "xlsx" || e === "pptx";
23062
24508
  }
23063
- function dn(e) {
24509
+ function Ci(e) {
23064
24510
  return e === "container" || e === "decompression" || e === "parsing" || e === "serialization" || e === "layout" || e === "rendering" || e === "worker";
23065
24511
  }
23066
- function z(e, t) {
24512
+ function wi(e, t) {
23067
24513
  return typeof e == "string" && e.length > 0 && e.length <= t && !/[\u0000-\u001f\u007f]/u.test(e);
23068
24514
  }
23069
- function fn(e) {
23070
- return z(e, an) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
24515
+ function Ti(e) {
24516
+ return wi(e, _i) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
23071
24517
  }
23072
- function pn(e) {
23073
- return !z(e, sn) || 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 !== "..");
24518
+ function Ei(e) {
24519
+ return !wi(e, yi) || 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 !== "..");
23074
24520
  }
23075
- var mn = new Map([
24521
+ var Di = new Map([
23076
24522
  ["archive-entry:declared-inflated-bytes", {
23077
24523
  stage: "container",
23078
24524
  part: "required"
@@ -23119,20 +24565,20 @@ var mn = new Map([
23119
24565
  part: "optional",
23120
24566
  configurable: !1
23121
24567
  }]
23122
- ]), hn = new Set([...mn.keys()].map((e) => e.slice(0, e.indexOf(":")))), gn = new Set([...mn.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
23123
- function _n(e) {
24568
+ ]), Oi = new Set([...Di.keys()].map((e) => e.slice(0, e.indexOf(":")))), ki = new Set([...Di.keys()].map((e) => e.slice(e.indexOf(":") + 1)));
24569
+ function Ai(e) {
23124
24570
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
23125
24571
  let t = e;
23126
- return !un(t.format) || !z(t.operation, on) || !fn(t.resource) || !fn(t.metric) || !R(t.limit) || !R(t.observed) || typeof t.configurable != "boolean" || !cn(t.usage) ? !1 : !("part" in t) || pn(t.part);
24572
+ return !Si(t.format) || !wi(t.operation, vi) || !Ti(t.resource) || !Ti(t.metric) || !Y(t.limit) || !Y(t.observed) || typeof t.configurable != "boolean" || !bi(t.usage) ? !1 : !("part" in t) || Ei(t.part);
23127
24573
  }
23128
- function B(e) {
24574
+ function ji(e) {
23129
24575
  if (!e || typeof e != "object" || Array.isArray(e)) return !1;
23130
24576
  let t = e;
23131
- if (!dn(t.stage) || !_n(t.violation)) return !1;
23132
- let n = t.violation, r = mn.get(`${n.resource}:${n.metric}`);
23133
- 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 : !(hn.has(n.resource) && gn.has(n.metric));
24577
+ if (!Ci(t.stage) || !Ai(t.violation)) return !1;
24578
+ let n = t.violation, r = Di.get(`${n.resource}:${n.metric}`);
24579
+ 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 : !(Oi.has(n.resource) && ki.has(n.metric));
23134
24580
  }
23135
- function vn(e) {
24581
+ function Mi(e) {
23136
24582
  return {
23137
24583
  archiveEntryCount: e.archiveEntryCount,
23138
24584
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -23141,8 +24587,8 @@ function vn(e) {
23141
24587
  operationInflatedBytes: e.operationInflatedBytes
23142
24588
  };
23143
24589
  }
23144
- function yn(e) {
23145
- if (!B(e)) return;
24590
+ function Ni(e) {
24591
+ if (!ji(e)) return;
23146
24592
  let t = e.violation, n = {
23147
24593
  stage: e.stage,
23148
24594
  violation: {
@@ -23154,18 +24600,18 @@ function yn(e) {
23154
24600
  limit: t.limit,
23155
24601
  observed: t.observed,
23156
24602
  configurable: t.configurable,
23157
- usage: vn(t.usage)
24603
+ usage: Mi(t.usage)
23158
24604
  }
23159
24605
  };
23160
- return B(n) ? n : void 0;
24606
+ return ji(n) ? n : void 0;
23161
24607
  }
23162
- function bn(e) {
24608
+ function Pi(e) {
23163
24609
  let t = e.violation;
23164
24610
  return `OOXML resource limit exceeded${t.part ? ` for ${t.part}` : ""}: ${t.metric} ${t.observed} > ${t.limit}`;
23165
24611
  }
23166
- function xn(e) {
24612
+ function Fi(e) {
23167
24613
  let t = e instanceof Error ? e.message : String(e);
23168
- if (!t.startsWith(rn)) return;
24614
+ if (!t.startsWith(gi)) return;
23169
24615
  let n;
23170
24616
  try {
23171
24617
  n = JSON.parse(t.slice(21));
@@ -23174,34 +24620,40 @@ function xn(e) {
23174
24620
  }
23175
24621
  if (!n || typeof n != "object") return;
23176
24622
  let r = n;
23177
- if (!(r.code !== "ooxml-resource-limit" || !B(r.details))) return new c(bn(r.details), r.details);
23178
- }
23179
- function Sn(e) {
23180
- if (e instanceof t) return {
23181
- message: e.message,
23182
- errorName: e.name,
23183
- code: e.code,
23184
- decodedImage: {
23185
- metric: e.metric,
23186
- limit: e.limit,
23187
- observed: e.observed
23188
- }
23189
- };
23190
- let n = $t(e);
24623
+ if (!(r.code !== "ooxml-resource-limit" || !ji(r.details))) return new T(Pi(r.details), r.details);
24624
+ }
24625
+ function Ii(e) {
24626
+ let t = l(e);
24627
+ if (t) {
24628
+ let e = new h(t.metric, t.limit, t.observed);
24629
+ return {
24630
+ message: e.message,
24631
+ errorName: e.name,
24632
+ code: e.code,
24633
+ decodedImage: t
24634
+ };
24635
+ }
24636
+ let n = v(e);
23191
24637
  if (n) return {
23192
24638
  message: n.message,
23193
- errorName: n.name,
23194
- code: n.code,
24639
+ errorName: "TiffDecodeError",
24640
+ code: "ooxml-tiff-decode"
24641
+ };
24642
+ let r = fi(e);
24643
+ if (r) return {
24644
+ message: r.message,
24645
+ errorName: r.name,
24646
+ code: r.code,
23195
24647
  insufficientCredit: {
23196
- requiredBytes: n.requiredBytes,
23197
- offeredBytes: n.offeredBytes
24648
+ requiredBytes: r.requiredBytes,
24649
+ offeredBytes: r.offeredBytes
23198
24650
  }
23199
24651
  };
23200
- let r = e instanceof s || e instanceof c ? e : xn(e);
23201
- if (r instanceof c) {
23202
- let e = yn(r.details);
24652
+ let i = e instanceof w || e instanceof T ? e : Fi(e);
24653
+ if (i instanceof T) {
24654
+ let e = Ni(i.details);
23203
24655
  return e ? {
23204
- message: typeof r.message == "string" ? r.message : bn(e),
24656
+ message: typeof i.message == "string" ? i.message : Pi(e),
23205
24657
  errorName: "OoxmlResourceLimitError",
23206
24658
  code: "ooxml-resource-limit",
23207
24659
  resourceLimit: e
@@ -23210,26 +24662,26 @@ function Sn(e) {
23210
24662
  errorName: "Error"
23211
24663
  };
23212
24664
  }
23213
- if (r instanceof s) return {
23214
- message: typeof r.message == "string" ? r.message : String(r.message),
23215
- errorName: z(r.name, an) ? r.name : "OoxmlError",
23216
- ...fn(r.code) ? { code: r.code } : {}
24665
+ if (i instanceof w) return {
24666
+ message: typeof i.message == "string" ? i.message : String(i.message),
24667
+ errorName: wi(i.name, _i) ? i.name : "OoxmlError",
24668
+ ...Ti(i.code) ? { code: i.code } : {}
23217
24669
  };
23218
- let i = e instanceof Error ? e.message : String(e);
23219
- if (typeof i == "string" && i.startsWith(rn)) return {
24670
+ let a = e instanceof Error ? e.message : String(e);
24671
+ if (typeof a == "string" && a.startsWith(gi)) return {
23220
24672
  message: "Invalid OOXML resource-limit payload",
23221
24673
  errorName: "Error"
23222
24674
  };
23223
- let a = e instanceof Error ? e : Error(i), o = a;
24675
+ let o = e instanceof Error ? e : Error(a), s = o;
23224
24676
  return {
23225
- message: typeof a.message == "string" ? a.message : String(a.message),
23226
- errorName: z(a.name, an) ? a.name : "Error",
23227
- ...typeof o.code == "string" ? { code: o.code } : {}
24677
+ message: typeof o.message == "string" ? o.message : String(o.message),
24678
+ errorName: wi(o.name, _i) ? o.name : "Error",
24679
+ ...typeof s.code == "string" ? { code: s.code } : {}
23228
24680
  };
23229
24681
  }
23230
- function Cn(e) {
24682
+ function Li(e) {
23231
24683
  try {
23232
- return Sn(e);
24684
+ return Ii(e);
23233
24685
  } catch {
23234
24686
  return {
23235
24687
  message: "Worker operation failed with an unreadable error",
@@ -23237,68 +24689,93 @@ function Cn(e) {
23237
24689
  };
23238
24690
  }
23239
24691
  }
23240
- var wn = new Set([
24692
+ var Ri = new Set([
23241
24693
  "encrypted",
23242
24694
  "invalid-password",
23243
24695
  "unsupported-encryption",
23244
24696
  "legacy-binary-format",
23245
24697
  "not-ooxml"
23246
- ]);
23247
- function Tn(e) {
23248
- if (e.code === "ooxml-decoded-image-limit" && e.decodedImage && (e.decodedImage.metric === "image-pixels" || e.decodedImage.metric === "active-decoded-bytes") && R(e.decodedImage.limit) && R(e.decodedImage.observed) && e.decodedImage.observed > e.decodedImage.limit) return new t(e.decodedImage.metric, e.decodedImage.limit, e.decodedImage.observed);
23249
- if (e.code === "ooxml-insufficient-credit" && Zt(e.insufficientCredit)) return new Qt(e.insufficientCredit);
23250
- if (e.code === "ooxml-resource-limit" && B(e.resourceLimit)) return new c(e.message, e.resourceLimit);
23251
- if (e.code && wn.has(e.code)) return new s(e.code, e.message);
23252
- let n = e.errorName === "TypeError" ? TypeError(e.message) : e.errorName === "RangeError" ? RangeError(e.message) : Error(e.message);
23253
- return e.errorName && (n.name = e.errorName), e.code !== void 0 && Object.assign(n, { code: e.code }), n;
24698
+ ]), zi = {
24699
+ "image-dimension": !0,
24700
+ "image-pixels": !0,
24701
+ "active-decoded-bytes": !0
24702
+ };
24703
+ function Bi(e) {
24704
+ return typeof e == "string" && Object.prototype.hasOwnProperty.call(zi, e);
24705
+ }
24706
+ function Vi(e, t) {
24707
+ if (e !== "ooxml-decoded-image-limit" || !t || typeof t != "object") return;
24708
+ let n = t, r = n.metric, i = n.limit, a = n.observed;
24709
+ if (!(!Bi(r) || !Y(i) || !Y(a) || a <= i)) return {
24710
+ metric: r,
24711
+ limit: i,
24712
+ observed: a
24713
+ };
24714
+ }
24715
+ function Hi(e) {
24716
+ 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 = wi(n, _i) ? n : void 0, l = typeof r == "string" ? r : void 0, u = Vi(l, i);
24717
+ if (u) return new h(u.metric, u.limit, u.observed);
24718
+ if (l === "ooxml-tiff-decode") return new b(s);
24719
+ if (l === "ooxml-insufficient-credit" && ui(a)) return new di(a);
24720
+ if (l === "ooxml-resource-limit" && ji(o)) return new T(s, o);
24721
+ if (l && Ri.has(l)) return new w(l, s);
24722
+ let d = c === "TypeError" ? TypeError(s) : c === "RangeError" ? RangeError(s) : Error(s);
24723
+ return c && (d.name = c), l !== void 0 && Object.assign(d, { code: l }), d;
24724
+ }
24725
+ function Ui(e) {
24726
+ try {
24727
+ return Hi(e);
24728
+ } catch {
24729
+ return /* @__PURE__ */ Error("Worker operation failed with an unreadable error payload");
24730
+ }
23254
24731
  }
23255
24732
  //#endregion
23256
24733
  //#region packages/core/src/worker/resource-policy.ts
23257
- var En = Object.freeze({
23258
- maxArchiveEntryBytes: l,
23259
- maxTotalInflatedBytes: u,
23260
- maxArchiveEntries: d
24734
+ var Wi = Object.freeze({
24735
+ maxArchiveEntryBytes: ne,
24736
+ maxTotalInflatedBytes: re,
24737
+ maxArchiveEntries: ie
23261
24738
  });
23262
- function Dn(e, t, n) {
24739
+ function Gi(e, t, n) {
23263
24740
  if (t === void 0) return n;
23264
24741
  if (t === null) return null;
23265
24742
  if (!Number.isSafeInteger(t) || t <= 0) throw RangeError(`resourceLimits.${e} must be null or a positive safe integer number of bytes`);
23266
24743
  return t;
23267
24744
  }
23268
- function On(e) {
23269
- if (e === void 0) return En.maxArchiveEntries;
24745
+ function Ki(e) {
24746
+ if (e === void 0) return Wi.maxArchiveEntries;
23270
24747
  if (e === null) return null;
23271
24748
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError("resourceLimits.maxArchiveEntries must be null or a positive safe integer");
23272
- if (e > 2e4) throw RangeError(`resourceLimits.maxArchiveEntries must not exceed the internal hard ceiling of ${f}`);
24749
+ if (e > 2e4) throw RangeError(`resourceLimits.maxArchiveEntries must not exceed the internal hard ceiling of ${ae}`);
23273
24750
  return e;
23274
24751
  }
23275
- function kn(e) {
24752
+ function qi(e) {
23276
24753
  if (!(e === void 0 || !(e > 0))) {
23277
24754
  if (!Number.isSafeInteger(e)) throw RangeError("maxZipEntryBytes must be a positive safe integer number of bytes");
23278
24755
  return e;
23279
24756
  }
23280
24757
  }
23281
- function An(e) {
24758
+ function Ji(e) {
23282
24759
  let t = e.resourceLimits;
23283
24760
  if (t !== void 0 && (typeof t != "object" || !t || Array.isArray(t))) throw TypeError("resourceLimits must be an object when provided");
23284
- let n = kn(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
24761
+ let n = qi(e.maxZipEntryBytes), r = t?.maxArchiveEntryBytes;
23285
24762
  if (n !== void 0 && r !== void 0 && n !== r) throw RangeError("maxZipEntryBytes conflicts with resourceLimits.maxArchiveEntryBytes");
23286
24763
  return Object.freeze({
23287
- maxArchiveEntryBytes: Dn("maxArchiveEntryBytes", r === void 0 ? n : r, En.maxArchiveEntryBytes),
23288
- maxTotalInflatedBytes: Dn("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, En.maxTotalInflatedBytes),
23289
- maxArchiveEntries: On(t?.maxArchiveEntries)
24764
+ maxArchiveEntryBytes: Gi("maxArchiveEntryBytes", r === void 0 ? n : r, Wi.maxArchiveEntryBytes),
24765
+ maxTotalInflatedBytes: Gi("maxTotalInflatedBytes", t?.maxTotalInflatedBytes, Wi.maxTotalInflatedBytes),
24766
+ maxArchiveEntries: Ki(t?.maxArchiveEntries)
23290
24767
  });
23291
24768
  }
23292
- function jn(e) {
24769
+ function Yi(e) {
23293
24770
  if (e.debug !== void 0 && typeof e.debug != "boolean") throw TypeError("debug must be a boolean when provided");
23294
24771
  if (e.onResourceMetrics !== void 0 && typeof e.onResourceMetrics != "function") throw TypeError("onResourceMetrics must be a function when provided");
23295
24772
  return Object.freeze({
23296
- policy: An(e),
24773
+ policy: Ji(e),
23297
24774
  debug: e.debug ?? !1,
23298
24775
  ...e.onResourceMetrics ? { onResourceMetrics: e.onResourceMetrics } : {}
23299
24776
  });
23300
24777
  }
23301
- function Mn(e) {
24778
+ function Xi(e) {
23302
24779
  return [
23303
24780
  e.maxArchiveEntryBytes === null ? 0n : BigInt(e.maxArchiveEntryBytes),
23304
24781
  e.maxTotalInflatedBytes === null ? 0n : BigInt(e.maxTotalInflatedBytes),
@@ -23307,7 +24784,7 @@ function Mn(e) {
23307
24784
  }
23308
24785
  //#endregion
23309
24786
  //#region packages/core/src/internal/console-tui.ts
23310
- var Nn = [
24787
+ var Zi = [
23311
24788
  "font-family: \"SFMono-Regular\", Menlo, Monaco, Consolas, monospace",
23312
24789
  "font-size: 12px",
23313
24790
  "line-height: 1.35",
@@ -23315,43 +24792,43 @@ var Nn = [
23315
24792
  "letter-spacing: 0",
23316
24793
  "white-space: pre"
23317
24794
  ].join(";");
23318
- function Pn(e) {
23319
- if (Fn()) {
23320
- console.log(`%c${e}`, Nn);
24795
+ function Qi(e) {
24796
+ if ($i()) {
24797
+ console.log(`%c${e}`, Zi);
23321
24798
  return;
23322
24799
  }
23323
24800
  console.log(e);
23324
24801
  }
23325
- function Fn() {
24802
+ function $i() {
23326
24803
  return typeof window < "u" && globalThis.process?.release?.name !== "node";
23327
24804
  }
23328
24805
  //#endregion
23329
24806
  //#region packages/core/src/worker/resource-debug-view.ts
23330
- function In(e) {
23331
- let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [Bn(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
23332
- if (r.push(U(`mode ${e.mode.padEnd(8)} elapsed ${Rn(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(U(`source ${V(e.sourceBytes)}`, 68)), r.push(H(" admission ", 68)), r.push(Vn("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(Vn("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(U(`entry count ${e.usage ? zn(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : zn(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(U(`declared inflated ${V(e.usage.declaredInflatedBytes)}`, 68)) : r.push(U("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
23333
- r.push(H(" checkpoints ", 68));
24807
+ function ea(e) {
24808
+ let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [aa(` OOXML ${t} ${e.format.toUpperCase()} ${n} `, 68)];
24809
+ if (r.push(X(`mode ${e.mode.padEnd(8)} elapsed ${ra(e.elapsedMs)}`, 68)), e.sourceBytes !== void 0 && r.push(X(`source ${na(e.sourceBytes)}`, 68)), r.push(oa(" admission ", 68)), r.push(sa("largest entry", e.usage?.largestInflatedEntryBytes, e.policy.maxArchiveEntryBytes, 68)), r.push(sa("total inflated", e.usage?.distinctInflatedBytes, e.policy.maxTotalInflatedBytes, 68)), r.push(X(`entry count ${e.usage ? ia(e.usage.archiveEntryCount) : "—"} / ${e.policy.maxArchiveEntries === null ? "public off" : ia(e.policy.maxArchiveEntries)}`, 68)), e.usage ? r.push(X(`declared inflated ${na(e.usage.declaredInflatedBytes)}`, 68)) : r.push(X("usage unavailable for this report", 68)), e.checkpoints.length > 0) {
24810
+ r.push(oa(" checkpoints ", 68));
23334
24811
  for (let t of e.checkpoints) {
23335
- let e = t.usage ? V(t.usage.distinctInflatedBytes) : "—";
23336
- r.push(U(`${Rn(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
24812
+ let e = t.usage ? na(t.usage.distinctInflatedBytes) : "—";
24813
+ r.push(X(`${ra(t.elapsedMs).padStart(8)} ${t.name.padEnd(25)} ${e.padStart(12)}`, 68));
23337
24814
  }
23338
24815
  }
23339
- if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(H(" result ", 68)), r.push(U(Object.entries(e.outcome).map(([e, t]) => `${e} ${zn(t)}`).join(" "), 68))), e.error) {
23340
- r.push(H(" failure ", 68));
24816
+ if (e.outcome && Object.keys(e.outcome).length > 0 && (r.push(oa(" result ", 68)), r.push(X(Object.entries(e.outcome).map(([e, t]) => `${e} ${ia(t)}`).join(" "), 68))), e.error) {
24817
+ r.push(oa(" failure ", 68));
23341
24818
  let t = [
23342
24819
  e.error.code,
23343
24820
  e.error.stage,
23344
24821
  e.error.resource,
23345
24822
  e.error.metric
23346
24823
  ].filter((e) => !!e).join(" · ");
23347
- r.push(U(t || "unclassified error", 68));
24824
+ r.push(X(t || "unclassified error", 68));
23348
24825
  }
23349
24826
  return r.push(`└${"─".repeat(68)}┘`), r.join("\n");
23350
24827
  }
23351
- function Ln(e) {
23352
- Pn(In(e));
24828
+ function ta(e) {
24829
+ Qi(ea(e));
23353
24830
  }
23354
- function V(e) {
24831
+ function na(e) {
23355
24832
  if (!Number.isFinite(e) || e < 0) return "—";
23356
24833
  let t = [
23357
24834
  "B",
@@ -23364,38 +24841,38 @@ function V(e) {
23364
24841
  let i = r === 0 || n >= 100 ? 0 : n >= 10 ? 1 : 2;
23365
24842
  return `${n.toFixed(i)} ${t[r]}`;
23366
24843
  }
23367
- function Rn(e) {
24844
+ function ra(e) {
23368
24845
  return e < 1e3 ? `${Math.round(e)} ms` : `${(e / 1e3).toFixed(2)} s`;
23369
24846
  }
23370
- function zn(e) {
24847
+ function ia(e) {
23371
24848
  return Number.isSafeInteger(e) ? e.toLocaleString("en-US") : "—";
23372
24849
  }
23373
- function Bn(e, t) {
24850
+ function aa(e, t) {
23374
24851
  let n = e.slice(0, t);
23375
24852
  return `┌${n}${"─".repeat(t - n.length)}┐`;
23376
24853
  }
23377
- function H(e, t) {
24854
+ function oa(e, t) {
23378
24855
  let n = e.slice(0, t);
23379
24856
  return `├${n}${"─".repeat(t - n.length)}┤`;
23380
24857
  }
23381
- function U(e, t) {
24858
+ function X(e, t) {
23382
24859
  let n = e.slice(0, t - 2);
23383
24860
  return `│ ${n}${" ".repeat(t - n.length - 2)} │`;
23384
24861
  }
23385
- function Vn(e, t, n, r) {
23386
- 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 ? "—" : V(t)} / ${n === null ? "public off" : V(n)}`;
23387
- return U(`${e.padEnd(14)} ${o} ${s}`, r);
24862
+ function sa(e, t, n, r) {
24863
+ 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 ? "—" : na(t)} / ${n === null ? "public off" : na(n)}`;
24864
+ return X(`${e.padEnd(14)} ${o} ${s}`, r);
23388
24865
  }
23389
24866
  //#endregion
23390
24867
  //#region packages/core/src/worker/resource-debug.ts
23391
- var Hn = 1e3;
23392
- async function Un(e, t) {
23393
- e.observeUsage(await t(Hn));
24868
+ var ca = 1e3;
24869
+ async function la(e, t) {
24870
+ e.observeUsage(await t(ca));
23394
24871
  let n = e.current();
23395
24872
  if (!n) throw Error("OOXML resource metrics are not ready");
23396
24873
  return n;
23397
24874
  }
23398
- var Wn = class {
24875
+ var ua = class {
23399
24876
  now;
23400
24877
  startedAt;
23401
24878
  policy;
@@ -23409,7 +24886,7 @@ var Wn = class {
23409
24886
  terminalOutcome;
23410
24887
  terminalElapsedMs;
23411
24888
  constructor(e) {
23412
- this.options = e, this.now = e.now ?? qn, this.startedAt = this.now(), this.policy = Object.freeze({
24889
+ this.options = e, this.now = e.now ?? pa, this.startedAt = this.now(), this.policy = Object.freeze({
23413
24890
  maxArchiveEntryBytes: e.policy.maxArchiveEntryBytes,
23414
24891
  maxTotalInflatedBytes: e.policy.maxTotalInflatedBytes,
23415
24892
  maxArchiveEntries: e.policy.maxArchiveEntries
@@ -23423,16 +24900,16 @@ var Wn = class {
23423
24900
  }
23424
24901
  checkpoint(e, t) {
23425
24902
  if (!this.options.enabled || this.finished) return;
23426
- t && (this.lastUsage = Jn(t));
24903
+ t && (this.lastUsage = ma(t));
23427
24904
  let n = this.lastUsage;
23428
24905
  this.checkpoints.push(Object.freeze({
23429
- name: Zn(e),
23430
- elapsedMs: Xn(this.startedAt, this.now()),
24906
+ name: _a(e),
24907
+ elapsedMs: ga(this.startedAt, this.now()),
23431
24908
  ...n ? { usage: n } : {}
23432
24909
  }));
23433
24910
  }
23434
24911
  observeUsage(e) {
23435
- !this.options.enabled || !e || (this.lastUsage = Jn(e));
24912
+ !this.options.enabled || !e || (this.lastUsage = ma(e));
23436
24913
  }
23437
24914
  current() {
23438
24915
  if (!(!this.options.enabled || !this.terminalStatus)) return this.report(this.terminalStatus, this.terminalError, this.terminalOutcome);
@@ -23445,12 +24922,12 @@ var Wn = class {
23445
24922
  }
23446
24923
  finish(e, t, n) {
23447
24924
  if (!this.options.enabled || this.finished) return;
23448
- this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = Xn(this.startedAt, this.now());
24925
+ this.finished = !0, this.terminalStatus = e, this.terminalError = t, this.terminalOutcome = n, this.terminalElapsedMs = ga(this.startedAt, this.now());
23449
24926
  let r = this.report(e, t, n);
23450
- return this.options.onMetrics && Gn(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && Gn(Ln, r), r;
24927
+ return this.options.onMetrics && da(this.options.onMetrics, r), (this.options.emitToConsole ?? this.options.onMetrics === void 0) && da(ta, r), r;
23451
24928
  }
23452
24929
  report(e, t, n) {
23453
- let r = Yn(t) ?? this.lastUsage;
24930
+ let r = ha(t) ?? this.lastUsage;
23454
24931
  return Object.freeze({
23455
24932
  schemaVersion: 1,
23456
24933
  scope: this.options.scope ?? "load",
@@ -23458,28 +24935,28 @@ var Wn = class {
23458
24935
  mode: this.mode,
23459
24936
  status: e,
23460
24937
  ...this.sourceBytes === void 0 ? {} : { sourceBytes: this.sourceBytes },
23461
- elapsedMs: this.terminalElapsedMs ?? Xn(this.startedAt, this.now()),
24938
+ elapsedMs: this.terminalElapsedMs ?? ga(this.startedAt, this.now()),
23462
24939
  policy: this.policy,
23463
24940
  ...r ? { usage: r } : {},
23464
24941
  checkpoints: Object.freeze([...this.checkpoints]),
23465
- ...n ? { outcome: Qn(n) } : {},
23466
- ...e === "error" ? { error: $n(t) } : {}
24942
+ ...n ? { outcome: va(n) } : {},
24943
+ ...e === "error" ? { error: ya(t) } : {}
23467
24944
  });
23468
24945
  }
23469
24946
  };
23470
- function Gn(e, t) {
24947
+ function da(e, t) {
23471
24948
  try {
23472
24949
  let n = e(t);
23473
- Kn(n) && Promise.resolve(n).catch(() => void 0);
24950
+ fa(n) && Promise.resolve(n).catch(() => void 0);
23474
24951
  } catch {}
23475
24952
  }
23476
- function Kn(e) {
24953
+ function fa(e) {
23477
24954
  return (typeof e == "object" && !!e || typeof e == "function") && typeof e.then == "function";
23478
24955
  }
23479
- function qn() {
24956
+ function pa() {
23480
24957
  return typeof performance > "u" ? Date.now() : performance.now();
23481
24958
  }
23482
- function Jn(e) {
24959
+ function ma(e) {
23483
24960
  return Object.freeze({
23484
24961
  archiveEntryCount: e.archiveEntryCount,
23485
24962
  declaredInflatedBytes: e.declaredInflatedBytes,
@@ -23488,25 +24965,25 @@ function Jn(e) {
23488
24965
  operationInflatedBytes: e.operationInflatedBytes
23489
24966
  });
23490
24967
  }
23491
- function Yn(e) {
24968
+ function ha(e) {
23492
24969
  try {
23493
- return e instanceof c ? Jn(e.details.violation.usage) : void 0;
24970
+ return e instanceof T ? ma(e.details.violation.usage) : void 0;
23494
24971
  } catch {
23495
24972
  return;
23496
24973
  }
23497
24974
  }
23498
- function Xn(e, t) {
24975
+ function ga(e, t) {
23499
24976
  return Math.max(0, Math.round((t - e) * 10) / 10);
23500
24977
  }
23501
- function Zn(e) {
24978
+ function _a(e) {
23502
24979
  return e.replace(/[^a-z0-9 -]/giu, "").trim().slice(0, 32) || "checkpoint";
23503
24980
  }
23504
- function Qn(e) {
24981
+ function va(e) {
23505
24982
  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)));
23506
24983
  }
23507
- function $n(e) {
24984
+ function ya(e) {
23508
24985
  try {
23509
- if (e instanceof c) {
24986
+ if (e instanceof T) {
23510
24987
  let t = e.details.violation;
23511
24988
  return Object.freeze({
23512
24989
  code: e.code,
@@ -23515,19 +24992,19 @@ function $n(e) {
23515
24992
  metric: t.metric
23516
24993
  });
23517
24994
  }
23518
- if (e instanceof s || e instanceof t) return Object.freeze({ code: e.code });
23519
- if (e instanceof Gt || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
24995
+ if (e instanceof w || e instanceof h) return Object.freeze({ code: e.code });
24996
+ if (e instanceof ii || typeof e == "object" && e && e.code === "parser-crashed") return Object.freeze({ code: "parser-crashed" });
23520
24997
  } catch {}
23521
24998
  return Object.freeze({});
23522
24999
  }
23523
- var W = "ooxml-pull-v1";
23524
- function G(e, t) {
25000
+ var Z = "ooxml-pull-v1";
25001
+ function Q(e, t) {
23525
25002
  if (!Number.isSafeInteger(e) || e <= 0) throw RangeError(`${t} must be a positive safe integer`);
23526
25003
  }
23527
- function er(e) {
25004
+ function ba(e) {
23528
25005
  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");
23529
25006
  }
23530
- var tr = class {
25007
+ var xa = class {
23531
25008
  bridge;
23532
25009
  options;
23533
25010
  sequence = 0;
@@ -23540,7 +25017,7 @@ var tr = class {
23540
25017
  orphanedRequestIds = /* @__PURE__ */ new Set();
23541
25018
  transferDisposers = /* @__PURE__ */ new Set();
23542
25019
  constructor(e, t) {
23543
- er(t.sessionId), G(t.operationId, "operation id"), G(t.generation, "generation"), G(t.maxByteCredit, "max byte credit"), t.cancelGraceMs !== void 0 && G(t.cancelGraceMs, "cancel grace"), this.bridge = e, this.options = t;
25020
+ ba(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;
23544
25021
  }
23545
25022
  async pull(e, t) {
23546
25023
  if (this.validateCredit(e), this.ending || this.completed) throw Error("pull session is closed");
@@ -23550,14 +25027,14 @@ var tr = class {
23550
25027
  let n = this.sequence;
23551
25028
  try {
23552
25029
  let r = await this.request((t) => ({
23553
- protocol: W,
25030
+ protocol: Z,
23554
25031
  kind: "pull",
23555
25032
  ...this.identity(),
23556
25033
  requestId: t,
23557
25034
  sequence: n,
23558
25035
  byteCredit: e
23559
25036
  }), t);
23560
- if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw Tn(r.error);
25037
+ if (this.validateResponseIdentity(r), r.usage && (this.usage = r.usage), r.kind === "error") throw Ui(r.error);
23561
25038
  if (r.kind !== "chunk") throw Error(`expected chunk response, received ${r.kind}`);
23562
25039
  if (this.ending) throw this.disposePayload(r.payload), Error("pull session is closed");
23563
25040
  try {
@@ -23567,14 +25044,14 @@ var tr = class {
23567
25044
  }
23568
25045
  return this.outstanding = !0, this.makeChunk(r);
23569
25046
  } catch (e) {
23570
- throw !nn(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
25047
+ throw !hi(e) && !this.ending && !this.completed && this.cancel("protocol-error").catch(() => void 0), e;
23571
25048
  } finally {
23572
25049
  this.pulling = !1;
23573
25050
  }
23574
25051
  }
23575
25052
  cancel(e = "closed", t) {
23576
25053
  return this.lifecyclePromise ? this.lifecyclePromise : (this.ending = !0, this.disposeAllTransferred(), this.lifecyclePromise = this.lifecycleControl(this.control("cancel", t, (t) => ({
23577
- protocol: W,
25054
+ protocol: Z,
23578
25055
  kind: "cancel",
23579
25056
  ...this.identity(),
23580
25057
  requestId: t,
@@ -23583,7 +25060,7 @@ var tr = class {
23583
25060
  }
23584
25061
  close(e) {
23585
25062
  return this.lifecyclePromise ? this.lifecyclePromise : (this.ending = !0, this.disposeAllTransferred(), this.lifecyclePromise = this.lifecycleControl(this.control("close", e, (e) => ({
23586
- protocol: W,
25063
+ protocol: Z,
23587
25064
  kind: "close",
23588
25065
  ...this.identity(),
23589
25066
  requestId: e
@@ -23605,7 +25082,7 @@ var tr = class {
23605
25082
  usage: e.usage,
23606
25083
  disposeTransferred: i,
23607
25084
  ack: (t) => n || (this.ending ? Promise.resolve() : (n = this.control("ack", t, (t) => ({
23608
- protocol: W,
25085
+ protocol: Z,
23609
25086
  kind: "ack",
23610
25087
  ...this.identity(),
23611
25088
  requestId: t,
@@ -23616,7 +25093,7 @@ var tr = class {
23616
25093
  throw this.ending || this.cancel("request-error").catch(() => void 0), e;
23617
25094
  }), n)),
23618
25095
  release: (t) => r || (e.leaseId === void 0 || this.ending ? Promise.resolve() : (r = this.control("release", t, (t) => ({
23619
- protocol: W,
25096
+ protocol: Z,
23620
25097
  kind: "release",
23621
25098
  ...this.identity(),
23622
25099
  requestId: t,
@@ -23633,7 +25110,7 @@ var tr = class {
23633
25110
  this.forgetLifecycleOrphans();
23634
25111
  return;
23635
25112
  }
23636
- throw Tn(r.error);
25113
+ throw Ui(r.error);
23637
25114
  }
23638
25115
  if (r.kind !== "accepted" || r.command !== e) throw Error(`expected ${e} acceptance`);
23639
25116
  (e === "cancel" || e === "close") && this.forgetLifecycleOrphans();
@@ -23666,13 +25143,13 @@ var tr = class {
23666
25143
  if (e.protocol !== "ooxml-pull-v1" || e.sessionId !== this.options.sessionId || e.operationId !== this.options.operationId || e.generation !== this.options.generation) throw e.kind === "chunk" && this.disposePayload(e.payload), Error("stale or mismatched pull session response");
23667
25144
  }
23668
25145
  validateCredit(e) {
23669
- if (G(e, "byte credit"), e > this.options.maxByteCredit) throw RangeError(`byte credit exceeds session maximum ${this.options.maxByteCredit}`);
25146
+ if (Q(e, "byte credit"), e > this.options.maxByteCredit) throw RangeError(`byte credit exceeds session maximum ${this.options.maxByteCredit}`);
23670
25147
  }
23671
25148
  validateChunk(e, t, n) {
23672
25149
  if (e.sequence !== t) throw Error("pull response sequence mismatch");
23673
25150
  if (!Number.isSafeInteger(e.byteLength) || e.byteLength < 0) throw RangeError("chunk byte length must be a non-negative safe integer");
23674
25151
  if (e.byteLength > n) throw RangeError("chunk exceeds byte credit");
23675
- e.leaseId !== void 0 && G(e.leaseId, "lease id");
25152
+ e.leaseId !== void 0 && Q(e.leaseId, "lease id");
23676
25153
  }
23677
25154
  disposeAllTransferred() {
23678
25155
  for (let e of [...this.transferDisposers]) e();
@@ -23697,7 +25174,7 @@ var tr = class {
23697
25174
  this.options.disposeTransferred?.(e);
23698
25175
  } catch {}
23699
25176
  }
23700
- }, nr = class {
25177
+ }, Sa = class {
23701
25178
  owner;
23702
25179
  queue = Promise.resolve();
23703
25180
  leases = /* @__PURE__ */ new Map();
@@ -23710,7 +25187,7 @@ var tr = class {
23710
25187
  poisonRunning = !1;
23711
25188
  fatal;
23712
25189
  constructor(e) {
23713
- this.maxRetainedBytes = e?.maxRetainedBytes ?? 64 * 1024 * 1024, this.maxRetainedCount = e?.maxRetainedCount ?? 256, G(this.maxRetainedBytes, "max retained lease bytes"), G(this.maxRetainedCount, "max retained lease count");
25190
+ this.maxRetainedBytes = e?.maxRetainedBytes ?? 64 * 1024 * 1024, this.maxRetainedCount = e?.maxRetainedCount ?? 256, Q(this.maxRetainedBytes, "max retained lease bytes"), Q(this.maxRetainedCount, "max retained lease count");
23714
25191
  }
23715
25192
  enqueue(e) {
23716
25193
  let t = this.queue.then(e, e);
@@ -23754,7 +25231,7 @@ var tr = class {
23754
25231
  }
23755
25232
  return this.fatal;
23756
25233
  }
23757
- }, rr = class {
25234
+ }, Ca = class {
23758
25235
  options;
23759
25236
  coordinator;
23760
25237
  coordinatorOwner = Symbol("pull-session-host");
@@ -23772,7 +25249,7 @@ var tr = class {
23772
25249
  driverCloseComplete = !1;
23773
25250
  completed = !1;
23774
25251
  constructor(e) {
23775
- er(e.sessionId), G(e.operationId, "operation id"), G(e.generation, "generation"), G(e.maxByteCredit, "max byte credit"), e.wireLeaseIdStart !== void 0 && G(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());
25252
+ ba(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());
23776
25253
  }
23777
25254
  dispatch(e, t) {
23778
25255
  return this.coordinator.enqueue(async () => {
@@ -23831,7 +25308,7 @@ var tr = class {
23831
25308
  case "close": return await this.close(), { response: this.accepted(e, "close") };
23832
25309
  }
23833
25310
  } catch (t) {
23834
- let n = Cn(t);
25311
+ let n = Li(t);
23835
25312
  return n.code === "ooxml-resource-limit" && (n = await this.coordinator.poison(n)), { response: this.errorResponse(e, n) };
23836
25313
  }
23837
25314
  }
@@ -23851,7 +25328,7 @@ var tr = class {
23851
25328
  let o = this.options.driver.measureChunk(t), s = this.arrayBufferTransferBytes(t.transfer);
23852
25329
  if (o < s) throw RangeError("measured chunk bytes are below ArrayBuffer transfer bytes");
23853
25330
  if (a = Math.max(o, s), t.leaseId !== void 0) {
23854
- if (G(t.leaseId, "lease id"), t.retainedBytes === void 0) throw Error("retained lease bytes are required");
25331
+ if (Q(t.leaseId, "lease id"), t.retainedBytes === void 0) throw Error("retained lease bytes are required");
23855
25332
  if (this.activeDriverLeases.has(t.leaseId)) throw r = !0, Error("driver returned an active duplicate lease id");
23856
25333
  i = this.allocateWireLeaseId(), this.coordinator.retainLease(this.coordinatorOwner, i, t.retainedBytes), this.leases.set(i, {
23857
25334
  driverLeaseId: t.leaseId,
@@ -23890,7 +25367,7 @@ var tr = class {
23890
25367
  }, {
23891
25368
  response: {
23892
25369
  kind: "chunk",
23893
- protocol: W,
25370
+ protocol: Z,
23894
25371
  ...this.identity(),
23895
25372
  requestId: e.requestId,
23896
25373
  sequence: this.sequence,
@@ -23911,7 +25388,7 @@ var tr = class {
23911
25388
  await this.options.driver.acknowledge?.(e), this.unacked = void 0, this.coordinator.release(this.coordinatorOwner), this.sequence++, t && (this.completed = !0, this.maybeUnregisterCompleted());
23912
25389
  }
23913
25390
  async release(e) {
23914
- G(e, "wire lease id");
25391
+ Q(e, "wire lease id");
23915
25392
  let t = this.leases.get(e);
23916
25393
  t && (await this.options.driver.releaseLease?.(t.driverLeaseId), this.leases.delete(e), this.activeDriverLeases.delete(t.driverLeaseId), this.coordinator.releaseLease(this.coordinatorOwner, e), this.maybeUnregisterCompleted());
23917
25394
  }
@@ -23962,12 +25439,12 @@ var tr = class {
23962
25439
  if (e.protocol !== "ooxml-pull-v1" || e.sessionId !== this.options.sessionId || e.operationId !== this.options.operationId || e.generation !== this.options.generation || !Number.isSafeInteger(e.requestId) || e.requestId <= 0) throw Error("stale or mismatched pull session command");
23963
25440
  }
23964
25441
  validateHostCredit(e) {
23965
- if (G(e, "byte credit"), e > this.options.maxByteCredit) throw RangeError("byte credit exceeds host maximum");
25442
+ if (Q(e, "byte credit"), e > this.options.maxByteCredit) throw RangeError("byte credit exceeds host maximum");
23966
25443
  }
23967
25444
  accepted(e, t, n = !1) {
23968
25445
  return {
23969
25446
  kind: "accepted",
23970
- protocol: W,
25447
+ protocol: Z,
23971
25448
  ...n ? {
23972
25449
  sessionId: e.sessionId,
23973
25450
  operationId: e.operationId,
@@ -23994,7 +25471,7 @@ var tr = class {
23994
25471
  errorResponse(e, t) {
23995
25472
  return {
23996
25473
  kind: "error",
23997
- protocol: W,
25474
+ protocol: Z,
23998
25475
  sessionId: e.sessionId,
23999
25476
  operationId: e.operationId,
24000
25477
  generation: e.generation,
@@ -24041,7 +25518,7 @@ var tr = class {
24041
25518
  return;
24042
25519
  }
24043
25520
  }
24044
- }, ir = [
25521
+ }, wa = [
24045
25522
  "L",
24046
25523
  "R",
24047
25524
  "AL",
@@ -24065,7 +25542,7 @@ var tr = class {
24065
25542
  "RLI",
24066
25543
  "FSI",
24067
25544
  "PDI"
24068
- ], ar = [
25545
+ ], Ta = [
24069
25546
  0,
24070
25547
  9,
24071
25548
  10,
@@ -25333,7 +26810,7 @@ var tr = class {
25333
26810
  1048574,
25334
26811
  1048576,
25335
26812
  1114110
25336
- ], or = [
26813
+ ], Ea = [
25337
26814
  9,
25338
26815
  11,
25339
26816
  10,
@@ -26601,7 +28078,7 @@ var tr = class {
26601
28078
  9,
26602
28079
  0,
26603
28080
  9
26604
- ], sr = [
28081
+ ], Da = [
26605
28082
  40,
26606
28083
  41,
26607
28084
  41,
@@ -27458,7 +28935,7 @@ var tr = class {
27458
28935
  65379,
27459
28936
  65379,
27460
28937
  65378
27461
- ], K = [
28938
+ ], Oa = [
27462
28939
  40,
27463
28940
  41,
27464
28941
  0,
@@ -27846,42 +29323,42 @@ var tr = class {
27846
29323
  ];
27847
29324
  //#endregion
27848
29325
  //#region packages/core/src/text/bidi/char-data.ts
27849
- function cr(e) {
27850
- let t = 0, n = ar.length - 1;
29326
+ function ka(e) {
29327
+ let t = 0, n = Ta.length - 1;
27851
29328
  for (; t < n;) {
27852
29329
  let r = t + n + 1 >> 1;
27853
- ar[r] <= e ? t = r : n = r - 1;
29330
+ Ta[r] <= e ? t = r : n = r - 1;
27854
29331
  }
27855
- return or[t];
29332
+ return Ea[t];
27856
29333
  }
27857
- function lr(e) {
27858
- return ir[cr(e)];
29334
+ function Aa(e) {
29335
+ return wa[ka(e)];
27859
29336
  }
27860
- var ur = (() => {
29337
+ var ja = (() => {
27861
29338
  let e = /* @__PURE__ */ new Map();
27862
- for (let t = 0; t < sr.length; t += 2) e.set(sr[t], sr[t + 1]);
29339
+ for (let t = 0; t < Da.length; t += 2) e.set(Da[t], Da[t + 1]);
27863
29340
  return e;
27864
29341
  })();
27865
- function dr(e) {
27866
- return ur.get(e) ?? null;
29342
+ function Ma(e) {
29343
+ return ja.get(e) ?? null;
27867
29344
  }
27868
- var fr = (() => {
29345
+ var Na = (() => {
27869
29346
  let e = /* @__PURE__ */ new Map();
27870
- for (let t = 0; t < K.length; t += 3) e.set(K[t], {
27871
- pair: K[t + 1],
27872
- type: K[t + 2] === 0 ? "o" : "c"
29347
+ for (let t = 0; t < Oa.length; t += 3) e.set(Oa[t], {
29348
+ pair: Oa[t + 1],
29349
+ type: Oa[t + 2] === 0 ? "o" : "c"
27873
29350
  });
27874
29351
  return e;
27875
29352
  })();
27876
- function pr(e) {
27877
- return fr.get(e) ?? null;
29353
+ function Pa(e) {
29354
+ return Na.get(e) ?? null;
27878
29355
  }
27879
- var mr = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", q = (e) => e === "LRI" || e === "RLI" || e === "FSI", hr = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", gr = (e) => e & 1 ? e + 2 : e + 1, _r = (e) => e & 1 ? e + 1 : e + 2;
27880
- function vr(e, t, n) {
29356
+ var Fa = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", Ia = (e) => e === "LRI" || e === "RLI" || e === "FSI", La = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", Ra = (e) => e & 1 ? e + 2 : e + 1, za = (e) => e & 1 ? e + 1 : e + 2;
29357
+ function Ba(e, t, n) {
27881
29358
  let r = 0;
27882
29359
  for (let i = t; i < n; i++) {
27883
29360
  let t = e[i];
27884
- if (q(t)) r++;
29361
+ if (Ia(t)) r++;
27885
29362
  else if (t === "PDI") r > 0 && r--;
27886
29363
  else if (r === 0) {
27887
29364
  if (t === "L") return 0;
@@ -27890,11 +29367,11 @@ function vr(e, t, n) {
27890
29367
  }
27891
29368
  return 0;
27892
29369
  }
27893
- function yr(e) {
29370
+ function Va(e) {
27894
29371
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
27895
29372
  for (let a = 0; a < t; a++) {
27896
29373
  let t = e[a];
27897
- if (q(t)) i.push(a);
29374
+ if (Ia(t)) i.push(a);
27898
29375
  else if (t === "PDI" && i.length) {
27899
29376
  let e = i.pop();
27900
29377
  n[e] = a, r[a] = e;
@@ -27905,7 +29382,7 @@ function yr(e) {
27905
29382
  initOf: r
27906
29383
  };
27907
29384
  }
27908
- function br(e, t, n) {
29385
+ function Ha(e, t, n) {
27909
29386
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
27910
29387
  level: t,
27911
29388
  override: "neutral",
@@ -27919,7 +29396,7 @@ function br(e, t, n) {
27919
29396
  case "RLO":
27920
29397
  case "LRO": {
27921
29398
  i[d] = u().level;
27922
- let e = r === "RLE" || r === "RLO" ? gr(u().level) : _r(u().level);
29399
+ let e = r === "RLE" || r === "RLO" ? Ra(u().level) : za(u().level);
27923
29400
  e <= 125 && s === 0 && c === 0 ? o.push({
27924
29401
  level: e,
27925
29402
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -27934,8 +29411,8 @@ function br(e, t, n) {
27934
29411
  let t = u().override;
27935
29412
  t !== "neutral" && (a[d] = t);
27936
29413
  let f;
27937
- f = r === "RLI" ? "R" : r === "LRI" ? "L" : vr(e, d + 1, n[d]) === 1 ? "R" : "L";
27938
- let p = f === "R" ? gr(u().level) : _r(u().level);
29414
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : Ba(e, d + 1, n[d]) === 1 ? "R" : "L";
29415
+ let p = f === "R" ? Ra(u().level) : za(u().level);
27939
29416
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
27940
29417
  level: p,
27941
29418
  override: "neutral",
@@ -27977,10 +29454,10 @@ function br(e, t, n) {
27977
29454
  types: a
27978
29455
  };
27979
29456
  }
27980
- function xr(e) {
29457
+ function Ua(e) {
27981
29458
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
27982
29459
  }
27983
- function Sr(e, t, n, r, i, a) {
29460
+ function Wa(e, t, n, r, i, a) {
27984
29461
  let o = e.length, s = [];
27985
29462
  for (let e = 0; e < o; e++) n[e] || s.push(e);
27986
29463
  let c = [];
@@ -27998,7 +29475,7 @@ function Sr(e, t, n, r, i, a) {
27998
29475
  for (;;) {
27999
29476
  for (let e of p) f.push(e);
28000
29477
  let t = p[p.length - 1];
28001
- if (q(e[t]) && i[t] !== o) {
29478
+ if (Ia(e[t]) && i[t] !== o) {
28002
29479
  let e = l.get(i[t]);
28003
29480
  if (e) {
28004
29481
  p = e;
@@ -28013,7 +29490,7 @@ function Sr(e, t, n, r, i, a) {
28013
29490
  break;
28014
29491
  }
28015
29492
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
28016
- if (!(q(e[_]) && i[_] === o)) {
29493
+ if (!(Ia(e[_]) && i[_] === o)) {
28017
29494
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
28018
29495
  v = t[e];
28019
29496
  break;
@@ -28029,8 +29506,8 @@ function Sr(e, t, n, r, i, a) {
28029
29506
  }
28030
29507
  return d;
28031
29508
  }
28032
- var J = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
28033
- function Cr(e, t, n, r, i) {
29509
+ var Ga = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29510
+ function Ka(e, t, n, r, i) {
28034
29511
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
28035
29512
  for (let e = 0; e < o; e++) {
28036
29513
  let t = a[e];
@@ -28077,15 +29554,15 @@ function Cr(e, t, n, r, i) {
28077
29554
  outer: for (let n = 0; n < o; n++) {
28078
29555
  let i = a[n];
28079
29556
  if (r[i] !== "ON") continue;
28080
- let o = pr(t[i]);
29557
+ let o = Pa(t[i]);
28081
29558
  if (o) if (o.type === "o") {
28082
29559
  if (e.length === 63) break outer;
28083
29560
  e.push({
28084
- expect: xr(o.pair),
29561
+ expect: Ua(o.pair),
28085
29562
  pos: n
28086
29563
  });
28087
29564
  } else {
28088
- let r = xr(t[i]);
29565
+ let r = Ua(t[i]);
28089
29566
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
28090
29567
  f.push({
28091
29568
  open: e[t].pos,
@@ -28103,7 +29580,7 @@ function Cr(e, t, n, r, i) {
28103
29580
  for (let { open: e, close: t } of f) {
28104
29581
  let n = !1, i = !1;
28105
29582
  for (let o = e + 1; o < t; o++) {
28106
- let e = J(r[a[o]]);
29583
+ let e = Ga(r[a[o]]);
28107
29584
  e === u ? n = !0 : e === d && (i = !0);
28108
29585
  }
28109
29586
  let o = null;
@@ -28111,7 +29588,7 @@ function Cr(e, t, n, r, i) {
28111
29588
  else if (i) {
28112
29589
  let t = s;
28113
29590
  for (let n = e - 1; n >= 0; n--) {
28114
- let e = J(r[a[n]]);
29591
+ let e = Ga(r[a[n]]);
28115
29592
  if (e) {
28116
29593
  t = e;
28117
29594
  break;
@@ -28122,29 +29599,29 @@ function Cr(e, t, n, r, i) {
28122
29599
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
28123
29600
  }
28124
29601
  for (let e = 0; e < o; e++) {
28125
- if (!hr(r[a[e]])) continue;
29602
+ if (!La(r[a[e]])) continue;
28126
29603
  let t = e;
28127
- for (; t < o && hr(r[a[t]]);) t++;
28128
- let n = e > 0 ? J(r[a[e - 1]]) : s, i = t < o ? J(r[a[t]]) : c;
29604
+ for (; t < o && La(r[a[t]]);) t++;
29605
+ let n = e > 0 ? Ga(r[a[e - 1]]) : s, i = t < o ? Ga(r[a[t]]) : c;
28129
29606
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
28130
29607
  e = t - 1;
28131
29608
  }
28132
- for (let e = 0; e < o; e++) hr(r[a[e]]) && (r[a[e]] = u);
29609
+ for (let e = 0; e < o; e++) La(r[a[e]]) && (r[a[e]] = u);
28133
29610
  for (let e = 0; e < o; e++) {
28134
29611
  let t = a[e], n = r[t];
28135
29612
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
28136
29613
  }
28137
29614
  }
28138
- function wr(e, t, n) {
29615
+ function qa(e, t, n) {
28139
29616
  let r = e.length, i = Array(r);
28140
- for (let t = 0; t < r; t++) i[t] = n?.[t] ?? lr(e[t]);
28141
- let a = t === "rtl" ? 1 : t === "ltr" ? 0 : vr(i, 0, r), { pdiOf: o, initOf: s } = yr(i), { levels: c, types: l } = br(i, a, o), u = Array(r);
28142
- for (let e = 0; e < r; e++) u[e] = mr(i[e]);
28143
- let d = Sr(i, c, u, a, o, s), f = l.slice();
28144
- for (let t of d) Cr(t, e, i, f, c);
29617
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Aa(e[t]);
29618
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Ba(i, 0, r), { pdiOf: o, initOf: s } = Va(i), { levels: c, types: l } = Ha(i, a, o), u = Array(r);
29619
+ for (let e = 0; e < r; e++) u[e] = Fa(i[e]);
29620
+ let d = Wa(i, c, u, a, o, s), f = l.slice();
29621
+ for (let t of d) Ka(t, e, i, f, c);
28145
29622
  let p = (e) => {
28146
29623
  let t = i[e];
28147
- return t === "WS" || q(t) || t === "PDI" || u[e];
29624
+ return t === "WS" || Ia(t) || t === "PDI" || u[e];
28148
29625
  };
28149
29626
  for (let e = 0; e < r; e++) {
28150
29627
  let t = i[e];
@@ -28160,7 +29637,7 @@ function wr(e, t, n) {
28160
29637
  paragraphLevel: a
28161
29638
  };
28162
29639
  }
28163
- function Tr(e, t, n) {
29640
+ function Ja(e, t, n) {
28164
29641
  let r = [];
28165
29642
  for (let i = t; i < n; i++) {
28166
29643
  let t = e[i];
@@ -28188,7 +29665,7 @@ function Tr(e, t, n) {
28188
29665
  }
28189
29666
  //#endregion
28190
29667
  //#region packages/core/src/text/bidi/uax9/index.ts
28191
- function Er(e) {
29668
+ function Ya(e) {
28192
29669
  let t = [], n = [], r = [];
28193
29670
  for (let i = 0; i < e.length;) {
28194
29671
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -28200,9 +29677,9 @@ function Er(e) {
28200
29677
  starts: r
28201
29678
  };
28202
29679
  }
28203
- var Dr = class {
29680
+ var Xa = class {
28204
29681
  computeLevels(e, t, n) {
28205
- let { cps: r, units: i, starts: a } = Er(e), { levels: o, paragraphLevel: s } = wr(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29682
+ let { cps: r, units: i, starts: a } = Ya(e), { levels: o, paragraphLevel: s } = qa(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
28206
29683
  for (let e = 0; e < o.length; e++) {
28207
29684
  let t = o[e] === -1 ? 255 : o[e];
28208
29685
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -28213,63 +29690,63 @@ var Dr = class {
28213
29690
  };
28214
29691
  }
28215
29692
  reorderVisual(e, t, n) {
28216
- return Tr(e, t, n);
29693
+ return Ja(e, t, n);
28217
29694
  }
28218
29695
  getMirror(e) {
28219
- return dr(e);
29696
+ return Ma(e);
28220
29697
  }
28221
29698
  };
28222
- function Or() {
28223
- return new Dr();
29699
+ function Za() {
29700
+ return new Xa();
28224
29701
  }
28225
29702
  //#endregion
28226
29703
  //#region packages/core/src/text/bidi/engine.ts
28227
- var kr = null;
28228
- function Ar() {
28229
- return kr === null && (kr = Or()), kr;
29704
+ var Qa = null;
29705
+ function $a() {
29706
+ return Qa === null && (Qa = Za()), Qa;
28230
29707
  }
28231
29708
  //#endregion
28232
29709
  //#region packages/core/src/text/bidi/line-order.ts
28233
- var jr = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
28234
- function Mr(e) {
28235
- return jr.test(e);
29710
+ var eo = /[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u202B\u202E\u2067]|[\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}]/u;
29711
+ function to(e) {
29712
+ return eo.test(e);
28236
29713
  }
28237
- function Nr(e, t, n) {
29714
+ function no(e, t, n) {
28238
29715
  let r = n.length, i = new Uint8Array(r);
28239
29716
  for (let a = 0; a < r; a++) {
28240
29717
  let r = e[n[a]];
28241
29718
  i[a] = r === 255 ? t : r;
28242
29719
  }
28243
29720
  return {
28244
- order: Ar().reorderVisual(i, 0, r),
29721
+ order: $a().reorderVisual(i, 0, r),
28245
29722
  segLevels: i
28246
29723
  };
28247
29724
  }
28248
29725
  //#endregion
28249
29726
  //#region packages/core/src/text/kinsoku/rules.ts
28250
- var Pr = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", Fr = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
28251
- function Ir(e) {
29727
+ var ro = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", io = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
29728
+ function ao(e) {
28252
29729
  let t = /* @__PURE__ */ new Set();
28253
29730
  for (let n of e) t.add(n.codePointAt(0));
28254
29731
  return t;
28255
29732
  }
28256
- function Lr(e) {
29733
+ function oo(e) {
28257
29734
  return {
28258
29735
  enabled: e?.kinsoku !== !1,
28259
- lineStartForbidden: Ir(e?.noLineBreaksBefore ?? Pr),
28260
- lineEndForbidden: Ir(e?.noLineBreaksAfter ?? Fr)
29736
+ lineStartForbidden: ao(e?.noLineBreaksBefore ?? ro),
29737
+ lineEndForbidden: ao(e?.noLineBreaksAfter ?? io)
28261
29738
  };
28262
29739
  }
28263
- var Rr = Lr();
29740
+ var so = oo();
28264
29741
  //#endregion
28265
29742
  //#region packages/core/src/text/kinsoku/split.ts
28266
- function zr(e, t, n, r = 1) {
29743
+ function co(e, t, n, r = 1) {
28267
29744
  if (!n.enabled || t <= 0 || t >= e.length) return t;
28268
29745
  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;
28269
29746
  for (; o > r && (i(o) || a(o - 1));) o--;
28270
29747
  return o <= r && (i(o) || a(o - 1)) ? t : o;
28271
29748
  }
28272
- function Br(e, t, n) {
29749
+ function lo(e, t, n) {
28273
29750
  if (!t.enabled) return 0;
28274
29751
  let r = e.length - n;
28275
29752
  for (let n = 1; n <= r; n++) {
@@ -28282,15 +29759,15 @@ function Br(e, t, n) {
28282
29759
  }
28283
29760
  //#endregion
28284
29761
  //#region packages/core/src/text/cjk-ranges.ts
28285
- function Y(e) {
29762
+ function uo(e) {
28286
29763
  return e >= 12288 && e <= 40959 || e >= 44032 && e <= 55203 || e >= 63744 && e <= 64255 || e >= 65280 && e <= 65519;
28287
29764
  }
28288
- function Vr(e) {
28289
- return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !Y(e);
29765
+ function fo(e) {
29766
+ return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !uo(e);
28290
29767
  }
28291
29768
  //#endregion
28292
29769
  //#region packages/core/src/text/line-break-class.generated.ts
28293
- var Hr = /* @__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("."), Ur = [
29770
+ var po = /* @__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("."), mo = [
28294
29771
  0,
28295
29772
  9,
28296
29773
  10,
@@ -30913,7 +32390,7 @@ var Hr = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
30913
32390
  917632,
30914
32391
  917760,
30915
32392
  918e3
30916
- ], Wr = [
32393
+ ], ho = [
30917
32394
  1,
30918
32395
  15,
30919
32396
  4,
@@ -33536,7 +35013,7 @@ var Hr = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
33536
35013
  11,
33537
35014
  1,
33538
35015
  11
33539
- ], Gr = [
35016
+ ], go = [
33540
35017
  4352,
33541
35018
  8361,
33542
35019
  8986,
@@ -33666,7 +35143,7 @@ var Hr = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
33666
35143
  129775,
33667
35144
  131072,
33668
35145
  196608
33669
- ], Kr = [
35146
+ ], _o = [
33670
35147
  4448,
33671
35148
  8362,
33672
35149
  8988,
@@ -33799,68 +35276,68 @@ var Hr = /* @__PURE__ */ "BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB
33799
35276
  ];
33800
35277
  //#endregion
33801
35278
  //#region packages/core/src/text/line-break.ts
33802
- function qr(e) {
33803
- let t = 0, n = Ur.length - 1;
35279
+ function vo(e) {
35280
+ let t = 0, n = mo.length - 1;
33804
35281
  for (; t < n;) {
33805
35282
  let r = t + n + 1 >> 1;
33806
- Ur[r] <= e ? t = r : n = r - 1;
35283
+ mo[r] <= e ? t = r : n = r - 1;
33807
35284
  }
33808
- return Hr[Wr[t]];
35285
+ return po[ho[t]];
33809
35286
  }
33810
- function Jr(e) {
33811
- let t = 0, n = Gr.length - 1;
33812
- if (n < 0 || e < Gr[0]) return !1;
35287
+ function yo(e) {
35288
+ let t = 0, n = go.length - 1;
35289
+ if (n < 0 || e < go[0]) return !1;
33813
35290
  for (; t < n;) {
33814
35291
  let r = t + n + 1 >> 1;
33815
- Gr[r] <= e ? t = r : n = r - 1;
35292
+ go[r] <= e ? t = r : n = r - 1;
33816
35293
  }
33817
- return e < Kr[t];
35294
+ return e < _o[t];
33818
35295
  }
33819
- function Yr(e, t) {
33820
- let n = qr(e);
35296
+ function bo(e, t) {
35297
+ let n = vo(e);
33821
35298
  if (n === "OP") return !0;
33822
- let r = qr(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
33823
- 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" && !Jr(t) || n === "CP" && !Jr(e) && (a || r === "NU"));
35299
+ let r = vo(t), i = n === "AL" || n === "HL", a = r === "AL" || r === "HL";
35300
+ 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" && !yo(t) || n === "CP" && !yo(e) && (a || r === "NU"));
33824
35301
  }
33825
35302
  //#endregion
33826
35303
  //#region packages/core/src/text/sea-break.ts
33827
- function X(e) {
35304
+ function xo(e) {
33828
35305
  return e === "my" || e === "bo";
33829
35306
  }
33830
- function Z(e) {
35307
+ function $(e) {
33831
35308
  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;
33832
35309
  }
33833
- function Xr(e) {
35310
+ function So(e) {
33834
35311
  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;
33835
35312
  }
33836
- function Zr(e) {
35313
+ function Co(e) {
33837
35314
  return e <= 3711 ? "th" : e <= 3839 ? "lo" : e <= 4095 ? "bo" : e <= 4255 ? "my" : e <= 6143 ? "km" : "my";
33838
35315
  }
33839
- function Qr(e) {
33840
- for (let t of e) if (Z(t.codePointAt(0))) return !0;
35316
+ function wo(e) {
35317
+ for (let t of e) if ($(t.codePointAt(0))) return !0;
33841
35318
  return !1;
33842
35319
  }
33843
- function $r(e) {
35320
+ function To(e) {
33844
35321
  for (let t of e) {
33845
35322
  let e = t.codePointAt(0);
33846
- if (Z(e)) return X(Zr(e));
35323
+ if ($(e)) return xo(Co(e));
33847
35324
  }
33848
35325
  return !1;
33849
35326
  }
33850
- function ei(e) {
35327
+ function Eo(e) {
33851
35328
  let t = !1;
33852
35329
  for (let n of e) {
33853
35330
  let e = n.codePointAt(0);
33854
- if (Z(e)) {
33855
- if (X(Zr(e))) return !1;
35331
+ if ($(e)) {
35332
+ if (xo(Co(e))) return !1;
33856
35333
  t = !0;
33857
35334
  }
33858
35335
  }
33859
35336
  return t;
33860
35337
  }
33861
- var ti, ni = /* @__PURE__ */ new Map();
33862
- function ri(e) {
33863
- let t = ni.get(e);
35338
+ var Do, Oo = /* @__PURE__ */ new Map();
35339
+ function ko(e) {
35340
+ let t = Oo.get(e);
33864
35341
  if (t !== void 0) return t;
33865
35342
  let n = null;
33866
35343
  try {
@@ -33868,36 +35345,36 @@ function ri(e) {
33868
35345
  } catch {
33869
35346
  n = null;
33870
35347
  }
33871
- return ni.set(e, n), n;
35348
+ return Oo.set(e, n), n;
33872
35349
  }
33873
- function ii(e) {
33874
- if (ti === null) return null;
33875
- if (typeof ti == "function") {
33876
- let t = ti;
35350
+ function Ao(e) {
35351
+ if (Do === null) return null;
35352
+ if (typeof Do == "function") {
35353
+ let t = Do;
33877
35354
  return (n) => t(n, e);
33878
35355
  }
33879
- let t = ri(e);
35356
+ let t = ko(e);
33880
35357
  return t ? (e) => t.segment(e) : null;
33881
35358
  }
33882
- function ai(e) {
33883
- if (!Qr(e)) return [];
35359
+ function jo(e) {
35360
+ if (!wo(e)) return [];
33884
35361
  let t = [], n = e.length, r = 0;
33885
35362
  for (; r < n;) {
33886
35363
  let i = e.codePointAt(r), a = i > 65535 ? 2 : 1;
33887
- if (!Z(i)) {
35364
+ if (!$(i)) {
33888
35365
  r += a;
33889
35366
  continue;
33890
35367
  }
33891
- let o = Zr(i), s = X(o), c = r + a;
35368
+ let o = Co(i), s = xo(o), c = r + a;
33892
35369
  for (; c < n;) {
33893
35370
  let t = e.codePointAt(c);
33894
- if (!Z(t) || X(Zr(t)) !== s) break;
35371
+ if (!$(t) || xo(Co(t)) !== s) break;
33895
35372
  c += t > 65535 ? 2 : 1;
33896
35373
  }
33897
35374
  let l = e.slice(r, c);
33898
- if (s) for (let e of pi(l)) t.push(r + e);
35375
+ if (s) for (let e of zo(l)) t.push(r + e);
33899
35376
  else {
33900
- let e = ii(o);
35377
+ let e = Ao(o);
33901
35378
  if (e) {
33902
35379
  let n = [];
33903
35380
  try {
@@ -33910,42 +35387,42 @@ function ai(e) {
33910
35387
  }
33911
35388
  return t;
33912
35389
  }
33913
- function oi(e) {
33914
- if (!Qr(e)) return [];
35390
+ function Mo(e) {
35391
+ if (!wo(e)) return [];
33915
35392
  let t = [], n = e.length, r = e.codePointAt(0), i = r > 65535 ? 2 : 1;
33916
35393
  for (; i < n;) {
33917
35394
  let n = e.codePointAt(i), a = n > 65535 ? 2 : 1;
33918
- Z(r) !== Z(n) && !si(r) && !si(n) && t.push(i), r = n, i += a;
35395
+ $(r) !== $(n) && !No(r) && !No(n) && t.push(i), r = n, i += a;
33919
35396
  }
33920
35397
  return t;
33921
35398
  }
33922
- function si(e) {
35399
+ function No(e) {
33923
35400
  return e === 32 || e === 9 || e === 10 || e === 13 || e === 12288 || e === 160 || e === 8199 || e === 8239 || e === 8288 || e === 65279;
33924
35401
  }
33925
- function ci(e, t) {
33926
- if (!Qr(e)) return [];
33927
- let n = e.length, r = new Set(ai(e)), i = new Set(pi(e)), a = (e) => {
35402
+ function Po(e, t) {
35403
+ if (!wo(e)) return [];
35404
+ let n = e.length, r = new Set(jo(e)), i = new Set(zo(e)), a = (e) => {
33928
35405
  i.has(e) && r.add(e);
33929
35406
  };
33930
- for (let t of oi(e)) a(t);
35407
+ for (let t of Mo(e)) a(t);
33931
35408
  if (t?.cjk) {
33932
35409
  let t = e.codePointAt(0), r = t > 65535 ? 2 : 1;
33933
35410
  for (; r < n;) {
33934
35411
  let n = e.codePointAt(r);
33935
- (Y(n) || Y(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
35412
+ (uo(n) || uo(t)) && a(r), t = n, r += n > 65535 ? 2 : 1;
33936
35413
  }
33937
35414
  }
33938
35415
  let o = t?.kinsoku, s = o != null && o.enabled !== !1, c = [];
33939
35416
  for (let t of r) if (!(t <= 0 || t >= n)) {
33940
35417
  if (s) {
33941
- let n = e.codePointAt(t), r = li(e, t);
35418
+ let n = e.codePointAt(t), r = Fo(e, t);
33942
35419
  if (r !== void 0 && o.lineEndForbidden.has(r) || o.lineStartForbidden.has(n)) continue;
33943
35420
  }
33944
35421
  c.push(t);
33945
35422
  }
33946
35423
  return c.sort((e, t) => e - t), c;
33947
35424
  }
33948
- function li(e, t) {
35425
+ function Fo(e, t) {
33949
35426
  if (t <= 0) return;
33950
35427
  let n = e.charCodeAt(t - 1);
33951
35428
  if (n >= 56320 && n <= 57343 && t >= 2) {
@@ -33954,7 +35431,7 @@ function li(e, t) {
33954
35431
  }
33955
35432
  return n;
33956
35433
  }
33957
- function ui(e, t, n, r, i, a = !1) {
35434
+ function Io(e, t, n, r, i, a = !1) {
33958
35435
  let o = e.length;
33959
35436
  if (n >= o) return n;
33960
35437
  if (a) {
@@ -33970,19 +35447,19 @@ function ui(e, t, n, r, i, a = !1) {
33970
35447
  for (let a of t) a <= n || a >= o || i(e.slice(n, a)) <= r && (s = a);
33971
35448
  return i(e.slice(n, o)) <= r && (s = o), s;
33972
35449
  }
33973
- var di;
33974
- function fi() {
33975
- if (di !== void 0) return di;
35450
+ var Lo;
35451
+ function Ro() {
35452
+ if (Lo !== void 0) return Lo;
33976
35453
  let e = null;
33977
35454
  try {
33978
35455
  typeof Intl < "u" && typeof Intl.Segmenter == "function" && (e = new Intl.Segmenter(void 0, { granularity: "grapheme" }));
33979
35456
  } catch {
33980
35457
  e = null;
33981
35458
  }
33982
- return di = e, e;
35459
+ return Lo = e, e;
33983
35460
  }
33984
- function pi(e) {
33985
- let t = fi();
35461
+ function zo(e) {
35462
+ let t = Ro();
33986
35463
  if (t) try {
33987
35464
  let n = [];
33988
35465
  for (let r of t.segment(e)) r.index > 0 && n.push(r.index);
@@ -33997,12 +35474,12 @@ function pi(e) {
33997
35474
  }
33998
35475
  //#endregion
33999
35476
  //#region packages/core/src/text/vertical-orientation.generated.ts
34000
- var mi = [
35477
+ var Bo = [
34001
35478
  "U",
34002
35479
  "R",
34003
35480
  "Tu",
34004
35481
  "Tr"
34005
- ], hi = [
35482
+ ], Vo = [
34006
35483
  0,
34007
35484
  167,
34008
35485
  168,
@@ -34283,7 +35760,7 @@ var mi = [
34283
35760
  1048574,
34284
35761
  1048576,
34285
35762
  1114110
34286
- ], gi = [
35763
+ ], Ho = [
34287
35764
  1,
34288
35765
  0,
34289
35766
  1,
@@ -34567,29 +36044,29 @@ var mi = [
34567
36044
  ];
34568
36045
  //#endregion
34569
36046
  //#region packages/core/src/text/vertical-orientation.ts
34570
- function _i(e) {
34571
- let t = 0, n = hi.length - 1;
36047
+ function Uo(e) {
36048
+ let t = 0, n = Vo.length - 1;
34572
36049
  for (; t < n;) {
34573
36050
  let r = t + n + 1 >> 1;
34574
- hi[r] <= e ? t = r : n = r - 1;
36051
+ Vo[r] <= e ? t = r : n = r - 1;
34575
36052
  }
34576
- return gi[t];
36053
+ return Ho[t];
34577
36054
  }
34578
- function vi(e) {
34579
- return mi[_i(e)];
36055
+ function Wo(e) {
36056
+ return Bo[Uo(e)];
34580
36057
  }
34581
- function yi(e) {
34582
- return bi.get(e) ?? null;
36058
+ function Go(e) {
36059
+ return Ko.get(e) ?? null;
34583
36060
  }
34584
- var bi = new Map([
36061
+ var Ko = new Map([
34585
36062
  [65292, 65040],
34586
36063
  [12289, 65041],
34587
36064
  [12290, 65042]
34588
36065
  ]);
34589
- function xi(e) {
34590
- return Si.get(e) ?? null;
36066
+ function qo(e) {
36067
+ return Jo.get(e) ?? null;
34591
36068
  }
34592
- var Si = new Map([
36069
+ var Jo = new Map([
34593
36070
  [65288, 65077],
34594
36071
  [65289, 65078],
34595
36072
  [65371, 65079],
@@ -34608,40 +36085,40 @@ var Si = new Map([
34608
36085
  [12303, 65092],
34609
36086
  [12310, 65047],
34610
36087
  [12311, 65048]
34611
- ]), Ci = new Set([65307]);
34612
- function wi(e) {
34613
- return Ci.has(e);
36088
+ ]), Yo = new Set([65307]);
36089
+ function Xo(e) {
36090
+ return Yo.has(e);
34614
36091
  }
34615
- var Ti = new Set([
36092
+ var Zo = new Set([
34616
36093
  12540,
34617
36094
  12316,
34618
36095
  65374
34619
36096
  ]);
34620
- function Ei(e) {
34621
- return Ti.has(e);
36097
+ function Qo(e) {
36098
+ return Zo.has(e);
34622
36099
  }
34623
36100
  //#endregion
34624
36101
  //#region packages/core/src/text/vertical-vert-feature.ts
34625
- var Di = 256, Oi = 200, ki = /* @__PURE__ */ new WeakMap();
34626
- function Ai(e) {
36102
+ var $o = 256, es = 200, ts = /* @__PURE__ */ new WeakMap();
36103
+ function ns(e) {
34627
36104
  let t = e.canvas, n = t?.ownerDocument?.defaultView?.HTMLCanvasElement;
34628
36105
  return typeof n == "function" && t instanceof n || typeof HTMLCanvasElement < "u" && t instanceof HTMLCanvasElement ? t : null;
34629
36106
  }
34630
- function ji(e, t) {
36107
+ function rs(e, t) {
34631
36108
  return e.replace(/(^|\s)\d*\.?\d+(?:px|pt|pc|in|cm|mm|q|em|rem|%)(?:\/[^\s]+)?(?=\s)/i, `$1${t}`);
34632
36109
  }
34633
- function Mi(e, t = !0) {
36110
+ function is(e, t = !0) {
34634
36111
  let n = e.trim();
34635
36112
  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(", ");
34636
36113
  }
34637
- function Ni(e) {
36114
+ function as(e) {
34638
36115
  try {
34639
36116
  let t = e.ownerDocument?.defaultView, n = t?.getComputedStyle ? t.getComputedStyle(e) : typeof getComputedStyle == "function" ? getComputedStyle(e) : null;
34640
36117
  if (n?.fontFeatureSettings) return n.fontFeatureSettings;
34641
36118
  } catch {}
34642
36119
  return e.style.fontFeatureSettings;
34643
36120
  }
34644
- function Pi(e, t) {
36121
+ function os(e, t) {
34645
36122
  if (e.isConnected) return t();
34646
36123
  let n = e.ownerDocument ?? (typeof document > "u" ? null : document), r = n?.body ?? n?.documentElement;
34647
36124
  if (!r) return t();
@@ -34682,15 +36159,15 @@ function Pi(e, t) {
34682
36159
  if (t !== void 0 && !c) throw t;
34683
36160
  }
34684
36161
  }
34685
- function Fi(e, t) {
34686
- let n = Ai(e);
34687
- return n === null ? t() : Pi(n, t);
36162
+ function ss(e, t) {
36163
+ let n = ns(e);
36164
+ return n === null ? t() : os(n, t);
34688
36165
  }
34689
- function Ii(e) {
34690
- let t = ki.get(e);
36166
+ function cs(e) {
36167
+ let t = ts.get(e);
34691
36168
  if (t) return t;
34692
36169
  let n = e.createElement("canvas");
34693
- n.width = Di, n.height = Di, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
36170
+ n.width = $o, n.height = $o, n.setAttribute("aria-hidden", "true"), Object.assign(n.style, {
34694
36171
  position: "fixed",
34695
36172
  left: "-99999px",
34696
36173
  top: "0",
@@ -34704,9 +36181,9 @@ function Ii(e) {
34704
36181
  }, i = () => {
34705
36182
  r.epoch += 1, r.cache.clear();
34706
36183
  };
34707
- return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), ki.set(e, r), r;
36184
+ return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), ts.set(e, r), r;
34708
36185
  }
34709
- function Li(e, t) {
36186
+ function ls(e, t) {
34710
36187
  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;
34711
36188
  for (let e = 0; e < r; e += 1) for (let t = 0; t < n; t += 1) {
34712
36189
  let r = i[(e * n + t) * 4 + 3];
@@ -34733,28 +36210,28 @@ function Li(e, t) {
34733
36210
  ]
34734
36211
  };
34735
36212
  }
34736
- function Q(e, t, n) {
36213
+ function us(e, t, n) {
34737
36214
  let r = e.canvas;
34738
36215
  r.style.fontFeatureSettings = n, e.font = e.font, e.clearRect(0, 0, r.width, r.height);
34739
36216
  let i = String.fromCodePoint(t);
34740
- return e.fillText(i, r.width / 2, r.height / 2), Li(e, i);
36217
+ return e.fillText(i, r.width / 2, r.height / 2), ls(e, i);
34741
36218
  }
34742
- function $(e, t) {
36219
+ function ds(e, t) {
34743
36220
  let n = 0, r = Math.min(e.length, t.length);
34744
36221
  for (let i = 0; i < r; i += 1) n += Math.abs(e[i] - t[i]);
34745
36222
  return n;
34746
36223
  }
34747
- function Ri(e, t, n, r) {
36224
+ function fs(e, t, n, r) {
34748
36225
  let i = (e, t, n, r) => {
34749
- let i = Math.max($(e, t), $(n, r));
34750
- return Math.min($(e, n), $(e, r), $(t, n), $(t, r)) > i;
36226
+ let i = Math.max(ds(e, t), ds(n, r));
36227
+ return Math.min(ds(e, n), ds(e, r), ds(t, n), ds(t, r)) > i;
34751
36228
  };
34752
36229
  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);
34753
36230
  }
34754
- function zi(e, t) {
34755
- let n = Ai(e);
36231
+ function ps(e, t) {
36232
+ let n = ns(e);
34756
36233
  if (n === null || typeof document > "u") return !1;
34757
- let r = n.ownerDocument ?? document, i = Ii(r), a = Ni(n), o = `${i.epoch}:${ji(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
36234
+ let r = n.ownerDocument ?? document, i = cs(r), a = as(n), o = `${i.epoch}:${rs(e.font, "<size>")}:${a}:${t}`, s = i.cache.get(o);
34758
36235
  if (s !== void 0) return s;
34759
36236
  let c = !1, l = r.body ?? r.documentElement;
34760
36237
  if (!l) return !1;
@@ -34764,9 +36241,9 @@ function zi(e, t) {
34764
36241
  if (d !== null) {
34765
36242
  let n = i.canvas.style.fontFeatureSettings;
34766
36243
  try {
34767
- d.font = ji(e.font, `${Oi}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
34768
- let n = Mi(a, !1), r = Mi(a, !0), i = Q(d, t, n), o = Q(d, t, n), s = Q(d, t, r), l = Q(d, t, r);
34769
- c = i !== null && o !== null && s !== null && l !== null && Ri(i, o, s, l);
36244
+ d.font = rs(e.font, `${es}px`), d.fillStyle = "#000", d.textAlign = "center", d.textBaseline = "middle";
36245
+ let n = is(a, !1), r = is(a, !0), i = us(d, t, n), o = us(d, t, n), s = us(d, t, r), l = us(d, t, r);
36246
+ c = i !== null && o !== null && s !== null && l !== null && fs(i, o, s, l);
34770
36247
  } catch {
34771
36248
  c = !1;
34772
36249
  } finally {
@@ -34775,11 +36252,11 @@ function zi(e, t) {
34775
36252
  }
34776
36253
  return i.cache.set(o, c), c;
34777
36254
  }
34778
- function Bi(e, t) {
36255
+ function ms(e, t) {
34779
36256
  let n = e.canvas;
34780
- return n?.style ? Fi(e, () => {
36257
+ return n?.style ? ss(e, () => {
34781
36258
  let r = n.style, i = r.fontFeatureSettings;
34782
- r.fontFeatureSettings = Mi(Ni(n)), e.font = e.font;
36259
+ r.fontFeatureSettings = is(as(n)), e.font = e.font;
34783
36260
  try {
34784
36261
  return t();
34785
36262
  } finally {
@@ -34787,8 +36264,8 @@ function Bi(e, t) {
34787
36264
  }
34788
36265
  }) : t();
34789
36266
  }
34790
- function Vi(e, t) {
34791
- return Bi(e, () => {
36267
+ function hs(e, t) {
36268
+ return ms(e, () => {
34792
36269
  let n = e.textAlign, r = e.textBaseline;
34793
36270
  e.textAlign = "center", e.textBaseline = "middle";
34794
36271
  try {
@@ -34807,13 +36284,13 @@ function Vi(e, t) {
34807
36284
  }
34808
36285
  //#endregion
34809
36286
  //#region packages/core/src/interaction/hyperlink.ts
34810
- var Hi = [
36287
+ var gs = [
34811
36288
  "http",
34812
36289
  "https",
34813
36290
  "mailto",
34814
36291
  "tel"
34815
36292
  ];
34816
- function Ui(e) {
36293
+ function _s(e) {
34817
36294
  let t = "";
34818
36295
  for (let n of e) {
34819
36296
  let e = n.codePointAt(0);
@@ -34822,18 +36299,18 @@ function Ui(e) {
34822
36299
  let n = /^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);
34823
36300
  return n ? n[1].toLowerCase() : null;
34824
36301
  }
34825
- function Wi(e, t = Hi) {
36302
+ function vs(e, t = gs) {
34826
36303
  if (e === "") return null;
34827
- let n = Ui(e);
36304
+ let n = _s(e);
34828
36305
  return n === null || t.includes(n) ? e : null;
34829
36306
  }
34830
- function Gi(e, t = Hi, n = typeof window < "u" ? window : void 0) {
34831
- let r = Wi(e, t);
36307
+ function ys(e, t = gs, n = typeof window < "u" ? window : void 0) {
36308
+ let r = vs(e, t);
34832
36309
  return r === null || !n ? !1 : (n.open(r, "_blank", "noopener,noreferrer"), !0);
34833
36310
  }
34834
36311
  //#endregion
34835
36312
  //#region packages/core/src/text/line-metrics.ts
34836
- var Ki = [
36313
+ var bs = [
34837
36314
  [(e) => e.includes("meiryo ui") || e.includes("meiryoui") || e.includes("メイリオ") && e.includes("ui"), {
34838
36315
  asc: 2171 * 1.3 / 2048,
34839
36316
  desc: 430 * 1.3 / 2048,
@@ -34861,22 +36338,22 @@ var Ki = [
34861
36338
  desc: 501 / 2048
34862
36339
  }]
34863
36340
  ];
34864
- function qi(e, t) {
36341
+ function xs(e, t) {
34865
36342
  if (!e) return null;
34866
36343
  let n = e.toLowerCase();
34867
- for (let [e, r] of Ki) if (e(n) && (t || !r.eaOnly)) return r;
36344
+ for (let [e, r] of bs) if (e(n) && (t || !r.eaOnly)) return r;
34868
36345
  return null;
34869
36346
  }
34870
- function Ji(e, t = !1) {
34871
- let n = qi(e, t);
36347
+ function Ss(e, t = !1) {
36348
+ let n = xs(e, t);
34872
36349
  return n === null ? null : n.asc + n.desc;
34873
36350
  }
34874
- function Yi(e, t, n = !1) {
34875
- let r = Ji(e, n);
36351
+ function Cs(e, t, n = !1) {
36352
+ let r = Ss(e, n);
34876
36353
  return r === null ? 0 : r * t;
34877
36354
  }
34878
- function Xi(e, t, n, r, i = !1) {
34879
- let a = qi(e, i);
36355
+ function ws(e, t, n, r, i = !1) {
36356
+ let a = xs(e, i);
34880
36357
  if (a === null) return {
34881
36358
  ascent: n,
34882
36359
  descent: r
@@ -34891,4 +36368,4 @@ function Xi(e, t, n, r, i = !1) {
34891
36368
  };
34892
36369
  }
34893
36370
  //#endregion
34894
- export { Ut as $, Nr as A, de as At, jn as B, h as Bt, Yr as C, Me as Ct, zr as D, pe as Dt, Br as E, fe as Et, rr as F, p as Ft, xn as G, re as Gt, Mn as H, ie as Ht, nr as I, m as It, tn as J, x as Jt, Cn as K, ee as Kt, Hn as L, ae as Lt, Ar as M, ue as Mt, tr as N, ge as Nt, Rr as O, me as Ot, W as P, ce as Pt, Wt as Q, c as Qt, Wn as R, _ as Rt, ci as S, we as St, Vr as T, ye as Tt, ln as U, te as Ut, An as V, v as Vt, Tn as W, ne as Wt, qt as X, y as Xt, Gt as Y, S as Yt, Kt as Z, s as Zt, pi as _, Be as _t, Gi as a, ut as at, Xr as b, Ne as bt, Bi as c, ot as ct, yi as d, Ve as dt, Ht as et, vi as f, et as ft, ui as g, $e as gt, Qr as h, Ze as ht, Ui as i, jt as it, Mr as j, le as jt, Lr as k, he as kt, Fi as l, it as lt, wi as m, Xe as mt, Yi as n, zt as nt, Vi as o, lt as ot, Ei as p, Qe as pt, en as q, b as qt, Hi as r, Bt as rt, zi as s, at as st, Xi as t, Vt as tt, xi as u, rt as ut, ei as v, Ee as vt, Y as w, ve as wt, Z as x, je as xt, $r as y, Te as yt, Un as z, g as zt };
36371
+ export { ni as $, ve as $t, no as A, Xe as At, Yi as B, Ee as Bt, bo as C, on as Ct, co as D, Ge as Dt, lo as E, zt as Et, Ca as F, ke as Ft, Fi as G, se as Gt, Xi as H, Ne as Ht, Sa as I, Ae as It, mi as J, le as Jt, Li as K, xe as Kt, ca as L, je as Lt, $a as M, Ze as Mt, xa as N, Ie as Nt, so as O, We as Ot, Z as P, Le as Pt, ri as Q, _e as Qt, ua as R, Me as Rt, Po as S, Sn as St, fo as T, Zt as Tt, xi as U, Te as Ut, Ji as V, De as Vt, Ui as W, oe as Wt, oi as X, de as Xt, ii as Y, ce as Yt, ai as Z, be as Zt, zo as _, dr as _t, ys as a, fe as an, Cr as at, So as b, zn as bt, ms as c, vr as ct, Go as d, gr as dt, ye as en, ti as et, Wo as f, An as ft, Io as g, Fn as gt, wo as h, lr as ht, _s as i, he as in, Wr as it, to as j, Ue as jt, oo as k, Qe as kt, ss as l, yr as lt, Xo as m, ur as mt, Cs as n, pe as nn, Qr as nt, hs as o, w as on, Sr as ot, Qo as p, fr as pt, pi as q, ue as qt, gs as r, me as rn, $r as rt, ps as s, T as sn, br as st, ws as t, ge as tn, ei as tt, qo as u, _r as ut, Eo as v, Hn as vt, uo as w, cn as wt, $ as x, vn as xt, To as y, ir as yt, la as z, Oe as zt };