@silurus/ooxml 0.60.2 → 0.62.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.
@@ -180,18 +180,26 @@ function _(e, t) {
180
180
  let n = Math.floor(e / t) * t;
181
181
  return Math.abs(n - e) < t * 1e-9 ? n - t : n;
182
182
  }
183
+ function v(e, t, n, r) {
184
+ let i = h(t - e), a = n ?? _(e, i);
185
+ return {
186
+ min: a,
187
+ max: r ?? g(t, i, a),
188
+ step: i
189
+ };
190
+ }
183
191
  //#endregion
184
192
  //#region packages/core/src/chart/chart-number-format.ts
185
- function v(e) {
193
+ function y(e) {
186
194
  return Number.isInteger(e) ? String(e) : e.toFixed(6).replace(/\.?0+$/, "");
187
195
  }
188
- function y(e, t) {
189
- if (!t || t.trim().toLowerCase() === "general") return v(e);
190
- if (b(t)) return x(e, t);
191
- let n = S(t), r;
192
- 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);
196
+ function b(e, t) {
197
+ if (!t || t.trim().toLowerCase() === "general") return y(e);
198
+ if (x(t)) return S(e, t);
199
+ let n = C(t), r;
200
+ 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 ? "-" : "") + w(Math.abs(e), r);
193
201
  }
