@silurus/ooxml 0.62.0 → 0.64.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.
@@ -1802,8 +1802,157 @@ function ke(e, t, n, r, i, a) {
1802
1802
  }
1803
1803
  }
1804
1804
  //#endregion
1805
+ //#region packages/core/src/shape/custgeom-endpoints.ts
1806
+ var J = 1e-9;
1807
+ function Ae(e) {
1808
+ return e.cmd === "lineTo" || e.cmd === "cubicBezTo" || e.cmd === "arcTo";
1809
+ }
1810
+ function je(e, t, n, r) {
1811
+ let i = n === 0 ? 0 : n, a = r === 0 ? 0 : r;
1812
+ return {
1813
+ x: e,
1814
+ y: t,
1815
+ dx: i,
1816
+ dy: a,
1817
+ angle: Math.atan2(a, i)
1818
+ };
1819
+ }
1820
+ function Me(e, t, n) {
1821
+ switch (n.cmd) {
1822
+ case "lineTo": return {
1823
+ dx: n.x - e,
1824
+ dy: n.y - t
1825
+ };
1826
+ case "cubicBezTo": {
1827
+ let r = n.x1 - e, i = n.y1 - t;
1828
+ return Math.abs(r) < J && Math.abs(i) < J && (r = n.x2 - e, i = n.y2 - t), Math.abs(r) < J && Math.abs(i) < J && (r = n.x - e, i = n.y - t), {
1829
+ dx: r,
1830
+ dy: i
1831
+ };
1832
+ }
1833
+ case "arcTo": {
1834
+ let e = n.stAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
1835
+ return {
1836
+ dx: -n.wr * Math.sin(e) * t,
1837
+ dy: n.hr * Math.cos(e) * t
1838
+ };
1839
+ }
1840
+ default: return {
1841
+ dx: 0,
1842
+ dy: 0
1843
+ };
1844
+ }
1845
+ }
1846
+ function Ne(e, t, n) {
1847
+ switch (n.cmd) {
1848
+ case "moveTo":
1849
+ case "lineTo":
1850
+ case "cubicBezTo": return {
1851
+ x: n.x,
1852
+ y: n.y
1853
+ };
1854
+ case "arcTo": {
1855
+ if (n.wr <= 0 || n.hr <= 0) return {
1856
+ x: e,
1857
+ y: t
1858
+ };
1859
+ let r = n.stAng * Math.PI / 180, i = r + n.swAng * Math.PI / 180, a = e - n.wr * Math.cos(r), o = t - n.hr * Math.sin(r);
1860
+ return {
1861
+ x: a + n.wr * Math.cos(i),
1862
+ y: o + n.hr * Math.sin(i)
1863
+ };
1864
+ }
1865
+ default: return {
1866
+ x: e,
1867
+ y: t
1868
+ };
1869
+ }
1870
+ }
1871
+ function Pe(e, t, n) {
1872
+ let { x: r, y: i } = Ne(e, t, n);
1873
+ switch (n.cmd) {
1874
+ case "lineTo": return {
1875
+ dx: n.x - e,
1876
+ dy: n.y - t,
1877
+ x: r,
1878
+ y: i
1879
+ };
1880
+ case "cubicBezTo": {
1881
+ let a = n.x - n.x2, o = n.y - n.y2;
1882
+ return Math.abs(a) < J && Math.abs(o) < J && (a = n.x - n.x1, o = n.y - n.y1), Math.abs(a) < J && Math.abs(o) < J && (a = n.x - e, o = n.y - t), {
1883
+ dx: a,
1884
+ dy: o,
1885
+ x: r,
1886
+ y: i
1887
+ };
1888
+ }
1889
+ case "arcTo": {
1890
+ if (n.wr <= 0 || n.hr <= 0) return {
1891
+ dx: 0,
1892
+ dy: 0,
1893
+ x: r,
1894
+ y: i
1895
+ };
1896
+ let e = n.stAng * Math.PI / 180 + n.swAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
1897
+ return {
1898
+ dx: -n.wr * Math.sin(e) * t,
1899
+ dy: n.hr * Math.cos(e) * t,
1900
+ x: r,
1901
+ y: i
1902
+ };
1903
+ }
1904
+ default: return {
1905
+ dx: 0,
1906
+ dy: 0,
1907
+ x: r,
1908
+ y: i
1909
+ };
1910
+ }
1911
+ }
1912
+ function Fe(e) {
1913
+ let t = 0, n = 0, r = !1;
1914
+ for (let i of e) i.cmd === "moveTo" && (r = !0), {x: t, y: n} = Ne(t, n, i);
1915
+ return r ? {
1916
+ x: t,
1917
+ y: n
1918
+ } : null;
1919
+ }
1920
+ function Ie(e) {
1921
+ if (e.some((e) => e.cmd === "close")) return !0;
1922
+ let t = e.find((e) => e.cmd === "moveTo");
1923
+ if (!t) return !1;
1924
+ let n = Fe(e);
1925
+ return !n || !e.some(Ae) ? !1 : Math.abs(n.x - t.x) < J && Math.abs(n.y - t.y) < J;
1926
+ }
1927
+ function Le(e) {
1928
+ let t = {
1929
+ start: null,
1930
+ end: null
1931
+ };
1932
+ if (!e || e.length === 0) return t;
1933
+ let n = e[0];
1934
+ if (n && n.length > 0 && !Ie(n)) {
1935
+ let e = n.find((e) => e.cmd === "moveTo"), r = n.find(Ae);
1936
+ if (e && r) {
1937
+ let n = Me(e.x, e.y, r);
1938
+ (Math.abs(n.dx) > J || Math.abs(n.dy) > J) && (t.start = je(e.x, e.y, -n.dx, -n.dy));
1939
+ }
1940
+ }
1941
+ let r = e[e.length - 1];
1942
+ if (r && r.length > 0 && !Ie(r)) {
1943
+ let e = 0, n = 0, i = -1;
1944
+ for (let e = 0; e < r.length; e++) Ae(r[e]) && (i = e);
1945
+ if (i >= 0) {
1946
+ for (let t = 0; t < i; t++) ({x: e, y: n} = Ne(e, n, r[t]));
1947
+ let a = Pe(e, n, r[i]);
1948
+ (Math.abs(a.dx) > J || Math.abs(a.dy) > J) && (t.end = je(a.x, a.y, a.dx, a.dy));
1949
+ }
1950
+ }
1951
+ return t;
1952
+ }
1953
+ //#endregion
1805
1954
  //#region packages/core/src/shape/preset.ts
