@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.
- package/README.md +44 -18
- package/dist/assets/render-worker-BRKOyWVH.js +24 -0
- package/dist/assets/render-worker-CtLMFj9r.js +10 -0
- package/dist/assets/render-worker-NZPOUOTU.js +11 -0
- package/dist/{canvas-viewer-mechanics-CIfhCgYA.js → canvas-viewer-mechanics-CfRzOhz5.js} +308 -234
- package/dist/chart-ex.mjs +270 -270
- package/dist/{comment-ui-runtime-CdMMApEN.js → comment-ui-runtime-CAbpuWi_.js} +4 -4
- package/dist/{comment-ui-runtime-C5qimVMD.js → comment-ui-runtime-DAKBCpsM.js} +5 -5
- package/dist/comment-ui-runtime-DTaaZdXC.js +2 -0
- package/dist/{comments-BAlAyIhb.js → comments-Brfxa3hQ.js} +1 -1
- package/dist/{document-pull-client-BXw6AAhY.js → document-pull-client-BkHHIdR4.js} +4661 -4357
- package/dist/{docx-BA1vB0V-.js → docx-_uelcAui.js} +338 -304
- package/dist/docx.mjs +7 -6
- package/dist/docx_parser_bg.wasm +0 -0
- package/dist/{dom-interaction-boundary-DS6BVyHA.js → dom-interaction-boundary-CMDDgICk.js} +1 -1
- package/dist/index.mjs +3 -3
- package/dist/line-distribute-CiKeWjBF.js +1023 -0
- package/dist/{line-metrics-CXyjyYd5.js → line-metrics-u87yCAfV.js} +2182 -705
- package/dist/math.mjs +2 -2
- package/dist/node.mjs +404 -394
- package/dist/pixel-budget-Dgjw269h.js +37 -0
- package/dist/{plot-area-frame-DuXZzovH.js → plot-area-frame-D5hEOgkJ.js} +691 -1418
- package/dist/{pptx-C17oBD8Z.js → pptx-WpBbS0mq.js} +255 -222
- package/dist/pptx.mjs +7 -6
- package/dist/pptx_parser_bg.wasm +0 -0
- package/dist/raster-target-whZhvVMt.js +87 -0
- package/dist/region-map.mjs +5 -5
- package/dist/{render-CVeGktZG.js → render-DrAAZWwH.js} +9 -6
- package/dist/{render-worker-host-BbhwA24Y.js → render-worker-host-CBVe8aeD.js} +1 -1
- package/dist/{render-worker-host-BWdhjVH_.js → render-worker-host-CHlwYJdK.js} +1 -1
- package/dist/{render-worker-host-CbaQivE7.js → render-worker-host-XDMsyVsv.js} +1 -1
- package/dist/{renderer-Bmky2yBc.js → renderer-XFSCOT6m.js} +1937 -1936
- package/dist/resource-measurement-6uR3Huao.js +150 -0
- package/dist/{session-Cl0RVnMs.js → session-DoPwA4gv.js} +79 -79
- package/dist/{slide-pull-client-BS0EeZo2.js → slide-pull-client-8i8C4VyD.js} +1054 -824
- package/dist/{three-d-B7LsKeOS.js → three-d-YYghQndN.js} +109 -110
- package/dist/three-d.mjs +726 -726
- package/dist/tiff.mjs +664 -78
- package/dist/types/chart-ex.d.ts +2 -2
- package/dist/types/docx.d.ts +31 -13
- package/dist/types/index.d.ts +46 -21
- package/dist/types/math.d.ts +1 -1
- package/dist/types/node.d.ts +11 -7
- package/dist/types/pptx.d.ts +35 -15
- package/dist/types/region-map.d.ts +2 -2
- package/dist/types/three-d.d.ts +2 -2
- package/dist/types/tiff.d.ts +13 -3
- package/dist/types/xlsx.d.ts +30 -13
- package/dist/{worksheet-pull-client-B0zfEVau.js → worksheet-pull-client-Btydoxto.js} +47 -47
- package/dist/{xlsx-FyKAiNo-.js → xlsx-Bd16V4Xx.js} +1395 -1196
- package/dist/xlsx.mjs +7 -6
- package/package.json +2 -2
- package/dist/assets/render-worker-BWPpayBu.js +0 -10
- package/dist/assets/render-worker-CiEWCh_T.js +0 -11
- package/dist/assets/render-worker-Cpmy3GDF.js +0 -24
- package/dist/comment-ui-runtime-aPzHfV_A.js +0 -2
- package/dist/line-distribute-MqInuujx.js +0 -1003
- package/dist/resource-measurement-esyGbzAF.js +0 -120
- package/dist/tiff-contract-Xjn3qXqK.js +0 -69
- /package/dist/{comment-occurrence-C34fWs_F.js → comment-occurrence-tj54AXXB.js} +0 -0
- /package/dist/{highlight-rect-MaCt0om0.js → highlight-rect-DBcYVJDv.js} +0 -0
- /package/dist/{mathjax-DPEX346v.js → mathjax-DS69BmJd.js} +0 -0
- /package/dist/{read-only-comment-decoration-BYCXoSdC.js → read-only-comment-decoration-Mv_SAiHy.js} +0 -0
- /package/dist/{read-only-comment-margin-C7b3l0ro.js → read-only-comment-margin-Cqu-Ir0C.js} +0 -0
- /package/dist/{renderer-module-contract-C6sYZvTV.js → renderer-module-contract-Cu-GKuPd.js} +0 -0
- /package/dist/{source-key-DORuuFb-.js → source-key-BkBB3X82.js} +0 -0
- /package/dist/{transfer-vNOFQuvv.js → transfer-mIj7E7NB.js} +0 -0
- /package/dist/{visible-index-DwJzuGmJ.js → visible-index-DPoQYSDt.js} +0 -0
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { L as
|
|
4
|
-
import {
|
|
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
|
|
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
|
-
},
|
|
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
|
-
},
|
|
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:
|
|
57
|
+
url: we,
|
|
57
58
|
loadFamily: "Libre Franklin"
|
|
58
59
|
},
|
|
59
60
|
"franklin gothic medium": {
|
|
60
|
-
url:
|
|
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:
|
|
75
|
+
url: Se,
|
|
75
76
|
loadFamily: "Noto Naskh Arabic"
|
|
76
77
|
},
|
|
77
78
|
"traditional arabic": {
|
|
78
|
-
url:
|
|
79
|
+
url: Se,
|
|
79
80
|
loadFamily: "Noto Naskh Arabic"
|
|
80
81
|
},
|
|
81
82
|
"simplified arabic": {
|
|
82
|
-
url:
|
|
83
|
+
url: Se,
|
|
83
84
|
loadFamily: "Noto Naskh Arabic"
|
|
84
85
|
},
|
|
85
86
|
"arabic typesetting": {
|
|
86
|
-
url:
|
|
87
|
+
url: Se,
|
|
87
88
|
loadFamily: "Noto Naskh Arabic"
|
|
88
89
|
},
|
|
89
90
|
"univers next arabic": {
|
|
90
|
-
url:
|
|
91
|
+
url: Ce,
|
|
91
92
|
loadFamily: "Noto Sans Arabic"
|
|
92
93
|
},
|
|
93
94
|
"noto naskh arabic": {
|
|
94
|
-
url:
|
|
95
|
+
url: Se,
|
|
95
96
|
loadFamily: "Noto Naskh Arabic"
|
|
96
97
|
},
|
|
97
98
|
"noto sans arabic": {
|
|
98
|
-
url:
|
|
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
|
|
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
|
|
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
|
|
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
|
|
149
|
+
var ke = [
|
|
149
150
|
"Noto Sans",
|
|
150
151
|
"Noto Sans Hebrew",
|
|
151
152
|
"Noto Sans Thai",
|
|
152
153
|
"Noto Sans Devanagari"
|
|
153
|
-
],
|
|
154
|
-
"noto sans kr": { url:
|
|
155
|
-
"noto sans sc": { url:
|
|
156
|
-
"noto sans tc": { url:
|
|
157
|
-
"noto sans jp": { url:
|
|
158
|
-
"noto serif kr": { url:
|
|
159
|
-
"noto serif sc": { url:
|
|
160
|
-
"noto serif tc": { url:
|
|
161
|
-
"noto serif jp": { url:
|
|
162
|
-
"noto sans": { url:
|
|
163
|
-
"noto serif": { url:
|
|
164
|
-
"noto sans devanagari": { url:
|
|
165
|
-
"noto sans thai": { url:
|
|
166
|
-
"noto sans hebrew": { url:
|
|
167
|
-
"noto serif hebrew": { url:
|
|
168
|
-
},
|
|
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
|
|
212
|
-
let n = new
|
|
212
|
+
function Ne(e, t) {
|
|
213
|
+
let n = new Me(t);
|
|
213
214
|
return n.addText(e), n.names();
|
|
214
215
|
}
|
|
215
|
-
var
|
|
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
|
-
},
|
|
22079
|
-
function
|
|
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
|
|
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:
|
|
22132
|
-
cd2:
|
|
22133
|
-
cd4:
|
|
22134
|
-
cd8:
|
|
22135
|
-
"3cd4": 3 *
|
|
22136
|
-
"3cd8": 3 *
|
|
22137
|
-
"5cd8": 5 *
|
|
22138
|
-
"7cd8": 7 *
|
|
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] *
|
|
22176
|
-
case "cos": return t[0] * Math.cos(t[1] *
|
|
22177
|
-
case "tan": return t[0] * Math.tan(t[1] *
|
|
22178
|
-
case "at2": return Math.atan2(t[1], t[0]) /
|
|
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
|
|
22188
|
-
function
|
|
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]) *
|
|
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
|
|
22226
|
-
function
|
|
22227
|
-
let t =
|
|
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,
|
|
22230
|
-
gd: e.gd.map(([e, t]) => [e,
|
|
22231
|
-
},
|
|
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
|
|
22234
|
-
let i =
|
|
22235
|
-
return
|
|
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
|
|
22242
|
-
return e.toLowerCase() in
|
|
22242
|
+
function Ue(e) {
|
|
22243
|
+
return e.toLowerCase() in O;
|
|
22243
22244
|
}
|
|
22244
|
-
function
|
|
22245
|
-
let s =
|
|
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 =
|
|
22248
|
-
for (let t of s.paths)
|
|
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
|
|
22252
|
-
let s =
|
|
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 =
|
|
22255
|
-
for (let t of s.paths) t.fill !== "none" &&
|
|
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
|
|
22259
|
+
var Ke = {
|
|
22259
22260
|
wedgeroundrectcallout: "roundrect",
|
|
22260
22261
|
wedgeellipsecallout: "ellipse",
|
|
22261
22262
|
wedgerectcallout: null
|
|
22262
|
-
},
|
|
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
|
|
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
|
|
22303
|
-
let i =
|
|
22303
|
+
function Ye(e, t, n, r) {
|
|
22304
|
+
let i = O[e];
|
|
22304
22305
|
if (!i) return null;
|
|
22305
|
-
if (e in
|
|
22306
|
-
let a =
|
|
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 =
|
|
22309
|
-
t === "roundrect" ? (i =
|
|
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
|
|
22318
|
-
let o =
|
|
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 =
|
|
22336
|
-
for (let e of o.def.paths)
|
|
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
|
|
22350
|
-
let d =
|
|
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 =
|
|
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(),
|
|
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 =
|
|
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
|
|
22372
|
-
let o =
|
|
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 =
|
|
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
|
|
22400
|
+
let C = Math.atan2(v, _) + Math.PI;
|
|
22400
22401
|
return {
|
|
22401
22402
|
start: {
|
|
22402
22403
|
x: p,
|
|
22403
22404
|
y: m,
|
|
22404
|
-
angle:
|
|
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
|
|
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
|
|
22426
|
-
async function
|
|
22427
|
-
let n =
|
|
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
|
-
},
|
|
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 &&
|
|
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
|
-
|
|
22442
|
-
|
|
22443
|
-
|
|
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
|
-
|
|
23711
|
+
retainedBytes: 0,
|
|
23712
|
+
retainedLimit: f
|
|
23713
|
+
}, R.set(e, t)), t;
|
|
22448
23714
|
}
|
|
22449
|
-
var
|
|
22450
|
-
function
|
|
22451
|
-
|
|
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
|
-
|
|
22454
|
-
|
|
23744
|
+
var Bn = /* @__PURE__ */ new WeakSet();
|
|
23745
|
+
function Vn(e) {
|
|
23746
|
+
!e || Bn.has(e) || (Bn.add(e), zt(e));
|
|
22455
23747
|
}
|
|
22456
|
-
function
|
|
22457
|
-
|
|
22458
|
-
|
|
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
|
-
|
|
22464
|
-
|
|
22465
|
-
|
|
22466
|
-
let r =
|
|
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 (
|
|
22469
|
-
|
|
22470
|
-
|
|
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
|
|
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
|
|
22480
|
-
if (!
|
|
22481
|
-
let
|
|
22482
|
-
if (!
|
|
22483
|
-
let
|
|
22484
|
-
if (
|
|
22485
|
-
|
|
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
|
|
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,
|
|
23800
|
+
return t.entries.delete(i), t.retainedBytes -= a.weight, qn(e, a.ownedPromise), !0;
|
|
22492
23801
|
}
|
|
22493
|
-
function
|
|
22494
|
-
let n =
|
|
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) =>
|
|
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
|
|
22502
|
-
let
|
|
22503
|
-
|
|
22504
|
-
|
|
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
|
|
23921
|
+
return Gn(t, e), e;
|
|
22507
23922
|
} catch (t) {
|
|
22508
|
-
throw n &&
|
|
23923
|
+
throw n && Vn(e), t;
|
|
22509
23924
|
}
|
|
22510
|
-
}),
|
|
22511
|
-
promise:
|
|
22512
|
-
ownedPromise:
|
|
23925
|
+
}), l = {
|
|
23926
|
+
promise: c,
|
|
23927
|
+
ownedPromise: s,
|
|
22513
23928
|
weight: 0
|
|
22514
23929
|
};
|
|
22515
|
-
for (
|
|
22516
|
-
if (
|
|
22517
|
-
if (
|
|
22518
|
-
|
|
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 (
|
|
23936
|
+
for (l.weight = Wn(n), r.retainedBytes += l.weight; r.retainedBytes > r.retainedLimit && Kn(t, r, e););
|
|
22522
23937
|
}
|
|
22523
|
-
}).catch(() => {}),
|
|
22524
|
-
|
|
22525
|
-
}),
|
|
22526
|
-
return
|
|
22527
|
-
}
|
|
22528
|
-
var
|
|
22529
|
-
function
|
|
22530
|
-
return
|
|
22531
|
-
}
|
|
22532
|
-
function
|
|
22533
|
-
return
|
|
22534
|
-
}
|
|
22535
|
-
function
|
|
22536
|
-
let { widthPt:
|
|
22537
|
-
return
|
|
22538
|
-
bitmap: await
|
|
22539
|
-
|
|
22540
|
-
|
|
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
|
|
22548
|
-
return
|
|
23984
|
+
function dr(e, t) {
|
|
23985
|
+
return R.get(t)?.entries.get(`${U}${H(e)}`)?.bitmap;
|
|
22549
23986
|
}
|
|
22550
|
-
function
|
|
22551
|
-
|
|
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())
|
|
22554
|
-
t.entries.clear(), t.retainedBytes = 0,
|
|
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
|
|
22560
|
-
function
|
|
22561
|
-
let t =
|
|
22562
|
-
return t || (t = { imgs: /* @__PURE__ */ new Map() },
|
|
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
|
|
22565
|
-
if (typeof Image > "u") return
|
|
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
|
|
22570
|
-
if (
|
|
22571
|
-
let
|
|
22572
|
-
if (
|
|
22573
|
-
if (
|
|
22574
|
-
let
|
|
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 =
|
|
24024
|
+
}, t.onerror = () => r(/* @__PURE__ */ Error(`svg load failed: ${e}`)), t.src = i;
|
|
22581
24025
|
}), t;
|
|
22582
24026
|
} finally {
|
|
22583
|
-
URL.revokeObjectURL(
|
|
24027
|
+
URL.revokeObjectURL(i);
|
|
22584
24028
|
}
|
|
22585
|
-
}),
|
|
22586
|
-
|
|
22587
|
-
}),
|
|
22588
|
-
let e =
|
|
22589
|
-
|
|
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
|
|
24035
|
+
return a.promise;
|
|
22592
24036
|
}
|
|
22593
|
-
function
|
|
22594
|
-
let t =
|
|
22595
|
-
t && (t.imgs.clear(),
|
|
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
|
|
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
|
|
24050
|
+
function yr(e, t, n) {
|
|
22607
24051
|
return (.299 * e + .587 * t + .114 * n) / 255;
|
|
22608
24052
|
}
|
|
22609
|
-
function
|
|
22610
|
-
let r =
|
|
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 =
|
|
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
|
|
22621
|
-
async function
|
|
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 ??
|
|
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
|
-
|
|
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
|
|
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
|
|
24090
|
+
var wr = {
|
|
22645
24091
|
"&": "&",
|
|
22646
24092
|
"<": "<",
|
|
22647
24093
|
">": ">",
|
|
22648
24094
|
"\"": """
|
|
22649
|
-
},
|
|
22650
|
-
function
|
|
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
|
|
22668
|
-
function
|
|
22669
|
-
let r =
|
|
22670
|
-
o &&= (a += `<mn${i}>${
|
|
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(),
|
|
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
|
|
22686
|
-
return e.map(
|
|
24131
|
+
function G(e) {
|
|
24132
|
+
return e.map(Nr).join("");
|
|
22687
24133
|
}
|
|
22688
|
-
function
|
|
22689
|
-
return `<mrow>${
|
|
24134
|
+
function K(e) {
|
|
24135
|
+
return `<mrow>${G(e)}</mrow>`;
|
|
22690
24136
|
}
|
|
22691
|
-
function
|
|
24137
|
+
function Nr(e) {
|
|
22692
24138
|
switch (e.kind) {
|
|
22693
|
-
case "run": return
|
|
22694
|
-
case "group": return
|
|
22695
|
-
case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${
|
|
22696
|
-
case "sup": return `<msup>${
|
|
22697
|
-
case "sub": return `<msub>${
|
|
22698
|
-
case "subSup": return `<msubsup>${
|
|
22699
|
-
case "nary": return
|
|
22700
|
-
case "delimiter": return
|
|
22701
|
-
case "radical": return e.index && e.index.length ? `<mroot>${
|
|
22702
|
-
case "limit": return
|
|
22703
|
-
case "array": return
|
|
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 =
|
|
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 =
|
|
24155
|
+
let t = K(e.base), n = "<mo stretchy=\"true\">―</mo>";
|
|
22710
24156
|
return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
|
|
22711
24157
|
}
|
|
22712
|
-
case "accent": return
|
|
22713
|
-
case "func": return `<mrow>${
|
|
22714
|
-
case "phant": return
|
|
22715
|
-
case "sPre": return `<mmultiscripts>${
|
|
22716
|
-
case "box": return
|
|
22717
|
-
case "borderBox": return
|
|
24158
|
+
case "accent": return Rr(e);
|
|
24159
|
+
case "func": return `<mrow>${K(e.name)}<mo>⁡</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
|
|
22721
|
-
let t = e.show ?
|
|
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
|
|
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 =
|
|
24173
|
+
let o = G(e.base);
|
|
22728
24174
|
return t.length ? `<menclose notation="${t.join(" ")}">${o}</menclose>` : `<mrow>${o}</mrow>`;
|
|
22729
24175
|
}
|
|
22730
|
-
var
|
|
24176
|
+
var Ir = {
|
|
22731
24177
|
"̀": "`",
|
|
22732
24178
|
"́": "´",
|
|
22733
24179
|
"̂": "^",
|
|
@@ -22738,7 +24184,7 @@ var Ct = {
|
|
|
22738
24184
|
"̌": "ˇ",
|
|
22739
24185
|
"⃗": "→",
|
|
22740
24186
|
"⃖": "←"
|
|
22741
|
-
},
|
|
24187
|
+
}, Lr = new Set([
|
|
22742
24188
|
"̅",
|
|
22743
24189
|
"̄",
|
|
22744
24190
|
"¯",
|
|
@@ -22746,47 +24192,47 @@ var Ct = {
|
|
|
22746
24192
|
"̲",
|
|
22747
24193
|
"̳"
|
|
22748
24194
|
]);
|
|
22749
|
-
function
|
|
22750
|
-
let t =
|
|
22751
|
-
if (
|
|
22752
|
-
let n =
|
|
22753
|
-
return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${
|
|
22754
|
-
}
|
|
22755
|
-
function
|
|
22756
|
-
let t =
|
|
24195
|
+
function Rr(e) {
|
|
24196
|
+
let t = K(e.base);
|
|
24197
|
+
if (Lr.has(e.char)) return `<mover>${t}<mo stretchy="true">―</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
|
|
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>${
|
|
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
|
|
22766
|
-
function
|
|
22767
|
-
let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 :
|
|
22768
|
-
return a = t ? r.length && i.length ? `<msubsup>${n}${
|
|
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
|
|
22771
|
-
let t = (e) => `<mo fence="true" stretchy="true">${
|
|
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
|
|
22775
|
-
return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${
|
|
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
|
|
22778
|
-
function
|
|
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
|
|
24228
|
+
function q(e, t) {
|
|
22783
24229
|
return RegExp(`(?:^|\\s)${t}="([^"]*)"`).exec(e)?.[1];
|
|
22784
24230
|
}
|
|
22785
|
-
function
|
|
22786
|
-
let r = Number.parseFloat(
|
|
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
|
|
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 =
|
|
24246
|
+
let r = q(e, n);
|
|
22801
24247
|
r !== void 0 && t.set(n, r);
|
|
22802
24248
|
}
|
|
22803
|
-
let n =
|
|
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
|
|
22813
|
-
let r =
|
|
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
|
|
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
|
|
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
|
|
22857
|
-
let i =
|
|
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 =
|
|
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 =
|
|
22881
|
-
|
|
22882
|
-
let c = a === "path" ? new Path2D(
|
|
22883
|
-
a === "rect" ? c.rect(
|
|
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
|
|
22888
|
-
let { width:
|
|
22889
|
-
if (!
|
|
22890
|
-
|
|
22891
|
-
let
|
|
22892
|
-
for (;
|
|
22893
|
-
let
|
|
22894
|
-
if (!
|
|
22895
|
-
i.imageSmoothingEnabled = !0, i.imageSmoothingQuality = "high", i.drawImage(
|
|
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:
|
|
22899
|
-
widthPx:
|
|
22900
|
-
heightPx:
|
|
24344
|
+
source: s,
|
|
24345
|
+
widthPx: c,
|
|
24346
|
+
heightPx: l
|
|
22901
24347
|
};
|
|
22902
24348
|
}
|
|
22903
|
-
function
|
|
22904
|
-
let
|
|
22905
|
-
if (!
|
|
22906
|
-
let i =
|
|
22907
|
-
return i ? (i.drawImage(
|
|
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
|
|
24357
|
+
function ei(e) {
|
|
22912
24358
|
return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
|
|
22913
24359
|
}
|
|
22914
|
-
function
|
|
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
|
|
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
|
|
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
|
-
},
|
|
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
|
|
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
|
|
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
|
|
22999
|
-
function
|
|
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
|
|
24448
|
+
function ui(e) {
|
|
23003
24449
|
if (!e || typeof e != "object" || Array.isArray(e)) return !1;
|
|
23004
24450
|
let t = e;
|
|
23005
|
-
return
|
|
24451
|
+
return li(t.requiredBytes) && li(t.offeredBytes) && t.requiredBytes > t.offeredBytes;
|
|
23006
24452
|
}
|
|
23007
|
-
var
|
|
23008
|
-
code =
|
|
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
|
|
23016
|
-
if (e instanceof
|
|
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(
|
|
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" || !
|
|
24473
|
+
if (!(r.code !== "ooxml-insufficient-credit" || !ui(r))) return new di(r);
|
|
23028
24474
|
}
|
|
23029
|
-
function
|
|
23030
|
-
let r =
|
|
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
|
|
23034
|
-
if (
|
|
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
|
|
23037
|
-
return e instanceof
|
|
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
|
|
23042
|
-
function
|
|
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
|
|
24491
|
+
function bi(e) {
|
|
23046
24492
|
if (!e || typeof e != "object" || Array.isArray(e)) return !1;
|
|
23047
24493
|
let t = e;
|
|
23048
|
-
return
|
|
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
|
|
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 (!
|
|
24503
|
+
if (!bi(t)) throw TypeError("OOXML resource usage checkpoint is invalid");
|
|
23058
24504
|
return t;
|
|
23059
24505
|
}
|
|
23060
|
-
function
|
|
24506
|
+
function Si(e) {
|
|
23061
24507
|
return e === "docx" || e === "xlsx" || e === "pptx";
|
|
23062
24508
|
}
|
|
23063
|
-
function
|
|
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
|
|
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
|
|
23070
|
-
return
|
|
24515
|
+
function Ti(e) {
|
|
24516
|
+
return wi(e, _i) && /^[a-z0-9][a-z0-9-]*$/u.test(e);
|
|
23071
24517
|
}
|
|
23072
|
-
function
|
|
23073
|
-
return !
|
|
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
|
|
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
|
-
]),
|
|
23123
|
-
function
|
|
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 !
|
|
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
|
|
24574
|
+
function ji(e) {
|
|
23129
24575
|
if (!e || typeof e != "object" || Array.isArray(e)) return !1;
|
|
23130
24576
|
let t = e;
|
|
23131
|
-
if (!
|
|
23132
|
-
let n = t.violation, r =
|
|
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 : !(
|
|
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
|
|
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
|
|
23145
|
-
if (!
|
|
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:
|
|
24603
|
+
usage: Mi(t.usage)
|
|
23158
24604
|
}
|
|
23159
24605
|
};
|
|
23160
|
-
return
|
|
24606
|
+
return ji(n) ? n : void 0;
|
|
23161
24607
|
}
|
|
23162
|
-
function
|
|
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
|
|
24612
|
+
function Fi(e) {
|
|
23167
24613
|
let t = e instanceof Error ? e.message : String(e);
|
|
23168
|
-
if (!t.startsWith(
|
|
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" || !
|
|
23178
|
-
}
|
|
23179
|
-
function
|
|
23180
|
-
|
|
23181
|
-
|
|
23182
|
-
|
|
23183
|
-
|
|
23184
|
-
|
|
23185
|
-
|
|
23186
|
-
|
|
23187
|
-
|
|
23188
|
-
}
|
|
23189
|
-
}
|
|
23190
|
-
let n =
|
|
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:
|
|
23194
|
-
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:
|
|
23197
|
-
offeredBytes:
|
|
24648
|
+
requiredBytes: r.requiredBytes,
|
|
24649
|
+
offeredBytes: r.offeredBytes
|
|
23198
24650
|
}
|
|
23199
24651
|
};
|
|
23200
|
-
let
|
|
23201
|
-
if (
|
|
23202
|
-
let e =
|
|
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
|
|
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 (
|
|
23214
|
-
message: typeof
|
|
23215
|
-
errorName:
|
|
23216
|
-
...
|
|
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
|
|
23219
|
-
if (typeof
|
|
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
|
|
24675
|
+
let o = e instanceof Error ? e : Error(a), s = o;
|
|
23224
24676
|
return {
|
|
23225
|
-
message: typeof
|
|
23226
|
-
errorName:
|
|
23227
|
-
...typeof
|
|
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
|
|
24682
|
+
function Li(e) {
|
|
23231
24683
|
try {
|
|
23232
|
-
return
|
|
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
|
|
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
|
-
|
|
23248
|
-
|
|
23249
|
-
|
|
23250
|
-
|
|
23251
|
-
|
|
23252
|
-
|
|
23253
|
-
|
|
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
|
|
23258
|
-
maxArchiveEntryBytes:
|
|
23259
|
-
maxTotalInflatedBytes:
|
|
23260
|
-
maxArchiveEntries:
|
|
24734
|
+
var Wi = Object.freeze({
|
|
24735
|
+
maxArchiveEntryBytes: ne,
|
|
24736
|
+
maxTotalInflatedBytes: re,
|
|
24737
|
+
maxArchiveEntries: ie
|
|
23261
24738
|
});
|
|
23262
|
-
function
|
|
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
|
|
23269
|
-
if (e === void 0) return
|
|
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 ${
|
|
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
|
|
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
|
|
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 =
|
|
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:
|
|
23288
|
-
maxTotalInflatedBytes:
|
|
23289
|
-
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
|
|
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:
|
|
24773
|
+
policy: Ji(e),
|
|
23297
24774
|
debug: e.debug ?? !1,
|
|
23298
24775
|
...e.onResourceMetrics ? { onResourceMetrics: e.onResourceMetrics } : {}
|
|
23299
24776
|
});
|
|
23300
24777
|
}
|
|
23301
|
-
function
|
|
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
|
|
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
|
|
23319
|
-
if (
|
|
23320
|
-
console.log(`%c${e}`,
|
|
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
|
|
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
|
|
23331
|
-
let t = e.scope === "session" ? "SESSION" : "LOAD", n = e.status === "ok" ? e.scope === "session" ? "COMPLETE" : "READY" : "FAILED", r = [
|
|
23332
|
-
if (r.push(
|
|
23333
|
-
r.push(
|
|
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 ?
|
|
23336
|
-
r.push(
|
|
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(
|
|
23340
|
-
r.push(
|
|
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(
|
|
24824
|
+
r.push(X(t || "unclassified error", 68));
|
|
23348
24825
|
}
|
|
23349
24826
|
return r.push(`└${"─".repeat(68)}┘`), r.join("\n");
|
|
23350
24827
|
}
|
|
23351
|
-
function
|
|
23352
|
-
|
|
24828
|
+
function ta(e) {
|
|
24829
|
+
Qi(ea(e));
|
|
23353
24830
|
}
|
|
23354
|
-
function
|
|
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
|
|
24844
|
+
function ra(e) {
|
|
23368
24845
|
return e < 1e3 ? `${Math.round(e)} ms` : `${(e / 1e3).toFixed(2)} s`;
|
|
23369
24846
|
}
|
|
23370
|
-
function
|
|
24847
|
+
function ia(e) {
|
|
23371
24848
|
return Number.isSafeInteger(e) ? e.toLocaleString("en-US") : "—";
|
|
23372
24849
|
}
|
|
23373
|
-
function
|
|
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
|
|
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
|
|
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
|
|
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 ? "—" :
|
|
23387
|
-
return
|
|
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
|
|
23392
|
-
async function
|
|
23393
|
-
e.observeUsage(await t(
|
|
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
|
|
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 ??
|
|
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 =
|
|
24903
|
+
t && (this.lastUsage = ma(t));
|
|
23427
24904
|
let n = this.lastUsage;
|
|
23428
24905
|
this.checkpoints.push(Object.freeze({
|
|
23429
|
-
name:
|
|
23430
|
-
elapsedMs:
|
|
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 =
|
|
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 =
|
|
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 &&
|
|
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 =
|
|
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 ??
|
|
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:
|
|
23466
|
-
...e === "error" ? { error:
|
|
24942
|
+
...n ? { outcome: va(n) } : {},
|
|
24943
|
+
...e === "error" ? { error: ya(t) } : {}
|
|
23467
24944
|
});
|
|
23468
24945
|
}
|
|
23469
24946
|
};
|
|
23470
|
-
function
|
|
24947
|
+
function da(e, t) {
|
|
23471
24948
|
try {
|
|
23472
24949
|
let n = e(t);
|
|
23473
|
-
|
|
24950
|
+
fa(n) && Promise.resolve(n).catch(() => void 0);
|
|
23474
24951
|
} catch {}
|
|
23475
24952
|
}
|
|
23476
|
-
function
|
|
24953
|
+
function fa(e) {
|
|
23477
24954
|
return (typeof e == "object" && !!e || typeof e == "function") && typeof e.then == "function";
|
|
23478
24955
|
}
|
|
23479
|
-
function
|
|
24956
|
+
function pa() {
|
|
23480
24957
|
return typeof performance > "u" ? Date.now() : performance.now();
|
|
23481
24958
|
}
|
|
23482
|
-
function
|
|
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
|
|
24968
|
+
function ha(e) {
|
|
23492
24969
|
try {
|
|
23493
|
-
return e instanceof
|
|
24970
|
+
return e instanceof T ? ma(e.details.violation.usage) : void 0;
|
|
23494
24971
|
} catch {
|
|
23495
24972
|
return;
|
|
23496
24973
|
}
|
|
23497
24974
|
}
|
|
23498
|
-
function
|
|
24975
|
+
function ga(e, t) {
|
|
23499
24976
|
return Math.max(0, Math.round((t - e) * 10) / 10);
|
|
23500
24977
|
}
|
|
23501
|
-
function
|
|
24978
|
+
function _a(e) {
|
|
23502
24979
|
return e.replace(/[^a-z0-9 -]/giu, "").trim().slice(0, 32) || "checkpoint";
|
|
23503
24980
|
}
|
|
23504
|
-
function
|
|
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
|
|
24984
|
+
function ya(e) {
|
|
23508
24985
|
try {
|
|
23509
|
-
if (e instanceof
|
|
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
|
|
23519
|
-
if (e instanceof
|
|
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
|
|
23524
|
-
function
|
|
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
|
|
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
|
|
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
|
-
|
|
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:
|
|
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
|
|
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 !
|
|
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:
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
|
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 (
|
|
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 &&
|
|
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
|
-
},
|
|
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,
|
|
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
|
-
},
|
|
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
|
-
|
|
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 =
|
|
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 (
|
|
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:
|
|
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
|
-
|
|
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 (
|
|
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:
|
|
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:
|
|
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
|
-
},
|
|
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
|
-
],
|
|
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
|
-
],
|
|
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
|
-
],
|
|
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
|
-
],
|
|
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
|
|
27850
|
-
let t = 0, n =
|
|
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
|
-
|
|
29330
|
+
Ta[r] <= e ? t = r : n = r - 1;
|
|
27854
29331
|
}
|
|
27855
|
-
return
|
|
29332
|
+
return Ea[t];
|
|
27856
29333
|
}
|
|
27857
|
-
function
|
|
27858
|
-
return
|
|
29334
|
+
function Aa(e) {
|
|
29335
|
+
return wa[ka(e)];
|
|
27859
29336
|
}
|
|
27860
|
-
var
|
|
29337
|
+
var ja = (() => {
|
|
27861
29338
|
let e = /* @__PURE__ */ new Map();
|
|
27862
|
-
for (let t = 0; t <
|
|
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
|
|
27866
|
-
return
|
|
29342
|
+
function Ma(e) {
|
|
29343
|
+
return ja.get(e) ?? null;
|
|
27867
29344
|
}
|
|
27868
|
-
var
|
|
29345
|
+
var Na = (() => {
|
|
27869
29346
|
let e = /* @__PURE__ */ new Map();
|
|
27870
|
-
for (let t = 0; t <
|
|
27871
|
-
pair:
|
|
27872
|
-
type:
|
|
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
|
|
27877
|
-
return
|
|
29353
|
+
function Pa(e) {
|
|
29354
|
+
return Na.get(e) ?? null;
|
|
27878
29355
|
}
|
|
27879
|
-
var
|
|
27880
|
-
function
|
|
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 (
|
|
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
|
|
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 (
|
|
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
|
|
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" ?
|
|
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" :
|
|
27938
|
-
let p = f === "R" ?
|
|
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
|
|
29457
|
+
function Ua(e) {
|
|
27981
29458
|
return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
|
|
27982
29459
|
}
|
|
27983
|
-
function
|
|
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 (
|
|
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 (!(
|
|
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
|
|
28033
|
-
function
|
|
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 =
|
|
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:
|
|
29561
|
+
expect: Ua(o.pair),
|
|
28085
29562
|
pos: n
|
|
28086
29563
|
});
|
|
28087
29564
|
} else {
|
|
28088
|
-
let r =
|
|
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 =
|
|
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 =
|
|
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 (!
|
|
29602
|
+
if (!La(r[a[e]])) continue;
|
|
28126
29603
|
let t = e;
|
|
28127
|
-
for (; t < o &&
|
|
28128
|
-
let n = e > 0 ?
|
|
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++)
|
|
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
|
|
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] ??
|
|
28141
|
-
let a = t === "rtl" ? 1 : t === "ltr" ? 0 :
|
|
28142
|
-
for (let e = 0; e < r; e++) u[e] =
|
|
28143
|
-
let d =
|
|
28144
|
-
for (let t of d)
|
|
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" ||
|
|
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
|
|
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
|
|
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
|
|
29680
|
+
var Xa = class {
|
|
28204
29681
|
computeLevels(e, t, n) {
|
|
28205
|
-
let { cps: r, units: i, starts: a } =
|
|
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
|
|
29693
|
+
return Ja(e, t, n);
|
|
28217
29694
|
}
|
|
28218
29695
|
getMirror(e) {
|
|
28219
|
-
return
|
|
29696
|
+
return Ma(e);
|
|
28220
29697
|
}
|
|
28221
29698
|
};
|
|
28222
|
-
function
|
|
28223
|
-
return new
|
|
29699
|
+
function Za() {
|
|
29700
|
+
return new Xa();
|
|
28224
29701
|
}
|
|
28225
29702
|
//#endregion
|
|
28226
29703
|
//#region packages/core/src/text/bidi/engine.ts
|
|
28227
|
-
var
|
|
28228
|
-
function
|
|
28229
|
-
return
|
|
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
|
|
28234
|
-
function
|
|
28235
|
-
return
|
|
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
|
|
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:
|
|
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
|
|
28251
|
-
function
|
|
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
|
|
29733
|
+
function oo(e) {
|
|
28257
29734
|
return {
|
|
28258
29735
|
enabled: e?.kinsoku !== !1,
|
|
28259
|
-
lineStartForbidden:
|
|
28260
|
-
lineEndForbidden:
|
|
29736
|
+
lineStartForbidden: ao(e?.noLineBreaksBefore ?? ro),
|
|
29737
|
+
lineEndForbidden: ao(e?.noLineBreaksAfter ?? io)
|
|
28261
29738
|
};
|
|
28262
29739
|
}
|
|
28263
|
-
var
|
|
29740
|
+
var so = oo();
|
|
28264
29741
|
//#endregion
|
|
28265
29742
|
//#region packages/core/src/text/kinsoku/split.ts
|
|
28266
|
-
function
|
|
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
|
|
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
|
|
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
|
|
28289
|
-
return e === 32 || e === 9 || e === 10 || e === 13 ? !1 : !
|
|
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
|
|
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
|
-
],
|
|
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
|
-
],
|
|
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
|
-
],
|
|
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
|
|
33803
|
-
let t = 0, n =
|
|
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
|
-
|
|
35283
|
+
mo[r] <= e ? t = r : n = r - 1;
|
|
33807
35284
|
}
|
|
33808
|
-
return
|
|
35285
|
+
return po[ho[t]];
|
|
33809
35286
|
}
|
|
33810
|
-
function
|
|
33811
|
-
let t = 0, n =
|
|
33812
|
-
if (n < 0 || e <
|
|
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
|
-
|
|
35292
|
+
go[r] <= e ? t = r : n = r - 1;
|
|
33816
35293
|
}
|
|
33817
|
-
return e <
|
|
35294
|
+
return e < _o[t];
|
|
33818
35295
|
}
|
|
33819
|
-
function
|
|
33820
|
-
let n =
|
|
35296
|
+
function bo(e, t) {
|
|
35297
|
+
let n = vo(e);
|
|
33821
35298
|
if (n === "OP") return !0;
|
|
33822
|
-
let r =
|
|
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" && !
|
|
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
|
|
35304
|
+
function xo(e) {
|
|
33828
35305
|
return e === "my" || e === "bo";
|
|
33829
35306
|
}
|
|
33830
|
-
function
|
|
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
|
|
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
|
|
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
|
|
33840
|
-
for (let t of e) if (
|
|
35316
|
+
function wo(e) {
|
|
35317
|
+
for (let t of e) if ($(t.codePointAt(0))) return !0;
|
|
33841
35318
|
return !1;
|
|
33842
35319
|
}
|
|
33843
|
-
function
|
|
35320
|
+
function To(e) {
|
|
33844
35321
|
for (let t of e) {
|
|
33845
35322
|
let e = t.codePointAt(0);
|
|
33846
|
-
if (
|
|
35323
|
+
if ($(e)) return xo(Co(e));
|
|
33847
35324
|
}
|
|
33848
35325
|
return !1;
|
|
33849
35326
|
}
|
|
33850
|
-
function
|
|
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 (
|
|
33855
|
-
if (
|
|
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
|
|
33862
|
-
function
|
|
33863
|
-
let t =
|
|
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
|
|
35348
|
+
return Oo.set(e, n), n;
|
|
33872
35349
|
}
|
|
33873
|
-
function
|
|
33874
|
-
if (
|
|
33875
|
-
if (typeof
|
|
33876
|
-
let t =
|
|
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 =
|
|
35356
|
+
let t = ko(e);
|
|
33880
35357
|
return t ? (e) => t.segment(e) : null;
|
|
33881
35358
|
}
|
|
33882
|
-
function
|
|
33883
|
-
if (!
|
|
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 (
|
|
35364
|
+
if (!$(i)) {
|
|
33888
35365
|
r += a;
|
|
33889
35366
|
continue;
|
|
33890
35367
|
}
|
|
33891
|
-
let o =
|
|
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 (
|
|
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
|
|
35375
|
+
if (s) for (let e of zo(l)) t.push(r + e);
|
|
33899
35376
|
else {
|
|
33900
|
-
let e =
|
|
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
|
|
33914
|
-
if (!
|
|
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
|
-
|
|
35395
|
+
$(r) !== $(n) && !No(r) && !No(n) && t.push(i), r = n, i += a;
|
|
33919
35396
|
}
|
|
33920
35397
|
return t;
|
|
33921
35398
|
}
|
|
33922
|
-
function
|
|
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
|
|
33926
|
-
if (!
|
|
33927
|
-
let n = e.length, r = new Set(
|
|
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
|
|
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
|
-
(
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
33974
|
-
function
|
|
33975
|
-
if (
|
|
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
|
|
35459
|
+
return Lo = e, e;
|
|
33983
35460
|
}
|
|
33984
|
-
function
|
|
33985
|
-
let t =
|
|
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
|
|
35477
|
+
var Bo = [
|
|
34001
35478
|
"U",
|
|
34002
35479
|
"R",
|
|
34003
35480
|
"Tu",
|
|
34004
35481
|
"Tr"
|
|
34005
|
-
],
|
|
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
|
-
],
|
|
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
|
|
34571
|
-
let t = 0, n =
|
|
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
|
-
|
|
36051
|
+
Vo[r] <= e ? t = r : n = r - 1;
|
|
34575
36052
|
}
|
|
34576
|
-
return
|
|
36053
|
+
return Ho[t];
|
|
34577
36054
|
}
|
|
34578
|
-
function
|
|
34579
|
-
return
|
|
36055
|
+
function Wo(e) {
|
|
36056
|
+
return Bo[Uo(e)];
|
|
34580
36057
|
}
|
|
34581
|
-
function
|
|
34582
|
-
return
|
|
36058
|
+
function Go(e) {
|
|
36059
|
+
return Ko.get(e) ?? null;
|
|
34583
36060
|
}
|
|
34584
|
-
var
|
|
36061
|
+
var Ko = new Map([
|
|
34585
36062
|
[65292, 65040],
|
|
34586
36063
|
[12289, 65041],
|
|
34587
36064
|
[12290, 65042]
|
|
34588
36065
|
]);
|
|
34589
|
-
function
|
|
34590
|
-
return
|
|
36066
|
+
function qo(e) {
|
|
36067
|
+
return Jo.get(e) ?? null;
|
|
34591
36068
|
}
|
|
34592
|
-
var
|
|
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
|
-
]),
|
|
34612
|
-
function
|
|
34613
|
-
return
|
|
36088
|
+
]), Yo = new Set([65307]);
|
|
36089
|
+
function Xo(e) {
|
|
36090
|
+
return Yo.has(e);
|
|
34614
36091
|
}
|
|
34615
|
-
var
|
|
36092
|
+
var Zo = new Set([
|
|
34616
36093
|
12540,
|
|
34617
36094
|
12316,
|
|
34618
36095
|
65374
|
|
34619
36096
|
]);
|
|
34620
|
-
function
|
|
34621
|
-
return
|
|
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
|
|
34626
|
-
function
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
34686
|
-
let n =
|
|
34687
|
-
return n === null ? t() :
|
|
36162
|
+
function ss(e, t) {
|
|
36163
|
+
let n = ns(e);
|
|
36164
|
+
return n === null ? t() : os(n, t);
|
|
34688
36165
|
}
|
|
34689
|
-
function
|
|
34690
|
-
let t =
|
|
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 =
|
|
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),
|
|
36184
|
+
return e.fonts?.addEventListener?.("loadingdone", i), e.fonts?.addEventListener?.("loadingerror", i), ts.set(e, r), r;
|
|
34708
36185
|
}
|
|
34709
|
-
function
|
|
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
|
|
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),
|
|
36217
|
+
return e.fillText(i, r.width / 2, r.height / 2), ls(e, i);
|
|
34741
36218
|
}
|
|
34742
|
-
function
|
|
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
|
|
36224
|
+
function fs(e, t, n, r) {
|
|
34748
36225
|
let i = (e, t, n, r) => {
|
|
34749
|
-
let i = Math.max(
|
|
34750
|
-
return Math.min(
|
|
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
|
|
34755
|
-
let n =
|
|
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 =
|
|
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 =
|
|
34768
|
-
let n =
|
|
34769
|
-
c = i !== null && o !== null && s !== null && l !== null &&
|
|
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
|
|
36255
|
+
function ms(e, t) {
|
|
34779
36256
|
let n = e.canvas;
|
|
34780
|
-
return n?.style ?
|
|
36257
|
+
return n?.style ? ss(e, () => {
|
|
34781
36258
|
let r = n.style, i = r.fontFeatureSettings;
|
|
34782
|
-
r.fontFeatureSettings =
|
|
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
|
|
34791
|
-
return
|
|
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
|
|
36287
|
+
var gs = [
|
|
34811
36288
|
"http",
|
|
34812
36289
|
"https",
|
|
34813
36290
|
"mailto",
|
|
34814
36291
|
"tel"
|
|
34815
36292
|
];
|
|
34816
|
-
function
|
|
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
|
|
36302
|
+
function vs(e, t = gs) {
|
|
34826
36303
|
if (e === "") return null;
|
|
34827
|
-
let n =
|
|
36304
|
+
let n = _s(e);
|
|
34828
36305
|
return n === null || t.includes(n) ? e : null;
|
|
34829
36306
|
}
|
|
34830
|
-
function
|
|
34831
|
-
let r =
|
|
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
|
|
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
|
|
36341
|
+
function xs(e, t) {
|
|
34865
36342
|
if (!e) return null;
|
|
34866
36343
|
let n = e.toLowerCase();
|
|
34867
|
-
for (let [e, r] of
|
|
36344
|
+
for (let [e, r] of bs) if (e(n) && (t || !r.eaOnly)) return r;
|
|
34868
36345
|
return null;
|
|
34869
36346
|
}
|
|
34870
|
-
function
|
|
34871
|
-
let n =
|
|
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
|
|
34875
|
-
let r =
|
|
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
|
|
34879
|
-
let a =
|
|
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 {
|
|
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 };
|