@silurus/ooxml 0.58.0 → 0.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,70 +8,181 @@ var e = Object.defineProperty, t = (t, n) => {
8
8
  return n || e(r, Symbol.toStringTag, { value: "Module" }), r;
9
9
  }, n = 15e3;
10
10
  function r(e) {
11
- return e.sheet ? Promise.resolve() : new Promise((t) => {
12
- let n = () => {
13
- e.removeEventListener("load", n), e.removeEventListener("error", n), t();
14
- };
15
- e.addEventListener("load", n), e.addEventListener("error", n);
16
- });
17
- }
18
- function i(e) {
19
11
  return Promise.race([e, new Promise((e) => setTimeout(e, n))]);
20
12
  }
21
- async function a(e, t) {
22
- if (typeof document > "u") return;
23
- let n = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Set(), o = [], s = /* @__PURE__ */ new Set();
24
- for (let i of e) {
25
- if (!i) continue;
26
- let e = i.toLowerCase();
27
- if (n.has(e)) continue;
28
- n.add(e);
29
- let c = t[e];
30
- if (!c) continue;
31
- let l = document.querySelector(`link[href="${c.url}"]`);
32
- if (!l) try {
33
- l = document.createElement("link"), l.rel = "stylesheet", l.href = c.url, document.head.appendChild(l);
34
- } catch {
35
- s.add((c.loadFamily ?? i).toLowerCase()), l = null;
36
- }
37
- l && o.push(r(l)), a.add((c.loadFamily ?? i).toLowerCase());
13
+ var i = /* @__PURE__ */ new Map();
14
+ function a(e) {
15
+ let t = [], n = /@font-face\s*\{([^}]*)\}/g, r;
16
+ for (; r = n.exec(e);) {
17
+ let e = r[1], n = (t) => e.match(RegExp(`(?:^|;|\\n)\\s*${t}\\s*:\\s*([^;]+)`, "i"))?.[1].trim(), i = n("font-family"), a = n("src");
18
+ if (!i || !a) continue;
19
+ let o = {}, s = n("font-style");
20
+ s && (o.style = s);
21
+ let c = n("font-weight");
22
+ c && (o.weight = c);
23
+ let l = n("font-stretch");
24
+ l && (o.stretch = l);
25
+ let u = n("unicode-range");
26
+ u && (o.unicodeRange = u), t.push({
27
+ family: i.replace(/^['"]|['"]$/g, ""),
28
+ src: a,
29
+ descriptors: o
30
+ });
38
31
  }
39
- if (a.size === 0) return;
40
- await i(Promise.allSettled(o));
41
- let c = [...document.fonts].filter((e) => a.has(e.family.toLowerCase()));
42
- await i(Promise.allSettled(c.map((e) => e.load())).then((e) => (e.forEach((e, t) => {
43
- e.status === "rejected" && s.add(c[t].family.toLowerCase());
44
- }), document.fonts.ready))), s.size > 0 && console.warn(`[ooxml] failed to preload web font(s): ${[...s].join(", ")}; falling back to system fonts (text may shift or differ).`);
32
+ return t;
33
+ }
34
+ function o() {
35
+ return typeof document < "u" && document && document.fonts ? document.fonts : typeof self < "u" && self && "fonts" in self ? self.fonts : null;
36
+ }
37
+ async function s(e, t) {
38
+ let n = o();
39
+ if (!n || typeof FontFace > "u" || typeof fetch > "u") return;
40
+ let s = /* @__PURE__ */ new Set(), c = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Map(), d = /* @__PURE__ */ new Set();
41
+ for (let n of e) {
42
+ if (!n) continue;
43
+ let e = n.toLowerCase();
44
+ if (s.has(e)) continue;
45
+ s.add(e);
46
+ let r = t[e];
47
+ if (!r) continue;
48
+ l.add(r.url);
49
+ let i = (r.loadFamily ?? n).toLowerCase();
50
+ c.add(i);
51
+ let a = u.get(r.url);
52
+ a || (a = /* @__PURE__ */ new Set(), u.set(r.url, a)), a.add(i);
53
+ }
54
+ if (c.size === 0) return;
55
+ let f = await r(Promise.all([...l].map((e) => {
56
+ let t = i.get(e);
57
+ if (t) return t;
58
+ let r = (async () => {
59
+ try {
60
+ let t = await fetch(e);
61
+ if (!t.ok) throw Error(`HTTP ${t.status}`);
62
+ let r = [];
63
+ for (let e of a(await t.text())) {
64
+ let t = new FontFace(e.family, e.src, e.descriptors);
65
+ n.add(t), r.push(t);
66
+ }
67
+ return r;
68
+ } catch {
69
+ i.delete(e);
70
+ for (let t of u.get(e) ?? []) d.add(t);
71
+ return [];
72
+ }
73
+ })();
74
+ return i.set(e, r), r;
75
+ }))), p = (Array.isArray(f) ? f : []).flat();
76
+ await r(Promise.allSettled(p.map((e) => e.load())).then((e) => (e.forEach((e, t) => {
77
+ e.status === "rejected" && d.add(p[t].family.replace(/['"]/g, "").toLowerCase());
78
+ }), n.ready))), d.size > 0 && console.warn(`[ooxml] failed to preload web font(s): ${[...d].join(", ")}; falling back to system fonts (text may shift or differ).`);
45
79
  }
46
80
  //#endregion
81
+ //#region packages/core/src/fonts/scripts.ts
82
+ function c(e) {
83
+ if (!e) return null;
84
+ let t = e.toLowerCase();
85
+ 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;
86
+ }
87
+ function l(e, t) {
88
+ let n = t === "serif" ? "Noto Serif" : "Noto Sans", r = {
89
+ jp: [
90
+ "jp",
91
+ "sc",
92
+ "tc",
93
+ "kr"
94
+ ],
95
+ sc: [
96
+ "sc",
97
+ "tc",
98
+ "jp",
99
+ "kr"
100
+ ],
101
+ tc: [
102
+ "tc",
103
+ "sc",
104
+ "jp",
105
+ "kr"
106
+ ],
107
+ kr: [
108
+ "kr",
109
+ "jp",
110
+ "sc",
111
+ "tc"
112
+ ]
113
+ }, i = {
114
+ kr: "KR",
115
+ sc: "SC",
116
+ tc: "TC",
117
+ jp: "JP"
118
+ };
119
+ return r[e].map((e) => `${n} ${i[e]}`);
120
+ }
121
+ var u = [
122
+ "Noto Sans",
123
+ "Noto Sans Hebrew",
124
+ "Noto Sans Thai",
125
+ "Noto Sans Devanagari"
126
+ ], d = ["Noto Serif", "Noto Serif Hebrew"], f = (e) => `https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`, p = {
127
+ "noto sans kr": { url: f("Noto+Sans+KR") },
128
+ "noto sans sc": { url: f("Noto+Sans+SC") },
129
+ "noto sans tc": { url: f("Noto+Sans+TC") },
130
+ "noto sans jp": { url: f("Noto+Sans+JP") },
131
+ "noto serif kr": { url: f("Noto+Serif+KR") },
132
+ "noto serif sc": { url: f("Noto+Serif+SC") },
133
+ "noto serif tc": { url: f("Noto+Serif+TC") },
134
+ "noto serif jp": { url: f("Noto+Serif+JP") },
135
+ "noto sans": { url: f("Noto+Sans") },
136
+ "noto serif": { url: f("Noto+Serif") },
137
+ "noto sans devanagari": { url: f("Noto+Sans+Devanagari") },
138
+ "noto sans thai": { url: f("Noto+Sans+Thai") },
139
+ "noto sans hebrew": { url: f("Noto+Sans+Hebrew") },
140
+ "noto serif hebrew": { url: f("Noto+Serif+Hebrew") }
141
+ }, m = [
142
+ "Noto Sans KR",
143
+ "Noto Sans SC",
144
+ "Noto Sans TC",
145
+ "Noto Sans JP",
146
+ "Noto Serif KR",
147
+ "Noto Serif SC",
148
+ "Noto Serif TC",
149
+ "Noto Serif JP",
150
+ "Noto Sans",
151
+ "Noto Serif",
152
+ "Noto Sans Devanagari",
153
+ "Noto Sans Thai",
154
+ "Noto Sans Hebrew",
155
+ "Noto Serif Hebrew"
156
+ ];
157
+ //#endregion
47
158
  //#region packages/core/src/chart/axis-scale.ts
48
- function o(e, t = 5) {
159
+ function h(e, t = 5) {
49
160
  if (e === 0) return 1;
50
161
  let n = e / t, r = 10 ** Math.floor(Math.log10(n)), i = n / r;
51
162
  return (i < 1.5 ? 1 : i < 3.5 ? 2 : i < 7.5 ? 5 : 10) * r;
52
163
  }
53
- function s(e, t, n = 0) {
164
+ function g(e, t, n = 0) {
54
165
  if (e <= 0) return t;
55
166
  let r = e + (e - n) / 20;
56
167
  return Math.ceil(r / t) * t;
57
168
  }
58
- function c(e, t) {
169
+ function _(e, t) {
59
170
  if (e >= 0) return 0;
60
171
  let n = Math.floor(e / t) * t;
61
172
  return Math.abs(n - e) < t * 1e-9 ? n - t : n;
62
173
  }
63
174
  //#endregion
64
175
  //#region packages/core/src/chart/chart-number-format.ts
65
- function l(e) {
176
+ function v(e) {
66
177
  return Number.isInteger(e) ? String(e) : e.toFixed(6).replace(/\.?0+$/, "");
67
178
  }
68
- function u(e, t) {
69
- if (!t || t.trim().toLowerCase() === "general") return l(e);
70
- if (d(t)) return f(e, t);
71
- let n = p(t), r;
72
- return r = e > 0 ? n[0] ?? t : e < 0 ? n[1] ?? n[0] ?? t : n[2] ?? n[0] ?? t, r === "" ? "" : (e < 0 && n.length < 2 ? "-" : "") + m(Math.abs(e), r);
179
+ function y(e, t) {
180
+ if (!t || t.trim().toLowerCase() === "general") return v(e);
181
+ if (b(t)) return x(e, t);
182
+ let n = S(t), r;
183
+ return r = e > 0 ? n[0] ?? t : e < 0 ? n[1] ?? n[0] ?? t : n[2] ?? n[0] ?? t, r === "" ? "" : (e < 0 && n.length < 2 ? "-" : "") + C(Math.abs(e), r);
73
184
  }
74
- function d(e) {
185
+ function b(e) {
75
186
  let t = !1;
76
187
  for (let n = 0; n < e.length; n++) {
77
188
  let r = e[n];
@@ -93,7 +204,7 @@ function d(e) {
93
204
  }
94
205
  return !1;
95
206
  }
96
- function f(e, t) {
207
+ function x(e, t) {
97
208
  let n = Date.UTC(1899, 11, 30), r = e < 60 ? e + 1 : e, i = n + Math.floor(r) * 864e5, a = new Date(i), o = a.getUTCFullYear(), s = a.getUTCMonth() + 1, c = a.getUTCDate(), l = (e - Math.floor(e)) * 86400, u = Math.floor(l / 3600), d = Math.floor(l % 3600 / 60), f = Math.floor(l % 60), p = "", m = !1, h = 0;
98
209
  for (; h < t.length;) {
99
210
  let e = t[h];
@@ -148,7 +259,7 @@ function f(e, t) {
148
259
  }
149
260
  return p;
150
261
  }
151
- function p(e) {
262
+ function S(e) {
152
263
  let t = [], n = "";
153
264
  for (let r = 0; r < e.length; r++) {
154
265
  let i = e[r];
@@ -174,7 +285,7 @@ function p(e) {
174
285
  }
175
286
  return t.push(n), t;
176
287
  }
177
- function m(e, t) {
288
+ function C(e, t) {
178
289
  let n = [], r = 0, i = !1, a = !1;
179
290
  for (; r < t.length;) {
180
291
  let e = t[r];
@@ -235,16 +346,16 @@ function m(e, t) {
235
346
  if (!i) return n.map((e) => e.text).join("");
236
347
  let o = a ? e * 100 : e, s = "";
237
348
  for (let e of n) e.kind === "num" && (s += e.text);
238
- let c = h(o, s), l = !1;
349
+ let c = w(o, s), l = !1;
239
350
  return n.map((e) => e.kind === "lit" ? e.text : l ? "" : (l = !0, c)).join("");
240
351
  }
241
- function h(e, t) {
352
+ function w(e, t) {
242
353
  let n = t.indexOf("."), r = n >= 0 ? t.slice(0, n) : t, i = n >= 0 ? t.slice(n + 1) : "", a = /,/.test(r), o = (i.match(/[#0?]/g) ?? []).length, s = (r.replace(/,/g, "").match(/0/g) ?? []).length, [c, l = ""] = e.toFixed(o).split("."), u = c.padStart(s, "0"), d = a ? u.replace(/\B(?=(\d{3})+(?!\d))/g, ",") : u;
243
354
  return o === 0 ? d : `${d}.${l.padEnd(o, "0")}`;
244
355
  }
245
356
  //#endregion
246
357
  //#region packages/core/src/shape/pattern-bitmaps.ts
247
- var g = {
358
+ var T = {
248
359
  pct5: [
249
360
  0,
250
361
  16,
@@ -626,21 +737,21 @@ var g = {
626
737
  90
627
738
  ]
628
739
  };
629
- function _(e, t, n) {
630
- let r = g[e];
740
+ function E(e, t, n) {
741
+ let r = T[e];
631
742
  if (!r) return null;
632
- let i = v(8, 8);
743
+ let i = D(8, 8);
633
744
  if (!i) return null;
634
745
  let a = i.getContext("2d");
635
746
  if (!a) return null;
636
- a.fillStyle = y(n), a.fillRect(0, 0, 8, 8), a.fillStyle = y(t);
747
+ a.fillStyle = O(n), a.fillRect(0, 0, 8, 8), a.fillStyle = O(t);
637
748
  for (let e = 0; e < 8; e++) {
638
749
  let t = r[e];
639
750
  for (let n = 0; n < 8; n++) t & 1 << 7 - n && a.fillRect(n, e, 1, 1);
640
751
  }
641
752
  return i;
642
753
  }
643
- function v(e, t) {
754
+ function D(e, t) {
644
755
  if (typeof OffscreenCanvas < "u") return new OffscreenCanvas(e, t);
645
756
  if (typeof document < "u") {
646
757
  let n = document.createElement("canvas");
@@ -648,23 +759,23 @@ function v(e, t) {
648
759
  }
649
760
  return null;
650
761
  }
651
- function y(e) {
762
+ function O(e) {
652
763
  return `rgba(${parseInt(e.slice(0, 2), 16)},${parseInt(e.slice(2, 4), 16)},${parseInt(e.slice(4, 6), 16)},${e.length >= 8 ? parseInt(e.slice(6, 8), 16) / 255 : 1})`;
653
764
  }
654
765
  //#endregion
655
766
  //#region packages/core/src/shape/paint.ts
656
- function b(e, t = 1) {
767
+ function k(e, t = 1) {
657
768
  let n = e.charCodeAt(0) === 35 ? e.slice(1) : e;
658
769
  return `rgba(${parseInt(n.slice(0, 2), 16)},${parseInt(n.slice(2, 4), 16)},${parseInt(n.slice(4, 6), 16)},${n.length >= 8 ? parseInt(n.slice(6, 8), 16) / 255 : t})`;
659
770
  }
660
- function x(e, t, n, r, i, a) {
771
+ function A(e, t, n, r, i, a) {
661
772
  if (!e || e.fillType === "none") return null;
662
- if (e.fillType === "solid") return b(e.color);
663
- if (e.fillType === "pattern") return C(e, t);
773
+ if (e.fillType === "solid") return k(e.color);
774
+ if (e.fillType === "pattern") return M(e, t);
664
775
  if (e.fillType === "gradient") {
665
776
  let o = e.stops;
666
777
  if (o.length === 0) return null;
667
- if (o.length === 1) return b(o[0].color);
778
+ if (o.length === 1) return k(o[0].color);
668
779
  let s;
669
780
  if (e.gradType === "radial") {
670
781
  let e = n + i / 2, o = r + a / 2, c = Math.sqrt(i * i + a * a) / 2;
@@ -673,23 +784,23 @@ function x(e, t, n, r, i, a) {
673
784
  let o = e.angle * Math.PI / 180, c = n + i / 2, l = r + a / 2, u = (Math.abs(Math.cos(o)) * i + Math.abs(Math.sin(o)) * a) / 2;
674
785
  s = t.createLinearGradient(c - Math.cos(o) * u, l - Math.sin(o) * u, c + Math.cos(o) * u, l + Math.sin(o) * u);
675
786
  }
676
- for (let e of o) s.addColorStop(Math.min(1, Math.max(0, e.position)), b(e.color));
787
+ for (let e of o) s.addColorStop(Math.min(1, Math.max(0, e.position)), k(e.color));
677
788
  return s;
678
789
  }
679
790
  return null;
680
791
  }
681
- var S = /* @__PURE__ */ new WeakMap();
682
- function C(e, t) {
683
- let n = `${e.preset}|${e.fg}|${e.bg}`, r = S.get(t);
684
- r || (r = /* @__PURE__ */ new Map(), S.set(t, r));
792
+ var j = /* @__PURE__ */ new WeakMap();
793
+ function M(e, t) {
794
+ let n = `${e.preset}|${e.fg}|${e.bg}`, r = j.get(t);
795
+ r || (r = /* @__PURE__ */ new Map(), j.set(t, r));
685
796
  let i = r.get(n);
686
797
  if (i) return i;
687
- let a = _(e.preset, e.fg, e.bg);
688
- if (!a) return b(e.fg);
798
+ let a = E(e.preset, e.fg, e.bg);
799
+ if (!a) return k(e.fg);
689
800
  let o = t.createPattern(a, "repeat");
690
- return o ? (r.set(n, o), o) : b(e.fg);
801
+ return o ? (r.set(n, o), o) : k(e.fg);
691
802
  }
692
- var w = {
803
+ var N = {
693
804
  dash: [6, 3],
694
805
  dot: [1.5, 3],
695
806
  dashDot: [
@@ -722,20 +833,20 @@ var w = {
722
833
  2
723
834
  ]
724
835
  };
725
- function T(e, t, n) {
836
+ function P(e, t, n) {
726
837
  if (!t) {
727
838
  e.strokeStyle = "transparent", e.lineWidth = 0, e.setLineDash([]);
728
839
  return;
729
840
  }
730
- e.strokeStyle = b(t.color);
841
+ e.strokeStyle = k(t.color);
731
842
  let r = Math.max(.5, t.width * n);
732
843
  e.lineWidth = r;
733
- let i = t.dashStyle ? w[t.dashStyle] : null;
844
+ let i = t.dashStyle ? N[t.dashStyle] : null;
734
845
  e.setLineDash(i ? i.map((e) => e * r) : []);
735
846
  }
736
847
  //#endregion
737
848
  //#region packages/core/src/units.ts
738
- var E = 12700, D = 9525, O = 4 / 3, k = [
849
+ var F = 12700, I = 9525, L = 4 / 3, R = [
739
850
  "4472C4",
740
851
  "ED7D31",
741
852
  "A9D18E",
@@ -749,30 +860,30 @@ var E = 12700, D = 9525, O = 4 / 3, k = [
749
860
  "255E91",
750
861
  "967300"
751
862
  ];
752
- function A(e, t) {
753
- return t?.color ? `#${t.color}` : `#${k[e % k.length]}`;
863
+ function z(e, t) {
864
+ return t?.color ? `#${t.color}` : `#${R[e % R.length]}`;
754
865
  }
755
- function j(e, t) {
866
+ function B(e, t) {
756
867
  let n = t.dataPointColors?.[e];
757
- return n ? `#${n}` : `#${k[e % k.length]}`;
868
+ return n ? `#${n}` : `#${R[e % R.length]}`;
758
869
  }
759
- function M(e) {
870
+ function V(e) {
760
871
  return e === "pie" || e === "doughnut";
761
872
  }
762
- function N(e, t, n) {
763
- if (M(e)) {
873
+ function H(e, t, n) {
874
+ if (V(e)) {
764
875
  let e = t[0];
765
- return e ? j(n, e) : `#${k[n % k.length]}`;
876
+ return e ? B(n, e) : `#${R[n % R.length]}`;
766
877
  }
767
- return A(n, t[n]);
878
+ return z(n, t[n]);
768
879
  }
769
- function P(e, t, n, r, i, a, o, s) {
880
+ function U(e, t, n, r, i, a, o, s) {
770
881
  e.save(), e.font = `${s}px sans-serif`, e.fillStyle = "#555", o === "cat" ? (e.textAlign = "center", e.textBaseline = "bottom", e.fillText(t.slice(0, 30), n + i / 2, r + a + s + 2)) : (e.translate(n - s - 4, r + a / 2), e.rotate(-Math.PI / 2), e.textAlign = "center", e.textBaseline = "middle", e.fillText(t.slice(0, 30), 0, 0)), e.restore();
771
882
  }
772
- function F(e) {
883
+ function ee(e) {
773
884
  return e && (e === "line" || e === "stackedLine" || e === "stackedLinePct" || e === "radar" || e === "scatter") ? "line" : "fill";
774
885
  }
775
- function I(e, t, n, r, i, a, o) {
886
+ function te(e, t, n, r, i, a, o) {
776
887
  if (e.fillStyle = n, t === "line") {
777
888
  e.strokeStyle = n;
778
889
  let t = e.lineWidth;
@@ -781,34 +892,34 @@ function I(e, t, n, r, i, a, o) {
781
892
  e.moveTo(r, s), e.lineTo(r + a, s), e.stroke(), e.lineWidth = t;
782
893
  } else e.fillRect(r, i, a, o);
783
894
  }
784
- function L(e, t) {
785
- if (M(t)) {
895
+ function ne(e, t) {
896
+ if (V(t)) {
786
897
  let n = e[0], r = n ? n.values.length : 0, i = n?.categories ?? [];
787
898
  return Array.from({ length: r }, (n, r) => ({
788
899
  label: (i[r] ?? `Item ${r + 1}`).toString(),
789
- color: N(t, e, r)
900
+ color: H(t, e, r)
790
901
  }));
791
902
  }
792
903
  return e.map((n, r) => ({
793
904
  label: n.name || `Series ${r + 1}`,
794
- color: N(t, e, r)
905
+ color: H(t, e, r)
795
906
  }));
796
907
  }
797
- function R(e, t, n, r, i, a, o = "vertical", s) {
798
- let c = F(s), l = L(t, s);
908
+ function W(e, t, n, r, i, a, o = "vertical", s) {
909
+ let c = ee(s), l = ne(t, s);
799
910
  if (o === "horizontal") {
800
911
  let t = Math.max(9, Math.min(12, a * .7));
801
912
  e.font = `${t}px sans-serif`, e.textBaseline = "middle";
802
913
  let o = l.map((t) => 14 + e.measureText(t.label.slice(0, 30)).width), s = n + (i - (o.reduce((e, t) => e + t, 0) + 12 * Math.max(0, l.length - 1))) / 2, u = r + a / 2;
803
- for (let n = 0; n < l.length; n++) I(e, c, l[n].color, s, u - t / 2, 10, t), e.fillStyle = "#333", e.textAlign = "left", e.fillText(l[n].label.slice(0, 30), s + 10 + 4, u), s += o[n] + 12;
914
+ for (let n = 0; n < l.length; n++) te(e, c, l[n].color, s, u - t / 2, 10, t), e.fillStyle = "#333", e.textAlign = "left", e.fillText(l[n].label.slice(0, 30), s + 10 + 4, u), s += o[n] + 12;
804
915
  return;
805
916
  }
806
917
  let u = Math.max(9, Math.min(12, a / (l.length + 1)));
807
918
  e.font = `${u}px sans-serif`, e.textBaseline = "middle";
808
919
  let d = u + 4, f = r + (a - d * l.length) / 2;
809
- for (let t = 0; t < l.length; t++) I(e, c, l[t].color, n, f, 10, u), e.fillStyle = "#333", e.textAlign = "left", e.fillText(l[t].label.slice(0, 20), n + 10 + 4, f + u / 2), f += d;
920
+ for (let t = 0; t < l.length; t++) te(e, c, l[t].color, n, f, 10, u), e.fillStyle = "#333", e.textAlign = "left", e.fillText(l[t].label.slice(0, 20), n + 10 + 4, f + u / 2), f += d;
810
921
  }
811
- function ee(e, t, n) {
922
+ function re(e, t, n) {
812
923
  if (!e.showLegend) return null;
813
924
  let r = e.legendPos ?? "r", i = r === "l" ? "l" : r === "t" ? "t" : r === "b" ? "b" : "r";
814
925
  return i === "r" || i === "l" ? {
@@ -821,30 +932,30 @@ function ee(e, t, n) {
821
932
  reserveH: Math.max(18, n * .08)
822
933
  };
823
934
  }
824
- function te(e, t, n, r, i, a, o, s, c, l, u, d) {
935
+ function ie(e, t, n, r, i, a, o, s, c, l, u, d) {
825
936
  if (!n) return;
826
937
  let f = t.legendManualLayout;
827
938
  if (f && f.xMode === "edge" && f.yMode === "edge" && f.w > 0 && f.h > 0) {
828
939
  let n = r + f.x * a, s = i + f.y * o, c = f.w * a, l = f.h * o, u = c >= l ? "horizontal" : "vertical";
829
- R(e, t.series, n, s, c, l, u, t.chartType);
940
+ W(e, t.series, n, s, c, l, u, t.chartType);
830
941
  return;
831
942
  }
832
943
  switch (n.side) {
833
944
  case "r":
834
- R(e, t.series, r + a - n.reserveW + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
945
+ W(e, t.series, r + a - n.reserveW + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
835
946
  break;
836
947
  case "l":
837
- R(e, t.series, r + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
948
+ W(e, t.series, r + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
838
949
  break;
839
950
  case "t":
840
- R(e, t.series, s, i + d, l, n.reserveH, "horizontal", t.chartType);
951
+ W(e, t.series, s, i + d, l, n.reserveH, "horizontal", t.chartType);
841
952
  break;
842
953
  case "b":
843
- R(e, t.series, s, i + o - n.reserveH, l, n.reserveH, "horizontal", t.chartType);
954
+ W(e, t.series, s, i + o - n.reserveH, l, n.reserveH, "horizontal", t.chartType);
844
955
  break;
845
956
  }
846
957
  }
847
- function z(e, t, n, r, i, a, o) {
958
+ function G(e, t, n, r, i, a, o) {
848
959
  if (t === "none" || !t) return;
849
960
  let s = o ? Math.max(4, o + 2) : 4, c = e.strokeStyle, l = e.lineWidth;
850
961
  if (e.strokeStyle = a ?? "#888", e.lineWidth = o ?? 1, e.beginPath(), n === "val") {
@@ -856,16 +967,16 @@ function z(e, t, n, r, i, a, o) {
856
967
  }
857
968
  e.stroke(), e.strokeStyle = c, e.lineWidth = l;
858
969
  }
859
- function ne(e, t, n) {
970
+ function ae(e, t, n) {
860
971
  return e.titleFontSizeHpt ? e.titleFontSizeHpt / 100 * n : Math.max(10, t * .085);
861
972
  }
862
- function B(e, t, n) {
973
+ function oe(e, t, n) {
863
974
  return e ? e / 100 * n : Math.max(8, t * .045);
864
975
  }
865
- function re(e, t, n, r, i, a) {
976
+ function se(e, t, n, r, i, a) {
866
977
  t.title && (e.font = `bold ${a}px ${t.titleFontFace ? `"${t.titleFontFace}", Calibri, Arial, sans-serif` : "Calibri, Arial, sans-serif"}`, e.fillStyle = t.titleFontColor ? `#${t.titleFontColor}` : "#333", e.textAlign = "center", e.textBaseline = "top", e.fillText(t.title, n + i / 2, r));
867
978
  }
868
- function V(e) {
979
+ function ce(e) {
869
980
  if (e.categories.length > 0) return e.categories;
870
981
  let t = e.series[0];
871
982
  if (t?.categories && t.categories.length > 0) return t.categories;
@@ -873,7 +984,7 @@ function V(e) {
873
984
  for (let t of e.series) t.values.length > n && (n = t.values.length);
874
985
  return n > 0 ? Array.from({ length: n }, (e, t) => String(t + 1)) : [];
875
986
  }
876
- function H(e, t, n, r, i, a, o, s, c) {
987
+ function le(e, t, n, r, i, a, o, s, c) {
877
988
  let l = s ?? "outEnd";
878
989
  if (e.fillStyle = c ? `#${c}` : "#333", o === "vertical") {
879
990
  let o = n + a / 2;
@@ -883,225 +994,225 @@ function H(e, t, n, r, i, a, o, s, c) {
883
994
  l === "inBase" ? (e.textAlign = "left", e.textBaseline = "middle", e.fillText(t, n + 4, o)) : l === "inEnd" ? (e.textAlign = "right", e.textBaseline = "middle", e.fillText(t, n + i - 4, o)) : l === "ctr" ? (e.textAlign = "center", e.textBaseline = "middle", e.fillText(t, n + i / 2, o)) : (e.textAlign = "left", e.textBaseline = "middle", e.fillText(t, n + i + 2, o));
884
995
  }
885
996
  }
886
- function U(e, t, n, r) {
887
- let { x: i, y: a, w: c, h: l } = n, d = t.chartType === "clusteredBarH" || t.chartType === "stackedBarH" || t.chartType === "stackedBarHPct", f = t.chartType.startsWith("stacked"), p = t.chartType === "stackedBarPct" || t.chartType === "stackedBarHPct", m = t.series.filter((e) => e.seriesType !== "line"), h = t.series.filter((e) => e.seriesType === "line"), g = V(t), _ = g.length;
888
- if (_ === 0) return;
889
- let v = t.title ? ne(t, l, r) : 0, y = t.title ? l * .02 : 0, b = t.title ? l * .025 : 0, x = t.title ? v + y + b : 0, S = ee(t, c, l), C = S?.side === "r" ? S.reserveW : 0, w = S?.side === "l" ? S.reserveW : 0, T = S?.side === "t" ? S.reserveH : 0, D = S?.side === "b" ? S.reserveH : 0, O = Math.max(8, Math.min(10, l * .045)), k = t.catAxisTitle ? O + 4 : 0, j = t.valAxisTitle ? O + 4 : 0, M = {
890
- t: x + T + l * .02,
891
- r: C + c * .03,
892
- b: l * .14 + k + D,
893
- l: c * .12 + j + w
997
+ function ue(e, t, n, r) {
998
+ let { x: i, y: a, w: o, h: s } = n, c = t.chartType === "clusteredBarH" || t.chartType === "stackedBarH" || t.chartType === "stackedBarHPct", l = t.chartType.startsWith("stacked"), u = t.chartType === "stackedBarPct" || t.chartType === "stackedBarHPct", d = t.series.filter((e) => e.seriesType !== "line"), f = t.series.filter((e) => e.seriesType === "line"), p = ce(t), m = p.length;
999
+ if (m === 0) return;
1000
+ let _ = t.title ? ae(t, s, r) : 0, v = t.title ? s * .02 : 0, b = t.title ? s * .025 : 0, x = t.title ? _ + v + b : 0, S = re(t, o, s), C = S?.side === "r" ? S.reserveW : 0, w = S?.side === "l" ? S.reserveW : 0, T = S?.side === "t" ? S.reserveH : 0, E = S?.side === "b" ? S.reserveH : 0, D = Math.max(8, Math.min(10, s * .045)), O = t.catAxisTitle ? D + 4 : 0, k = t.valAxisTitle ? D + 4 : 0, A = {
1001
+ t: x + T + s * .02,
1002
+ r: C + o * .03,
1003
+ b: s * .14 + O + E,
1004
+ l: o * .12 + k + w
894
1005
  };
895
- d && (M.l = (t.catAxisHidden ? c * .03 : c * .22) + j + w, M.b = (t.valAxisHidden ? l * .02 : l * .08) + k + D), re(e, t, i, a + y, c, v);
896
- let N = t.plotAreaManualLayout, F, I, L, R;
897
- if (N && N.w != null && N.h != null ? (F = i + N.x * c, I = a + N.y * l, L = N.w * c, R = N.h * l) : (F = i + M.l, I = a + M.t, L = c - M.l - M.r, R = l - M.t - M.b), L <= 0 || R <= 0) return;
898
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(F, I, L, R));
899
- let z = 0;
900
- for (let e = 0; e < _; e++) {
1006
+ c && (A.l = (t.catAxisHidden ? o * .03 : o * .22) + k + w, A.b = (t.valAxisHidden ? s * .02 : s * .08) + O + E), se(e, t, i, a + v, o, _);
1007
+ let j = t.plotAreaManualLayout, M, N, P, I;
1008
+ if (j && j.w != null && j.h != null ? (M = i + j.x * o, N = a + j.y * s, P = j.w * o, I = j.h * s) : (M = i + A.l, N = a + A.t, P = o - A.l - A.r, I = s - A.t - A.b), P <= 0 || I <= 0) return;
1009
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(M, N, P, I));
1010
+ let L = 0;
1011
+ for (let e = 0; e < m; e++) {
901
1012
  let t = 0;
902
- for (let n of m) {
1013
+ for (let n of d) {
903
1014
  let r = n.values[e] ?? 0;
904
- f ? t += Math.abs(r) : z = Math.max(z, Math.abs(r));
1015
+ l ? t += Math.abs(r) : L = Math.max(L, Math.abs(r));
905
1016
  }
906
- f && (z = Math.max(z, t));
1017
+ l && (L = Math.max(L, t));
907
1018
  }
908
- p && (z = 100), t.valMax != null && (z = t.valMax), z === 0 && (z = 1);
909
- let B = o(z), U = t.valMax ?? s(z, B), W = "#e0e0e0", ie = Math.round(U / B);
910
- if (e.textBaseline = "middle", e.font = `${Math.max(8, Math.min(11, R / 20))}px sans-serif`, e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", !t.valAxisHidden) for (let n = 0; n <= ie; n++) {
911
- let r = n * B, i = p ? `${Math.round(r)}%` : u(r, t.valAxisFormatCode);
912
- if (d) {
913
- let t = F + r / U * L;
914
- e.strokeStyle = n === 0 ? "#aaa" : W, e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(t, I), e.lineTo(t, I + R), e.stroke(), e.textAlign = "center", e.fillText(i, t, I + R + 10);
1019
+ u && (L = 100), t.valMax != null && (L = t.valMax), L === 0 && (L = 1);
1020
+ let R = h(L), B = t.valMax ?? g(L, R), V = "#e0e0e0", H = Math.round(B / R);
1021
+ if (e.textBaseline = "middle", e.font = `${Math.max(8, Math.min(11, I / 20))}px sans-serif`, e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", !t.valAxisHidden) for (let n = 0; n <= H; n++) {
1022
+ let r = n * R, i = u ? `${Math.round(r)}%` : y(r, t.valAxisFormatCode);
1023
+ if (c) {
1024
+ let t = M + r / B * P;
1025
+ e.strokeStyle = n === 0 ? "#aaa" : V, e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(t, N), e.lineTo(t, N + I), e.stroke(), e.textAlign = "center", e.fillText(i, t, N + I + 10);
915
1026
  } else {
916
- let t = I + R - r / U * R;
917
- e.strokeStyle = n === 0 ? "#aaa" : W, e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(F, t), e.lineTo(F + L, t), e.stroke(), e.textAlign = "right", e.fillText(i, F - 4, t);
1027
+ let t = N + I - r / B * I;
1028
+ e.strokeStyle = n === 0 ? "#aaa" : V, e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(M, t), e.lineTo(M + P, t), e.stroke(), e.textAlign = "right", e.fillText(i, M - 4, t);
918
1029
  }
919
1030
  }
920
- let G = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#aaa", ae = t.valAxisLineColor ? `#${t.valAxisLineColor}` : "#aaa", oe = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / E) : 1, se = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / E) : 1, ce = (t, n, r, i, a, o) => {
1031
+ let ee = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#aaa", te = t.valAxisLineColor ? `#${t.valAxisLineColor}` : "#aaa", ne = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / F) : 1, W = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / F) : 1, G = (t, n, r, i, a, o) => {
921
1032
  e.strokeStyle = a, e.lineWidth = o, e.beginPath(), e.moveTo(t, n), e.lineTo(r, i), e.stroke();
922
- }, le = !t.catAxisHidden && !t.catAxisLineHidden, ue = !t.valAxisHidden && !t.valAxisLineHidden && t.valAxisLineColor != null;
923
- d ? (le && ce(F, I, F, I + R, G, oe), ue && ce(F, I + R, F + L, I + R, ae, se)) : (le && ce(F, I + R, F + L, I + R, G, oe), ue && ce(F, I, F, I + R, ae, se));
924
- let K = d ? R / _ : L / _, de = f ? 1 : Math.max(1, m.length), fe = f ? 0 : t.barOverlap ?? 0, pe = t.barGapWidth ?? 150, q = K / (1 + (de - 1) * (1 - fe / 100) + pe / 100), me = f ? 0 : q * (1 - fe / 100), J = (K - (q + (de - 1) * me)) / 2;
925
- for (let n = 0; n < _; n++) {
1033
+ }, oe = !t.catAxisHidden && !t.catAxisLineHidden, ue = !t.valAxisHidden && !t.valAxisLineHidden && t.valAxisLineColor != null;
1034
+ c ? (oe && G(M, N, M, N + I, ee, ne), ue && G(M, N + I, M + P, N + I, te, W)) : (oe && G(M, N + I, M + P, N + I, ee, ne), ue && G(M, N, M, N + I, te, W));
1035
+ let K = c ? I / m : P / m, de = l ? 1 : Math.max(1, d.length), fe = l ? 0 : t.barOverlap ?? 0, pe = t.barGapWidth ?? 150, q = K / (1 + (de - 1) * (1 - fe / 100) + pe / 100), me = l ? 0 : q * (1 - fe / 100), he = (K - (q + (de - 1) * me)) / 2;
1036
+ for (let n = 0; n < m; n++) {
926
1037
  let i = 0, a = 0;
927
- if (p) {
928
- for (let e of m) a += Math.abs(e.values[n] ?? 0);
1038
+ if (u) {
1039
+ for (let e of d) a += Math.abs(e.values[n] ?? 0);
929
1040
  a === 0 && (a = 1);
930
1041
  }
931
- for (let o = 0; o < m.length; o++) {
932
- let s = m[o], c = s.values[n] ?? 0, l = p ? Math.abs(c) / a * 100 : Math.abs(c), h = A(o, s);
933
- if (d) {
934
- let a = f ? o : m.length - 1 - o, c = f ? I + (_ - 1 - n) * K + J : I + (_ - 1 - n) * K + J + a * me, d = l / U * L, g = f ? F + i / U * L : F;
935
- e.fillStyle = h, e.fillRect(g, c, d, q), t.showDataLabels && l > 0 && (e.font = `bold ${t.dataLabelFontSizeHpt ? t.dataLabelFontSizeHpt / 100 * r : Math.max(7, Math.min(11, q * .6))}px sans-serif`, H(e, p ? `${Math.round(l)}%` : u(l, t.dataLabelFormatCode ?? s.valFormatCode ?? null), g, c, d, q, "horizontal", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
1042
+ for (let o = 0; o < d.length; o++) {
1043
+ let s = d[o], f = s.values[n] ?? 0, p = u ? Math.abs(f) / a * 100 : Math.abs(f), h = z(o, s);
1044
+ if (c) {
1045
+ let a = l ? o : d.length - 1 - o, c = l ? N + (m - 1 - n) * K + he : N + (m - 1 - n) * K + he + a * me, f = p / B * P, g = l ? M + i / B * P : M;
1046
+ e.fillStyle = h, e.fillRect(g, c, f, q), t.showDataLabels && p > 0 && (e.font = `bold ${t.dataLabelFontSizeHpt ? t.dataLabelFontSizeHpt / 100 * r : Math.max(7, Math.min(11, q * .6))}px sans-serif`, le(e, u ? `${Math.round(p)}%` : y(p, t.dataLabelFormatCode ?? s.valFormatCode ?? null), g, c, f, q, "horizontal", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
936
1047
  } else {
937
- let a = f ? F + n * K + J : F + n * K + J + o * me, c = l / U * R, d = I + R - (f ? i + l : l) / U * R;
938
- e.fillStyle = h, e.fillRect(a, d, q, c), t.showDataLabels && l > 0 && (e.font = `bold ${t.dataLabelFontSizeHpt ? t.dataLabelFontSizeHpt / 100 * r : Math.max(7, Math.min(11, q * .6))}px sans-serif`, H(e, p ? `${Math.round(l)}%` : u(l, t.dataLabelFormatCode ?? s.valFormatCode ?? null), a, d, c, q, "vertical", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
1048
+ let a = l ? M + n * K + he : M + n * K + he + o * me, c = p / B * I, d = N + I - (l ? i + p : p) / B * I;
1049
+ e.fillStyle = h, e.fillRect(a, d, q, c), t.showDataLabels && p > 0 && (e.font = `bold ${t.dataLabelFontSizeHpt ? t.dataLabelFontSizeHpt / 100 * r : Math.max(7, Math.min(11, q * .6))}px sans-serif`, le(e, u ? `${Math.round(p)}%` : y(p, t.dataLabelFormatCode ?? s.valFormatCode ?? null), a, d, c, q, "vertical", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
939
1050
  }
940
- f && (i += l);
1051
+ l && (i += p);
941
1052
  }
942
1053
  }
943
1054
  if (!t.catAxisHidden) {
944
1055
  e.fillStyle = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555", e.font = `${Math.max(8, Math.min(11, K * .5))}px sans-serif`;
945
- for (let t = 0; t < _; t++) {
946
- let n = (g[t] ?? "").toString().slice(0, 12);
947
- if (d) {
948
- let r = I + (_ - 1 - t) * K + K / 2;
949
- e.textAlign = "right", e.textBaseline = "middle", e.fillText(n, F - 4, r);
1056
+ for (let t = 0; t < m; t++) {
1057
+ let n = (p[t] ?? "").toString().slice(0, 12);
1058
+ if (c) {
1059
+ let r = N + (m - 1 - t) * K + K / 2;
1060
+ e.textAlign = "right", e.textBaseline = "middle", e.fillText(n, M - 4, r);
950
1061
  } else {
951
- let r = F + t * K + K / 2;
952
- e.textAlign = "center", e.textBaseline = "top", e.fillText(n, r, I + R + 3);
1062
+ let r = M + t * K + K / 2;
1063
+ e.textAlign = "center", e.textBaseline = "top", e.fillText(n, r, N + I + 3);
953
1064
  }
954
1065
  }
955
1066
  }
956
- if (h.length > 0 && !d) for (let t = 0; t < h.length; t++) {
957
- let n = h[t], r = A(m.length + t, n);
1067
+ if (f.length > 0 && !c) for (let t = 0; t < f.length; t++) {
1068
+ let n = f[t], r = z(d.length + t, n);
958
1069
  e.strokeStyle = r, e.lineWidth = 2, e.setLineDash([]), e.beginPath();
959
1070
  let i = !1;
960
- for (let t = 0; t < _; t++) {
1071
+ for (let t = 0; t < m; t++) {
961
1072
  let r = n.values[t];
962
1073
  if (r == null) {
963
1074
  i = !1;
964
1075
  continue;
965
1076
  }
966
- let a = F + t * K + K / 2, o = I + R - r / U * R;
1077
+ let a = M + t * K + K / 2, o = N + I - r / B * I;
967
1078
  i ? e.lineTo(a, o) : (e.moveTo(a, o), i = !0);
968
1079
  }
969
- if (e.stroke(), n.showMarker !== !1) for (let t = 0; t < _; t++) {
1080
+ if (e.stroke(), n.showMarker !== !1) for (let t = 0; t < m; t++) {
970
1081
  let i = n.values[t];
971
1082
  if (i == null) continue;
972
- let a = F + t * K + K / 2, o = I + R - i / U * R;
1083
+ let a = M + t * K + K / 2, o = N + I - i / B * I;
973
1084
  e.fillStyle = r, e.beginPath(), e.arc(a, o, 3, 0, Math.PI * 2), e.fill();
974
1085
  }
975
1086
  }
976
- te(e, d && !f ? {
1087
+ ie(e, c && !l ? {
977
1088
  ...t,
978
1089
  series: [...t.series].reverse()
979
- } : t, S, i, a, c, l, F, I, L, R, x + 2), t.catAxisTitle && P(e, t.catAxisTitle, F, I, L, R, "cat", O), t.valAxisTitle && P(e, t.valAxisTitle, F, I, L, R, "val", O);
1090
+ } : t, S, i, a, o, s, M, N, P, I, x + 2), t.catAxisTitle && U(e, t.catAxisTitle, M, N, P, I, "cat", D), t.valAxisTitle && U(e, t.valAxisTitle, M, N, P, I, "val", D);
980
1091
  }
981
- function W(e, t, n, r) {
982
- let { x: i, y: a, w: d, h: f } = n, p = V(t), m = p.length;
983
- if (m === 0) return;
984
- let h = t.title ? ne(t, f, r) : 0, g = t.title ? f * .045 : 0, _ = t.title ? f * .035 : 0, v = t.title ? h + g + _ : 0, y = ee(t, d, f), b = y?.side === "r" ? y.reserveW : 0, x = y?.side === "l" ? y.reserveW : 0, S = y?.side === "t" ? y.reserveH : 0, C = y?.side === "b" ? y.reserveH : 0, w = B(t.catAxisFontSizeHpt, f, r), T = B(t.valAxisFontSizeHpt, f, r), E = Math.max(w, T), D = t.catAxisTitle ? E + 4 : 0, O = t.valAxisTitle ? E + 4 : 0, k = {
985
- t: v + S + T / 2 + 2,
986
- r: b + d * .05,
1092
+ function K(e, t, n, r) {
1093
+ let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1094
+ if (l === 0) return;
1095
+ let u = t.title ? ae(t, s, r) : 0, d = t.title ? s * .045 : 0, f = t.title ? s * .035 : 0, p = t.title ? u + d + f : 0, m = re(t, o, s), b = m?.side === "r" ? m.reserveW : 0, x = m?.side === "l" ? m.reserveW : 0, S = m?.side === "t" ? m.reserveH : 0, C = m?.side === "b" ? m.reserveH : 0, w = oe(t.catAxisFontSizeHpt, s, r), T = oe(t.valAxisFontSizeHpt, s, r), E = Math.max(w, T), D = t.catAxisTitle ? E + 4 : 0, O = t.valAxisTitle ? E + 4 : 0, k = {
1096
+ t: p + S + T / 2 + 2,
1097
+ r: b + o * .05,
987
1098
  b: w + 12 + D + C,
988
1099
  l: T * 2.2 + 10 + O + x
989
1100
  };
990
- re(e, t, i, a + g, d, h);
991
- let j = i + k.l, M = a + k.t, N = d - k.l - k.r, F = f - k.t - k.b;
992
- if (N <= 0 || F <= 0) return;
993
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(j, M, N, F));
994
- let I = Infinity, L = -Infinity;
995
- for (let e of t.series) for (let t of e.values) t != null && (I = Math.min(I, t), L = Math.max(L, t));
996
- isFinite(I) || (I = 0, L = 1), t.valMin == null ? I > 0 && (I = 0) : I = t.valMin, t.valMax == null ? L < 0 && (L = 0) : L = t.valMax, L === I && (L = I + 1);
997
- let R = o(L - I), H = t.valMin ?? c(I, R), U = t.valMax ?? s(L, R), W = U - H;
998
- if (W === 0) return;
999
- let ie = (e) => M + F - (e - H) / W * F, G = t.catAxisCrossBetween === "midCat" ? (e) => j + (m === 1 ? N / 2 : e / (m - 1) * N) : (e) => j + (e + .5) / m * N;
1101
+ se(e, t, i, a + d, o, u);
1102
+ let A = i + k.l, j = a + k.t, M = o - k.l - k.r, N = s - k.t - k.b;
1103
+ if (M <= 0 || N <= 0) return;
1104
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(A, j, M, N));
1105
+ let P = Infinity, F = -Infinity;
1106
+ for (let e of t.series) for (let t of e.values) t != null && (P = Math.min(P, t), F = Math.max(F, t));
1107
+ isFinite(P) || (P = 0, F = 1), t.valMin == null ? P > 0 && (P = 0) : P = t.valMin, t.valMax == null ? F < 0 && (F = 0) : F = t.valMax, F === P && (F = P + 1);
1108
+ let I = h(F - P), L = t.valMin ?? _(P, I), R = t.valMax ?? g(F, I), B = R - L;
1109
+ if (B === 0) return;
1110
+ let V = (e) => j + N - (e - L) / B * N, H = t.catAxisCrossBetween === "midCat" ? (e) => A + (l === 1 ? M / 2 : e / (l - 1) * M) : (e) => A + (e + .5) / l * M;
1000
1111
  if (!t.valAxisHidden) {
1001
- let n = Math.round((U - H) / R);
1112
+ let n = Math.round((R - L) / I);
1002
1113
  e.font = `${T}px sans-serif`, e.textBaseline = "middle";
1003
1114
  for (let r = 0; r <= n; r++) {
1004
- let n = H + r * R, i = ie(n);
1005
- e.strokeStyle = n === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(j, i), e.lineTo(j + N, i), e.stroke(), z(e, t.valAxisMajorTickMark, "val", j, i), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(u(n, t.valAxisFormatCode), j - 6, i);
1115
+ let n = L + r * I, i = V(n);
1116
+ e.strokeStyle = n === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(A, i), e.lineTo(A + M, i), e.stroke(), G(e, t.valAxisMajorTickMark, "val", A, i), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(y(n, t.valAxisFormatCode), A - 6, i);
1006
1117
  }
1007
1118
  }
1008
- e.strokeStyle = "#aaa", e.lineWidth = 1, !t.catAxisHidden && !t.catAxisLineHidden && (e.beginPath(), e.moveTo(j, M + F), e.lineTo(j + N, M + F), e.stroke()), !t.valAxisHidden && !t.valAxisLineHidden && (e.beginPath(), e.moveTo(j, M), e.lineTo(j, M + F), e.stroke());
1009
- let ae = Math.max(1, 2.25 * r), oe = Math.max(2, 2.5 * r), se = B(t.dataLabelFontSizeHpt, f, r);
1119
+ e.strokeStyle = "#aaa", e.lineWidth = 1, !t.catAxisHidden && !t.catAxisLineHidden && (e.beginPath(), e.moveTo(A, j + N), e.lineTo(A + M, j + N), e.stroke()), !t.valAxisHidden && !t.valAxisLineHidden && (e.beginPath(), e.moveTo(A, j), e.lineTo(A, j + N), e.stroke());
1120
+ let ee = Math.max(1, 2.25 * r), te = Math.max(2, 2.5 * r), ne = oe(t.dataLabelFontSizeHpt, s, r);
1010
1121
  for (let n = 0; n < t.series.length; n++) {
1011
- let r = t.series[n], i = A(n, r);
1012
- e.strokeStyle = i, e.lineWidth = ae, e.setLineDash([]), e.beginPath();
1122
+ let r = t.series[n], i = z(n, r);
1123
+ e.strokeStyle = i, e.lineWidth = ee, e.setLineDash([]), e.beginPath();
1013
1124
  let a = !1;
1014
- for (let t = 0; t < m; t++) {
1125
+ for (let t = 0; t < l; t++) {
1015
1126
  let n = r.values[t];
1016
1127
  if (n == null) {
1017
1128
  a = !1;
1018
1129
  continue;
1019
1130
  }
1020
- let i = G(t), o = ie(n);
1131
+ let i = H(t), o = V(n);
1021
1132
  a ? e.lineTo(i, o) : (e.moveTo(i, o), a = !0);
1022
1133
  }
1023
1134
  e.stroke(), e.fillStyle = i;
1024
1135
  let o = r.showMarker !== !1;
1025
- for (let n = 0; n < m; n++) {
1136
+ for (let n = 0; n < l; n++) {
1026
1137
  let a = r.values[n];
1027
- if (a != null && (o && (e.beginPath(), e.arc(G(n), ie(a), oe, 0, Math.PI * 2), e.fill()), t.showDataLabels)) {
1028
- e.font = `${se}px sans-serif`, e.fillStyle = "#333", e.textAlign = "center", e.textBaseline = "bottom";
1029
- let t = o ? oe + 1 : 2;
1030
- e.fillText(l(a), G(n), ie(a) - t), e.fillStyle = i;
1138
+ if (a != null && (o && (e.beginPath(), e.arc(H(n), V(a), te, 0, Math.PI * 2), e.fill()), t.showDataLabels)) {
1139
+ e.font = `${ne}px sans-serif`, e.fillStyle = "#333", e.textAlign = "center", e.textBaseline = "bottom";
1140
+ let t = o ? te + 1 : 2;
1141
+ e.fillText(v(a), H(n), V(a) - t), e.fillStyle = i;
1031
1142
  }
1032
1143
  }
1033
1144
  }
1034
1145
  if (!t.catAxisHidden) {
1035
- let n = Math.max(1, Math.ceil(m / 8)), r = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555";
1146
+ let n = Math.max(1, Math.ceil(l / 8)), r = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555";
1036
1147
  e.fillStyle = r, e.textAlign = "center", e.textBaseline = "top", e.font = `${w}px sans-serif`;
1037
- for (let i = 0; i < m; i += n) {
1038
- let n = G(i);
1039
- z(e, t.catAxisMajorTickMark, "cat", M + F, n), e.fillStyle = r, e.fillText((p[i] ?? "").toString().slice(0, 10), n, M + F + 5);
1148
+ for (let i = 0; i < l; i += n) {
1149
+ let n = H(i);
1150
+ G(e, t.catAxisMajorTickMark, "cat", j + N, n), e.fillStyle = r, e.fillText((c[i] ?? "").toString().slice(0, 10), n, j + N + 5);
1040
1151
  }
1041
1152
  }
1042
- te(e, t, y, i, a, d, f, j, M, N, F, v + 2), t.catAxisTitle && P(e, t.catAxisTitle, j, M, N, F, "cat", E), t.valAxisTitle && P(e, t.valAxisTitle, j, M, N, F, "val", E);
1153
+ ie(e, t, m, i, a, o, s, A, j, M, N, p + 2), t.catAxisTitle && U(e, t.catAxisTitle, A, j, M, N, "cat", E), t.valAxisTitle && U(e, t.valAxisTitle, A, j, M, N, "val", E);
1043
1154
  }
1044
- function ie(e, t, n, r) {
1045
- let { x: i, y: a, w: c, h: l } = n, d = V(t), f = d.length;
1046
- if (f === 0) return;
1047
- let p = t.chartType === "stackedArea" || t.chartType === "stackedAreaPct", m = t.title ? ne(t, l, r) : 0, h = t.title ? l * .035 : 0, g = t.title ? l * .035 : 0, _ = t.title ? m + h + g : 0, v = ee(t, c, l), y = v?.side === "r" ? v.reserveW : 0, x = v?.side === "l" ? v.reserveW : 0, S = v?.side === "t" ? v.reserveH : 0, C = v?.side === "b" ? v.reserveH : 0, w = Math.max(8, Math.min(10, l * .045)), T = t.catAxisTitle ? w + 4 : 0, E = t.valAxisTitle ? w + 4 : 0, D = {
1048
- t: _ + S + l * .02,
1049
- r: y + c * .05,
1050
- b: l * .14 + T + C,
1051
- l: c * .12 + E + x
1155
+ function de(e, t, n, r) {
1156
+ let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1157
+ if (l === 0) return;
1158
+ let u = t.chartType === "stackedArea" || t.chartType === "stackedAreaPct", d = t.title ? ae(t, s, r) : 0, f = t.title ? s * .035 : 0, p = t.title ? s * .035 : 0, m = t.title ? d + f + p : 0, _ = re(t, o, s), v = _?.side === "r" ? _.reserveW : 0, b = _?.side === "l" ? _.reserveW : 0, x = _?.side === "t" ? _.reserveH : 0, S = _?.side === "b" ? _.reserveH : 0, C = Math.max(8, Math.min(10, s * .045)), w = t.catAxisTitle ? C + 4 : 0, T = t.valAxisTitle ? C + 4 : 0, E = {
1159
+ t: m + x + s * .02,
1160
+ r: v + o * .05,
1161
+ b: s * .14 + w + S,
1162
+ l: o * .12 + T + b
1052
1163
  };
1053
- re(e, t, i, a + h, c, m);
1054
- let O = i + D.l, k = a + D.t, j = c - D.l - D.r, M = l - D.t - D.b;
1055
- if (j <= 0 || M <= 0) return;
1056
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(O, k, j, M));
1057
- let N = 0;
1058
- for (let e = 0; e < f; e++) if (p) {
1164
+ se(e, t, i, a + f, o, d);
1165
+ let D = i + E.l, O = a + E.t, A = o - E.l - E.r, j = s - E.t - E.b;
1166
+ if (A <= 0 || j <= 0) return;
1167
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(D, O, A, j));
1168
+ let M = 0;
1169
+ for (let e = 0; e < l; e++) if (u) {
1059
1170
  let n = 0;
1060
1171
  for (let r of t.series) n += r.values[e] ?? 0;
1061
- N = Math.max(N, n);
1062
- } else for (let n of t.series) N = Math.max(N, n.values[e] ?? 0);
1063
- t.valMax != null && (N = t.valMax), N === 0 && (N = 1);
1064
- let F = o(N), I = t.valMax ?? s(N, F), L = (e) => O + (f === 1 ? j / 2 : e / (f - 1) * j), R = (e) => k + M - e / I * M;
1172
+ M = Math.max(M, n);
1173
+ } else for (let n of t.series) M = Math.max(M, n.values[e] ?? 0);
1174
+ t.valMax != null && (M = t.valMax), M === 0 && (M = 1);
1175
+ let N = h(M), P = t.valMax ?? g(M, N), F = (e) => D + (l === 1 ? A / 2 : e / (l - 1) * A), I = (e) => O + j - e / P * j;
1065
1176
  if (!t.valAxisHidden) {
1066
- e.font = `${Math.max(8, Math.min(11, M / 20))}px sans-serif`, e.textBaseline = "middle";
1067
- let n = Math.round(I / F);
1177
+ e.font = `${Math.max(8, Math.min(11, j / 20))}px sans-serif`, e.textBaseline = "middle";
1178
+ let n = Math.round(P / N);
1068
1179
  for (let r = 0; r <= n; r++) {
1069
- let n = r * F, i = R(n);
1070
- e.strokeStyle = r === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = r === 0 ? 1 : .5, e.beginPath(), e.moveTo(O, i), e.lineTo(O + j, i), e.stroke(), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(u(n, t.valAxisFormatCode), O - 4, i);
1180
+ let n = r * N, i = I(n);
1181
+ e.strokeStyle = r === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = r === 0 ? 1 : .5, e.beginPath(), e.moveTo(D, i), e.lineTo(D + A, i), e.stroke(), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(y(n, t.valAxisFormatCode), D - 4, i);
1071
1182
  }
1072
1183
  }
1073
- !t.catAxisHidden && !t.catAxisLineHidden && (e.strokeStyle = "#aaa", e.lineWidth = 1, e.beginPath(), e.moveTo(O, k + M), e.lineTo(O + j, k + M), e.stroke());
1074
- let z = p ? Array(f).fill(0) : null;
1184
+ !t.catAxisHidden && !t.catAxisLineHidden && (e.strokeStyle = "#aaa", e.lineWidth = 1, e.beginPath(), e.moveTo(D, O + j), e.lineTo(D + A, O + j), e.stroke());
1185
+ let L = u ? Array(l).fill(0) : null;
1075
1186
  for (let n = t.series.length - 1; n >= 0; n--) {
1076
- let r = t.series[n], i = A(n, r), a = k + M;
1077
- if (e.beginPath(), p && z) {
1078
- for (let t = 0; t < f; t++) {
1079
- let n = (r.values[t] ?? 0) + z[t], i = L(t), a = R(n);
1187
+ let r = t.series[n], i = z(n, r), a = O + j;
1188
+ if (e.beginPath(), u && L) {
1189
+ for (let t = 0; t < l; t++) {
1190
+ let n = (r.values[t] ?? 0) + L[t], i = F(t), a = I(n);
1080
1191
  t === 0 ? e.moveTo(i, a) : e.lineTo(i, a);
1081
1192
  }
1082
- for (let t = f - 1; t >= 0; t--) e.lineTo(L(t), R(z[t]));
1083
- for (let e = 0; e < f; e++) z[e] += r.values[e] ?? 0;
1193
+ for (let t = l - 1; t >= 0; t--) e.lineTo(F(t), I(L[t]));
1194
+ for (let e = 0; e < l; e++) L[e] += r.values[e] ?? 0;
1084
1195
  } else {
1085
- e.moveTo(L(0), a);
1086
- for (let t = 0; t < f; t++) e.lineTo(L(t), R(r.values[t] ?? 0));
1087
- e.lineTo(L(f - 1), a);
1196
+ e.moveTo(F(0), a);
1197
+ for (let t = 0; t < l; t++) e.lineTo(F(t), I(r.values[t] ?? 0));
1198
+ e.lineTo(F(l - 1), a);
1088
1199
  }
1089
- e.closePath(), e.fillStyle = b(i, .6), e.fill(), e.strokeStyle = i, e.lineWidth = 1.5, e.setLineDash([]), e.stroke();
1200
+ e.closePath(), e.fillStyle = k(i, .6), e.fill(), e.strokeStyle = i, e.lineWidth = 1.5, e.setLineDash([]), e.stroke();
1090
1201
  }
1091
1202
  if (!t.catAxisHidden) {
1092
- let n = Math.max(1, Math.ceil(f / 8));
1093
- e.fillStyle = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555", e.textAlign = "center", e.textBaseline = "top", e.font = `${Math.max(8, Math.min(11, j / f * .8))}px sans-serif`;
1094
- for (let t = 0; t < f; t += n) e.fillText((d[t] ?? "").toString().slice(0, 10), L(t), k + M + 3);
1203
+ let n = Math.max(1, Math.ceil(l / 8));
1204
+ e.fillStyle = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555", e.textAlign = "center", e.textBaseline = "top", e.font = `${Math.max(8, Math.min(11, A / l * .8))}px sans-serif`;
1205
+ for (let t = 0; t < l; t += n) e.fillText((c[t] ?? "").toString().slice(0, 10), F(t), O + j + 3);
1095
1206
  }
1096
- te(e, t, v, i, a, c, l, O, k, j, M, _ + 2), t.catAxisTitle && P(e, t.catAxisTitle, O, k, j, M, "cat", w), t.valAxisTitle && P(e, t.valAxisTitle, O, k, j, M, "val", w);
1207
+ ie(e, t, _, i, a, o, s, D, O, A, j, m + 2), t.catAxisTitle && U(e, t.catAxisTitle, D, O, A, j, "cat", C), t.valAxisTitle && U(e, t.valAxisTitle, D, O, A, j, "val", C);
1097
1208
  }
1098
- function G(e, t, n, r, i) {
1209
+ function fe(e, t, n, r, i) {
1099
1210
  let { x: a, y: o, w: s, h: c } = n, l = t.series[0];
1100
1211
  if (!l) return;
1101
1212
  let u = l.categories && l.categories.length > 0 ? l.categories : t.categories, d = l.values.map((e) => Math.abs(e ?? 0)), f = d.reduce((e, t) => e + t, 0);
1102
1213
  if (f === 0) return;
1103
- let p = t.title ? ne(t, c, i) : 0, m = t.title ? c * .035 : 0, h = t.title ? c * .035 : 0, g = t.title ? p + m + h : 0;
1104
- re(e, t, a, o + m, s, p);
1214
+ let p = t.title ? ae(t, c, i) : 0, m = t.title ? c * .035 : 0, h = t.title ? c * .035 : 0, g = t.title ? p + m + h : 0;
1215
+ se(e, t, a, o + m, s, p);
1105
1216
  let _ = t.showLegend ? (() => {
1106
1217
  let e = t.legendPos ?? "r", n = e === "l" ? "l" : e === "t" ? "t" : e === "b" ? "b" : "r";
1107
1218
  return n === "r" || n === "l" ? {
@@ -1115,7 +1226,7 @@ function G(e, t, n, r, i) {
1115
1226
  };
1116
1227
  })() : null, v = _?.side === "r" ? _.reserveW : 0, y = _?.side === "l" ? _.reserveW : 0, b = _?.side === "t" ? _.reserveH : 0, x = _?.side === "b" ? _.reserveH : 0, S = s - v - y, C = c - g - b - x - c * .02, w = a + y + S / 2, T = o + g + b + c * .02 + C / 2, E = Math.min(S, C) * .42, D = r ? E * .5 : 0, O = -Math.PI / 2;
1117
1228
  for (let n = 0; n < d.length; n++) {
1118
- let i = d[n] / f * Math.PI * 2, a = j(n, l);
1229
+ let i = d[n] / f * Math.PI * 2, a = B(n, l);
1119
1230
  if (e.beginPath(), e.moveTo(w, T), e.arc(w, T, E, O, O + i), e.closePath(), e.fillStyle = a, e.fill(), e.strokeStyle = "#fff", e.lineWidth = 1, e.stroke(), t.showDataLabels && i > .15) {
1120
1231
  let t = O + i / 2, a = E * (r ? .75 : .6), o = w + Math.cos(t) * a, s = T + Math.sin(t) * a, c = Math.round(d[n] / f * 100);
1121
1232
  e.font = `bold ${Math.max(8, E * .1)}px sans-serif`, e.fillStyle = "#fff", e.textAlign = "center", e.textBaseline = "middle", e.fillText(`${c}%`, o, s);
@@ -1127,59 +1238,59 @@ function G(e, t, n, r, i) {
1127
1238
  ...l,
1128
1239
  categories: u
1129
1240
  }], r = w - S / 2;
1130
- te(e, {
1241
+ ie(e, {
1131
1242
  ...t,
1132
1243
  series: n
1133
1244
  }, _, a, o, s, c, r, T - C / 2, S, C, g + 2);
1134
1245
  }
1135
1246
  }
1136
- function ae(e, t, n, r) {
1137
- let { x: i, y: a, w: c, h: u } = n, d = V(t), f = d.length;
1138
- if (f < 3) return;
1139
- let p = t.title ? ne(t, u, r) : 0, m = t.title ? u * .035 : 0, h = t.title ? u * .035 : 0, g = t.title ? p + m + h : 0, _ = ee(t, c, u), v = _?.side === "r" ? _.reserveW : 0, y = _?.side === "l" ? _.reserveW : 0, x = _?.side === "t" ? _.reserveH : 0, S = _?.side === "b" ? _.reserveH : 0;
1140
- re(e, t, i, a + m, c, p);
1141
- let C = c - v - y, w = u - g - x - S - u * .02, T = i + y + C / 2, E = a + g + x + u * .02 + w / 2, D = Math.min(C, w) * .38, O = 0;
1142
- for (let e of t.series) for (let t of e.values) O = Math.max(O, t ?? 0);
1143
- t.valMax != null && (O = t.valMax), O === 0 && (O = 1);
1144
- let k = o(O), j = t.valMax ?? s(O, k), M = -Math.PI / 2, N = (e) => M + e / f * Math.PI * 2, P = Math.round(j / k);
1247
+ function pe(e, t, n, r) {
1248
+ let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1249
+ if (l < 3) return;
1250
+ let u = t.title ? ae(t, s, r) : 0, d = t.title ? s * .035 : 0, f = t.title ? s * .035 : 0, p = t.title ? u + d + f : 0, m = re(t, o, s), _ = m?.side === "r" ? m.reserveW : 0, y = m?.side === "l" ? m.reserveW : 0, b = m?.side === "t" ? m.reserveH : 0, x = m?.side === "b" ? m.reserveH : 0;
1251
+ se(e, t, i, a + d, o, u);
1252
+ let S = o - _ - y, C = s - p - b - x - s * .02, w = i + y + S / 2, T = a + p + b + s * .02 + C / 2, E = Math.min(S, C) * .38, D = 0;
1253
+ for (let e of t.series) for (let t of e.values) D = Math.max(D, t ?? 0);
1254
+ t.valMax != null && (D = t.valMax), D === 0 && (D = 1);
1255
+ let O = h(D), A = t.valMax ?? g(D, O), j = -Math.PI / 2, M = (e) => j + e / l * Math.PI * 2, N = Math.round(A / O);
1145
1256
  e.strokeStyle = "#ddd", e.lineWidth = .5;
1146
- for (let t = 1; t <= P; t++) {
1147
- let n = t / P * D;
1257
+ for (let t = 1; t <= N; t++) {
1258
+ let n = t / N * E;
1148
1259
  e.beginPath();
1149
- for (let t = 0; t < f; t++) {
1150
- let r = N(t), i = T + Math.cos(r) * n, a = E + Math.sin(r) * n;
1260
+ for (let t = 0; t < l; t++) {
1261
+ let r = M(t), i = w + Math.cos(r) * n, a = T + Math.sin(r) * n;
1151
1262
  t === 0 ? e.moveTo(i, a) : e.lineTo(i, a);
1152
1263
  }
1153
1264
  e.closePath(), e.stroke();
1154
1265
  }
1155
1266
  e.strokeStyle = "#bbb", e.lineWidth = .5;
1156
- for (let t = 0; t < f; t++) {
1157
- let n = N(t);
1158
- e.beginPath(), e.moveTo(T, E), e.lineTo(T + Math.cos(n) * D, E + Math.sin(n) * D), e.stroke();
1267
+ for (let t = 0; t < l; t++) {
1268
+ let n = M(t);
1269
+ e.beginPath(), e.moveTo(w, T), e.lineTo(w + Math.cos(n) * E, T + Math.sin(n) * E), e.stroke();
1159
1270
  }
1160
1271
  if (!t.valAxisHidden) {
1161
- e.font = `${B(t.valAxisFontSizeHpt, u, r)}px sans-serif`, e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle";
1162
- for (let t = 1; t <= P; t++) {
1163
- let n = t / P * j, r = t / P * D;
1164
- e.fillText(l(n), T - 3, E - r);
1272
+ e.font = `${oe(t.valAxisFontSizeHpt, s, r)}px sans-serif`, e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle";
1273
+ for (let t = 1; t <= N; t++) {
1274
+ let n = t / N * A, r = t / N * E;
1275
+ e.fillText(v(n), w - 3, T - r);
1165
1276
  }
1166
1277
  }
1167
- e.font = `${Math.max(8, Math.min(11, D * .2))}px sans-serif`, e.fillStyle = "#444", e.textBaseline = "middle";
1168
- for (let t = 0; t < f; t++) {
1169
- let n = N(t), r = T + Math.cos(n) * (D + 12), i = E + Math.sin(n) * (D + 12);
1170
- e.textAlign = Math.cos(n) < -.1 ? "right" : Math.cos(n) > .1 ? "left" : "center", e.fillText((d[t] ?? "").toString().slice(0, 12), r, i);
1278
+ e.font = `${Math.max(8, Math.min(11, E * .2))}px sans-serif`, e.fillStyle = "#444", e.textBaseline = "middle";
1279
+ for (let t = 0; t < l; t++) {
1280
+ let n = M(t), r = w + Math.cos(n) * (E + 12), i = T + Math.sin(n) * (E + 12);
1281
+ e.textAlign = Math.cos(n) < -.1 ? "right" : Math.cos(n) > .1 ? "left" : "center", e.fillText((c[t] ?? "").toString().slice(0, 12), r, i);
1171
1282
  }
1172
- let F = t.radarStyle === "filled", I = Math.max(2, D * .025);
1283
+ let P = t.radarStyle === "filled", F = Math.max(2, E * .025);
1173
1284
  for (let n = 0; n < t.series.length; n++) {
1174
- let r = t.series[n], i = A(n, r), a = [];
1175
- for (let e = 0; e < f; e++) {
1285
+ let r = t.series[n], i = z(n, r), a = [];
1286
+ for (let e = 0; e < l; e++) {
1176
1287
  let t = r.values[e];
1177
1288
  if (t == null) {
1178
1289
  a.push(null);
1179
1290
  continue;
1180
1291
  }
1181
- let n = t / j, i = N(e);
1182
- a.push([T + Math.cos(i) * D * n, E + Math.sin(i) * D * n]);
1292
+ let n = t / A, i = M(e);
1293
+ a.push([w + Math.cos(i) * E * n, T + Math.sin(i) * E * n]);
1183
1294
  }
1184
1295
  e.beginPath();
1185
1296
  let o = !1;
@@ -1191,102 +1302,102 @@ function ae(e, t, n, r) {
1191
1302
  o ? e.lineTo(t[0], t[1]) : (e.moveTo(t[0], t[1]), o = !0);
1192
1303
  }
1193
1304
  let s = a.every((e) => e != null);
1194
- if (F && s ? (e.closePath(), e.fillStyle = b(i, .25), e.fill()) : s && e.closePath(), e.strokeStyle = i, e.lineWidth = 2, e.stroke(), !F && r.showMarker !== !1) {
1305
+ if (P && s ? (e.closePath(), e.fillStyle = k(i, .25), e.fill()) : s && e.closePath(), e.strokeStyle = i, e.lineWidth = 2, e.stroke(), !P && r.showMarker !== !1) {
1195
1306
  e.fillStyle = i;
1196
- for (let t of a) t != null && (e.beginPath(), e.arc(t[0], t[1], I, 0, Math.PI * 2), e.fill());
1307
+ for (let t of a) t != null && (e.beginPath(), e.arc(t[0], t[1], F, 0, Math.PI * 2), e.fill());
1197
1308
  }
1198
1309
  }
1199
- te(e, t, _, i, a, c, u, T - C / 2, E - w / 2, C, w, g + 2);
1310
+ ie(e, t, m, i, a, o, s, w - S / 2, T - C / 2, S, C, p + 2);
1200
1311
  }
1201
- function oe(e, t, n, r) {
1202
- let { x: i, y: a, w: s, h: c } = n, l = t.title ? ne(t, c, r) : 0, d = t.title ? c * .035 : 0, f = t.title ? c * .035 : 0, p = t.title ? l + d + f : 0, m = ee(t, s, c), h = m?.side === "r" ? m.reserveW : 0, g = m?.side === "l" ? m.reserveW : 0, _ = m?.side === "t" ? m.reserveH : 0, v = m?.side === "b" ? m.reserveH : 0, y = Math.max(8, Math.min(10, c * .045)), b = t.catAxisTitle ? y + 4 : 0, x = t.valAxisTitle ? y + 4 : 0;
1312
+ function q(e, t, n, r) {
1313
+ let { x: i, y: a, w: o, h: s } = n, c = t.title ? ae(t, s, r) : 0, l = t.title ? s * .035 : 0, u = t.title ? s * .035 : 0, d = t.title ? c + l + u : 0, f = re(t, o, s), p = f?.side === "r" ? f.reserveW : 0, m = f?.side === "l" ? f.reserveW : 0, g = f?.side === "t" ? f.reserveH : 0, _ = f?.side === "b" ? f.reserveH : 0, v = Math.max(8, Math.min(10, s * .045)), b = t.catAxisTitle ? v + 4 : 0, x = t.valAxisTitle ? v + 4 : 0;
1203
1314
  if (t.title) {
1204
1315
  let n = t.titleManualLayout;
1205
- n && (n.x !== void 0 || n.y !== void 0) ? re(e, t, i + n.x * s, a + n.y * c, (n.w ?? .5) * s, l) : re(e, t, i, a + d, s, l);
1316
+ n && (n.x !== void 0 || n.y !== void 0) ? se(e, t, i + n.x * o, a + n.y * s, (n.w ?? .5) * o, c) : se(e, t, i, a + l, o, c);
1206
1317
  }
1207
- let S = t.plotAreaManualLayout, C, w, T, D;
1208
- if (S && S.w != null && S.h != null) C = i + S.x * s, w = a + S.y * c, T = S.w * s, D = S.h * c;
1318
+ let S = t.plotAreaManualLayout, C, w, T, E;
1319
+ if (S && S.w != null && S.h != null) C = i + S.x * o, w = a + S.y * s, T = S.w * o, E = S.h * s;
1209
1320
  else {
1210
1321
  let e = {
1211
- t: p + _ + c * .02,
1212
- r: h + s * .05,
1213
- b: (t.catAxisHidden ? c * .04 : c * .12) + b + v,
1214
- l: (t.valAxisHidden ? s * .04 : s * .12) + x + g
1322
+ t: d + g + s * .02,
1323
+ r: p + o * .05,
1324
+ b: (t.catAxisHidden ? s * .04 : s * .12) + b + _,
1325
+ l: (t.valAxisHidden ? o * .04 : o * .12) + x + m
1215
1326
  };
1216
- C = i + e.l, w = a + e.t, T = s - e.l - e.r, D = c - e.t - e.b;
1327
+ C = i + e.l, w = a + e.t, T = o - e.l - e.r, E = s - e.t - e.b;
1217
1328
  }
1218
- if (T <= 0 || D <= 0) return;
1219
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(C, w, T, D));
1220
- let O = [], k = [];
1329
+ if (T <= 0 || E <= 0) return;
1330
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(C, w, T, E));
1331
+ let D = [], O = [];
1221
1332
  for (let e of t.series) {
1222
1333
  let t = e.categories ?? [];
1223
1334
  for (let e of t) {
1224
1335
  let t = parseFloat(e);
1225
- isNaN(t) || O.push(t);
1336
+ isNaN(t) || D.push(t);
1226
1337
  }
1227
- for (let t of e.values) t != null && k.push(t);
1338
+ for (let t of e.values) t != null && O.push(t);
1228
1339
  }
1229
- let j = O.length === 0;
1230
- if (j) {
1340
+ let k = D.length === 0;
1341
+ if (k) {
1231
1342
  let e = Math.max(...t.series.map((e) => e.values.length));
1232
- for (let t = 0; t < e; t++) O.push(t);
1343
+ for (let t = 0; t < e; t++) D.push(t);
1233
1344
  }
1234
- let M = Math.min(...O), N = Math.max(...O), F = Math.min(...k), I = Math.max(...k);
1235
- if (M === N && (--M, N += 1), F === I && (--F, I += 1), t.valMin == null ? F > 0 && (F = 0) : F = t.valMin, t.valMax != null && (I = t.valMax), t.catAxisMin != null && (M = t.catAxisMin), t.catAxisMax != null && (N = t.catAxisMax), t.catAxisMin == null || t.catAxisMax == null) {
1236
- let e = o(N - M);
1237
- e > 0 && (t.catAxisMin ?? (M = Math.floor(M / e) * e), t.catAxisMax ?? (N = Math.ceil(N / e) * e));
1345
+ let A = Math.min(...D), j = Math.max(...D), M = Math.min(...O), N = Math.max(...O);
1346
+ if (A === j && (--A, j += 1), M === N && (--M, N += 1), t.valMin == null ? M > 0 && (M = 0) : M = t.valMin, t.valMax != null && (N = t.valMax), t.catAxisMin != null && (A = t.catAxisMin), t.catAxisMax != null && (j = t.catAxisMax), t.catAxisMin == null || t.catAxisMax == null) {
1347
+ let e = h(j - A);
1348
+ e > 0 && (t.catAxisMin ?? (A = Math.floor(A / e) * e), t.catAxisMax ?? (j = Math.ceil(j / e) * e));
1238
1349
  }
1239
- let L = (e) => C + (e - M) / (N - M) * T, R = (e) => w + D - (e - F) / (I - F) * D;
1350
+ let P = (e) => C + (e - A) / (j - A) * T, I = (e) => w + E - (e - M) / (N - M) * E;
1240
1351
  if (!t.valAxisHidden) {
1241
- let n = Math.max(8, Math.min(11, D / 20));
1352
+ let n = Math.max(8, Math.min(11, E / 20));
1242
1353
  e.font = `${t.valAxisFontBold ? "bold " : ""}${n}px sans-serif`;
1243
- let r = o(I - F), i = Math.round((I - F) / r) + 1;
1354
+ let r = h(N - M), i = Math.round((N - M) / r) + 1;
1244
1355
  for (let n = 0; n < i; n++) {
1245
- let i = F + n * r;
1246
- if (i > I + r * .01) break;
1247
- let a = R(i);
1248
- e.strokeStyle = "#e0e0e0", e.lineWidth = .5, e.beginPath(), e.moveTo(C, a), e.lineTo(C + T, a), e.stroke(), e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle", e.fillText(u(i, t.valAxisFormatCode), C - 4, a);
1249
- let o = t.valAxisLineColor ? `#${t.valAxisLineColor}` : void 0, s = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / E) : void 0;
1250
- z(e, t.valAxisMajorTickMark, "val", C, a, o, s);
1356
+ let i = M + n * r;
1357
+ if (i > N + r * .01) break;
1358
+ let a = I(i);
1359
+ e.strokeStyle = "#e0e0e0", e.lineWidth = .5, e.beginPath(), e.moveTo(C, a), e.lineTo(C + T, a), e.stroke(), e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle", e.fillText(y(i, t.valAxisFormatCode), C - 4, a);
1360
+ let o = t.valAxisLineColor ? `#${t.valAxisLineColor}` : void 0, s = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / F) : void 0;
1361
+ G(e, t.valAxisMajorTickMark, "val", C, a, o, s);
1251
1362
  }
1252
1363
  }
1253
- let B = w + D;
1254
- if (t.catAxisCrossesAt != null) B = K(R(t.catAxisCrossesAt), w, w + D);
1364
+ let L = w + E;
1365
+ if (t.catAxisCrossesAt != null) L = ve(I(t.catAxisCrossesAt), w, w + E);
1255
1366
  else {
1256
1367
  let e = t.catAxisCrosses ?? "autoZero";
1257
- e === "autoZero" && F < 0 && I > 0 ? B = K(R(0), w, w + D) : e === "min" ? B = w + D : e === "max" && (B = w);
1368
+ e === "autoZero" && M < 0 && N > 0 ? L = ve(I(0), w, w + E) : e === "min" ? L = w + E : e === "max" && (L = w);
1258
1369
  }
1259
- if (!t.catAxisHidden && !t.catAxisLineHidden && (e.save(), e.strokeStyle = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#888", e.lineWidth = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / E) : 1, e.lineCap = "butt", e.beginPath(), e.moveTo(C, B), e.lineTo(C + T, B), e.stroke(), e.restore()), !t.valAxisHidden && !t.valAxisLineHidden && (e.save(), e.strokeStyle = t.valAxisLineColor ? `#${t.valAxisLineColor}` : "#888", e.lineWidth = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / E) : 1, e.beginPath(), e.moveTo(C, w), e.lineTo(C, w + D), e.stroke(), e.restore()), !t.catAxisHidden) {
1260
- let n = Math.max(8, Math.min(11, D / 20));
1370
+ if (!t.catAxisHidden && !t.catAxisLineHidden && (e.save(), e.strokeStyle = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#888", e.lineWidth = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / F) : 1, e.lineCap = "butt", e.beginPath(), e.moveTo(C, L), e.lineTo(C + T, L), e.stroke(), e.restore()), !t.valAxisHidden && !t.valAxisLineHidden && (e.save(), e.strokeStyle = t.valAxisLineColor ? `#${t.valAxisLineColor}` : "#888", e.lineWidth = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / F) : 1, e.beginPath(), e.moveTo(C, w), e.lineTo(C, w + E), e.stroke(), e.restore()), !t.catAxisHidden) {
1371
+ let n = Math.max(8, Math.min(11, E / 20));
1261
1372
  e.font = `${t.catAxisFontBold ? "bold " : ""}${n}px sans-serif`;
1262
- let r = o(N - M), i = Math.round((N - M) / r) + 1;
1373
+ let r = h(j - A), i = Math.round((j - A) / r) + 1;
1263
1374
  e.fillStyle = "#555", e.textAlign = "center", e.textBaseline = "top";
1264
1375
  for (let n = 0; n < i; n++) {
1265
- let i = M + n * r;
1266
- if (i > N + r * .01) break;
1267
- let a = L(i);
1268
- e.fillText(u(i, t.catAxisFormatCode), a, B + 4);
1269
- let o = t.catAxisLineColor ? `#${t.catAxisLineColor}` : void 0, s = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / E) : void 0;
1270
- z(e, t.catAxisMajorTickMark, "cat", B, a, o, s);
1376
+ let i = A + n * r;
1377
+ if (i > j + r * .01) break;
1378
+ let a = P(i);
1379
+ e.fillText(y(i, t.catAxisFormatCode), a, L + 4);
1380
+ let o = t.catAxisLineColor ? `#${t.catAxisLineColor}` : void 0, s = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / F) : void 0;
1381
+ G(e, t.catAxisMajorTickMark, "cat", L, a, o, s);
1271
1382
  }
1272
1383
  }
1273
- let V = t.chartType === "bubble", H = V ? "marker" : t.scatterStyle ?? "marker", U = H === "line" || H === "lineMarker" || H === "lineNoMarker", W = H === "smooth" || H === "smoothMarker" || H === "smoothNoMarker", ie = H === "lineNoMarker" || H === "smoothNoMarker";
1384
+ let R = t.chartType === "bubble", B = R ? "marker" : t.scatterStyle ?? "marker", V = B === "line" || B === "lineMarker" || B === "lineNoMarker", H = B === "smooth" || B === "smoothMarker" || B === "smoothNoMarker", ee = B === "lineNoMarker" || B === "smoothNoMarker";
1274
1385
  for (let n = 0; n < t.series.length; n++) {
1275
- let i = t.series[n], a = A(n, i), o = i.categories ?? [];
1276
- for (let t of i.errBars ?? []) ce(e, i, t, o, j, L, R, a);
1277
- if (U || W) {
1386
+ let i = t.series[n], a = z(n, i), o = i.categories ?? [];
1387
+ for (let t of i.errBars ?? []) he(e, i, t, o, k, P, I, a);
1388
+ if (V || H) {
1278
1389
  let t = [];
1279
1390
  for (let e = 0; e < i.values.length; e++) {
1280
1391
  let n = i.values[e];
1281
1392
  if (n == null) continue;
1282
- let r = j ? e : parseFloat(o[e] ?? "0");
1393
+ let r = k ? e : parseFloat(o[e] ?? "0");
1283
1394
  isNaN(r) || t.push({
1284
- x: L(r),
1285
- y: R(n)
1395
+ x: P(r),
1396
+ y: I(n)
1286
1397
  });
1287
1398
  }
1288
1399
  if (t.length >= 2) {
1289
- if (e.save(), e.strokeStyle = i.color ? `#${i.color}` : a, e.lineWidth = 1.5, e.beginPath(), e.moveTo(t[0].x, t[0].y), W && t.length >= 3) for (let n = 0; n < t.length - 1; n++) {
1400
+ if (e.save(), e.strokeStyle = i.color ? `#${i.color}` : a, e.lineWidth = 1.5, e.beginPath(), e.moveTo(t[0].x, t[0].y), H && t.length >= 3) for (let n = 0; n < t.length - 1; n++) {
1290
1401
  let r = t[n - 1] ?? t[n], i = t[n], a = t[n + 1], o = t[n + 2] ?? a, s = i.x + (a.x - r.x) / 6, c = i.y + (a.y - r.y) / 6, l = a.x - (o.x - i.x) / 6, u = a.y - (o.y - i.y) / 6;
1291
1402
  e.bezierCurveTo(s, c, l, u, a.x, a.y);
1292
1403
  }
@@ -1294,31 +1405,31 @@ function oe(e, t, n, r) {
1294
1405
  e.stroke(), e.restore();
1295
1406
  }
1296
1407
  }
1297
- if (!(ie || i.showMarker === !1 || typeof i.markerSymbol == "string" && i.markerSymbol === "none")) {
1408
+ if (!(ee || i.showMarker === !1 || typeof i.markerSymbol == "string" && i.markerSymbol === "none")) {
1298
1409
  let t = 0;
1299
- if (V && i.bubbleSizes && i.bubbleSizes.length > 0) {
1410
+ if (R && i.bubbleSizes && i.bubbleSizes.length > 0) {
1300
1411
  let e = Math.max(0, ...i.bubbleSizes.filter((e) => e != null));
1301
- e > 0 && (t = Math.min(T, D) / Math.max(8, i.values.length * 1.6) / Math.sqrt(e));
1412
+ e > 0 && (t = Math.min(T, E) / Math.max(8, i.values.length * 1.6) / Math.sqrt(e));
1302
1413
  }
1303
1414
  for (let n = 0; n < i.values.length; n++) {
1304
1415
  let s = i.values[n];
1305
1416
  if (s == null) continue;
1306
- let c = j ? n : parseFloat(o[n] ?? "0");
1417
+ let c = k ? n : parseFloat(o[n] ?? "0");
1307
1418
  if (isNaN(c)) continue;
1308
1419
  let l = (i.dataPointOverrides ?? []).find((e) => e.idx === n), u = l?.markerSymbol ?? i.markerSymbol ?? "circle", d = l?.markerSize ?? i.markerSize ?? 5;
1309
- if (V && t > 0) {
1420
+ if (R && t > 0) {
1310
1421
  let e = i.bubbleSizes?.[n];
1311
1422
  e != null && e > 0 && (d = Math.sqrt(e) * t * 2 / r);
1312
1423
  }
1313
1424
  let f = l?.markerFill ?? l?.color ?? i.markerFill ?? a, p = l?.markerLine ?? i.markerLine ?? null;
1314
- se(e, L(c), R(s), u, d, f, p, r);
1425
+ me(e, P(c), I(s), u, d, f, p, r);
1315
1426
  }
1316
1427
  }
1317
- le(e, i, o, j, L, R, D, r);
1428
+ ge(e, i, o, k, P, I, E, r);
1318
1429
  }
1319
- te(e, t, m, i, a, s, c, C, w, T, D, p + 2), t.catAxisTitle && P(e, t.catAxisTitle, C, w, T, D, "cat", y), t.valAxisTitle && P(e, t.valAxisTitle, C, w, T, D, "val", y);
1430
+ ie(e, t, f, i, a, o, s, C, w, T, E, d + 2), t.catAxisTitle && U(e, t.catAxisTitle, C, w, T, E, "cat", v), t.valAxisTitle && U(e, t.valAxisTitle, C, w, T, E, "val", v);
1320
1431
  }
1321
- function se(e, t, n, r, i, a, o, s) {
1432
+ function me(e, t, n, r, i, a, o, s) {
1322
1433
  let c = Math.max(2, i * s), l = c / 2, u = a.startsWith("#") ? a : `#${a}`, d = o ? o.startsWith("#") ? o : `#${o}` : null;
1323
1434
  switch (e.save(), e.fillStyle = u, d && (e.strokeStyle = d, e.lineWidth = 1), r) {
1324
1435
  case "square":
@@ -1358,8 +1469,8 @@ function se(e, t, n, r, i, a, o, s) {
1358
1469
  }
1359
1470
  e.restore();
1360
1471
  }
1361
- function ce(e, t, n, r, i, a, o, s) {
1362
- e.save(), e.strokeStyle = n.color ? `#${n.color}` : s, e.lineWidth = n.lineWidthEmu ? Math.max(.5, n.lineWidthEmu / E) : 1, e.setLineDash(de(n.dash));
1472
+ function he(e, t, n, r, i, a, o, s) {
1473
+ e.save(), e.strokeStyle = n.color ? `#${n.color}` : s, e.lineWidth = n.lineWidthEmu ? Math.max(.5, n.lineWidthEmu / F) : 1, e.setLineDash(ye(n.dash));
1363
1474
  let c = n.barType === "plus" || n.barType === "both", l = n.barType === "minus" || n.barType === "both", u = n.dir === "x", d = e.lineWidth * 1.5;
1364
1475
  for (let s = 0; s < t.values.length; s++) {
1365
1476
  let f = t.values[s];
@@ -1381,28 +1492,28 @@ function ce(e, t, n, r, i, a, o, s) {
1381
1492
  }
1382
1493
  e.restore();
1383
1494
  }
1384
- function le(e, t, n, r, i, a, o, s) {
1495
+ function ge(e, t, n, r, i, a, o, s) {
1385
1496
  let c = t.dataLabelOverrides ?? [];
1386
1497
  if (c.length === 0 && !t.seriesDataLabels) return;
1387
1498
  let l = t.seriesDataLabels;
1388
- for (let d = 0; d < t.values.length; d++) {
1389
- let f = t.values[d];
1390
- if (f == null) continue;
1391
- let p = r ? d : parseFloat(n[d] ?? "0");
1392
- if (isNaN(p)) continue;
1393
- let m = c.find((e) => e.idx === d), h;
1394
- if (m) {
1395
- if (m.text === "") continue;
1396
- h = m.text;
1499
+ for (let u = 0; u < t.values.length; u++) {
1500
+ let d = t.values[u];
1501
+ if (d == null) continue;
1502
+ let f = r ? u : parseFloat(n[u] ?? "0");
1503
+ if (isNaN(f)) continue;
1504
+ let p = c.find((e) => e.idx === u), m;
1505
+ if (p) {
1506
+ if (p.text === "") continue;
1507
+ m = p.text;
1397
1508
  } else if (l && (l.showVal || l.showSerName || l.showCatName)) {
1398
1509
  let e = [];
1399
- if (l.showCatName && !r && e.push(n[d] ?? ""), l.showSerName && e.push(t.name), l.showVal && e.push(u(f, l.formatCode ?? null)), h = e.filter(Boolean).join(" "), !h) continue;
1510
+ if (l.showCatName && !r && e.push(n[u] ?? ""), l.showSerName && e.push(t.name), l.showVal && e.push(y(d, l.formatCode ?? null)), m = e.filter(Boolean).join(" "), !m) continue;
1400
1511
  } else continue;
1401
- let g = m?.position ?? l?.position ?? "r", _ = m?.fontSizeHpt ?? l?.fontSizeHpt, v = _ ? _ / 100 * s : Math.max(9, Math.min(11, o / 25)), y = m?.fontColor ?? l?.fontColor, b = m?.fontBold ?? l?.fontBold ?? !1;
1402
- ue(e, i(p), a(f), h, g, v, y, b);
1512
+ let h = p?.position ?? l?.position ?? "r", g = p?.fontSizeHpt ?? l?.fontSizeHpt, _ = g ? g / 100 * s : Math.max(9, Math.min(11, o / 25)), v = p?.fontColor ?? l?.fontColor, b = p?.fontBold ?? l?.fontBold ?? !1;
1513
+ _e(e, i(f), a(d), m, h, _, v, b);
1403
1514
  }
1404
1515
  }
1405
- function ue(e, t, n, r, i, a, o, s) {
1516
+ function _e(e, t, n, r, i, a, o, s) {
1406
1517
  e.save(), e.font = `${s ? "bold " : ""}${a}px sans-serif`, e.fillStyle = o ? `#${o}` : "#333";
1407
1518
  let c = a * .6, l = t, u = n;
1408
1519
  switch (i) {
@@ -1430,10 +1541,10 @@ function ue(e, t, n, r, i, a, o, s) {
1430
1541
  for (let t of d) e.fillText(t, l, m), m += f;
1431
1542
  e.restore();
1432
1543
  }
1433
- function K(e, t, n) {
1544
+ function ve(e, t, n) {
1434
1545
  return e < t ? t : e > n ? n : e;
1435
1546
  }
1436
- function de(e) {
1547
+ function ye(e) {
1437
1548
  if (!e) return [];
1438
1549
  switch (e) {
1439
1550
  case "solid": return [];
@@ -1468,18 +1579,18 @@ function de(e) {
1468
1579
  default: return [];
1469
1580
  }
1470
1581
  }
1471
- function fe(e, t, n) {
1472
- let { x: r, y: i, w: a, h: s } = n, c = t.plotAreaManualLayout, l, u, d, f;
1473
- if (c && c.w != null && c.h != null) l = r + c.x * a, u = i + c.y * s, d = c.w * a, f = c.h * s;
1582
+ function be(e, t, n) {
1583
+ let { x: r, y: i, w: a, h: o } = n, s = t.plotAreaManualLayout, c, l, u, d;
1584
+ if (s && s.w != null && s.h != null) c = r + s.x * a, l = i + s.y * o, u = s.w * a, d = s.h * o;
1474
1585
  else {
1475
- let e = t.valAxisHidden ? a * .01 : a * .11, n = a * .01, o = s * .12, c = s * .14;
1476
- l = r + e, u = i + o, d = a - e - n, f = s - o - c;
1586
+ let e = t.valAxisHidden ? a * .01 : a * .11, n = a * .01, s = o * .12, f = o * .14;
1587
+ c = r + e, l = i + s, u = a - e - n, d = o - s - f;
1477
1588
  }
1478
- let p = t.series[0]?.values ?? [], m = t.categories, h = m.length;
1479
- if (h === 0) return;
1589
+ let f = t.series[0]?.values ?? [], p = t.categories, m = p.length;
1590
+ if (m === 0) return;
1480
1591
  let g = new Set(t.subtotalIndices), _ = 0, v = [];
1481
- for (let e = 0; e < h; e++) {
1482
- let t = p[e] ?? 0;
1592
+ for (let e = 0; e < m; e++) {
1593
+ let t = f[e] ?? 0;
1483
1594
  if (e === 0 || g.has(e)) v.push({
1484
1595
  start: 0,
1485
1596
  end: t,
@@ -1498,36 +1609,36 @@ function fe(e, t, n) {
1498
1609
  }
1499
1610
  let y = v.map((e) => e.end), b = v.map((e) => e.start), x = Math.max(...y, ...b), S = Math.min(...b, 0), C = x - S;
1500
1611
  if (C <= 0) return;
1501
- let w = S < 0 ? S - C * .05 : 0, T = (x - w) * 1.1, E = w + T, D = o(T);
1612
+ let w = S < 0 ? S - C * .05 : 0, T = (x - w) * 1.1, E = w + T, D = h(T);
1502
1613
  e.save();
1503
- let O = Math.round(s * .042);
1614
+ let O = Math.round(o * .042);
1504
1615
  if (e.font = `${O}px sans-serif`, !t.valAxisHidden) {
1505
1616
  e.strokeStyle = "#e8e8e8", e.lineWidth = .7, e.fillStyle = "#666", e.textAlign = "right", e.textBaseline = "middle";
1506
1617
  for (let t = Math.ceil(w / D) * D; t <= E; t += D) {
1507
- let n = u + f * (1 - (t - w) / T);
1508
- e.beginPath(), e.moveTo(l, n), e.lineTo(l + d, n), e.stroke(), e.fillText(t.toLocaleString(), l - 4, n);
1618
+ let n = l + d * (1 - (t - w) / T);
1619
+ e.beginPath(), e.moveTo(c, n), e.lineTo(c + u, n), e.stroke(), e.fillText(t.toLocaleString(), c - 4, n);
1509
1620
  }
1510
1621
  }
1511
1622
  let k = !t.valAxisHidden && !t.valAxisLineHidden, A = !t.catAxisHidden && !t.catAxisLineHidden;
1512
- (k || A) && (e.strokeStyle = "#bbb", e.lineWidth = 1, e.beginPath(), k ? (e.moveTo(l, u), e.lineTo(l, u + f), A && e.lineTo(l + d, u + f)) : A && (e.moveTo(l, u + f), e.lineTo(l + d, u + f)), e.stroke());
1513
- let j = d / h, M = j / (1 + (t.barGapWidth ?? 150) / 100);
1623
+ (k || A) && (e.strokeStyle = "#bbb", e.lineWidth = 1, e.beginPath(), k ? (e.moveTo(c, l), e.lineTo(c, l + d), A && e.lineTo(c + u, l + d)) : A && (e.moveTo(c, l + d), e.lineTo(c + u, l + d)), e.stroke());
1624
+ let j = u / m, M = j / (1 + (t.barGapWidth ?? 150) / 100);
1514
1625
  v.forEach((n, r) => {
1515
- let i = l + j * r + (j - M) / 2, a = u + f * (1 - (n.end - w) / T), o = u + f * (1 - (n.start - w) / T), c = Math.max(1, o - a);
1516
- if (n.isSub ? (e.fillStyle = "#196ECA", e.fillRect(i, a, M, c)) : (e.strokeStyle = n.isPos ? "#5BA4E6" : "#E46970", e.lineWidth = 1.5, e.strokeRect(i + .75, a + .75, M - 1.5, c - 1.5)), r < h - 1) {
1517
- let t = l + j * (r + 1) + (j - M) / 2, s = n.isPos ? a : o;
1518
- e.strokeStyle = "#ccc", e.lineWidth = .8, e.setLineDash([3, 3]), e.beginPath(), e.moveTo(i + M, s), e.lineTo(t, s), e.stroke(), e.setLineDash([]);
1626
+ let i = c + j * r + (j - M) / 2, a = l + d * (1 - (n.end - w) / T), s = l + d * (1 - (n.start - w) / T), u = Math.max(1, s - a);
1627
+ if (n.isSub ? (e.fillStyle = "#196ECA", e.fillRect(i, a, M, u)) : (e.strokeStyle = n.isPos ? "#5BA4E6" : "#E46970", e.lineWidth = 1.5, e.strokeRect(i + .75, a + .75, M - 1.5, u - 1.5)), r < m - 1) {
1628
+ let t = c + j * (r + 1) + (j - M) / 2, o = n.isPos ? a : s;
1629
+ e.strokeStyle = "#ccc", e.lineWidth = .8, e.setLineDash([3, 3]), e.beginPath(), e.moveTo(i + M, o), e.lineTo(t, o), e.stroke(), e.setLineDash([]);
1519
1630
  }
1520
- let d = p[r] ?? 0, m = d < 0 ? `△ ${Math.abs(d).toLocaleString()}` : d.toLocaleString(), g = t.series[0]?.dataLabelColors?.[r] ?? null;
1521
- e.fillStyle = g ? `#${g}` : t.dataLabelFontColor ? `#${t.dataLabelFontColor}` : "#595959", e.font = `bold ${Math.round(s * .044)}px sans-serif`, e.textAlign = "center", d < 0 ? (e.textBaseline = "top", e.fillText(m, i + M / 2, o + 3)) : (e.textBaseline = "bottom", e.fillText(m, i + M / 2, a - 3));
1522
- }), e.textAlign = "center", e.textBaseline = "top", e.fillStyle = "#666", e.font = `${Math.round(s * .038)}px sans-serif`;
1523
- let N = u + f + 4;
1524
- for (let t = 0; t < h; t++) {
1525
- let n = l + j * t + j / 2;
1526
- m[t].split(/\s+/).forEach((t, r) => e.fillText(t, n, N + r * (O + 2)));
1631
+ let p = f[r] ?? 0, h = p < 0 ? `△ ${Math.abs(p).toLocaleString()}` : p.toLocaleString(), g = t.series[0]?.dataLabelColors?.[r] ?? null;
1632
+ e.fillStyle = g ? `#${g}` : t.dataLabelFontColor ? `#${t.dataLabelFontColor}` : "#595959", e.font = `bold ${Math.round(o * .044)}px sans-serif`, e.textAlign = "center", p < 0 ? (e.textBaseline = "top", e.fillText(h, i + M / 2, s + 3)) : (e.textBaseline = "bottom", e.fillText(h, i + M / 2, a - 3));
1633
+ }), e.textAlign = "center", e.textBaseline = "top", e.fillStyle = "#666", e.font = `${Math.round(o * .038)}px sans-serif`;
1634
+ let N = l + d + 4;
1635
+ for (let t = 0; t < m; t++) {
1636
+ let n = c + j * t + j / 2;
1637
+ p[t].split(/\s+/).forEach((t, r) => e.fillText(t, n, N + r * (O + 2)));
1527
1638
  }
1528
1639
  e.restore();
1529
1640
  }
1530
- function pe(e, t, n, r = O) {
1641
+ function xe(e, t, n, r = L) {
1531
1642
  let { x: i, y: a, w: o, h: s } = n;
1532
1643
  if (t.chartBg && (e.fillStyle = `#${t.chartBg}`, e.fillRect(i, a, o, s)), t.series.length === 0) {
1533
1644
  e.fillStyle = "#888", e.font = "12px sans-serif", e.textAlign = "center", e.textBaseline = "middle", e.fillText("(no data)", i + o / 2, a + s / 2);
@@ -1540,40 +1651,40 @@ function pe(e, t, n, r = O) {
1540
1651
  case "stackedBarH":
1541
1652
  case "stackedBarPct":
1542
1653
  case "stackedBarHPct":
1543
- U(e, t, n, r);
1654
+ ue(e, t, n, r);
1544
1655
  break;
1545
1656
  case "line":
1546
1657
  case "stackedLine":
1547
1658
  case "stackedLinePct":
1548
- W(e, t, n, r);
1659
+ K(e, t, n, r);
1549
1660
  break;
1550
1661
  case "area":
1551
1662
  case "stackedArea":
1552
1663
  case "stackedAreaPct":
1553
- ie(e, t, n, r);
1664
+ de(e, t, n, r);
1554
1665
  break;
1555
1666
  case "pie":
1556
- G(e, t, n, !1, r);
1667
+ fe(e, t, n, !1, r);
1557
1668
  break;
1558
1669
  case "doughnut":
1559
- G(e, t, n, !0, r);
1670
+ fe(e, t, n, !0, r);
1560
1671
  break;
1561
1672
  case "radar":
1562
- ae(e, t, n, r);
1673
+ pe(e, t, n, r);
1563
1674
  break;
1564
1675
  case "scatter":
1565
1676
  case "bubble":
1566
- oe(e, t, n, r);
1677
+ q(e, t, n, r);
1567
1678
  break;
1568
1679
  case "waterfall":
1569
- fe(e, t, n);
1680
+ be(e, t, n);
1570
1681
  break;
1571
1682
  default: e.fillStyle = "#888", e.font = "11px sans-serif", e.textAlign = "center", e.textBaseline = "middle", e.fillText(`Chart: ${t.chartType}`, i + o / 2, a + s / 2);
1572
1683
  }
1573
1684
  }
1574
1685
  //#endregion
1575
1686
  //#region packages/core/src/autoResize.ts
1576
- function q(e, t, n = {}) {
1687
+ function Se(e, t, n = {}) {
1577
1688
  let r = n.pauseWhenHidden ?? !0, i = null, a = 0, o = 0, s = null, c = !1, l = !1, u = () => {
1578
1689
  if (!l && !(r && typeof document < "u" && document.hidden)) {
1579
1690
  if (s) {
@@ -1610,7 +1721,7 @@ function q(e, t, n = {}) {
1610
1721
  }
1611
1722
  //#endregion
1612
1723
  //#region packages/core/src/shape/custGeom.ts
1613
- function me(e, t, n, r, i, a) {
1724
+ function Ce(e, t, n, r, i, a) {
1614
1725
  for (let o of t) {
1615
1726
  let t = 0, s = 0;
1616
1727
  for (let c of o) switch (c.cmd) {
@@ -1646,7 +1757,7 @@ function J(e, t, n, r, i, a, o, s = -Math.PI / 2) {
1646
1757
  }
1647
1758
  e.closePath();
1648
1759
  }
1649
- function he(e, t, n, r, i, a, o = -Math.PI / 2) {
1760
+ function we(e, t, n, r, i, a, o = -Math.PI / 2) {
1650
1761
  for (let s = 0; s < a; s++) {
1651
1762
  let c = o + s * 2 * Math.PI / a, l = t + r * Math.cos(c), u = n + i * Math.sin(c);
1652
1763
  s === 0 ? e.moveTo(l, u) : e.lineTo(l, u);
@@ -1660,7 +1771,7 @@ function Y(e, t, n, r, i, a, o) {
1660
1771
  y: d + i * Math.sin(l)
1661
1772
  };
1662
1773
  }
1663
- function ge(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1774
+ function Te(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1664
1775
  let u = n + i / 2, d = r + a / 2;
1665
1776
  switch (t) {
1666
1777
  case "ellipse":
@@ -1695,22 +1806,22 @@ function ge(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1695
1806
  break;
1696
1807
  }
1697
1808
  case "pentagon":
1698
- he(e, u, d, i / 2, a / 2, 5);
1809
+ we(e, u, d, i / 2, a / 2, 5);
1699
1810
  break;
1700
1811
  case "hexagon":
1701
- he(e, u, d, i / 2, a / 2, 6, 0);
1812
+ we(e, u, d, i / 2, a / 2, 6, 0);
1702
1813
  break;
1703
1814
  case "heptagon":
1704
- he(e, u, d, i / 2, a / 2, 7);
1815
+ we(e, u, d, i / 2, a / 2, 7);
1705
1816
  break;
1706
1817
  case "octagon":
1707
- he(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
1818
+ we(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
1708
1819
  break;
1709
1820
  case "decagon":
1710
- he(e, u, d, i / 2, a / 2, 10);
1821
+ we(e, u, d, i / 2, a / 2, 10);
1711
1822
  break;
1712
1823
  case "dodecagon":
1713
- he(e, u, d, i / 2, a / 2, 12);
1824
+ we(e, u, d, i / 2, a / 2, 12);
1714
1825
  break;
1715
1826
  case "star4":
1716
1827
  J(e, u, d, i / 2, a / 2, 4, (o ?? 12500) / 5e4);
@@ -2294,8 +2405,8 @@ function ge(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
2294
2405
  break;
2295
2406
  }
2296
2407
  case "ellipseribbon2": {
2297
- let t = Math.min(1e5, Math.max(0, o ?? 25e3)), l = Math.min(75e3, Math.max(25e3, s ?? 5e4)), u = Math.max(0, t - (1e5 - t) / 2), d = Math.min(t, Math.max(u, c ?? 12500)), f = i / 8, p = i * l / 2e5, m = i / 2 - p, h = m + f, g = i - h, _ = i - m, v = i - f, y = a * d / 1e5, b = 4 * y / i, x = a - b * (h - h * h / i), S = h / 2, C = a - b * S, w = i - S, T = a * t / 1e5, E = T - y, D = b * (m - m * m / i), O = D + E, k = a - O, A = y + E - O + y + E, j = a - A, M = a - T, N = a - (y * 14 / 16 + M) / 2, P = a - (D + M), F = a - (O + M), I = m / 2, L = a - (b * I + M), R = i - I, ee = a - (A + M);
2298
- e.moveTo(n, r + a), e.quadraticCurveTo(n + S, r + C, n + h, r + x), e.lineTo(n + m, r + k), e.quadraticCurveTo(n + i / 2, r + j, n + _, r + k), e.lineTo(n + g, r + x), e.quadraticCurveTo(n + w, r + C, n + i, r + a), e.lineTo(n + v, r + N), e.lineTo(n + i, r + T), e.quadraticCurveTo(n + R, r + L, n + _, r + P), e.lineTo(n + _, r + F), e.quadraticCurveTo(n + i / 2, r + ee, n + m, r + F), e.lineTo(n + m, r + P), e.quadraticCurveTo(n + I, r + L, n, r + T), e.lineTo(n + f, r + N), e.closePath();
2408
+ let t = Math.min(1e5, Math.max(0, o ?? 25e3)), l = Math.min(75e3, Math.max(25e3, s ?? 5e4)), u = Math.max(0, t - (1e5 - t) / 2), d = Math.min(t, Math.max(u, c ?? 12500)), f = i / 8, p = i * l / 2e5, m = i / 2 - p, h = m + f, g = i - h, _ = i - m, v = i - f, y = a * d / 1e5, b = 4 * y / i, x = a - b * (h - h * h / i), S = h / 2, C = a - b * S, w = i - S, T = a * t / 1e5, E = T - y, D = b * (m - m * m / i), O = D + E, k = a - O, A = y + E - O + y + E, j = a - A, M = a - T, N = a - (y * 14 / 16 + M) / 2, P = a - (D + M), F = a - (O + M), I = m / 2, L = a - (b * I + M), R = i - I, z = a - (A + M);
2409
+ e.moveTo(n, r + a), e.quadraticCurveTo(n + S, r + C, n + h, r + x), e.lineTo(n + m, r + k), e.quadraticCurveTo(n + i / 2, r + j, n + _, r + k), e.lineTo(n + g, r + x), e.quadraticCurveTo(n + w, r + C, n + i, r + a), e.lineTo(n + v, r + N), e.lineTo(n + i, r + T), e.quadraticCurveTo(n + R, r + L, n + _, r + P), e.lineTo(n + _, r + F), e.quadraticCurveTo(n + i / 2, r + z, n + m, r + F), e.lineTo(n + m, r + P), e.quadraticCurveTo(n + I, r + L, n, r + T), e.lineTo(n + f, r + N), e.closePath();
2299
2410
  break;
2300
2411
  }
2301
2412
  case "circulararrow": {
@@ -2393,7 +2504,7 @@ function ge(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
2393
2504
  break;
2394
2505
  }
2395
2506
  }
2396
- var _e = {
2507
+ var Ee = {
2397
2508
  accentbordercallout1: {
2398
2509
  adj: [
2399
2510
  ["adj1", "val 18750"],
@@ -24256,8 +24367,8 @@ var _e = {
24256
24367
  ]
24257
24368
  }]
24258
24369
  }
24259
- }, X = 216e5, ve = Math.PI * 2 / X;
24260
- function ye(e, t, n) {
24370
+ }, X = 216e5, De = Math.PI * 2 / X;
24371
+ function Oe(e, t, n) {
24261
24372
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
24262
24373
  Object.assign(c, {
24263
24374
  w: r,
@@ -24346,10 +24457,10 @@ function ye(e, t, n) {
24346
24457
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
24347
24458
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
24348
24459
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
24349
- case "sin": return t[0] * Math.sin(t[1] * ve);
24350
- case "cos": return t[0] * Math.cos(t[1] * ve);
24351
- case "tan": return t[0] * Math.tan(t[1] * ve);
24352
- case "at2": return Math.atan2(t[1], t[0]) / ve;
24460
+ case "sin": return t[0] * Math.sin(t[1] * De);
24461
+ case "cos": return t[0] * Math.cos(t[1] * De);
24462
+ case "tan": return t[0] * Math.tan(t[1] * De);
24463
+ case "at2": return Math.atan2(t[1], t[0]) / De;
24353
24464
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
24354
24465
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
24355
24466
  default: throw Error(`preset-shape: unknown operator "${e}" in "${n}"`);
@@ -24358,8 +24469,8 @@ function ye(e, t, n) {
24358
24469
  }
24359
24470
  //#endregion
24360
24471
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
24361
- var be = Math.PI * 2 / 216e5;
24362
- function xe(e, t, n, r, i, a, o) {
24472
+ var ke = Math.PI * 2 / 216e5;
24473
+ function Ae(e, t, n, r, i, a, o) {
24363
24474
  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;
24364
24475
  for (let r of t.cmds) switch (r[0]) {
24365
24476
  case "m": {
@@ -24383,7 +24494,7 @@ function xe(e, t, n, r, i, a, o) {
24383
24494
  break;
24384
24495
  }
24385
24496
  case "a": {
24386
- let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * be, u = n.resolve(r[4]) * be, p = Math.PI * 2, m = (e) => Math.atan2(t * Math.sin(e), i * Math.cos(e)), h = m(l), g = Math.trunc(u / p), _ = u - g * p, v = m(l + _) - h;
24497
+ let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * ke, u = n.resolve(r[4]) * ke, 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;
24387
24498
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
24388
24499
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
24389
24500
  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));
@@ -24396,26 +24507,26 @@ function xe(e, t, n, r, i, a, o) {
24396
24507
  }
24397
24508
  //#endregion
24398
24509
  //#region packages/core/src/shape/preset-geometry/index.ts
24399
- var Z = _e;
24400
- function Se(e) {
24510
+ var Z = Ee;
24511
+ function je(e) {
24401
24512
  return e.toLowerCase() in Z;
24402
24513
  }
24403
- function Ce(e, t, n, r, i, a, o = []) {
24514
+ function Me(e, t, n, r, i, a, o = []) {
24404
24515
  let s = Z[t.toLowerCase()];
24405
24516
  if (!s) return !1;
24406
- let c = ye({
24517
+ let c = Oe({
24407
24518
  w: i,
24408
24519
  h: a,
24409
24520
  adj: o
24410
24521
  }, s.adj, s.gd);
24411
- for (let t of s.paths) xe(e, t, c, n, r, i, a);
24522
+ for (let t of s.paths) Ae(e, t, c, n, r, i, a);
24412
24523
  return !0;
24413
24524
  }
24414
- var we = {
24525
+ var Ne = {
24415
24526
  wedgeroundrectcallout: "roundrect",
24416
24527
  wedgeellipsecallout: "ellipse",
24417
24528
  wedgerectcallout: null
24418
- }, Te = {
24529
+ }, Pe = {
24419
24530
  adj: [],
24420
24531
  gd: [],
24421
24532
  paths: [{
@@ -24449,43 +24560,43 @@ var we = {
24449
24560
  ]
24450
24561
  }]
24451
24562
  };
24452
- function Ee(e, t, n) {
24563
+ function Fe(e, t, n) {
24453
24564
  let r = e[n];
24454
24565
  if (typeof r == "number") return r;
24455
24566
  let i = t.adj[n];
24456
24567
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
24457
24568
  }
24458
- function De(e, t, n, r, i, a, o, s, c, l) {
24569
+ function Ie(e, t, n, r, i, a, o, s, c, l) {
24459
24570
  let u = t.toLowerCase(), d = Z[u];
24460
24571
  if (!d) return !1;
24461
- if (u in we) {
24462
- let e = Ee(o, d, 0), t = Ee(o, d, 1), n = i / 2 + i * e / 1e5, r = a / 2 + a * t / 1e5;
24572
+ if (u in Ne) {
24573
+ let e = Fe(o, d, 0), t = Fe(o, d, 1), n = i / 2 + i * e / 1e5, r = a / 2 + a * t / 1e5;
24463
24574
  if (n >= 0 && n <= i && r >= 0 && r <= a) {
24464
- let e = we[u];
24465
- e === "roundrect" ? (d = Z.roundrect, o = [Ee(o, Z[u], 2)]) : e && Z[e] ? (d = Z[e], o = []) : (d = Te, o = []);
24575
+ let e = Ne[u];
24576
+ e === "roundrect" ? (d = Z.roundrect, o = [Fe(o, Z[u], 2)]) : e && Z[e] ? (d = Z[e], o = []) : (d = Pe, o = []);
24466
24577
  }
24467
24578
  }
24468
- let f = ye({
24579
+ let f = Oe({
24469
24580
  w: i,
24470
24581
  h: a,
24471
24582
  adj: o
24472
24583
  }, d.adj, d.gd), p = !1;
24473
24584
  for (let t of d.paths) {
24474
- e.beginPath(), xe(e, t, f, n, r, i, a);
24585
+ e.beginPath(), Ae(e, t, f, n, r, i, a);
24475
24586
  let o = t.fill;
24476
24587
  if (o !== "none" && s != null) {
24477
24588
  e.save(), e.fillStyle = s, e.fill();
24478
- let t = ke(o);
24589
+ let t = Re(o);
24479
24590
  t && (e.fillStyle = t, e.fill()), e.restore(), p ||= (l(), !0);
24480
24591
  }
24481
24592
  t.stroke && c && c();
24482
24593
  }
24483
24594
  return !0;
24484
24595
  }
24485
- function Oe(e, t, n, r, i, a) {
24596
+ function Le(e, t, n, r, i, a) {
24486
24597
  let o = Z[e.toLowerCase()];
24487
24598
  if (!o || o.paths.length === 0) return null;
24488
- let s = o.paths[0], c = ye({
24599
+ let s = o.paths[0], c = Oe({
24489
24600
  w: r,
24490
24601
  h: i,
24491
24602
  adj: a
@@ -24519,7 +24630,7 @@ function Oe(e, t, n, r, i, a) {
24519
24630
  }
24520
24631
  };
24521
24632
  }
24522
- function ke(e) {
24633
+ function Re(e) {
24523
24634
  switch (e) {
24524
24635
  case "lighten": return "rgba(255,255,255,0.30)";
24525
24636
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -24530,10 +24641,10 @@ function ke(e) {
24530
24641
  }
24531
24642
  //#endregion
24532
24643
  //#region packages/core/src/shape/effects.ts
24533
- function Ae(e, t) {
24644
+ function ze(e, t) {
24534
24645
  return e * t;
24535
24646
  }
24536
- function je(e, t) {
24647
+ function Be(e, t) {
24537
24648
  let n = Math.max(1, Math.ceil(e)), r = Math.max(1, Math.ceil(t));
24538
24649
  if (typeof OffscreenCanvas < "u") return new OffscreenCanvas(n, r);
24539
24650
  if (typeof document < "u") {
@@ -24542,29 +24653,29 @@ function je(e, t) {
24542
24653
  }
24543
24654
  return null;
24544
24655
  }
24545
- function Me(e) {
24656
+ function Ve(e) {
24546
24657
  return e.getContext("2d") ?? null;
24547
24658
  }
24548
- function Ne(e, t, n, r, i, a, o) {
24549
- let s = je(a, o);
24659
+ function He(e, t, n, r, i, a, o) {
24660
+ let s = Be(a, o);
24550
24661
  if (!s) return;
24551
- let c = Me(s);
24662
+ let c = Ve(s);
24552
24663
  if (!c) return;
24553
- let l = Ae(r.blur, i), u = Ae(r.dist, i), d = r.dir * Math.PI / 180, f = Math.cos(d) * u, p = Math.sin(d) * u;
24554
- c.save(), c.fillStyle = b(r.color, r.alpha), t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-out", c.filter = l > 0 ? `blur(${l}px)` : "none", c.translate(f, p), c.fillStyle = "#000", t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-in", c.filter = "none", c.fillStyle = "#000", t(c), c.restore(), e.save(), e.drawImage(s, 0, 0), e.restore();
24664
+ let l = ze(r.blur, i), u = ze(r.dist, i), d = r.dir * Math.PI / 180, f = Math.cos(d) * u, p = Math.sin(d) * u;
24665
+ c.save(), c.fillStyle = k(r.color, r.alpha), t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-out", c.filter = l > 0 ? `blur(${l}px)` : "none", c.translate(f, p), c.fillStyle = "#000", t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-in", c.filter = "none", c.fillStyle = "#000", t(c), c.restore(), e.save(), e.drawImage(s, 0, 0), e.restore();
24555
24666
  }
24556
- function Pe(e, t, n, r, i, a, o, s) {
24557
- let c = Ae(r.radius, i);
24667
+ function Ue(e, t, n, r, i, a, o, s) {
24668
+ let c = ze(r.radius, i);
24558
24669
  if (c <= 0) {
24559
24670
  t(e);
24560
24671
  return;
24561
24672
  }
24562
- let l = je(a, o);
24673
+ let l = Be(a, o);
24563
24674
  if (!l) {
24564
24675
  t(e);
24565
24676
  return;
24566
24677
  }
24567
- let u = Me(l);
24678
+ let u = Ve(l);
24568
24679
  if (!u) {
24569
24680
  t(e);
24570
24681
  return;
@@ -24572,24 +24683,24 @@ function Pe(e, t, n, r, i, a, o, s) {
24572
24683
  let d = s ?? t;
24573
24684
  t(u), u.save(), u.globalCompositeOperation = "destination-in", u.filter = `blur(${c}px)`, u.fillStyle = "#000", d(u), u.restore(), e.save(), e.drawImage(l, 0, 0), e.restore();
24574
24685
  }
24575
- function Fe(e, t, n, r, i, a, o) {
24576
- let s = je(a, o);
24686
+ function We(e, t, n, r, i, a, o) {
24687
+ let s = Be(a, o);
24577
24688
  if (!s) return;
24578
- let c = Me(s);
24689
+ let c = Ve(s);
24579
24690
  if (!c) return;
24580
- let l = Ae(r.blur, i);
24691
+ let l = ze(r.blur, i);
24581
24692
  c.save(), l > 0 && (c.filter = `blur(${l}px)`), t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-in";
24582
- let u = n.y, d = n.y + n.h, f = c.createLinearGradient(0, d, 0, u), p = Ie(r.stPos), m = Ie(r.endPos);
24693
+ let u = n.y, d = n.y + n.h, f = c.createLinearGradient(0, d, 0, u), p = Ge(r.stPos), m = Ge(r.endPos);
24583
24694
  f.addColorStop(0, `rgba(0,0,0,${r.stA})`), p > 0 && f.addColorStop(p, `rgba(0,0,0,${r.stA})`), m < 1 && m > p && f.addColorStop(m, `rgba(0,0,0,${r.endA})`), f.addColorStop(1, `rgba(0,0,0,${r.endA})`), c.fillStyle = f, c.fillRect(0, 0, a, o), c.restore();
24584
- let h = Ae(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24695
+ let h = ze(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24585
24696
  e.save(), e.translate(n.x + _, d + v), e.scale(r.sx, r.sy), e.translate(-n.x, -d), e.drawImage(s, 0, 0), e.restore();
24586
24697
  }
24587
- function Ie(e) {
24698
+ function Ge(e) {
24588
24699
  return e < 0 ? 0 : e > 1 ? 1 : e;
24589
24700
  }
24590
24701
  //#endregion
24591
24702
  //#region packages/core/src/shape/scene3d-camera.ts
24592
- var Le = 26, Re = {
24703
+ var Ke = 26, qe = {
24593
24704
  orthographicFront: {
24594
24705
  kind: "orthographic",
24595
24706
  baseLat: 0,
@@ -24602,52 +24713,52 @@ var Le = 26, Re = {
24602
24713
  baseLat: 0,
24603
24714
  baseLon: 0,
24604
24715
  baseRev: 0,
24605
- fovDeg: Le
24716
+ fovDeg: Ke
24606
24717
  },
24607
24718
  perspectiveRelaxed: {
24608
24719
  kind: "perspective",
24609
24720
  baseLat: 0,
24610
24721
  baseLon: 0,
24611
24722
  baseRev: 0,
24612
- fovDeg: Le
24723
+ fovDeg: Ke
24613
24724
  },
24614
24725
  perspectiveRelaxedModerately: {
24615
24726
  kind: "perspective",
24616
24727
  baseLat: 0,
24617
24728
  baseLon: 0,
24618
24729
  baseRev: 0,
24619
- fovDeg: Le
24730
+ fovDeg: Ke
24620
24731
  },
24621
24732
  perspectiveAbove: {
24622
24733
  kind: "perspective",
24623
24734
  baseLat: -20,
24624
24735
  baseLon: 0,
24625
24736
  baseRev: 0,
24626
- fovDeg: Le
24737
+ fovDeg: Ke
24627
24738
  },
24628
24739
  perspectiveBelow: {
24629
24740
  kind: "perspective",
24630
24741
  baseLat: 20,
24631
24742
  baseLon: 0,
24632
24743
  baseRev: 0,
24633
- fovDeg: Le
24744
+ fovDeg: Ke
24634
24745
  },
24635
24746
  perspectiveLeft: {
24636
24747
  kind: "perspective",
24637
24748
  baseLat: 0,
24638
24749
  baseLon: -20,
24639
24750
  baseRev: 0,
24640
- fovDeg: Le
24751
+ fovDeg: Ke
24641
24752
  },
24642
24753
  perspectiveRight: {
24643
24754
  kind: "perspective",
24644
24755
  baseLat: 0,
24645
24756
  baseLon: 20,
24646
24757
  baseRev: 0,
24647
- fovDeg: Le
24758
+ fovDeg: Ke
24648
24759
  }
24649
24760
  };
24650
- function ze(e, t) {
24761
+ function Je(e, t) {
24651
24762
  let n = Array(9).fill(0);
24652
24763
  for (let r = 0; r < 3; r++) for (let i = 0; i < 3; i++) {
24653
24764
  let a = 0;
@@ -24656,7 +24767,7 @@ function ze(e, t) {
24656
24767
  }
24657
24768
  return n;
24658
24769
  }
24659
- function Be(e) {
24770
+ function Ye(e) {
24660
24771
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24661
24772
  return [
24662
24773
  1,
@@ -24670,7 +24781,7 @@ function Be(e) {
24670
24781
  n
24671
24782
  ];
24672
24783
  }
24673
- function Ve(e) {
24784
+ function Xe(e) {
24674
24785
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24675
24786
  return [
24676
24787
  n,
@@ -24684,7 +24795,7 @@ function Ve(e) {
24684
24795
  n
24685
24796
  ];
24686
24797
  }
24687
- function He(e) {
24798
+ function Ze(e) {
24688
24799
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24689
24800
  return [
24690
24801
  n,
@@ -24698,22 +24809,22 @@ function He(e) {
24698
24809
  1
24699
24810
  ];
24700
24811
  }
24701
- function Ue(e, t, n, r) {
24812
+ function Qe(e, t, n, r) {
24702
24813
  return [
24703
24814
  e[0] * t + e[1] * n + e[2] * r,
24704
24815
  e[3] * t + e[4] * n + e[5] * r,
24705
24816
  e[6] * t + e[7] * n + e[8] * r
24706
24817
  ];
24707
24818
  }
24708
- function We(e, t) {
24819
+ function $e(e, t) {
24709
24820
  let n = t ? t.lat : e.baseLat, r = t ? t.lon : e.baseLon;
24710
- return ze(He(-(t ? t.rev : e.baseRev)), ze(Be(-n), Ve(-r)));
24821
+ return Je(Ze(-(t ? t.rev : e.baseRev)), Je(Ye(-n), Xe(-r)));
24711
24822
  }
24712
- function Ge(e) {
24713
- return Re[e] ?? Re.orthographicFront;
24823
+ function et(e) {
24824
+ return qe[e] ?? qe.orthographicFront;
24714
24825
  }
24715
- function Ke(e, t, n) {
24716
- let r = Ge(e.prst), i = We(r, e.rot);
24826
+ function tt(e, t, n) {
24827
+ let r = et(e.prst), i = $e(r, e.rot);
24717
24828
  if (t <= 0 || n <= 0) return {
24718
24829
  corners: [
24719
24830
  {
@@ -24745,11 +24856,11 @@ function Ke(e, t, n) {
24745
24856
  if (r.kind === "perspective") {
24746
24857
  let t = e.fov ?? r.fovDeg, n = Math.max(1, Math.min(179, t)) * Math.PI / 180, a = l / Math.tan(n / 2);
24747
24858
  u = s.map(([e, t]) => {
24748
- let [n, r, o] = Ue(i, e, t, 0), s = a - o, c = a / (Math.abs(s) < 1e-6 ? 1e-6 * Math.sign(s || 1) : s);
24859
+ let [n, r, o] = Qe(i, e, t, 0), s = a - o, c = a / (Math.abs(s) < 1e-6 ? 1e-6 * Math.sign(s || 1) : s);
24749
24860
  return [n * c, r * c];
24750
24861
  });
24751
24862
  } else u = s.map(([e, t]) => {
24752
- let [n, r] = Ue(i, e, t, 0);
24863
+ let [n, r] = Qe(i, e, t, 0);
24753
24864
  return [n, r];
24754
24865
  });
24755
24866
  u = u.map(([e, t]) => [e * c, t * c]);
@@ -24774,18 +24885,18 @@ function Ke(e, t, n) {
24774
24885
  isIdentity: E
24775
24886
  };
24776
24887
  }
24777
- function qe(e) {
24778
- let { isIdentity: t } = Ke(e, 1e3, 1e3);
24888
+ function nt(e) {
24889
+ let { isIdentity: t } = tt(e, 1e3, 1e3);
24779
24890
  return !t;
24780
24891
  }
24781
- function Je(e, t, n, r) {
24782
- let i = Ge(e.prst), a = We(i, e.rot);
24892
+ function rt(e, t, n, r) {
24893
+ let i = et(e.prst), a = $e(i, e.rot);
24783
24894
  if (t <= 0 || n <= 0 || r === 0) return {
24784
24895
  x: 0,
24785
24896
  y: 0
24786
24897
  };
24787
24898
  let o = t / 2, s = n / 2, c = Math.max(o, s), l = e.zoom ?? 1, u = (t) => {
24788
- let [n, r, o] = Ue(a, 0, 0, t);
24899
+ let [n, r, o] = Qe(a, 0, 0, t);
24789
24900
  if (i.kind === "perspective") {
24790
24901
  let t = e.fov ?? i.fovDeg, a = Math.max(1, Math.min(179, t)) * Math.PI / 180, s = c / Math.tan(a / 2), u = s - o, d = s / (Math.abs(u) < 1e-6 ? 1e-6 * Math.sign(u || 1) : u);
24791
24902
  return [n * d * l, r * d * l];
@@ -24799,7 +24910,7 @@ function Je(e, t, n, r) {
24799
24910
  }
24800
24911
  //#endregion
24801
24912
  //#region packages/core/src/shape/scene3d-draw.ts
24802
- function Ye(e, t, n, r) {
24913
+ function it(e, t, n, r) {
24803
24914
  let i = e.x, a = e.y, o = t.x, s = t.y, c = n.x, l = n.y, u = r.x, d = r.y, f = o - c, p = u - c, m = i - o + c - u, h = s - l, g = d - l, _ = a - s + l - d, v, y;
24804
24915
  if (Math.abs(m) < 1e-12 && Math.abs(_) < 1e-12) v = 0, y = 0;
24805
24916
  else {
@@ -24819,15 +24930,15 @@ function Ye(e, t, n, r) {
24819
24930
  1
24820
24931
  ];
24821
24932
  }
24822
- function Xe(e, t, n) {
24933
+ function at(e, t, n) {
24823
24934
  let r = e[6] * t + e[7] * n + e[8];
24824
24935
  return {
24825
24936
  x: (e[0] * t + e[1] * n + e[2]) / r,
24826
24937
  y: (e[3] * t + e[4] * n + e[5]) / r
24827
24938
  };
24828
24939
  }
24829
- var Ze = 1;
24830
- function Qe(e, t) {
24940
+ var ot = 1;
24941
+ function st(e, t) {
24831
24942
  let [n, r, i, a, o, s] = e, [c, l, u, d, f, p] = t;
24832
24943
  return [
24833
24944
  n * c + i * l,
@@ -24838,13 +24949,13 @@ function Qe(e, t) {
24838
24949
  r * f + a * p + s
24839
24950
  ];
24840
24951
  }
24841
- function $e(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24952
+ function ct(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24842
24953
  let p = c - o, m = l - s;
24843
24954
  if (p <= 0 || m <= 0) return;
24844
- let h = (d.x - u.x) / p, g = (d.y - u.y) / p, _ = (f.x - u.x) / m, v = (f.y - u.y) / m, y = (Math.hypot(d.x - u.x, d.y - u.y) || 1) * a, b = (Math.hypot(f.x - u.x, f.y - u.y) || 1) * a, x = Ze * p / y, S = Ze * m / b, C = Math.max(0, o - x), w = Math.max(0, s - S), T = Math.min(n, c + x), E = Math.min(r, l + S), D = T - C, O = E - w;
24955
+ let h = (d.x - u.x) / p, g = (d.y - u.y) / p, _ = (f.x - u.x) / m, v = (f.y - u.y) / m, y = (Math.hypot(d.x - u.x, d.y - u.y) || 1) * a, b = (Math.hypot(f.x - u.x, f.y - u.y) || 1) * a, x = ot * p / y, S = ot * m / b, C = Math.max(0, o - x), w = Math.max(0, s - S), T = Math.min(n, c + x), E = Math.min(r, l + S), D = T - C, O = E - w;
24845
24956
  if (D <= 0 || O <= 0) return;
24846
24957
  e.save();
24847
- let [k, A, j, M, N, P] = Qe(i, [
24958
+ let [k, A, j, M, N, P] = st(i, [
24848
24959
  h,
24849
24960
  g,
24850
24961
  _,
@@ -24854,22 +24965,22 @@ function $e(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24854
24965
  ]);
24855
24966
  e.setTransform(k, A, j, M, N, P), e.drawImage(t, C, w, D, O, C, w, D, O), e.restore();
24856
24967
  }
24857
- function et(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24858
- let p = Xe(o, s, c), m = Xe(o, l, c), h = Xe(o, s, u), g = Xe(o, l, u), _ = (s + l) / 2, v = (c + u) / 2, y = Xe(o, _, v), b = {
24968
+ function lt(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24969
+ let p = at(o, s, c), m = at(o, l, c), h = at(o, s, u), g = at(o, l, u), _ = (s + l) / 2, v = (c + u) / 2, y = at(o, _, v), b = {
24859
24970
  x: (p.x + m.x + h.x + g.x) / 4,
24860
24971
  y: (p.y + m.y + h.y + g.y) / 4
24861
- }, x = nt(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
24972
+ }, x = dt(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
24862
24973
  if (f <= 0 || S <= d) {
24863
- $e(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
24974
+ ct(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
24864
24975
  return;
24865
24976
  }
24866
- l - s >= u - c ? (et(e, t, n, r, i, a, o, s, c, _, u, d, f - 1), et(e, t, n, r, i, a, o, _, c, l, u, d, f - 1)) : (et(e, t, n, r, i, a, o, s, c, l, v, d, f - 1), et(e, t, n, r, i, a, o, s, v, l, u, d, f - 1));
24977
+ l - s >= u - c ? (lt(e, t, n, r, i, a, o, s, c, _, u, d, f - 1), lt(e, t, n, r, i, a, o, _, c, l, u, d, f - 1)) : (lt(e, t, n, r, i, a, o, s, c, l, v, d, f - 1), lt(e, t, n, r, i, a, o, s, v, l, u, d, f - 1));
24867
24978
  }
24868
- function tt(e, t, n, r, i, a = .5) {
24979
+ function ut(e, t, n, r, i, a = .5) {
24869
24980
  if (n <= 0 || r <= 0) return;
24870
24981
  let [o, s, c, l] = i;
24871
24982
  if (Math.abs(o.x * s.y - s.x * o.y + s.x * c.y - c.x * s.y + c.x * l.y - l.x * c.y + l.x * o.y - o.x * l.y) / 2 < 1e-6) return;
24872
- let u = Ye(i[0], i[1], i[2], i[3]);
24983
+ let u = it(i[0], i[1], i[2], i[3]);
24873
24984
  if (!u) return;
24874
24985
  let d = t.getTransform(), f = [
24875
24986
  d.a,
@@ -24878,14 +24989,14 @@ function tt(e, t, n, r, i, a = .5) {
24878
24989
  d.d,
24879
24990
  d.e,
24880
24991
  d.f
24881
- ], p = nt(f);
24882
- st(e, t, n, r, i, f, p, u, a, 14) || (at(), t.save(), t.beginPath(), t.moveTo(i[0].x, i[0].y), t.lineTo(i[1].x, i[1].y), t.lineTo(i[2].x, i[2].y), t.lineTo(i[3].x, i[3].y), t.closePath(), t.clip(), et(t, e, n, r, f, p, u, 0, 0, 1, 1, a, 14), t.restore());
24992
+ ], p = dt(f);
24993
+ gt(e, t, n, r, i, f, p, u, a, 14) || (mt(), t.save(), t.beginPath(), t.moveTo(i[0].x, i[0].y), t.lineTo(i[1].x, i[1].y), t.lineTo(i[2].x, i[2].y), t.lineTo(i[3].x, i[3].y), t.closePath(), t.clip(), lt(t, e, n, r, f, p, u, 0, 0, 1, 1, a, 14), t.restore());
24883
24994
  }
24884
- function nt(e) {
24995
+ function dt(e) {
24885
24996
  return Math.sqrt(Math.abs(e[0] * e[3] - e[1] * e[2])) || 1;
24886
24997
  }
24887
- function rt(e, t, n) {
24888
- let r = Ye(e[0], e[1], e[2], e[3]);
24998
+ function ft(e, t, n) {
24999
+ let r = it(e[0], e[1], e[2], e[3]);
24889
25000
  if (!r) return null;
24890
25001
  let i = [
24891
25002
  [-t, -n],
@@ -24895,16 +25006,16 @@ function rt(e, t, n) {
24895
25006
  ], a = [];
24896
25007
  for (let [e, t] of i) {
24897
25008
  if (!(r[6] * e + r[7] * t + r[8] > 1e-9)) return null;
24898
- a.push(Xe(r, e, t));
25009
+ a.push(at(r, e, t));
24899
25010
  }
24900
25011
  return a;
24901
25012
  }
24902
- var it = !1;
24903
- function at() {
24904
- it || (it = !0, typeof console < "u" && typeof console.warn == "function" && console.warn("[ooxml] scene3d: no offscreen canvas available — using the direct warp fallback (per-cell bleed only, no supersample). Textured-source seams may be faintly visible; the silhouette and geometry are unaffected."));
25013
+ var pt = !1;
25014
+ function mt() {
25015
+ pt || (pt = !0, typeof console < "u" && typeof console.warn == "function" && console.warn("[ooxml] scene3d: no offscreen canvas available — using the direct warp fallback (per-cell bleed only, no supersample). Textured-source seams may be faintly visible; the silhouette and geometry are unaffected."));
24905
25016
  }
24906
- var ot = 2;
24907
- function st(e, t, n, r, i, a, o, s, c, l) {
25017
+ var ht = 2;
25018
+ function gt(e, t, n, r, i, a, o, s, c, l) {
24908
25019
  let u = i.map((e) => ({
24909
25020
  x: a[0] * e.x + a[2] * e.y + a[4],
24910
25021
  y: a[1] * e.x + a[3] * e.y + a[5]
@@ -24913,11 +25024,11 @@ function st(e, t, n, r, i, a, o, s, c, l) {
24913
25024
  d = Math.floor(d) - 1, f = Math.floor(f) - 1, p = Math.ceil(p) + 1, m = Math.ceil(m) + 1;
24914
25025
  let h = p - d, g = m - f;
24915
25026
  if (h <= 0 || g <= 0) return !1;
24916
- let _ = Math.max(1, Math.ceil(h * ot)), v = Math.max(1, Math.ceil(g * ot)), y = je(_, v);
25027
+ let _ = Math.max(1, Math.ceil(h * ht)), v = Math.max(1, Math.ceil(g * ht)), y = Be(_, v);
24917
25028
  if (!y || y.width !== _ || y.height !== v) return !1;
24918
25029
  let b = y.getContext("2d") ?? null;
24919
25030
  if (!b) return !1;
24920
- let x = ot, S = [
25031
+ let x = ht, S = [
24921
25032
  a[0] * x,
24922
25033
  a[1] * x,
24923
25034
  a[2] * x,
@@ -24925,18 +25036,18 @@ function st(e, t, n, r, i, a, o, s, c, l) {
24925
25036
  (a[4] - d) * x,
24926
25037
  (a[5] - f) * x
24927
25038
  ];
24928
- b.save(), b.setTransform(S[0], S[1], S[2], S[3], S[4], S[5]), b.beginPath(), b.moveTo(i[0].x, i[0].y), b.lineTo(i[1].x, i[1].y), b.lineTo(i[2].x, i[2].y), b.lineTo(i[3].x, i[3].y), b.closePath(), b.clip(), et(b, e, n, r, S, o, s, 0, 0, 1, 1, c * x, l), b.restore(), t.save(), t.setTransform(1, 0, 0, 1, 0, 0);
25039
+ b.save(), b.setTransform(S[0], S[1], S[2], S[3], S[4], S[5]), b.beginPath(), b.moveTo(i[0].x, i[0].y), b.lineTo(i[1].x, i[1].y), b.lineTo(i[2].x, i[2].y), b.lineTo(i[3].x, i[3].y), b.closePath(), b.clip(), lt(b, e, n, r, S, o, s, 0, 0, 1, 1, c * x, l), b.restore(), t.save(), t.setTransform(1, 0, 0, 1, 0, 0);
24929
25040
  let C = t.imageSmoothingEnabled, w = t.imageSmoothingQuality;
24930
25041
  return t.imageSmoothingEnabled = !0, t.imageSmoothingQuality = "high", t.drawImage(y, 0, 0, h * x, g * x, d, f, h, g), t.imageSmoothingEnabled = C, t.imageSmoothingQuality = w, t.restore(), !0;
24931
25042
  }
24932
25043
  //#endregion
24933
25044
  //#region packages/core/src/shape/bevel-shading.ts
24934
- function ct(e, t) {
25045
+ function _t(e, t) {
24935
25046
  if (t <= 0) return () => 1;
24936
25047
  let n = (e) => Math.max(0, Math.min(1, e / t));
24937
25048
  switch (e) {
24938
25049
  case "hardEdge": {
24939
- let e = gt;
25050
+ let e = Tt;
24940
25051
  return (t) => {
24941
25052
  let r = Math.min(1, n(t) / e);
24942
25053
  return r * r * (3 - 2 * r);
@@ -24956,7 +25067,7 @@ function ct(e, t) {
24956
25067
  };
24957
25068
  }
24958
25069
  }
24959
- function lt(e) {
25070
+ function vt(e) {
24960
25071
  let t = e.length, n = new Float64Array(t);
24961
25072
  if (t === 0) return n;
24962
25073
  let r = new Int32Array(t), i = new Float64Array(t + 1), a = 0;
@@ -24974,7 +25085,7 @@ function lt(e) {
24974
25085
  }
24975
25086
  return n;
24976
25087
  }
24977
- function ut(e, t = 3) {
25088
+ function yt(e, t = 3) {
24978
25089
  if (e <= 0) return Array(t).fill(1);
24979
25090
  let n = Math.sqrt(12 * e * e / t + 1), r = Math.floor(n);
24980
25091
  r % 2 == 0 && r--;
@@ -24982,7 +25093,7 @@ function ut(e, t = 3) {
24982
25093
  for (let e = 0; e < t; e++) s.push(e < o ? r : i);
24983
25094
  return s;
24984
25095
  }
24985
- function dt(e, t, n, r, i, a) {
25096
+ function bt(e, t, n, r, i, a) {
24986
25097
  let o = 1 / (2 * i + 1);
24987
25098
  if (a) for (let a = 0; a < r; a++) {
24988
25099
  let r = a * n, s = 0;
@@ -25003,29 +25114,29 @@ function dt(e, t, n, r, i, a) {
25003
25114
  }
25004
25115
  }
25005
25116
  }
25006
- function ft(e, t, n, r) {
25117
+ function xt(e, t, n, r) {
25007
25118
  let i = Float64Array.from(e);
25008
25119
  if (r <= 0 || t <= 0 || n <= 0) return i;
25009
25120
  let a = new Float64Array(t * n);
25010
- for (let e of ut(r, 3)) {
25121
+ for (let e of yt(r, 3)) {
25011
25122
  let r = Math.max(1, (e - 1) / 2);
25012
- dt(i, a, t, n, r, !0), dt(a, i, t, n, r, !1);
25123
+ bt(i, a, t, n, r, !0), bt(a, i, t, n, r, !1);
25013
25124
  }
25014
25125
  return i;
25015
25126
  }
25016
- function pt(e, t, n, r = 128) {
25127
+ function St(e, t, n, r = 128) {
25017
25128
  let i = new Float64Array(t * n);
25018
25129
  for (let a = 0; a < t * n; a++) i[a] = (e[a] ?? 0) >= r ? 0x56bc75e2d63100000 : 0;
25019
25130
  let a = new Float64Array(n);
25020
25131
  for (let e = 0; e < t; e++) {
25021
25132
  for (let r = 0; r < n; r++) a[r] = i[r * t + e];
25022
- let r = lt(a);
25133
+ let r = vt(a);
25023
25134
  for (let a = 0; a < n; a++) i[a * t + e] = r[a];
25024
25135
  }
25025
25136
  let o = new Float64Array(t);
25026
25137
  for (let e = 0; e < n; e++) {
25027
25138
  for (let n = 0; n < t; n++) o[n] = i[e * t + n];
25028
- let n = lt(o);
25139
+ let n = vt(o);
25029
25140
  for (let r = 0; r < t; r++) i[e * t + r] = n[r];
25030
25141
  }
25031
25142
  for (let e = 0; e < n; e++) for (let r = 0; r < t; r++) {
@@ -25037,15 +25148,15 @@ function pt(e, t, n, r = 128) {
25037
25148
  for (let e = 0; e < t * n; e++) i[e] = Math.sqrt(i[e]);
25038
25149
  return i;
25039
25150
  }
25040
- var mt = .25, ht = .35, gt = .5;
25041
- function _t(e, t, n, r, i, a) {
25151
+ var Ct = .25, wt = .35, Tt = .5;
25152
+ function Et(e, t, n, r, i, a) {
25042
25153
  let o = new Float32Array(t * n * 3), s = new Uint8Array(t * n), c = new Float32Array(t * n);
25043
25154
  if (t <= 0 || n <= 0) return {
25044
25155
  normals: o,
25045
25156
  bandMask: s,
25046
25157
  bandWeight: c
25047
25158
  };
25048
- let l = pt(e, t, n), u = ct(i, r), d = (n, r) => (e[r * t + n] ?? 0) >= 128, f = (r > 0 ? a / r : 0) * r, p = ft(l, t, n, Math.max(1, r * mt)), m = (e) => {
25159
+ let l = St(e, t, n), u = _t(i, r), d = (n, r) => (e[r * t + n] ?? 0) >= 128, f = (r > 0 ? a / r : 0) * r, p = xt(l, t, n, Math.max(1, r * Ct)), m = (e) => {
25049
25160
  let t = u(Math.max(0, e - .5));
25050
25161
  return u(e + .5) - t;
25051
25162
  };
@@ -25060,9 +25171,9 @@ function _t(e, t, n, r, i, a) {
25060
25171
  o[a * 3 + 2] = 1;
25061
25172
  continue;
25062
25173
  }
25063
- let g = u / r, _ = 1 - ht, v = 1;
25174
+ let g = u / r, _ = 1 - wt, v = 1;
25064
25175
  if (g > _) {
25065
- let e = Math.min(1, (g - _) / ht);
25176
+ let e = Math.min(1, (g - _) / wt);
25066
25177
  v = 1 - e * e * (3 - 2 * e);
25067
25178
  }
25068
25179
  c[a] = v;
@@ -25077,7 +25188,7 @@ function _t(e, t, n, r, i, a) {
25077
25188
  bandWeight: c
25078
25189
  };
25079
25190
  }
25080
- var vt = 35 * Math.PI / 180, yt = 12 * Math.PI / 180, bt = {
25191
+ var Dt = 35 * Math.PI / 180, Ot = 12 * Math.PI / 180, kt = {
25081
25192
  t: {
25082
25193
  x: 0,
25083
25194
  y: -1
@@ -25111,22 +25222,22 @@ var vt = 35 * Math.PI / 180, yt = 12 * Math.PI / 180, bt = {
25111
25222
  y: 1
25112
25223
  }
25113
25224
  };
25114
- function xt(e, t, n) {
25225
+ function At(e, t, n) {
25115
25226
  let r = n * Math.PI / 180, i = Math.cos(r), a = Math.sin(r);
25116
25227
  return {
25117
25228
  x: e * i - t * a,
25118
25229
  y: e * a + t * i
25119
25230
  };
25120
25231
  }
25121
- function St(e, t, n) {
25122
- let r = bt[t] ?? bt.t;
25123
- return n && n.rev && (r = xt(r.x, r.y, n.rev)), wt(r.x, r.y, vt);
25232
+ function jt(e, t, n) {
25233
+ let r = kt[t] ?? kt.t;
25234
+ return n && n.rev && (r = At(r.x, r.y, n.rev)), Nt(r.x, r.y, Dt);
25124
25235
  }
25125
- function Ct(e) {
25236
+ function Mt(e) {
25126
25237
  let t = Math.hypot(e.x, e.y) || 1;
25127
- return wt(-e.x / t, -e.y / t, yt);
25238
+ return Nt(-e.x / t, -e.y / t, Ot);
25128
25239
  }
25129
- function wt(e, t, n) {
25240
+ function Nt(e, t, n) {
25130
25241
  let r = Math.hypot(e, t) || 1, i = Math.cos(n), a = Math.sin(n), o = e / r * i, s = t / r * i, c = a, l = Math.hypot(o, s, c) || 1;
25131
25242
  return {
25132
25243
  x: o / l,
@@ -25134,7 +25245,7 @@ function wt(e, t, n) {
25134
25245
  z: c / l
25135
25246
  };
25136
25247
  }
25137
- var Tt = 2, Et = {
25248
+ var Pt = 2, Ft = {
25138
25249
  matte: {
25139
25250
  ambient: .62,
25140
25251
  diffuse: .45,
@@ -25147,8 +25258,8 @@ var Tt = 2, Et = {
25147
25258
  specular: .35,
25148
25259
  shininess: 22
25149
25260
  }
25150
- }, Dt = .8;
25151
- function Ot(e) {
25261
+ }, It = .8;
25262
+ function Lt(e) {
25152
25263
  switch (e) {
25153
25264
  case "plastic":
25154
25265
  case "metal":
@@ -25159,8 +25270,8 @@ function Ot(e) {
25159
25270
  default: return "matte";
25160
25271
  }
25161
25272
  }
25162
- function kt(e, t, n = !0) {
25163
- let r = Et[e], i = {
25273
+ function Rt(e, t, n = !0) {
25274
+ let r = Ft[e], i = {
25164
25275
  light: t,
25165
25276
  material: e,
25166
25277
  ambient: r.ambient,
@@ -25168,9 +25279,9 @@ function kt(e, t, n = !0) {
25168
25279
  specular: r.specular,
25169
25280
  shininess: r.shininess
25170
25281
  };
25171
- return n && (i.fillLight = Ct(t), i.fillDiffuse = i.diffuse * Dt), i;
25282
+ return n && (i.fillLight = Mt(t), i.fillDiffuse = i.diffuse * It), i;
25172
25283
  }
25173
- function At(e, t) {
25284
+ function zt(e, t) {
25174
25285
  let n = e.x * t.light.x + e.y * t.light.y + e.z * t.light.z, r = t.diffuse * Math.max(0, n), i = 0;
25175
25286
  if (t.fillLight && t.fillDiffuse) {
25176
25287
  let n = e.x * t.fillLight.x + e.y * t.fillLight.y + e.z * t.fillLight.z;
@@ -25183,14 +25294,14 @@ function At(e, t) {
25183
25294
  }
25184
25295
  return Math.max(0, t.ambient + r + i + a);
25185
25296
  }
25186
- function jt(e, t) {
25297
+ function Bt(e, t) {
25187
25298
  let n = e.canvas.width, r = e.canvas.height;
25188
25299
  if (n <= 0 || r <= 0) return;
25189
25300
  let i = t.widthPx;
25190
25301
  if (i < .75) return;
25191
25302
  let a = e.getImageData(0, 0, n, r), o = a.data, s = new Uint8ClampedArray(n * r);
25192
25303
  for (let e = 0; e < n * r; e++) s[e] = o[e * 4 + 3];
25193
- let { bandMask: c, bandWeight: l, normals: u } = _t(s, n, r, i, t.prst, t.heightPx), d = kt(t.material, t.light), f = At({
25304
+ let { bandMask: c, bandWeight: l, normals: u } = Et(s, n, r, i, t.prst, t.heightPx), d = Rt(t.material, t.light), f = zt({
25194
25305
  x: 0,
25195
25306
  y: 0,
25196
25307
  z: 1
@@ -25201,13 +25312,13 @@ function jt(e, t) {
25201
25312
  if (n <= 0) continue;
25202
25313
  let r = u[e * 3], i = u[e * 3 + 1], a = u[e * 3 + 2];
25203
25314
  t.bottom && (r = -r, i = -i);
25204
- let s = 1 + (At({
25315
+ let s = 1 + (zt({
25205
25316
  x: r,
25206
25317
  y: i,
25207
25318
  z: a
25208
25319
  }, d) / f - 1) * n, p = e * 4;
25209
25320
  if (s >= 1) {
25210
- let e = Math.min(1, (s - 1) * Tt);
25321
+ let e = Math.min(1, (s - 1) * Pt);
25211
25322
  for (let t = 0; t < 3; t++) {
25212
25323
  let n = Math.min(255, o[p + t] * s);
25213
25324
  o[p + t] = n + (255 - n) * e;
@@ -25216,7 +25327,7 @@ function jt(e, t) {
25216
25327
  }
25217
25328
  e.putImageData(a, 0, 0);
25218
25329
  }
25219
- function Mt(e, t) {
25330
+ function Vt(e, t) {
25220
25331
  let n = e.canvas.width, r = e.canvas.height;
25221
25332
  if (n <= 0 || r <= 0) return;
25222
25333
  let i = t.offsetX, a = t.offsetY, o = Math.hypot(i, a);
@@ -25243,7 +25354,7 @@ function Mt(e, t) {
25243
25354
  }
25244
25355
  //#endregion
25245
25356
  //#region packages/core/src/sparkline/renderer.ts
25246
- function Nt(e, t, n) {
25357
+ function Ht(e, t, n) {
25247
25358
  let { values: r } = n;
25248
25359
  if (r.length === 0 || t.w <= 0 || t.h <= 0) return;
25249
25360
  let i = n.colorSeries ?? "#5B9BD5", a = Math.min(2, t.w * .08), o = Math.max(2, t.h * .2), s = t.x + a, c = t.y + o, l = Math.max(1, t.w - a * 2), u = Math.max(1, t.h - o * 2), d = r.filter((e) => typeof e == "number");
@@ -25252,11 +25363,11 @@ function Nt(e, t, n) {
25252
25363
  m === h && (h = m + 1, --m);
25253
25364
  let g = h - m, _ = (e) => c + u - (e - m) / g * u;
25254
25365
  if (n.kind === "stem") {
25255
- It(e, n, s, c, l, u);
25366
+ Gt(e, n, s, c, l, u);
25256
25367
  return;
25257
25368
  }
25258
25369
  if (n.kind === "column") {
25259
- Ft(e, n, r, s, c, l, u, m, h);
25370
+ Wt(e, n, r, s, c, l, u, m, h);
25260
25371
  return;
25261
25372
  }
25262
25373
  if (n.displayXAxis && m < 0 && h > 0) {
@@ -25265,7 +25376,7 @@ function Nt(e, t, n) {
25265
25376
  e.moveTo(s, t), e.lineTo(s + l, t), e.stroke(), e.restore();
25266
25377
  }
25267
25378
  let v = r.length, y = (e) => v === 1 ? s + l / 2 : s + e / (v - 1) * l;
25268
- e.save(), e.strokeStyle = i, e.lineCap = "round", e.lineJoin = "round", e.lineWidth = (n.lineWeight ?? .75) * O, e.beginPath();
25379
+ e.save(), e.strokeStyle = i, e.lineCap = "round", e.lineJoin = "round", e.lineWidth = (n.lineWeight ?? .75) * L, e.beginPath();
25269
25380
  let b = !1, x = n.displayEmptyCellsAs ?? "gap";
25270
25381
  for (let t = 0; t < v; t++) {
25271
25382
  let n = r[t];
@@ -25280,7 +25391,7 @@ function Nt(e, t, n) {
25280
25391
  b ? e.lineTo(i, a) : (e.moveTo(i, a), b = !0);
25281
25392
  }
25282
25393
  e.stroke(), e.restore();
25283
- let S = Math.max(1, Math.min(2.5, u * .12)), C = Pt(r, n);
25394
+ let S = Math.max(1, Math.min(2.5, u * .12)), C = Ut(r, n);
25284
25395
  for (let t = 0; t < v; t++) {
25285
25396
  let a = r[t];
25286
25397
  if (a == null) continue;
@@ -25288,7 +25399,7 @@ function Nt(e, t, n) {
25288
25399
  (n.markers || o != null) && (e.save(), e.fillStyle = o ?? n.colorMarkers ?? i, e.beginPath(), e.arc(y(t), _(a), S, 0, Math.PI * 2), e.fill(), e.restore());
25289
25400
  }
25290
25401
  }
25291
- function Pt(e, t) {
25402
+ function Ut(e, t) {
25292
25403
  let n = e.map(() => null), r = e.map((e) => typeof e == "number" ? e : null), i = r.findIndex((e) => e != null), a = -1;
25293
25404
  for (let e = r.length - 1; e >= 0; e--) if (r[e] != null) {
25294
25405
  a = e;
@@ -25303,10 +25414,10 @@ function Pt(e, t) {
25303
25414
  if (t.low && t.colorLow && !Number.isNaN(c)) for (let e = 0; e < r.length; e++) r[e] === c && (n[e] = t.colorLow);
25304
25415
  return n;
25305
25416
  }
25306
- function Ft(e, t, n, r, i, a, o, s, c) {
25417
+ function Wt(e, t, n, r, i, a, o, s, c) {
25307
25418
  let l = n.length;
25308
25419
  if (l === 0) return;
25309
- let u = s < 0 && c > 0 ? 0 : s, d = c - s, f = (e) => i + o - (e - s) / d * o, p = f(u), m = a / l, h = Math.min(1.5, m * .15), g = Pt(n, t);
25420
+ let u = s < 0 && c > 0 ? 0 : s, d = c - s, f = (e) => i + o - (e - s) / d * o, p = f(u), m = a / l, h = Math.min(1.5, m * .15), g = Ut(n, t);
25310
25421
  for (let i = 0; i < l; i++) {
25311
25422
  let a = n[i];
25312
25423
  if (a == null) continue;
@@ -25314,10 +25425,10 @@ function Ft(e, t, n, r, i, a, o, s, c) {
25314
25425
  e.save(), e.fillStyle = o, e.fillRect(c, Math.min(p, s), l, Math.abs(p - s)), e.restore();
25315
25426
  }
25316
25427
  }
25317
- function It(e, t, n, r, i, a) {
25428
+ function Gt(e, t, n, r, i, a) {
25318
25429
  let o = t.values.length;
25319
25430
  if (o === 0) return;
25320
- let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = Pt(t.values, t);
25431
+ let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = Ut(t.values, t);
25321
25432
  for (let r = 0; r < o; r++) {
25322
25433
  let i = t.values[r];
25323
25434
  if (i == null || i === 0) continue;
@@ -25327,13 +25438,13 @@ function It(e, t, n, r, i, a) {
25327
25438
  }
25328
25439
  //#endregion
25329
25440
  //#region packages/core/src/math/mathml.ts
25330
- var Lt = {
25441
+ var Kt = {
25331
25442
  "&": "&amp;",
25332
25443
  "<": "&lt;",
25333
25444
  ">": "&gt;",
25334
25445
  "\"": "&quot;"
25335
- }, Q = (e) => e.replace(/[&<>"]/g, (e) => Lt[e]);
25336
- function Rt(e) {
25446
+ }, Q = (e) => e.replace(/[&<>"]/g, (e) => Kt[e]);
25447
+ function qt(e) {
25337
25448
  switch (e) {
25338
25449
  case "roman": return "normal";
25339
25450
  case "bold": return "bold";
@@ -25341,9 +25452,9 @@ function Rt(e) {
25341
25452
  case "italic": return null;
25342
25453
  }
25343
25454
  }
25344
- var zt = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Bt = "+−±∓×÷·∗⋅∘∙*/", Vt = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Ht = "([{⟨⌈⌊", Ut = ")]}⟩⌉⌋", Wt = ",;";
25345
- function Gt(e, t) {
25346
- let n = Rt(t), r = n ? ` mathvariant="${n}"` : "", i = "", a = "", o = () => {
25455
+ var Jt = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Yt = "+−±∓×÷·∗⋅∘∙*/", Xt = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Zt = "([{⟨⌈⌊", Qt = ")]}⟩⌉⌋", $t = ",;";
25456
+ function en(e, t) {
25457
+ let n = qt(t), r = n ? ` mathvariant="${n}"` : "", i = "", a = "", o = () => {
25347
25458
  a &&= (i += `<mn${r}>${Q(a)}</mn>`, "");
25348
25459
  };
25349
25460
  for (let t of e) {
@@ -25355,42 +25466,42 @@ function Gt(e, t) {
25355
25466
  a += t;
25356
25467
  continue;
25357
25468
  }
25358
- o(), Bt.includes(t) || Vt.includes(t) || Wt.includes(t) ? i += `<mo>${Q(t)}</mo>` : Ht.includes(t) || Ut.includes(t) ? i += `<mo fence="true" stretchy="false">${Q(t)}</mo>` : i += `<mi${r}>${Q(t)}</mi>`;
25469
+ o(), Yt.includes(t) || Xt.includes(t) || $t.includes(t) ? i += `<mo>${Q(t)}</mo>` : Zt.includes(t) || Qt.includes(t) ? i += `<mo fence="true" stretchy="false">${Q(t)}</mo>` : i += `<mi${r}>${Q(t)}</mi>`;
25359
25470
  }
25360
25471
  return o(), i;
25361
25472
  }
25362
- function Kt(e) {
25363
- return e.map(qt).join("");
25473
+ function tn(e) {
25474
+ return e.map(nn).join("");
25364
25475
  }
25365
25476
  function $(e) {
25366
- return `<mrow>${Kt(e)}</mrow>`;
25477
+ return `<mrow>${tn(e)}</mrow>`;
25367
25478
  }
25368
- function qt(e) {
25479
+ function nn(e) {
25369
25480
  switch (e.kind) {
25370
- case "run": return Gt(e.text, e.style);
25481
+ case "run": return en(e.text, e.style);
25371
25482
  case "group": return $(e.items);
25372
25483
  case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${$(e.num)}${$(e.den)}</mfrac>`;
25373
25484
  case "sup": return `<msup>${$(e.base)}${$(e.sup ?? [])}</msup>`;
25374
25485
  case "sub": return `<msub>${$(e.base)}${$(e.sub ?? [])}</msub>`;
25375
25486
  case "subSup": return `<msubsup>${$(e.base)}${$(e.sub ?? [])}${$(e.sup ?? [])}</msubsup>`;
25376
- case "nary": return en(e);
25377
- case "delimiter": return tn(e);
25378
- case "radical": return e.index && e.index.length ? `<mroot>${$(e.radicand)}${$(e.index)}</mroot>` : `<msqrt>${Kt(e.radicand)}</msqrt>`;
25379
- case "limit": return Zt(e);
25380
- case "array": return Qt(e);
25487
+ case "nary": return un(e);
25488
+ case "delimiter": return dn(e);
25489
+ case "radical": return e.index && e.index.length ? `<mroot>${$(e.radicand)}${$(e.index)}</mroot>` : `<msqrt>${tn(e.radicand)}</msqrt>`;
25490
+ case "limit": return sn(e);
25491
+ case "array": return cn(e);
25381
25492
  case "groupChr": {
25382
- let t = $(e.base), n = zt.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${Q(e.char)}</mo>`;
25493
+ let t = $(e.base), n = Jt.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${Q(e.char)}</mo>`;
25383
25494
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
25384
25495
  }
25385
25496
  case "bar": {
25386
25497
  let t = $(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
25387
25498
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
25388
25499
  }
25389
- case "accent": return Xt(e);
25500
+ case "accent": return on(e);
25390
25501
  case "func": return `<mrow>${$(e.name)}<mo>&#x2061;</mo>${$(e.arg)}</mrow>`;
25391
25502
  }
25392
25503
  }
25393
- var Jt = {
25504
+ var rn = {
25394
25505
  "̀": "`",
25395
25506
  "́": "´",
25396
25507
  "̂": "^",
@@ -25401,7 +25512,7 @@ var Jt = {
25401
25512
  "̌": "ˇ",
25402
25513
  "⃗": "→",
25403
25514
  "⃖": "←"
25404
- }, Yt = new Set([
25515
+ }, an = new Set([
25405
25516
  "̅",
25406
25517
  "̄",
25407
25518
  "¯",
@@ -25409,37 +25520,45 @@ var Jt = {
25409
25520
  "̲",
25410
25521
  "̳"
25411
25522
  ]);
25412
- function Xt(e) {
25523
+ function on(e) {
25413
25524
  let t = $(e.base);
25414
- if (Yt.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25415
- let n = Jt[e.char] ?? e.char;
25525
+ if (an.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25526
+ let n = rn[e.char] ?? e.char;
25416
25527
  return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${Q(n)}</mo></mover>`;
25417
25528
  }
25418
- function Zt(e) {
25529
+ function sn(e) {
25419
25530
  let t = $(e.base), n = e.lower && e.lower.length ? $(e.lower) : null, r = e.upper && e.upper.length ? $(e.upper) : null;
25420
25531
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
25421
25532
  }
25422
- function Qt(e) {
25533
+ function cn(e) {
25423
25534
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
25424
25535
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
25425
- let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${Kt(e)}</mtd>`).join("")}</mtr>`).join("");
25536
+ let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${tn(e)}</mtd>`).join("")}</mtr>`).join("");
25426
25537
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
25427
25538
  }
25428
- var $t = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
25429
- function en(e) {
25430
- let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : $t.has(e.op), n = `<mo largeop="true">${Q(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
25431
- return a = t ? r.length && i.length ? `<msubsup>${n}${$(r)}${$(i)}</msubsup>` : r.length ? `<msub>${n}${$(r)}</msub>` : i.length ? `<msup>${n}${$(i)}</msup>` : n : r.length && i.length ? `<munderover>${n}${$(r)}${$(i)}</munderover>` : r.length ? `<munder>${n}${$(r)}</munder>` : i.length ? `<mover>${n}${$(i)}</mover>` : n, `<mrow>${a}${Kt(e.body)}</mrow>`;
25539
+ var ln = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
25540
+ function un(e) {
25541
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : ln.has(e.op), n = `<mo largeop="true">${Q(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
25542
+ return a = t ? r.length && i.length ? `<msubsup>${n}${$(r)}${$(i)}</msubsup>` : r.length ? `<msub>${n}${$(r)}</msub>` : i.length ? `<msup>${n}${$(i)}</msup>` : n : r.length && i.length ? `<munderover>${n}${$(r)}${$(i)}</munderover>` : r.length ? `<munder>${n}${$(r)}</munder>` : i.length ? `<mover>${n}${$(i)}</mover>` : n, `<mrow>${a}${tn(e.body)}</mrow>`;
25432
25543
  }
25433
- function tn(e) {
25544
+ function dn(e) {
25434
25545
  let t = (e) => `<mo fence="true" stretchy="true">${Q(e)}</mo>`, n = e.items.map((e) => $(e)).join("<mo separator=\"true\">,</mo>");
25435
25546
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
25436
25547
  }
25437
- function nn(e, t) {
25438
- return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${Kt(e)}</math>`;
25548
+ function fn(e, t) {
25549
+ return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${tn(e)}</math>`;
25550
+ }
25551
+ //#endregion
25552
+ //#region packages/core/src/canvas/env.ts
25553
+ function pn(e) {
25554
+ return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
25555
+ }
25556
+ function mn(e = 1) {
25557
+ return typeof window < "u" && window.devicePixelRatio || e;
25439
25558
  }
25440
25559
  //#endregion
25441
25560
  //#region packages/core/src/worker/bridge.ts
25442
- var rn = class {
25561
+ var hn = class {
25443
25562
  _worker;
25444
25563
  _opts;
25445
25564
  _pending = /* @__PURE__ */ new Map();
@@ -25479,7 +25598,7 @@ var rn = class {
25479
25598
  for (let e of this._pending.values()) e.reject(/* @__PURE__ */ Error("Worker terminated"));
25480
25599
  this._pending.clear();
25481
25600
  }
25482
- }, an = [
25601
+ }, gn = [
25483
25602
  "L",
25484
25603
  "R",
25485
25604
  "AL",
@@ -25503,7 +25622,7 @@ var rn = class {
25503
25622
  "RLI",
25504
25623
  "FSI",
25505
25624
  "PDI"
25506
- ], on = [
25625
+ ], _n = [
25507
25626
  0,
25508
25627
  9,
25509
25628
  10,
@@ -26771,7 +26890,7 @@ var rn = class {
26771
26890
  1048574,
26772
26891
  1048576,
26773
26892
  1114110
26774
- ], sn = [
26893
+ ], vn = [
26775
26894
  9,
26776
26895
  11,
26777
26896
  10,
@@ -28039,7 +28158,7 @@ var rn = class {
28039
28158
  9,
28040
28159
  0,
28041
28160
  9
28042
- ], cn = [
28161
+ ], yn = [
28043
28162
  40,
28044
28163
  41,
28045
28164
  41,
@@ -28896,7 +29015,7 @@ var rn = class {
28896
29015
  65379,
28897
29016
  65379,
28898
29017
  65378
28899
- ], ln = [
29018
+ ], bn = [
28900
29019
  40,
28901
29020
  41,
28902
29021
  0,
@@ -29284,42 +29403,42 @@ var rn = class {
29284
29403
  ];
29285
29404
  //#endregion
29286
29405
  //#region packages/core/src/text/bidi/char-data.ts
29287
- function un(e) {
29288
- let t = 0, n = on.length - 1;
29406
+ function xn(e) {
29407
+ let t = 0, n = _n.length - 1;
29289
29408
  for (; t < n;) {
29290
29409
  let r = t + n + 1 >> 1;
29291
- on[r] <= e ? t = r : n = r - 1;
29410
+ _n[r] <= e ? t = r : n = r - 1;
29292
29411
  }
29293
- return sn[t];
29412
+ return vn[t];
29294
29413
  }
29295
- function dn(e) {
29296
- return an[un(e)];
29414
+ function Sn(e) {
29415
+ return gn[xn(e)];
29297
29416
  }
29298
- var fn = (() => {
29417
+ var Cn = (() => {
29299
29418
  let e = /* @__PURE__ */ new Map();
29300
- for (let t = 0; t < cn.length; t += 2) e.set(cn[t], cn[t + 1]);
29419
+ for (let t = 0; t < yn.length; t += 2) e.set(yn[t], yn[t + 1]);
29301
29420
  return e;
29302
29421
  })();
29303
- function pn(e) {
29304
- return fn.get(e) ?? null;
29422
+ function wn(e) {
29423
+ return Cn.get(e) ?? null;
29305
29424
  }
29306
- var mn = (() => {
29425
+ var Tn = (() => {
29307
29426
  let e = /* @__PURE__ */ new Map();
29308
- for (let t = 0; t < ln.length; t += 3) e.set(ln[t], {
29309
- pair: ln[t + 1],
29310
- type: ln[t + 2] === 0 ? "o" : "c"
29427
+ for (let t = 0; t < bn.length; t += 3) e.set(bn[t], {
29428
+ pair: bn[t + 1],
29429
+ type: bn[t + 2] === 0 ? "o" : "c"
29311
29430
  });
29312
29431
  return e;
29313
29432
  })();
29314
- function hn(e) {
29315
- return mn.get(e) ?? null;
29433
+ function En(e) {
29434
+ return Tn.get(e) ?? null;
29316
29435
  }
29317
- var gn = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", _n = (e) => e === "LRI" || e === "RLI" || e === "FSI", vn = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", yn = (e) => e & 1 ? e + 2 : e + 1, bn = (e) => e & 1 ? e + 1 : e + 2;
29318
- function xn(e, t, n) {
29436
+ var Dn = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", On = (e) => e === "LRI" || e === "RLI" || e === "FSI", kn = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", An = (e) => e & 1 ? e + 2 : e + 1, jn = (e) => e & 1 ? e + 1 : e + 2;
29437
+ function Mn(e, t, n) {
29319
29438
  let r = 0;
29320
29439
  for (let i = t; i < n; i++) {
29321
29440
  let t = e[i];
29322
- if (_n(t)) r++;
29441
+ if (On(t)) r++;
29323
29442
  else if (t === "PDI") r > 0 && r--;
29324
29443
  else if (r === 0) {
29325
29444
  if (t === "L") return 0;
@@ -29328,11 +29447,11 @@ function xn(e, t, n) {
29328
29447
  }
29329
29448
  return 0;
29330
29449
  }
29331
- function Sn(e) {
29450
+ function Nn(e) {
29332
29451
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
29333
29452
  for (let a = 0; a < t; a++) {
29334
29453
  let t = e[a];
29335
- if (_n(t)) i.push(a);
29454
+ if (On(t)) i.push(a);
29336
29455
  else if (t === "PDI" && i.length) {
29337
29456
  let e = i.pop();
29338
29457
  n[e] = a, r[a] = e;
@@ -29343,7 +29462,7 @@ function Sn(e) {
29343
29462
  initOf: r
29344
29463
  };
29345
29464
  }
29346
- function Cn(e, t, n) {
29465
+ function Pn(e, t, n) {
29347
29466
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
29348
29467
  level: t,
29349
29468
  override: "neutral",
@@ -29357,7 +29476,7 @@ function Cn(e, t, n) {
29357
29476
  case "RLO":
29358
29477
  case "LRO": {
29359
29478
  i[d] = u().level;
29360
- let e = r === "RLE" || r === "RLO" ? yn(u().level) : bn(u().level);
29479
+ let e = r === "RLE" || r === "RLO" ? An(u().level) : jn(u().level);
29361
29480
  e <= 125 && s === 0 && c === 0 ? o.push({
29362
29481
  level: e,
29363
29482
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -29372,8 +29491,8 @@ function Cn(e, t, n) {
29372
29491
  let t = u().override;
29373
29492
  t !== "neutral" && (a[d] = t);
29374
29493
  let f;
29375
- f = r === "RLI" ? "R" : r === "LRI" ? "L" : xn(e, d + 1, n[d]) === 1 ? "R" : "L";
29376
- let p = f === "R" ? yn(u().level) : bn(u().level);
29494
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : Mn(e, d + 1, n[d]) === 1 ? "R" : "L";
29495
+ let p = f === "R" ? An(u().level) : jn(u().level);
29377
29496
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
29378
29497
  level: p,
29379
29498
  override: "neutral",
@@ -29415,10 +29534,10 @@ function Cn(e, t, n) {
29415
29534
  types: a
29416
29535
  };
29417
29536
  }
29418
- function wn(e) {
29537
+ function Fn(e) {
29419
29538
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
29420
29539
  }
29421
- function Tn(e, t, n, r, i, a) {
29540
+ function In(e, t, n, r, i, a) {
29422
29541
  let o = e.length, s = [];
29423
29542
  for (let e = 0; e < o; e++) n[e] || s.push(e);
29424
29543
  let c = [];
@@ -29436,7 +29555,7 @@ function Tn(e, t, n, r, i, a) {
29436
29555
  for (;;) {
29437
29556
  for (let e of p) f.push(e);
29438
29557
  let t = p[p.length - 1];
29439
- if (_n(e[t]) && i[t] !== o) {
29558
+ if (On(e[t]) && i[t] !== o) {
29440
29559
  let e = l.get(i[t]);
29441
29560
  if (e) {
29442
29561
  p = e;
@@ -29451,7 +29570,7 @@ function Tn(e, t, n, r, i, a) {
29451
29570
  break;
29452
29571
  }
29453
29572
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
29454
- if (!(_n(e[_]) && i[_] === o)) {
29573
+ if (!(On(e[_]) && i[_] === o)) {
29455
29574
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
29456
29575
  v = t[e];
29457
29576
  break;
@@ -29467,8 +29586,8 @@ function Tn(e, t, n, r, i, a) {
29467
29586
  }
29468
29587
  return d;
29469
29588
  }
29470
- var En = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29471
- function Dn(e, t, n, r, i) {
29589
+ var Ln = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29590
+ function Rn(e, t, n, r, i) {
29472
29591
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
29473
29592
  for (let e = 0; e < o; e++) {
29474
29593
  let t = a[e];
@@ -29515,15 +29634,15 @@ function Dn(e, t, n, r, i) {
29515
29634
  outer: for (let n = 0; n < o; n++) {
29516
29635
  let i = a[n];
29517
29636
  if (r[i] !== "ON") continue;
29518
- let o = hn(t[i]);
29637
+ let o = En(t[i]);
29519
29638
  if (o) if (o.type === "o") {
29520
29639
  if (e.length === 63) break outer;
29521
29640
  e.push({
29522
- expect: wn(o.pair),
29641
+ expect: Fn(o.pair),
29523
29642
  pos: n
29524
29643
  });
29525
29644
  } else {
29526
- let r = wn(t[i]);
29645
+ let r = Fn(t[i]);
29527
29646
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
29528
29647
  f.push({
29529
29648
  open: e[t].pos,
@@ -29541,7 +29660,7 @@ function Dn(e, t, n, r, i) {
29541
29660
  for (let { open: e, close: t } of f) {
29542
29661
  let n = !1, i = !1;
29543
29662
  for (let o = e + 1; o < t; o++) {
29544
- let e = En(r[a[o]]);
29663
+ let e = Ln(r[a[o]]);
29545
29664
  e === u ? n = !0 : e === d && (i = !0);
29546
29665
  }
29547
29666
  let o = null;
@@ -29549,7 +29668,7 @@ function Dn(e, t, n, r, i) {
29549
29668
  else if (i) {
29550
29669
  let t = s;
29551
29670
  for (let n = e - 1; n >= 0; n--) {
29552
- let e = En(r[a[n]]);
29671
+ let e = Ln(r[a[n]]);
29553
29672
  if (e) {
29554
29673
  t = e;
29555
29674
  break;
@@ -29560,29 +29679,29 @@ function Dn(e, t, n, r, i) {
29560
29679
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
29561
29680
  }
29562
29681
  for (let e = 0; e < o; e++) {
29563
- if (!vn(r[a[e]])) continue;
29682
+ if (!kn(r[a[e]])) continue;
29564
29683
  let t = e;
29565
- for (; t < o && vn(r[a[t]]);) t++;
29566
- let n = e > 0 ? En(r[a[e - 1]]) : s, i = t < o ? En(r[a[t]]) : c;
29684
+ for (; t < o && kn(r[a[t]]);) t++;
29685
+ let n = e > 0 ? Ln(r[a[e - 1]]) : s, i = t < o ? Ln(r[a[t]]) : c;
29567
29686
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
29568
29687
  e = t - 1;
29569
29688
  }
29570
- for (let e = 0; e < o; e++) vn(r[a[e]]) && (r[a[e]] = u);
29689
+ for (let e = 0; e < o; e++) kn(r[a[e]]) && (r[a[e]] = u);
29571
29690
  for (let e = 0; e < o; e++) {
29572
29691
  let t = a[e], n = r[t];
29573
29692
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
29574
29693
  }
29575
29694
  }
29576
- function On(e, t, n) {
29695
+ function zn(e, t, n) {
29577
29696
  let r = e.length, i = Array(r);
29578
- for (let t = 0; t < r; t++) i[t] = n?.[t] ?? dn(e[t]);
29579
- let a = t === "rtl" ? 1 : t === "ltr" ? 0 : xn(i, 0, r), { pdiOf: o, initOf: s } = Sn(i), { levels: c, types: l } = Cn(i, a, o), u = Array(r);
29580
- for (let e = 0; e < r; e++) u[e] = gn(i[e]);
29581
- let d = Tn(i, c, u, a, o, s), f = l.slice();
29582
- for (let t of d) Dn(t, e, i, f, c);
29697
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Sn(e[t]);
29698
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Mn(i, 0, r), { pdiOf: o, initOf: s } = Nn(i), { levels: c, types: l } = Pn(i, a, o), u = Array(r);
29699
+ for (let e = 0; e < r; e++) u[e] = Dn(i[e]);
29700
+ let d = In(i, c, u, a, o, s), f = l.slice();
29701
+ for (let t of d) Rn(t, e, i, f, c);
29583
29702
  let p = (e) => {
29584
29703
  let t = i[e];
29585
- return t === "WS" || _n(t) || t === "PDI" || u[e];
29704
+ return t === "WS" || On(t) || t === "PDI" || u[e];
29586
29705
  };
29587
29706
  for (let e = 0; e < r; e++) {
29588
29707
  let t = i[e];
@@ -29598,7 +29717,7 @@ function On(e, t, n) {
29598
29717
  paragraphLevel: a
29599
29718
  };
29600
29719
  }
29601
- function kn(e, t, n) {
29720
+ function Bn(e, t, n) {
29602
29721
  let r = [];
29603
29722
  for (let i = t; i < n; i++) {
29604
29723
  let t = e[i];
@@ -29626,7 +29745,7 @@ function kn(e, t, n) {
29626
29745
  }
29627
29746
  //#endregion
29628
29747
  //#region packages/core/src/text/bidi/uax9/index.ts
29629
- function An(e) {
29748
+ function Vn(e) {
29630
29749
  let t = [], n = [], r = [];
29631
29750
  for (let i = 0; i < e.length;) {
29632
29751
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -29638,9 +29757,9 @@ function An(e) {
29638
29757
  starts: r
29639
29758
  };
29640
29759
  }
29641
- var jn = class {
29760
+ var Hn = class {
29642
29761
  computeLevels(e, t, n) {
29643
- let { cps: r, units: i, starts: a } = An(e), { levels: o, paragraphLevel: s } = On(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29762
+ let { cps: r, units: i, starts: a } = Vn(e), { levels: o, paragraphLevel: s } = zn(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29644
29763
  for (let e = 0; e < o.length; e++) {
29645
29764
  let t = o[e] === -1 ? 255 : o[e];
29646
29765
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -29651,25 +29770,25 @@ var jn = class {
29651
29770
  };
29652
29771
  }
29653
29772
  reorderVisual(e, t, n) {
29654
- return kn(e, t, n);
29773
+ return Bn(e, t, n);
29655
29774
  }
29656
29775
  getMirror(e) {
29657
- return pn(e);
29776
+ return wn(e);
29658
29777
  }
29659
29778
  };
29660
- function Mn() {
29661
- return new jn();
29779
+ function Un() {
29780
+ return new Hn();
29662
29781
  }
29663
29782
  //#endregion
29664
29783
  //#region packages/core/src/text/bidi/engine.ts
29665
- var Nn = null;
29666
- function Pn() {
29667
- return Nn === null && (Nn = Mn()), Nn;
29784
+ var Wn = null;
29785
+ function Gn() {
29786
+ return Wn === null && (Wn = Un()), Wn;
29668
29787
  }
29669
29788
  //#endregion
29670
29789
  //#region packages/core/src/text/bidi/segments.ts
29671
- function Fn(e, t) {
29672
- return e === !0 ? "rtl" : e === !1 ? "ltr" : Pn().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
29790
+ function Kn(e, t) {
29791
+ return e === !0 ? "rtl" : e === !1 ? "ltr" : Gn().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
29673
29792
  }
29674
29793
  //#endregion
29675
- export { T as A, ge as C, E as D, pe as E, x as M, a as N, D as O, t as P, De as S, q as T, Pe as _, Nt as a, Oe as b, St as c, rt as d, Je as f, Fe as g, Ne as h, nn as i, b as j, O as k, Ot as l, qe as m, Pn as n, jt as o, Ke as p, rn as r, Mt as s, Fn as t, tt as u, je as v, me as w, Se as x, Ce as y };
29794
+ export { I as A, c as B, je as C, Se as D, Ce as E, u as F, t as H, d as I, p as L, P as M, k as N, xe as O, A as P, m as R, Le as S, Te as T, s as V, He as _, pn as a, Be as b, Bt as c, Lt as d, ut as f, nt as g, tt as h, mn as i, L as j, F as k, Vt as l, rt as m, Gn as n, fn as o, ft as p, hn as r, Ht as s, Kn as t, jt as u, We as v, Ie as w, Me as x, Ue as y, l as z };