194
- function b(e) {
202
+ function x(e) {
195
203
  let t = !1;
196
204
  for (let n = 0; n < e.length; n++) {
197
205
  let r = e[n];
@@ -213,7 +221,7 @@ function b(e) {
213
221
  }
214
222
  return !1;
215
223
  }
216
- function x(e, t) {
224
+ function S(e, t) {
217
225
  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;
218
226
  for (; h < t.length;) {
219
227
  let e = t[h];
@@ -268,7 +276,7 @@ function x(e, t) {
268
276
  }
269
277
  return p;
270
278
  }
271
- function S(e) {
279
+ function C(e) {
272
280
  let t = [], n = "";
273
281
  for (let r = 0; r < e.length; r++) {
274
282
  let i = e[r];
@@ -294,7 +302,7 @@ function S(e) {
294
302
  }
295
303
  return t.push(n), t;
296
304
  }
297
- function C(e, t) {
305
+ function w(e, t) {
298
306
  let n = [], r = 0, i = !1, a = !1;
299
307
  for (; r < t.length;) {
300
308
  let e = t[r];
@@ -355,16 +363,16 @@ function C(e, t) {
355
363
  if (!i) return n.map((e) => e.text).join("");
356
364
  let o = a ? e * 100 : e, s = "";
357
365
  for (let e of n) e.kind === "num" && (s += e.text);
358
- let c = w(o, s), l = !1;
366
+ let c = T(o, s), l = !1;
359
367
  return n.map((e) => e.kind === "lit" ? e.text : l ? "" : (l = !0, c)).join("");
360
368
  }
361
- function w(e, t) {
369
+ function T(e, t) {
362
370
  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;
363
371
  return o === 0 ? d : `${d}.${l.padEnd(o, "0")}`;
364
372
  }
365
373
  //#endregion
366
374
  //#region packages/core/src/shape/pattern-bitmaps.ts
367
- var T = {
375
+ var E = {
368
376
  pct5: [
369
377
  0,
370
378
  16,
@@ -746,21 +754,21 @@ var T = {
746
754
  90
747
755
  ]
748
756
  };
749
- function E(e, t, n) {
750
- let r = T[e];
757
+ function D(e, t, n) {
758
+ let r = E[e];
751
759
  if (!r) return null;
752
- let i = D(8, 8);
760
+ let i = O(8, 8);
753
761
  if (!i) return null;
754
762
  let a = i.getContext("2d");
755
763
  if (!a) return null;
756
- a.fillStyle = O(n), a.fillRect(0, 0, 8, 8), a.fillStyle = O(t);
764
+ a.fillStyle = k(n), a.fillRect(0, 0, 8, 8), a.fillStyle = k(t);
757
765
  for (let e = 0; e < 8; e++) {
758
766
  let t = r[e];
759
767
  for (let n = 0; n < 8; n++) t & 1 << 7 - n && a.fillRect(n, e, 1, 1);
760
768
  }
761
769
  return i;
762
770
  }
763
- function D(e, t) {
771
+ function O(e, t) {
764
772
  if (typeof OffscreenCanvas < "u") return new OffscreenCanvas(e, t);
765
773
  if (typeof document < "u") {
766
774
  let n = document.createElement("canvas");
@@ -768,23 +776,23 @@ function D(e, t) {
768
776
  }
769
777
  return null;
770
778
  }
771
- function O(e) {
779
+ function k(e) {
772
780
  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})`;
773
781
  }
774
782
  //#endregion
775
783
  //#region packages/core/src/shape/paint.ts
776
- function k(e, t = 1) {
784
+ function A(e, t = 1) {
777
785
  let n = e.charCodeAt(0) === 35 ? e.slice(1) : e;
778
786
  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})`;
779
787
  }
780
- function A(e, t, n, r, i, a) {
788
+ function j(e, t, n, r, i, a) {
781
789
  if (!e || e.fillType === "none") return null;
782
- if (e.fillType === "solid") return k(e.color);
783
- if (e.fillType === "pattern") return M(e, t);
790
+ if (e.fillType === "solid") return A(e.color);
791
+ if (e.fillType === "pattern") return N(e, t);
784
792
  if (e.fillType === "gradient") {
785
793
  let o = e.stops;
786
794
  if (o.length === 0) return null;
787
- if (o.length === 1) return k(o[0].color);
795
+ if (o.length === 1) return A(o[0].color);
788
796
  let s;
789
797
  if (e.gradType === "radial") {
790
798
  let e = n + i / 2, o = r + a / 2, c = Math.sqrt(i * i + a * a) / 2;
@@ -793,23 +801,23 @@ function A(e, t, n, r, i, a) {
793
801
  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;
794
802
  s = t.createLinearGradient(c - Math.cos(o) * u, l - Math.sin(o) * u, c + Math.cos(o) * u, l + Math.sin(o) * u);
795
803
  }
796
- for (let e of o) s.addColorStop(Math.min(1, Math.max(0, e.position)), k(e.color));
804
+ for (let e of o) s.addColorStop(Math.min(1, Math.max(0, e.position)), A(e.color));
797
805
  return s;
798
806
  }
799
807
  return null;
800
808
  }
801
- var j = /* @__PURE__ */ new WeakMap();
802
- function M(e, t) {
803
- let n = `${e.preset}|${e.fg}|${e.bg}`, r = j.get(t);
804
- r || (r = /* @__PURE__ */ new Map(), j.set(t, r));
809
+ var M = /* @__PURE__ */ new WeakMap();
810
+ function N(e, t) {
811
+ let n = `${e.preset}|${e.fg}|${e.bg}`, r = M.get(t);
812
+ r || (r = /* @__PURE__ */ new Map(), M.set(t, r));
805
813
  let i = r.get(n);
806
814
  if (i) return i;
807
- let a = E(e.preset, e.fg, e.bg);
808
- if (!a) return k(e.fg);
815
+ let a = D(e.preset, e.fg, e.bg);
816
+ if (!a) return A(e.fg);
809
817
  let o = t.createPattern(a, "repeat");
810
- return o ? (r.set(n, o), o) : k(e.fg);
818
+ return o ? (r.set(n, o), o) : A(e.fg);
811
819
  }
812
- var N = {
820
+ var P = {
813
821
  dash: [6, 3],
814
822
  dot: [1.5, 3],
815
823
  dashDot: [
@@ -842,20 +850,20 @@ var N = {
842
850
  2
843
851
  ]
844
852
  };
845
- function P(e, t, n) {
853
+ function F(e, t, n) {
846
854
  if (!t) {
847
855
  e.strokeStyle = "transparent", e.lineWidth = 0, e.setLineDash([]);
848
856
  return;
849
857
  }
850
- e.strokeStyle = k(t.color);
858
+ e.strokeStyle = A(t.color);
851
859
  let r = Math.max(.5, t.width * n);
852
860
  e.lineWidth = r;
853
- let i = t.dashStyle ? N[t.dashStyle] : null;
861
+ let i = t.dashStyle ? P[t.dashStyle] : null;
854
862
  e.setLineDash(i ? i.map((e) => e * r) : []);
855
863
  }
856
864
  //#endregion
857
865
  //#region packages/core/src/units.ts
858
- var F = 12700, I = 9525, L = 4 / 3, R = [
866
+ var I = 12700, L = 9525, R = 4 / 3, z = [
859
867
  "4472C4",
860
868
  "ED7D31",
861
869
  "A9D18E",
@@ -869,12 +877,12 @@ var F = 12700, I = 9525, L = 4 / 3, R = [
869
877
  "255E91",
870
878
  "967300"
871
879
  ];
872
- function z(e, t) {
873
- return t?.color ? `#${t.color}` : `#${R[e % R.length]}`;
880
+ function ee(e, t) {
881
+ return t?.color ? `#${t.color}` : `#${z[e % z.length]}`;
874
882
  }
875
883
  function B(e, t) {
876
884
  let n = t.dataPointColors?.[e];
877
- return n ? `#${n}` : `#${R[e % R.length]}`;
885
+ return n ? `#${n}` : `#${z[e % z.length]}`;
878
886
  }
879
887
  function V(e) {
880
888
  return e === "pie" || e === "doughnut";
@@ -882,17 +890,45 @@ function V(e) {
882
890
  function H(e, t, n) {
883
891
  if (V(e)) {
884
892
  let e = t[0];
885
- return e ? B(n, e) : `#${R[n % R.length]}`;
893
+ return e ? B(n, e) : `#${z[n % z.length]}`;
886
894
  }
887
- return z(n, t[n]);
895
+ return ee(n, t[n]);
896
+ }
897
+ function U(e, t, n) {
898
+ return e ? e / 100 * n : Math.max(8, Math.min(10, t * .045));
899
+ }
900
+ function W(e, t, n, r, i, a, o, s) {
901
+ e.save(), e.font = `${o ? "bold " : ""}${a}px sans-serif`, e.fillStyle = s, i === "cat" ? (e.textAlign = "center", e.textBaseline = "middle", e.fillText(t.slice(0, 60), n, r)) : (e.translate(n, r), e.rotate(-Math.PI / 2), e.textAlign = "center", e.textBaseline = "middle", e.fillText(t.slice(0, 60), 0, 0)), e.restore();
902
+ }
903
+ function te(e) {
904
+ return e ? `#${e}` : "#555";
905
+ }
906
+ function G(e) {
907
+ return Math.max(8, e * .02);
908
+ }
909
+ function ne(e, t, n, r) {
910
+ let i = U(e.catAxisTitleFontSizeHpt, n, r), a = U(e.valAxisTitleFontSizeHpt, n, r);
911
+ return {
912
+ catTitlePx: i,
913
+ valTitlePx: a,
914
+ catTitleH: e.catAxisTitle ? i + G(n) + 4 : 0,
915
+ valTitleW: e.valAxisTitle ? a + G(t) + 4 : 0
916
+ };
888
917
  }
889
- function U(e, t, n, r, i, a, o, s) {
890
- 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();
918
+ function re(e, t, n, r, i, a, o, s, c, l, u, d, f, p) {
919
+ if (t.valAxisTitle) {
920
+ let r = n + u + G(i) + p / 2, a = s + l / 2;
921
+ W(e, t.valAxisTitle, r, a, "val", p, t.valAxisTitleFontBold ?? !0, te(t.valAxisTitleFontColor));
922
+ }
923
+ if (t.catAxisTitle) {
924
+ let n = o + c / 2, i = r + a - d - G(a) - f / 2;
925
+ W(e, t.catAxisTitle, n, i, "cat", f, t.catAxisTitleFontBold ?? !0, te(t.catAxisTitleFontColor));
926
+ }
891
927
  }
892
- function ee(e) {
928
+ function ie(e) {
893
929
  return e && (e === "line" || e === "stackedLine" || e === "stackedLinePct" || e === "radar" || e === "scatter") ? "line" : "fill";
894
930
  }
895
- function te(e, t, n, r, i, a, o) {
931
+ function ae(e, t, n, r, i, a, o) {
896
932
  if (e.fillStyle = n, t === "line") {
897
933
  e.strokeStyle = n;
898
934
  let t = e.lineWidth;
@@ -901,7 +937,7 @@ function te(e, t, n, r, i, a, o) {
901
937
  e.moveTo(r, s), e.lineTo(r + a, s), e.stroke(), e.lineWidth = t;
902
938
  } else e.fillRect(r, i, a, o);
903
939
  }
904
- function ne(e, t) {
940
+ function K(e, t) {
905
941
  if (V(t)) {
906
942
  let n = e[0], r = n ? n.values.length : 0, i = n?.categories ?? [];
907
943
  return Array.from({ length: r }, (n, r) => ({
@@ -914,21 +950,21 @@ function ne(e, t) {
914
950
  color: H(t, e, r)
915
951
  }));
916
952
  }
917
- function W(e, t, n, r, i, a, o = "vertical", s) {
918
- let c = ee(s), l = ne(t, s);
953
+ function oe(e, t, n, r, i, a, o = "vertical", s) {
954
+ let c = ie(s), l = K(t, s);
919
955
  if (o === "horizontal") {
920
956
  let t = Math.max(9, Math.min(12, a * .7));
921
957
  e.font = `${t}px sans-serif`, e.textBaseline = "middle";
922
958
  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;
923
- 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;
959
+ for (let n = 0; n < l.length; n++) ae(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;
924
960
  return;
925
961
  }
926
962
  let u = Math.max(9, Math.min(12, a / (l.length + 1)));
927
963
  e.font = `${u}px sans-serif`, e.textBaseline = "middle";
928
964
  let d = u + 4, f = r + (a - d * l.length) / 2;
929
- 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;
965
+ for (let t = 0; t < l.length; t++) ae(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;
930
966
  }
931
- function re(e, t, n) {
967
+ function se(e, t, n) {
932
968
  if (!e.showLegend) return null;
933
969
  let r = e.legendPos ?? "r", i = r === "l" ? "l" : r === "t" ? "t" : r === "b" ? "b" : "r";
934
970
  return i === "r" || i === "l" ? {
@@ -941,30 +977,30 @@ function re(e, t, n) {
941
977
  reserveH: Math.max(18, n * .08)
942
978
  };
943
979
  }
944
- function ie(e, t, n, r, i, a, o, s, c, l, u, d) {
980
+ function ce(e, t, n, r, i, a, o, s, c, l, u, d) {
945
981
  if (!n) return;
946
982
  let f = t.legendManualLayout;
947
983
  if (f && f.xMode === "edge" && f.yMode === "edge" && f.w > 0 && f.h > 0) {
948
984
  let n = r + f.x * a, s = i + f.y * o, c = f.w * a, l = f.h * o, u = c >= l ? "horizontal" : "vertical";
949
- W(e, t.series, n, s, c, l, u, t.chartType);
985
+ oe(e, t.series, n, s, c, l, u, t.chartType);
950
986
  return;
951
987
  }
952
988
  switch (n.side) {
953
989
  case "r":
954
- W(e, t.series, r + a - n.reserveW + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
990
+ oe(e, t.series, r + a - n.reserveW + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
955
991
  break;
956
992
  case "l":
957
- W(e, t.series, r + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
993
+ oe(e, t.series, r + 4, c, n.reserveW - 8, u, "vertical", t.chartType);
958
994
  break;
959
995
  case "t":
960
- W(e, t.series, s, i + d, l, n.reserveH, "horizontal", t.chartType);
996
+ oe(e, t.series, s, i + d, l, n.reserveH, "horizontal", t.chartType);
961
997
  break;
962
998
  case "b":
963
- W(e, t.series, s, i + o - n.reserveH, l, n.reserveH, "horizontal", t.chartType);
999
+ oe(e, t.series, s, i + o - n.reserveH, l, n.reserveH, "horizontal", t.chartType);
964
1000
  break;
965
1001
  }
966
1002
  }
967
- function G(e, t, n, r, i, a, o) {
1003
+ function le(e, t, n, r, i, a, o) {
968
1004
  if (t === "none" || !t) return;
969
1005
  let s = o ? Math.max(4, o + 2) : 4, c = e.strokeStyle, l = e.lineWidth;
970
1006
  if (e.strokeStyle = a ?? "#888", e.lineWidth = o ?? 1, e.beginPath(), n === "val") {
@@ -976,16 +1012,18 @@ function G(e, t, n, r, i, a, o) {
976
1012
  }
977
1013
  e.stroke(), e.strokeStyle = c, e.lineWidth = l;
978
1014
  }
979
- function ae(e, t, n) {
1015
+ function ue(e, t, n) {
980
1016
  return e.titleFontSizeHpt ? e.titleFontSizeHpt / 100 * n : Math.max(10, t * .085);
981
1017
  }
982
- function oe(e, t, n) {
1018
+ function de(e, t, n) {
983
1019
  return e ? e / 100 * n : Math.max(8, t * .045);
984
1020
  }
985
- function se(e, t, n, r, i, a) {
986
- 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));
1021
+ function fe(e, t, n, r, i, a) {
1022
+ if (!t.title) return;
1023
+ let o = t.titleFontFace ? `"${t.titleFontFace}", Calibri, Arial, sans-serif` : "Calibri, Arial, sans-serif";
1024
+ e.font = `${t.titleFontBold ?? !0 ? "bold " : ""}${a}px ${o}`, e.fillStyle = t.titleFontColor ? `#${t.titleFontColor}` : "#333", e.textAlign = "center", e.textBaseline = "top", e.fillText(t.title, n + i / 2, r);
987
1025
  }
988
- function ce(e) {
1026
+ function pe(e) {
989
1027
  if (e.categories.length > 0) return e.categories;
990
1028
  let t = e.series[0];
991
1029
  if (t?.categories && t.categories.length > 0) return t.categories;
@@ -993,7 +1031,7 @@ function ce(e) {
993
1031
  for (let t of e.series) t.values.length > n && (n = t.values.length);
994
1032
  return n > 0 ? Array.from({ length: n }, (e, t) => String(t + 1)) : [];
995
1033
  }
996
- function le(e, t, n, r, i, a, o, s, c) {
1034
+ function me(e, t, n, r, i, a, o, s, c) {
997
1035
  let l = s ?? "outEnd";
998
1036
  if (e.fillStyle = c ? `#${c}` : "#333", o === "vertical") {
999
1037
  let o = n + a / 2;
@@ -1003,19 +1041,19 @@ function le(e, t, n, r, i, a, o, s, c) {
1003
1041
  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));
1004
1042
  }
1005
1043
  }
1006
- function ue(e, t, n, r) {
1007
- 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;
1044
+ function q(e, t, n, r) {
1045
+ 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 = pe(t), m = p.length;
1008
1046
  if (m === 0) return;
1009
- 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 = {
1010
- t: x + T + s * .02,
1011
- r: C + o * .03,
1012
- b: s * .14 + O + E,
1013
- l: o * .12 + k + w
1047
+ let h = t.title ? ue(t, s, r) : 0, g = t.title ? s * .02 : 0, _ = t.title ? s * .025 : 0, y = t.title ? h + g + _ : 0, x = se(t, o, s), S = x?.side === "r" ? x.reserveW : 0, C = x?.side === "l" ? x.reserveW : 0, w = x?.side === "t" ? x.reserveH : 0, T = x?.side === "b" ? x.reserveH : 0, { catTitlePx: E, valTitlePx: D, catTitleH: O, valTitleW: k } = ne(t, o, s, r), A = {
1048
+ t: y + w + s * .02,
1049
+ r: S + o * .03,
1050
+ b: s * .14 + O + T,
1051
+ l: o * .12 + k + C
1014
1052
  };
1015
- 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, _);
1016
- let j = t.plotAreaManualLayout, M, N, P, I;
1017
- 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;
1018
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(M, N, P, I));
1053
+ c && (A.l = (t.catAxisHidden ? o * .03 : o * .22) + k + C, A.b = (t.valAxisHidden ? s * .02 : s * .08) + O + T), fe(e, t, i, a + g, o, h);
1054
+ let j = t.plotAreaManualLayout, M, N, P, F;
1055
+ if (j && j.w != null && j.h != null ? (M = i + j.x * o, N = a + j.y * s, P = j.w * o, F = j.h * s) : (M = i + A.l, N = a + A.t, P = o - A.l - A.r, F = s - A.t - A.b), P <= 0 || F <= 0) return;
1056
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(M, N, P, F));
1019
1057
  let L = 0;
1020
1058
  for (let e = 0; e < m; e++) {
1021
1059
  let t = 0;
@@ -1026,22 +1064,22 @@ function ue(e, t, n, r) {
1026
1064
  l && (L = Math.max(L, t));
1027
1065
  }
1028
1066
  u && (L = 100), t.valMax != null && (L = t.valMax), L === 0 && (L = 1);
1029
- let R = h(L), B = t.valMax ?? g(L, R), V = "#e0e0e0", H = Math.round(B / R);
1030
- 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++) {
1031
- let r = n * R, i = u ? `${Math.round(r)}%` : y(r, t.valAxisFormatCode);
1067
+ let { max: R, step: z } = v(0, L, void 0, t.valMax), B = "#e0e0e0", V = Math.round(R / z);
1068
+ if (e.textBaseline = "middle", e.font = `${Math.max(8, Math.min(11, F / 20))}px sans-serif`, e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", !t.valAxisHidden) for (let n = 0; n <= V; n++) {
1069
+ let r = n * z, i = u ? `${Math.round(r)}%` : b(r, t.valAxisFormatCode);
1032
1070
  if (c) {
1033
- let t = M + r / B * P;
1034
- 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);
1071
+ let t = M + r / R * P;
1072
+ e.strokeStyle = n === 0 ? "#aaa" : B, e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(t, N), e.lineTo(t, N + F), e.stroke(), e.textAlign = "center", e.fillText(i, t, N + F + 10);
1035
1073
  } else {
1036
- let t = N + I - r / B * I;
1037
- 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);
1074
+ let t = N + F - r / R * F;
1075
+ e.strokeStyle = n === 0 ? "#aaa" : B, 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);
1038
1076
  }
1039
1077
  }
1040
- 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) => {
1078
+ let H = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#aaa", U = t.valAxisLineColor ? `#${t.valAxisLineColor}` : "#aaa", W = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / I) * r : 1, te = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / I) * r : 1, G = (t, n, r, i, a, o) => {
1041
1079
  e.strokeStyle = a, e.lineWidth = o, e.beginPath(), e.moveTo(t, n), e.lineTo(r, i), e.stroke();
1042
- }, oe = !t.catAxisHidden && !t.catAxisLineHidden, ue = !t.valAxisHidden && !t.valAxisLineHidden && t.valAxisLineColor != null;
1043
- 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));
1044
- 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;
1080
+ }, ie = !t.catAxisHidden && !t.catAxisLineHidden, ae = !t.valAxisHidden && !t.valAxisLineHidden && t.valAxisLineColor != null;
1081
+ c ? (ie && G(M, N, M, N + F, H, W), ae && G(M, N + F, M + P, N + F, U, te)) : (ie && G(M, N + F, M + P, N + F, H, W), ae && G(M, N, M, N + F, U, te));
1082
+ let K = c ? F / m : P / m, oe = l ? 1 : Math.max(1, d.length), le = l ? 0 : t.barOverlap ?? 0, de = t.barGapWidth ?? 150, q = K / (1 + (oe - 1) * (1 - le / 100) + de / 100), he = l ? 0 : q * (1 - le / 100), ge = (K - (q + (oe - 1) * he)) / 2;
1045
1083
  for (let n = 0; n < m; n++) {
1046
1084
  let i = 0, a = 0;
1047
1085
  if (u) {
@@ -1049,13 +1087,13 @@ function ue(e, t, n, r) {
1049
1087
  a === 0 && (a = 1);
1050
1088
  }
1051
1089
  for (let o = 0; o < d.length; o++) {
1052
- let s = d[o], f = s.values[n] ?? 0, p = u ? Math.abs(f) / a * 100 : Math.abs(f), h = z(o, s);
1090
+ let s = d[o], f = s.values[n] ?? 0, p = u ? Math.abs(f) / a * 100 : Math.abs(f), h = ee(o, s);
1053
1091
  if (c) {
1054
- 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;
1055
- 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));
1092
+ let a = l ? o : d.length - 1 - o, c = l ? N + (m - 1 - n) * K + ge : N + (m - 1 - n) * K + ge + a * he, f = p / R * P, g = l ? M + i / R * P : M;
1093
+ 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`, me(e, u ? `${Math.round(p)}%` : b(p, t.dataLabelFormatCode ?? s.valFormatCode ?? null), g, c, f, q, "horizontal", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
1056
1094
  } else {
1057
- 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;
1058
- 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));
1095
+ let a = l ? M + n * K + ge : M + n * K + ge + o * he, c = p / R * F, d = N + F - (l ? i + p : p) / R * F;
1096
+ 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`, me(e, u ? `${Math.round(p)}%` : b(p, t.dataLabelFormatCode ?? s.valFormatCode ?? null), a, d, c, q, "vertical", t.dataLabelPosition ?? null, s.labelColor ?? t.dataLabelFontColor ?? null));
1059
1097
  }
1060
1098
  l && (i += p);
1061
1099
  }
@@ -1069,12 +1107,12 @@ function ue(e, t, n, r) {
1069
1107
  e.textAlign = "right", e.textBaseline = "middle", e.fillText(n, M - 4, r);
1070
1108
  } else {
1071
1109
  let r = M + t * K + K / 2;
1072
- e.textAlign = "center", e.textBaseline = "top", e.fillText(n, r, N + I + 3);
1110
+ e.textAlign = "center", e.textBaseline = "top", e.fillText(n, r, N + F + 3);
1073
1111
  }
1074
1112
  }
1075
1113
  }
1076
1114
  if (f.length > 0 && !c) for (let t = 0; t < f.length; t++) {
1077
- let n = f[t], r = z(d.length + t, n);
1115
+ let n = f[t], r = ee(d.length + t, n);
1078
1116
  e.strokeStyle = r, e.lineWidth = 2, e.setLineDash([]), e.beginPath();
1079
1117
  let i = !1;
1080
1118
  for (let t = 0; t < m; t++) {
@@ -1083,53 +1121,53 @@ function ue(e, t, n, r) {
1083
1121
  i = !1;
1084
1122
  continue;
1085
1123
  }
1086
- let a = M + t * K + K / 2, o = N + I - r / B * I;
1124
+ let a = M + t * K + K / 2, o = N + F - r / R * F;
1087
1125
  i ? e.lineTo(a, o) : (e.moveTo(a, o), i = !0);
1088
1126
  }
1089
1127
  if (e.stroke(), n.showMarker !== !1) for (let t = 0; t < m; t++) {
1090
1128
  let i = n.values[t];
1091
1129
  if (i == null) continue;
1092
- let a = M + t * K + K / 2, o = N + I - i / B * I;
1130
+ let a = M + t * K + K / 2, o = N + F - i / R * F;
1093
1131
  e.fillStyle = r, e.beginPath(), e.arc(a, o, 3, 0, Math.PI * 2), e.fill();
1094
1132
  }
1095
1133
  }
1096
- ie(e, c && !l ? {
1134
+ ce(e, c && !l ? {
1097
1135
  ...t,
1098
1136
  series: [...t.series].reverse()
1099
- } : 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);
1137
+ } : t, x, i, a, o, s, M, N, P, F, y + 2), re(e, t, i, a, o, s, M, N, P, F, C, T, E, D);
1100
1138
  }
1101
- function K(e, t, n, r) {
1102
- let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1139
+ function he(e, t, n, r) {
1140
+ let { x: i, y: a, w: o, h: s } = n, c = pe(t), l = c.length;
1103
1141
  if (l === 0) return;
1104
- 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 = {
1105
- t: p + S + T / 2 + 2,
1106
- r: b + o * .05,
1107
- b: w + 12 + D + C,
1108
- l: T * 2.2 + 10 + O + x
1142
+ let u = t.title ? ue(t, s, r) : 0, d = t.title ? s * .045 : 0, f = t.title ? s * .035 : 0, p = t.title ? u + d + f : 0, m = se(t, o, s), h = m?.side === "r" ? m.reserveW : 0, g = m?.side === "l" ? m.reserveW : 0, _ = m?.side === "t" ? m.reserveH : 0, x = m?.side === "b" ? m.reserveH : 0, S = de(t.catAxisFontSizeHpt, s, r), C = de(t.valAxisFontSizeHpt, s, r), { catTitlePx: w, valTitlePx: T, catTitleH: E, valTitleW: D } = ne(t, o, s, r), O = {
1143
+ t: p + _ + C / 2 + 2,
1144
+ r: h + o * .05,
1145
+ b: S + 12 + E + x,
1146
+ l: C * 2.2 + 10 + D + g
1109
1147
  };
1110
- se(e, t, i, a + d, o, u);
1111
- let A = i + k.l, j = a + k.t, M = o - k.l - k.r, N = s - k.t - k.b;
1112
- if (M <= 0 || N <= 0) return;
1113
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(A, j, M, N));
1114
- let P = Infinity, F = -Infinity;
1115
- for (let e of t.series) for (let t of e.values) t != null && (P = Math.min(P, t), F = Math.max(F, t));
1116
- 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);
1117
- let I = h(F - P), L = t.valMin ?? _(P, I), R = t.valMax ?? g(F, I), B = R - L;
1118
- if (B === 0) return;
1119
- 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;
1148
+ fe(e, t, i, a + d, o, u);
1149
+ let k = i + O.l, A = a + O.t, j = o - O.l - O.r, M = s - O.t - O.b;
1150
+ if (j <= 0 || M <= 0) return;
1151
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(k, A, j, M));
1152
+ let N = Infinity, P = -Infinity;
1153
+ for (let e of t.series) for (let t of e.values) t != null && (N = Math.min(N, t), P = Math.max(P, t));
1154
+ isFinite(N) || (N = 0, P = 1), t.valMin == null ? N > 0 && (N = 0) : N = t.valMin, t.valMax == null ? P < 0 && (P = 0) : P = t.valMax, P === N && (P = N + 1);
1155
+ let { min: F, max: I, step: L } = v(N, P, t.valMin, t.valMax), R = I - F;
1156
+ if (R === 0) return;
1157
+ let z = (e) => A + M - (e - F) / R * M, B = t.catAxisCrossBetween === "midCat" ? (e) => k + (l === 1 ? j / 2 : e / (l - 1) * j) : (e) => k + (e + .5) / l * j;
1120
1158
  if (!t.valAxisHidden) {
1121
- let n = Math.round((R - L) / I);
1122
- e.font = `${T}px sans-serif`, e.textBaseline = "middle";
1159
+ let n = Math.round((I - F) / L);
1160
+ e.font = `${C}px sans-serif`, e.textBaseline = "middle";
1123
1161
  for (let r = 0; r <= n; r++) {
1124
- let n = L + r * I, i = V(n);
1125
- 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);
1162
+ let n = F + r * L, i = z(n);
1163
+ e.strokeStyle = n === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = n === 0 ? 1 : .5, e.beginPath(), e.moveTo(k, i), e.lineTo(k + j, i), e.stroke(), le(e, t.valAxisMajorTickMark, "val", k, i), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(b(n, t.valAxisFormatCode), k - 6, i);
1126
1164
  }
1127
1165
  }
1128
- 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());
1129
- let ee = Math.max(1, 2.25 * r), te = Math.max(2, 2.5 * r), ne = oe(t.dataLabelFontSizeHpt, s, r);
1166
+ e.strokeStyle = "#aaa", e.lineWidth = 1, !t.catAxisHidden && !t.catAxisLineHidden && (e.beginPath(), e.moveTo(k, A + M), e.lineTo(k + j, A + M), e.stroke()), !t.valAxisHidden && !t.valAxisLineHidden && (e.beginPath(), e.moveTo(k, A), e.lineTo(k, A + M), e.stroke());
1167
+ let V = Math.max(1, 2.25 * r), H = Math.max(2, 2.5 * r), U = de(t.dataLabelFontSizeHpt, s, r);
1130
1168
  for (let n = 0; n < t.series.length; n++) {
1131
- let r = t.series[n], i = z(n, r);
1132
- e.strokeStyle = i, e.lineWidth = ee, e.setLineDash([]), e.beginPath();
1169
+ let r = t.series[n], i = ee(n, r);
1170
+ e.strokeStyle = i, e.lineWidth = V, e.setLineDash([]), e.beginPath();
1133
1171
  let a = !1;
1134
1172
  for (let t = 0; t < l; t++) {
1135
1173
  let n = r.values[t];
@@ -1137,43 +1175,43 @@ function K(e, t, n, r) {
1137
1175
  a = !1;
1138
1176
  continue;
1139
1177
  }
1140
- let i = H(t), o = V(n);
1178
+ let i = B(t), o = z(n);
1141
1179
  a ? e.lineTo(i, o) : (e.moveTo(i, o), a = !0);
1142
1180
  }
1143
1181
  e.stroke(), e.fillStyle = i;
1144
1182
  let o = r.showMarker !== !1;
1145
1183
  for (let n = 0; n < l; n++) {
1146
1184
  let a = r.values[n];
1147
- if (a != null && (o && (e.beginPath(), e.arc(H(n), V(a), te, 0, Math.PI * 2), e.fill()), t.showDataLabels)) {
1148
- e.font = `${ne}px sans-serif`, e.fillStyle = "#333", e.textAlign = "center", e.textBaseline = "bottom";
1149
- let t = o ? te + 1 : 2;
1150
- e.fillText(v(a), H(n), V(a) - t), e.fillStyle = i;
1185
+ if (a != null && (o && (e.beginPath(), e.arc(B(n), z(a), H, 0, Math.PI * 2), e.fill()), t.showDataLabels)) {
1186
+ e.font = `${U}px sans-serif`, e.fillStyle = "#333", e.textAlign = "center", e.textBaseline = "bottom";
1187
+ let t = o ? H + 1 : 2;
1188
+ e.fillText(y(a), B(n), z(a) - t), e.fillStyle = i;
1151
1189
  }
1152
1190
  }
1153
1191
  }
1154
1192
  if (!t.catAxisHidden) {
1155
1193
  let n = Math.max(1, Math.ceil(l / 8)), r = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555";
1156
- e.fillStyle = r, e.textAlign = "center", e.textBaseline = "top", e.font = `${w}px sans-serif`;
1194
+ e.fillStyle = r, e.textAlign = "center", e.textBaseline = "top", e.font = `${S}px sans-serif`;
1157
1195
  for (let i = 0; i < l; i += n) {
1158
- let n = H(i);
1159
- G(e, t.catAxisMajorTickMark, "cat", j + N, n), e.fillStyle = r, e.fillText((c[i] ?? "").toString().slice(0, 10), n, j + N + 5);
1196
+ let n = B(i);
1197
+ le(e, t.catAxisMajorTickMark, "cat", A + M, n), e.fillStyle = r, e.fillText((c[i] ?? "").toString().slice(0, 10), n, A + M + 5);
1160
1198
  }
1161
1199
  }
1162
- 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);
1200
+ ce(e, t, m, i, a, o, s, k, A, j, M, p + 2), re(e, t, i, a, o, s, k, A, j, M, g, x, w, T);
1163
1201
  }
1164
- function de(e, t, n, r) {
1165
- let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1202
+ function ge(e, t, n, r) {
1203
+ let { x: i, y: a, w: o, h: s } = n, c = pe(t), l = c.length;
1166
1204
  if (l === 0) return;
1167
- 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 = {
1168
- t: m + x + s * .02,
1169
- r: v + o * .05,
1170
- b: s * .14 + w + S,
1171
- l: o * .12 + T + b
1205
+ let u = t.chartType === "stackedArea" || t.chartType === "stackedAreaPct", d = t.title ? ue(t, s, r) : 0, f = t.title ? s * .035 : 0, p = t.title ? s * .035 : 0, m = t.title ? d + f + p : 0, h = se(t, o, s), g = h?.side === "r" ? h.reserveW : 0, _ = h?.side === "l" ? h.reserveW : 0, y = h?.side === "t" ? h.reserveH : 0, x = h?.side === "b" ? h.reserveH : 0, { catTitlePx: S, valTitlePx: C, catTitleH: w, valTitleW: T } = ne(t, o, s, r), E = {
1206
+ t: m + y + s * .02,
1207
+ r: g + o * .05,
1208
+ b: s * .14 + w + x,
1209
+ l: o * .12 + T + _
1172
1210
  };
1173
- se(e, t, i, a + f, o, d);
1174
- let D = i + E.l, O = a + E.t, A = o - E.l - E.r, j = s - E.t - E.b;
1175
- if (A <= 0 || j <= 0) return;
1176
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(D, O, A, j));
1211
+ fe(e, t, i, a + f, o, d);
1212
+ let D = i + E.l, O = a + E.t, k = o - E.l - E.r, j = s - E.t - E.b;
1213
+ if (k <= 0 || j <= 0) return;
1214
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(D, O, k, j));
1177
1215
  let M = 0;
1178
1216
  for (let e = 0; e < l; e++) if (u) {
1179
1217
  let n = 0;
@@ -1181,19 +1219,19 @@ function de(e, t, n, r) {
1181
1219
  M = Math.max(M, n);
1182
1220
  } else for (let n of t.series) M = Math.max(M, n.values[e] ?? 0);
1183
1221
  t.valMax != null && (M = t.valMax), M === 0 && (M = 1);
1184
- 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;
1222
+ let { max: N, step: P } = v(0, M, void 0, t.valMax), F = (e) => D + (l === 1 ? k / 2 : e / (l - 1) * k), I = (e) => O + j - e / N * j;
1185
1223
  if (!t.valAxisHidden) {
1186
1224
  e.font = `${Math.max(8, Math.min(11, j / 20))}px sans-serif`, e.textBaseline = "middle";
1187
- let n = Math.round(P / N);
1225
+ let n = Math.round(N / P);
1188
1226
  for (let r = 0; r <= n; r++) {
1189
- let n = r * N, i = I(n);
1190
- 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);
1227
+ let n = r * P, i = I(n);
1228
+ e.strokeStyle = r === 0 ? "#aaa" : "#e0e0e0", e.lineWidth = r === 0 ? 1 : .5, e.beginPath(), e.moveTo(D, i), e.lineTo(D + k, i), e.stroke(), e.fillStyle = t.valAxisFontColor ? `#${t.valAxisFontColor}` : "#555", e.textAlign = "right", e.fillText(b(n, t.valAxisFormatCode), D - 4, i);
1191
1229
  }
1192
1230
  }
1193
- !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());
1231
+ !t.catAxisHidden && !t.catAxisLineHidden && (e.strokeStyle = "#aaa", e.lineWidth = 1, e.beginPath(), e.moveTo(D, O + j), e.lineTo(D + k, O + j), e.stroke());
1194
1232
  let L = u ? Array(l).fill(0) : null;
1195
1233
  for (let n = t.series.length - 1; n >= 0; n--) {
1196
- let r = t.series[n], i = z(n, r), a = O + j;
1234
+ let r = t.series[n], i = ee(n, r), a = O + j;
1197
1235
  if (e.beginPath(), u && L) {
1198
1236
  for (let t = 0; t < l; t++) {
1199
1237
  let n = (r.values[t] ?? 0) + L[t], i = F(t), a = I(n);
@@ -1206,22 +1244,22 @@ function de(e, t, n, r) {
1206
1244
  for (let t = 0; t < l; t++) e.lineTo(F(t), I(r.values[t] ?? 0));
1207
1245
  e.lineTo(F(l - 1), a);
1208
1246
  }
1209
- e.closePath(), e.fillStyle = k(i, .6), e.fill(), e.strokeStyle = i, e.lineWidth = 1.5, e.setLineDash([]), e.stroke();
1247
+ e.closePath(), e.fillStyle = A(i, .6), e.fill(), e.strokeStyle = i, e.lineWidth = 1.5, e.setLineDash([]), e.stroke();
1210
1248
  }
1211
1249
  if (!t.catAxisHidden) {
1212
1250
  let n = Math.max(1, Math.ceil(l / 8));
1213
- 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`;
1251
+ e.fillStyle = t.catAxisFontColor ? `#${t.catAxisFontColor}` : "#555", e.textAlign = "center", e.textBaseline = "top", e.font = `${Math.max(8, Math.min(11, k / l * .8))}px sans-serif`;
1214
1252
  for (let t = 0; t < l; t += n) e.fillText((c[t] ?? "").toString().slice(0, 10), F(t), O + j + 3);
1215
1253
  }
1216
- 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);
1254
+ ce(e, t, h, i, a, o, s, D, O, k, j, m + 2), re(e, t, i, a, o, s, D, O, k, j, _, x, S, C);
1217
1255
  }
1218
- function fe(e, t, n, r, i) {
1256
+ function _e(e, t, n, r, i) {
1219
1257
  let { x: a, y: o, w: s, h: c } = n, l = t.series[0];
1220
1258
  if (!l) return;
1221
1259
  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);
1222
1260
  if (f === 0) return;
1223
- 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;
1224
- se(e, t, a, o + m, s, p);
1261
+ let p = t.title ? ue(t, c, i) : 0, m = t.title ? c * .035 : 0, h = t.title ? c * .035 : 0, g = t.title ? p + m + h : 0;
1262
+ fe(e, t, a, o + m, s, p);
1225
1263
  let _ = t.showLegend ? (() => {
1226
1264
  let e = t.legendPos ?? "r", n = e === "l" ? "l" : e === "t" ? "t" : e === "b" ? "b" : "r";
1227
1265
  return n === "r" || n === "l" ? {
@@ -1247,59 +1285,59 @@ function fe(e, t, n, r, i) {
1247
1285
  ...l,
1248
1286
  categories: u
1249
1287
  }], r = w - S / 2;
1250
- ie(e, {
1288
+ ce(e, {
1251
1289
  ...t,
1252
1290
  series: n
1253
1291
  }, _, a, o, s, c, r, T - C / 2, S, C, g + 2);
1254
1292
  }
1255
1293
  }
1256
- function pe(e, t, n, r) {
1257
- let { x: i, y: a, w: o, h: s } = n, c = ce(t), l = c.length;
1294
+ function ve(e, t, n, r) {
1295
+ let { x: i, y: a, w: o, h: s } = n, c = pe(t), l = c.length;
1258
1296
  if (l < 3) return;
1259
- 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;
1260
- se(e, t, i, a + d, o, u);
1261
- 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;
1262
- for (let e of t.series) for (let t of e.values) D = Math.max(D, t ?? 0);
1263
- t.valMax != null && (D = t.valMax), D === 0 && (D = 1);
1264
- 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);
1297
+ let u = t.title ? ue(t, s, r) : 0, d = t.title ? s * .035 : 0, f = t.title ? s * .035 : 0, p = t.title ? u + d + f : 0, m = se(t, o, s), h = m?.side === "r" ? m.reserveW : 0, g = m?.side === "l" ? m.reserveW : 0, _ = m?.side === "t" ? m.reserveH : 0, b = m?.side === "b" ? m.reserveH : 0;
1298
+ fe(e, t, i, a + d, o, u);
1299
+ let x = o - h - g, S = s - p - _ - b - s * .02, C = i + g + x / 2, w = a + p + _ + s * .02 + S / 2, T = Math.min(x, S) * .38, E = 0;
1300
+ for (let e of t.series) for (let t of e.values) E = Math.max(E, t ?? 0);
1301
+ t.valMax != null && (E = t.valMax), E === 0 && (E = 1);
1302
+ let { max: D, step: O } = v(0, E, void 0, t.valMax), k = -Math.PI / 2, j = (e) => k + e / l * Math.PI * 2, M = Math.round(D / O);
1265
1303
  e.strokeStyle = "#ddd", e.lineWidth = .5;
1266
- for (let t = 1; t <= N; t++) {
1267
- let n = t / N * E;
1304
+ for (let t = 1; t <= M; t++) {
1305
+ let n = t / M * T;
1268
1306
  e.beginPath();
1269
1307
  for (let t = 0; t < l; t++) {
1270
- let r = M(t), i = w + Math.cos(r) * n, a = T + Math.sin(r) * n;
1308
+ let r = j(t), i = C + Math.cos(r) * n, a = w + Math.sin(r) * n;
1271
1309
  t === 0 ? e.moveTo(i, a) : e.lineTo(i, a);
1272
1310
  }
1273
1311
  e.closePath(), e.stroke();
1274
1312
  }
1275
1313
  e.strokeStyle = "#bbb", e.lineWidth = .5;
1276
1314
  for (let t = 0; t < l; t++) {
1277
- let n = M(t);
1278
- e.beginPath(), e.moveTo(w, T), e.lineTo(w + Math.cos(n) * E, T + Math.sin(n) * E), e.stroke();
1315
+ let n = j(t);
1316
+ e.beginPath(), e.moveTo(C, w), e.lineTo(C + Math.cos(n) * T, w + Math.sin(n) * T), e.stroke();
1279
1317
  }
1280
1318
  if (!t.valAxisHidden) {
1281
- e.font = `${oe(t.valAxisFontSizeHpt, s, r)}px sans-serif`, e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle";
1282
- for (let t = 1; t <= N; t++) {
1283
- let n = t / N * A, r = t / N * E;
1284
- e.fillText(v(n), w - 3, T - r);
1319
+ e.font = `${de(t.valAxisFontSizeHpt, s, r)}px sans-serif`, e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle";
1320
+ for (let t = 1; t <= M; t++) {
1321
+ let n = t / M * D, r = t / M * T;
1322
+ e.fillText(y(n), C - 3, w - r);
1285
1323
  }
1286
1324
  }
1287
- e.font = `${Math.max(8, Math.min(11, E * .2))}px sans-serif`, e.fillStyle = "#444", e.textBaseline = "middle";
1325
+ e.font = `${Math.max(8, Math.min(11, T * .2))}px sans-serif`, e.fillStyle = "#444", e.textBaseline = "middle";
1288
1326
  for (let t = 0; t < l; t++) {
1289
- let n = M(t), r = w + Math.cos(n) * (E + 12), i = T + Math.sin(n) * (E + 12);
1327
+ let n = j(t), r = C + Math.cos(n) * (T + 12), i = w + Math.sin(n) * (T + 12);
1290
1328
  e.textAlign = Math.cos(n) < -.1 ? "right" : Math.cos(n) > .1 ? "left" : "center", e.fillText((c[t] ?? "").toString().slice(0, 12), r, i);
1291
1329
  }
1292
- let P = t.radarStyle === "filled", F = Math.max(2, E * .025);
1330
+ let N = t.radarStyle === "filled", P = Math.max(2, T * .025);
1293
1331
  for (let n = 0; n < t.series.length; n++) {
1294
- let r = t.series[n], i = z(n, r), a = [];
1332
+ let r = t.series[n], i = ee(n, r), a = [];
1295
1333
  for (let e = 0; e < l; e++) {
1296
1334
  let t = r.values[e];
1297
1335
  if (t == null) {
1298
1336
  a.push(null);
1299
1337
  continue;
1300
1338
  }
1301
- let n = t / A, i = M(e);
1302
- a.push([w + Math.cos(i) * E * n, T + Math.sin(i) * E * n]);
1339
+ let n = t / D, i = j(e);
1340
+ a.push([C + Math.cos(i) * T * n, w + Math.sin(i) * T * n]);
1303
1341
  }
1304
1342
  e.beginPath();
1305
1343
  let o = !1;
@@ -1311,102 +1349,104 @@ function pe(e, t, n, r) {
1311
1349
  o ? e.lineTo(t[0], t[1]) : (e.moveTo(t[0], t[1]), o = !0);
1312
1350
  }
1313
1351
  let s = a.every((e) => e != null);
1314
- 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) {
1352
+ if (N && s ? (e.closePath(), e.fillStyle = A(i, .25), e.fill()) : s && e.closePath(), e.strokeStyle = i, e.lineWidth = 2, e.stroke(), !N && r.showMarker !== !1) {
1315
1353
  e.fillStyle = i;
1316
- for (let t of a) t != null && (e.beginPath(), e.arc(t[0], t[1], F, 0, Math.PI * 2), e.fill());
1354
+ for (let t of a) t != null && (e.beginPath(), e.arc(t[0], t[1], P, 0, Math.PI * 2), e.fill());
1317
1355
  }
1318
1356
  }
1319
- ie(e, t, m, i, a, o, s, w - S / 2, T - C / 2, S, C, p + 2);
1357
+ ce(e, t, m, i, a, o, s, C - x / 2, w - S / 2, x, S, p + 2);
1320
1358
  }
1321
- function q(e, t, n, r) {
1322
- 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;
1359
+ function ye(e, t, n, r) {
1360
+ let { x: i, y: a, w: o, h: s } = n, c = t.title ? ue(t, s, r) : 0, l = t.title ? s * .035 : 0, u = t.title ? s * .035 : 0, d = t.title ? c + l + u : 0, f = se(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, { catTitlePx: y, valTitlePx: x, catTitleH: S, valTitleW: C } = ne(t, o, s, r);
1323
1361
  if (t.title) {
1324
1362
  let n = t.titleManualLayout;
1325
- 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);
1363
+ n && (n.x !== void 0 || n.y !== void 0) ? fe(e, t, i + n.x * o, a + n.y * s, (n.w ?? .5) * o, c) : fe(e, t, i, a + l, o, c);
1326
1364
  }
1327
- let S = t.plotAreaManualLayout, C, w, T, E;
1328
- 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;
1365
+ let w = t.plotAreaManualLayout, T, E, D, O;
1366
+ if (w && w.w != null && w.h != null) T = i + w.x * o, E = a + w.y * s, D = w.w * o, O = w.h * s;
1329
1367
  else {
1330
1368
  let e = {
1331
1369
  t: d + g + s * .02,
1332
1370
  r: p + o * .05,
1333
- b: (t.catAxisHidden ? s * .04 : s * .12) + b + _,
1334
- l: (t.valAxisHidden ? o * .04 : o * .12) + x + m
1371
+ b: (t.catAxisHidden ? s * .04 : s * .12) + S + _,
1372
+ l: (t.valAxisHidden ? o * .04 : o * .12) + C + m
1335
1373
  };
1336
- C = i + e.l, w = a + e.t, T = o - e.l - e.r, E = s - e.t - e.b;
1374
+ T = i + e.l, E = a + e.t, D = o - e.l - e.r, O = s - e.t - e.b;
1337
1375
  }
1338
- if (T <= 0 || E <= 0) return;
1339
- t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(C, w, T, E));
1340
- let D = [], O = [];
1376
+ if (D <= 0 || O <= 0) return;
1377
+ t.plotAreaBg && (e.fillStyle = `#${t.plotAreaBg}`, e.fillRect(T, E, D, O));
1378
+ let k = [], A = [];
1341
1379
  for (let e of t.series) {
1342
1380
  let t = e.categories ?? [];
1343
1381
  for (let e of t) {
1344
1382
  let t = parseFloat(e);
1345
- isNaN(t) || D.push(t);
1383
+ isNaN(t) || k.push(t);
1346
1384
  }
1347
- for (let t of e.values) t != null && O.push(t);
1385
+ for (let t of e.values) t != null && A.push(t);
1348
1386
  }
1349
- let k = D.length === 0;
1350
- if (k) {
1387
+ let j = k.length === 0;
1388
+ if (j) {
1351
1389
  let e = Math.max(...t.series.map((e) => e.values.length));
1352
- for (let t = 0; t < e; t++) D.push(t);
1390
+ for (let t = 0; t < e; t++) k.push(t);
1353
1391
  }
1354
- let A = Math.min(...D), j = Math.max(...D), M = Math.min(...O), N = Math.max(...O);
1355
- 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) {
1356
- let e = h(j - A);
1357
- e > 0 && (t.catAxisMin ?? (A = Math.floor(A / e) * e), t.catAxisMax ?? (j = Math.ceil(j / e) * e));
1392
+ let M = Math.min(...k), N = Math.max(...k), P = Math.min(...A), F = Math.max(...A);
1393
+ M === N && (--M, N += 1), P === F && (--P, F += 1), t.valMin == null ? P > 0 && (P = 0) : P = t.valMin, t.valMax != null && (F = t.valMax);
1394
+ let { min: L, max: R, step: z } = v(P, F, t.valMin, t.valMax);
1395
+ if (P = L, F = R, t.catAxisMin != null && (M = t.catAxisMin), t.catAxisMax != null && (N = t.catAxisMax), t.catAxisMin == null || t.catAxisMax == null) {
1396
+ let e = h(N - M);
1397
+ e > 0 && (t.catAxisMin ?? (M = Math.floor(M / e) * e), t.catAxisMax ?? (N = Math.ceil(N / e) * e));
1358
1398
  }
1359
- let P = (e) => C + (e - A) / (j - A) * T, I = (e) => w + E - (e - M) / (N - M) * E;
1399
+ let B = (e) => T + (e - M) / (N - M) * D, V = (e) => E + O - (e - P) / (F - P) * O;
1360
1400
  if (!t.valAxisHidden) {
1361
- let n = Math.max(8, Math.min(11, E / 20));
1401
+ let n = Math.max(8, Math.min(11, O / 20));
1362
1402
  e.font = `${t.valAxisFontBold ? "bold " : ""}${n}px sans-serif`;
1363
- let r = h(N - M), i = Math.round((N - M) / r) + 1;
1403
+ let i = Math.round((F - P) / z) + 1;
1364
1404
  for (let n = 0; n < i; n++) {
1365
- let i = M + n * r;
1366
- if (i > N + r * .01) break;
1367
- let a = I(i);
1368
- 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);
1369
- let o = t.valAxisLineColor ? `#${t.valAxisLineColor}` : void 0, s = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / F) : void 0;
1370
- G(e, t.valAxisMajorTickMark, "val", C, a, o, s);
1405
+ let i = P + n * z;
1406
+ if (i > F + z * .01) break;
1407
+ let a = V(i);
1408
+ e.strokeStyle = "#e0e0e0", e.lineWidth = .5, e.beginPath(), e.moveTo(T, a), e.lineTo(T + D, a), e.stroke(), e.fillStyle = "#555", e.textAlign = "right", e.textBaseline = "middle", e.fillText(b(i, t.valAxisFormatCode), T - 4, a);
1409
+ let o = t.valAxisLineColor ? `#${t.valAxisLineColor}` : void 0, s = t.valAxisLineWidthEmu ? Math.max(.5, t.valAxisLineWidthEmu / I) * r : void 0;
1410
+ le(e, t.valAxisMajorTickMark, "val", T, a, o, s);
1371
1411
  }
1372
1412
  }
1373
- let L = w + E;
1374
- if (t.catAxisCrossesAt != null) L = ve(I(t.catAxisCrossesAt), w, w + E);
1413
+ let H = E + O;
1414
+ if (t.catAxisCrossesAt != null) H = we(V(t.catAxisCrossesAt), E, E + O);
1375
1415
  else {
1376
1416
  let e = t.catAxisCrosses ?? "autoZero";
1377
- e === "autoZero" && M < 0 && N > 0 ? L = ve(I(0), w, w + E) : e === "min" ? L = w + E : e === "max" && (L = w);
1417
+ e === "autoZero" && P < 0 && F > 0 ? H = we(V(0), E, E + O) : e === "min" ? H = E + O : e === "max" && (H = E);
1378
1418
  }
1379
- 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) {
1380
- let n = Math.max(8, Math.min(11, E / 20));
1419
+ if (!t.catAxisHidden && !t.catAxisLineHidden && (e.save(), e.strokeStyle = t.catAxisLineColor ? `#${t.catAxisLineColor}` : "#888", e.lineWidth = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / I) * r : 1, e.lineCap = "butt", e.beginPath(), e.moveTo(T, H), e.lineTo(T + D, H), 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 / I) * r : 1, e.beginPath(), e.moveTo(T, E), e.lineTo(T, E + O), e.stroke(), e.restore()), !t.catAxisHidden) {
1420
+ let n = Math.max(8, Math.min(11, O / 20));
1381
1421
  e.font = `${t.catAxisFontBold ? "bold " : ""}${n}px sans-serif`;
1382
- let r = h(j - A), i = Math.round((j - A) / r) + 1;
1422
+ let i = h(N - M), a = Math.round((N - M) / i) + 1;
1383
1423
  e.fillStyle = "#555", e.textAlign = "center", e.textBaseline = "top";
1384
- for (let n = 0; n < i; n++) {
1385
- let i = A + n * r;
1386
- if (i > j + r * .01) break;
1387
- let a = P(i);
1388
- e.fillText(y(i, t.catAxisFormatCode), a, L + 4);
1389
- let o = t.catAxisLineColor ? `#${t.catAxisLineColor}` : void 0, s = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / F) : void 0;
1390
- G(e, t.catAxisMajorTickMark, "cat", L, a, o, s);
1424
+ for (let n = 0; n < a; n++) {
1425
+ let a = M + n * i;
1426
+ if (a > N + i * .01) break;
1427
+ let o = B(a);
1428
+ e.fillText(b(a, t.catAxisFormatCode), o, H + 4);
1429
+ let s = t.catAxisLineColor ? `#${t.catAxisLineColor}` : void 0, c = t.catAxisLineWidthEmu ? Math.max(.5, t.catAxisLineWidthEmu / I) * r : void 0;
1430
+ le(e, t.catAxisMajorTickMark, "cat", H, o, s, c);
1391
1431
  }
1392
1432
  }
1393
- 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";
1433
+ let U = t.chartType === "bubble", W = U ? "marker" : t.scatterStyle ?? "marker", te = W === "line" || W === "lineMarker" || W === "lineNoMarker", G = W === "smooth" || W === "smoothMarker" || W === "smoothNoMarker", ie = W === "lineNoMarker" || W === "smoothNoMarker";
1394
1434
  for (let n = 0; n < t.series.length; n++) {
1395
- let i = t.series[n], a = z(n, i), o = i.categories ?? [];
1396
- for (let t of i.errBars ?? []) he(e, i, t, o, k, P, I, a);
1397
- if (V || H) {
1435
+ let i = t.series[n], a = ee(n, i), o = i.categories ?? [];
1436
+ for (let t of i.errBars ?? []) xe(e, i, t, o, j, B, V, a);
1437
+ if (te || G) {
1398
1438
  let t = [];
1399
1439
  for (let e = 0; e < i.values.length; e++) {
1400
1440
  let n = i.values[e];
1401
1441
  if (n == null) continue;
1402
- let r = k ? e : parseFloat(o[e] ?? "0");
1442
+ let r = j ? e : parseFloat(o[e] ?? "0");
1403
1443
  isNaN(r) || t.push({
1404
- x: P(r),
1405
- y: I(n)
1444
+ x: B(r),
1445
+ y: V(n)
1406
1446
  });
1407
1447
  }
1408
1448
  if (t.length >= 2) {
1409
- 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++) {
1449
+ if (e.save(), e.strokeStyle = i.color ? `#${i.color}` : a, e.lineWidth = 1.5, e.beginPath(), e.moveTo(t[0].x, t[0].y), G && t.length >= 3) for (let n = 0; n < t.length - 1; n++) {
1410
1450
  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;
1411
1451
  e.bezierCurveTo(s, c, l, u, a.x, a.y);
1412
1452
  }
@@ -1414,31 +1454,31 @@ function q(e, t, n, r) {
1414
1454
  e.stroke(), e.restore();
1415
1455
  }
1416
1456
  }
1417
- if (!(ee || i.showMarker === !1 || typeof i.markerSymbol == "string" && i.markerSymbol === "none")) {
1457
+ if (!(ie || i.showMarker === !1 || typeof i.markerSymbol == "string" && i.markerSymbol === "none")) {
1418
1458
  let t = 0;
1419
- if (R && i.bubbleSizes && i.bubbleSizes.length > 0) {
1459
+ if (U && i.bubbleSizes && i.bubbleSizes.length > 0) {
1420
1460
  let e = Math.max(0, ...i.bubbleSizes.filter((e) => e != null));
1421
- e > 0 && (t = Math.min(T, E) / Math.max(8, i.values.length * 1.6) / Math.sqrt(e));
1461
+ e > 0 && (t = Math.min(D, O) / Math.max(8, i.values.length * 1.6) / Math.sqrt(e));
1422
1462
  }
1423
1463
  for (let n = 0; n < i.values.length; n++) {
1424
1464
  let s = i.values[n];
1425
1465
  if (s == null) continue;
1426
- let c = k ? n : parseFloat(o[n] ?? "0");
1466
+ let c = j ? n : parseFloat(o[n] ?? "0");
1427
1467
  if (isNaN(c)) continue;
1428
1468
  let l = (i.dataPointOverrides ?? []).find((e) => e.idx === n), u = l?.markerSymbol ?? i.markerSymbol ?? "circle", d = l?.markerSize ?? i.markerSize ?? 5;
1429
- if (R && t > 0) {
1469
+ if (U && t > 0) {
1430
1470
  let e = i.bubbleSizes?.[n];
1431
1471
  e != null && e > 0 && (d = Math.sqrt(e) * t * 2 / r);
1432
1472
  }
1433
1473
  let f = l?.markerFill ?? l?.color ?? i.markerFill ?? a, p = l?.markerLine ?? i.markerLine ?? null;
1434
- me(e, P(c), I(s), u, d, f, p, r);
1474
+ be(e, B(c), V(s), u, d, f, p, r);
1435
1475
  }
1436
1476
  }
1437
- ge(e, i, o, k, P, I, E, r);
1477
+ Se(e, i, o, j, B, V, O, r);
1438
1478
  }
1439
- 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);
1479
+ ce(e, t, f, i, a, o, s, T, E, D, O, d + 2), re(e, t, i, a, o, s, T, E, D, O, m, _, y, x);
1440
1480
  }
1441
- function me(e, t, n, r, i, a, o, s) {
1481
+ function be(e, t, n, r, i, a, o, s) {
1442
1482
  let c = Math.max(2, i * s), l = c / 2, u = a.startsWith("#") ? a : `#${a}`, d = o ? o.startsWith("#") ? o : `#${o}` : null;
1443
1483
  switch (e.save(), e.fillStyle = u, d && (e.strokeStyle = d, e.lineWidth = 1), r) {
1444
1484
  case "square":
@@ -1478,8 +1518,8 @@ function me(e, t, n, r, i, a, o, s) {
1478
1518
  }
1479
1519
  e.restore();
1480
1520
  }
1481
- function he(e, t, n, r, i, a, o, s) {
1482
- 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));
1521
+ function xe(e, t, n, r, i, a, o, s) {
1522
+ e.save(), e.strokeStyle = n.color ? `#${n.color}` : s, e.lineWidth = n.lineWidthEmu ? Math.max(.5, n.lineWidthEmu / I) : 1, e.setLineDash(Te(n.dash));
1483
1523
  let c = n.barType === "plus" || n.barType === "both", l = n.barType === "minus" || n.barType === "both", u = n.dir === "x", d = e.lineWidth * 1.5;
1484
1524
  for (let s = 0; s < t.values.length; s++) {
1485
1525
  let f = t.values[s];
@@ -1501,7 +1541,7 @@ function he(e, t, n, r, i, a, o, s) {
1501
1541
  }
1502
1542
  e.restore();
1503
1543
  }
1504
- function ge(e, t, n, r, i, a, o, s) {
1544
+ function Se(e, t, n, r, i, a, o, s) {
1505
1545
  let c = t.dataLabelOverrides ?? [];
1506
1546
  if (c.length === 0 && !t.seriesDataLabels) return;
1507
1547
  let l = t.seriesDataLabels;
@@ -1516,13 +1556,13 @@ function ge(e, t, n, r, i, a, o, s) {
1516
1556
  m = p.text;
1517
1557
  } else if (l && (l.showVal || l.showSerName || l.showCatName)) {
1518
1558
  let e = [];
1519
- 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;
1559
+ if (l.showCatName && !r && e.push(n[u] ?? ""), l.showSerName && e.push(t.name), l.showVal && e.push(b(d, l.formatCode ?? null)), m = e.filter(Boolean).join(" "), !m) continue;
1520
1560
  } else continue;
1521
- 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;
1522
- _e(e, i(f), a(d), m, h, _, v, b);
1561
+ 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, y = p?.fontBold ?? l?.fontBold ?? !1;
1562
+ Ce(e, i(f), a(d), m, h, _, v, y);
1523
1563
  }
1524
1564
  }
1525
- function _e(e, t, n, r, i, a, o, s) {
1565
+ function Ce(e, t, n, r, i, a, o, s) {
1526
1566
  e.save(), e.font = `${s ? "bold " : ""}${a}px sans-serif`, e.fillStyle = o ? `#${o}` : "#333";
1527
1567
  let c = a * .6, l = t, u = n;
1528
1568
  switch (i) {
@@ -1550,10 +1590,10 @@ function _e(e, t, n, r, i, a, o, s) {
1550
1590
  for (let t of d) e.fillText(t, l, m), m += f;
1551
1591
  e.restore();
1552
1592
  }
1553
- function ve(e, t, n) {
1593
+ function we(e, t, n) {
1554
1594
  return e < t ? t : e > n ? n : e;
1555
1595
  }
1556
- function ye(e) {
1596
+ function Te(e) {
1557
1597
  if (!e) return [];
1558
1598
  switch (e) {
1559
1599
  case "solid": return [];
@@ -1588,7 +1628,7 @@ function ye(e) {
1588
1628
  default: return [];
1589
1629
  }
1590
1630
  }
1591
- function be(e, t, n) {
1631
+ function Ee(e, t, n) {
1592
1632
  let { x: r, y: i, w: a, h: o } = n, s = t.plotAreaManualLayout, c, l, u, d;
1593
1633
  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;
1594
1634
  else {
@@ -1647,9 +1687,14 @@ function be(e, t, n) {
1647
1687
  }
1648
1688
  e.restore();
1649
1689
  }
1650
- function xe(e, t, n, r = L) {
1690
+ function De(e, t, n, r = R) {
1651
1691
  let { x: i, y: a, w: o, h: s } = n;
1652
- if (t.chartBg && (e.fillStyle = `#${t.chartBg}`, e.fillRect(i, a, o, s)), t.series.length === 0) {
1692
+ if (t.chartBg && (e.fillStyle = `#${t.chartBg}`, e.fillRect(i, a, o, s)), t.chartBorderColor) {
1693
+ e.save(), e.strokeStyle = `#${t.chartBorderColor}`, e.lineWidth = t.chartBorderWidthEmu ? Math.max(.5, t.chartBorderWidthEmu / I) * r : 1;
1694
+ let n = e.lineWidth;
1695
+ e.strokeRect(i + n / 2, a + n / 2, o - n, s - n), e.restore();
1696
+ }
1697
+ if (t.series.length === 0) {
1653
1698
  e.fillStyle = "#888", e.font = "12px sans-serif", e.textAlign = "center", e.textBaseline = "middle", e.fillText("(no data)", i + o / 2, a + s / 2);
1654
1699
  return;
1655
1700
  }
@@ -1660,40 +1705,40 @@ function xe(e, t, n, r = L) {
1660
1705
  case "stackedBarH":
1661
1706
  case "stackedBarPct":
1662
1707
  case "stackedBarHPct":
1663
- ue(e, t, n, r);
1708
+ q(e, t, n, r);
1664
1709
  break;
1665
1710
  case "line":
1666
1711
  case "stackedLine":
1667
1712
  case "stackedLinePct":
1668
- K(e, t, n, r);
1713
+ he(e, t, n, r);
1669
1714
  break;
1670
1715
  case "area":
1671
1716
  case "stackedArea":
1672
1717
  case "stackedAreaPct":
1673
- de(e, t, n, r);
1718
+ ge(e, t, n, r);
1674
1719
  break;
1675
1720
  case "pie":
1676
- fe(e, t, n, !1, r);
1721
+ _e(e, t, n, !1, r);
1677
1722
  break;
1678
1723
  case "doughnut":
1679
- fe(e, t, n, !0, r);
1724
+ _e(e, t, n, !0, r);
1680
1725
  break;
1681
1726
  case "radar":
1682
- pe(e, t, n, r);
1727
+ ve(e, t, n, r);
1683
1728
  break;
1684
1729
  case "scatter":
1685
1730
  case "bubble":
1686
- q(e, t, n, r);
1731
+ ye(e, t, n, r);
1687
1732
  break;
1688
1733
  case "waterfall":
1689
- be(e, t, n);
1734
+ Ee(e, t, n);
1690
1735
  break;
1691
1736
  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);
1692
1737
  }
1693
1738
  }
1694
1739
  //#endregion
1695
1740
  //#region packages/core/src/autoResize.ts
1696
- function Se(e, t, n = {}) {
1741
+ function Oe(e, t, n = {}) {
1697
1742
  let r = n.pauseWhenHidden ?? !0, i = null, a = 0, o = 0, s = null, c = !1, l = !1, u = () => {
1698
1743
  if (!l && !(r && typeof document < "u" && document.hidden)) {
1699
1744
  if (s) {
@@ -1730,7 +1775,7 @@ function Se(e, t, n = {}) {
1730
1775
  }
1731
1776
  //#endregion
1732
1777
  //#region packages/core/src/shape/custGeom.ts
1733
- function Ce(e, t, n, r, i, a) {
1778
+ function ke(e, t, n, r, i, a) {
1734
1779
  for (let o of t) {
1735
1780
  let t = 0, s = 0;
1736
1781
  for (let c of o) switch (c.cmd) {
@@ -1766,7 +1811,7 @@ function J(e, t, n, r, i, a, o, s = -Math.PI / 2) {
1766
1811
  }
1767
1812
  e.closePath();
1768
1813
  }
1769
- function we(e, t, n, r, i, a, o = -Math.PI / 2) {
1814
+ function Ae(e, t, n, r, i, a, o = -Math.PI / 2) {
1770
1815
  for (let s = 0; s < a; s++) {
1771
1816
  let c = o + s * 2 * Math.PI / a, l = t + r * Math.cos(c), u = n + i * Math.sin(c);
1772
1817
  s === 0 ? e.moveTo(l, u) : e.lineTo(l, u);
@@ -1780,7 +1825,7 @@ function Y(e, t, n, r, i, a, o) {
1780
1825
  y: d + i * Math.sin(l)
1781
1826
  };
1782
1827
  }
1783
- function Te(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1828
+ function je(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1784
1829
  let u = n + i / 2, d = r + a / 2;
1785
1830
  switch (t.toLowerCase()) {
1786
1831
  case "ellipse":
@@ -1815,22 +1860,22 @@ function Te(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1815
1860
  break;
1816
1861
  }
1817
1862
  case "pentagon":
1818
- we(e, u, d, i / 2, a / 2, 5);
1863
+ Ae(e, u, d, i / 2, a / 2, 5);
1819
1864
  break;
1820
1865
  case "hexagon":
1821
- we(e, u, d, i / 2, a / 2, 6, 0);
1866
+ Ae(e, u, d, i / 2, a / 2, 6, 0);
1822
1867
  break;
1823
1868
  case "heptagon":
1824
- we(e, u, d, i / 2, a / 2, 7);
1869
+ Ae(e, u, d, i / 2, a / 2, 7);
1825
1870
  break;
1826
1871
  case "octagon":
1827
- we(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
1872
+ Ae(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
1828
1873
  break;
1829
1874
  case "decagon":
1830
- we(e, u, d, i / 2, a / 2, 10);
1875
+ Ae(e, u, d, i / 2, a / 2, 10);
1831
1876
  break;
1832
1877
  case "dodecagon":
1833
- we(e, u, d, i / 2, a / 2, 12);
1878
+ Ae(e, u, d, i / 2, a / 2, 12);
1834
1879
  break;
1835
1880
  case "star4":
1836
1881
  J(e, u, d, i / 2, a / 2, 4, (o ?? 12500) / 5e4);
@@ -2515,9 +2560,9 @@ function Te(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
2515
2560
  }
2516
2561
  //#endregion
2517
2562
  //#region packages/core/src/shape/arrow.ts
2518
- function Ee(e, t, n, r, i, a, o) {
2563
+ function Me(e, t, n, r, i, a, o) {
2519
2564
  if (i.type === "none") return;
2520
- let s = Math.max(.5, a.width * o), c = i.w === "sm" ? 4 : i.w === "lg" ? 8 : 6, l = i.len === "sm" ? 4 : i.len === "lg" ? 8 : 6, u = s * c / 2, d = s * l, f = k(a.color);
2565
+ let s = Math.max(.5, a.width * o), c = i.w === "sm" ? 4 : i.w === "lg" ? 8 : 6, l = i.len === "sm" ? 4 : i.len === "lg" ? 8 : 6, u = s * c / 2, d = s * l, f = A(a.color);
2521
2566
  switch (e.save(), e.translate(t, n), e.rotate(r), e.fillStyle = f, e.strokeStyle = f, e.lineWidth = s, e.setLineDash([]), e.beginPath(), i.type) {
2522
2567
  case "triangle":
2523
2568
  case "stealth":
@@ -2535,7 +2580,7 @@ function Ee(e, t, n, r, i, a, o) {
2535
2580
  }
2536
2581
  e.restore();
2537
2582
  }
2538
- var De = {
2583
+ var Ne = {
2539
2584
  accentbordercallout1: {
2540
2585
  adj: [
2541
2586
  ["adj1", "val 18750"],
@@ -24398,8 +24443,8 @@ var De = {
24398
24443
  ]
24399
24444
  }]
24400
24445
  }
24401
- }, X = 216e5, Oe = Math.PI * 2 / X;
24402
- function ke(e, t, n) {
24446
+ }, X = 216e5, Pe = Math.PI * 2 / X;
24447
+ function Fe(e, t, n) {
24403
24448
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
24404
24449
  Object.assign(c, {
24405
24450
  w: r,
@@ -24488,10 +24533,10 @@ function ke(e, t, n) {
24488
24533
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
24489
24534
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
24490
24535
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
24491
- case "sin": return t[0] * Math.sin(t[1] * Oe);
24492
- case "cos": return t[0] * Math.cos(t[1] * Oe);
24493
- case "tan": return t[0] * Math.tan(t[1] * Oe);
24494
- case "at2": return Math.atan2(t[1], t[0]) / Oe;
24536
+ case "sin": return t[0] * Math.sin(t[1] * Pe);
24537
+ case "cos": return t[0] * Math.cos(t[1] * Pe);
24538
+ case "tan": return t[0] * Math.tan(t[1] * Pe);
24539
+ case "at2": return Math.atan2(t[1], t[0]) / Pe;
24495
24540
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
24496
24541
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
24497
24542
  default: throw Error(`preset-shape: unknown operator "${e}" in "${n}"`);
@@ -24500,8 +24545,8 @@ function ke(e, t, n) {
24500
24545
  }
24501
24546
  //#endregion
24502
24547
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
24503
- var Ae = Math.PI * 2 / 216e5;
24504
- function je(e, t, n, r, i, a, o) {
24548
+ var Ie = Math.PI * 2 / 216e5;
24549
+ function Le(e, t, n, r, i, a, o) {
24505
24550
  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;
24506
24551
  for (let r of t.cmds) switch (r[0]) {
24507
24552
  case "m": {
@@ -24525,7 +24570,7 @@ function je(e, t, n, r, i, a, o) {
24525
24570
  break;
24526
24571
  }
24527
24572
  case "a": {
24528
- let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * Ae, u = n.resolve(r[4]) * Ae, 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;
24573
+ let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * Ie, u = n.resolve(r[4]) * Ie, 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;
24529
24574
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
24530
24575
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
24531
24576
  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));
@@ -24538,26 +24583,26 @@ function je(e, t, n, r, i, a, o) {
24538
24583
  }
24539
24584
  //#endregion
24540
24585
  //#region packages/core/src/shape/preset-geometry/index.ts
24541
- var Z = De;
24542
- function Me(e) {
24586
+ var Z = Ne;
24587
+ function Re(e) {
24543
24588
  return e.toLowerCase() in Z;
24544
24589
  }
24545
- function Ne(e, t, n, r, i, a, o = []) {
24590
+ function ze(e, t, n, r, i, a, o = []) {
24546
24591
  let s = Z[t.toLowerCase()];
24547
24592
  if (!s) return !1;
24548
- let c = ke({
24593
+ let c = Fe({
24549
24594
  w: i,
24550
24595
  h: a,
24551
24596
  adj: o
24552
24597
  }, s.adj, s.gd);
24553
- for (let t of s.paths) je(e, t, c, n, r, i, a);
24598
+ for (let t of s.paths) Le(e, t, c, n, r, i, a);
24554
24599
  return !0;
24555
24600
  }
24556
- var Pe = {
24601
+ var Be = {
24557
24602
  wedgeroundrectcallout: "roundrect",
24558
24603
  wedgeellipsecallout: "ellipse",
24559
24604
  wedgerectcallout: null
24560
- }, Fe = {
24605
+ }, Ve = {
24561
24606
  adj: [],
24562
24607
  gd: [],
24563
24608
  paths: [{
@@ -24591,43 +24636,43 @@ var Pe = {
24591
24636
  ]
24592
24637
  }]
24593
24638
  };
24594
- function Ie(e, t, n) {
24639
+ function He(e, t, n) {
24595
24640
  let r = e[n];
24596
24641
  if (typeof r == "number") return r;
24597
24642
  let i = t.adj[n];
24598
24643
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
24599
24644
  }
24600
- function Le(e, t, n, r, i, a, o, s, c, l) {
24645
+ function Ue(e, t, n, r, i, a, o, s, c, l) {
24601
24646
  let u = t.toLowerCase(), d = Z[u];
24602
24647
  if (!d) return !1;
24603
- if (u in Pe) {
24604
- let e = Ie(o, d, 0), t = Ie(o, d, 1), n = i / 2 + i * e / 1e5, r = a / 2 + a * t / 1e5;
24648
+ if (u in Be) {
24649
+ let e = He(o, d, 0), t = He(o, d, 1), n = i / 2 + i * e / 1e5, r = a / 2 + a * t / 1e5;
24605
24650
  if (n >= 0 && n <= i && r >= 0 && r <= a) {
24606
- let e = Pe[u];
24607
- e === "roundrect" ? (d = Z.roundrect, o = [Ie(o, Z[u], 2)]) : e && Z[e] ? (d = Z[e], o = []) : (d = Fe, o = []);
24651
+ let e = Be[u];
24652
+ e === "roundrect" ? (d = Z.roundrect, o = [He(o, Z[u], 2)]) : e && Z[e] ? (d = Z[e], o = []) : (d = Ve, o = []);
24608
24653
  }
24609
24654
  }
24610
- let f = ke({
24655
+ let f = Fe({
24611
24656
  w: i,
24612
24657
  h: a,
24613
24658
  adj: o
24614
24659
  }, d.adj, d.gd), p = !1;
24615
24660
  for (let t of d.paths) {
24616
- e.beginPath(), je(e, t, f, n, r, i, a);
24661
+ e.beginPath(), Le(e, t, f, n, r, i, a);
24617
24662
  let o = t.fill;
24618
24663
  if (o !== "none" && s != null) {
24619
24664
  e.save(), e.fillStyle = s, e.fill();
24620
- let t = ze(o);
24665
+ let t = Ge(o);
24621
24666
  t && (e.fillStyle = t, e.fill()), e.restore(), p ||= (l(), !0);
24622
24667
  }
24623
24668
  t.stroke && c && c();
24624
24669
  }
24625
24670
  return !0;
24626
24671
  }
24627
- function Re(e, t, n, r, i, a) {
24672
+ function We(e, t, n, r, i, a) {
24628
24673
  let o = Z[e.toLowerCase()];
24629
24674
  if (!o || o.paths.length === 0) return null;
24630
- let s = o.paths[0], c = ke({
24675
+ let s = o.paths[0], c = Fe({
24631
24676
  w: r,
24632
24677
  h: i,
24633
24678
  adj: a
@@ -24661,7 +24706,7 @@ function Re(e, t, n, r, i, a) {
24661
24706
  }
24662
24707
  };
24663
24708
  }
24664
- function ze(e) {
24709
+ function Ge(e) {
24665
24710
  switch (e) {
24666
24711
  case "lighten": return "rgba(255,255,255,0.30)";
24667
24712
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -24672,10 +24717,10 @@ function ze(e) {
24672
24717
  }
24673
24718
  //#endregion
24674
24719
  //#region packages/core/src/shape/effects.ts
24675
- function Be(e, t) {
24720
+ function Ke(e, t) {
24676
24721
  return e * t;
24677
24722
  }
24678
- function Ve(e, t) {
24723
+ function qe(e, t) {
24679
24724
  let n = Math.max(1, Math.ceil(e)), r = Math.max(1, Math.ceil(t));
24680
24725
  if (typeof OffscreenCanvas < "u") return new OffscreenCanvas(n, r);
24681
24726
  if (typeof document < "u") {
@@ -24684,54 +24729,60 @@ function Ve(e, t) {
24684
24729
  }
24685
24730
  return null;
24686
24731
  }
24687
- function He(e) {
24732
+ function Je(e) {
24688
24733
  return e.getContext("2d") ?? null;
24689
24734
  }
24690
- function Ue(e, t, n, r, i, a, o) {
24691
- let s = Ve(a, o);
24735
+ function Ye(e, t, n, r, i, a, o) {
24736
+ let s = qe(a, o);
24692
24737
  if (!s) return;
24693
- let c = He(s);
24738
+ let c = Je(s);
24694
24739
  if (!c) return;
24695
- let l = Be(r.blur, i), u = Be(r.dist, i), d = r.dir * Math.PI / 180, f = Math.cos(d) * u, p = Math.sin(d) * u;
24696
- 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();
24740
+ let l = Ke(r.blur, i), u = Ke(r.dist, i), d = r.dir * Math.PI / 180, f = Math.cos(d) * u, p = Math.sin(d) * u;
24741
+ c.save(), c.fillStyle = A(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();
24697
24742
  }
24698
- function We(e, t, n, r, i, a, o, s) {
24699
- let c = Be(r.radius, i);
24743
+ function Xe(e, t, n, r, i, a, o, s) {
24744
+ let c = Ke(r.radius, i);
24700
24745
  if (c <= 0) {
24701
24746
  t(e);
24702
24747
  return;
24703
24748
  }
24704
- let l = Ve(a, o);
24749
+ let l = qe(a, o);
24705
24750
  if (!l) {
24706
24751
  t(e);
24707
24752
  return;
24708
24753
  }
24709
- let u = He(l);
24754
+ let u = Je(l);
24710
24755
  if (!u) {
24711
24756
  t(e);
24712
24757
  return;
24713
24758
  }
24714
24759
  let d = s ?? t;
24715
- 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();
24760
+ t(u);
24761
+ let f = qe(a, o), p = qe(a, o), m = f ? Je(f) : null, h = p ? Je(p) : null;
24762
+ if (f && m && p && h) {
24763
+ m.fillStyle = "#000", d(m), h.drawImage(l, n.x, n.y, n.w, n.h, n.x - c, n.y - c, n.w + c * 2, n.h + c * 2), h.drawImage(l, 0, 0), h.globalCompositeOperation = "destination-in", h.filter = `blur(${c / 3}px)`, h.drawImage(f, 0, 0), h.filter = "none", h.globalCompositeOperation = "source-over", e.save(), e.drawImage(p, 0, 0), e.restore();
24764
+ return;
24765
+ }
24766
+ e.save(), e.drawImage(l, 0, 0), e.restore();
24716
24767
  }
24717
- function Ge(e, t, n, r, i, a, o) {
24718
- let s = Ve(a, o);
24768
+ function Ze(e, t, n, r, i, a, o) {
24769
+ let s = qe(a, o);
24719
24770
  if (!s) return;
24720
- let c = He(s);
24771
+ let c = Je(s);
24721
24772
  if (!c) return;
24722
- let l = Be(r.blur, i);
24773
+ let l = Ke(r.blur, i);
24723
24774
  c.save(), l > 0 && (c.filter = `blur(${l}px)`), t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-in";
24724
- let u = n.y, d = n.y + n.h, f = c.createLinearGradient(0, d, 0, u), p = Ke(r.stPos), m = Ke(r.endPos);
24775
+ let u = n.y, d = n.y + n.h, f = c.createLinearGradient(0, d, 0, u), p = Qe(r.stPos), m = Qe(r.endPos);
24725
24776
  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();
24726
- let h = Be(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24777
+ let h = Ke(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24727
24778
  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();
24728
24779
  }
24729
- function Ke(e) {
24780
+ function Qe(e) {
24730
24781
  return e < 0 ? 0 : e > 1 ? 1 : e;
24731
24782
  }
24732
24783
  //#endregion
24733
24784
  //#region packages/core/src/shape/scene3d-camera.ts
24734
- var qe = 26, Je = {
24785
+ var $e = 26, et = {
24735
24786
  orthographicFront: {
24736
24787
  kind: "orthographic",
24737
24788
  baseLat: 0,
@@ -24744,52 +24795,52 @@ var qe = 26, Je = {
24744
24795
  baseLat: 0,
24745
24796
  baseLon: 0,
24746
24797
  baseRev: 0,
24747
- fovDeg: qe
24798
+ fovDeg: $e
24748
24799
  },
24749
24800
  perspectiveRelaxed: {
24750
24801
  kind: "perspective",
24751
24802
  baseLat: 0,
24752
24803
  baseLon: 0,
24753
24804
  baseRev: 0,
24754
- fovDeg: qe
24805
+ fovDeg: $e
24755
24806
  },
24756
24807
  perspectiveRelaxedModerately: {
24757
24808
  kind: "perspective",
24758
24809
  baseLat: 0,
24759
24810
  baseLon: 0,
24760
24811
  baseRev: 0,
24761
- fovDeg: qe
24812
+ fovDeg: $e
24762
24813
  },
24763
24814
  perspectiveAbove: {
24764
24815
  kind: "perspective",
24765
24816
  baseLat: -20,
24766
24817
  baseLon: 0,
24767
24818
  baseRev: 0,
24768
- fovDeg: qe
24819
+ fovDeg: $e
24769
24820
  },
24770
24821
  perspectiveBelow: {
24771
24822
  kind: "perspective",
24772
24823
  baseLat: 20,
24773
24824
  baseLon: 0,
24774
24825
  baseRev: 0,
24775
- fovDeg: qe
24826
+ fovDeg: $e
24776
24827
  },
24777
24828
  perspectiveLeft: {
24778
24829
  kind: "perspective",
24779
24830
  baseLat: 0,
24780
24831
  baseLon: -20,
24781
24832
  baseRev: 0,
24782
- fovDeg: qe
24833
+ fovDeg: $e
24783
24834
  },
24784
24835
  perspectiveRight: {
24785
24836
  kind: "perspective",
24786
24837
  baseLat: 0,
24787
24838
  baseLon: 20,
24788
24839
  baseRev: 0,
24789
- fovDeg: qe
24840
+ fovDeg: $e
24790
24841
  }
24791
24842
  };
24792
- function Ye(e, t) {
24843
+ function tt(e, t) {
24793
24844
  let n = Array(9).fill(0);
24794
24845
  for (let r = 0; r < 3; r++) for (let i = 0; i < 3; i++) {
24795
24846
  let a = 0;
@@ -24798,7 +24849,7 @@ function Ye(e, t) {
24798
24849
  }
24799
24850
  return n;
24800
24851
  }
24801
- function Xe(e) {
24852
+ function nt(e) {
24802
24853
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24803
24854
  return [
24804
24855
  1,
@@ -24812,7 +24863,7 @@ function Xe(e) {
24812
24863
  n
24813
24864
  ];
24814
24865
  }
24815
- function Ze(e) {
24866
+ function rt(e) {
24816
24867
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24817
24868
  return [
24818
24869
  n,
@@ -24826,7 +24877,7 @@ function Ze(e) {
24826
24877
  n
24827
24878
  ];
24828
24879
  }
24829
- function Qe(e) {
24880
+ function it(e) {
24830
24881
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24831
24882
  return [
24832
24883
  n,
@@ -24840,22 +24891,22 @@ function Qe(e) {
24840
24891
  1
24841
24892
  ];
24842
24893
  }
24843
- function $e(e, t, n, r) {
24894
+ function at(e, t, n, r) {
24844
24895
  return [
24845
24896
  e[0] * t + e[1] * n + e[2] * r,
24846
24897
  e[3] * t + e[4] * n + e[5] * r,
24847
24898
  e[6] * t + e[7] * n + e[8] * r
24848
24899
  ];
24849
24900
  }
24850
- function et(e, t) {
24901
+ function ot(e, t) {
24851
24902
  let n = t ? t.lat : e.baseLat, r = t ? t.lon : e.baseLon;
24852
- return Ye(Qe(-(t ? t.rev : e.baseRev)), Ye(Xe(-n), Ze(-r)));
24903
+ return tt(it(-(t ? t.rev : e.baseRev)), tt(nt(-n), rt(-r)));
24853
24904
  }
24854
- function tt(e) {
24855
- return Je[e] ?? Je.orthographicFront;
24905
+ function st(e) {
24906
+ return et[e] ?? et.orthographicFront;
24856
24907
  }
24857
- function nt(e, t, n) {
24858
- let r = tt(e.prst), i = et(r, e.rot);
24908
+ function ct(e, t, n) {
24909
+ let r = st(e.prst), i = ot(r, e.rot);
24859
24910
  if (t <= 0 || n <= 0) return {
24860
24911
  corners: [
24861
24912
  {
@@ -24887,11 +24938,11 @@ function nt(e, t, n) {
24887
24938
  if (r.kind === "perspective") {
24888
24939
  let t = e.fov ?? r.fovDeg, n = Math.max(1, Math.min(179, t)) * Math.PI / 180, a = l / Math.tan(n / 2);
24889
24940
  u = s.map(([e, t]) => {
24890
- let [n, r, o] = $e(i, e, t, 0), s = a - o, c = a / (Math.abs(s) < 1e-6 ? 1e-6 * Math.sign(s || 1) : s);
24941
+ let [n, r, o] = at(i, e, t, 0), s = a - o, c = a / (Math.abs(s) < 1e-6 ? 1e-6 * Math.sign(s || 1) : s);
24891
24942
  return [n * c, r * c];
24892
24943
  });
24893
24944
  } else u = s.map(([e, t]) => {
24894
- let [n, r] = $e(i, e, t, 0);
24945
+ let [n, r] = at(i, e, t, 0);
24895
24946
  return [n, r];
24896
24947
  });
24897
24948
  u = u.map(([e, t]) => [e * c, t * c]);
@@ -24916,18 +24967,18 @@ function nt(e, t, n) {
24916
24967
  isIdentity: E
24917
24968
  };
24918
24969
  }
24919
- function rt(e) {
24920
- let { isIdentity: t } = nt(e, 1e3, 1e3);
24970
+ function lt(e) {
24971
+ let { isIdentity: t } = ct(e, 1e3, 1e3);
24921
24972
  return !t;
24922
24973
  }
24923
- function it(e, t, n, r) {
24924
- let i = tt(e.prst), a = et(i, e.rot);
24974
+ function ut(e, t, n, r) {
24975
+ let i = st(e.prst), a = ot(i, e.rot);
24925
24976
  if (t <= 0 || n <= 0 || r === 0) return {
24926
24977
  x: 0,
24927
24978
  y: 0
24928
24979
  };
24929
24980
  let o = t / 2, s = n / 2, c = Math.max(o, s), l = e.zoom ?? 1, u = (t) => {
24930
- let [n, r, o] = $e(a, 0, 0, t);
24981
+ let [n, r, o] = at(a, 0, 0, t);
24931
24982
  if (i.kind === "perspective") {
24932
24983
  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);
24933
24984
  return [n * d * l, r * d * l];
@@ -24941,7 +24992,7 @@ function it(e, t, n, r) {
24941
24992
  }
24942
24993
  //#endregion
24943
24994
  //#region packages/core/src/shape/scene3d-draw.ts
24944
- function at(e, t, n, r) {
24995
+ function dt(e, t, n, r) {
24945
24996
  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;
24946
24997
  if (Math.abs(m) < 1e-12 && Math.abs(_) < 1e-12) v = 0, y = 0;
24947
24998
  else {
@@ -24961,15 +25012,15 @@ function at(e, t, n, r) {
24961
25012
  1
24962
25013
  ];
24963
25014
  }
24964
- function ot(e, t, n) {
25015
+ function ft(e, t, n) {
24965
25016
  let r = e[6] * t + e[7] * n + e[8];
24966
25017
  return {
24967
25018
  x: (e[0] * t + e[1] * n + e[2]) / r,
24968
25019
  y: (e[3] * t + e[4] * n + e[5]) / r
24969
25020
  };
24970
25021
  }
24971
- var st = 1;
24972
- function ct(e, t) {
25022
+ var pt = 1;
25023
+ function mt(e, t) {
24973
25024
  let [n, r, i, a, o, s] = e, [c, l, u, d, f, p] = t;
24974
25025
  return [
24975
25026
  n * c + i * l,
@@ -24980,13 +25031,13 @@ function ct(e, t) {
24980
25031
  r * f + a * p + s
24981
25032
  ];
24982
25033
  }
24983
- function lt(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25034
+ function ht(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24984
25035
  let p = c - o, m = l - s;
24985
25036
  if (p <= 0 || m <= 0) return;
24986
- 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 = st * p / y, S = st * 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;
25037
+ 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 = pt * p / y, S = pt * 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;
24987
25038
  if (D <= 0 || O <= 0) return;
24988
25039
  e.save();
24989
- let [k, A, j, M, N, P] = ct(i, [
25040
+ let [k, A, j, M, N, P] = mt(i, [
24990
25041
  h,
24991
25042
  g,
24992
25043
  _,
@@ -24996,22 +25047,22 @@ function lt(e, t, n, r, i, a, o, s, c, l, u, d, f) {
24996
25047
  ]);
24997
25048
  e.setTransform(k, A, j, M, N, P), e.drawImage(t, C, w, D, O, C, w, D, O), e.restore();
24998
25049
  }
24999
- function ut(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25000
- let p = ot(o, s, c), m = ot(o, l, c), h = ot(o, s, u), g = ot(o, l, u), _ = (s + l) / 2, v = (c + u) / 2, y = ot(o, _, v), b = {
25050
+ function gt(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25051
+ let p = ft(o, s, c), m = ft(o, l, c), h = ft(o, s, u), g = ft(o, l, u), _ = (s + l) / 2, v = (c + u) / 2, y = ft(o, _, v), b = {
25001
25052
  x: (p.x + m.x + h.x + g.x) / 4,
25002
25053
  y: (p.y + m.y + h.y + g.y) / 4
25003
- }, x = ft(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
25054
+ }, x = vt(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
25004
25055
  if (f <= 0 || S <= d) {
25005
- lt(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
25056
+ ht(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
25006
25057
  return;
25007
25058
  }
25008
- l - s >= u - c ? (ut(e, t, n, r, i, a, o, s, c, _, u, d, f - 1), ut(e, t, n, r, i, a, o, _, c, l, u, d, f - 1)) : (ut(e, t, n, r, i, a, o, s, c, l, v, d, f - 1), ut(e, t, n, r, i, a, o, s, v, l, u, d, f - 1));
25059
+ l - s >= u - c ? (gt(e, t, n, r, i, a, o, s, c, _, u, d, f - 1), gt(e, t, n, r, i, a, o, _, c, l, u, d, f - 1)) : (gt(e, t, n, r, i, a, o, s, c, l, v, d, f - 1), gt(e, t, n, r, i, a, o, s, v, l, u, d, f - 1));
25009
25060
  }
25010
- function dt(e, t, n, r, i, a = .5) {
25061
+ function _t(e, t, n, r, i, a = .5) {
25011
25062
  if (n <= 0 || r <= 0) return;
25012
25063
  let [o, s, c, l] = i;
25013
25064
  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;
25014
- let u = at(i[0], i[1], i[2], i[3]);
25065
+ let u = dt(i[0], i[1], i[2], i[3]);
25015
25066
  if (!u) return;
25016
25067
  let d = t.getTransform(), f = [
25017
25068
  d.a,
@@ -25020,14 +25071,14 @@ function dt(e, t, n, r, i, a = .5) {
25020
25071
  d.d,
25021
25072
  d.e,
25022
25073
  d.f
25023
- ], p = ft(f);
25024
- _t(e, t, n, r, i, f, p, u, a, 14) || (ht(), 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(), ut(t, e, n, r, f, p, u, 0, 0, 1, 1, a, 14), t.restore());
25074
+ ], p = vt(f);
25075
+ Ct(e, t, n, r, i, f, p, u, a, 14) || (xt(), 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(), gt(t, e, n, r, f, p, u, 0, 0, 1, 1, a, 14), t.restore());
25025
25076
  }
25026
- function ft(e) {
25077
+ function vt(e) {
25027
25078
  return Math.sqrt(Math.abs(e[0] * e[3] - e[1] * e[2])) || 1;
25028
25079
  }
25029
- function pt(e, t, n) {
25030
- let r = at(e[0], e[1], e[2], e[3]);
25080
+ function yt(e, t, n) {
25081
+ let r = dt(e[0], e[1], e[2], e[3]);
25031
25082
  if (!r) return null;
25032
25083
  let i = [
25033
25084
  [-t, -n],
@@ -25037,16 +25088,16 @@ function pt(e, t, n) {
25037
25088
  ], a = [];
25038
25089
  for (let [e, t] of i) {
25039
25090
  if (!(r[6] * e + r[7] * t + r[8] > 1e-9)) return null;
25040
- a.push(ot(r, e, t));
25091
+ a.push(ft(r, e, t));
25041
25092
  }
25042
25093
  return a;
25043
25094
  }
25044
- var mt = !1;
25045
- function ht() {
25046
- mt || (mt = !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."));
25095
+ var bt = !1;
25096
+ function xt() {
25097
+ bt || (bt = !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."));
25047
25098
  }
25048
- var gt = 2;
25049
- function _t(e, t, n, r, i, a, o, s, c, l) {
25099
+ var St = 2;
25100
+ function Ct(e, t, n, r, i, a, o, s, c, l) {
25050
25101
  let u = i.map((e) => ({
25051
25102
  x: a[0] * e.x + a[2] * e.y + a[4],
25052
25103
  y: a[1] * e.x + a[3] * e.y + a[5]
@@ -25055,11 +25106,11 @@ function _t(e, t, n, r, i, a, o, s, c, l) {
25055
25106
  d = Math.floor(d) - 1, f = Math.floor(f) - 1, p = Math.ceil(p) + 1, m = Math.ceil(m) + 1;
25056
25107
  let h = p - d, g = m - f;
25057
25108
  if (h <= 0 || g <= 0) return !1;
25058
- let _ = Math.max(1, Math.ceil(h * gt)), v = Math.max(1, Math.ceil(g * gt)), y = Ve(_, v);
25109
+ let _ = Math.max(1, Math.ceil(h * St)), v = Math.max(1, Math.ceil(g * St)), y = qe(_, v);
25059
25110
  if (!y || y.width !== _ || y.height !== v) return !1;
25060
25111
  let b = y.getContext("2d") ?? null;
25061
25112
  if (!b) return !1;
25062
- let x = gt, S = [
25113
+ let x = St, S = [
25063
25114
  a[0] * x,
25064
25115
  a[1] * x,
25065
25116
  a[2] * x,
@@ -25067,18 +25118,18 @@ function _t(e, t, n, r, i, a, o, s, c, l) {
25067
25118
  (a[4] - d) * x,
25068
25119
  (a[5] - f) * x
25069
25120
  ];
25070
- 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(), ut(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);
25121
+ 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(), gt(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);
25071
25122
  let C = t.imageSmoothingEnabled, w = t.imageSmoothingQuality;
25072
25123
  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;
25073
25124
  }
25074
25125
  //#endregion
25075
25126
  //#region packages/core/src/shape/bevel-shading.ts
25076
- function vt(e, t) {
25127
+ function wt(e, t) {
25077
25128
  if (t <= 0) return () => 1;
25078
25129
  let n = (e) => Math.max(0, Math.min(1, e / t));
25079
25130
  switch (e) {
25080
25131
  case "hardEdge": {
25081
- let e = Et;
25132
+ let e = Mt;
25082
25133
  return (t) => {
25083
25134
  let r = Math.min(1, n(t) / e);
25084
25135
  return r * r * (3 - 2 * r);
@@ -25098,7 +25149,7 @@ function vt(e, t) {
25098
25149
  };
25099
25150
  }
25100
25151
  }
25101
- function yt(e) {
25152
+ function Tt(e) {
25102
25153
  let t = e.length, n = new Float64Array(t);
25103
25154
  if (t === 0) return n;
25104
25155
  let r = new Int32Array(t), i = new Float64Array(t + 1), a = 0;
@@ -25116,7 +25167,7 @@ function yt(e) {
25116
25167
  }
25117
25168
  return n;
25118
25169
  }
25119
- function bt(e, t = 3) {
25170
+ function Et(e, t = 3) {
25120
25171
  if (e <= 0) return Array(t).fill(1);
25121
25172
  let n = Math.sqrt(12 * e * e / t + 1), r = Math.floor(n);
25122
25173
  r % 2 == 0 && r--;
@@ -25124,7 +25175,7 @@ function bt(e, t = 3) {
25124
25175
  for (let e = 0; e < t; e++) s.push(e < o ? r : i);
25125
25176
  return s;
25126
25177
  }
25127
- function xt(e, t, n, r, i, a) {
25178
+ function Dt(e, t, n, r, i, a) {
25128
25179
  let o = 1 / (2 * i + 1);
25129
25180
  if (a) for (let a = 0; a < r; a++) {
25130
25181
  let r = a * n, s = 0;
@@ -25145,29 +25196,29 @@ function xt(e, t, n, r, i, a) {
25145
25196
  }
25146
25197
  }
25147
25198
  }
25148
- function St(e, t, n, r) {
25199
+ function Ot(e, t, n, r) {
25149
25200
  let i = Float64Array.from(e);
25150
25201
  if (r <= 0 || t <= 0 || n <= 0) return i;
25151
25202
  let a = new Float64Array(t * n);
25152
- for (let e of bt(r, 3)) {
25203
+ for (let e of Et(r, 3)) {
25153
25204
  let r = Math.max(1, (e - 1) / 2);
25154
- xt(i, a, t, n, r, !0), xt(a, i, t, n, r, !1);
25205
+ Dt(i, a, t, n, r, !0), Dt(a, i, t, n, r, !1);
25155
25206
  }
25156
25207
  return i;
25157
25208
  }
25158
- function Ct(e, t, n, r = 128) {
25209
+ function kt(e, t, n, r = 128) {
25159
25210
  let i = new Float64Array(t * n);
25160
25211
  for (let a = 0; a < t * n; a++) i[a] = (e[a] ?? 0) >= r ? 0x56bc75e2d63100000 : 0;
25161
25212
  let a = new Float64Array(n);
25162
25213
  for (let e = 0; e < t; e++) {
25163
25214
  for (let r = 0; r < n; r++) a[r] = i[r * t + e];
25164
- let r = yt(a);
25215
+ let r = Tt(a);
25165
25216
  for (let a = 0; a < n; a++) i[a * t + e] = r[a];
25166
25217
  }
25167
25218
  let o = new Float64Array(t);
25168
25219
  for (let e = 0; e < n; e++) {
25169
25220
  for (let n = 0; n < t; n++) o[n] = i[e * t + n];
25170
- let n = yt(o);
25221
+ let n = Tt(o);
25171
25222
  for (let r = 0; r < t; r++) i[e * t + r] = n[r];
25172
25223
  }
25173
25224
  for (let e = 0; e < n; e++) for (let r = 0; r < t; r++) {
@@ -25179,15 +25230,15 @@ function Ct(e, t, n, r = 128) {
25179
25230
  for (let e = 0; e < t * n; e++) i[e] = Math.sqrt(i[e]);
25180
25231
  return i;
25181
25232
  }
25182
- var wt = .25, Tt = .35, Et = .5;
25183
- function Dt(e, t, n, r, i, a) {
25233
+ var At = .25, jt = .35, Mt = .5;
25234
+ function Nt(e, t, n, r, i, a) {
25184
25235
  let o = new Float32Array(t * n * 3), s = new Uint8Array(t * n), c = new Float32Array(t * n);
25185
25236
  if (t <= 0 || n <= 0) return {
25186
25237
  normals: o,
25187
25238
  bandMask: s,
25188
25239
  bandWeight: c
25189
25240
  };
25190
- let l = Ct(e, t, n), u = vt(i, r), d = (n, r) => (e[r * t + n] ?? 0) >= 128, f = (r > 0 ? a / r : 0) * r, p = St(l, t, n, Math.max(1, r * wt)), m = (e) => {
25241
+ let l = kt(e, t, n), u = wt(i, r), d = (n, r) => (e[r * t + n] ?? 0) >= 128, f = (r > 0 ? a / r : 0) * r, p = Ot(l, t, n, Math.max(1, r * At)), m = (e) => {
25191
25242
  let t = u(Math.max(0, e - .5));
25192
25243
  return u(e + .5) - t;
25193
25244
  };
@@ -25202,9 +25253,9 @@ function Dt(e, t, n, r, i, a) {
25202
25253
  o[a * 3 + 2] = 1;
25203
25254
  continue;
25204
25255
  }
25205
- let g = u / r, _ = 1 - Tt, v = 1;
25256
+ let g = u / r, _ = 1 - jt, v = 1;
25206
25257
  if (g > _) {
25207
- let e = Math.min(1, (g - _) / Tt);
25258
+ let e = Math.min(1, (g - _) / jt);
25208
25259
  v = 1 - e * e * (3 - 2 * e);
25209
25260
  }
25210
25261
  c[a] = v;
@@ -25219,7 +25270,7 @@ function Dt(e, t, n, r, i, a) {
25219
25270
  bandWeight: c
25220
25271
  };
25221
25272
  }
25222
- var Ot = 35 * Math.PI / 180, kt = 12 * Math.PI / 180, At = {
25273
+ var Pt = 35 * Math.PI / 180, Ft = 12 * Math.PI / 180, It = {
25223
25274
  t: {
25224
25275
  x: 0,
25225
25276
  y: -1
@@ -25253,22 +25304,22 @@ var Ot = 35 * Math.PI / 180, kt = 12 * Math.PI / 180, At = {
25253
25304
  y: 1
25254
25305
  }
25255
25306
  };
25256
- function jt(e, t, n) {
25307
+ function Lt(e, t, n) {
25257
25308
  let r = n * Math.PI / 180, i = Math.cos(r), a = Math.sin(r);
25258
25309
  return {
25259
25310
  x: e * i - t * a,
25260
25311
  y: e * a + t * i
25261
25312
  };
25262
25313
  }
25263
- function Mt(e, t, n) {
25264
- let r = At[t] ?? At.t;
25265
- return n && n.rev && (r = jt(r.x, r.y, n.rev)), Pt(r.x, r.y, Ot);
25314
+ function Rt(e, t, n) {
25315
+ let r = It[t] ?? It.t;
25316
+ return n && n.rev && (r = Lt(r.x, r.y, n.rev)), Bt(r.x, r.y, Pt);
25266
25317
  }
25267
- function Nt(e) {
25318
+ function zt(e) {
25268
25319
  let t = Math.hypot(e.x, e.y) || 1;
25269
- return Pt(-e.x / t, -e.y / t, kt);
25320
+ return Bt(-e.x / t, -e.y / t, Ft);
25270
25321
  }
25271
- function Pt(e, t, n) {
25322
+ function Bt(e, t, n) {
25272
25323
  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;
25273
25324
  return {
25274
25325
  x: o / l,
@@ -25276,7 +25327,7 @@ function Pt(e, t, n) {
25276
25327
  z: c / l
25277
25328
  };
25278
25329
  }
25279
- var Ft = 2, It = {
25330
+ var Vt = 2, Ht = {
25280
25331
  matte: {
25281
25332
  ambient: .62,
25282
25333
  diffuse: .45,
@@ -25289,8 +25340,8 @@ var Ft = 2, It = {
25289
25340
  specular: .35,
25290
25341
  shininess: 22
25291
25342
  }
25292
- }, Lt = .8;
25293
- function Rt(e) {
25343
+ }, Ut = .8;
25344
+ function Wt(e) {
25294
25345
  switch (e) {
25295
25346
  case "plastic":
25296
25347
  case "metal":
@@ -25301,8 +25352,8 @@ function Rt(e) {
25301
25352
  default: return "matte";
25302
25353
  }
25303
25354
  }
25304
- function zt(e, t, n = !0) {
25305
- let r = It[e], i = {
25355
+ function Gt(e, t, n = !0) {
25356
+ let r = Ht[e], i = {
25306
25357
  light: t,
25307
25358
  material: e,
25308
25359
  ambient: r.ambient,
@@ -25310,9 +25361,9 @@ function zt(e, t, n = !0) {
25310
25361
  specular: r.specular,
25311
25362
  shininess: r.shininess
25312
25363
  };
25313
- return n && (i.fillLight = Nt(t), i.fillDiffuse = i.diffuse * Lt), i;
25364
+ return n && (i.fillLight = zt(t), i.fillDiffuse = i.diffuse * Ut), i;
25314
25365
  }
25315
- function Bt(e, t) {
25366
+ function Kt(e, t) {
25316
25367
  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;
25317
25368
  if (t.fillLight && t.fillDiffuse) {
25318
25369
  let n = e.x * t.fillLight.x + e.y * t.fillLight.y + e.z * t.fillLight.z;
@@ -25325,14 +25376,14 @@ function Bt(e, t) {
25325
25376
  }
25326
25377
  return Math.max(0, t.ambient + r + i + a);
25327
25378
  }
25328
- function Vt(e, t) {
25379
+ function qt(e, t) {
25329
25380
  let n = e.canvas.width, r = e.canvas.height;
25330
25381
  if (n <= 0 || r <= 0) return;
25331
25382
  let i = t.widthPx;
25332
25383
  if (i < .75) return;
25333
25384
  let a = e.getImageData(0, 0, n, r), o = a.data, s = new Uint8ClampedArray(n * r);
25334
25385
  for (let e = 0; e < n * r; e++) s[e] = o[e * 4 + 3];
25335
- let { bandMask: c, bandWeight: l, normals: u } = Dt(s, n, r, i, t.prst, t.heightPx), d = zt(t.material, t.light), f = Bt({
25386
+ let { bandMask: c, bandWeight: l, normals: u } = Nt(s, n, r, i, t.prst, t.heightPx), d = Gt(t.material, t.light), f = Kt({
25336
25387
  x: 0,
25337
25388
  y: 0,
25338
25389
  z: 1
@@ -25343,13 +25394,13 @@ function Vt(e, t) {
25343
25394
  if (n <= 0) continue;
25344
25395
  let r = u[e * 3], i = u[e * 3 + 1], a = u[e * 3 + 2];
25345
25396
  t.bottom && (r = -r, i = -i);
25346
- let s = 1 + (Bt({
25397
+ let s = 1 + (Kt({
25347
25398
  x: r,
25348
25399
  y: i,
25349
25400
  z: a
25350
25401
  }, d) / f - 1) * n, p = e * 4;
25351
25402
  if (s >= 1) {
25352
- let e = Math.min(1, (s - 1) * Ft);
25403
+ let e = Math.min(1, (s - 1) * Vt);
25353
25404
  for (let t = 0; t < 3; t++) {
25354
25405
  let n = Math.min(255, o[p + t] * s);
25355
25406
  o[p + t] = n + (255 - n) * e;
@@ -25358,7 +25409,7 @@ function Vt(e, t) {
25358
25409
  }
25359
25410
  e.putImageData(a, 0, 0);
25360
25411
  }
25361
- function Ht(e, t) {
25412
+ function Jt(e, t) {
25362
25413
  let n = e.canvas.width, r = e.canvas.height;
25363
25414
  if (n <= 0 || r <= 0) return;
25364
25415
  let i = t.offsetX, a = t.offsetY, o = Math.hypot(i, a);
@@ -25385,7 +25436,7 @@ function Ht(e, t) {
25385
25436
  }
25386
25437
  //#endregion
25387
25438
  //#region packages/core/src/sparkline/renderer.ts
25388
- function Ut(e, t, n) {
25439
+ function Yt(e, t, n) {
25389
25440
  let { values: r } = n;
25390
25441
  if (r.length === 0 || t.w <= 0 || t.h <= 0) return;
25391
25442
  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");
@@ -25394,11 +25445,11 @@ function Ut(e, t, n) {
25394
25445
  m === h && (h = m + 1, --m);
25395
25446
  let g = h - m, _ = (e) => c + u - (e - m) / g * u;
25396
25447
  if (n.kind === "stem") {
25397
- Kt(e, n, s, c, l, u);
25448
+ Qt(e, n, s, c, l, u);
25398
25449
  return;
25399
25450
  }
25400
25451
  if (n.kind === "column") {
25401
- Gt(e, n, r, s, c, l, u, m, h);
25452
+ Zt(e, n, r, s, c, l, u, m, h);
25402
25453
  return;
25403
25454
  }
25404
25455
  if (n.displayXAxis && m < 0 && h > 0) {
@@ -25407,7 +25458,7 @@ function Ut(e, t, n) {
25407
25458
  e.moveTo(s, t), e.lineTo(s + l, t), e.stroke(), e.restore();
25408
25459
  }
25409
25460
  let v = r.length, y = (e) => v === 1 ? s + l / 2 : s + e / (v - 1) * l;
25410
- e.save(), e.strokeStyle = i, e.lineCap = "round", e.lineJoin = "round", e.lineWidth = (n.lineWeight ?? .75) * L, e.beginPath();
25461
+ e.save(), e.strokeStyle = i, e.lineCap = "round", e.lineJoin = "round", e.lineWidth = (n.lineWeight ?? .75) * R, e.beginPath();
25411
25462
  let b = !1, x = n.displayEmptyCellsAs ?? "gap";
25412
25463
  for (let t = 0; t < v; t++) {
25413
25464
  let n = r[t];
@@ -25422,7 +25473,7 @@ function Ut(e, t, n) {
25422
25473
  b ? e.lineTo(i, a) : (e.moveTo(i, a), b = !0);
25423
25474
  }
25424
25475
  e.stroke(), e.restore();
25425
- let S = Math.max(1, Math.min(2.5, u * .12)), C = Wt(r, n);
25476
+ let S = Math.max(1, Math.min(2.5, u * .12)), C = Xt(r, n);
25426
25477
  for (let t = 0; t < v; t++) {
25427
25478
  let a = r[t];
25428
25479
  if (a == null) continue;
@@ -25430,7 +25481,7 @@ function Ut(e, t, n) {
25430
25481
  (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());
25431
25482
  }
25432
25483
  }
25433
- function Wt(e, t) {
25484
+ function Xt(e, t) {
25434
25485
  let n = e.map(() => null), r = e.map((e) => typeof e == "number" ? e : null), i = r.findIndex((e) => e != null), a = -1;
25435
25486
  for (let e = r.length - 1; e >= 0; e--) if (r[e] != null) {
25436
25487
  a = e;
@@ -25445,10 +25496,10 @@ function Wt(e, t) {
25445
25496
  if (t.low && t.colorLow && !Number.isNaN(c)) for (let e = 0; e < r.length; e++) r[e] === c && (n[e] = t.colorLow);
25446
25497
  return n;
25447
25498
  }
25448
- function Gt(e, t, n, r, i, a, o, s, c) {
25499
+ function Zt(e, t, n, r, i, a, o, s, c) {
25449
25500
  let l = n.length;
25450
25501
  if (l === 0) return;
25451
- 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 = Wt(n, t);
25502
+ 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 = Xt(n, t);
25452
25503
  for (let i = 0; i < l; i++) {
25453
25504
  let a = n[i];
25454
25505
  if (a == null) continue;
@@ -25456,10 +25507,10 @@ function Gt(e, t, n, r, i, a, o, s, c) {
25456
25507
  e.save(), e.fillStyle = o, e.fillRect(c, Math.min(p, s), l, Math.abs(p - s)), e.restore();
25457
25508
  }
25458
25509
  }
25459
- function Kt(e, t, n, r, i, a) {
25510
+ function Qt(e, t, n, r, i, a) {
25460
25511
  let o = t.values.length;
25461
25512
  if (o === 0) return;
25462
- let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = Wt(t.values, t);
25513
+ let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = Xt(t.values, t);
25463
25514
  for (let r = 0; r < o; r++) {
25464
25515
  let i = t.values[r];
25465
25516
  if (i == null || i === 0) continue;
@@ -25469,13 +25520,13 @@ function Kt(e, t, n, r, i, a) {
25469
25520
  }
25470
25521
  //#endregion
25471
25522
  //#region packages/core/src/math/mathml.ts
25472
- var qt = {
25523
+ var $t = {
25473
25524
  "&": "&amp;",
25474
25525
  "<": "&lt;",
25475
25526
  ">": "&gt;",
25476
25527
  "\"": "&quot;"
25477
- }, Q = (e) => e.replace(/[&<>"]/g, (e) => qt[e]);
25478
- function Jt(e) {
25528
+ }, Q = (e) => e.replace(/[&<>"]/g, (e) => $t[e]);
25529
+ function en(e) {
25479
25530
  switch (e) {
25480
25531
  case "roman": return "normal";
25481
25532
  case "bold": return "bold";
@@ -25483,9 +25534,9 @@ function Jt(e) {
25483
25534
  case "italic": return null;
25484
25535
  }
25485
25536
  }
25486
- var Yt = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), Xt = "+−±∓×÷·∗⋅∘∙*/", Zt = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", Qt = "([{⟨⌈⌊", $t = ")]}⟩⌉⌋", en = ",;";
25487
- function tn(e, t) {
25488
- let n = Jt(t), r = n ? ` mathvariant="${n}"` : "", i = "", a = "", o = () => {
25537
+ var tn = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), nn = "+−±∓×÷·∗⋅∘∙*/", rn = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", an = "([{⟨⌈⌊", on = ")]}⟩⌉⌋", sn = ",;";
25538
+ function cn(e, t) {
25539
+ let n = en(t), r = n ? ` mathvariant="${n}"` : "", i = "", a = "", o = () => {
25489
25540
  a &&= (i += `<mn${r}>${Q(a)}</mn>`, "");
25490
25541
  };
25491
25542
  for (let t of e) {
@@ -25497,42 +25548,42 @@ function tn(e, t) {
25497
25548
  a += t;
25498
25549
  continue;
25499
25550
  }
25500
- o(), Xt.includes(t) || Zt.includes(t) || en.includes(t) ? i += `<mo>${Q(t)}</mo>` : Qt.includes(t) || $t.includes(t) ? i += `<mo fence="true" stretchy="false">${Q(t)}</mo>` : i += `<mi${r}>${Q(t)}</mi>`;
25551
+ o(), nn.includes(t) || rn.includes(t) || sn.includes(t) ? i += `<mo>${Q(t)}</mo>` : an.includes(t) || on.includes(t) ? i += `<mo fence="true" stretchy="false">${Q(t)}</mo>` : i += `<mi${r}>${Q(t)}</mi>`;
25501
25552
  }
25502
25553
  return o(), i;
25503
25554
  }
25504
- function nn(e) {
25505
- return e.map(rn).join("");
25555
+ function ln(e) {
25556
+ return e.map(un).join("");
25506
25557
  }
25507
25558
  function $(e) {
25508
- return `<mrow>${nn(e)}</mrow>`;
25559
+ return `<mrow>${ln(e)}</mrow>`;
25509
25560
  }
25510
- function rn(e) {
25561
+ function un(e) {
25511
25562
  switch (e.kind) {
25512
- case "run": return tn(e.text, e.style);
25563
+ case "run": return cn(e.text, e.style);
25513
25564
  case "group": return $(e.items);
25514
25565
  case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${$(e.num)}${$(e.den)}</mfrac>`;
25515
25566
  case "sup": return `<msup>${$(e.base)}${$(e.sup ?? [])}</msup>`;
25516
25567
  case "sub": return `<msub>${$(e.base)}${$(e.sub ?? [])}</msub>`;
25517
25568
  case "subSup": return `<msubsup>${$(e.base)}${$(e.sub ?? [])}${$(e.sup ?? [])}</msubsup>`;
25518
- case "nary": return dn(e);
25519
- case "delimiter": return fn(e);
25520
- case "radical": return e.index && e.index.length ? `<mroot>${$(e.radicand)}${$(e.index)}</mroot>` : `<msqrt>${nn(e.radicand)}</msqrt>`;
25521
- case "limit": return cn(e);
25522
- case "array": return ln(e);
25569
+ case "nary": return _n(e);
25570
+ case "delimiter": return vn(e);
25571
+ case "radical": return e.index && e.index.length ? `<mroot>${$(e.radicand)}${$(e.index)}</mroot>` : `<msqrt>${ln(e.radicand)}</msqrt>`;
25572
+ case "limit": return mn(e);
25573
+ case "array": return hn(e);
25523
25574
  case "groupChr": {
25524
- let t = $(e.base), n = Yt.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${Q(e.char)}</mo>`;
25575
+ let t = $(e.base), n = tn.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${Q(e.char)}</mo>`;
25525
25576
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
25526
25577
  }
25527
25578
  case "bar": {
25528
25579
  let t = $(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
25529
25580
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
25530
25581
  }
25531
- case "accent": return sn(e);
25582
+ case "accent": return pn(e);
25532
25583
  case "func": return `<mrow>${$(e.name)}<mo>&#x2061;</mo>${$(e.arg)}</mrow>`;
25533
25584
  }
25534
25585
  }
25535
- var an = {
25586
+ var dn = {
25536
25587
  "̀": "`",
25537
25588
  "́": "´",
25538
25589
  "̂": "^",
@@ -25543,7 +25594,7 @@ var an = {
25543
25594
  "̌": "ˇ",
25544
25595
  "⃗": "→",
25545
25596
  "⃖": "←"
25546
- }, on = new Set([
25597
+ }, fn = new Set([
25547
25598
  "̅",
25548
25599
  "̄",
25549
25600
  "¯",
@@ -25551,45 +25602,45 @@ var an = {
25551
25602
  "̲",
25552
25603
  "̳"
25553
25604
  ]);
25554
- function sn(e) {
25605
+ function pn(e) {
25555
25606
  let t = $(e.base);
25556
- if (on.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25557
- let n = an[e.char] ?? e.char;
25607
+ if (fn.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25608
+ let n = dn[e.char] ?? e.char;
25558
25609
  return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${Q(n)}</mo></mover>`;
25559
25610
  }
25560
- function cn(e) {
25611
+ function mn(e) {
25561
25612
  let t = $(e.base), n = e.lower && e.lower.length ? $(e.lower) : null, r = e.upper && e.upper.length ? $(e.upper) : null;
25562
25613
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
25563
25614
  }
25564
- function ln(e) {
25615
+ function hn(e) {
25565
25616
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
25566
25617
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
25567
- let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${nn(e)}</mtd>`).join("")}</mtr>`).join("");
25618
+ let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${ln(e)}</mtd>`).join("")}</mtr>`).join("");
25568
25619
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
25569
25620
  }
25570
- var un = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
25571
- function dn(e) {
25572
- let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : un.has(e.op), n = `<mo largeop="true">${Q(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
25573
- 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}${nn(e.body)}</mrow>`;
25621
+ var gn = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
25622
+ function _n(e) {
25623
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : gn.has(e.op), n = `<mo largeop="true">${Q(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
25624
+ 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}${ln(e.body)}</mrow>`;
25574
25625
  }
25575
- function fn(e) {
25626
+ function vn(e) {
25576
25627
  let t = (e) => `<mo fence="true" stretchy="true">${Q(e)}</mo>`, n = e.items.map((e) => $(e)).join("<mo separator=\"true\">,</mo>");
25577
25628
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
25578
25629
  }
25579
- function pn(e, t) {
25580
- return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${nn(e)}</math>`;
25630
+ function yn(e, t) {
25631
+ return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${ln(e)}</math>`;
25581
25632
  }
25582
25633
  //#endregion
25583
25634
  //#region packages/core/src/canvas/env.ts
25584
- function mn(e) {
25635
+ function bn(e) {
25585
25636
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
25586
25637
  }
25587
- function hn(e = 1) {
25638
+ function xn(e = 1) {
25588
25639
  return typeof window < "u" && window.devicePixelRatio || e;
25589
25640
  }
25590
25641
  //#endregion
25591
25642
  //#region packages/core/src/worker/bridge.ts
25592
- var gn = class {
25643
+ var Sn = class {
25593
25644
  _worker;
25594
25645
  _opts;
25595
25646
  _pending = /* @__PURE__ */ new Map();
@@ -25629,7 +25680,7 @@ var gn = class {
25629
25680
  for (let e of this._pending.values()) e.reject(/* @__PURE__ */ Error("Worker terminated"));
25630
25681
  this._pending.clear();
25631
25682
  }
25632
- }, _n = [
25683
+ }, Cn = [
25633
25684
  "L",
25634
25685
  "R",
25635
25686
  "AL",
@@ -25653,7 +25704,7 @@ var gn = class {
25653
25704
  "RLI",
25654
25705
  "FSI",
25655
25706
  "PDI"
25656
- ], vn = [
25707
+ ], wn = [
25657
25708
  0,
25658
25709
  9,
25659
25710
  10,
@@ -26921,7 +26972,7 @@ var gn = class {
26921
26972
  1048574,
26922
26973
  1048576,
26923
26974
  1114110
26924
- ], yn = [
26975
+ ], Tn = [
26925
26976
  9,
26926
26977
  11,
26927
26978
  10,
@@ -28189,7 +28240,7 @@ var gn = class {
28189
28240
  9,
28190
28241
  0,
28191
28242
  9
28192
- ], bn = [
28243
+ ], En = [
28193
28244
  40,
28194
28245
  41,
28195
28246
  41,
@@ -29046,7 +29097,7 @@ var gn = class {
29046
29097
  65379,
29047
29098
  65379,
29048
29099
  65378
29049
- ], xn = [
29100
+ ], Dn = [
29050
29101
  40,
29051
29102
  41,
29052
29103
  0,
@@ -29434,42 +29485,42 @@ var gn = class {
29434
29485
  ];
29435
29486
  //#endregion
29436
29487
  //#region packages/core/src/text/bidi/char-data.ts
29437
- function Sn(e) {
29438
- let t = 0, n = vn.length - 1;
29488
+ function On(e) {
29489
+ let t = 0, n = wn.length - 1;
29439
29490
  for (; t < n;) {
29440
29491
  let r = t + n + 1 >> 1;
29441
- vn[r] <= e ? t = r : n = r - 1;
29492
+ wn[r] <= e ? t = r : n = r - 1;
29442
29493
  }
29443
- return yn[t];
29494
+ return Tn[t];
29444
29495
  }
29445
- function Cn(e) {
29446
- return _n[Sn(e)];
29496
+ function kn(e) {
29497
+ return Cn[On(e)];
29447
29498
  }
29448
- var wn = (() => {
29499
+ var An = (() => {
29449
29500
  let e = /* @__PURE__ */ new Map();
29450
- for (let t = 0; t < bn.length; t += 2) e.set(bn[t], bn[t + 1]);
29501
+ for (let t = 0; t < En.length; t += 2) e.set(En[t], En[t + 1]);
29451
29502
  return e;
29452
29503
  })();
29453
- function Tn(e) {
29454
- return wn.get(e) ?? null;
29504
+ function jn(e) {
29505
+ return An.get(e) ?? null;
29455
29506
  }
29456
- var En = (() => {
29507
+ var Mn = (() => {
29457
29508
  let e = /* @__PURE__ */ new Map();
29458
- for (let t = 0; t < xn.length; t += 3) e.set(xn[t], {
29459
- pair: xn[t + 1],
29460
- type: xn[t + 2] === 0 ? "o" : "c"
29509
+ for (let t = 0; t < Dn.length; t += 3) e.set(Dn[t], {
29510
+ pair: Dn[t + 1],
29511
+ type: Dn[t + 2] === 0 ? "o" : "c"
29461
29512
  });
29462
29513
  return e;
29463
29514
  })();
29464
- function Dn(e) {
29465
- return En.get(e) ?? null;
29515
+ function Nn(e) {
29516
+ return Mn.get(e) ?? null;
29466
29517
  }
29467
- var On = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", kn = (e) => e === "LRI" || e === "RLI" || e === "FSI", An = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", jn = (e) => e & 1 ? e + 2 : e + 1, Mn = (e) => e & 1 ? e + 1 : e + 2;
29468
- function Nn(e, t, n) {
29518
+ var Pn = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", Fn = (e) => e === "LRI" || e === "RLI" || e === "FSI", In = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", Ln = (e) => e & 1 ? e + 2 : e + 1, Rn = (e) => e & 1 ? e + 1 : e + 2;
29519
+ function zn(e, t, n) {
29469
29520
  let r = 0;
29470
29521
  for (let i = t; i < n; i++) {
29471
29522
  let t = e[i];
29472
- if (kn(t)) r++;
29523
+ if (Fn(t)) r++;
29473
29524
  else if (t === "PDI") r > 0 && r--;
29474
29525
  else if (r === 0) {
29475
29526
  if (t === "L") return 0;
@@ -29478,11 +29529,11 @@ function Nn(e, t, n) {
29478
29529
  }
29479
29530
  return 0;
29480
29531
  }
29481
- function Pn(e) {
29532
+ function Bn(e) {
29482
29533
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
29483
29534
  for (let a = 0; a < t; a++) {
29484
29535
  let t = e[a];
29485
- if (kn(t)) i.push(a);
29536
+ if (Fn(t)) i.push(a);
29486
29537
  else if (t === "PDI" && i.length) {
29487
29538
  let e = i.pop();
29488
29539
  n[e] = a, r[a] = e;
@@ -29493,7 +29544,7 @@ function Pn(e) {
29493
29544
  initOf: r
29494
29545
  };
29495
29546
  }
29496
- function Fn(e, t, n) {
29547
+ function Vn(e, t, n) {
29497
29548
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
29498
29549
  level: t,
29499
29550
  override: "neutral",
@@ -29507,7 +29558,7 @@ function Fn(e, t, n) {
29507
29558
  case "RLO":
29508
29559
  case "LRO": {
29509
29560
  i[d] = u().level;
29510
- let e = r === "RLE" || r === "RLO" ? jn(u().level) : Mn(u().level);
29561
+ let e = r === "RLE" || r === "RLO" ? Ln(u().level) : Rn(u().level);
29511
29562
  e <= 125 && s === 0 && c === 0 ? o.push({
29512
29563
  level: e,
29513
29564
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -29522,8 +29573,8 @@ function Fn(e, t, n) {
29522
29573
  let t = u().override;
29523
29574
  t !== "neutral" && (a[d] = t);
29524
29575
  let f;
29525
- f = r === "RLI" ? "R" : r === "LRI" ? "L" : Nn(e, d + 1, n[d]) === 1 ? "R" : "L";
29526
- let p = f === "R" ? jn(u().level) : Mn(u().level);
29576
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : zn(e, d + 1, n[d]) === 1 ? "R" : "L";
29577
+ let p = f === "R" ? Ln(u().level) : Rn(u().level);
29527
29578
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
29528
29579
  level: p,
29529
29580
  override: "neutral",
@@ -29565,10 +29616,10 @@ function Fn(e, t, n) {
29565
29616
  types: a
29566
29617
  };
29567
29618
  }
29568
- function In(e) {
29619
+ function Hn(e) {
29569
29620
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
29570
29621
  }
29571
- function Ln(e, t, n, r, i, a) {
29622
+ function Un(e, t, n, r, i, a) {
29572
29623
  let o = e.length, s = [];
29573
29624
  for (let e = 0; e < o; e++) n[e] || s.push(e);
29574
29625
  let c = [];
@@ -29586,7 +29637,7 @@ function Ln(e, t, n, r, i, a) {
29586
29637
  for (;;) {
29587
29638
  for (let e of p) f.push(e);
29588
29639
  let t = p[p.length - 1];
29589
- if (kn(e[t]) && i[t] !== o) {
29640
+ if (Fn(e[t]) && i[t] !== o) {
29590
29641
  let e = l.get(i[t]);
29591
29642
  if (e) {
29592
29643
  p = e;
@@ -29601,7 +29652,7 @@ function Ln(e, t, n, r, i, a) {
29601
29652
  break;
29602
29653
  }
29603
29654
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
29604
- if (!(kn(e[_]) && i[_] === o)) {
29655
+ if (!(Fn(e[_]) && i[_] === o)) {
29605
29656
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
29606
29657
  v = t[e];
29607
29658
  break;
@@ -29617,8 +29668,8 @@ function Ln(e, t, n, r, i, a) {
29617
29668
  }
29618
29669
  return d;
29619
29670
  }
29620
- var Rn = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29621
- function zn(e, t, n, r, i) {
29671
+ var Wn = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29672
+ function Gn(e, t, n, r, i) {
29622
29673
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
29623
29674
  for (let e = 0; e < o; e++) {
29624
29675
  let t = a[e];
@@ -29665,15 +29716,15 @@ function zn(e, t, n, r, i) {
29665
29716
  outer: for (let n = 0; n < o; n++) {
29666
29717
  let i = a[n];
29667
29718
  if (r[i] !== "ON") continue;
29668
- let o = Dn(t[i]);
29719
+ let o = Nn(t[i]);
29669
29720
  if (o) if (o.type === "o") {
29670
29721
  if (e.length === 63) break outer;
29671
29722
  e.push({
29672
- expect: In(o.pair),
29723
+ expect: Hn(o.pair),
29673
29724
  pos: n
29674
29725
  });
29675
29726
  } else {
29676
- let r = In(t[i]);
29727
+ let r = Hn(t[i]);
29677
29728
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
29678
29729
  f.push({
29679
29730
  open: e[t].pos,
@@ -29691,7 +29742,7 @@ function zn(e, t, n, r, i) {
29691
29742
  for (let { open: e, close: t } of f) {
29692
29743
  let n = !1, i = !1;
29693
29744
  for (let o = e + 1; o < t; o++) {
29694
- let e = Rn(r[a[o]]);
29745
+ let e = Wn(r[a[o]]);
29695
29746
  e === u ? n = !0 : e === d && (i = !0);
29696
29747
  }
29697
29748
  let o = null;
@@ -29699,7 +29750,7 @@ function zn(e, t, n, r, i) {
29699
29750
  else if (i) {
29700
29751
  let t = s;
29701
29752
  for (let n = e - 1; n >= 0; n--) {
29702
- let e = Rn(r[a[n]]);
29753
+ let e = Wn(r[a[n]]);
29703
29754
  if (e) {
29704
29755
  t = e;
29705
29756
  break;
@@ -29710,29 +29761,29 @@ function zn(e, t, n, r, i) {
29710
29761
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
29711
29762
  }
29712
29763
  for (let e = 0; e < o; e++) {
29713
- if (!An(r[a[e]])) continue;
29764
+ if (!In(r[a[e]])) continue;
29714
29765
  let t = e;
29715
- for (; t < o && An(r[a[t]]);) t++;
29716
- let n = e > 0 ? Rn(r[a[e - 1]]) : s, i = t < o ? Rn(r[a[t]]) : c;
29766
+ for (; t < o && In(r[a[t]]);) t++;
29767
+ let n = e > 0 ? Wn(r[a[e - 1]]) : s, i = t < o ? Wn(r[a[t]]) : c;
29717
29768
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
29718
29769
  e = t - 1;
29719
29770
  }
29720
- for (let e = 0; e < o; e++) An(r[a[e]]) && (r[a[e]] = u);
29771
+ for (let e = 0; e < o; e++) In(r[a[e]]) && (r[a[e]] = u);
29721
29772
  for (let e = 0; e < o; e++) {
29722
29773
  let t = a[e], n = r[t];
29723
29774
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
29724
29775
  }
29725
29776
  }
29726
- function Bn(e, t, n) {
29777
+ function Kn(e, t, n) {
29727
29778
  let r = e.length, i = Array(r);
29728
- for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Cn(e[t]);
29729
- let a = t === "rtl" ? 1 : t === "ltr" ? 0 : Nn(i, 0, r), { pdiOf: o, initOf: s } = Pn(i), { levels: c, types: l } = Fn(i, a, o), u = Array(r);
29730
- for (let e = 0; e < r; e++) u[e] = On(i[e]);
29731
- let d = Ln(i, c, u, a, o, s), f = l.slice();
29732
- for (let t of d) zn(t, e, i, f, c);
29779
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? kn(e[t]);
29780
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : zn(i, 0, r), { pdiOf: o, initOf: s } = Bn(i), { levels: c, types: l } = Vn(i, a, o), u = Array(r);
29781
+ for (let e = 0; e < r; e++) u[e] = Pn(i[e]);
29782
+ let d = Un(i, c, u, a, o, s), f = l.slice();
29783
+ for (let t of d) Gn(t, e, i, f, c);
29733
29784
  let p = (e) => {
29734
29785
  let t = i[e];
29735
- return t === "WS" || kn(t) || t === "PDI" || u[e];
29786
+ return t === "WS" || Fn(t) || t === "PDI" || u[e];
29736
29787
  };
29737
29788
  for (let e = 0; e < r; e++) {
29738
29789
  let t = i[e];
@@ -29748,7 +29799,7 @@ function Bn(e, t, n) {
29748
29799
  paragraphLevel: a
29749
29800
  };
29750
29801
  }
29751
- function Vn(e, t, n) {
29802
+ function qn(e, t, n) {
29752
29803
  let r = [];
29753
29804
  for (let i = t; i < n; i++) {
29754
29805
  let t = e[i];
@@ -29776,7 +29827,7 @@ function Vn(e, t, n) {
29776
29827
  }
29777
29828
  //#endregion
29778
29829
  //#region packages/core/src/text/bidi/uax9/index.ts
29779
- function Hn(e) {
29830
+ function Jn(e) {
29780
29831
  let t = [], n = [], r = [];
29781
29832
  for (let i = 0; i < e.length;) {
29782
29833
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -29788,9 +29839,9 @@ function Hn(e) {
29788
29839
  starts: r
29789
29840
  };
29790
29841
  }
29791
- var Un = class {
29842
+ var Yn = class {
29792
29843
  computeLevels(e, t, n) {
29793
- let { cps: r, units: i, starts: a } = Hn(e), { levels: o, paragraphLevel: s } = Bn(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29844
+ let { cps: r, units: i, starts: a } = Jn(e), { levels: o, paragraphLevel: s } = Kn(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29794
29845
  for (let e = 0; e < o.length; e++) {
29795
29846
  let t = o[e] === -1 ? 255 : o[e];
29796
29847
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -29801,25 +29852,25 @@ var Un = class {
29801
29852
  };
29802
29853
  }
29803
29854
  reorderVisual(e, t, n) {
29804
- return Vn(e, t, n);
29855
+ return qn(e, t, n);
29805
29856
  }
29806
29857
  getMirror(e) {
29807
- return Tn(e);
29858
+ return jn(e);
29808
29859
  }
29809
29860
  };
29810
- function Wn() {
29811
- return new Un();
29861
+ function Xn() {
29862
+ return new Yn();
29812
29863
  }
29813
29864
  //#endregion
29814
29865
  //#region packages/core/src/text/bidi/engine.ts
29815
- var Gn = null;
29816
- function Kn() {
29817
- return Gn === null && (Gn = Wn()), Gn;
29866
+ var Zn = null;
29867
+ function Qn() {
29868
+ return Zn === null && (Zn = Xn()), Zn;
29818
29869
  }
29819
29870
  //#endregion
29820
29871
  //#region packages/core/src/text/bidi/segments.ts
29821
- function qn(e, t) {
29822
- return e === !0 ? "rtl" : e === !1 ? "ltr" : Kn().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
29872
+ function $n(e, t) {
29873
+ return e === !0 ? "rtl" : e === !1 ? "ltr" : Qn().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
29823
29874
  }
29824
29875
  //#endregion
29825
- export { F as A, c as B, Me as C, Ce as D, Te as E, A as F, s as H, u as I, d as L, L as M, P as N, Se as O, k as P, p as R, Re as S, Ee as T, t as U, m as V, Ue as _, mn as a, Ve as b, Vt as c, Rt as d, dt as f, rt as g, nt as h, hn as i, I as j, xe as k, Ht as l, it as m, Kn as n, pn as o, pt as p, gn as r, Ut as s, qn as t, Mt as u, Ge as v, Le as w, Ne as x, We as y, l as z };
29876
+ export { I as A, c as B, Re as C, ke as D, je as E, j as F, s as H, u as I, d as L, R as M, F as N, Oe as O, A as P, p as R, We as S, Me as T, t as U, m as V, Ye as _, bn as a, qe as b, qt as c, Wt as d, _t as f, lt as g, ct as h, xn as i, L as j, De as k, Jt as l, ut as m, Qn as n, yn as o, yt as p, Sn as r, Yt as s, $n as t, Rt as u, Ze as v, Ue as w, ze as x, Xe as y, l as z };