1806
- function J(e, t, n, r, i, a, o, s = -Math.PI / 2) {
1955
+ function Y(e, t, n, r, i, a, o, s = -Math.PI / 2) {
1807
1956
  let c = a * 2;
1808
1957
  for (let l = 0; l < c; l++) {
1809
1958
  let c = s + l * Math.PI / a, u = l % 2 == 0 ? 1 : o, d = t + r * u * Math.cos(c), f = n + i * u * Math.sin(c);
@@ -1811,21 +1960,21 @@ function J(e, t, n, r, i, a, o, s = -Math.PI / 2) {
1811
1960
  }
1812
1961
  e.closePath();
1813
1962
  }
1814
- function Ae(e, t, n, r, i, a, o = -Math.PI / 2) {
1963
+ function Re(e, t, n, r, i, a, o = -Math.PI / 2) {
1815
1964
  for (let s = 0; s < a; s++) {
1816
1965
  let c = o + s * 2 * Math.PI / a, l = t + r * Math.cos(c), u = n + i * Math.sin(c);
1817
1966
  s === 0 ? e.moveTo(l, u) : e.lineTo(l, u);
1818
1967
  }
1819
1968
  e.closePath();
1820
1969
  }
1821
- function Y(e, t, n, r, i, a, o) {
1970
+ function X(e, t, n, r, i, a, o) {
1822
1971
  let s = (e) => Math.atan2(r * Math.sin(e), i * Math.cos(e)), c = s(a), l = s(a + o), u = t - r * Math.cos(c), d = n - i * Math.sin(c);
1823
1972
  return e.ellipse(u, d, Math.abs(r), Math.abs(i), 0, c, l, o < 0), {
1824
1973
  x: u + r * Math.cos(l),
1825
1974
  y: d + i * Math.sin(l)
1826
1975
  };
1827
1976
  }
1828
- function je(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1977
+ function ze(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1829
1978
  let u = n + i / 2, d = r + a / 2;
1830
1979
  switch (t.toLowerCase()) {
1831
1980
  case "ellipse":
@@ -1860,53 +2009,53 @@ function je(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
1860
2009
  break;
1861
2010
  }
1862
2011
  case "pentagon":
1863
- Ae(e, u, d, i / 2, a / 2, 5);
2012
+ Re(e, u, d, i / 2, a / 2, 5);
1864
2013
  break;
1865
2014
  case "hexagon":
1866
- Ae(e, u, d, i / 2, a / 2, 6, 0);
2015
+ Re(e, u, d, i / 2, a / 2, 6, 0);
1867
2016
  break;
1868
2017
  case "heptagon":
1869
- Ae(e, u, d, i / 2, a / 2, 7);
2018
+ Re(e, u, d, i / 2, a / 2, 7);
1870
2019
  break;
1871
2020
  case "octagon":
1872
- Ae(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
2021
+ Re(e, u, d, i / 2, a / 2, 8, -Math.PI / 8);
1873
2022
  break;
1874
2023
  case "decagon":
1875
- Ae(e, u, d, i / 2, a / 2, 10);
2024
+ Re(e, u, d, i / 2, a / 2, 10);
1876
2025
  break;
1877
2026
  case "dodecagon":
1878
- Ae(e, u, d, i / 2, a / 2, 12);
2027
+ Re(e, u, d, i / 2, a / 2, 12);
1879
2028
  break;
1880
2029
  case "star4":
1881
- J(e, u, d, i / 2, a / 2, 4, (o ?? 12500) / 5e4);
2030
+ Y(e, u, d, i / 2, a / 2, 4, (o ?? 12500) / 5e4);
1882
2031
  break;
1883
2032
  case "star5":
1884
2033
  case "star":
1885
- J(e, u, d, i / 2, a / 2, 5, (o ?? 19098) / 5e4);
2034
+ Y(e, u, d, i / 2, a / 2, 5, (o ?? 19098) / 5e4);
1886
2035
  break;
1887
2036
  case "star6":
1888
- J(e, u, d, i / 2, a / 2, 6, (o ?? 28868) / 5e4, 0);
2037
+ Y(e, u, d, i / 2, a / 2, 6, (o ?? 28868) / 5e4, 0);
1889
2038
  break;
1890
2039
  case "star7":
1891
- J(e, u, d, i / 2, a / 2, 7, (o ?? 34142) / 5e4);
2040
+ Y(e, u, d, i / 2, a / 2, 7, (o ?? 34142) / 5e4);
1892
2041
  break;
1893
2042
  case "star8":
1894
- J(e, u, d, i / 2, a / 2, 8, (o ?? 37500) / 5e4, -Math.PI / 2);
2043
+ Y(e, u, d, i / 2, a / 2, 8, (o ?? 37500) / 5e4, -Math.PI / 2);
1895
2044
  break;
1896
2045
  case "star10":
1897
- J(e, u, d, i / 2, a / 2, 10, (o ?? 41421) / 5e4);
2046
+ Y(e, u, d, i / 2, a / 2, 10, (o ?? 41421) / 5e4);
1898
2047
  break;
1899
2048
  case "star12":
1900
- J(e, u, d, i / 2, a / 2, 12, (o ?? 37500) / 5e4, 0);
2049
+ Y(e, u, d, i / 2, a / 2, 12, (o ?? 37500) / 5e4, 0);
1901
2050
  break;
1902
2051
  case "star16":
1903
- J(e, u, d, i / 2, a / 2, 16, (o ?? 37500) / 5e4, -Math.PI / 2);
2052
+ Y(e, u, d, i / 2, a / 2, 16, (o ?? 37500) / 5e4, -Math.PI / 2);
1904
2053
  break;
1905
2054
  case "star24":
1906
- J(e, u, d, i / 2, a / 2, 24, (o ?? 37500) / 5e4, 0);
2055
+ Y(e, u, d, i / 2, a / 2, 24, (o ?? 37500) / 5e4, 0);
1907
2056
  break;
1908
2057
  case "star32":
1909
- J(e, u, d, i / 2, a / 2, 32, (o ?? 37500) / 5e4, -Math.PI / 2);
2058
+ Y(e, u, d, i / 2, a / 2, 32, (o ?? 37500) / 5e4, -Math.PI / 2);
1910
2059
  break;
1911
2060
  case "rightarrow": {
1912
2061
  let t = a * Math.min(1, (o ?? 5e4) / 1e5), c = i * Math.min(1, (s ?? 5e4) / 1e5), l = r + (a - t) / 2;
@@ -2472,26 +2621,26 @@ function je(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
2472
2621
  }
2473
2622
  case "curvedrightarrow": {
2474
2623
  let t = Math.min(i, a), l = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, s ?? 5e4)), f = t * Math.min(d, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = l - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = 1e5 * (Math.sqrt(Math.max(0, h)) * i / (2 * m)) / t, _ = t * Math.min(g, Math.max(0, c ?? 25e3)) / 1e5, v = Math.sqrt(Math.max(0, i * i - _ * _)) * m / i, y = m + f, b = m + v, x = y + v, S = (p - f) / 2, C = b - S, w = x + S, T = a - p / 2, E = i - _, D = Math.atan2(_, v), O = -D, k = Math.PI - D;
2475
- e.moveTo(n, r + m), Y(e, n, r + m, i, m, Math.PI, O), e.lineTo(n + E, r + C), e.lineTo(n + i, r + T), e.lineTo(n + E, r + w), e.lineTo(n + E, r + x), Y(e, n + E, r + x, i, m, k, D), e.closePath();
2624
+ e.moveTo(n, r + m), X(e, n, r + m, i, m, Math.PI, O), e.lineTo(n + E, r + C), e.lineTo(n + i, r + T), e.lineTo(n + E, r + w), e.lineTo(n + E, r + x), X(e, n + E, r + x, i, m, k, D), e.closePath();
2476
2625
  break;
2477
2626
  }
2478
2627
  case "curvedleftarrow": {
2479
2628
  let t = Math.min(i, a), l = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, s ?? 5e4)), f = t * Math.min(d, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = l - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * i / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, c ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, i * i - v * v)) * m / i, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = a - p / 2, D = v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = A - O, M = O - A, N = -A;
2480
2629
  e.moveTo(n, r + E), e.lineTo(n + D, r + w), e.lineTo(n + D, r + x);
2481
- let P = Y(e, n + D, r + x, i, m, O, j);
2482
- Y(e, P.x, P.y, i, m, N, M), e.lineTo(n + D, r + T), e.closePath();
2630
+ let P = X(e, n + D, r + x, i, m, O, j);
2631
+ X(e, P.x, P.y, i, m, N, M), e.lineTo(n + D, r + T), e.closePath();
2483
2632
  break;
2484
2633
  }
2485
2634
  case "curveduparrow": {
2486
2635
  let t = Math.min(i, a), l = i / 2, u = 5e4 * i / t, d = Math.min(u, Math.max(0, s ?? 5e4)), f = t * Math.min(1e5, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = l - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * a / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, c ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, a * a - v * v)) * m / a, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = i - p / 2, D = v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = A - O, M = O - A, N = Math.PI / 2 - O, P = Math.PI / 2 - A;
2487
2636
  e.moveTo(n + E, r), e.lineTo(n + T, r + D), e.lineTo(n + S, r + D);
2488
- let F = Y(e, n + S, r + D, m, a, N, M);
2489
- Y(e, F.x, F.y, m, a, P, j), e.lineTo(n + w, r + D), e.closePath();
2637
+ let F = X(e, n + S, r + D, m, a, N, M);
2638
+ X(e, F.x, F.y, m, a, P, j), e.lineTo(n + w, r + D), e.closePath();
2490
2639
  break;
2491
2640
  }
2492
2641
  case "curveddownarrow": {
2493
2642
  let t = Math.min(i, a), l = i / 2, u = 5e4 * i / t, d = Math.min(u, Math.max(0, s ?? 5e4)), f = t * Math.min(1e5, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = l - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * a / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, c ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, a * a - v * v)) * m / a, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = i - p / 2, D = a - v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = 3 * Math.PI / 2 + O;
2494
- 3 * Math.PI / 2 - A, A - Math.PI / 2, Math.PI / 2 - A, e.moveTo(n + E, r + a), e.lineTo(n + w, r + D), e.lineTo(n + x, r + D), Y(e, n + x, r + D, m, a, j, -O), e.lineTo(n + b, r), Y(e, n + b, r, m, a, 3 * Math.PI / 2, O), e.lineTo(n + T, r + D), e.closePath();
2643
+ 3 * Math.PI / 2 - A, A - Math.PI / 2, Math.PI / 2 - A, e.moveTo(n + E, r + a), e.lineTo(n + w, r + D), e.lineTo(n + x, r + D), X(e, n + x, r + D, m, a, j, -O), e.lineTo(n + b, r), X(e, n + b, r, m, a, 3 * Math.PI / 2, O), e.lineTo(n + T, r + D), e.closePath();
2495
2644
  break;
2496
2645
  }
2497
2646
  case "stripedrightarrow": {
@@ -2560,7 +2709,7 @@ function je(e, t, n, r, i, a, o = null, s = null, c = null, l = null) {
2560
2709
  }
2561
2710
  //#endregion
2562
2711
  //#region packages/core/src/shape/arrow.ts
2563
- function Me(e, t, n, r, i, a, o) {
2712
+ function Be(e, t, n, r, i, a, o) {
2564
2713
  if (i.type === "none") return;
2565
2714
  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);
2566
2715
  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) {
@@ -2580,7 +2729,48 @@ function Me(e, t, n, r, i, a, o) {
2580
2729
  }
2581
2730
  e.restore();
2582
2731
  }
2583
- var Ne = {
2732
+ //#endregion
2733
+ //#region packages/core/src/image/svg-image-by-path.ts
2734
+ var Ve = /* @__PURE__ */ new WeakMap(), He = 256;
2735
+ function Ue(e) {
2736
+ let t = Ve.get(e);
2737
+ return t || (t = {
2738
+ imgs: /* @__PURE__ */ new Map(),
2739
+ urls: /* @__PURE__ */ new Map()
2740
+ }, Ve.set(e, t)), t;
2741
+ }
2742
+ function We(e, t) {
2743
+ e.imgs.delete(t);
2744
+ let n = e.urls.get(t);
2745
+ n && (URL.revokeObjectURL(n), e.urls.delete(t));
2746
+ }
2747
+ function Ge(e, t) {
2748
+ let n = Ue(t), r = n.imgs.get(e);
2749
+ if (r) return n.imgs.delete(e), n.imgs.set(e, r), r;
2750
+ let i = (async () => {
2751
+ let r = await t(e, "image/svg+xml"), i = URL.createObjectURL(r);
2752
+ n.urls.set(e, i);
2753
+ let a = new Image();
2754
+ return await new Promise((t, n) => {
2755
+ a.onload = () => {
2756
+ typeof a.decode == "function" ? a.decode().then(() => t()).catch(() => t()) : t();
2757
+ }, a.onerror = () => n(/* @__PURE__ */ Error(`svg load failed: ${e}`)), a.src = i;
2758
+ }), a;
2759
+ })();
2760
+ if (i.catch(() => We(n, e)), n.imgs.set(e, i), n.imgs.size > He) {
2761
+ let e = n.imgs.keys().next().value;
2762
+ We(n, e);
2763
+ }
2764
+ return i;
2765
+ }
2766
+ function Ke(e) {
2767
+ let t = Ve.get(e);
2768
+ if (t) {
2769
+ for (let e of t.urls.values()) URL.revokeObjectURL(e);
2770
+ t.urls.clear(), t.imgs.clear(), Ve.delete(e);
2771
+ }
2772
+ }
2773
+ var qe = {
2584
2774
  accentbordercallout1: {
2585
2775
  adj: [
2586
2776
  ["adj1", "val 18750"],
@@ -24443,8 +24633,8 @@ var Ne = {
24443
24633
  ]
24444
24634
  }]
24445
24635
  }
24446
- }, X = 216e5, Pe = Math.PI * 2 / X;
24447
- function Fe(e, t, n) {
24636
+ }, Z = 216e5, Je = Math.PI * 2 / Z;
24637
+ function Ye(e, t, n) {
24448
24638
  let { w: r, h: i, adj: a } = e, o = Math.min(r, i), s = Math.max(r, i), c = Object.create(null);
24449
24639
  Object.assign(c, {
24450
24640
  w: r,
@@ -24489,14 +24679,14 @@ function Fe(e, t, n) {
24489
24679
  lsd8: s / 8,
24490
24680
  lsd16: s / 16,
24491
24681
  lsd32: s / 32,
24492
- cd: X,
24493
- cd2: X / 2,
24494
- cd4: X / 4,
24495
- cd8: X / 8,
24496
- "3cd4": 3 * X / 4,
24497
- "3cd8": 3 * X / 8,
24498
- "5cd8": 5 * X / 8,
24499
- "7cd8": 7 * X / 8
24682
+ cd: Z,
24683
+ cd2: Z / 2,
24684
+ cd4: Z / 4,
24685
+ cd8: Z / 8,
24686
+ "3cd4": 3 * Z / 4,
24687
+ "3cd8": 3 * Z / 8,
24688
+ "5cd8": 5 * Z / 8,
24689
+ "7cd8": 7 * Z / 8
24500
24690
  }), t.forEach(([e, t], n) => {
24501
24691
  let r = a[n];
24502
24692
  c[e] = typeof r == "number" ? r : u(t), e === "adj" && (c.adj1 = c.adj), e === "adj1" && (c.adj = c.adj1);
@@ -24533,10 +24723,10 @@ function Fe(e, t, n) {
24533
24723
  case "pin": return t[1] < t[0] ? t[0] : t[1] > t[2] ? t[2] : t[1];
24534
24724
  case "sqrt": return Math.sqrt(Math.max(0, t[0]));
24535
24725
  case "mod": return Math.sqrt(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
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;
24726
+ case "sin": return t[0] * Math.sin(t[1] * Je);
24727
+ case "cos": return t[0] * Math.cos(t[1] * Je);
24728
+ case "tan": return t[0] * Math.tan(t[1] * Je);
24729
+ case "at2": return Math.atan2(t[1], t[0]) / Je;
24540
24730
  case "cat2": return t[0] * Math.cos(Math.atan2(t[2], t[1]));
24541
24731
  case "sat2": return t[0] * Math.sin(Math.atan2(t[2], t[1]));
24542
24732
  default: throw Error(`preset-shape: unknown operator "${e}" in "${n}"`);
@@ -24545,8 +24735,8 @@ function Fe(e, t, n) {
24545
24735
  }
24546
24736
  //#endregion
24547
24737
  //#region packages/core/src/shape/preset-geometry/path-executor.ts
24548
- var Ie = Math.PI * 2 / 216e5;
24549
- function Le(e, t, n, r, i, a, o) {
24738
+ var Xe = Math.PI * 2 / 216e5;
24739
+ function Ze(e, t, n, r, i, a, o) {
24550
24740
  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;
24551
24741
  for (let r of t.cmds) switch (r[0]) {
24552
24742
  case "m": {
@@ -24570,7 +24760,7 @@ function Le(e, t, n, r, i, a, o) {
24570
24760
  break;
24571
24761
  }
24572
24762
  case "a": {
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;
24763
+ let t = n.resolve(r[1]), i = n.resolve(r[2]), a = t * s, o = i * c, l = n.resolve(r[3]) * Xe, u = n.resolve(r[4]) * Xe, 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;
24574
24764
  _ > 0 && v < 0 ? v += p : _ < 0 && v > 0 && (v -= p);
24575
24765
  let y = h + v + g * p, b = d - a * Math.cos(h), x = f - o * Math.sin(h);
24576
24766
  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));
@@ -24583,26 +24773,26 @@ function Le(e, t, n, r, i, a, o) {
24583
24773
  }
24584
24774
  //#endregion
24585
24775
  //#region packages/core/src/shape/preset-geometry/index.ts
24586
- var Z = Ne;
24587
- function Re(e) {
24588
- return e.toLowerCase() in Z;
24776
+ var Q = qe;
24777
+ function Qe(e) {
24778
+ return e.toLowerCase() in Q;
24589
24779
  }
24590
- function ze(e, t, n, r, i, a, o = []) {
24591
- let s = Z[t.toLowerCase()];
24780
+ function $e(e, t, n, r, i, a, o = []) {
24781
+ let s = Q[t.toLowerCase()];
24592
24782
  if (!s) return !1;
24593
- let c = Fe({
24783
+ let c = Ye({
24594
24784
  w: i,
24595
24785
  h: a,
24596
24786
  adj: o
24597
24787
  }, s.adj, s.gd);
24598
- for (let t of s.paths) Le(e, t, c, n, r, i, a);
24788
+ for (let t of s.paths) Ze(e, t, c, n, r, i, a);
24599
24789
  return !0;
24600
24790
  }
24601
- var Be = {
24791
+ var et = {
24602
24792
  wedgeroundrectcallout: "roundrect",
24603
24793
  wedgeellipsecallout: "ellipse",
24604
24794
  wedgerectcallout: null
24605
- }, Ve = {
24795
+ }, tt = {
24606
24796
  adj: [],
24607
24797
  gd: [],
24608
24798
  paths: [{
@@ -24636,43 +24826,43 @@ var Be = {
24636
24826
  ]
24637
24827
  }]
24638
24828
  };
24639
- function He(e, t, n) {
24829
+ function nt(e, t, n) {
24640
24830
  let r = e[n];
24641
24831
  if (typeof r == "number") return r;
24642
24832
  let i = t.adj[n];
24643
24833
  return i && Number(i[1].replace(/^val\s+/, "")) || 0;
24644
24834
  }
24645
- function Ue(e, t, n, r, i, a, o, s, c, l) {
24646
- let u = t.toLowerCase(), d = Z[u];
24835
+ function rt(e, t, n, r, i, a, o, s, c, l) {
24836
+ let u = t.toLowerCase(), d = Q[u];
24647
24837
  if (!d) return !1;
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;
24838
+ if (u in et) {
24839
+ let e = nt(o, d, 0), t = nt(o, d, 1), n = i / 2 + i * e / 1e5, r = a / 2 + a * t / 1e5;
24650
24840
  if (n >= 0 && n <= i && r >= 0 && r <= a) {
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 = []);
24841
+ let e = et[u];
24842
+ e === "roundrect" ? (d = Q.roundrect, o = [nt(o, Q[u], 2)]) : e && Q[e] ? (d = Q[e], o = []) : (d = tt, o = []);
24653
24843
  }
24654
24844
  }
24655
- let f = Fe({
24845
+ let f = Ye({
24656
24846
  w: i,
24657
24847
  h: a,
24658
24848
  adj: o
24659
24849
  }, d.adj, d.gd), p = !1;
24660
24850
  for (let t of d.paths) {
24661
- e.beginPath(), Le(e, t, f, n, r, i, a);
24851
+ e.beginPath(), Ze(e, t, f, n, r, i, a);
24662
24852
  let o = t.fill;
24663
24853
  if (o !== "none" && s != null) {
24664
24854
  e.save(), e.fillStyle = s, e.fill();
24665
- let t = Ge(o);
24855
+ let t = at(o);
24666
24856
  t && (e.fillStyle = t, e.fill()), e.restore(), p ||= (l(), !0);
24667
24857
  }
24668
24858
  t.stroke && c && c();
24669
24859
  }
24670
24860
  return !0;
24671
24861
  }
24672
- function We(e, t, n, r, i, a) {
24673
- let o = Z[e.toLowerCase()];
24862
+ function it(e, t, n, r, i, a) {
24863
+ let o = Q[e.toLowerCase()];
24674
24864
  if (!o || o.paths.length === 0) return null;
24675
- let s = o.paths[0], c = Fe({
24865
+ let s = o.paths[0], c = Ye({
24676
24866
  w: r,
24677
24867
  h: i,
24678
24868
  adj: a
@@ -24706,7 +24896,7 @@ function We(e, t, n, r, i, a) {
24706
24896
  }
24707
24897
  };
24708
24898
  }
24709
- function Ge(e) {
24899
+ function at(e) {
24710
24900
  switch (e) {
24711
24901
  case "lighten": return "rgba(255,255,255,0.30)";
24712
24902
  case "lightenLess": return "rgba(255,255,255,0.15)";
@@ -24717,10 +24907,10 @@ function Ge(e) {
24717
24907
  }
24718
24908
  //#endregion
24719
24909
  //#region packages/core/src/shape/effects.ts
24720
- function Ke(e, t) {
24910
+ function ot(e, t) {
24721
24911
  return e * t;
24722
24912
  }
24723
- function qe(e, t) {
24913
+ function st(e, t) {
24724
24914
  let n = Math.max(1, Math.ceil(e)), r = Math.max(1, Math.ceil(t));
24725
24915
  if (typeof OffscreenCanvas < "u") return new OffscreenCanvas(n, r);
24726
24916
  if (typeof document < "u") {
@@ -24729,60 +24919,60 @@ function qe(e, t) {
24729
24919
  }
24730
24920
  return null;
24731
24921
  }
24732
- function Je(e) {
24922
+ function ct(e) {
24733
24923
  return e.getContext("2d") ?? null;
24734
24924
  }
24735
- function Ye(e, t, n, r, i, a, o) {
24736
- let s = qe(a, o);
24925
+ function lt(e, t, n, r, i, a, o) {
24926
+ let s = st(a, o);
24737
24927
  if (!s) return;
24738
- let c = Je(s);
24928
+ let c = ct(s);
24739
24929
  if (!c) return;
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;
24930
+ let l = ot(r.blur, i), u = ot(r.dist, i), d = r.dir * Math.PI / 180, f = Math.cos(d) * u, p = Math.sin(d) * u;
24741
24931
  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();
24742
24932
  }
24743
- function Xe(e, t, n, r, i, a, o, s) {
24744
- let c = Ke(r.radius, i);
24933
+ function ut(e, t, n, r, i, a, o, s) {
24934
+ let c = ot(r.radius, i);
24745
24935
  if (c <= 0) {
24746
24936
  t(e);
24747
24937
  return;
24748
24938
  }
24749
- let l = qe(a, o);
24939
+ let l = st(a, o);
24750
24940
  if (!l) {
24751
24941
  t(e);
24752
24942
  return;
24753
24943
  }
24754
- let u = Je(l);
24944
+ let u = ct(l);
24755
24945
  if (!u) {
24756
24946
  t(e);
24757
24947
  return;
24758
24948
  }
24759
24949
  let d = s ?? t;
24760
24950
  t(u);
24761
- let f = qe(a, o), p = qe(a, o), m = f ? Je(f) : null, h = p ? Je(p) : null;
24951
+ let f = st(a, o), p = st(a, o), m = f ? ct(f) : null, h = p ? ct(p) : null;
24762
24952
  if (f && m && p && h) {
24763
24953
  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
24954
  return;
24765
24955
  }
24766
24956
  e.save(), e.drawImage(l, 0, 0), e.restore();
24767
24957
  }
24768
- function Ze(e, t, n, r, i, a, o) {
24769
- let s = qe(a, o);
24958
+ function dt(e, t, n, r, i, a, o) {
24959
+ let s = st(a, o);
24770
24960
  if (!s) return;
24771
- let c = Je(s);
24961
+ let c = ct(s);
24772
24962
  if (!c) return;
24773
- let l = Ke(r.blur, i);
24963
+ let l = ot(r.blur, i);
24774
24964
  c.save(), l > 0 && (c.filter = `blur(${l}px)`), t(c), c.restore(), c.save(), c.globalCompositeOperation = "destination-in";
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);
24965
+ let u = n.y, d = n.y + n.h, f = c.createLinearGradient(0, d, 0, u), p = ft(r.stPos), m = ft(r.endPos);
24776
24966
  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();
24777
- let h = Ke(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24967
+ let h = ot(r.dist, i), g = r.dir * Math.PI / 180, _ = Math.cos(g) * h, v = Math.sin(g) * h;
24778
24968
  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();
24779
24969
  }
24780
- function Qe(e) {
24970
+ function ft(e) {
24781
24971
  return e < 0 ? 0 : e > 1 ? 1 : e;
24782
24972
  }
24783
24973
  //#endregion
24784
24974
  //#region packages/core/src/shape/scene3d-camera.ts
24785
- var $e = 26, et = {
24975
+ var pt = 26, mt = {
24786
24976
  orthographicFront: {
24787
24977
  kind: "orthographic",
24788
24978
  baseLat: 0,
@@ -24795,52 +24985,52 @@ var $e = 26, et = {
24795
24985
  baseLat: 0,
24796
24986
  baseLon: 0,
24797
24987
  baseRev: 0,
24798
- fovDeg: $e
24988
+ fovDeg: pt
24799
24989
  },
24800
24990
  perspectiveRelaxed: {
24801
24991
  kind: "perspective",
24802
24992
  baseLat: 0,
24803
24993
  baseLon: 0,
24804
24994
  baseRev: 0,
24805
- fovDeg: $e
24995
+ fovDeg: pt
24806
24996
  },
24807
24997
  perspectiveRelaxedModerately: {
24808
24998
  kind: "perspective",
24809
24999
  baseLat: 0,
24810
25000
  baseLon: 0,
24811
25001
  baseRev: 0,
24812
- fovDeg: $e
25002
+ fovDeg: pt
24813
25003
  },
24814
25004
  perspectiveAbove: {
24815
25005
  kind: "perspective",
24816
25006
  baseLat: -20,
24817
25007
  baseLon: 0,
24818
25008
  baseRev: 0,
24819
- fovDeg: $e
25009
+ fovDeg: pt
24820
25010
  },
24821
25011
  perspectiveBelow: {
24822
25012
  kind: "perspective",
24823
25013
  baseLat: 20,
24824
25014
  baseLon: 0,
24825
25015
  baseRev: 0,
24826
- fovDeg: $e
25016
+ fovDeg: pt
24827
25017
  },
24828
25018
  perspectiveLeft: {
24829
25019
  kind: "perspective",
24830
25020
  baseLat: 0,
24831
25021
  baseLon: -20,
24832
25022
  baseRev: 0,
24833
- fovDeg: $e
25023
+ fovDeg: pt
24834
25024
  },
24835
25025
  perspectiveRight: {
24836
25026
  kind: "perspective",
24837
25027
  baseLat: 0,
24838
25028
  baseLon: 20,
24839
25029
  baseRev: 0,
24840
- fovDeg: $e
25030
+ fovDeg: pt
24841
25031
  }
24842
25032
  };
24843
- function tt(e, t) {
25033
+ function ht(e, t) {
24844
25034
  let n = Array(9).fill(0);
24845
25035
  for (let r = 0; r < 3; r++) for (let i = 0; i < 3; i++) {
24846
25036
  let a = 0;
@@ -24849,7 +25039,7 @@ function tt(e, t) {
24849
25039
  }
24850
25040
  return n;
24851
25041
  }
24852
- function nt(e) {
25042
+ function gt(e) {
24853
25043
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24854
25044
  return [
24855
25045
  1,
@@ -24863,7 +25053,7 @@ function nt(e) {
24863
25053
  n
24864
25054
  ];
24865
25055
  }
24866
- function rt(e) {
25056
+ function _t(e) {
24867
25057
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24868
25058
  return [
24869
25059
  n,
@@ -24877,7 +25067,7 @@ function rt(e) {
24877
25067
  n
24878
25068
  ];
24879
25069
  }
24880
- function it(e) {
25070
+ function vt(e) {
24881
25071
  let t = e * Math.PI / 180, n = Math.cos(t), r = Math.sin(t);
24882
25072
  return [
24883
25073
  n,
@@ -24891,22 +25081,22 @@ function it(e) {
24891
25081
  1
24892
25082
  ];
24893
25083
  }
24894
- function at(e, t, n, r) {
25084
+ function yt(e, t, n, r) {
24895
25085
  return [
24896
25086
  e[0] * t + e[1] * n + e[2] * r,
24897
25087
  e[3] * t + e[4] * n + e[5] * r,
24898
25088
  e[6] * t + e[7] * n + e[8] * r
24899
25089
  ];
24900
25090
  }
24901
- function ot(e, t) {
25091
+ function bt(e, t) {
24902
25092
  let n = t ? t.lat : e.baseLat, r = t ? t.lon : e.baseLon;
24903
- return tt(it(-(t ? t.rev : e.baseRev)), tt(nt(-n), rt(-r)));
25093
+ return ht(vt(-(t ? t.rev : e.baseRev)), ht(gt(-n), _t(-r)));
24904
25094
  }
24905
- function st(e) {
24906
- return et[e] ?? et.orthographicFront;
25095
+ function xt(e) {
25096
+ return mt[e] ?? mt.orthographicFront;
24907
25097
  }
24908
- function ct(e, t, n) {
24909
- let r = st(e.prst), i = ot(r, e.rot);
25098
+ function St(e, t, n) {
25099
+ let r = xt(e.prst), i = bt(r, e.rot);
24910
25100
  if (t <= 0 || n <= 0) return {
24911
25101
  corners: [
24912
25102
  {
@@ -24938,11 +25128,11 @@ function ct(e, t, n) {
24938
25128
  if (r.kind === "perspective") {
24939
25129
  let t = e.fov ?? r.fovDeg, n = Math.max(1, Math.min(179, t)) * Math.PI / 180, a = l / Math.tan(n / 2);
24940
25130
  u = s.map(([e, t]) => {
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);
25131
+ let [n, r, o] = yt(i, e, t, 0), s = a - o, c = a / (Math.abs(s) < 1e-6 ? 1e-6 * Math.sign(s || 1) : s);
24942
25132
  return [n * c, r * c];
24943
25133
  });
24944
25134
  } else u = s.map(([e, t]) => {
24945
- let [n, r] = at(i, e, t, 0);
25135
+ let [n, r] = yt(i, e, t, 0);
24946
25136
  return [n, r];
24947
25137
  });
24948
25138
  u = u.map(([e, t]) => [e * c, t * c]);
@@ -24967,18 +25157,18 @@ function ct(e, t, n) {
24967
25157
  isIdentity: E
24968
25158
  };
24969
25159
  }
24970
- function lt(e) {
24971
- let { isIdentity: t } = ct(e, 1e3, 1e3);
25160
+ function Ct(e) {
25161
+ let { isIdentity: t } = St(e, 1e3, 1e3);
24972
25162
  return !t;
24973
25163
  }
24974
- function ut(e, t, n, r) {
24975
- let i = st(e.prst), a = ot(i, e.rot);
25164
+ function wt(e, t, n, r) {
25165
+ let i = xt(e.prst), a = bt(i, e.rot);
24976
25166
  if (t <= 0 || n <= 0 || r === 0) return {
24977
25167
  x: 0,
24978
25168
  y: 0
24979
25169
  };
24980
25170
  let o = t / 2, s = n / 2, c = Math.max(o, s), l = e.zoom ?? 1, u = (t) => {
24981
- let [n, r, o] = at(a, 0, 0, t);
25171
+ let [n, r, o] = yt(a, 0, 0, t);
24982
25172
  if (i.kind === "perspective") {
24983
25173
  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);
24984
25174
  return [n * d * l, r * d * l];
@@ -24992,7 +25182,7 @@ function ut(e, t, n, r) {
24992
25182
  }
24993
25183
  //#endregion
24994
25184
  //#region packages/core/src/shape/scene3d-draw.ts
24995
- function dt(e, t, n, r) {
25185
+ function Tt(e, t, n, r) {
24996
25186
  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;
24997
25187
  if (Math.abs(m) < 1e-12 && Math.abs(_) < 1e-12) v = 0, y = 0;
24998
25188
  else {
@@ -25012,15 +25202,15 @@ function dt(e, t, n, r) {
25012
25202
  1
25013
25203
  ];
25014
25204
  }
25015
- function ft(e, t, n) {
25205
+ function Et(e, t, n) {
25016
25206
  let r = e[6] * t + e[7] * n + e[8];
25017
25207
  return {
25018
25208
  x: (e[0] * t + e[1] * n + e[2]) / r,
25019
25209
  y: (e[3] * t + e[4] * n + e[5]) / r
25020
25210
  };
25021
25211
  }
25022
- var pt = 1;
25023
- function mt(e, t) {
25212
+ var Dt = 1;
25213
+ function Ot(e, t) {
25024
25214
  let [n, r, i, a, o, s] = e, [c, l, u, d, f, p] = t;
25025
25215
  return [
25026
25216
  n * c + i * l,
@@ -25031,13 +25221,13 @@ function mt(e, t) {
25031
25221
  r * f + a * p + s
25032
25222
  ];
25033
25223
  }
25034
- function ht(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25224
+ function kt(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25035
25225
  let p = c - o, m = l - s;
25036
25226
  if (p <= 0 || m <= 0) return;
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;
25227
+ 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 = Dt * p / y, S = Dt * 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;
25038
25228
  if (D <= 0 || O <= 0) return;
25039
25229
  e.save();
25040
- let [k, A, j, M, N, P] = mt(i, [
25230
+ let [k, A, j, M, N, P] = Ot(i, [
25041
25231
  h,
25042
25232
  g,
25043
25233
  _,
@@ -25047,22 +25237,22 @@ function ht(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25047
25237
  ]);
25048
25238
  e.setTransform(k, A, j, M, N, P), e.drawImage(t, C, w, D, O, C, w, D, O), e.restore();
25049
25239
  }
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 = {
25240
+ function At(e, t, n, r, i, a, o, s, c, l, u, d, f) {
25241
+ let p = Et(o, s, c), m = Et(o, l, c), h = Et(o, s, u), g = Et(o, l, u), _ = (s + l) / 2, v = (c + u) / 2, y = Et(o, _, v), b = {
25052
25242
  x: (p.x + m.x + h.x + g.x) / 4,
25053
25243
  y: (p.y + m.y + h.y + g.y) / 4
25054
- }, x = vt(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
25244
+ }, x = Mt(i), S = Math.hypot(y.x - b.x, y.y - b.y) * x;
25055
25245
  if (f <= 0 || S <= d) {
25056
- ht(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
25246
+ kt(e, t, n, r, i, a, s * n, c * r, l * n, u * r, p, m, h);
25057
25247
  return;
25058
25248
  }
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));
25249
+ l - s >= u - c ? (At(e, t, n, r, i, a, o, s, c, _, u, d, f - 1), At(e, t, n, r, i, a, o, _, c, l, u, d, f - 1)) : (At(e, t, n, r, i, a, o, s, c, l, v, d, f - 1), At(e, t, n, r, i, a, o, s, v, l, u, d, f - 1));
25060
25250
  }
25061
- function _t(e, t, n, r, i, a = .5) {
25251
+ function jt(e, t, n, r, i, a = .5) {
25062
25252
  if (n <= 0 || r <= 0) return;
25063
25253
  let [o, s, c, l] = i;
25064
25254
  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;
25065
- let u = dt(i[0], i[1], i[2], i[3]);
25255
+ let u = Tt(i[0], i[1], i[2], i[3]);
25066
25256
  if (!u) return;
25067
25257
  let d = t.getTransform(), f = [
25068
25258
  d.a,
@@ -25071,14 +25261,14 @@ function _t(e, t, n, r, i, a = .5) {
25071
25261
  d.d,
25072
25262
  d.e,
25073
25263
  d.f
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());
25264
+ ], p = Mt(f);
25265
+ Lt(e, t, n, r, i, f, p, u, a, 14) || (Ft(), 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(), At(t, e, n, r, f, p, u, 0, 0, 1, 1, a, 14), t.restore());
25076
25266
  }
25077
- function vt(e) {
25267
+ function Mt(e) {
25078
25268
  return Math.sqrt(Math.abs(e[0] * e[3] - e[1] * e[2])) || 1;
25079
25269
  }
25080
- function yt(e, t, n) {
25081
- let r = dt(e[0], e[1], e[2], e[3]);
25270
+ function Nt(e, t, n) {
25271
+ let r = Tt(e[0], e[1], e[2], e[3]);
25082
25272
  if (!r) return null;
25083
25273
  let i = [
25084
25274
  [-t, -n],
@@ -25088,16 +25278,16 @@ function yt(e, t, n) {
25088
25278
  ], a = [];
25089
25279
  for (let [e, t] of i) {
25090
25280
  if (!(r[6] * e + r[7] * t + r[8] > 1e-9)) return null;
25091
- a.push(ft(r, e, t));
25281
+ a.push(Et(r, e, t));
25092
25282
  }
25093
25283
  return a;
25094
25284
  }
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."));
25285
+ var Pt = !1;
25286
+ function Ft() {
25287
+ Pt || (Pt = !0, typeof console < "u" && typeof console.warn == "function" && console.warn("[ooxml] scene3d: no offscreen canvas available — using the direct warp fallback (per-cell bleed only, no supersample). Textured-source seams may be faintly visible; the silhouette and geometry are unaffected."));
25098
25288
  }
25099
- var St = 2;
25100
- function Ct(e, t, n, r, i, a, o, s, c, l) {
25289
+ var It = 2;
25290
+ function Lt(e, t, n, r, i, a, o, s, c, l) {
25101
25291
  let u = i.map((e) => ({
25102
25292
  x: a[0] * e.x + a[2] * e.y + a[4],
25103
25293
  y: a[1] * e.x + a[3] * e.y + a[5]
@@ -25106,11 +25296,11 @@ function Ct(e, t, n, r, i, a, o, s, c, l) {
25106
25296
  d = Math.floor(d) - 1, f = Math.floor(f) - 1, p = Math.ceil(p) + 1, m = Math.ceil(m) + 1;
25107
25297
  let h = p - d, g = m - f;
25108
25298
  if (h <= 0 || g <= 0) return !1;
25109
- let _ = Math.max(1, Math.ceil(h * St)), v = Math.max(1, Math.ceil(g * St)), y = qe(_, v);
25299
+ let _ = Math.max(1, Math.ceil(h * It)), v = Math.max(1, Math.ceil(g * It)), y = st(_, v);
25110
25300
  if (!y || y.width !== _ || y.height !== v) return !1;
25111
25301
  let b = y.getContext("2d") ?? null;
25112
25302
  if (!b) return !1;
25113
- let x = St, S = [
25303
+ let x = It, S = [
25114
25304
  a[0] * x,
25115
25305
  a[1] * x,
25116
25306
  a[2] * x,
@@ -25118,18 +25308,18 @@ function Ct(e, t, n, r, i, a, o, s, c, l) {
25118
25308
  (a[4] - d) * x,
25119
25309
  (a[5] - f) * x
25120
25310
  ];
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);
25311
+ 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(), At(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);
25122
25312
  let C = t.imageSmoothingEnabled, w = t.imageSmoothingQuality;
25123
25313
  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;
25124
25314
  }
25125
25315
  //#endregion
25126
25316
  //#region packages/core/src/shape/bevel-shading.ts
25127
- function wt(e, t) {
25317
+ function Rt(e, t) {
25128
25318
  if (t <= 0) return () => 1;
25129
25319
  let n = (e) => Math.max(0, Math.min(1, e / t));
25130
25320
  switch (e) {
25131
25321
  case "hardEdge": {
25132
- let e = Mt;
25322
+ let e = Kt;
25133
25323
  return (t) => {
25134
25324
  let r = Math.min(1, n(t) / e);
25135
25325
  return r * r * (3 - 2 * r);
@@ -25149,7 +25339,7 @@ function wt(e, t) {
25149
25339
  };
25150
25340
  }
25151
25341
  }
25152
- function Tt(e) {
25342
+ function zt(e) {
25153
25343
  let t = e.length, n = new Float64Array(t);
25154
25344
  if (t === 0) return n;
25155
25345
  let r = new Int32Array(t), i = new Float64Array(t + 1), a = 0;
@@ -25167,7 +25357,7 @@ function Tt(e) {
25167
25357
  }
25168
25358
  return n;
25169
25359
  }
25170
- function Et(e, t = 3) {
25360
+ function Bt(e, t = 3) {
25171
25361
  if (e <= 0) return Array(t).fill(1);
25172
25362
  let n = Math.sqrt(12 * e * e / t + 1), r = Math.floor(n);
25173
25363
  r % 2 == 0 && r--;
@@ -25175,7 +25365,7 @@ function Et(e, t = 3) {
25175
25365
  for (let e = 0; e < t; e++) s.push(e < o ? r : i);
25176
25366
  return s;
25177
25367
  }
25178
- function Dt(e, t, n, r, i, a) {
25368
+ function Vt(e, t, n, r, i, a) {
25179
25369
  let o = 1 / (2 * i + 1);
25180
25370
  if (a) for (let a = 0; a < r; a++) {
25181
25371
  let r = a * n, s = 0;
@@ -25196,29 +25386,29 @@ function Dt(e, t, n, r, i, a) {
25196
25386
  }
25197
25387
  }
25198
25388
  }
25199
- function Ot(e, t, n, r) {
25389
+ function Ht(e, t, n, r) {
25200
25390
  let i = Float64Array.from(e);
25201
25391
  if (r <= 0 || t <= 0 || n <= 0) return i;
25202
25392
  let a = new Float64Array(t * n);
25203
- for (let e of Et(r, 3)) {
25393
+ for (let e of Bt(r, 3)) {
25204
25394
  let r = Math.max(1, (e - 1) / 2);
25205
- Dt(i, a, t, n, r, !0), Dt(a, i, t, n, r, !1);
25395
+ Vt(i, a, t, n, r, !0), Vt(a, i, t, n, r, !1);
25206
25396
  }
25207
25397
  return i;
25208
25398
  }
25209
- function kt(e, t, n, r = 128) {
25399
+ function Ut(e, t, n, r = 128) {
25210
25400
  let i = new Float64Array(t * n);
25211
25401
  for (let a = 0; a < t * n; a++) i[a] = (e[a] ?? 0) >= r ? 0x56bc75e2d63100000 : 0;
25212
25402
  let a = new Float64Array(n);
25213
25403
  for (let e = 0; e < t; e++) {
25214
25404
  for (let r = 0; r < n; r++) a[r] = i[r * t + e];
25215
- let r = Tt(a);
25405
+ let r = zt(a);
25216
25406
  for (let a = 0; a < n; a++) i[a * t + e] = r[a];
25217
25407
  }
25218
25408
  let o = new Float64Array(t);
25219
25409
  for (let e = 0; e < n; e++) {
25220
25410
  for (let n = 0; n < t; n++) o[n] = i[e * t + n];
25221
- let n = Tt(o);
25411
+ let n = zt(o);
25222
25412
  for (let r = 0; r < t; r++) i[e * t + r] = n[r];
25223
25413
  }
25224
25414
  for (let e = 0; e < n; e++) for (let r = 0; r < t; r++) {
@@ -25230,15 +25420,15 @@ function kt(e, t, n, r = 128) {
25230
25420
  for (let e = 0; e < t * n; e++) i[e] = Math.sqrt(i[e]);
25231
25421
  return i;
25232
25422
  }
25233
- var At = .25, jt = .35, Mt = .5;
25234
- function Nt(e, t, n, r, i, a) {
25423
+ var Wt = .25, Gt = .35, Kt = .5;
25424
+ function qt(e, t, n, r, i, a) {
25235
25425
  let o = new Float32Array(t * n * 3), s = new Uint8Array(t * n), c = new Float32Array(t * n);
25236
25426
  if (t <= 0 || n <= 0) return {
25237
25427
  normals: o,
25238
25428
  bandMask: s,
25239
25429
  bandWeight: c
25240
25430
  };
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) => {
25431
+ let l = Ut(e, t, n), u = Rt(i, r), d = (n, r) => (e[r * t + n] ?? 0) >= 128, f = (r > 0 ? a / r : 0) * r, p = Ht(l, t, n, Math.max(1, r * Wt)), m = (e) => {
25242
25432
  let t = u(Math.max(0, e - .5));
25243
25433
  return u(e + .5) - t;
25244
25434
  };
@@ -25253,9 +25443,9 @@ function Nt(e, t, n, r, i, a) {
25253
25443
  o[a * 3 + 2] = 1;
25254
25444
  continue;
25255
25445
  }
25256
- let g = u / r, _ = 1 - jt, v = 1;
25446
+ let g = u / r, _ = 1 - Gt, v = 1;
25257
25447
  if (g > _) {
25258
- let e = Math.min(1, (g - _) / jt);
25448
+ let e = Math.min(1, (g - _) / Gt);
25259
25449
  v = 1 - e * e * (3 - 2 * e);
25260
25450
  }
25261
25451
  c[a] = v;
@@ -25270,7 +25460,7 @@ function Nt(e, t, n, r, i, a) {
25270
25460
  bandWeight: c
25271
25461
  };
25272
25462
  }
25273
- var Pt = 35 * Math.PI / 180, Ft = 12 * Math.PI / 180, It = {
25463
+ var Jt = 35 * Math.PI / 180, Yt = 12 * Math.PI / 180, Xt = {
25274
25464
  t: {
25275
25465
  x: 0,
25276
25466
  y: -1
@@ -25304,22 +25494,22 @@ var Pt = 35 * Math.PI / 180, Ft = 12 * Math.PI / 180, It = {
25304
25494
  y: 1
25305
25495
  }
25306
25496
  };
25307
- function Lt(e, t, n) {
25497
+ function Zt(e, t, n) {
25308
25498
  let r = n * Math.PI / 180, i = Math.cos(r), a = Math.sin(r);
25309
25499
  return {
25310
25500
  x: e * i - t * a,
25311
25501
  y: e * a + t * i
25312
25502
  };
25313
25503
  }
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);
25504
+ function Qt(e, t, n) {
25505
+ let r = Xt[t] ?? Xt.t;
25506
+ return n && n.rev && (r = Zt(r.x, r.y, n.rev)), en(r.x, r.y, Jt);
25317
25507
  }
25318
- function zt(e) {
25508
+ function $t(e) {
25319
25509
  let t = Math.hypot(e.x, e.y) || 1;
25320
- return Bt(-e.x / t, -e.y / t, Ft);
25510
+ return en(-e.x / t, -e.y / t, Yt);
25321
25511
  }
25322
- function Bt(e, t, n) {
25512
+ function en(e, t, n) {
25323
25513
  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;
25324
25514
  return {
25325
25515
  x: o / l,
@@ -25327,7 +25517,7 @@ function Bt(e, t, n) {
25327
25517
  z: c / l
25328
25518
  };
25329
25519
  }
25330
- var Vt = 2, Ht = {
25520
+ var tn = 2, nn = {
25331
25521
  matte: {
25332
25522
  ambient: .62,
25333
25523
  diffuse: .45,
@@ -25340,8 +25530,8 @@ var Vt = 2, Ht = {
25340
25530
  specular: .35,
25341
25531
  shininess: 22
25342
25532
  }
25343
- }, Ut = .8;
25344
- function Wt(e) {
25533
+ }, rn = .8;
25534
+ function an(e) {
25345
25535
  switch (e) {
25346
25536
  case "plastic":
25347
25537
  case "metal":
@@ -25352,8 +25542,8 @@ function Wt(e) {
25352
25542
  default: return "matte";
25353
25543
  }
25354
25544
  }
25355
- function Gt(e, t, n = !0) {
25356
- let r = Ht[e], i = {
25545
+ function on(e, t, n = !0) {
25546
+ let r = nn[e], i = {
25357
25547
  light: t,
25358
25548
  material: e,
25359
25549
  ambient: r.ambient,
@@ -25361,9 +25551,9 @@ function Gt(e, t, n = !0) {
25361
25551
  specular: r.specular,
25362
25552
  shininess: r.shininess
25363
25553
  };
25364
- return n && (i.fillLight = zt(t), i.fillDiffuse = i.diffuse * Ut), i;
25554
+ return n && (i.fillLight = $t(t), i.fillDiffuse = i.diffuse * rn), i;
25365
25555
  }
25366
- function Kt(e, t) {
25556
+ function sn(e, t) {
25367
25557
  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;
25368
25558
  if (t.fillLight && t.fillDiffuse) {
25369
25559
  let n = e.x * t.fillLight.x + e.y * t.fillLight.y + e.z * t.fillLight.z;
@@ -25376,14 +25566,14 @@ function Kt(e, t) {
25376
25566
  }
25377
25567
  return Math.max(0, t.ambient + r + i + a);
25378
25568
  }
25379
- function qt(e, t) {
25569
+ function cn(e, t) {
25380
25570
  let n = e.canvas.width, r = e.canvas.height;
25381
25571
  if (n <= 0 || r <= 0) return;
25382
25572
  let i = t.widthPx;
25383
25573
  if (i < .75) return;
25384
25574
  let a = e.getImageData(0, 0, n, r), o = a.data, s = new Uint8ClampedArray(n * r);
25385
25575
  for (let e = 0; e < n * r; e++) s[e] = o[e * 4 + 3];
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({
25576
+ let { bandMask: c, bandWeight: l, normals: u } = qt(s, n, r, i, t.prst, t.heightPx), d = on(t.material, t.light), f = sn({
25387
25577
  x: 0,
25388
25578
  y: 0,
25389
25579
  z: 1
@@ -25394,13 +25584,13 @@ function qt(e, t) {
25394
25584
  if (n <= 0) continue;
25395
25585
  let r = u[e * 3], i = u[e * 3 + 1], a = u[e * 3 + 2];
25396
25586
  t.bottom && (r = -r, i = -i);
25397
- let s = 1 + (Kt({
25587
+ let s = 1 + (sn({
25398
25588
  x: r,
25399
25589
  y: i,
25400
25590
  z: a
25401
25591
  }, d) / f - 1) * n, p = e * 4;
25402
25592
  if (s >= 1) {
25403
- let e = Math.min(1, (s - 1) * Vt);
25593
+ let e = Math.min(1, (s - 1) * tn);
25404
25594
  for (let t = 0; t < 3; t++) {
25405
25595
  let n = Math.min(255, o[p + t] * s);
25406
25596
  o[p + t] = n + (255 - n) * e;
@@ -25409,7 +25599,7 @@ function qt(e, t) {
25409
25599
  }
25410
25600
  e.putImageData(a, 0, 0);
25411
25601
  }
25412
- function Jt(e, t) {
25602
+ function ln(e, t) {
25413
25603
  let n = e.canvas.width, r = e.canvas.height;
25414
25604
  if (n <= 0 || r <= 0) return;
25415
25605
  let i = t.offsetX, a = t.offsetY, o = Math.hypot(i, a);
@@ -25436,7 +25626,7 @@ function Jt(e, t) {
25436
25626
  }
25437
25627
  //#endregion
25438
25628
  //#region packages/core/src/sparkline/renderer.ts
25439
- function Yt(e, t, n) {
25629
+ function un(e, t, n) {
25440
25630
  let { values: r } = n;
25441
25631
  if (r.length === 0 || t.w <= 0 || t.h <= 0) return;
25442
25632
  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");
@@ -25445,11 +25635,11 @@ function Yt(e, t, n) {
25445
25635
  m === h && (h = m + 1, --m);
25446
25636
  let g = h - m, _ = (e) => c + u - (e - m) / g * u;
25447
25637
  if (n.kind === "stem") {
25448
- Qt(e, n, s, c, l, u);
25638
+ pn(e, n, s, c, l, u);
25449
25639
  return;
25450
25640
  }
25451
25641
  if (n.kind === "column") {
25452
- Zt(e, n, r, s, c, l, u, m, h);
25642
+ fn(e, n, r, s, c, l, u, m, h);
25453
25643
  return;
25454
25644
  }
25455
25645
  if (n.displayXAxis && m < 0 && h > 0) {
@@ -25473,7 +25663,7 @@ function Yt(e, t, n) {
25473
25663
  b ? e.lineTo(i, a) : (e.moveTo(i, a), b = !0);
25474
25664
  }
25475
25665
  e.stroke(), e.restore();
25476
- let S = Math.max(1, Math.min(2.5, u * .12)), C = Xt(r, n);
25666
+ let S = Math.max(1, Math.min(2.5, u * .12)), C = dn(r, n);
25477
25667
  for (let t = 0; t < v; t++) {
25478
25668
  let a = r[t];
25479
25669
  if (a == null) continue;
@@ -25481,7 +25671,7 @@ function Yt(e, t, n) {
25481
25671
  (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());
25482
25672
  }
25483
25673
  }
25484
- function Xt(e, t) {
25674
+ function dn(e, t) {
25485
25675
  let n = e.map(() => null), r = e.map((e) => typeof e == "number" ? e : null), i = r.findIndex((e) => e != null), a = -1;
25486
25676
  for (let e = r.length - 1; e >= 0; e--) if (r[e] != null) {
25487
25677
  a = e;
@@ -25496,10 +25686,10 @@ function Xt(e, t) {
25496
25686
  if (t.low && t.colorLow && !Number.isNaN(c)) for (let e = 0; e < r.length; e++) r[e] === c && (n[e] = t.colorLow);
25497
25687
  return n;
25498
25688
  }
25499
- function Zt(e, t, n, r, i, a, o, s, c) {
25689
+ function fn(e, t, n, r, i, a, o, s, c) {
25500
25690
  let l = n.length;
25501
25691
  if (l === 0) return;
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);
25692
+ 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 = dn(n, t);
25503
25693
  for (let i = 0; i < l; i++) {
25504
25694
  let a = n[i];
25505
25695
  if (a == null) continue;
@@ -25507,10 +25697,10 @@ function Zt(e, t, n, r, i, a, o, s, c) {
25507
25697
  e.save(), e.fillStyle = o, e.fillRect(c, Math.min(p, s), l, Math.abs(p - s)), e.restore();
25508
25698
  }
25509
25699
  }
25510
- function Qt(e, t, n, r, i, a) {
25700
+ function pn(e, t, n, r, i, a) {
25511
25701
  let o = t.values.length;
25512
25702
  if (o === 0) return;
25513
- let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = Xt(t.values, t);
25703
+ let s = r + a / 2, c = a / 2, l = i / o, u = Math.min(1.5, l * .15), d = dn(t.values, t);
25514
25704
  for (let r = 0; r < o; r++) {
25515
25705
  let i = t.values[r];
25516
25706
  if (i == null || i === 0) continue;
@@ -25520,13 +25710,13 @@ function Qt(e, t, n, r, i, a) {
25520
25710
  }
25521
25711
  //#endregion
25522
25712
  //#region packages/core/src/math/mathml.ts
25523
- var $t = {
25713
+ var mn = {
25524
25714
  "&": "&amp;",
25525
25715
  "<": "&lt;",
25526
25716
  ">": "&gt;",
25527
25717
  "\"": "&quot;"
25528
- }, Q = (e) => e.replace(/[&<>"]/g, (e) => $t[e]);
25529
- function en(e) {
25718
+ }, hn = (e) => e.replace(/[&<>"]/g, (e) => mn[e]);
25719
+ function gn(e) {
25530
25720
  switch (e) {
25531
25721
  case "roman": return "normal";
25532
25722
  case "bold": return "bold";
@@ -25534,10 +25724,10 @@ function en(e) {
25534
25724
  case "italic": return null;
25535
25725
  }
25536
25726
  }
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 = () => {
25540
- a &&= (i += `<mn${r}>${Q(a)}</mn>`, "");
25727
+ var _n = new Set([..."⏞⏟⎴⎵︷︸⏜⏝{}[]()¯_‾"]), vn = "+−±∓×÷·∗⋅∘∙*/", yn = "=≠<>≤≥≈≡∼≅≃→←↔⇒∈∉⊂⊆⊃⊇∝≪≫⊥≔", bn = "([{⟨⌈⌊", xn = ")]}⟩⌉⌋", Sn = ",;";
25728
+ function Cn(e, t) {
25729
+ let n = gn(t), r = n ? ` mathvariant="${n}"` : "", i = "", a = "", o = () => {
25730
+ a &&= (i += `<mn${r}>${hn(a)}</mn>`, "");
25541
25731
  };
25542
25732
  for (let t of e) {
25543
25733
  if (t === " ") {
@@ -25548,42 +25738,42 @@ function cn(e, t) {
25548
25738
  a += t;
25549
25739
  continue;
25550
25740
  }
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>`;
25741
+ o(), vn.includes(t) || yn.includes(t) || Sn.includes(t) ? i += `<mo>${hn(t)}</mo>` : bn.includes(t) || xn.includes(t) ? i += `<mo fence="true" stretchy="false">${hn(t)}</mo>` : i += `<mi${r}>${hn(t)}</mi>`;
25552
25742
  }
25553
25743
  return o(), i;
25554
25744
  }
25555
- function ln(e) {
25556
- return e.map(un).join("");
25745
+ function wn(e) {
25746
+ return e.map(Tn).join("");
25557
25747
  }
25558
25748
  function $(e) {
25559
- return `<mrow>${ln(e)}</mrow>`;
25749
+ return `<mrow>${wn(e)}</mrow>`;
25560
25750
  }
25561
- function un(e) {
25751
+ function Tn(e) {
25562
25752
  switch (e.kind) {
25563
- case "run": return cn(e.text, e.style);
25753
+ case "run": return Cn(e.text, e.style);
25564
25754
  case "group": return $(e.items);
25565
25755
  case "fraction": return `<mfrac${e.bar === !1 ? " linethickness=\"0\"" : ""}>${$(e.num)}${$(e.den)}</mfrac>`;
25566
25756
  case "sup": return `<msup>${$(e.base)}${$(e.sup ?? [])}</msup>`;
25567
25757
  case "sub": return `<msub>${$(e.base)}${$(e.sub ?? [])}</msub>`;
25568
25758
  case "subSup": return `<msubsup>${$(e.base)}${$(e.sub ?? [])}${$(e.sup ?? [])}</msubsup>`;
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);
25759
+ case "nary": return Mn(e);
25760
+ case "delimiter": return Nn(e);
25761
+ case "radical": return e.index && e.index.length ? `<mroot>${$(e.radicand)}${$(e.index)}</mroot>` : `<msqrt>${wn(e.radicand)}</msqrt>`;
25762
+ case "limit": return kn(e);
25763
+ case "array": return An(e);
25574
25764
  case "groupChr": {
25575
- let t = $(e.base), n = tn.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${Q(e.char)}</mo>`;
25765
+ let t = $(e.base), n = _n.has(e.char), r = e.pos === "top" ? "mover" : "munder", i = `<mo stretchy="${n}">${hn(e.char)}</mo>`;
25576
25766
  return n ? `<${r}>${t}${i}</${r}>` : `<${r} accent="true">${t}${i}</${r}>`;
25577
25767
  }
25578
25768
  case "bar": {
25579
25769
  let t = $(e.base), n = "<mo stretchy=\"true\">&#x2015;</mo>";
25580
25770
  return e.pos === "bot" ? `<munder>${t}${n}</munder>` : `<mover>${t}${n}</mover>`;
25581
25771
  }
25582
- case "accent": return pn(e);
25772
+ case "accent": return On(e);
25583
25773
  case "func": return `<mrow>${$(e.name)}<mo>&#x2061;</mo>${$(e.arg)}</mrow>`;
25584
25774
  }
25585
25775
  }
25586
- var dn = {
25776
+ var En = {
25587
25777
  "̀": "`",
25588
25778
  "́": "´",
25589
25779
  "̂": "^",
@@ -25594,7 +25784,7 @@ var dn = {
25594
25784
  "̌": "ˇ",
25595
25785
  "⃗": "→",
25596
25786
  "⃖": "←"
25597
- }, fn = new Set([
25787
+ }, Dn = new Set([
25598
25788
  "̅",
25599
25789
  "̄",
25600
25790
  "¯",
@@ -25602,45 +25792,45 @@ var dn = {
25602
25792
  "̲",
25603
25793
  "̳"
25604
25794
  ]);
25605
- function pn(e) {
25795
+ function On(e) {
25606
25796
  let t = $(e.base);
25607
- if (fn.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25608
- let n = dn[e.char] ?? e.char;
25609
- return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${Q(n)}</mo></mover>`;
25797
+ if (Dn.has(e.char)) return `<mover>${t}<mo stretchy="true">&#x2015;</mo></mover>`;
25798
+ let n = En[e.char] ?? e.char;
25799
+ return `<mover accent="true">${t}<mo stretchy="${n === "→" || n === "←" ? "true" : "false"}">${hn(n)}</mo></mover>`;
25610
25800
  }
25611
- function mn(e) {
25801
+ function kn(e) {
25612
25802
  let t = $(e.base), n = e.lower && e.lower.length ? $(e.lower) : null, r = e.upper && e.upper.length ? $(e.upper) : null;
25613
25803
  return n && r ? `<munderover>${t}${n}${r}</munderover>` : n ? `<munder>${t}${n}</munder>` : r ? `<mover>${t}${r}</mover>` : t;
25614
25804
  }
25615
- function hn(e) {
25805
+ function An(e) {
25616
25806
  let t = Math.max(1, ...e.rows.map((e) => e.length)), n;
25617
25807
  n = e.align === "eq" ? Array.from({ length: t }, (e, t) => t % 2 == 0 ? "right" : "left").join(" ") : e.align === "left" ? "left" : "center";
25618
- let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${ln(e)}</mtd>`).join("")}</mtr>`).join("");
25808
+ let r = e.rows.map((e) => `<mtr>${e.map((e) => `<mtd>${wn(e)}</mtd>`).join("")}</mtr>`).join("");
25619
25809
  return `<mtable columnalign="${n}" rowspacing="0.2em" columnspacing="0.3em">${r}</mtable>`;
25620
25810
  }
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>`;
25811
+ var jn = new Set([..."∫∬∭∮∯∰∱∲∳⨌⨍⨎⨏⨐⨑⨒⨓⨔⨕⨖⨗"]);
25812
+ function Mn(e) {
25813
+ let t = e.limLoc === "subSup" ? !0 : e.limLoc === "undOvr" ? !1 : jn.has(e.op), n = `<mo largeop="true">${hn(e.op)}</mo>`, r = e.sub ?? [], i = e.sup ?? [], a;
25814
+ 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}${wn(e.body)}</mrow>`;
25625
25815
  }
25626
- function vn(e) {
25627
- let t = (e) => `<mo fence="true" stretchy="true">${Q(e)}</mo>`, n = e.items.map((e) => $(e)).join("<mo separator=\"true\">,</mo>");
25816
+ function Nn(e) {
25817
+ let t = (e) => `<mo fence="true" stretchy="true">${hn(e)}</mo>`, n = e.items.map((e) => $(e)).join("<mo separator=\"true\">,</mo>");
25628
25818
  return `<mrow>${t(e.begChar)}${n}${t(e.endChar)}</mrow>`;
25629
25819
  }
25630
- function yn(e, t) {
25631
- return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${ln(e)}</math>`;
25820
+ function Pn(e, t) {
25821
+ return `<math xmlns="http://www.w3.org/1998/Math/MathML" display="${t ? "block" : "inline"}">${wn(e)}</math>`;
25632
25822
  }
25633
25823
  //#endregion
25634
25824
  //#region packages/core/src/canvas/env.ts
25635
- function bn(e) {
25825
+ function Fn(e) {
25636
25826
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
25637
25827
  }
25638
- function xn(e = 1) {
25828
+ function In(e = 1) {
25639
25829
  return typeof window < "u" && window.devicePixelRatio || e;
25640
25830
  }
25641
25831
  //#endregion
25642
25832
  //#region packages/core/src/worker/bridge.ts
25643
- var Sn = class {
25833
+ var Ln = class {
25644
25834
  _worker;
25645
25835
  _opts;
25646
25836
  _pending = /* @__PURE__ */ new Map();
@@ -25680,7 +25870,7 @@ var Sn = class {
25680
25870
  for (let e of this._pending.values()) e.reject(/* @__PURE__ */ Error("Worker terminated"));
25681
25871
  this._pending.clear();
25682
25872
  }
25683
- }, Cn = [
25873
+ }, Rn = [
25684
25874
  "L",
25685
25875
  "R",
25686
25876
  "AL",
@@ -25704,7 +25894,7 @@ var Sn = class {
25704
25894
  "RLI",
25705
25895
  "FSI",
25706
25896
  "PDI"
25707
- ], wn = [
25897
+ ], zn = [
25708
25898
  0,
25709
25899
  9,
25710
25900
  10,
@@ -26972,7 +27162,7 @@ var Sn = class {
26972
27162
  1048574,
26973
27163
  1048576,
26974
27164
  1114110
26975
- ], Tn = [
27165
+ ], Bn = [
26976
27166
  9,
26977
27167
  11,
26978
27168
  10,
@@ -28240,7 +28430,7 @@ var Sn = class {
28240
28430
  9,
28241
28431
  0,
28242
28432
  9
28243
- ], En = [
28433
+ ], Vn = [
28244
28434
  40,
28245
28435
  41,
28246
28436
  41,
@@ -29097,7 +29287,7 @@ var Sn = class {
29097
29287
  65379,
29098
29288
  65379,
29099
29289
  65378
29100
- ], Dn = [
29290
+ ], Hn = [
29101
29291
  40,
29102
29292
  41,
29103
29293
  0,
@@ -29485,42 +29675,42 @@ var Sn = class {
29485
29675
  ];
29486
29676
  //#endregion
29487
29677
  //#region packages/core/src/text/bidi/char-data.ts
29488
- function On(e) {
29489
- let t = 0, n = wn.length - 1;
29678
+ function Un(e) {
29679
+ let t = 0, n = zn.length - 1;
29490
29680
  for (; t < n;) {
29491
29681
  let r = t + n + 1 >> 1;
29492
- wn[r] <= e ? t = r : n = r - 1;
29682
+ zn[r] <= e ? t = r : n = r - 1;
29493
29683
  }
29494
- return Tn[t];
29684
+ return Bn[t];
29495
29685
  }
29496
- function kn(e) {
29497
- return Cn[On(e)];
29686
+ function Wn(e) {
29687
+ return Rn[Un(e)];
29498
29688
  }
29499
- var An = (() => {
29689
+ var Gn = (() => {
29500
29690
  let e = /* @__PURE__ */ new Map();
29501
- for (let t = 0; t < En.length; t += 2) e.set(En[t], En[t + 1]);
29691
+ for (let t = 0; t < Vn.length; t += 2) e.set(Vn[t], Vn[t + 1]);
29502
29692
  return e;
29503
29693
  })();
29504
- function jn(e) {
29505
- return An.get(e) ?? null;
29694
+ function Kn(e) {
29695
+ return Gn.get(e) ?? null;
29506
29696
  }
29507
- var Mn = (() => {
29697
+ var qn = (() => {
29508
29698
  let e = /* @__PURE__ */ new Map();
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"
29699
+ for (let t = 0; t < Hn.length; t += 3) e.set(Hn[t], {
29700
+ pair: Hn[t + 1],
29701
+ type: Hn[t + 2] === 0 ? "o" : "c"
29512
29702
  });
29513
29703
  return e;
29514
29704
  })();
29515
- function Nn(e) {
29516
- return Mn.get(e) ?? null;
29705
+ function Jn(e) {
29706
+ return qn.get(e) ?? null;
29517
29707
  }
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) {
29708
+ var Yn = (e) => e === "RLE" || e === "LRE" || e === "RLO" || e === "LRO" || e === "PDF" || e === "BN", Xn = (e) => e === "LRI" || e === "RLI" || e === "FSI", Zn = (e) => e === "B" || e === "S" || e === "WS" || e === "ON" || e === "FSI" || e === "LRI" || e === "RLI" || e === "PDI", Qn = (e) => e & 1 ? e + 2 : e + 1, $n = (e) => e & 1 ? e + 1 : e + 2;
29709
+ function er(e, t, n) {
29520
29710
  let r = 0;
29521
29711
  for (let i = t; i < n; i++) {
29522
29712
  let t = e[i];
29523
- if (Fn(t)) r++;
29713
+ if (Xn(t)) r++;
29524
29714
  else if (t === "PDI") r > 0 && r--;
29525
29715
  else if (r === 0) {
29526
29716
  if (t === "L") return 0;
@@ -29529,11 +29719,11 @@ function zn(e, t, n) {
29529
29719
  }
29530
29720
  return 0;
29531
29721
  }
29532
- function Bn(e) {
29722
+ function tr(e) {
29533
29723
  let t = e.length, n = new Int32Array(t).fill(t), r = new Int32Array(t).fill(-1), i = [];
29534
29724
  for (let a = 0; a < t; a++) {
29535
29725
  let t = e[a];
29536
- if (Fn(t)) i.push(a);
29726
+ if (Xn(t)) i.push(a);
29537
29727
  else if (t === "PDI" && i.length) {
29538
29728
  let e = i.pop();
29539
29729
  n[e] = a, r[a] = e;
@@ -29544,7 +29734,7 @@ function Bn(e) {
29544
29734
  initOf: r
29545
29735
  };
29546
29736
  }
29547
- function Vn(e, t, n) {
29737
+ function nr(e, t, n) {
29548
29738
  let r = e.length, i = Array(r).fill(t), a = e.slice(), o = [{
29549
29739
  level: t,
29550
29740
  override: "neutral",
@@ -29558,7 +29748,7 @@ function Vn(e, t, n) {
29558
29748
  case "RLO":
29559
29749
  case "LRO": {
29560
29750
  i[d] = u().level;
29561
- let e = r === "RLE" || r === "RLO" ? Ln(u().level) : Rn(u().level);
29751
+ let e = r === "RLE" || r === "RLO" ? Qn(u().level) : $n(u().level);
29562
29752
  e <= 125 && s === 0 && c === 0 ? o.push({
29563
29753
  level: e,
29564
29754
  override: r === "RLO" ? "R" : r === "LRO" ? "L" : "neutral",
@@ -29573,8 +29763,8 @@ function Vn(e, t, n) {
29573
29763
  let t = u().override;
29574
29764
  t !== "neutral" && (a[d] = t);
29575
29765
  let f;
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);
29766
+ f = r === "RLI" ? "R" : r === "LRI" ? "L" : er(e, d + 1, n[d]) === 1 ? "R" : "L";
29767
+ let p = f === "R" ? Qn(u().level) : $n(u().level);
29578
29768
  p <= 125 && s === 0 && c === 0 ? (l++, o.push({
29579
29769
  level: p,
29580
29770
  override: "neutral",
@@ -29616,10 +29806,10 @@ function Vn(e, t, n) {
29616
29806
  types: a
29617
29807
  };
29618
29808
  }
29619
- function Hn(e) {
29809
+ function rr(e) {
29620
29810
  return e === 9001 ? 12296 : e === 9002 ? 12297 : e;
29621
29811
  }
29622
- function Un(e, t, n, r, i, a) {
29812
+ function ir(e, t, n, r, i, a) {
29623
29813
  let o = e.length, s = [];
29624
29814
  for (let e = 0; e < o; e++) n[e] || s.push(e);
29625
29815
  let c = [];
@@ -29637,7 +29827,7 @@ function Un(e, t, n, r, i, a) {
29637
29827
  for (;;) {
29638
29828
  for (let e of p) f.push(e);
29639
29829
  let t = p[p.length - 1];
29640
- if (Fn(e[t]) && i[t] !== o) {
29830
+ if (Xn(e[t]) && i[t] !== o) {
29641
29831
  let e = l.get(i[t]);
29642
29832
  if (e) {
29643
29833
  p = e;
@@ -29652,7 +29842,7 @@ function Un(e, t, n, r, i, a) {
29652
29842
  break;
29653
29843
  }
29654
29844
  let g = u(Math.max(m, h)), _ = f[f.length - 1], v = r;
29655
- if (!(Fn(e[_]) && i[_] === o)) {
29845
+ if (!(Xn(e[_]) && i[_] === o)) {
29656
29846
  for (let e = _ + 1; e < o; e++) if (!n[e]) {
29657
29847
  v = t[e];
29658
29848
  break;
@@ -29668,8 +29858,8 @@ function Un(e, t, n, r, i, a) {
29668
29858
  }
29669
29859
  return d;
29670
29860
  }
29671
- var Wn = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29672
- function Gn(e, t, n, r, i) {
29861
+ var ar = (e) => e === "L" ? "L" : e === "R" || e === "EN" || e === "AN" ? "R" : null;
29862
+ function or(e, t, n, r, i) {
29673
29863
  let a = e.indices, o = a.length, { sos: s, eos: c, level: l } = e;
29674
29864
  for (let e = 0; e < o; e++) {
29675
29865
  let t = a[e];
@@ -29716,15 +29906,15 @@ function Gn(e, t, n, r, i) {
29716
29906
  outer: for (let n = 0; n < o; n++) {
29717
29907
  let i = a[n];
29718
29908
  if (r[i] !== "ON") continue;
29719
- let o = Nn(t[i]);
29909
+ let o = Jn(t[i]);
29720
29910
  if (o) if (o.type === "o") {
29721
29911
  if (e.length === 63) break outer;
29722
29912
  e.push({
29723
- expect: Hn(o.pair),
29913
+ expect: rr(o.pair),
29724
29914
  pos: n
29725
29915
  });
29726
29916
  } else {
29727
- let r = Hn(t[i]);
29917
+ let r = rr(t[i]);
29728
29918
  for (let t = e.length - 1; t >= 0; t--) if (e[t].expect === r) {
29729
29919
  f.push({
29730
29920
  open: e[t].pos,
@@ -29742,7 +29932,7 @@ function Gn(e, t, n, r, i) {
29742
29932
  for (let { open: e, close: t } of f) {
29743
29933
  let n = !1, i = !1;
29744
29934
  for (let o = e + 1; o < t; o++) {
29745
- let e = Wn(r[a[o]]);
29935
+ let e = ar(r[a[o]]);
29746
29936
  e === u ? n = !0 : e === d && (i = !0);
29747
29937
  }
29748
29938
  let o = null;
@@ -29750,7 +29940,7 @@ function Gn(e, t, n, r, i) {
29750
29940
  else if (i) {
29751
29941
  let t = s;
29752
29942
  for (let n = e - 1; n >= 0; n--) {
29753
- let e = Wn(r[a[n]]);
29943
+ let e = ar(r[a[n]]);
29754
29944
  if (e) {
29755
29945
  t = e;
29756
29946
  break;
@@ -29761,29 +29951,29 @@ function Gn(e, t, n, r, i) {
29761
29951
  o && (r[a[e]] = o, r[a[t]] = o, p(e, o), p(t, o));
29762
29952
  }
29763
29953
  for (let e = 0; e < o; e++) {
29764
- if (!In(r[a[e]])) continue;
29954
+ if (!Zn(r[a[e]])) continue;
29765
29955
  let t = e;
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;
29956
+ for (; t < o && Zn(r[a[t]]);) t++;
29957
+ let n = e > 0 ? ar(r[a[e - 1]]) : s, i = t < o ? ar(r[a[t]]) : c;
29768
29958
  if (n && i && n === i) for (let i = e; i < t; i++) r[a[i]] = n;
29769
29959
  e = t - 1;
29770
29960
  }
29771
- for (let e = 0; e < o; e++) In(r[a[e]]) && (r[a[e]] = u);
29961
+ for (let e = 0; e < o; e++) Zn(r[a[e]]) && (r[a[e]] = u);
29772
29962
  for (let e = 0; e < o; e++) {
29773
29963
  let t = a[e], n = r[t];
29774
29964
  l & 1 ? (n === "L" || n === "EN" || n === "AN") && (i[t] += 1) : n === "R" ? i[t] += 1 : (n === "AN" || n === "EN") && (i[t] += 2);
29775
29965
  }
29776
29966
  }
29777
- function Kn(e, t, n) {
29967
+ function sr(e, t, n) {
29778
29968
  let r = e.length, i = Array(r);
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);
29969
+ for (let t = 0; t < r; t++) i[t] = n?.[t] ?? Wn(e[t]);
29970
+ let a = t === "rtl" ? 1 : t === "ltr" ? 0 : er(i, 0, r), { pdiOf: o, initOf: s } = tr(i), { levels: c, types: l } = nr(i, a, o), u = Array(r);
29971
+ for (let e = 0; e < r; e++) u[e] = Yn(i[e]);
29972
+ let d = ir(i, c, u, a, o, s), f = l.slice();
29973
+ for (let t of d) or(t, e, i, f, c);
29784
29974
  let p = (e) => {
29785
29975
  let t = i[e];
29786
- return t === "WS" || Fn(t) || t === "PDI" || u[e];
29976
+ return t === "WS" || Xn(t) || t === "PDI" || u[e];
29787
29977
  };
29788
29978
  for (let e = 0; e < r; e++) {
29789
29979
  let t = i[e];
@@ -29799,7 +29989,7 @@ function Kn(e, t, n) {
29799
29989
  paragraphLevel: a
29800
29990
  };
29801
29991
  }
29802
- function qn(e, t, n) {
29992
+ function cr(e, t, n) {
29803
29993
  let r = [];
29804
29994
  for (let i = t; i < n; i++) {
29805
29995
  let t = e[i];
@@ -29827,7 +30017,7 @@ function qn(e, t, n) {
29827
30017
  }
29828
30018
  //#endregion
29829
30019
  //#region packages/core/src/text/bidi/uax9/index.ts
29830
- function Jn(e) {
30020
+ function lr(e) {
29831
30021
  let t = [], n = [], r = [];
29832
30022
  for (let i = 0; i < e.length;) {
29833
30023
  let a = e.codePointAt(i), o = a > 65535 ? 2 : 1;
@@ -29839,9 +30029,9 @@ function Jn(e) {
29839
30029
  starts: r
29840
30030
  };
29841
30031
  }
29842
- var Yn = class {
30032
+ var ur = class {
29843
30033
  computeLevels(e, t, n) {
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;
30034
+ let { cps: r, units: i, starts: a } = lr(e), { levels: o, paragraphLevel: s } = sr(r, t, n ? r.map((e, t) => n[a[t]] ?? null) : void 0), c = new Uint8Array(e.length), l = 0;
29845
30035
  for (let e = 0; e < o.length; e++) {
29846
30036
  let t = o[e] === -1 ? 255 : o[e];
29847
30037
  for (let n = 0; n < i[e]; n++) c[l++] = t;
@@ -29852,25 +30042,139 @@ var Yn = class {
29852
30042
  };
29853
30043
  }
29854
30044
  reorderVisual(e, t, n) {
29855
- return qn(e, t, n);
30045
+ return cr(e, t, n);
29856
30046
  }
29857
30047
  getMirror(e) {
29858
- return jn(e);
30048
+ return Kn(e);
29859
30049
  }
29860
30050
  };
29861
- function Xn() {
29862
- return new Yn();
30051
+ function dr() {
30052
+ return new ur();
29863
30053
  }
29864
30054
  //#endregion
29865
30055
  //#region packages/core/src/text/bidi/engine.ts
29866
- var Zn = null;
29867
- function Qn() {
29868
- return Zn === null && (Zn = Xn()), Zn;
30056
+ var fr = null;
30057
+ function pr() {
30058
+ return fr === null && (fr = dr()), fr;
29869
30059
  }
29870
30060
  //#endregion
29871
30061
  //#region packages/core/src/text/bidi/segments.ts
29872
- function $n(e, t) {
29873
- return e === !0 ? "rtl" : e === !1 ? "ltr" : Qn().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
30062
+ function mr(e, t) {
30063
+ return e === !0 ? "rtl" : e === !1 ? "ltr" : pr().computeLevels(t, "auto").paragraphLevel === 1 ? "rtl" : "ltr";
30064
+ }
30065
+ //#endregion
30066
+ //#region packages/core/src/text/kinsoku/rules.ts
30067
+ var hr = "”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆", gr = "“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅";
30068
+ function _r(e) {
30069
+ let t = /* @__PURE__ */ new Set();
30070
+ for (let n of e) t.add(n.codePointAt(0));
30071
+ return t;
30072
+ }
30073
+ function vr(e) {
30074
+ return {
30075
+ enabled: e?.kinsoku !== !1,
30076
+ lineStartForbidden: _r(e?.noLineBreaksBefore ?? hr),
30077
+ lineEndForbidden: _r(e?.noLineBreaksAfter ?? gr)
30078
+ };
30079
+ }
30080
+ var yr = vr();
30081
+ //#endregion
30082
+ //#region packages/core/src/text/kinsoku/split.ts
30083
+ function br(e, t, n, r = 1) {
30084
+ if (!n.enabled || t <= 0 || t >= e.length) return t;
30085
+ let i = (t) => t < e.length && n.lineStartForbidden.has(e[t].codePointAt(0)), a = (t) => t >= 0 && n.lineEndForbidden.has(e[t].codePointAt(0)), o = t;
30086
+ for (; o > r && (i(o) || a(o - 1));) o--;
30087
+ return o <= r && (i(o) || a(o - 1)) ? t : o;
30088
+ }
30089
+ function xr(e, t, n) {
30090
+ if (!t.enabled) return 0;
30091
+ let r = e.length - n;
30092
+ for (let n = 1; n <= r; n++) {
30093
+ let r = e[e.length - n];
30094
+ if (/\s/.test(r) || t.lineStartForbidden.has(r.codePointAt(0))) continue;
30095
+ let i = e[e.length - n - 1];
30096
+ if (!(i && t.lineEndForbidden.has(i.codePointAt(0)))) return n;
30097
+ }
30098
+ return 0;
30099
+ }
30100
+ //#endregion
30101
+ //#region packages/core/src/text/cjk-ranges.ts
30102
+ function Sr(e) {
30103
+ return e >= 12288 && e <= 40959 || e >= 44032 && e <= 55203 || e >= 63744 && e <= 64255 || e >= 65280 && e <= 65519;
30104
+ }
30105
+ //#endregion
30106
+ //#region packages/core/src/text/highlight-box.ts
30107
+ function Cr(e, t) {
30108
+ return {
30109
+ top: e - t * .85,
30110
+ height: t * 1.1
30111
+ };
30112
+ }
30113
+ //#endregion
30114
+ //#region packages/core/src/text/line-distribute.ts
30115
+ var wr = (e) => e === 32 || e === 12288;
30116
+ function Tr(e, t, n = {}) {
30117
+ if (Math.abs(t) <= .5) return null;
30118
+ let r = n.firstContentSi ?? 0, i = n.lastDrawnSi ?? e.length - 1, a = n.minPerGap ?? -Infinity, o = n.isGapChar ?? Sr, s = n.isWhitespace ?? wr, c = [];
30119
+ for (let t = r; t < e.length; t++) {
30120
+ let n = e[t];
30121
+ if (n === void 0) continue;
30122
+ if (n.text === void 0) {
30123
+ c.push({
30124
+ si: t,
30125
+ off: 0,
30126
+ ws: !1
30127
+ });
30128
+ continue;
30129
+ }
30130
+ let r = 0;
30131
+ for (let e of n.text) {
30132
+ let n = e.codePointAt(0);
30133
+ c.push({
30134
+ si: t,
30135
+ off: r,
30136
+ cp: n,
30137
+ ws: s(n)
30138
+ }), r++;
30139
+ }
30140
+ }
30141
+ let l = -1, u = -1;
30142
+ for (let e = 0; e < c.length; e++) c[e].ws || (l === -1 && (l = e), u = e);
30143
+ if (l === -1 || l === u) return null;
30144
+ let d = Array(c.length).fill(!1), f = 0;
30145
+ for (let e = l; e < u; e++) {
30146
+ let t = c[e];
30147
+ if (t.si === i) continue;
30148
+ if (t.ws) {
30149
+ d[e] = !0, f++;
30150
+ continue;
30151
+ }
30152
+ let n = c[e + 1];
30153
+ if (n.ws) continue;
30154
+ let r = t.cp, a = n.cp;
30155
+ (r !== void 0 && o(r) || a !== void 0 && o(a)) && (d[e] = !0, f++);
30156
+ }
30157
+ if (f === 0) return null;
30158
+ let p = t / f;
30159
+ t < 0 && p < a && (p = a);
30160
+ let m = /* @__PURE__ */ new Map();
30161
+ for (let e of c) e.cp !== void 0 && m.set(e.si, (m.get(e.si) ?? 0) + 1);
30162
+ let h = /* @__PURE__ */ new Map();
30163
+ for (let e = 0; e < c.length; e++) {
30164
+ if (!d[e]) continue;
30165
+ let t = c[e], n = h.get(t.si);
30166
+ n || (n = {
30167
+ splitBefore: [],
30168
+ trailingGap: !1,
30169
+ internalStretch: 0
30170
+ }, h.set(t.si, n));
30171
+ let r = m.get(t.si) ?? 0;
30172
+ t.cp === void 0 || t.off === r - 1 ? n.trailingGap = !0 : (n.splitBefore.push(t.off + 1), n.internalStretch += p);
30173
+ }
30174
+ return {
30175
+ perGap: p,
30176
+ perSeg: h
30177
+ };
29874
30178
  }
29875
30179
  //#endregion
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 };
30180
+ export { t as $, Qe as A, I as B, Ct as C, st as D, ut as E, ze as F, j as G, R as H, Le as I, p as J, u as K, ke as L, Ke as M, Ge as N, $e as O, Be as P, s as Q, Oe as R, St as S, dt as T, F as U, L as V, A as W, c as X, l as Y, m as Z, Qt as _, br as a, Nt as b, mr as c, In as d, Fn as f, ln as g, cn as h, xr as i, rt as j, it as k, pr as l, un as m, Cr as n, yr as o, Pn as p, d as q, Sr as r, vr as s, Tr as t, Ln as u, an as v, lt as w, wt as x, jt as y, De as z };