@jboltai/tokui 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/tokui.mjs CHANGED
@@ -1806,7 +1806,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1806
1806
  class: "tokui-chart-tip",
1807
1807
  "data-tip-id": u
1808
1808
  });
1809
- b.appendChild(s("rect", {
1809
+ b.setAttribute("data-tx", c), b.setAttribute("data-ty", l), b.appendChild(s("rect", {
1810
1810
  x: v,
1811
1811
  y,
1812
1812
  width: g,
@@ -1838,11 +1838,321 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1838
1838
  });
1839
1839
  });
1840
1840
  }
1841
- function T(e, t, n, r, i, a) {
1841
+ function T(e, t) {
1842
+ e.querySelectorAll(".tokui-chart-tip-group:not([data-tip-bound])").forEach(function(e) {
1843
+ e.setAttribute("data-tip-bound", "1"), e.addEventListener("mouseenter", function() {
1844
+ var n = e.getAttribute("data-tip-id"), r = t.querySelector(".tokui-chart-tips-layer [data-tip-id=\"" + n + "\"]");
1845
+ r && (r.style.opacity = "1");
1846
+ }), e.addEventListener("mouseleave", function() {
1847
+ var n = e.getAttribute("data-tip-id"), r = t.querySelector(".tokui-chart-tips-layer [data-tip-id=\"" + n + "\"]");
1848
+ r && (r.style.opacity = "");
1849
+ });
1850
+ });
1851
+ }
1852
+ function E(e) {
1853
+ for (; e && e.firstChild;) e.removeChild(e.firstChild);
1854
+ }
1855
+ function D(e, t) {
1856
+ if (e.createSVGPoint && e.getScreenCTM) try {
1857
+ var n = e.createSVGPoint();
1858
+ n.x = t, n.y = 0;
1859
+ var r = e.getScreenCTM();
1860
+ if (r) return n.matrixTransform(r.inverse()).x;
1861
+ } catch {}
1862
+ var i = e.getBoundingClientRect(), a = e.viewBox && e.viewBox.baseVal;
1863
+ return !i || !i.width || !a ? t - (i ? i.left : 0) : (t - i.left) / i.width * a.width + a.x;
1864
+ }
1865
+ function O(e, t) {
1866
+ if (e.createSVGPoint && e.getScreenCTM) try {
1867
+ var n = e.createSVGPoint();
1868
+ n.x = 0, n.y = t;
1869
+ var r = e.getScreenCTM();
1870
+ if (r) return n.matrixTransform(r.inverse()).y;
1871
+ } catch {}
1872
+ var i = e.getBoundingClientRect(), a = e.viewBox && e.viewBox.baseVal;
1873
+ return !i || !i.height || !a ? t - (i ? i.top : 0) : (t - i.top) / i.height * a.height + a.y;
1874
+ }
1875
+ function k(e) {
1876
+ if (typeof document > "u") return;
1877
+ var t = e.svg, n = e.padL, r = e.padT, i = e.cw, a = e.ch, o = e.n, c = e.series, l = e.labels, u = s("g", { class: "tokui-chart-axis-pointer" });
1878
+ e.tipLayer.appendChild(u);
1879
+ var d = s("line", {
1880
+ y1: r,
1881
+ y2: r + a,
1882
+ stroke: "var(--tokui-chart-axis, #bbb)",
1883
+ "stroke-width": 1,
1884
+ "stroke-dasharray": "4,3",
1885
+ opacity: "0",
1886
+ "pointer-events": "none"
1887
+ }), f = s("line", {
1888
+ x1: n,
1889
+ x2: n + i,
1890
+ stroke: "var(--tokui-chart-axis, #bbb)",
1891
+ "stroke-width": 1,
1892
+ "stroke-dasharray": "4,3",
1893
+ opacity: "0",
1894
+ "pointer-events": "none"
1895
+ });
1896
+ u.appendChild(d), u.appendChild(f);
1897
+ var p = c.map(function(e) {
1898
+ var t = s("circle", {
1899
+ r: 5,
1900
+ fill: "var(--tokui-card-bg, #fff)",
1901
+ stroke: e.color,
1902
+ "stroke-width": 2.5,
1903
+ opacity: "0",
1904
+ "pointer-events": "none"
1905
+ });
1906
+ return u.appendChild(t), t;
1907
+ }), m = s("g", {
1908
+ class: "tokui-chart-tip tokui-chart-tip--axis",
1909
+ opacity: "0",
1910
+ "pointer-events": "none",
1911
+ style: "transition:opacity .12s ease;"
1912
+ }), h = s("rect", {
1913
+ rx: 4,
1914
+ fill: "rgba(0,0,0,0.82)"
1915
+ });
1916
+ m.appendChild(h);
1917
+ var g = s("text", {
1918
+ "text-anchor": "start",
1919
+ fill: "#fff",
1920
+ "font-weight": "600"
1921
+ });
1922
+ m.appendChild(g);
1923
+ var _ = c.map(function() {
1924
+ var e = s("g", {});
1925
+ return e.appendChild(s("rect", {
1926
+ width: 8,
1927
+ height: 8,
1928
+ rx: 1
1929
+ })), e.appendChild(s("text", {
1930
+ "text-anchor": "start",
1931
+ fill: "#fff"
1932
+ })), m.appendChild(e), e;
1933
+ });
1934
+ u.appendChild(m);
1935
+ function v() {
1936
+ d.setAttribute("opacity", "0"), f.setAttribute("opacity", "0"), p.forEach(function(e) {
1937
+ e.setAttribute("opacity", "0");
1938
+ }), m.style.opacity = "0";
1939
+ }
1940
+ function y(n, r) {
1941
+ var i = e.toIdx(n);
1942
+ if (i < 0 || i >= o || !e.inWindow(i)) {
1943
+ v();
1944
+ return;
1945
+ }
1946
+ var a = e.toViewX(i);
1947
+ d.setAttribute("x1", a), d.setAttribute("x2", a), d.setAttribute("opacity", "0.9"), f.setAttribute("y1", r), f.setAttribute("y2", r), f.setAttribute("opacity", "0.9");
1948
+ var s = t._tokuiBumpedFs || e.bfs || 10, u = s + 4, y = 7, b = String(l[i] == null ? i + 1 : l[i]);
1949
+ g.textContent = b, g.setAttribute("font-size", s);
1950
+ var x = N(b) * s / 7;
1951
+ _.forEach(function(t, n) {
1952
+ var r = c[n].vals[i], o = c[n].markerVals ? c[n].markerVals[i] : r, l = (c[n].name ? c[n].name + ": " : "") + (r ?? "—");
1953
+ t.querySelector("text").textContent = l, t.querySelector("text").setAttribute("font-size", s), t.querySelector("rect").setAttribute("fill", c[n].color);
1954
+ var u = N(l) * s / 7;
1955
+ u > x && (x = u), p[n].setAttribute("cx", a), p[n].setAttribute("cy", o == null ? 0 : e.yOf(o)), p[n].setAttribute("opacity", o == null || r == null ? "0" : "1");
1956
+ });
1957
+ var S = x + 8 + 8 + y * 2, C = u * (1 + c.length) + y * 2, w = 12, T = n + w, E = r + w;
1958
+ T + S > e.w - 2 && (T = n - S - w), T < 2 && (T = 2), E + C > e.h - 2 && (E = r - C - w), E < 2 && (E = 2), h.setAttribute("x", T), h.setAttribute("y", E), h.setAttribute("width", S), h.setAttribute("height", C), g.setAttribute("x", T + y), g.setAttribute("y", E + y + s * .85), _.forEach(function(e, t) {
1959
+ var n = E + y + u * (t + 1) + s * .85;
1960
+ e.querySelector("rect").setAttribute("x", T + y), e.querySelector("rect").setAttribute("y", n - s * .7), e.querySelector("text").setAttribute("x", T + y + 8 + 8), e.querySelector("text").setAttribute("y", n);
1961
+ }), m.style.opacity = "1";
1962
+ }
1963
+ var b = s("rect", {
1964
+ x: n,
1965
+ y: r,
1966
+ width: i,
1967
+ height: a,
1968
+ fill: "transparent",
1969
+ style: "cursor:crosshair;"
1970
+ });
1971
+ return t.appendChild(b), b.addEventListener("mousemove", function(e) {
1972
+ y(D(t, e.clientX), O(t, e.clientY));
1973
+ }), b.addEventListener("mouseleave", v), {
1974
+ show: y,
1975
+ hide: v,
1976
+ overlay: b
1977
+ };
1978
+ }
1979
+ function A(e, t) {
1980
+ var n = t.padL, r = t.cw, i = t.n, a = t.plotG, o = "tokui-chart-clip-" + ++F, c = s("defs"), l = s("clipPath", { id: o });
1981
+ l.appendChild(s("rect", {
1982
+ x: n - 1,
1983
+ y: t.padT - 1,
1984
+ width: r + 2,
1985
+ height: t.ch + 2
1986
+ })), c.appendChild(l), e.appendChild(c);
1987
+ var u = s("g", { "clip-path": "url(#" + o + ")" }), d = a.parentNode, f = a.nextSibling;
1988
+ u.appendChild(a), f ? d.insertBefore(u, f) : d.appendChild(u);
1989
+ var p = s("g", { class: "tokui-chart-plot-labels" });
1990
+ d.appendChild(p);
1991
+ var m = s("rect", {
1992
+ x: 0,
1993
+ y: 0,
1994
+ width: 0,
1995
+ height: 0,
1996
+ rx: 4,
1997
+ fill: "rgba(0,0,0,0.78)"
1998
+ }), h = s("text", {
1999
+ "text-anchor": "middle",
2000
+ "dominant-baseline": "central",
2001
+ fill: "#fff",
2002
+ "font-size": "10"
2003
+ }), g = s("g", { class: "tokui-chart-tip tokui-chart-tip--shared" });
2004
+ g.appendChild(m), g.appendChild(h), t.tipLayer.appendChild(g);
2005
+ var _ = {
2006
+ s: 0,
2007
+ e: i - 1,
2008
+ sx: 1,
2009
+ tx: 0
2010
+ };
2011
+ function v(n, r, i) {
2012
+ for (var a = e._tokuiBumpedFs || 10, o = a / 10, s = 0, c = 0; c < n.length; c++) s += n.charCodeAt(c) > 127 ? 10 : 5.5;
2013
+ var l = s * o + 16, u = 18 * o, d = r - l / 2, f = i - u - 6;
2014
+ d < 2 && (d = 2), d + l > t.w - 2 && (d = t.w - l - 2), f < 2 && (f = i + 10), m.setAttribute("x", d), m.setAttribute("y", f), m.setAttribute("width", l), m.setAttribute("height", u), h.setAttribute("x", d + l / 2), h.setAttribute("y", f + u / 2 + 1), h.setAttribute("font-size", a), h.textContent = n, g.style.opacity = "1";
2015
+ }
2016
+ function y(i, o, s) {
2017
+ var c = t.srcLeft(i), l = r / (t.srcRight(o) - c), u = n - l * c;
2018
+ if (a.setAttribute("transform", "matrix(" + l + " 0 0 1 " + u + " 0)"), _.s = i, _.e = o, _.sx = l, _.tx = u, E(p), s) {
2019
+ t.renderLabels(p, i, o);
2020
+ var d = e._tokuiBumpedFs;
2021
+ if (d) for (var f = p.querySelectorAll("text"), m = 0; m < f.length; m++) f[m].setAttribute("font-size", d);
2022
+ }
2023
+ t.onZoom && t.onZoom(i, o, l, u);
2024
+ }
2025
+ var x = s("g", { class: "tokui-chart-zoom" });
2026
+ d.appendChild(x);
2027
+ var S = t.h + 6, C = 16, w = C - 2, T = s("rect", {
2028
+ x: n,
2029
+ y: S,
2030
+ width: r,
2031
+ height: C,
2032
+ fill: "var(--tokui-chart-grid, #e8e8e8)",
2033
+ rx: 3,
2034
+ class: "tokui-chart-zoom-track"
2035
+ });
2036
+ x.appendChild(T);
2037
+ for (var O = r / i, k = [], A = 0; A < i; A++) {
2038
+ var j = t.overview[A] || 0, M = Math.max(1, (j - t.valMin) / t.range * w), N = s("rect", {
2039
+ x: n + A * O + .5,
2040
+ y: S + C - 1 - M,
2041
+ width: Math.max(1, O - 1),
2042
+ height: M,
2043
+ fill: "var(--tokui-chart-text, #bbb)",
2044
+ opacity: "0.55",
2045
+ class: "tokui-chart-zoom-overview"
2046
+ });
2047
+ x.appendChild(N), k.push({
2048
+ el: N,
2049
+ val: j
2050
+ });
2051
+ }
2052
+ var L = s("rect", {
2053
+ y: S - 1,
2054
+ height: C + 2,
2055
+ fill: "rgba(0,120,212,0.12)",
2056
+ stroke: "var(--tokui-primary-6, #1a73e8)",
2057
+ "stroke-width": 1,
2058
+ rx: 2,
2059
+ class: "tokui-chart-zoom-window",
2060
+ style: "cursor:grab;"
2061
+ }), z = s("rect", {
2062
+ width: 6,
2063
+ height: C + 6,
2064
+ y: S - 3,
2065
+ fill: "var(--tokui-primary-6, #1a73e8)",
2066
+ rx: 2,
2067
+ class: "tokui-chart-zoom-handle tokui-chart-zoom-handle--l",
2068
+ style: "cursor:ew-resize;"
2069
+ }), B = s("rect", {
2070
+ width: 6,
2071
+ height: C + 6,
2072
+ y: S - 3,
2073
+ fill: "var(--tokui-primary-6, #1a73e8)",
2074
+ rx: 2,
2075
+ class: "tokui-chart-zoom-handle tokui-chart-zoom-handle--r",
2076
+ style: "cursor:ew-resize;"
2077
+ });
2078
+ x.appendChild(L), x.appendChild(z), x.appendChild(B);
2079
+ function V(n) {
2080
+ if (n > 0) {
2081
+ var r = R(9, n, P, I);
2082
+ e._tokuiBumpedFs = r, h && h.setAttribute("font-size", r);
2083
+ var i = Math.min(26, Math.max(16, 14 / n)), a = Math.min(24, Math.max(6, 10 / n));
2084
+ C = i, w = C - 2, T.setAttribute("height", C), L.setAttribute("height", C + 2), z.setAttribute("width", a), z.setAttribute("height", C + 6), B.setAttribute("width", a), B.setAttribute("height", C + 6);
2085
+ for (var o = 0; o < k.length; o++) {
2086
+ var s = Math.max(1, (k[o].val - t.valMin) / t.range * w);
2087
+ k[o].el.setAttribute("y", S + C - 1 - s), k[o].el.setAttribute("height", s);
2088
+ }
2089
+ }
2090
+ }
2091
+ var H = 0, U = 1, W = Math.max(2, Math.floor(i * .1)) / (i - 1);
2092
+ function G(e, t) {
2093
+ var i = n + e * r, a = n + t * r;
2094
+ L.setAttribute("x", i), L.setAttribute("width", Math.max(2, a - i)), z.setAttribute("x", i - 3), B.setAttribute("x", a - 3);
2095
+ }
2096
+ G(H, U);
2097
+ var ee = typeof window < "u" && typeof window.requestAnimationFrame == "function", K = !1, J = null;
2098
+ function te(e, t) {
2099
+ J = [e, t], !K && (K = !0, ee ? window.requestAnimationFrame(function() {
2100
+ K = !1, J && y(J[0], J[1], !1);
2101
+ }) : (K = !1, y(e, t, !1)));
2102
+ }
2103
+ function ne(e) {
2104
+ G(H, U);
2105
+ var t = q(i, H, U);
2106
+ e ? te(t.s, t.e) : (J = null, y(t.s, t.e, !0));
2107
+ }
2108
+ function Y(t, i) {
2109
+ t.style.touchAction = "none", t.style.userSelect = "none", t.style.webkitUserDrag = "none";
2110
+ function a(a, o) {
2111
+ var s = !0, c = a;
2112
+ function l(e) {
2113
+ if (s) {
2114
+ var t = b((e - n) / r, 0, 1);
2115
+ if (i === "l") H = Math.min(t, U - W);
2116
+ else if (i === "r") U = Math.max(t, H + W);
2117
+ else {
2118
+ var a = U - H, o = (e - c) / r;
2119
+ H = b(H + o, 0, 1 - a), U = H + a;
2120
+ }
2121
+ c = e, ne(!0);
2122
+ }
2123
+ }
2124
+ function u(t) {
2125
+ t.preventDefault(), l(D(e, t.clientX));
2126
+ }
2127
+ function d() {
2128
+ s = !1, t.removeEventListener("pointermove", u), t.removeEventListener("pointerup", d);
2129
+ try {
2130
+ t.releasePointerCapture(o);
2131
+ } catch {}
2132
+ ne(!1);
2133
+ }
2134
+ t.addEventListener("pointermove", u), t.addEventListener("pointerup", d);
2135
+ }
2136
+ t.addEventListener("pointerdown", function(n) {
2137
+ n.preventDefault(), n.stopPropagation();
2138
+ try {
2139
+ t.setPointerCapture(n.pointerId);
2140
+ } catch {}
2141
+ a(D(e, n.clientX), n.pointerId);
2142
+ });
2143
+ }
2144
+ return Y(z, "l"), Y(B, "r"), Y(L, "pan"), y(0, i - 1, !0), e._tokuiZoomRelayout = V, {
2145
+ showTip: v,
2146
+ winState: _,
2147
+ sharedTip: g,
2148
+ clipG: u
2149
+ };
2150
+ }
2151
+ function j(e, t, n, r, i, a) {
1842
2152
  if (!(!t || !t.length)) {
1843
2153
  i > 0 || (i = 7);
1844
2154
  var o = 8, c = 4, l = 14, u = t.map(function(e) {
1845
- var t = D(e.text) * (i / 7);
2155
+ var t = N(e.text) * (i / 7);
1846
2156
  return {
1847
2157
  e,
1848
2158
  w: o + c + t
@@ -1874,7 +2184,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1874
2184
  });
1875
2185
  }
1876
2186
  }
1877
- function E(e, t, r) {
2187
+ function M(e, t, r) {
1878
2188
  var i = s("svg", {
1879
2189
  viewBox: "0 0 " + e + " " + t,
1880
2190
  class: "tokui-chart__svg tokui-chart__svg--empty",
@@ -1889,53 +2199,119 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1889
2199
  });
1890
2200
  return a.textContent = r || n("chart.empty"), i.appendChild(a), i;
1891
2201
  }
1892
- function D(e) {
2202
+ function N(e) {
1893
2203
  for (var t = 0, n = 0; n < e.length; n++) t += e.charCodeAt(n) > 127 ? 8 : 4.5;
1894
2204
  return t;
1895
2205
  }
1896
- var O = 12, k = 7;
1897
- function A(e, t, n) {
1898
- return !(t > 0) || !(n > 0) || e * t >= n ? e : n / t;
2206
+ var P = 14, F = 0, I = 16, L = 7;
2207
+ function R(e, t, n, r) {
2208
+ if (!(t > 0)) return e;
2209
+ var i = e * t;
2210
+ return r > 0 && i > r ? r / t : n > 0 && i < n ? n / t : e;
1899
2211
  }
1900
- function j(e, t, n, r, i) {
2212
+ function z(e, t) {
2213
+ if (t > 0) {
2214
+ var n = R(10, t, P, I) / 10;
2215
+ if (!(Math.abs(n - 1) < .005)) for (var r = e.querySelectorAll(".tokui-chart-tips-layer .tokui-chart-tip:not(.tokui-chart-tip--shared):not(.tokui-chart-tip--axis)"), i = 0; i < r.length; i++) {
2216
+ var a = r[i], o = parseFloat(a.getAttribute("data-tx")), s = parseFloat(a.getAttribute("data-ty"));
2217
+ if (!isFinite(o) || !isFinite(s)) {
2218
+ var c = a.querySelector("rect");
2219
+ c ? (o = parseFloat(c.getAttribute("x")) + parseFloat(c.getAttribute("width")) / 2, s = parseFloat(c.getAttribute("y")) + parseFloat(c.getAttribute("height")) / 2) : (o = 0, s = 0);
2220
+ }
2221
+ a.setAttribute("transform", "translate(" + o + " " + s + ") scale(" + Math.round(n * 1e3) / 1e3 + ") translate(" + -o + " " + -s + ")");
2222
+ }
2223
+ }
2224
+ }
2225
+ function B(e, t, n, r, i) {
1901
2226
  if (!(e > 0) || !(t >= 0) || !(r >= 0) || !(i > 0)) return 0;
1902
2227
  var a = e - 2 * i * (r - 1);
1903
2228
  return a <= 0 ? 0 : 2 * i * (t + n) / a;
1904
2229
  }
1905
- function M(e, t) {
2230
+ function V(e, t) {
1906
2231
  (!(e > 0) || !isFinite(e)) && (e = 1);
1907
2232
  var n = Math.floor(Math.log10(e)), r = e / 10 ** n;
1908
2233
  return (t ? r < 1.5 ? 1 : r < 3 ? 2 : r < 7 ? 5 : 10 : r <= 1 ? 1 : r <= 2 ? 2 : r <= 5 ? 5 : 10) * 10 ** n;
1909
2234
  }
1910
- function N(e, t) {
2235
+ function H(e, t) {
1911
2236
  if (!isFinite(e) || !isFinite(t)) return [0, 1];
1912
2237
  e === t && (--e, t += 1);
1913
- var n = M(M(t - e, !1) / 5, !0) || 1;
2238
+ var n = V(V(t - e, !1) / 5, !0) || 1;
1914
2239
  return [Math.floor(e / n) * n, Math.ceil(t / n) * n];
1915
2240
  }
1916
- function P(e, t, n, r) {
2241
+ function U(e, t, n, r) {
1917
2242
  if (e[t] !== void 0 && e[t] !== "") {
1918
2243
  var i = parseFloat(e[t]);
1919
2244
  if (!isNaN(i)) return i;
1920
2245
  }
1921
2246
  return e[n] === void 0 ? r : +e[n];
1922
2247
  }
1923
- function F(e, t, n, r, i) {
1924
- var a = (i || 40) * .9;
2248
+ var W = 38;
2249
+ function G(e, t, n, r, i) {
2250
+ var a = e.length, o = n || 30;
2251
+ if (!a) return {
2252
+ rotate: !1,
2253
+ padB: o,
2254
+ interval: 1
2255
+ };
2256
+ for (var s = r || t * a, c = 0, l = 0; l < a; l++) if (!(e[l] == null || e[l] === "")) {
2257
+ var u = N(String(e[l]));
2258
+ u > c && (c = u);
2259
+ }
2260
+ var d = I / L * c, f = Math.max(W, d * 1.15), p = Math.max(W * .72, d * .72), m = Math.max(1, Math.floor(s / f)), h = Math.max(1, Math.floor(s / p)), g = 1, _ = !1, v = i === void 0 ? "auto" : String(i);
2261
+ if (v === "0") g = 1, _ = a > m && (a <= h || a <= 10);
2262
+ else if (v === "auto") a <= m ? (g = 1, _ = !1) : a <= 10 || a <= h ? (g = 1, _ = !0) : (g = Math.ceil(a / m), _ = !1);
2263
+ else {
2264
+ var y = parseInt(v, 10);
2265
+ !isNaN(y) && y > 1 ? (g = y, _ = Math.ceil(a / g) > m && Math.ceil(a / g) <= h) : (g = 1, _ = a > m);
2266
+ }
2267
+ return _ && (o = Math.max(n || 30, 52)), {
2268
+ rotate: _,
2269
+ padB: o,
2270
+ interval: g
2271
+ };
2272
+ }
2273
+ var ee = 30;
2274
+ function K(e, t) {
2275
+ var n = e.zoom;
2276
+ if (n === void 0) return !1;
2277
+ var r = String(n);
2278
+ if (r === "" || r === "auto" || r === "on" || r === "true") return t > ee;
2279
+ if (r === "off" || r === "false" || r === "0") return !1;
2280
+ var i = parseInt(r, 10);
2281
+ return isNaN(i) ? t > ee : t > i;
2282
+ }
2283
+ function q(e, t, n) {
2284
+ if (e <= 1) return {
2285
+ s: 0,
2286
+ e: Math.max(0, e - 1)
2287
+ };
2288
+ var r = Math.round(t * (e - 1)), i = Math.round(n * (e - 1));
2289
+ if (r < 0 && (r = 0), i > e - 1 && (i = e - 1), r > i) {
2290
+ var a = r;
2291
+ r = i, i = a;
2292
+ }
2293
+ var o = Math.min(e - 1, Math.max(2, Math.floor(e * .1)));
2294
+ return i - r < o && (r + o <= e - 1 ? i = r + o : (i = e - 1, r = Math.max(0, i - o))), {
2295
+ s: r,
2296
+ e: i
2297
+ };
2298
+ }
2299
+ function J(e, t, n, r, i, a, o) {
2300
+ var c = (i || 40) * .9, l = typeof a == "boolean", u = o && o > 1 ? o : 1, d = t.length - 1;
1925
2301
  t.forEach(function(t, i) {
1926
- if (!(t == null || t === "")) {
1927
- var o = n[i], c = D(String(t)) > a, l = s("text", {
2302
+ if (!(t == null || t === "") && !(u > 1 && !(i === 0 || i === d || i % u === 0))) {
2303
+ var o = n[i], f = l ? a : N(String(t)) > c, p = s("text", {
1928
2304
  x: o,
1929
2305
  y: r,
1930
- "text-anchor": c ? "end" : "middle",
2306
+ "text-anchor": f ? "end" : "middle",
1931
2307
  fill: "var(--tokui-chart-text, #999)",
1932
2308
  "font-size": "9"
1933
2309
  });
1934
- c && l.setAttribute("transform", "rotate(-45 " + o + " " + r + ")"), l.textContent = t, e.appendChild(l);
2310
+ f && p.setAttribute("transform", "rotate(-45 " + o + " " + r + ")"), p.textContent = t, e.appendChild(p);
1935
2311
  }
1936
2312
  });
1937
2313
  }
1938
- function I(e, t, n, r, i) {
2314
+ function te(e, t, n, r, i) {
1939
2315
  var a = s("text", {
1940
2316
  x: n,
1941
2317
  y: r,
@@ -1945,7 +2321,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1945
2321
  });
1946
2322
  i && a.setAttribute("transform", "rotate(-90 " + n + " " + r + ")"), a.textContent = t, e.appendChild(a);
1947
2323
  }
1948
- function L(e, t, n, r) {
2324
+ function ne(e, t, n, r) {
1949
2325
  var i = typeof window < "u" && typeof window.requestAnimationFrame == "function", a = i && window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
1950
2326
  if (!(n > 0) || !i || a) {
1951
2327
  r(t);
@@ -1959,230 +2335,422 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
1959
2335
  }
1960
2336
  window.requestAnimationFrame(s);
1961
2337
  }
1962
- function R(e) {
2338
+ function Y(e) {
1963
2339
  return e = String(e).replace("#", ""), e.length === 3 && (e = e[0] + e[0] + e[1] + e[1] + e[2] + e[2]), /^[0-9a-fA-F]{6}$/.test(e) ? [
1964
2340
  parseInt(e.slice(0, 2), 16),
1965
2341
  parseInt(e.slice(2, 4), 16),
1966
2342
  parseInt(e.slice(4, 6), 16)
1967
2343
  ] : null;
1968
2344
  }
1969
- function z(e, t, n) {
1970
- var r = R(e), i = R(t);
2345
+ function re(e, t, n) {
2346
+ var r = Y(e), i = Y(t);
1971
2347
  if (!r || !i) return e;
1972
2348
  var a = Math.round(r[0] + (i[0] - r[0]) * n), o = Math.round(r[1] + (i[1] - r[1]) * n), s = Math.round(r[2] + (i[2] - r[2]) * n);
1973
2349
  return "rgb(" + a + "," + o + "," + s + ")";
1974
2350
  }
1975
- function B(e, t) {
2351
+ function ie(e, t) {
1976
2352
  if (t = b(t, 0, 1), e.length === 1) return e[0];
1977
2353
  var n = t * (e.length - 1), r = Math.min(e.length - 2, Math.floor(n));
1978
- return z(e[r], e[r + 1], n - r);
2354
+ return re(e[r], e[r + 1], n - r);
1979
2355
  }
1980
- function V(e, t, r, i) {
2356
+ function ae(e, t, r, i) {
1981
2357
  var a = i.orient === "h" || i.orientation === "h", c = i.stack !== void 0 || i.stacked !== void 0, l = f(i.d);
1982
2358
  if (l.length || (l = [e]), l.every(function(e) {
1983
2359
  return !e.length;
1984
- })) return E(parseInt(i.w) || 400, parseInt(i.h) || 200);
2360
+ })) return M(parseInt(i.w) || 400, parseInt(i.h) || 200);
1985
2361
  var u = Math.max.apply(null, l.map(function(e) {
1986
2362
  return e.length;
1987
2363
  })), d, p;
1988
2364
  a ? (d = parseInt(i.w) || 480, p = x(i, "h", u, 36, 26, 200, 1200)) : (d = x(i, "w", u, 52, 26, 360, 2400), p = S(d, parseInt(i.h) || 200, 4, 560));
1989
- var m = l.length > 1, h = p + (m ? o : 0), g = 0, _ = 0;
1990
- if (c) for (var v = 0; v < u; v++) {
1991
- var y = 0, b = 0;
2365
+ var m = l.length > 1, h = !a && K(i, u), g = h ? 28 : 0, _ = p + (m ? o : 0) + g, v = 0, y = 0;
2366
+ if (c) for (var O = 0; O < u; O++) {
2367
+ var k = 0, A = 0;
1992
2368
  l.forEach(function(e) {
1993
- var t = e[v] || 0;
1994
- t >= 0 ? y += t : b += t;
1995
- }), y > g && (g = y), b < _ && (_ = b);
2369
+ var t = e[O] || 0;
2370
+ t >= 0 ? k += t : A += t;
2371
+ }), k > v && (v = k), A < y && (y = A);
1996
2372
  }
1997
2373
  else l.forEach(function(e) {
1998
2374
  e.forEach(function(e) {
1999
- e > g && (g = e), e < _ && (_ = e);
2375
+ e > v && (v = e), e < y && (y = e);
2000
2376
  });
2001
2377
  });
2002
- g = P(i, "ymax", "_yMax", g || 1);
2003
- var O = g - _ || 1, k = s("svg", {
2004
- viewBox: "0 0 " + d + " " + h,
2378
+ v = U(i, "ymax", "_yMax", v || 1);
2379
+ var N = v - y || 1, P = s("svg", {
2380
+ viewBox: "0 0 " + d + " " + _,
2005
2381
  class: "tokui-chart__svg",
2006
2382
  preserveAspectRatio: "xMidYMid meet"
2007
- }), A = C(d, h);
2008
- function j(e, t, n) {
2009
- var r = c ? n >= 0 ? M[t] || 0 : N[t] || 0 : 0, i = n >= 0 ? r + n : r, a = n >= 0 ? r : r + n;
2010
- return c && (n >= 0 ? M[t] = i : N[t] = a), [a, i];
2383
+ }), I = C(d, _);
2384
+ function L(e, t, n) {
2385
+ var r = c ? n >= 0 ? R[t] || 0 : z[t] || 0 : 0, i = n >= 0 ? r + n : r, a = n >= 0 ? r : r + n;
2386
+ return c && (n >= 0 ? R[t] = i : z[t] = a), [a, i];
2011
2387
  }
2012
- var M = [], N = [];
2388
+ var R = [], z = [];
2013
2389
  if (a) {
2014
- var L = 70, R = i.xl ? 30 : 22, z = 14, B = i.yl ? 30 : 16, V = d - L - B, H = p - z - R, U = H / u, W = Math.max(3, c ? U * .6 : U * .6 / l.length);
2390
+ var B = 70, V = i.xl ? 30 : 22, H = 14, W = i.yl ? 30 : 16, ee = d - B - W, ne = p - H - V, Y = ne / u, re = Math.max(3, c ? Y * .6 : Y * .6 / l.length);
2015
2391
  function e(e) {
2016
- return L + V * (e - _) / O;
2017
- }
2018
- for (var G = 0; G <= 4; G++) {
2019
- var K = _ + O * G / 4, q = e(K);
2020
- k.appendChild(s("line", {
2021
- x1: q,
2022
- y1: z,
2023
- x2: q,
2024
- y2: z + H,
2392
+ return B + ee * (e - y) / N;
2393
+ }
2394
+ for (var ie = 0; ie <= 4; ie++) {
2395
+ var ae = y + N * ie / 4, X = e(ae);
2396
+ P.appendChild(s("line", {
2397
+ x1: X,
2398
+ y1: H,
2399
+ x2: X,
2400
+ y2: H + ne,
2025
2401
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
2026
2402
  "stroke-width": 1
2027
- })), k.appendChild(s("text", {
2028
- x: q,
2029
- y: z + H + 10,
2403
+ })), P.appendChild(s("text", {
2404
+ x: X,
2405
+ y: H + ne + 10,
2030
2406
  "text-anchor": "middle",
2031
2407
  fill: "var(--tokui-chart-text, #999)",
2032
2408
  "font-size": "9"
2033
- })).textContent = Math.round(K);
2409
+ })).textContent = Math.round(ae);
2034
2410
  }
2035
2411
  l.forEach(function(a, o) {
2036
2412
  a.forEach(function(a, u) {
2037
2413
  if (a != null) {
2038
- var d = j(o, u, a), f = e(d[0]), p = Math.max(0, e(d[1]) - f), m = z + u * U + U * .2 + (c ? 0 : o * W), h = s("g", { class: "tokui-chart-tip-group" });
2414
+ var d = L(o, u, a), f = e(d[0]), p = Math.max(0, e(d[1]) - f), m = H + u * Y + Y * .2 + (c ? 0 : o * re), h = s("g", { class: "tokui-chart-tip-group" });
2039
2415
  if (h.appendChild(s("rect", {
2040
2416
  x: f,
2041
2417
  y: m,
2042
2418
  width: p,
2043
- height: W - 1,
2419
+ height: re - 1,
2044
2420
  fill: r[o % r.length],
2045
2421
  rx: 2,
2046
2422
  class: "tokui-chart-bar"
2047
- })), A.add(h, (t[u] || "") + ": " + a + (l.length > 1 ? " (" + n("chart.seriesDefault", { n: o + 1 }) + ")" : ""), f + p / 2, m), k.appendChild(h), i.vals !== void 0) {
2423
+ })), I.add(h, (t[u] || "") + ": " + a + (l.length > 1 ? " (" + n("chart.seriesDefault", { n: o + 1 }) + ")" : ""), f + p / 2, m), P.appendChild(h), i.vals !== void 0) {
2048
2424
  var g = s("text", {
2049
2425
  x: f + p + 3,
2050
- y: m + W / 2 + 2,
2426
+ y: m + re / 2 + 2,
2051
2427
  "text-anchor": "start",
2052
2428
  fill: "var(--tokui-chart-text, #666)",
2053
2429
  "font-size": "8"
2054
2430
  });
2055
- g.textContent = a, k.appendChild(g);
2431
+ g.textContent = a, P.appendChild(g);
2056
2432
  }
2057
2433
  }
2058
2434
  });
2059
2435
  }), t.slice(0, u).forEach(function(e, t) {
2060
2436
  if (!(e == null || e === "")) {
2061
- var n = z + t * U + U / 2;
2062
- k.appendChild(s("text", {
2063
- x: L - 6,
2437
+ var n = H + t * Y + Y / 2;
2438
+ P.appendChild(s("text", {
2439
+ x: B - 6,
2064
2440
  y: n + 3,
2065
2441
  "text-anchor": "end",
2066
2442
  fill: "var(--tokui-chart-text, #999)",
2067
2443
  "font-size": "9"
2068
2444
  })).textContent = e;
2069
2445
  }
2070
- }), i.xl && I(k, i.xl, L + V / 2, z + H + 22, !1), i.yl && I(k, i.yl, 12, z + H / 2, !0);
2446
+ }), i.xl && te(P, i.xl, B + ee / 2, H + ne + 22, !1), i.yl && te(P, i.yl, 12, H + ne / 2, !0);
2071
2447
  } else {
2072
- var J = i.yl ? 46 : 40, ee = 12, te = i.xl ? 38 : 28, Y = 18, ne = d - J - ee, re = p - Y - te;
2448
+ var Z = i._padL ? +i._padL : i.yl ? 46 : 40, oe = 12, se = 18, Q = d - Z - oe, ce = Q / u, le = G(t.slice(0, u), ce, i.xl ? 38 : 28, Q, i.interval), ue = le.padB, de = p - se - ue;
2073
2449
  function e(e) {
2074
- return Y + re * (1 - (e - _) / O);
2075
- }
2076
- for (var ie = 0; ie <= 4; ie++) {
2077
- var ae = _ + O * ie / 4, oe = e(ae);
2078
- k.appendChild(s("line", {
2079
- x1: J,
2080
- y1: oe,
2081
- x2: d - ee,
2082
- y2: oe,
2450
+ return se + de * (1 - (e - y) / N);
2451
+ }
2452
+ for (var fe = 0; fe <= 4; fe++) {
2453
+ var pe = y + N * fe / 4, me = e(pe);
2454
+ P.appendChild(s("line", {
2455
+ x1: Z,
2456
+ y1: me,
2457
+ x2: d - oe,
2458
+ y2: me,
2083
2459
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
2084
2460
  "stroke-width": 1
2085
- })), k.appendChild(s("text", {
2086
- x: J - 4,
2087
- y: oe + 4,
2461
+ })), P.appendChild(s("text", {
2462
+ x: Z - 4,
2463
+ y: me + 4,
2088
2464
  "text-anchor": "end",
2089
2465
  fill: "var(--tokui-chart-text, #999)",
2090
2466
  "font-size": "9"
2091
- })).textContent = Math.round(ae);
2092
- }
2093
- if (_ < 0) {
2094
- var X = e(0);
2095
- k.appendChild(s("line", {
2096
- x1: J,
2097
- y1: X,
2098
- x2: d - ee,
2099
- y2: X,
2467
+ })).textContent = Math.round(pe);
2468
+ }
2469
+ if (y < 0) {
2470
+ var he = e(0);
2471
+ P.appendChild(s("line", {
2472
+ x1: Z,
2473
+ y1: he,
2474
+ x2: d - oe,
2475
+ y2: he,
2100
2476
  stroke: "var(--tokui-chart-axis, #bbb)",
2101
2477
  "stroke-width": 1
2102
2478
  }));
2103
2479
  }
2104
- var Z = ne / u, Q = Math.max(4, c ? Z * .6 : Z * .6 / l.length);
2105
- l.forEach(function(a, o) {
2106
- a.forEach(function(a, u) {
2107
- if (a != null) {
2108
- var d = j(o, u, a), f = e(d[1]), p = Math.max(0, (d[1] - d[0]) / O * re), m = J + u * Z + Z * .2 + (c ? 0 : o * Q), h = s("g", { class: "tokui-chart-tip-group" });
2109
- if (h.appendChild(s("rect", {
2110
- x: m,
2111
- y: f,
2112
- width: Q - 1,
2113
- height: p,
2114
- fill: r[o % r.length],
2115
- rx: 2,
2116
- class: "tokui-chart-bar"
2117
- })), A.add(h, (t[u] || "") + ": " + a + (l.length > 1 ? " (" + n("chart.seriesDefault", { n: o + 1 }) + ")" : ""), m + (Q - 1) / 2, f), k.appendChild(h), i.vals !== void 0) {
2118
- var g = s("text", {
2119
- x: m + (Q - 1) / 2,
2120
- y: f - 3,
2121
- "text-anchor": "middle",
2122
- fill: "var(--tokui-chart-text, #666)",
2123
- "font-size": "8"
2124
- });
2125
- g.textContent = a, k.appendChild(g);
2480
+ var ge = s("g", { class: "tokui-chart-plot" });
2481
+ P.appendChild(ge);
2482
+ var _e = h && l.length === 1 && !c, ve = null, ye = null, be = null, xe = null, Se = null, Ce = null, we = Q / u, Te = Math.max(4, we * .6), Ee = {
2483
+ s: 0,
2484
+ e: u - 1,
2485
+ sx: 1,
2486
+ tx: 0
2487
+ };
2488
+ if (_e) {
2489
+ var De = "tokui-chart-clip-" + ++F, Oe = s("defs"), k = s("clipPath", { id: De });
2490
+ k.appendChild(s("rect", {
2491
+ x: Z - 1,
2492
+ y: se - 1,
2493
+ width: Q + 2,
2494
+ height: de + 2
2495
+ })), Oe.appendChild(k), P.appendChild(Oe);
2496
+ var ke = s("g", { "clip-path": "url(#" + De + ")" });
2497
+ ge.appendChild(ke), ye = s("g", { class: "tokui-chart-plot-bars" }), ke.appendChild(ye), ve = [];
2498
+ for (var Ae = l[0], je = 0; je < u; je++) {
2499
+ var Me = Ae[je], Ne = s("rect", {
2500
+ x: Z + je * we + we * .2,
2501
+ y: e(Me),
2502
+ width: Math.max(1, Te - 1),
2503
+ height: Math.max(0, Me / N * de),
2504
+ rx: 2,
2505
+ fill: r[0],
2506
+ class: "tokui-chart-bar"
2507
+ });
2508
+ ye.appendChild(Ne), ve.push(Ne);
2509
+ }
2510
+ be = s("g", { class: "tokui-chart-plot-labels" }), ge.appendChild(be), Se = s("rect", {
2511
+ x: 0,
2512
+ y: 0,
2513
+ width: 0,
2514
+ height: 0,
2515
+ rx: 4,
2516
+ fill: "rgba(0,0,0,0.78)"
2517
+ }), Ce = s("text", {
2518
+ "text-anchor": "middle",
2519
+ "dominant-baseline": "central",
2520
+ fill: "#fff",
2521
+ "font-size": "10"
2522
+ }), xe = s("g", { class: "tokui-chart-tip tokui-chart-tip--shared" }), xe.appendChild(Se), xe.appendChild(Ce), I.layer.appendChild(xe);
2523
+ }
2524
+ function a(a, o, d) {
2525
+ var f = o - a + 1;
2526
+ if (_e) {
2527
+ var m = u / f, g = Z - m * (Z + a * we);
2528
+ if (ye.setAttribute("transform", "matrix(" + m + " 0 0 1 " + g + " 0)"), Ee.s = a, Ee.e = o, Ee.sx = m, Ee.tx = g, E(be), d) {
2529
+ for (var _ = Q / f, v = [], y = 0; y < f; y++) v.push(Z + y * _ + _ / 2);
2530
+ J(be, t.slice(a, o + 1), v, p - 8, _, le.rotate, le.interval);
2531
+ }
2532
+ return;
2533
+ }
2534
+ var b = Q / f;
2535
+ E(ge), d && E(I.layer);
2536
+ var x = Math.max(4, c ? b * .6 : b * .6 / l.length), S = [], C = [];
2537
+ l.forEach(function(u, f) {
2538
+ for (var p = a; p <= o; p++) {
2539
+ var m = u[p];
2540
+ if (m != null) {
2541
+ var h = c ? m >= 0 ? S[p] || 0 : C[p] || 0 : 0, g = m >= 0 ? h + m : h, _ = m >= 0 ? h : h + m;
2542
+ c && (m >= 0 ? S[p] = g : C[p] = _);
2543
+ var v = e(g), y = Math.max(0, (g - _) / N * de), w = Z + (p - a) * b + b * .2 + (c ? 0 : f * x), T = s("g", { class: "tokui-chart-tip-group" });
2544
+ if (T.appendChild(s("rect", {
2545
+ x: w,
2546
+ y: v,
2547
+ width: x - 1,
2548
+ height: y,
2549
+ fill: r[f % r.length],
2550
+ rx: 2,
2551
+ class: "tokui-chart-bar"
2552
+ })), d && I.add(T, (t[p] || "") + ": " + m + (l.length > 1 ? " (" + n("chart.seriesDefault", { n: f + 1 }) + ")" : ""), w + (x - 1) / 2, v), ge.appendChild(T), i.vals !== void 0) {
2553
+ var E = s("text", {
2554
+ x: w + (x - 1) / 2,
2555
+ y: v - 3,
2556
+ "text-anchor": "middle",
2557
+ fill: "var(--tokui-chart-text, #666)",
2558
+ "font-size": "8"
2559
+ });
2560
+ E.textContent = m, ge.appendChild(E);
2561
+ }
2126
2562
  }
2127
2563
  }
2128
2564
  });
2129
- });
2130
- for (var se = [], ce = 0; ce < u; ce++) se.push(J + ce * Z + Z / 2);
2131
- F(k, t.slice(0, u), se, p - 8, Z), i.xl && I(k, i.xl, J + ne / 2, p - 8 + (D(String(t[0] || "")) > Z * .9 ? 26 : 12), !1), i.yl && I(k, i.yl, 12, Y + re / 2, !0);
2565
+ for (var w = [], D = 0; D < f; D++) w.push(Z + D * b + b / 2);
2566
+ J(ge, t.slice(a, o + 1), w, p - 8, b, le.rotate, le.interval), d && h && T(ge, P);
2567
+ }
2568
+ if (a(0, u - 1, !0), _e) {
2569
+ function n(e, t, n) {
2570
+ for (var r = P._tokuiBumpedFs || 10, i = r / 10, a = 0, o = 0; o < e.length; o++) a += e.charCodeAt(o) > 127 ? 10 : 5.5;
2571
+ var s = a * i + 16, c = 18 * i, l = t - s / 2, u = n - c - 6;
2572
+ l < 2 && (l = 2), l + s > d - 2 && (l = d - s - 2), u < 2 && (u = n + 10), Se.setAttribute("x", l), Se.setAttribute("y", u), Se.setAttribute("width", s), Se.setAttribute("height", c), Ce.setAttribute("x", l + s / 2), Ce.setAttribute("y", u + c / 2 + 1), Ce.setAttribute("font-size", r), Ce.textContent = e, xe.style.opacity = "1";
2573
+ }
2574
+ ve.forEach(function(r, i) {
2575
+ r.addEventListener("mouseenter", function() {
2576
+ var r = l[0][i];
2577
+ if (r != null) {
2578
+ var a = Z + i * we + we * .2 + (Te - 1) / 2, o = Ee.sx * a + Ee.tx, s = e(r);
2579
+ n((t[i] || "") + ": " + r, o, s);
2580
+ }
2581
+ }), r.addEventListener("mouseleave", function() {
2582
+ xe.style.opacity = "";
2583
+ });
2584
+ });
2585
+ }
2586
+ i.xl && te(P, i.xl, Z + Q / 2, p - 8 + (le.rotate ? 26 : 12), !1), i.yl && te(P, i.yl, 12, se + de / 2, !0), h && (function() {
2587
+ var e = s("g", { class: "tokui-chart-zoom" });
2588
+ P.appendChild(e);
2589
+ var t = p + 6, n = 16, r = n - 2;
2590
+ e.appendChild(s("rect", {
2591
+ x: Z,
2592
+ y: t,
2593
+ width: Q,
2594
+ height: n,
2595
+ fill: "var(--tokui-chart-grid, #e8e8e8)",
2596
+ rx: 3,
2597
+ class: "tokui-chart-zoom-track"
2598
+ }));
2599
+ var i = [];
2600
+ l.forEach(function(e) {
2601
+ for (var t = 0; t < e.length; t++) {
2602
+ var n = e[t] || 0;
2603
+ c ? i[t] = (i[t] || 0) + n : i[t] = Math.max(i[t] || 0, n);
2604
+ }
2605
+ });
2606
+ for (var o = Q / u, d = 0; d < u; d++) {
2607
+ var f = Math.max(1, (i[d] - y) / N * r);
2608
+ e.appendChild(s("rect", {
2609
+ x: Z + d * o + .5,
2610
+ y: t + n - 1 - f,
2611
+ width: Math.max(1, o - 1),
2612
+ height: f,
2613
+ fill: "var(--tokui-chart-text, #bbb)",
2614
+ opacity: "0.55",
2615
+ class: "tokui-chart-zoom-overview"
2616
+ }));
2617
+ }
2618
+ var m = s("rect", {
2619
+ y: t - 1,
2620
+ height: n + 2,
2621
+ fill: "rgba(0,120,212,0.12)",
2622
+ stroke: "var(--tokui-primary-6, #1a73e8)",
2623
+ "stroke-width": 1,
2624
+ rx: 2,
2625
+ class: "tokui-chart-zoom-window",
2626
+ style: "cursor:grab;"
2627
+ }), h = s("rect", {
2628
+ width: 6,
2629
+ height: n + 6,
2630
+ y: t - 3,
2631
+ fill: "var(--tokui-primary-6, #1a73e8)",
2632
+ rx: 2,
2633
+ class: "tokui-chart-zoom-handle tokui-chart-zoom-handle--l",
2634
+ style: "cursor:ew-resize;"
2635
+ }), g = s("rect", {
2636
+ width: 6,
2637
+ height: n + 6,
2638
+ y: t - 3,
2639
+ fill: "var(--tokui-primary-6, #1a73e8)",
2640
+ rx: 2,
2641
+ class: "tokui-chart-zoom-handle tokui-chart-zoom-handle--r",
2642
+ style: "cursor:ew-resize;"
2643
+ });
2644
+ e.appendChild(m), e.appendChild(h), e.appendChild(g);
2645
+ var _ = 0, v = 1, x = Math.max(2, Math.floor(u * .1)) / (u - 1);
2646
+ function S(e, t) {
2647
+ var n = Z + e * Q, r = Z + t * Q;
2648
+ m.setAttribute("x", n), m.setAttribute("width", Math.max(2, r - n)), h.setAttribute("x", n - 3), g.setAttribute("x", r - 3);
2649
+ }
2650
+ S(_, v);
2651
+ var C = typeof window < "u" && typeof window.requestAnimationFrame == "function", w = !1, T = null;
2652
+ function E(e, t) {
2653
+ T = [e, t], !w && (w = !0, C ? window.requestAnimationFrame(function() {
2654
+ w = !1, T && a(T[0], T[1], !1);
2655
+ }) : (w = !1, a(e, t, !1)));
2656
+ }
2657
+ function O(e) {
2658
+ S(_, v);
2659
+ var t = q(u, _, v);
2660
+ e ? E(t.s, t.e) : (T = null, a(t.s, t.e, !0));
2661
+ }
2662
+ function k(e, t) {
2663
+ e.style.touchAction = "none", e.style.userSelect = "none", e.style.webkitUserDrag = "none";
2664
+ function n(n, r) {
2665
+ var i = !0, a = n;
2666
+ function o(e) {
2667
+ if (i) {
2668
+ var n = b((e - Z) / Q, 0, 1);
2669
+ if (t === "l") _ = Math.min(n, v - x);
2670
+ else if (t === "r") v = Math.max(n, _ + x);
2671
+ else {
2672
+ var r = v - _, o = (e - a) / Q;
2673
+ _ = b(_ + o, 0, 1 - r), v = _ + r;
2674
+ }
2675
+ a = e, O(!0);
2676
+ }
2677
+ }
2678
+ function s(e) {
2679
+ e.preventDefault(), o(D(P, e.clientX));
2680
+ }
2681
+ function c() {
2682
+ i = !1, e.removeEventListener("pointermove", s), e.removeEventListener("pointerup", c);
2683
+ try {
2684
+ e.releasePointerCapture(r);
2685
+ } catch {}
2686
+ O(!1);
2687
+ }
2688
+ e.addEventListener("pointermove", s), e.addEventListener("pointerup", c);
2689
+ }
2690
+ e.addEventListener("pointerdown", function(t) {
2691
+ t.preventDefault(), t.stopPropagation();
2692
+ try {
2693
+ e.setPointerCapture(t.pointerId);
2694
+ } catch {}
2695
+ n(D(P, t.clientX), t.pointerId);
2696
+ });
2697
+ }
2698
+ k(h, "l"), k(g, "r"), k(m, "pan");
2699
+ })();
2132
2700
  }
2133
- return m && T(k, l.map(function(e, t) {
2701
+ return m && j(P, l.map(function(e, t) {
2134
2702
  return {
2135
2703
  color: r[t % r.length],
2136
2704
  text: n("chart.seriesDefault", { n: t + 1 })
2137
2705
  };
2138
- }), d, p + 6), k.appendChild(A.layer), w(k), k;
2706
+ }), d, p + 6), P.appendChild(I.layer), h || w(P), P;
2139
2707
  }
2140
- function H(e, t, r, i) {
2708
+ function X(e, t, r, i) {
2141
2709
  var a = i.stack !== void 0 || i.stacked !== void 0, c = i.smooth !== void 0, l = f(i.d);
2142
2710
  if (l.length || (l = [e]), l.every(function(e) {
2143
2711
  return !e.length;
2144
- })) return E(parseInt(i.w) || 400, parseInt(i.h) || 200);
2712
+ })) return M(parseInt(i.w) || 400, parseInt(i.h) || 200);
2145
2713
  var u = Math.max.apply(null, l.map(function(e) {
2146
2714
  return e.length;
2147
- })), d = x(i, "w", u, 52, 24, 360, 2400), p = S(d, parseInt(i.h) || 200, 4, 560), m = l.length > 1, h = p + (m ? o : 0), g = l.map(function(e) {
2715
+ })), d = x(i, "w", u, 52, 24, 360, 2400), p = S(d, parseInt(i.h) || 200, 4, 560), m = l.length > 1, h = K(i, u), g = h ? 28 : 0, _ = p + (m ? o : 0) + g, v = l.map(function(e) {
2148
2716
  return e.slice();
2149
2717
  });
2150
- if (a) for (var _ = 1; _ < g.length; _++) for (var v = 0; v < u; v++) g[_][v] = (g[_][v] || 0) + (g[_ - 1][v] || 0);
2151
- var y = 0, b = Infinity;
2152
- g.forEach(function(e) {
2718
+ if (a) for (var y = 1; y < v.length; y++) for (var b = 0; b < u; b++) v[y][b] = (v[y][b] || 0) + (v[y - 1][b] || 0);
2719
+ var T = 0, E = Infinity;
2720
+ v.forEach(function(e) {
2153
2721
  e.forEach(function(e) {
2154
- e > y && (y = e), e < b && (b = e);
2722
+ e > T && (T = e), e < E && (E = e);
2155
2723
  });
2156
- }), b === Infinity && (b = 0), b > 0 && !a && (b = 0);
2157
- var O = y - b || 1, k = i.yl ? 46 : 40, A = 12, j = i.xl ? 38 : 28, M = 18, N = d - k - A, P = p - M - j, L = s("svg", {
2158
- viewBox: "0 0 " + d + " " + h,
2724
+ }), E === Infinity && (E = 0), E > 0 && !a && (E = 0);
2725
+ var D = T - E || 1, O = 12, N = 18, P = i._padL ? +i._padL : i.yl ? 46 : 40, F = d - P - O, I = u > 1 ? F / (u - 1) : F, L = G(t.slice(0, u), I, i.xl ? 38 : 28, F, i.interval), R = L.padB, z = p - N - R, B = s("svg", {
2726
+ viewBox: "0 0 " + d + " " + _,
2159
2727
  class: "tokui-chart__svg",
2160
2728
  preserveAspectRatio: "xMidYMid meet"
2161
- }), R = C(d, h);
2162
- function z(e) {
2163
- return k + (u > 1 ? e * N / (u - 1) : N / 2);
2164
- }
2165
- function B(e) {
2166
- return M + P * (1 - (e - b) / O);
2167
- }
2168
- for (var V = 0; V <= 4; V++) {
2169
- var H = b + O * V / 4, U = B(H);
2170
- L.appendChild(s("line", {
2171
- x1: k,
2172
- y1: U,
2173
- x2: d - A,
2174
- y2: U,
2729
+ }), V = C(d, _);
2730
+ function H(e) {
2731
+ return P + (u > 1 ? e * F / (u - 1) : F / 2);
2732
+ }
2733
+ function U(e) {
2734
+ return N + z * (1 - (e - E) / D);
2735
+ }
2736
+ for (var W = 0; W <= 4; W++) {
2737
+ var ee = E + D * W / 4, q = U(ee);
2738
+ B.appendChild(s("line", {
2739
+ x1: P,
2740
+ y1: q,
2741
+ x2: d - O,
2742
+ y2: q,
2175
2743
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
2176
2744
  "stroke-width": 1
2177
- })), L.appendChild(s("text", {
2178
- x: k - 4,
2179
- y: U + 4,
2745
+ })), B.appendChild(s("text", {
2746
+ x: P - 4,
2747
+ y: q + 4,
2180
2748
  "text-anchor": "end",
2181
2749
  fill: "var(--tokui-chart-text, #999)",
2182
2750
  "font-size": "9"
2183
- })).textContent = Math.round(H * 10) / 10;
2751
+ })).textContent = Math.round(ee * 10) / 10;
2184
2752
  }
2185
- function W(e) {
2753
+ function ne(e) {
2186
2754
  if (e.length < 2) return e.length ? "M" + e[0].x + "," + e[0].y : "";
2187
2755
  if (e.length === 2) return "M" + e[0].x + "," + e[0].y + " L" + e[1].x + "," + e[1].y;
2188
2756
  for (var t = "M" + e[0].x + "," + e[0].y, n = 0; n < e.length - 1; n++) {
@@ -2191,104 +2759,210 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2191
2759
  }
2192
2760
  return t;
2193
2761
  }
2194
- g.forEach(function(e, o) {
2195
- for (var u = [], d = 0; d < e.length; d++) {
2196
- var f = e[d];
2197
- f != null && u.push({
2198
- x: z(d),
2199
- y: B(f),
2200
- idx: d
2762
+ var Y = h ? s("g", { class: "tokui-chart-plot" }) : null;
2763
+ Y && B.appendChild(Y);
2764
+ var re = h ? s("g", { class: "tokui-chart-plot-dots" }) : null;
2765
+ re && B.appendChild(re);
2766
+ var ie = Y || B, ae = [];
2767
+ if (v.forEach(function(e, t) {
2768
+ for (var n = [], o = 0; o < e.length; o++) {
2769
+ var u = e[o];
2770
+ u != null && n.push({
2771
+ x: H(o),
2772
+ y: U(u),
2773
+ idx: o
2201
2774
  });
2202
2775
  }
2203
- if (u.length) {
2204
- if (i.area !== void 0 || a) if (a && o > 0) {
2205
- for (var p = [], m = 0; m < g[o - 1].length; m++) g[o - 1][m] !== void 0 && p.push({
2206
- x: z(m),
2207
- y: B(g[o - 1][m])
2776
+ if (n.length) {
2777
+ if (i.area !== void 0 || a) if (a && t > 0) {
2778
+ for (var d = [], f = 0; f < v[t - 1].length; f++) v[t - 1][f] !== void 0 && d.push({
2779
+ x: H(f),
2780
+ y: U(v[t - 1][f])
2208
2781
  });
2209
- var h = "M" + u[0].x + "," + u[0].y;
2210
- u.forEach(function(e) {
2211
- h += " L" + e.x + "," + e.y;
2782
+ var p = "M" + n[0].x + "," + n[0].y;
2783
+ n.forEach(function(e) {
2784
+ p += " L" + e.x + "," + e.y;
2212
2785
  });
2213
- for (var _ = p.length - 1; _ >= 0; _--) h += " L" + p[_].x + "," + p[_].y;
2214
- h += " Z", L.appendChild(s("path", {
2215
- d: h,
2216
- fill: r[o % r.length],
2786
+ for (var m = d.length - 1; m >= 0; m--) p += " L" + d[m].x + "," + d[m].y;
2787
+ p += " Z", ie.appendChild(s("path", {
2788
+ d: p,
2789
+ fill: r[t % r.length],
2217
2790
  opacity: "0.4"
2218
2791
  }));
2219
2792
  } else {
2220
- var v = B(Math.max(0, b)), y = "M" + u[0].x + "," + v;
2221
- u.forEach(function(e) {
2222
- y += " L" + e.x + "," + e.y;
2223
- }), y += " L" + u[u.length - 1].x + "," + v + " Z", L.appendChild(s("path", {
2224
- d: y,
2225
- fill: r[o % r.length],
2793
+ var g = U(Math.max(0, E)), _ = "M" + n[0].x + "," + g;
2794
+ n.forEach(function(e) {
2795
+ _ += " L" + e.x + "," + e.y;
2796
+ }), _ += " L" + n[n.length - 1].x + "," + g + " Z", ie.appendChild(s("path", {
2797
+ d: _,
2798
+ fill: r[t % r.length],
2226
2799
  opacity: "0.15"
2227
2800
  }));
2228
2801
  }
2229
- c ? L.appendChild(s("path", {
2230
- d: W(u),
2802
+ c ? ie.appendChild(s("path", {
2803
+ d: ne(n),
2231
2804
  fill: "none",
2232
- stroke: r[o % r.length],
2805
+ stroke: r[t % r.length],
2233
2806
  "stroke-width": 2,
2234
2807
  "stroke-linejoin": "round",
2235
2808
  "stroke-linecap": "round"
2236
- })) : L.appendChild(s("polyline", {
2237
- points: u.map(function(e) {
2809
+ })) : ie.appendChild(s("polyline", {
2810
+ points: n.map(function(e) {
2238
2811
  return e.x + "," + e.y;
2239
2812
  }).join(" "),
2240
2813
  fill: "none",
2241
- stroke: r[o % r.length],
2814
+ stroke: r[t % r.length],
2242
2815
  "stroke-width": 2,
2243
2816
  "stroke-linejoin": "round"
2244
2817
  }));
2245
- var x = l[o];
2246
- u.forEach(function(a) {
2247
- var c = s("g", { class: "tokui-chart-tip-group" });
2248
- c.appendChild(s("circle", {
2249
- cx: a.x,
2250
- cy: a.y,
2251
- r: 8,
2252
- fill: "transparent"
2253
- })), c.appendChild(s("circle", {
2254
- cx: a.x,
2255
- cy: a.y,
2818
+ var y = l[t];
2819
+ n.forEach(function(n) {
2820
+ var a = h ? re : B, o = s("circle", {
2821
+ cx: n.x,
2822
+ cy: n.y,
2256
2823
  r: 3,
2257
2824
  fill: "#fff",
2258
- stroke: r[o % r.length],
2825
+ stroke: r[t % r.length],
2259
2826
  "stroke-width": 2,
2260
2827
  class: "tokui-chart-dot"
2261
- })), R.add(c, (t[a.idx] || "") + ": " + (x[a.idx] === void 0 ? e[a.idx] : x[a.idx]) + (l.length > 1 ? " (" + n("chart.seriesDefault", { n: o + 1 }) + ")" : ""), a.x, a.y), L.appendChild(c), i.vals !== void 0 && (L.appendChild(s("text", {
2262
- x: a.x,
2263
- y: a.y - 6,
2828
+ });
2829
+ a.appendChild(o), h && ae.push({
2830
+ circle: o,
2831
+ idx: n.idx,
2832
+ x: n.x,
2833
+ si: t
2834
+ }), i.vals !== void 0 && (ie.appendChild(s("text", {
2835
+ x: n.x,
2836
+ y: n.y - 6,
2264
2837
  "text-anchor": "middle",
2265
- fill: r[o % r.length],
2838
+ fill: r[t % r.length],
2266
2839
  "font-size": "8"
2267
- })).textContent = x[a.idx] === void 0 ? e[a.idx] : x[a.idx]);
2840
+ })).textContent = y[n.idx] === void 0 ? e[n.idx] : y[n.idx]);
2268
2841
  });
2269
2842
  }
2270
- });
2271
- for (var G = [], K = 0; K < u; K++) G.push(z(K));
2272
- F(L, t.slice(0, u), G, p - 8, u > 1 ? N / (u - 1) : N);
2273
- var q = u > 1 ? N / (u - 1) : N;
2274
- return i.xl && I(L, i.xl, k + N / 2, p - 8 + (D(String(t[0] || "")) > q * .9 ? 26 : 12), !1), i.yl && I(L, i.yl, 12, M + P / 2, !0), m && T(L, l.map(function(e, t) {
2843
+ }), h) {
2844
+ var X = A(B, {
2845
+ plotG: Y,
2846
+ tipLayer: V.layer,
2847
+ padL: P,
2848
+ cw: F,
2849
+ padT: N,
2850
+ ch: z,
2851
+ h: p,
2852
+ w: d,
2853
+ n: u,
2854
+ srcLeft: function(e) {
2855
+ return P + (u > 1 ? e * F / (u - 1) : 0);
2856
+ },
2857
+ srcRight: function(e) {
2858
+ return P + (u > 1 ? e * F / (u - 1) : F);
2859
+ },
2860
+ overview: l.reduce(function(e, t) {
2861
+ for (var n = 0; n < t.length; n++) {
2862
+ var r = t[n] || 0;
2863
+ e[n] = Math.max(e[n] || 0, r);
2864
+ }
2865
+ return e;
2866
+ }, []),
2867
+ valMin: E,
2868
+ range: D,
2869
+ renderLabels: function(e, n, r) {
2870
+ for (var i = r - n, a = [], o = n; o <= r; o++) a.push(i > 0 ? P + (o - n) * F / i : P + F / 2);
2871
+ J(e, t.slice(n, r + 1), a, p - 8, I, L.rotate, L.interval);
2872
+ },
2873
+ onZoom: function(e, t, n, r) {
2874
+ for (var i = 0; i < ae.length; i++) {
2875
+ var a = ae[i];
2876
+ a.circle.setAttribute("cx", n * a.x + r);
2877
+ }
2878
+ }
2879
+ });
2880
+ X.clipG.appendChild(re), k({
2881
+ svg: B,
2882
+ padL: P,
2883
+ padT: N,
2884
+ cw: F,
2885
+ ch: z,
2886
+ w: d,
2887
+ h: p,
2888
+ n: u,
2889
+ labels: t,
2890
+ series: l.map(function(e, t) {
2891
+ return {
2892
+ color: r[t % r.length],
2893
+ name: n("chart.seriesDefault", { n: t + 1 }),
2894
+ vals: e,
2895
+ markerVals: v[t]
2896
+ };
2897
+ }),
2898
+ valMin: E,
2899
+ range: D,
2900
+ yOf: U,
2901
+ tipLayer: V.layer,
2902
+ bfs: 9,
2903
+ toViewX: function(e) {
2904
+ return X.winState.sx * H(e) + X.winState.tx;
2905
+ },
2906
+ toIdx: function(e) {
2907
+ var t = (e - X.winState.tx) / X.winState.sx;
2908
+ return Math.round((t - P) * (u - 1) / F);
2909
+ },
2910
+ inWindow: function(e) {
2911
+ return e >= X.winState.s && e <= X.winState.e;
2912
+ }
2913
+ });
2914
+ } else {
2915
+ for (var Z = [], oe = 0; oe < u; oe++) Z.push(H(oe));
2916
+ J(B, t.slice(0, u), Z, p - 8, I, L.rotate, L.interval), k({
2917
+ svg: B,
2918
+ padL: P,
2919
+ padT: N,
2920
+ cw: F,
2921
+ ch: z,
2922
+ w: d,
2923
+ h: p,
2924
+ n: u,
2925
+ labels: t,
2926
+ series: l.map(function(e, t) {
2927
+ return {
2928
+ color: r[t % r.length],
2929
+ name: n("chart.seriesDefault", { n: t + 1 }),
2930
+ vals: e,
2931
+ markerVals: v[t]
2932
+ };
2933
+ }),
2934
+ valMin: E,
2935
+ range: D,
2936
+ yOf: U,
2937
+ tipLayer: V.layer,
2938
+ bfs: 9,
2939
+ toViewX: H,
2940
+ toIdx: function(e) {
2941
+ return Math.round((e - P) * (u - 1) / F);
2942
+ },
2943
+ inWindow: function() {
2944
+ return !0;
2945
+ }
2946
+ });
2947
+ }
2948
+ return i.xl && te(B, i.xl, P + F / 2, p - 8 + (L.rotate ? 26 : 12), !1), i.yl && te(B, i.yl, 12, N + z / 2, !0), m && j(B, l.map(function(e, t) {
2275
2949
  return {
2276
2950
  color: r[t % r.length],
2277
2951
  text: n("chart.seriesDefault", { n: t + 1 })
2278
2952
  };
2279
- }), d, p + 6), L.appendChild(R.layer), w(L), L;
2953
+ }), d, p + 6), B.appendChild(V.layer), h || w(B), B;
2280
2954
  }
2281
- function U(e, t, n, r, i) {
2955
+ function Z(e, t, n, r, i) {
2282
2956
  var a = 10, s = 12, c = 4, l = 4;
2283
2957
  r > 0 || (r = 7);
2284
2958
  var u = 0;
2285
2959
  e.forEach(function(e, n) {
2286
2960
  if (t[n]) {
2287
- var r = Math.round(e / i * 100), a = D(t[n] + " " + e + "(" + r + "%)");
2961
+ var r = Math.round(e / i * 100), a = N(t[n] + " " + e + "(" + r + "%)");
2288
2962
  a > u && (u = a);
2289
2963
  }
2290
2964
  });
2291
- var d = u / k, f = a + s + c + l, p = f + d * r, m = parseInt(n.w) || 280, h = parseInt(n.h) || 280, g = a + r + l, _ = Math.max(8, Math.min(m, h) / 2 - g), v = _ + p;
2965
+ var d = u / L, f = a + s + c + l, p = f + d * r, m = parseInt(n.w) || 280, h = parseInt(n.h) || 280, g = a + r + l, _ = Math.max(8, Math.min(m, h) / 2 - g), v = _ + p;
2292
2966
  return {
2293
2967
  fs: r,
2294
2968
  leadLen: a,
@@ -2308,14 +2982,14 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2308
2982
  totalH: (g + _) * 2 + o
2309
2983
  };
2310
2984
  }
2311
- function W(e, t, r, i) {
2985
+ function oe(e, t, r, i) {
2312
2986
  var a = parseInt(i.w) || 280, c = parseInt(i.h) || 280;
2313
- if (!e.length) return E(a, c + o);
2987
+ if (!e.length) return M(a, c + o);
2314
2988
  var l = e.reduce(function(e, t) {
2315
2989
  return e + t;
2316
2990
  }, 0) || 1, u = i._pieFs !== void 0 && i._pieFs !== "" ? parseFloat(i._pieFs) : 7;
2317
2991
  (!(u > 0) || !isFinite(u)) && (u = 7);
2318
- var d = U(e, t, i, u, l), f = [], p = -Math.PI / 2;
2992
+ var d = Z(e, t, i, u, l), f = [], p = -Math.PI / 2;
2319
2993
  e.forEach(function(e, t) {
2320
2994
  var n = e / l * 2 * Math.PI;
2321
2995
  f.push({
@@ -2332,16 +3006,28 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2332
3006
  preserveAspectRatio: "xMidYMid meet"
2333
3007
  }), v = C(d.W, d.totalH);
2334
3008
  f.forEach(function(e) {
2335
- var i = e.idx, a = e.end - e.start, o = m + g * Math.cos(e.start), c = h + g * Math.sin(e.start), u = m + g * Math.cos(e.end), d = h + g * Math.sin(e.end), f = +(a > Math.PI), p = "M" + m + "," + h + " L" + o + "," + c + " A" + g + "," + g + " 0 " + f + " 1 " + u + "," + d + " Z", y = Math.round(e.val / l * 100), b = s("g", { class: "tokui-chart-tip-group" });
2336
- b.appendChild(s("path", {
2337
- d: p,
3009
+ var i = e.idx, a = e.end - e.start, o = Math.round(e.val / l * 100), c = s("g", { class: "tokui-chart-tip-group" });
3010
+ if (a >= 2 * Math.PI - 1e-9) c.appendChild(s("circle", {
3011
+ cx: m,
3012
+ cy: h,
3013
+ r: g,
2338
3014
  fill: r[i % r.length],
2339
3015
  stroke: "var(--tokui-chart-slice-stroke, #fff)",
2340
3016
  "stroke-width": 2,
2341
3017
  class: "tokui-chart-slice"
2342
3018
  }));
3019
+ else {
3020
+ var u = m + g * Math.cos(e.start), d = h + g * Math.sin(e.start), f = m + g * Math.cos(e.end), p = h + g * Math.sin(e.end), y = +(a > Math.PI), b = "M" + m + "," + h + " L" + u + "," + d + " A" + g + "," + g + " 0 " + y + " 1 " + f + "," + p + " Z";
3021
+ c.appendChild(s("path", {
3022
+ d: b,
3023
+ fill: r[i % r.length],
3024
+ stroke: "var(--tokui-chart-slice-stroke, #fff)",
3025
+ "stroke-width": 2,
3026
+ class: "tokui-chart-slice"
3027
+ }));
3028
+ }
2343
3029
  var x = m + g * .6 * Math.cos(e.mid), S = h + g * .6 * Math.sin(e.mid);
2344
- v.add(b, (t[i] || n("chart.itemDefault", { n: i + 1 })) + ": " + e.val + " (" + y + "%)", x, S), _.appendChild(b);
3030
+ v.add(c, (t[i] || n("chart.itemDefault", { n: i + 1 })) + ": " + e.val + " (" + o + "%)", x, S), _.appendChild(c);
2345
3031
  });
2346
3032
  var y = d.leadLen, b = d.tailLen, x = d.gap;
2347
3033
  return f.forEach(function(e) {
@@ -2364,18 +3050,18 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2364
3050
  });
2365
3051
  w.textContent = t[n] + " " + e.val + "(" + a + "%)", _.appendChild(w);
2366
3052
  }
2367
- }), T(_, e.map(function(e, i) {
3053
+ }), j(_, e.map(function(e, i) {
2368
3054
  return {
2369
3055
  color: r[i % r.length],
2370
3056
  text: t[i] || n("chart.itemDefault", { n: i + 1 })
2371
3057
  };
2372
3058
  }), d.W, d.H + 6, d.fs), _.appendChild(v.layer), w(_), _;
2373
3059
  }
2374
- function G(e, t, r, i) {
3060
+ function se(e, t, r, i) {
2375
3061
  var a = parseInt(i.w) || 240, c = parseInt(i.h) || 240, l = c + o, u = a / 2, d = c / 2, p = f(i.d);
2376
3062
  if (p.length || (p = [e]), p.every(function(e) {
2377
3063
  return !e.length;
2378
- })) return E(a, c + o);
3064
+ })) return M(a, c + o);
2379
3065
  var m = p.length > 1, h = Math.min(u, d) - 16, g = s("svg", {
2380
3066
  viewBox: "0 0 " + a + " " + l,
2381
3067
  class: "tokui-chart__svg",
@@ -2406,16 +3092,16 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2406
3092
  "font-size": "16",
2407
3093
  "font-weight": "700",
2408
3094
  class: "tokui-chart-donut-value"
2409
- })).textContent = i.v + "%"), T(g, p[0].map(function(e, i) {
3095
+ })).textContent = i.v + "%"), j(g, p[0].map(function(e, i) {
2410
3096
  return {
2411
3097
  color: r[i % r.length],
2412
3098
  text: (t[i] || n("chart.itemDefault", { n: i + 1 })) + " " + e
2413
3099
  };
2414
3100
  }), a, c + 6), g.appendChild(_.layer), w(g), g;
2415
3101
  }
2416
- function K(e, t, r, i) {
3102
+ function Q(e, t, r, i) {
2417
3103
  var a = e.length, o = parseInt(i.w) || 480, c = parseInt(i.h) || 320;
2418
- if (!a) return E(o, c);
3104
+ if (!a) return M(o, c);
2419
3105
  var l = 14, u = 12, d = 14, f = c - l - u, p = a ? f / a : f, m = e[0] || 0, h = v(e) || 1, g = Math.round(o * .6), _ = g - d - 6, y = d + _ / 2, b = g + 10, x = s("svg", {
2420
3106
  viewBox: "0 0 " + o + " " + c,
2421
3107
  class: "tokui-chart__svg tokui-chart__svg--funnel",
@@ -2484,7 +3170,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2484
3170
  S.add(O, T + ": " + i + " (" + n("chart.conversion", { pct: w }) + ")", y, C), x.appendChild(O);
2485
3171
  }), x.appendChild(S.layer), w(x), x;
2486
3172
  }
2487
- function q(e, t, r, i) {
3173
+ function ce(e, t, r, i) {
2488
3174
  var a = parseInt(i.w) || 280, o = parseInt(i.h) || 200, c = a / 2, l = parseInt(i.range, 10);
2489
3175
  (isNaN(l) || l !== 180 && l !== 270 && l !== 360) && (l = 180);
2490
3176
  var u = l * Math.PI / 180, d = 1.5 * Math.PI, f = d - u / 2, p = d + u / 2, _ = l === 180 ? o - 34 : o / 2, v = _, y = Math.max(0, Math.sin(f)), x = l === 180 ? Math.max(40, Math.min(c - 34, _ - 24)) : Math.max(36, Math.min(c - 30, (o - 28) / (1 + y + .35))), S = parseFloat(i.min);
@@ -2522,61 +3208,61 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2522
3208
  return N[0];
2523
3209
  }
2524
3210
  var I = M.length ? F(D) : A[i.status] || (g(i.c) ? i.c : null) || r[0] || A.primary;
2525
- function R(e, t) {
3211
+ function L(e, t) {
2526
3212
  return [c + t * Math.cos(e), v + t * Math.sin(e)];
2527
3213
  }
2528
- function z(e, t, n) {
2529
- var r = R(e, n), i = R(t, n), a = +(t - e > Math.PI);
3214
+ function R(e, t, n) {
3215
+ var r = L(e, n), i = L(t, n), a = +(t - e > Math.PI);
2530
3216
  return "M" + r[0] + "," + r[1] + " A" + n + "," + n + " 0 " + a + " 1 " + i[0] + "," + i[1];
2531
3217
  }
2532
- function B(e) {
3218
+ function z(e) {
2533
3219
  return f + b((e - S) / E, 0, 1) * (p - f);
2534
3220
  }
2535
- function V(e) {
3221
+ function B(e) {
2536
3222
  return k > 0 ? e.toFixed(k) : String(Math.round(e));
2537
3223
  }
2538
- var H = 14, U = s("svg", {
3224
+ var V = 14, H = s("svg", {
2539
3225
  viewBox: "0 0 " + a + " " + o,
2540
3226
  class: "tokui-chart__svg tokui-chart__svg--gauge",
2541
3227
  preserveAspectRatio: "xMidYMid meet"
2542
- }), W = C(a, o);
2543
- if (M.length) for (var G = 0; G < P.length - 1; G++) U.appendChild(s("path", {
2544
- d: z(B(P[G]), B(P[G + 1]), x),
3228
+ }), U = C(a, o);
3229
+ if (M.length) for (var W = 0; W < P.length - 1; W++) H.appendChild(s("path", {
3230
+ d: R(z(P[W]), z(P[W + 1]), x),
2545
3231
  fill: "none",
2546
- stroke: N[G % N.length],
2547
- "stroke-width": H,
3232
+ stroke: N[W % N.length],
3233
+ "stroke-width": V,
2548
3234
  "stroke-linecap": "butt",
2549
3235
  opacity: "0.28",
2550
3236
  class: "tokui-chart-gauge-track"
2551
3237
  }));
2552
- else U.appendChild(s("path", {
2553
- d: z(f, p, x),
3238
+ else H.appendChild(s("path", {
3239
+ d: R(f, p, x),
2554
3240
  fill: "none",
2555
3241
  stroke: "var(--tokui-chart-grid, #ececec)",
2556
- "stroke-width": H,
3242
+ "stroke-width": V,
2557
3243
  "stroke-linecap": "round",
2558
3244
  class: "tokui-chart-gauge-track"
2559
3245
  }));
2560
- var K = parseInt(i.ticks, 10);
2561
- isNaN(K) && (K = 6);
2562
- var q = {};
3246
+ var G = parseInt(i.ticks, 10);
3247
+ isNaN(G) && (G = 6);
3248
+ var ee = {};
2563
3249
  [S, T].concat(M).forEach(function(e) {
2564
- q[Math.round(e * 100) / 100] = !0;
3250
+ ee[Math.round(e * 100) / 100] = !0;
2565
3251
  });
2566
- for (var J = 0; J <= K; J++) {
2567
- var ee = f + J / K * (p - f), te = J === 0 || J === K, Y = R(ee, x - H / 2 - 1), ne = R(ee, x + H / 2 + 2);
2568
- U.appendChild(s("line", {
2569
- x1: Y[0],
2570
- y1: Y[1],
2571
- x2: ne[0],
2572
- y2: ne[1],
3252
+ for (var K = 0; K <= G; K++) {
3253
+ var q = f + K / G * (p - f), J = K === 0 || K === G, te = L(q, x - V / 2 - 1), Y = L(q, x + V / 2 + 2);
3254
+ H.appendChild(s("line", {
3255
+ x1: te[0],
3256
+ y1: te[1],
3257
+ x2: Y[0],
3258
+ y2: Y[1],
2573
3259
  stroke: "var(--tokui-chart-text, #bbb)",
2574
- "stroke-width": te ? 1.2 : .6,
2575
- opacity: te ? .8 : .35
3260
+ "stroke-width": J ? 1.2 : .6,
3261
+ opacity: J ? .8 : .35
2576
3262
  }));
2577
- var re = S + J / K * E, ie = Math.round(re * 100) / 100;
2578
- if (te || q[ie]) {
2579
- var ae = R(ee, x + H / 2 + 12), oe = s("text", {
3263
+ var re = S + K / G * E, ie = Math.round(re * 100) / 100;
3264
+ if (J || ee[ie]) {
3265
+ var ae = L(q, x + V / 2 + 12), X = s("text", {
2580
3266
  x: ae[0],
2581
3267
  y: ae[1],
2582
3268
  "text-anchor": "middle",
@@ -2584,24 +3270,24 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2584
3270
  fill: "var(--tokui-chart-text, #999)",
2585
3271
  "font-size": "8"
2586
3272
  });
2587
- oe.textContent = k > 0 ? re.toFixed(k) : Math.round(re), U.appendChild(oe);
3273
+ X.textContent = k > 0 ? re.toFixed(k) : Math.round(re), H.appendChild(X);
2588
3274
  }
2589
3275
  }
2590
- var X = s("g", { class: "tokui-chart-tip-group" }), Z = s("path", {
3276
+ var Z = s("g", { class: "tokui-chart-tip-group" }), oe = s("path", {
2591
3277
  fill: "none",
2592
3278
  stroke: I,
2593
- "stroke-width": H,
3279
+ "stroke-width": V,
2594
3280
  "stroke-linecap": "round",
2595
3281
  class: "tokui-chart-gauge-arc"
2596
3282
  });
2597
- X.appendChild(Z), W.add(X, (i.l || n("gauge.currentValue")) + ": " + V(D) + O + " (" + Math.round(b((D - S) / E, 0, 1) * 100) + "%)", c, v - x), U.appendChild(X);
2598
- var Q = s("line", {
3283
+ Z.appendChild(oe), U.add(Z, (i.l || n("gauge.currentValue")) + ": " + B(D) + O + " (" + Math.round(b((D - S) / E, 0, 1) * 100) + "%)", c, v - x), H.appendChild(Z);
3284
+ var se = s("line", {
2599
3285
  stroke: I,
2600
3286
  "stroke-width": 2.5,
2601
3287
  "stroke-linecap": "round",
2602
3288
  class: "tokui-chart-gauge-needle"
2603
3289
  });
2604
- U.appendChild(Q), U.appendChild(s("circle", {
3290
+ H.appendChild(se), H.appendChild(s("circle", {
2605
3291
  cx: c,
2606
3292
  cy: v,
2607
3293
  r: 5,
@@ -2610,9 +3296,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2610
3296
  "stroke-width": 1.5,
2611
3297
  class: "tokui-chart-gauge-hub"
2612
3298
  }));
2613
- var se = v - x * (l === 180 ? .5 : l === 270 ? .2 : .12), ce = s("text", {
3299
+ var Q = v - x * (l === 180 ? .5 : l === 270 ? .2 : .12), ce = s("text", {
2614
3300
  x: c,
2615
- y: se,
3301
+ y: Q,
2616
3302
  "text-anchor": "middle",
2617
3303
  "dominant-baseline": "central",
2618
3304
  fill: "var(--tokui-text, #333)",
@@ -2620,8 +3306,8 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2620
3306
  "font-weight": "700",
2621
3307
  class: "tokui-chart-gauge-value tokui-chart-gauge-label"
2622
3308
  });
2623
- U.appendChild(ce);
2624
- var le = se + 20;
3309
+ H.appendChild(ce);
3310
+ var le = Q + 20;
2625
3311
  if (i.l) {
2626
3312
  var ue = s("text", {
2627
3313
  x: c,
@@ -2632,7 +3318,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2632
3318
  "font-size": "10",
2633
3319
  class: "tokui-chart-gauge-label"
2634
3320
  });
2635
- ue.textContent = i.l, U.appendChild(ue), le += 15;
3321
+ ue.textContent = i.l, H.appendChild(ue), le += 15;
2636
3322
  }
2637
3323
  if (i.status && j[i.status]) {
2638
3324
  var de = s("text", {
@@ -2645,7 +3331,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2645
3331
  "font-weight": "600",
2646
3332
  class: "tokui-chart-gauge-label"
2647
3333
  });
2648
- de.textContent = j[i.status], U.appendChild(de);
3334
+ de.textContent = j[i.status], H.appendChild(de);
2649
3335
  }
2650
3336
  if (i.sub) {
2651
3337
  var fe = s("text", {
@@ -2657,22 +3343,22 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2657
3343
  "font-size": "9",
2658
3344
  class: "tokui-chart-gauge-label"
2659
3345
  });
2660
- fe.textContent = i.sub, U.appendChild(fe);
3346
+ fe.textContent = i.sub, H.appendChild(fe);
2661
3347
  }
2662
- U.appendChild(W.layer);
3348
+ H.appendChild(U.layer);
2663
3349
  function pe(e) {
2664
- var t = B(e);
2665
- Z.setAttribute("d", z(f, t, x));
2666
- var n = R(t, x - H / 2 - 3);
2667
- Q.setAttribute("x1", c), Q.setAttribute("y1", v), Q.setAttribute("x2", n[0]), Q.setAttribute("y2", n[1]), ce.textContent = V(e) + O;
3350
+ var t = z(e);
3351
+ oe.setAttribute("d", R(f, t, x));
3352
+ var n = L(t, x - V / 2 - 3);
3353
+ se.setAttribute("x1", c), se.setAttribute("y1", v), se.setAttribute("x2", n[0]), se.setAttribute("y2", n[1]), ce.textContent = B(e) + O;
2668
3354
  }
2669
- return w(U), L(S, D, parseInt(i.anim, 10) || 0, pe), U;
3355
+ return w(H), ne(S, D, parseInt(i.anim, 10) || 0, pe), H;
2670
3356
  }
2671
- function J(e, t, r, i) {
3357
+ function le(e, t, r, i) {
2672
3358
  var a = parseInt(i.w) || 240, c = parseInt(i.h) || 240, l = a / 2, u = c / 2, d = f(i.d);
2673
3359
  if (d.length || (d = [e]), d.every(function(e) {
2674
3360
  return !e.length;
2675
- })) return E(a, c);
3361
+ })) return M(a, c);
2676
3362
  var p = d.length > 1, m = c + (p ? o : 0), h = Math.min(l, u) - 30, g = Math.max(t.length, d[0].length, 3), _ = 0;
2677
3363
  d.forEach(function(e) {
2678
3364
  e.forEach(function(e) {
@@ -2684,9 +3370,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2684
3370
  class: "tokui-chart__svg",
2685
3371
  preserveAspectRatio: "xMidYMid meet"
2686
3372
  }), y = C(a, m), b = 1; b <= 4; b++) {
2687
- for (var x = h * b / 4, S = [], D = 0; D < g; D++) {
2688
- var O = 2 * Math.PI * D / g - Math.PI / 2;
2689
- S.push(l + x * Math.cos(O) + "," + (u + x * Math.sin(O)));
3373
+ for (var x = h * b / 4, S = [], T = 0; T < g; T++) {
3374
+ var E = 2 * Math.PI * T / g - Math.PI / 2;
3375
+ S.push(l + x * Math.cos(E) + "," + (u + x * Math.sin(E)));
2690
3376
  }
2691
3377
  v.appendChild(s("polygon", {
2692
3378
  points: S.join(" "),
@@ -2695,23 +3381,23 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2695
3381
  "stroke-width": 1
2696
3382
  }));
2697
3383
  }
2698
- for (var D = 0; D < g; D++) {
2699
- var O = 2 * Math.PI * D / g - Math.PI / 2;
3384
+ for (var T = 0; T < g; T++) {
3385
+ var E = 2 * Math.PI * T / g - Math.PI / 2;
2700
3386
  v.appendChild(s("line", {
2701
3387
  x1: l,
2702
3388
  y1: u,
2703
- x2: l + h * Math.cos(O),
2704
- y2: u + h * Math.sin(O),
3389
+ x2: l + h * Math.cos(E),
3390
+ y2: u + h * Math.sin(E),
2705
3391
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
2706
3392
  "stroke-width": 1
2707
- })), t[D] && (v.appendChild(s("text", {
2708
- x: l + (h + 14) * Math.cos(O),
2709
- y: u + (h + 14) * Math.sin(O),
3393
+ })), t[T] && (v.appendChild(s("text", {
3394
+ x: l + (h + 14) * Math.cos(E),
3395
+ y: u + (h + 14) * Math.sin(E),
2710
3396
  "text-anchor": "middle",
2711
3397
  "dominant-baseline": "central",
2712
3398
  fill: "var(--tokui-chart-text, #999)",
2713
3399
  "font-size": "7"
2714
- })).textContent = t[D]);
3400
+ })).textContent = t[T]);
2715
3401
  }
2716
3402
  return d.forEach(function(e, i) {
2717
3403
  var a = r[i % r.length], o = [];
@@ -2745,47 +3431,47 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2745
3431
  class: "tokui-chart-point"
2746
3432
  })), y.add(o, (t[r.idx] || n("chart.dimensionDefault", { n: r.idx + 1 })) + ": " + e[r.idx] + (d.length > 1 ? " (" + n("chart.seriesDefault", { n: i + 1 }) + ")" : ""), r.x, r.y), v.appendChild(o);
2747
3433
  });
2748
- }), p && T(v, d.map(function(e, t) {
3434
+ }), p && j(v, d.map(function(e, t) {
2749
3435
  return {
2750
3436
  color: r[t % r.length],
2751
3437
  text: n("chart.seriesDefault", { n: t + 1 })
2752
3438
  };
2753
3439
  }), a, c + 6), v.appendChild(y.layer), w(v), v;
2754
3440
  }
2755
- function ee(e, t, n, r) {
3441
+ function ue(e, t, n, r) {
2756
3442
  var i = p(r.d);
2757
- if (!i.length) return E(parseInt(r.w) || 400, parseInt(r.h) || 200);
2758
- for (var a = x(r, "w", i.length, 50, 22, 360, 2400), o = S(a, parseInt(r.h) || 200, 4, 560), c = o, l = 40, u = 30, d = 18, f = 10, m = a - l - f, h = o - d - u, g = r.xl || "X", _ = r.yl || "Y", b = P(r, "xmin", "_xMin", y(i.map(function(e) {
3443
+ if (!i.length) return M(parseInt(r.w) || 400, parseInt(r.h) || 200);
3444
+ for (var a = x(r, "w", i.length, 50, 22, 360, 2400), o = S(a, parseInt(r.h) || 200, 4, 560), c = o, l = 40, u = 30, d = 18, f = 10, m = a - l - f, h = o - d - u, g = r.xl || "X", _ = r.yl || "Y", b = U(r, "xmin", "_xMin", y(i.map(function(e) {
2759
3445
  return e.x;
2760
- }))), T = P(r, "xmax", "_xMax", v(i.map(function(e) {
3446
+ }))), T = U(r, "xmax", "_xMax", v(i.map(function(e) {
2761
3447
  return e.x;
2762
- }))), D = P(r, "ymin", "_yMin", y(i.map(function(e) {
3448
+ }))), E = U(r, "ymin", "_yMin", y(i.map(function(e) {
2763
3449
  return e.y;
2764
- }))), O = P(r, "ymax", "_yMax", v(i.map(function(e) {
3450
+ }))), D = U(r, "ymax", "_yMax", v(i.map(function(e) {
2765
3451
  return e.y;
2766
- }))), k = T - b || 1, A = O - D || 1, j = s("svg", {
3452
+ }))), O = T - b || 1, k = D - E || 1, A = s("svg", {
2767
3453
  viewBox: "0 0 " + a + " " + c,
2768
3454
  class: "tokui-chart__svg",
2769
3455
  preserveAspectRatio: "xMidYMid meet"
2770
- }), M = C(a, c), N = 0; N <= 4; N++) {
2771
- var F = d + h * (1 - N / 4);
2772
- j.appendChild(s("line", {
3456
+ }), j = C(a, c), N = 0; N <= 4; N++) {
3457
+ var P = d + h * (1 - N / 4);
3458
+ A.appendChild(s("line", {
2773
3459
  x1: l,
2774
- y1: F,
3460
+ y1: P,
2775
3461
  x2: a - f,
2776
- y2: F,
3462
+ y2: P,
2777
3463
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
2778
3464
  "stroke-width": 1
2779
- })), j.appendChild(s("text", {
3465
+ })), A.appendChild(s("text", {
2780
3466
  x: l - 4,
2781
- y: F + 4,
3467
+ y: P + 4,
2782
3468
  "text-anchor": "end",
2783
3469
  fill: "var(--tokui-chart-text, #999)",
2784
3470
  "font-size": "9"
2785
- })).textContent = Math.round(D + A * N / 4);
3471
+ })).textContent = Math.round(E + k * N / 4);
2786
3472
  }
2787
3473
  return i.forEach(function(e, t) {
2788
- var r = l + (e.x - b) / k * m, i = d + h * (1 - (e.y - D) / A), a = s("g", { class: "tokui-chart-tip-group" });
3474
+ var r = l + (e.x - b) / O * m, i = d + h * (1 - (e.y - E) / k), a = s("g", { class: "tokui-chart-tip-group" });
2789
3475
  a.appendChild(s("circle", {
2790
3476
  cx: r,
2791
3477
  cy: i,
@@ -2799,20 +3485,20 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2799
3485
  fill: n[t % n.length],
2800
3486
  opacity: "0.7",
2801
3487
  class: "tokui-chart-point"
2802
- })), M.add(a, g + ": " + e.x + " " + _ + ": " + e.y, r, i), j.appendChild(a);
3488
+ })), j.add(a, g + ": " + e.x + " " + _ + ": " + e.y, r, i), A.appendChild(a);
2803
3489
  var o = s("text", {
2804
3490
  x: r + 6,
2805
3491
  y: i - 4,
2806
3492
  fill: "var(--tokui-chart-text, #666)",
2807
3493
  "font-size": "7"
2808
3494
  });
2809
- o.textContent = e.x + "," + e.y, j.appendChild(o);
2810
- }), j.appendChild(M.layer), w(j), j;
3495
+ o.textContent = e.x + "," + e.y, A.appendChild(o);
3496
+ }), A.appendChild(j.layer), w(A), A;
2811
3497
  }
2812
- function te(e) {
3498
+ function de(e) {
2813
3499
  return /[-/]/.test(String(e));
2814
3500
  }
2815
- function Y(e, t) {
3501
+ function fe(e, t) {
2816
3502
  if (e === void 0 || e === "") return NaN;
2817
3503
  if (t === "dates") {
2818
3504
  var n = new Date(e);
@@ -2821,14 +3507,14 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2821
3507
  var r = parseFloat(e);
2822
3508
  return isNaN(r) ? NaN : r;
2823
3509
  }
2824
- function ne(e) {
3510
+ function pe(e) {
2825
3511
  return e ? String(e).split("|").map(function(e) {
2826
3512
  return e.split(",").map(function(e) {
2827
3513
  return e.trim();
2828
3514
  });
2829
3515
  }) : [];
2830
3516
  }
2831
- function re(e) {
3517
+ function me(e) {
2832
3518
  return e ? String(e).split(",").map(function(e) {
2833
3519
  var t = e.trim().split("->");
2834
3520
  return [parseInt(t[0], 10), parseInt(t[1], 10)];
@@ -2836,31 +3522,31 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2836
3522
  return !isNaN(e[0]) && !isNaN(e[1]);
2837
3523
  }) : [];
2838
3524
  }
2839
- function ie(e, t) {
3525
+ function he(e, t) {
2840
3526
  return e ? String(e).split("|").map(function(e) {
2841
3527
  var n = e.split(",").map(function(e) {
2842
3528
  return e.trim();
2843
3529
  });
2844
3530
  return {
2845
3531
  name: n[0] || "",
2846
- time: Y(n[1], t),
3532
+ time: fe(n[1], t),
2847
3533
  group: parseInt(n[2], 10) || 0
2848
3534
  };
2849
3535
  }) : [];
2850
3536
  }
2851
- function ae(e) {
3537
+ function ge(e) {
2852
3538
  return e ? String(e).split("|").map(function(e) {
2853
3539
  return e.trim();
2854
3540
  }).filter(function(e) {
2855
3541
  return e !== "";
2856
3542
  }) : [];
2857
3543
  }
2858
- function oe(e) {
2859
- var t = parseInt(e.w) || 1080, r = ne(e.tasks);
3544
+ function _e(e) {
3545
+ var t = parseInt(e.w) || 1080, r = pe(e.tasks);
2860
3546
  if (!r.length) return { empty: !0 };
2861
- var i = e.mode === "days" || e.mode === "dates" ? e.mode : te(r[0][1]) ? "dates" : "days", a = [], s = 0;
3547
+ var i = e.mode === "days" || e.mode === "dates" ? e.mode : de(r[0][1]) ? "dates" : "days", a = [], s = 0;
2862
3548
  if (r.forEach(function(e, t) {
2863
- var r = Y(e[1], i), o = Y(e[2], i);
3549
+ var r = fe(e[1], i), o = fe(e[2], i);
2864
3550
  if (isNaN(r) || isNaN(o)) {
2865
3551
  s++;
2866
3552
  return;
@@ -2885,10 +3571,10 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2885
3571
  }))) : (c = 0, l = Math.ceil(Math.max.apply(null, a.map(function(e) {
2886
3572
  return e.end;
2887
3573
  })))), isFinite(l) || (l = 1);
2888
- var u = l - c || 1, d = ie(e.ms, i).filter(function(e) {
3574
+ var u = l - c || 1, d = he(e.ms, i).filter(function(e) {
2889
3575
  return !isNaN(e.time);
2890
- }), f = ae(e.gnames), p = {}, m = {};
2891
- re(e.deps).forEach(function(e) {
3576
+ }), f = ge(e.gnames), p = {}, m = {};
3577
+ me(e.deps).forEach(function(e) {
2892
3578
  var t = e[0], n = e[1];
2893
3579
  t < 0 || t >= a.length || n < 0 || n >= a.length || ((m[t] = m[t] || []).push(n), (p[n] = p[n] || []).push(t));
2894
3580
  });
@@ -2933,14 +3619,14 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2933
3619
  }
2934
3620
  };
2935
3621
  }
2936
- function X(e, t) {
3622
+ function ve(e, t) {
2937
3623
  if (t === "dates") {
2938
3624
  var n = new Date(e);
2939
3625
  return n.getMonth() + 1 + "/" + n.getDate();
2940
3626
  }
2941
3627
  return "D" + e;
2942
3628
  }
2943
- function Z(e) {
3629
+ function ye(e) {
2944
3630
  var t = [];
2945
3631
  if (e.mode === "days") for (var r = e.tMax <= 10 ? 1 : e.tMax <= 30 ? 5 : 10, i = 0; i <= e.tMax; i += r) t.push({
2946
3632
  label: "D" + i,
@@ -2963,9 +3649,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2963
3649
  }
2964
3650
  return t;
2965
3651
  }
2966
- function Q(e, t) {
3652
+ function be(e, t) {
2967
3653
  var n = t.totalH - (t.hasLeg ? o : 6);
2968
- Z(t).forEach(function(r) {
3654
+ ye(t).forEach(function(r) {
2969
3655
  var i = t.scale(r.t);
2970
3656
  e.appendChild(s("line", {
2971
3657
  x1: i,
@@ -2986,10 +3672,10 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
2986
3672
  a.textContent = r.label, e.appendChild(a);
2987
3673
  });
2988
3674
  }
2989
- function se(e, t, n) {
3675
+ function xe(e, t, n) {
2990
3676
  return e + "," + (t - n) + " " + (e + n) + "," + t + " " + e + "," + (t + n) + " " + (e - n) + "," + t;
2991
3677
  }
2992
- function ce(e, t, n, r) {
3678
+ function Se(e, t, n, r) {
2993
3679
  var i = t.ms.map(function(e) {
2994
3680
  return {
2995
3681
  m: e,
@@ -3003,12 +3689,12 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3003
3689
  o = l - a < 32 ? !o : !1, a = l;
3004
3690
  var u = n[c.group % n.length], d = t.msY(), f = s("g", { class: "tokui-chart-tip-group" });
3005
3691
  f.appendChild(s("polygon", {
3006
- points: se(l, d, 6),
3692
+ points: xe(l, d, 6),
3007
3693
  fill: u,
3008
3694
  stroke: "var(--tokui-chart-slice-stroke, #fff)",
3009
3695
  "stroke-width": 1,
3010
3696
  class: "tokui-chart-task-ms"
3011
- })), r.add(f, c.name + " " + X(c.time, t.mode), l, d), e.appendChild(f);
3697
+ })), r.add(f, c.name + " " + ve(c.time, t.mode), l, d), e.appendChild(f);
3012
3698
  var p = s("text", {
3013
3699
  x: l,
3014
3700
  y: d + 11 + (o ? 9 : 0),
@@ -3019,7 +3705,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3019
3705
  p.textContent = c.name, e.appendChild(p);
3020
3706
  });
3021
3707
  }
3022
- function le(e, t, n, r, i) {
3708
+ function Ce(e, t, n, r, i) {
3023
3709
  var a = 8;
3024
3710
  if (n - 3 > e + a) {
3025
3711
  var o = n - 3, s = (e + o) / 2;
@@ -3028,7 +3714,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3028
3714
  var c = r - i / 2;
3029
3715
  return "M" + e + "," + t + " L" + (e + a) + "," + t + " L" + (e + a) + "," + (c - 9) + " L" + n + "," + (c - 9) + " L" + n + "," + c;
3030
3716
  }
3031
- function ue(e, t) {
3717
+ function we(e, t) {
3032
3718
  var n = s("defs"), r = s("marker", {
3033
3719
  id: "gantt-arrow",
3034
3720
  markerUnits: "userSpaceOnUse",
@@ -3046,7 +3732,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3046
3732
  t.next[n].forEach(function(n) {
3047
3733
  var o = t.scale(t.tasks[n].start), c = t.rowY(n);
3048
3734
  e.appendChild(s("path", {
3049
- d: le(i, a, o, c, t.BAR_H),
3735
+ d: Ce(i, a, o, c, t.BAR_H),
3050
3736
  fill: "none",
3051
3737
  stroke: "var(--tokui-chart-task-dep, #bbb)",
3052
3738
  "stroke-width": "1",
@@ -3058,7 +3744,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3058
3744
  });
3059
3745
  });
3060
3746
  }
3061
- function de(e, t) {
3747
+ function Te(e, t) {
3062
3748
  var r = Date.now();
3063
3749
  if (!(r < t.tMin || r > t.tMax)) {
3064
3750
  var i = t.scale(r), a = t.totalH - (t.hasLeg ? o : 6);
@@ -3082,7 +3768,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3082
3768
  c.textContent = n("time.today"), e.appendChild(c);
3083
3769
  }
3084
3770
  }
3085
- function fe(e, t) {
3771
+ function Ee(e, t) {
3086
3772
  var r = s("text", {
3087
3773
  x: t.w - 6,
3088
3774
  y: 12,
@@ -3092,7 +3778,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3092
3778
  });
3093
3779
  r.textContent = n("gantt.skipped", { n: t.skipped }), e.appendChild(r);
3094
3780
  }
3095
- function pe(e, t) {
3781
+ function De(e, t) {
3096
3782
  function n(e, t) {
3097
3783
  for (var n = {}, r = [e], i = {}; r.length;) {
3098
3784
  var a = r.shift();
@@ -3137,7 +3823,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3137
3823
  });
3138
3824
  });
3139
3825
  }
3140
- function me(e, t, r, i) {
3826
+ function Oe(e, t, r, i) {
3141
3827
  t.tasks.forEach(function(a, o) {
3142
3828
  var c = r[a.group % r.length], l = t.scale(a.start), u = t.scale(a.end), d = Math.max(2, u - l), f = t.rowY(o) - t.BAR_H / 2, p = s("g", {
3143
3829
  class: "tokui-chart-tip-group tokui-chart-task-tip-group",
@@ -3160,7 +3846,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3160
3846
  rx: 3,
3161
3847
  fill: c,
3162
3848
  class: "tokui-chart-task-prog"
3163
- })), i.add(p, a.name + " " + X(a.start, t.mode) + "→" + X(a.end, t.mode) + " " + n("gantt.progress") + ":" + a.progress + "%", l + d / 2, f), e.appendChild(p);
3849
+ })), i.add(p, a.name + " " + ve(a.start, t.mode) + "→" + ve(a.end, t.mode) + " " + n("gantt.progress") + ":" + a.progress + "%", l + d / 2, f), e.appendChild(p);
3164
3850
  var m = s("text", {
3165
3851
  x: t.LABEL_W - 6,
3166
3852
  y: t.rowY(o) + 3,
@@ -3172,8 +3858,8 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3172
3858
  m.textContent = a.name, e.appendChild(m);
3173
3859
  });
3174
3860
  }
3175
- function he(e, t, r, i) {
3176
- var a = oe(i), c = a.w, l = s("svg", {
3861
+ function ke(e, t, r, i) {
3862
+ var a = _e(i), c = a.w, l = s("svg", {
3177
3863
  viewBox: "0 0 " + c + " " + a.totalH,
3178
3864
  class: "tokui-chart__svg",
3179
3865
  preserveAspectRatio: "xMidYMid meet"
@@ -3189,7 +3875,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3189
3875
  return u.textContent = n("gantt.noTasks"), l.appendChild(u), l;
3190
3876
  }
3191
3877
  var d = C(c, a.totalH);
3192
- if (Q(l, a), a.hasMs && ce(l, a, r, d), me(l, a, r, d), ue(l, a), a.mode === "dates" && de(l, a), a.skipped > 0 && fe(l, a), l.appendChild(d.layer), w(l), pe(l, a), a.hasLeg) {
3878
+ if (be(l, a), a.hasMs && Se(l, a, r, d), Oe(l, a, r, d), we(l, a), a.mode === "dates" && Te(l, a), a.skipped > 0 && Ee(l, a), l.appendChild(d.layer), w(l), De(l, a), a.hasLeg) {
3193
3879
  var f = Object.keys(a.tasks.reduce(function(e, t) {
3194
3880
  return e[t.group] = 1, e;
3195
3881
  }, {})).map(function(e) {
@@ -3197,7 +3883,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3197
3883
  });
3198
3884
  f.sort(function(e, t) {
3199
3885
  return e - t;
3200
- }), T(l, f.map(function(e) {
3886
+ }), j(l, f.map(function(e) {
3201
3887
  return {
3202
3888
  color: r[e % r.length],
3203
3889
  text: a.gnames[e] || n("chart.groupDefault", { n: e + 1 })
@@ -3206,13 +3892,13 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3206
3892
  }
3207
3893
  return l;
3208
3894
  }
3209
- function ge(e, t, n, r) {
3895
+ function Ae(e, t, n, r) {
3210
3896
  var i = {};
3211
3897
  return Object.keys(r).forEach(function(e) {
3212
3898
  i[e] = r[e];
3213
- }), i.area = !0, H(e, t, n, i);
3899
+ }), i.area = !0, X(e, t, n, i);
3214
3900
  }
3215
- function _e(e, t, n, r) {
3901
+ function je(e, t, n, r) {
3216
3902
  var i = parseInt(r.w) || 400, a = parseInt(r.h) || 80, o = parseFloat(r.max);
3217
3903
  isNaN(o) && (o = 100);
3218
3904
  var c = parseFloat(r.min);
@@ -3255,9 +3941,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3255
3941
  var t = b((e - c) / l, 0, 1);
3256
3942
  _.setAttribute("x", 2), _.setAttribute("width", Math.max(0, (i - 4) * t)), y.textContent = (v ? v + " " : "") + Math.round(t * 100) + d;
3257
3943
  }
3258
- return L(c, u, parseInt(r.anim, 10) || 0, x), p;
3944
+ return ne(c, u, parseInt(r.anim, 10) || 0, x), p;
3259
3945
  }
3260
- function ve(e) {
3946
+ function Me(e) {
3261
3947
  return e ? String(e).split(";").map(function(e) {
3262
3948
  var t = e.split(",").map(function(e) {
3263
3949
  return parseFloat(e.trim()) || 0;
@@ -3269,42 +3955,42 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3269
3955
  };
3270
3956
  }) : [];
3271
3957
  }
3272
- function ye(e, t, n, r) {
3273
- var i = ve(r.d);
3274
- if (!i.length) return E(parseInt(r.w) || 400, parseInt(r.h) || 200);
3275
- for (var a = x(r, "w", i.length, 50, 22, 360, 2400), o = S(a, parseInt(r.h) || 200, 4, 560), c = 40, l = 30, u = 18, d = 10, f = a - c - d, p = o - u - l, m = P(r, "xmin", "_xMin", y(i.map(function(e) {
3958
+ function Ne(e, t, n, r) {
3959
+ var i = Me(r.d);
3960
+ if (!i.length) return M(parseInt(r.w) || 400, parseInt(r.h) || 200);
3961
+ for (var a = x(r, "w", i.length, 50, 22, 360, 2400), o = S(a, parseInt(r.h) || 200, 4, 560), c = 40, l = 30, u = 18, d = 10, f = a - c - d, p = o - u - l, m = U(r, "xmin", "_xMin", y(i.map(function(e) {
3276
3962
  return e.x;
3277
- }))), h = P(r, "xmax", "_xMax", v(i.map(function(e) {
3963
+ }))), h = U(r, "xmax", "_xMax", v(i.map(function(e) {
3278
3964
  return e.x;
3279
- }))), g = P(r, "ymin", "_yMin", y(i.map(function(e) {
3965
+ }))), g = U(r, "ymin", "_yMin", y(i.map(function(e) {
3280
3966
  return e.y;
3281
- }))), _ = P(r, "ymax", "_yMax", v(i.map(function(e) {
3967
+ }))), _ = U(r, "ymax", "_yMax", v(i.map(function(e) {
3282
3968
  return e.y;
3283
3969
  }))), b = r._sMax === void 0 ? v(i.map(function(e) {
3284
3970
  return e.s;
3285
- })) || 1 : +r._sMax, T = h - m || 1, D = _ - g || 1, O = s("svg", {
3971
+ })) || 1 : +r._sMax, T = h - m || 1, E = _ - g || 1, D = s("svg", {
3286
3972
  viewBox: "0 0 " + a + " " + o,
3287
3973
  class: "tokui-chart__svg",
3288
3974
  preserveAspectRatio: "xMidYMid meet"
3289
- }), k = C(a, o), A = 0; A <= 4; A++) {
3290
- var j = u + p * (1 - A / 4);
3291
- O.appendChild(s("line", {
3975
+ }), O = C(a, o), k = 0; k <= 4; k++) {
3976
+ var A = u + p * (1 - k / 4);
3977
+ D.appendChild(s("line", {
3292
3978
  x1: c,
3293
- y1: j,
3979
+ y1: A,
3294
3980
  x2: a - d,
3295
- y2: j,
3981
+ y2: A,
3296
3982
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
3297
3983
  "stroke-width": 1
3298
- })), O.appendChild(s("text", {
3984
+ })), D.appendChild(s("text", {
3299
3985
  x: c - 4,
3300
- y: j + 4,
3986
+ y: A + 4,
3301
3987
  "text-anchor": "end",
3302
3988
  fill: "var(--tokui-chart-text, #999)",
3303
3989
  "font-size": "9"
3304
- })).textContent = Math.round(g + D * A / 4);
3990
+ })).textContent = Math.round(g + E * k / 4);
3305
3991
  }
3306
3992
  return i.forEach(function(e, t) {
3307
- var i = c + (e.x - m) / T * f, a = u + p * (1 - (e.y - g) / D), o = 4 + e.s / b * 16, l = s("g", { class: "tokui-chart-tip-group" });
3993
+ var i = c + (e.x - m) / T * f, a = u + p * (1 - (e.y - g) / E), o = 4 + e.s / b * 16, l = s("g", { class: "tokui-chart-tip-group" });
3308
3994
  l.appendChild(s("circle", {
3309
3995
  cx: i,
3310
3996
  cy: a,
@@ -3319,10 +4005,10 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3319
4005
  stroke: n[t % n.length],
3320
4006
  "stroke-width": 1.5,
3321
4007
  class: "tokui-chart-point"
3322
- })), k.add(l, (r.xl || "X") + ": " + e.x + " " + (r.yl || "Y") + ": " + e.y + " " + (r.sl || "size") + ": " + e.s, i, a), O.appendChild(l);
3323
- }), O.appendChild(k.layer), w(O), O;
4008
+ })), O.add(l, (r.xl || "X") + ": " + e.x + " " + (r.yl || "Y") + ": " + e.y + " " + (r.sl || "size") + ": " + e.s, i, a), D.appendChild(l);
4009
+ }), D.appendChild(O.layer), w(D), D;
3324
4010
  }
3325
- function be(e) {
4011
+ function Pe(e) {
3326
4012
  return e ? String(e).split("|").map(function(e) {
3327
4013
  return e.split(",").map(function(e) {
3328
4014
  return parseFloat(e.trim());
@@ -3331,7 +4017,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3331
4017
  });
3332
4018
  }) : [];
3333
4019
  }
3334
- function xe(e) {
4020
+ function Fe(e) {
3335
4021
  if (!e) return null;
3336
4022
  var t = String(e).split(","), n = Infinity, r = -Infinity, i = 0;
3337
4023
  return t.forEach(function(e) {
@@ -3346,10 +4032,10 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3346
4032
  bins: i
3347
4033
  };
3348
4034
  }
3349
- function Se(e, t) {
3350
- var n = xe(e.l), r = parseInt(e.bins, 10);
4035
+ function Ie(e, t) {
4036
+ var n = Fe(e.l), r = parseInt(e.bins, 10);
3351
4037
  isNaN(r) && (r = n ? n.bins : e._bins === void 0 ? Math.min(20, Math.max(5, Math.ceil(Math.sqrt(t.length)))) : +e._bins);
3352
- var i = P(e, "min", "_lo", n ? n.lo : y(t)), a = P(e, "max", "_hi", n ? n.hi : v(t));
4038
+ var i = U(e, "min", "_lo", n ? n.lo : y(t)), a = U(e, "max", "_hi", n ? n.hi : v(t));
3353
4039
  i === a && (--i, a += 1);
3354
4040
  for (var o = (a - i) / r, s = [], c = 0; c < r; c++) s.push(0);
3355
4041
  return t.forEach(function(e) {
@@ -3362,35 +4048,35 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3362
4048
  counts: s
3363
4049
  };
3364
4050
  }
3365
- function Ce(e, t, n, r) {
3366
- var i = be(r.rows || r.d), a = parseInt(r.w) || 400, o = parseInt(r.h) || 320, c = d(r.cols), l = t, u = Math.max(c.length, i[0] ? i[0].length : 0), f = Math.max(l.length, i.length);
3367
- if (!f || !u) return E(a, o);
3368
- var p = l.length ? 64 : 30, m = c.length ? 36 : 16, g = 16, _ = 16, b = a - p - g, x = o - m - _, S = b / u, T = x / f, D = [];
4051
+ function Le(e, t, n, r) {
4052
+ var i = Pe(r.rows || r.d), a = parseInt(r.w) || 400, o = parseInt(r.h) || 320, c = d(r.cols), l = t, u = Math.max(c.length, i[0] ? i[0].length : 0), f = Math.max(l.length, i.length);
4053
+ if (!f || !u) return M(a, o);
4054
+ var p = l.length ? 64 : 30, m = c.length ? 36 : 16, g = 16, _ = 16, b = a - p - g, x = o - m - _, S = b / u, T = x / f, E = [];
3369
4055
  i.forEach(function(e) {
3370
4056
  e.forEach(function(e) {
3371
- isNaN(e) || D.push(e);
4057
+ isNaN(e) || E.push(e);
3372
4058
  });
3373
4059
  });
3374
- for (var O = D.length > 0, k = O ? P(r, "vmin", "_vMin", y(D)) : 0, A = (O ? P(r, "vmax", "_vMax", v(D)) : 1) - k || 1, j = h(r.c).length ? h(r.c) : [
4060
+ for (var D = E.length > 0, O = D ? U(r, "vmin", "_vMin", y(E)) : 0, k = (D ? U(r, "vmax", "_vMax", v(E)) : 1) - O || 1, A = h(r.c).length ? h(r.c) : [
3375
4061
  "#bae0ff",
3376
4062
  "#1677ff",
3377
4063
  "#0958d9"
3378
- ], M = "var(--tokui-chart-grid, #f0f0f0)", N = s("svg", {
4064
+ ], j = "var(--tokui-chart-grid, #f0f0f0)", N = s("svg", {
3379
4065
  viewBox: "0 0 " + a + " " + o,
3380
4066
  class: "tokui-chart__svg",
3381
4067
  preserveAspectRatio: "xMidYMid meet"
3382
- }), F = C(a, o), I = 0; I < f; I++) for (var L = 0; L < u; L++) {
3383
- var R = i[I] ? i[I][L] : void 0, z = R !== void 0 && !isNaN(R), V = z && O ? (R - k) / A : 0, H = z ? B(j, V) : M, U = p + L * S, W = m + I * T, G = s("g", { class: "tokui-chart-tip-group" });
3384
- G.appendChild(s("rect", {
3385
- x: U + 1,
3386
- y: W + 1,
4068
+ }), P = C(a, o), F = 0; F < f; F++) for (var I = 0; I < u; I++) {
4069
+ var L = i[F] ? i[F][I] : void 0, R = L !== void 0 && !isNaN(L), z = R && D ? (L - O) / k : 0, B = R ? ie(A, z) : j, V = p + I * S, H = m + F * T, W = s("g", { class: "tokui-chart-tip-group" });
4070
+ W.appendChild(s("rect", {
4071
+ x: V + 1,
4072
+ y: H + 1,
3387
4073
  width: S - 2,
3388
4074
  height: T - 2,
3389
4075
  rx: 2,
3390
- fill: H,
3391
- opacity: z ? "1" : "0.5",
3392
- class: "tokui-chart-cell" + (z ? "" : " tokui-chart-cell--skeleton")
3393
- })), z && F.add(G, (l[I] || "R" + (I + 1)) + " / " + (c[L] || "C" + (L + 1)) + ": " + R, U + S / 2, W + T / 2), N.appendChild(G);
4076
+ fill: B,
4077
+ opacity: R ? "1" : "0.5",
4078
+ class: "tokui-chart-cell" + (R ? "" : " tokui-chart-cell--skeleton")
4079
+ })), R && P.add(W, (l[F] || "R" + (F + 1)) + " / " + (c[I] || "C" + (I + 1)) + ": " + L, V + S / 2, H + T / 2), N.appendChild(W);
3394
4080
  }
3395
4081
  return c.forEach(function(e, t) {
3396
4082
  N.appendChild(s("text", {
@@ -3408,11 +4094,11 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3408
4094
  fill: "var(--tokui-chart-text, #999)",
3409
4095
  "font-size": "9"
3410
4096
  })).textContent = e;
3411
- }), N.appendChild(F.layer), w(N), N;
4097
+ }), N.appendChild(P.layer), w(N), N;
3412
4098
  }
3413
- function we(e, t, r, i) {
4099
+ function Re(e, t, r, i) {
3414
4100
  var a = parseInt(i.w) || 280, c = parseInt(i.h) || 280, l = c + o;
3415
- if (!e.length) return E(a, l);
4101
+ if (!e.length) return M(a, l);
3416
4102
  var u = a / 2, d = c / 2, f = Math.min(u, d) - 24, p = v(e) || 1, m = s("svg", {
3417
4103
  viewBox: "0 0 " + a + " " + l,
3418
4104
  class: "tokui-chart__svg",
@@ -3436,24 +4122,24 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3436
4122
  fill: "var(--tokui-chart-text, #999)",
3437
4123
  "font-size": "8"
3438
4124
  })).textContent = t[i] || "", g += _;
3439
- }), T(m, e.map(function(e, i) {
4125
+ }), j(m, e.map(function(e, i) {
3440
4126
  return {
3441
4127
  color: r[i % r.length],
3442
4128
  text: t[i] || n("chart.sliceDefault", { n: i + 1 })
3443
4129
  };
3444
4130
  }), a, c + 6), m.appendChild(h.layer), w(m), m;
3445
4131
  }
3446
- function Te(e, t, n, r) {
4132
+ function ze(e, t, n, r) {
3447
4133
  var i = parseInt(r.w) || 400, a = parseInt(r.h) || 200;
3448
- if (!e.length) return E(i, a);
3449
- for (var o = Se(r, e), s = [], c = 0; c < o.bins; c++) s.push((o.lo + c * o.width).toFixed(1));
4134
+ if (!e.length) return M(i, a);
4135
+ for (var o = Ie(r, e), s = [], c = 0; c < o.bins; c++) s.push((o.lo + c * o.width).toFixed(1));
3450
4136
  var l = {};
3451
4137
  return Object.keys(r).forEach(function(e) {
3452
4138
  l[e] = r[e];
3453
- }), l.d = o.counts.join(","), l.l = s.join(","), l.vals = "", delete l.bins, V(o.counts, s, n, l);
4139
+ }), l.d = o.counts.join(","), l.l = s.join(","), l.vals = "", delete l.bins, ae(o.counts, s, n, l);
3454
4140
  }
3455
- function Ee(e, t, r, i) {
3456
- if (!e.length) return E(parseInt(i.w) || 400, parseInt(i.h) || 200);
4141
+ function Be(e, t, r, i) {
4142
+ if (!e.length) return M(parseInt(i.w) || 400, parseInt(i.h) || 200);
3457
4143
  var a = x(i, "w", e.length, 56, 26, 360, 2400), o = S(a, parseInt(i.h) || 200, 4, 560), c = 0, l = [];
3458
4144
  e.forEach(function(e) {
3459
4145
  var t = c, n = c + e;
@@ -3470,45 +4156,45 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3470
4156
  return e.base;
3471
4157
  }));
3472
4158
  d > 0 && (d = 0);
3473
- var f = u - d || 1, p = 44, m = 30, h = 18, g = 12, _ = a - p - g, b = o - h - m, T = _ / e.length, D = Math.max(4, T * .6), O = r[0] || "#52c41a", k = r[1] || "#f5222d", A = s("svg", {
4159
+ var f = u - d || 1, p = i._padL ? +i._padL : 44, m = 18, h = 12, g = a - p - h, _ = g / e.length, b = Math.max(4, _ * .6), T = G(t.slice(0, e.length), _, 30, g, i.interval), E = T.padB, D = o - m - E, O = r[0] || "#52c41a", k = r[1] || "#f5222d", A = s("svg", {
3474
4160
  viewBox: "0 0 " + a + " " + o,
3475
4161
  class: "tokui-chart__svg",
3476
4162
  preserveAspectRatio: "xMidYMid meet"
3477
4163
  }), j = C(a, o);
3478
- function M(e) {
3479
- return h + b * (1 - (e - d) / f);
4164
+ function N(e) {
4165
+ return m + D * (1 - (e - d) / f);
3480
4166
  }
3481
- for (var N = 0; N <= 4; N++) {
3482
- var P = M(d + f * N / 4);
4167
+ for (var P = 0; P <= 4; P++) {
4168
+ var F = N(d + f * P / 4);
3483
4169
  A.appendChild(s("line", {
3484
4170
  x1: p,
3485
- y1: P,
3486
- x2: a - g,
3487
- y2: P,
4171
+ y1: F,
4172
+ x2: a - h,
4173
+ y2: F,
3488
4174
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
3489
4175
  "stroke-width": 1
3490
4176
  })), A.appendChild(s("text", {
3491
4177
  x: p - 4,
3492
- y: P + 4,
4178
+ y: F + 4,
3493
4179
  "text-anchor": "end",
3494
4180
  fill: "var(--tokui-chart-text, #999)",
3495
4181
  "font-size": "9"
3496
- })).textContent = Math.round(d + f * N / 4);
4182
+ })).textContent = Math.round(d + f * P / 4);
3497
4183
  }
3498
4184
  l.forEach(function(e, r) {
3499
- var i = p + r * T + T * .2, a = M(e.top), o = Math.max(0, (e.top - e.base) / f * b), c = e.isPos ? O : k, u = s("g", { class: "tokui-chart-tip-group" });
4185
+ var i = p + r * _ + _ * .2, a = N(e.top), o = Math.max(0, (e.top - e.base) / f * D), c = e.isPos ? O : k, u = s("g", { class: "tokui-chart-tip-group" });
3500
4186
  u.appendChild(s("rect", {
3501
4187
  x: i,
3502
4188
  y: a,
3503
- width: D - 1,
4189
+ width: b - 1,
3504
4190
  height: o,
3505
4191
  fill: c,
3506
4192
  rx: 2,
3507
4193
  class: "tokui-chart-bar"
3508
- })), j.add(u, (t[r] || n("chart.sliceDefault", { n: r + 1 })) + ": " + e.val + " (" + n("chart.cumulative", { n: Math.round(e.top) }) + ")", i + D / 2, a), A.appendChild(u), r < l.length - 1 && A.appendChild(s("line", {
3509
- x1: i + D - 1,
4194
+ })), j.add(u, (t[r] || n("chart.sliceDefault", { n: r + 1 })) + ": " + e.val + " (" + n("chart.cumulative", { n: Math.round(e.top) }) + ")", i + b / 2, a), A.appendChild(u), r < l.length - 1 && A.appendChild(s("line", {
4195
+ x1: i + b - 1,
3510
4196
  y1: a,
3511
- x2: i + T,
4197
+ x2: i + _,
3512
4198
  y2: a,
3513
4199
  stroke: c,
3514
4200
  "stroke-width": 1,
@@ -3516,10 +4202,10 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3516
4202
  opacity: "0.45"
3517
4203
  }));
3518
4204
  });
3519
- for (var I = [], L = 0; L < e.length; L++) I.push(p + L * T + T / 2);
3520
- return F(A, t.slice(0, e.length), I, o - 8, T), A.appendChild(j.layer), w(A), A;
4205
+ for (var I = [], L = 0; L < e.length; L++) I.push(p + L * _ + _ / 2);
4206
+ return J(A, t.slice(0, e.length), I, o - 8, _, T.rotate, T.interval), A.appendChild(j.layer), w(A), A;
3521
4207
  }
3522
- function De(e) {
4208
+ function Ve(e) {
3523
4209
  return e ? String(e).split(";").map(function(e) {
3524
4210
  var t = e.split(",").map(function(e) {
3525
4211
  return parseFloat(e.trim()) || 0;
@@ -3533,78 +4219,81 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3533
4219
  };
3534
4220
  }) : [];
3535
4221
  }
3536
- function Oe(e, t, r, i) {
3537
- var a = De(i.d);
3538
- if (!a.length) return E(parseInt(i.w) || 400, parseInt(i.h) || 240);
4222
+ function He(e, t, r, i) {
4223
+ var a = Ve(i.d);
4224
+ if (!a.length) return M(parseInt(i.w) || 400, parseInt(i.h) || 240);
3539
4225
  var o = x(i, "w", a.length, 56, 44, 360, 2400), c = S(o, parseInt(i.h) || 240, 4, 560), l = [];
3540
4226
  a.forEach(function(e) {
3541
4227
  l.push(e.min, e.max);
3542
4228
  });
3543
4229
  var u = y(l), d = v(l);
3544
4230
  u === d && (--u, d += 1);
3545
- var f = d - u || 1, p = 44, m = 30, h = 18, g = 12, _ = o - p - g, b = c - h - m, T = _ / a.length, D = Math.max(20, T * .5), O = s("svg", {
3546
- viewBox: "0 0 " + o + " " + c,
4231
+ var f = d - u || 1, p = i._padL ? +i._padL : 44, m = 18, h = 12, g = o - p - h, _ = K(i, a.length), b = _ ? 28 : 0, T = g / a.length, E = Math.max(20, T * .5), D = G(t.slice(0, a.length), T, 30, g, i.interval), O = D.padB, k = c - m - O, j = s("svg", {
4232
+ viewBox: "0 0 " + o + " " + (c + b),
3547
4233
  class: "tokui-chart__svg",
3548
4234
  preserveAspectRatio: "xMidYMid meet"
3549
- }), k = C(o, c);
3550
- function A(e) {
3551
- return h + b * (1 - (e - u) / f);
4235
+ }), N = C(o, c + b);
4236
+ function P(e) {
4237
+ return m + k * (1 - (e - u) / f);
3552
4238
  }
3553
- for (var j = 0; j <= 4; j++) {
3554
- var M = A(u + f * j / 4);
3555
- O.appendChild(s("line", {
4239
+ for (var F = 0; F <= 4; F++) {
4240
+ var I = P(u + f * F / 4);
4241
+ j.appendChild(s("line", {
3556
4242
  x1: p,
3557
- y1: M,
3558
- x2: o - g,
3559
- y2: M,
4243
+ y1: I,
4244
+ x2: o - h,
4245
+ y2: I,
3560
4246
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
3561
4247
  "stroke-width": 1
3562
- })), O.appendChild(s("text", {
4248
+ })), j.appendChild(s("text", {
3563
4249
  x: p - 4,
3564
- y: M + 4,
4250
+ y: I + 4,
3565
4251
  "text-anchor": "end",
3566
4252
  fill: "var(--tokui-chart-text, #999)",
3567
4253
  "font-size": "9"
3568
- })).textContent = Math.round(u + f * j / 4);
4254
+ })).textContent = Math.round(u + f * F / 4);
3569
4255
  }
3570
- a.forEach(function(e, i) {
4256
+ var L = _ ? s("g", { class: "tokui-chart-plot" }) : null;
4257
+ L && j.appendChild(L);
4258
+ var R = L || j, z = [];
4259
+ if (a.forEach(function(e, i) {
3571
4260
  var a = p + i * T + T / 2, o = r[i % r.length], c = s("g", { class: "tokui-chart-tip-group" });
3572
4261
  c.appendChild(s("line", {
3573
4262
  x1: a,
3574
- y1: A(e.max),
4263
+ y1: P(e.max),
3575
4264
  x2: a,
3576
- y2: A(e.q3),
4265
+ y2: P(e.q3),
3577
4266
  stroke: o,
3578
4267
  "stroke-width": 1.5,
3579
4268
  class: "tokui-chart-whisker"
3580
4269
  })), c.appendChild(s("line", {
3581
4270
  x1: a,
3582
- y1: A(e.q1),
4271
+ y1: P(e.q1),
3583
4272
  x2: a,
3584
- y2: A(e.min),
4273
+ y2: P(e.min),
3585
4274
  stroke: o,
3586
4275
  "stroke-width": 1.5,
3587
4276
  class: "tokui-chart-whisker"
3588
4277
  })), c.appendChild(s("line", {
3589
4278
  x1: a - 6,
3590
- y1: A(e.max),
4279
+ y1: P(e.max),
3591
4280
  x2: a + 6,
3592
- y2: A(e.max),
4281
+ y2: P(e.max),
3593
4282
  stroke: o,
3594
4283
  "stroke-width": 1.5
3595
4284
  })), c.appendChild(s("line", {
3596
4285
  x1: a - 6,
3597
- y1: A(e.min),
4286
+ y1: P(e.min),
3598
4287
  x2: a + 6,
3599
- y2: A(e.min),
4288
+ y2: P(e.min),
3600
4289
  stroke: o,
3601
4290
  "stroke-width": 1.5
3602
4291
  }));
3603
- var l = A(e.q3), u = Math.max(0, A(e.q1) - A(e.q3));
4292
+ var l = P(e.q3), u = Math.max(0, P(e.q1) - P(e.q3));
3604
4293
  c.appendChild(s("rect", {
3605
- x: a - D / 2,
4294
+ x: a - E / 2,
3606
4295
  y: l,
3607
- width: D,
4296
+ width: E,
3608
4297
  height: u,
3609
4298
  fill: o,
3610
4299
  opacity: "0.4",
@@ -3612,18 +4301,61 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3612
4301
  "stroke-width": 1.5,
3613
4302
  class: "tokui-chart-box"
3614
4303
  })), c.appendChild(s("line", {
3615
- x1: a - D / 2,
3616
- y1: A(e.med),
3617
- x2: a + D / 2,
3618
- y2: A(e.med),
4304
+ x1: a - E / 2,
4305
+ y1: P(e.med),
4306
+ x2: a + E / 2,
4307
+ y2: P(e.med),
3619
4308
  stroke: o,
3620
4309
  "stroke-width": 2
3621
- })), k.add(c, (t[i] || n("chart.groupDefault", { n: i + 1 })) + " min:" + e.min + " Q1:" + e.q1 + " " + n("chart.median") + ":" + e.med + " Q3:" + e.q3 + " max:" + e.max, a, A(e.med)), O.appendChild(c);
3622
- });
3623
- for (var N = [], P = 0; P < a.length; P++) N.push(p + P * T + T / 2);
3624
- return F(O, t.slice(0, a.length), N, c - 8, T), O.appendChild(k.layer), w(O), O;
4310
+ }));
4311
+ var d = (t[i] || n("chart.groupDefault", { n: i + 1 })) + " min:" + e.min + " Q1:" + e.q1 + " " + n("chart.median") + ":" + e.med + " Q3:" + e.q3 + " max:" + e.max;
4312
+ _ ? z.push({
4313
+ grp: c,
4314
+ cx: a,
4315
+ y: P(e.med),
4316
+ text: d
4317
+ }) : N.add(c, d, a, P(e.med)), R.appendChild(c);
4318
+ }), _) {
4319
+ var B = a.length, V = A(j, {
4320
+ plotG: L,
4321
+ tipLayer: N.layer,
4322
+ padL: p,
4323
+ cw: g,
4324
+ padT: m,
4325
+ ch: k,
4326
+ h: c,
4327
+ w: o,
4328
+ n: B,
4329
+ srcLeft: function(e) {
4330
+ return p + e * T;
4331
+ },
4332
+ srcRight: function(e) {
4333
+ return p + (e + 1) * T;
4334
+ },
4335
+ overview: a.map(function(e) {
4336
+ return e.q3;
4337
+ }),
4338
+ valMin: u,
4339
+ range: f,
4340
+ renderLabels: function(e, n, r) {
4341
+ for (var i = g / (r - n + 1), a = [], o = n; o <= r; o++) a.push(p + (o - n) * i + i / 2);
4342
+ J(e, t.slice(n, r + 1), a, c - 8, i, D.rotate, D.interval);
4343
+ }
4344
+ });
4345
+ z.forEach(function(e) {
4346
+ e.grp.addEventListener("mouseenter", function() {
4347
+ V.showTip(e.text, V.winState.sx * e.cx + V.winState.tx, e.y);
4348
+ }), e.grp.addEventListener("mouseleave", function() {
4349
+ V.sharedTip.style.opacity = "";
4350
+ });
4351
+ });
4352
+ } else {
4353
+ for (var H = [], U = 0; U < a.length; U++) H.push(p + U * T + T / 2);
4354
+ J(j, t.slice(0, a.length), H, c - 8, T, D.rotate, D.interval);
4355
+ }
4356
+ return j.appendChild(N.layer), _ || w(j), j;
3625
4357
  }
3626
- function ke(e) {
4358
+ function Ue(e) {
3627
4359
  return e ? String(e).split(",").map(function(e) {
3628
4360
  var t = e.split(":");
3629
4361
  return {
@@ -3634,9 +4366,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3634
4366
  return e.value > 0;
3635
4367
  }) : [];
3636
4368
  }
3637
- function Ae(e, t, n, r) {
3638
- var i = ke(r.d), a = parseInt(r.w) || 480, o = parseInt(r.h) || 320;
3639
- if (!i.length) return E(a, o);
4369
+ function We(e, t, n, r) {
4370
+ var i = Ue(r.d), a = parseInt(r.w) || 480, o = parseInt(r.h) || 320;
4371
+ if (!i.length) return M(a, o);
3640
4372
  i.sort(function(e, t) {
3641
4373
  return t.value - e.value;
3642
4374
  });
@@ -3694,7 +4426,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3694
4426
  }
3695
4427
  return m(i, 0, 0, a, o), l.appendChild(u.layer), w(l), l;
3696
4428
  }
3697
- function je(e, t, n, r) {
4429
+ function Ge(e, t, n, r) {
3698
4430
  var i = d(r.nodes), a = String(r.flows || "").split(",").map(function(e) {
3699
4431
  var t = e.split("->");
3700
4432
  if (t.length !== 2) return null;
@@ -3707,7 +4439,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3707
4439
  }).filter(function(e) {
3708
4440
  return e && e.value > 0;
3709
4441
  }), o = parseInt(r.w) || 480, c = parseInt(r.h) || 320;
3710
- if (!a.length) return E(o, c);
4442
+ if (!a.length) return M(o, c);
3711
4443
  var l = [], u = [];
3712
4444
  a.forEach(function(e) {
3713
4445
  l.indexOf(e.source) < 0 && l.push(e.source), u.indexOf(e.target) < 0 && u.push(e.target);
@@ -3766,7 +4498,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3766
4498
  })).textContent = e;
3767
4499
  }), S.appendChild(T.layer), w(S), S;
3768
4500
  }
3769
- function Me(e) {
4501
+ function Ke(e) {
3770
4502
  return e ? String(e).split(";").map(function(e) {
3771
4503
  var t = e.split(",").map(function(e) {
3772
4504
  return parseFloat(e.trim());
@@ -3781,9 +4513,9 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3781
4513
  };
3782
4514
  }).filter(Boolean) : [];
3783
4515
  }
3784
- function Ne(e, t, n, r) {
3785
- var i = Me(r.d);
3786
- if (!i.length) return E(parseInt(r.w) || 480, parseInt(r.h) || 280);
4516
+ function qe(e, t, n, r) {
4517
+ var i = Ke(r.d);
4518
+ if (!i.length) return M(parseInt(r.w) || 480, parseInt(r.h) || 280);
3787
4519
  var a = parseInt(r.w) || 800, o = parseInt(r.h) || 320, c, l;
3788
4520
  if (r._yMin !== void 0 && r._yMax !== void 0 && isFinite(+r._yMin)) c = +r._yMin, l = +r._yMax;
3789
4521
  else {
@@ -3791,47 +4523,50 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3791
4523
  i.forEach(function(e) {
3792
4524
  u.push(e.h, e.l);
3793
4525
  }), c = y(u), l = v(u);
3794
- var d = N(c, l);
4526
+ var d = H(c, l);
3795
4527
  c = d[0], l = d[1];
3796
4528
  }
3797
4529
  c === l && (--c, l += 1);
3798
- var f = l - c || 1, p = 44, m = 30, g = 18, _ = 12, b = a - p - _, x = o - g - m, S = b / i.length, T = Math.max(3, S * .6), D = h(r.c), O = D[0] || "#f5222d", k = D[1] || "#52c41a", A = s("svg", {
3799
- viewBox: "0 0 " + a + " " + o,
4530
+ var f = l - c || 1, p = r._padL ? +r._padL : 44, m = 18, g = 12, _ = a - p - g, b = K(r, i.length), x = b ? 28 : 0, S = _ / i.length, T = Math.max(3, S * .6), E = G(t.slice(0, i.length), S, 30, _, r.interval), D = E.padB, O = o - m - D, k = h(r.c), j = k[0] || "#f5222d", N = k[1] || "#52c41a", P = s("svg", {
4531
+ viewBox: "0 0 " + a + " " + (o + x),
3800
4532
  class: "tokui-chart__svg",
3801
4533
  preserveAspectRatio: "xMidYMid meet"
3802
- }), j = C(a, o);
3803
- function M(e) {
3804
- return g + x * (1 - (e - c) / f);
4534
+ }), F = C(a, o + x);
4535
+ function I(e) {
4536
+ return m + O * (1 - (e - c) / f);
3805
4537
  }
3806
- for (var P = 0; P <= 4; P++) {
3807
- var I = M(c + f * P / 4);
3808
- A.appendChild(s("line", {
4538
+ for (var L = 0; L <= 4; L++) {
4539
+ var R = I(c + f * L / 4);
4540
+ P.appendChild(s("line", {
3809
4541
  x1: p,
3810
- y1: I,
3811
- x2: a - _,
3812
- y2: I,
4542
+ y1: R,
4543
+ x2: a - g,
4544
+ y2: R,
3813
4545
  stroke: "var(--tokui-chart-grid, #e8e8e8)",
3814
4546
  "stroke-width": 1
3815
- })), A.appendChild(s("text", {
4547
+ })), P.appendChild(s("text", {
3816
4548
  x: p - 4,
3817
- y: I + 4,
4549
+ y: R + 4,
3818
4550
  "text-anchor": "end",
3819
4551
  fill: "var(--tokui-chart-text, #999)",
3820
4552
  "font-size": "9"
3821
- })).textContent = Math.round(c + f * P / 4);
4553
+ })).textContent = Math.round(c + f * L / 4);
3822
4554
  }
3823
- i.forEach(function(e, n) {
3824
- var r = p + n * S + S / 2, i = e.c >= e.o, a = i ? O : k, o = s("g", { class: "tokui-chart-tip-group" });
4555
+ var z = b ? s("g", { class: "tokui-chart-plot" }) : null;
4556
+ z && P.appendChild(z);
4557
+ var B = z || P, V = [];
4558
+ if (i.forEach(function(e, n) {
4559
+ var r = p + n * S + S / 2, i = e.c >= e.o, a = i ? j : N, o = s("g", { class: "tokui-chart-tip-group" });
3825
4560
  o.appendChild(s("line", {
3826
4561
  x1: r,
3827
- y1: M(e.h),
4562
+ y1: I(e.h),
3828
4563
  x2: r,
3829
- y2: M(e.l),
4564
+ y2: I(e.l),
3830
4565
  stroke: a,
3831
4566
  "stroke-width": 1,
3832
4567
  class: "tokui-chart-wick"
3833
4568
  }));
3834
- var c = M(Math.max(e.o, e.c)), l = M(Math.min(e.o, e.c));
4569
+ var c = I(Math.max(e.o, e.c)), l = I(Math.min(e.o, e.c));
3835
4570
  o.appendChild(s("rect", {
3836
4571
  x: r - T / 2,
3837
4572
  y: c,
@@ -3839,16 +4574,59 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3839
4574
  height: Math.max(1, l - c),
3840
4575
  fill: a,
3841
4576
  class: "tokui-chart-candle"
3842
- })), j.add(o, (t[n] || "D" + (n + 1)) + " O:" + e.o + " H:" + e.h + " L:" + e.l + " C:" + e.c + (i ? " ↑" : " ↓"), r, c), A.appendChild(o);
3843
- });
3844
- for (var L = [], R = 0; R < i.length; R++) L.push(p + R * S + S / 2);
3845
- return F(A, t.slice(0, i.length), L, o - 8, S), A.appendChild(j.layer), w(A), A;
4577
+ }));
4578
+ var u = (t[n] || "D" + (n + 1)) + " O:" + e.o + " H:" + e.h + " L:" + e.l + " C:" + e.c + (i ? " ↑" : " ↓");
4579
+ b ? V.push({
4580
+ grp: o,
4581
+ cx: r,
4582
+ y: c,
4583
+ text: u
4584
+ }) : F.add(o, u, r, c), B.appendChild(o);
4585
+ }), b) {
4586
+ var U = i.length, W = A(P, {
4587
+ plotG: z,
4588
+ tipLayer: F.layer,
4589
+ padL: p,
4590
+ cw: _,
4591
+ padT: m,
4592
+ ch: O,
4593
+ h: o,
4594
+ w: a,
4595
+ n: U,
4596
+ srcLeft: function(e) {
4597
+ return p + e * S;
4598
+ },
4599
+ srcRight: function(e) {
4600
+ return p + (e + 1) * S;
4601
+ },
4602
+ overview: i.map(function(e) {
4603
+ return e.c;
4604
+ }),
4605
+ valMin: c,
4606
+ range: f,
4607
+ renderLabels: function(e, n, r) {
4608
+ for (var i = _ / (r - n + 1), a = [], s = n; s <= r; s++) a.push(p + (s - n) * i + i / 2);
4609
+ J(e, t.slice(n, r + 1), a, o - 8, i, E.rotate, E.interval);
4610
+ }
4611
+ });
4612
+ V.forEach(function(e) {
4613
+ e.grp.addEventListener("mouseenter", function() {
4614
+ W.showTip(e.text, W.winState.sx * e.cx + W.winState.tx, e.y);
4615
+ }), e.grp.addEventListener("mouseleave", function() {
4616
+ W.sharedTip.style.opacity = "";
4617
+ });
4618
+ });
4619
+ } else {
4620
+ for (var ee = [], q = 0; q < i.length; q++) ee.push(p + q * S + S / 2);
4621
+ J(P, t.slice(0, i.length), ee, o - 8, S, E.rotate, E.interval);
4622
+ }
4623
+ return P.appendChild(F.layer), b || w(P), P;
3846
4624
  }
3847
4625
  function $(e, t) {
3848
4626
  r[e] = t;
3849
4627
  }
3850
- function Pe(e) {
3851
- $("bar", V), $("line", H), $("pie", W), $("donut", G), $("radar", J), $("scatter", ee), $("gantt", he), $("funnel", K), $("gauge", q), $("area", ge), $("progress", _e), $("bubble", ye), $("heatmap", Ce), $("rose", we), $("histogram", Te), $("waterfall", Ee), $("boxplot", Oe), $("treemap", Ae), $("sankey", je), $("candlestick", Ne);
4628
+ function Je(e) {
4629
+ $("bar", ae), $("line", X), $("pie", oe), $("donut", se), $("radar", le), $("scatter", ue), $("gantt", ke), $("funnel", Q), $("gauge", ce), $("area", Ae), $("progress", je), $("bubble", Ne), $("heatmap", Le), $("rose", Re), $("histogram", ze), $("waterfall", Be), $("boxplot", He), $("treemap", We), $("sankey", Ge), $("candlestick", qe);
3852
4630
  function t(e, t) {
3853
4631
  var n = e._chartState;
3854
4632
  if (!(!n || !t)) {
@@ -3900,7 +4678,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3900
4678
  var s = t.t || "bar", u = c(t.d), f = d(t.l), m = _(t), h = r[s];
3901
4679
  if (h) {
3902
4680
  if (s === "candlestick") {
3903
- var g = Me(t.d);
4681
+ var g = Ke(t.d);
3904
4682
  if (g.length) {
3905
4683
  var b = [];
3906
4684
  g.forEach(function(e) {
@@ -3908,7 +4686,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3908
4686
  });
3909
4687
  var x = y(b), S = v(b);
3910
4688
  if (isFinite(x) && isFinite(S) && x !== S) {
3911
- var C = N(e._yRange ? Math.min(e._yRange.lo, x) : x, e._yRange ? Math.max(e._yRange.hi, S) : S);
4689
+ var C = H(e._yRange ? Math.min(e._yRange.lo, x) : x, e._yRange ? Math.max(e._yRange.hi, S) : S);
3912
4690
  e._yRange = {
3913
4691
  lo: C[0],
3914
4692
  hi: C[1]
@@ -3918,7 +4696,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3918
4696
  e._yRange && (t._yMin = e._yRange.lo, t._yMax = e._yRange.hi);
3919
4697
  }
3920
4698
  if (s === "scatter" || s === "bubble") {
3921
- var w = s === "bubble" ? ve(t.d) : p(t.d);
4699
+ var w = s === "bubble" ? Me(t.d) : p(t.d);
3922
4700
  if (w.length) {
3923
4701
  var T = w.map(function(e) {
3924
4702
  return e.x;
@@ -3926,62 +4704,62 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
3926
4704
  return e.y;
3927
4705
  }), D = y(T), O = v(T), k = y(E), A = v(E);
3928
4706
  if (isFinite(D) && isFinite(O) && D !== O) {
3929
- var j = N(e._xRange ? Math.min(e._xRange.lo, D) : D, e._xRange ? Math.max(e._xRange.hi, O) : O);
4707
+ var j = H(e._xRange ? Math.min(e._xRange.lo, D) : D, e._xRange ? Math.max(e._xRange.hi, O) : O);
3930
4708
  e._xRange = {
3931
4709
  lo: j[0],
3932
4710
  hi: j[1]
3933
4711
  };
3934
4712
  }
3935
4713
  if (isFinite(k) && isFinite(A) && k !== A) {
3936
- var M = N(e._yRange ? Math.min(e._yRange.lo, k) : k, e._yRange ? Math.max(e._yRange.hi, A) : A);
4714
+ var M = H(e._yRange ? Math.min(e._yRange.lo, k) : k, e._yRange ? Math.max(e._yRange.hi, A) : A);
3937
4715
  e._yRange = {
3938
4716
  lo: M[0],
3939
4717
  hi: M[1]
3940
4718
  };
3941
4719
  }
3942
4720
  if (s === "bubble") {
3943
- var P = v(w.map(function(e) {
4721
+ var N = v(w.map(function(e) {
3944
4722
  return e.s;
3945
4723
  }));
3946
- isFinite(P) && (e._sMax = e._sMax ? Math.max(e._sMax, P) : P);
4724
+ isFinite(N) && (e._sMax = e._sMax ? Math.max(e._sMax, N) : N);
3947
4725
  }
3948
4726
  }
3949
4727
  e._xRange && (t._xMin = e._xRange.lo, t._xMax = e._xRange.hi), e._yRange && (t._yMin = e._yRange.lo, t._yMax = e._yRange.hi), e._sMax && (t._sMax = e._sMax);
3950
4728
  }
3951
4729
  if (s === "heatmap") {
3952
- var F = be(t.rows || t.d);
3953
- if (F.length) {
3954
- var I = [];
3955
- if (F.forEach(function(e) {
4730
+ var P = Pe(t.rows || t.d);
4731
+ if (P.length) {
4732
+ var F = [];
4733
+ if (P.forEach(function(e) {
3956
4734
  e.forEach(function(e) {
3957
- isNaN(e) || I.push(e);
4735
+ isNaN(e) || F.push(e);
3958
4736
  });
3959
- }), I.length) {
3960
- var L = y(I), R = v(I);
3961
- isFinite(L) && isFinite(R) && (e._vRange = {
3962
- lo: e._vRange ? Math.min(e._vRange.lo, L) : L,
3963
- hi: e._vRange ? Math.max(e._vRange.hi, R) : R
4737
+ }), F.length) {
4738
+ var I = y(F), L = v(F);
4739
+ isFinite(I) && isFinite(L) && (e._vRange = {
4740
+ lo: e._vRange ? Math.min(e._vRange.lo, I) : I,
4741
+ hi: e._vRange ? Math.max(e._vRange.hi, L) : L
3964
4742
  });
3965
4743
  }
3966
4744
  }
3967
4745
  e._vRange && (t._vMin = e._vRange.lo, t._vMax = e._vRange.hi);
3968
4746
  }
3969
4747
  if (s === "histogram") {
3970
- var z = c(t.d), B = xe(t.l);
3971
- if (B) e._hRange = {
3972
- lo: B.lo,
3973
- hi: B.hi
3974
- }, t.bins === void 0 && (e._hBins = B.bins);
3975
- else if (z.length) {
3976
- e._hBins === void 0 && t.bins === void 0 && (e._hBins = Math.min(20, Math.max(5, Math.ceil(Math.sqrt(z.length)))));
3977
- var V = y(z), H = v(z);
3978
- isFinite(V) && isFinite(H) && (e._hRange = {
3979
- lo: e._hRange ? Math.min(e._hRange.lo, V) : V,
3980
- hi: e._hRange ? Math.max(e._hRange.hi, H) : H
4748
+ var R = c(t.d), z = Fe(t.l);
4749
+ if (z) e._hRange = {
4750
+ lo: z.lo,
4751
+ hi: z.hi
4752
+ }, t.bins === void 0 && (e._hBins = z.bins);
4753
+ else if (R.length) {
4754
+ e._hBins === void 0 && t.bins === void 0 && (e._hBins = Math.min(20, Math.max(5, Math.ceil(Math.sqrt(R.length)))));
4755
+ var B = y(R), V = v(R);
4756
+ isFinite(B) && isFinite(V) && (e._hRange = {
4757
+ lo: e._hRange ? Math.min(e._hRange.lo, B) : B,
4758
+ hi: e._hRange ? Math.max(e._hRange.hi, V) : V
3981
4759
  });
3982
4760
  }
3983
- if (e._hBins !== void 0 && (t._bins = e._hBins), e._hRange && (t._lo = e._hRange.lo, t._hi = e._hRange.hi), z.length) {
3984
- var U = v(Se(t, z).counts) || 1;
4761
+ if (e._hBins !== void 0 && (t._bins = e._hBins), e._hRange && (t._lo = e._hRange.lo, t._hi = e._hRange.hi), R.length) {
4762
+ var U = v(Ie(t, R).counts) || 1;
3985
4763
  e._yMax = e._yMax ? Math.max(e._yMax, U) : U, t._yMax = e._yMax;
3986
4764
  }
3987
4765
  }
@@ -4046,36 +4824,73 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
4046
4824
  a = 0;
4047
4825
  }
4048
4826
  if (a > 0) {
4049
- if (t.getAttribute("data-chart-type") === "pie") {
4050
- var o = e._tokuiChartSpec;
4051
- if (!o || !o.data || !o.data.length || !o.labels || !o.labels.some(function(e) {
4827
+ var o = a / r, s = t.getAttribute("data-chart-type");
4828
+ t._tokuiBumpedFs = R(9, o, P, I), z(t, o);
4829
+ var c = e._tokuiChartSpec;
4830
+ if (s === "pie") {
4831
+ if (!c || !c.data || !c.data.length || !c.labels || !c.labels.some(function(e) {
4052
4832
  return !!e;
4053
4833
  })) return;
4054
- var s = o.data.reduce(function(e, t) {
4834
+ var l = c.data.reduce(function(e, t) {
4055
4835
  return e + t;
4056
- }, 0) || 1, c = U(o.data, o.labels, o.attrs, 7, s), l = c.r + c.fs, u = j(a, l, c.fixedA, c.coefB, O), d = 14, f = Infinity;
4057
- if (c.coefB > 1) {
4058
- var p = a * l - 2 * d * (l + c.fixedA), m = a + 2 * d * (c.coefB - 1);
4059
- f = p > 0 && m > 0 ? p / m : 7;
4836
+ }, 0) || 1, u = Z(c.data, c.labels, c.attrs, 7, l), d = u.r + u.fs, f = B(a, d, u.fixedA, u.coefB, P), p = 14, m = Infinity;
4837
+ if (u.coefB > 1) {
4838
+ var h = a * d - 2 * p * (d + u.fixedA), g = a + 2 * p * (u.coefB - 1);
4839
+ m = h > 0 && g > 0 ? h / g : 7;
4060
4840
  }
4061
- var h = Math.min(u, f), g = e._tokuiFsApplied || 7;
4062
- h > 7.05 && h > g + .05 && (e._tokuiFsApplied = h, i(e, Object.assign({}, o.attrs, { _pieFs: h })));
4841
+ var _ = Math.min(f, m), v = e._tokuiFsApplied || 7;
4842
+ _ > 7.05 && _ > v + .05 && (e._tokuiFsApplied = _, i(e, Object.assign({}, c.attrs, { _pieFs: _ })));
4063
4843
  return;
4064
4844
  }
4065
- var _ = a / r;
4066
- if (_ > 0) for (var v = t.querySelectorAll("text[font-size]"), y = 0; y < v.length; y++) {
4067
- for (var b = v[y], x = b.parentNode; x && x !== t;) {
4068
- if ((x.getAttribute && x.getAttribute("class") || "").indexOf("tokui-chart-tips-layer") >= 0) {
4069
- b = null;
4070
- break;
4845
+ if ({
4846
+ bar: 1,
4847
+ line: 1,
4848
+ area: 1,
4849
+ histogram: 1,
4850
+ boxplot: 1,
4851
+ candlestick: 1,
4852
+ waterfall: 1
4853
+ }[s] && typeof t.createSVGPoint == "function" && !e._tokuiPadLSet) {
4854
+ e._tokuiPadLSet = !0;
4855
+ for (var y = R(9, o, P, I), b = t.querySelector("line"), x = b ? parseFloat(b.getAttribute("x1")) : 0, S = t.querySelectorAll("text[text-anchor=\"end\"]"), C = 0, w = 0; w < S.length; w++) {
4856
+ var T = S[w];
4857
+ if (!(parseFloat(T.getAttribute("x")) >= x)) {
4858
+ var E = parseFloat(T.getAttribute("font-size")) || 9, D = 0;
4859
+ try {
4860
+ D = T.getBBox().width;
4861
+ } catch {
4862
+ D = 0;
4863
+ }
4864
+ var O = D * y / E;
4865
+ O > C && (C = O);
4071
4866
  }
4072
- x = x.parentNode;
4073
4867
  }
4074
- if (b && !(b.classList.contains("tokui-chart-gauge-value") || b.classList.contains("tokui-chart-donut-value"))) {
4075
- var S = parseFloat(b.getAttribute("font-size"));
4076
- if (!(!(S > 0) || S >= 13)) {
4077
- var C = A(S, _, O);
4078
- C !== S && b.setAttribute("font-size", String(Math.round(C * 100) / 100));
4868
+ if (C > 0) {
4869
+ var k = Math.ceil(C + 12), A = c && c.attrs && c.attrs.yl ? 46 : 40;
4870
+ if ((s === "boxplot" || s === "candlestick" || s === "waterfall") && (A = 44), Math.abs(k - A) > 2) {
4871
+ e._tokuiPadL = k, i(e, Object.assign({}, c.attrs, { _padL: k }));
4872
+ return;
4873
+ }
4874
+ }
4875
+ }
4876
+ if (o > 0) {
4877
+ if (t._tokuiZoomRelayout) try {
4878
+ t._tokuiZoomRelayout(o);
4879
+ } catch {}
4880
+ for (var j = t.querySelectorAll("text[font-size]"), M = 0; M < j.length; M++) {
4881
+ for (var N = j[M], F = N.parentNode; F && F !== t;) {
4882
+ if ((F.getAttribute && F.getAttribute("class") || "").indexOf("tokui-chart-tips-layer") >= 0) {
4883
+ N = null;
4884
+ break;
4885
+ }
4886
+ F = F.parentNode;
4887
+ }
4888
+ if (N && !(N.classList.contains("tokui-chart-gauge-value") || N.classList.contains("tokui-chart-donut-value"))) {
4889
+ var L = parseFloat(N.getAttribute("font-size"));
4890
+ if (!(!(L > 0) || L >= 13)) {
4891
+ var V = R(L, o, P, I);
4892
+ V !== L && N.setAttribute("font-size", String(Math.round(V * 100) / 100));
4893
+ }
4079
4894
  }
4080
4895
  }
4081
4896
  }
@@ -4177,36 +4992,55 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
4177
4992
  var g = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"/><path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"/></svg>", b = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"/><polyline points=\"7 10 12 15 17 10\"/><line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"3\"/></svg>", x = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M15 3h6v6\"/><path d=\"M9 21H3v-6\"/><path d=\"M21 3l-7 7\"/><path d=\"M3 21l7-7\"/></svg>";
4178
4993
  function S(e, t) {
4179
4994
  if (!e || typeof document > "u") return;
4180
- var r = document.querySelector(".tokui-chart__modal");
4181
- r && r.remove();
4182
- var i = document.createElement("div");
4183
- i.className = "tokui-chart__modal", i.setAttribute("role", "dialog"), i.setAttribute("aria-modal", "true"), t && i.setAttribute("aria-label", t);
4995
+ var i = document.querySelector(".tokui-chart__modal");
4996
+ i && i.remove();
4184
4997
  var a = document.createElement("div");
4185
- a.className = "tokui-chart__modal-card";
4186
- var o = document.createElement("button");
4187
- if (o.type = "button", o.className = "tokui-chart__modal-close", o.setAttribute("aria-label", n("common.close")), o.innerHTML = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"/></svg>", t) {
4188
- var s = document.createElement("div");
4189
- s.className = "tokui-chart__modal-title", s.textContent = t, a.appendChild(s);
4190
- }
4191
- var c = document.createElement("div");
4192
- c.className = "tokui-chart__modal-body";
4193
- var l = e.cloneNode(!0);
4194
- l.id && l.removeAttribute("id");
4195
- for (var u = l.querySelectorAll(".tokui-chart-tips-layer"), d = u.length - 1; d >= 0; d--) u[d].parentNode && u[d].parentNode.removeChild(u[d]);
4196
- c.appendChild(l), a.appendChild(c), a.appendChild(o), i.appendChild(a);
4197
- var f = document.body.style.overflow;
4998
+ a.className = "tokui-chart__modal", a.setAttribute("role", "dialog"), a.setAttribute("aria-modal", "true"), t && a.setAttribute("aria-label", t);
4999
+ var o = document.createElement("div");
5000
+ o.className = "tokui-chart__modal-card";
5001
+ var s = document.createElement("button");
5002
+ if (s.type = "button", s.className = "tokui-chart__modal-close", s.setAttribute("aria-label", n("common.close")), s.innerHTML = "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"/></svg>", t) {
5003
+ var c = document.createElement("div");
5004
+ c.className = "tokui-chart__modal-title", c.textContent = t, o.appendChild(c);
5005
+ }
5006
+ var u = document.createElement("div");
5007
+ u.className = "tokui-chart__modal-body";
5008
+ var d = typeof e.closest == "function" ? e.closest(".tokui-chart") : null, f = d && d._tokuiChartSpec, p = !!e.querySelector(".tokui-chart-zoom-window"), m;
5009
+ if (p && f && r[f.type]) try {
5010
+ m = r[f.type](f.data, f.labels, f.colors, f.attrs), m.setAttribute("data-chart-type", f.type), f.type === "bar" && (f.attrs.orient === "h" || f.attrs.orientation === "h") && m.setAttribute("data-orient", "h");
5011
+ } catch {
5012
+ m = e.cloneNode(!0), w(m);
5013
+ }
5014
+ else m = e.cloneNode(!0), w(m);
5015
+ m.id && m.removeAttribute("id"), u.appendChild(m), p && f && (u._tokuiChartSpec = f, u._tokuiPadLSet = !0, l(u)), o.appendChild(u), o.appendChild(s), a.appendChild(o);
5016
+ var h = document.body.style.overflow;
4198
5017
  document.body.style.overflow = "hidden";
4199
- var p = function(e) {
4200
- e.key === "Escape" && h();
4201
- }, m = !1;
4202
- function h() {
4203
- m || (m = !0, i.classList.remove("tokui-chart__modal--open"), document.removeEventListener("keydown", p), document.body.style.overflow = f, setTimeout(function() {
4204
- i.parentNode && i.remove();
5018
+ var g = function(e) {
5019
+ e.key === "Escape" && v();
5020
+ }, _ = !1;
5021
+ function v() {
5022
+ _ || (_ = !0, a.classList.remove("tokui-chart__modal--open"), document.removeEventListener("keydown", g), document.body.style.overflow = h, setTimeout(function() {
5023
+ a.parentNode && a.remove();
4205
5024
  }, 180));
4206
5025
  }
4207
- i.addEventListener("click", function(e) {
4208
- e.target === i && h();
4209
- }), o.addEventListener("click", h), document.addEventListener("keydown", p), document.body.appendChild(i), i.offsetWidth, i.classList.add("tokui-chart__modal--open");
5026
+ a.addEventListener("click", function(e) {
5027
+ e.target === a && v();
5028
+ }), s.addEventListener("click", v), document.addEventListener("keydown", g), document.body.appendChild(a), a.offsetWidth, a.classList.add("tokui-chart__modal--open"), (typeof window < "u" && window.requestAnimationFrame ? function(e) {
5029
+ window.requestAnimationFrame(e);
5030
+ } : function(e) {
5031
+ e();
5032
+ })(function() {
5033
+ var e = 0;
5034
+ try {
5035
+ e = m.getBoundingClientRect().width;
5036
+ } catch {
5037
+ e = 0;
5038
+ }
5039
+ if (e > 0) {
5040
+ var t = m.viewBox && m.viewBox.baseVal, n = t && t.width || parseFloat((m.getAttribute("viewBox") || "").split(/\s+/)[2]);
5041
+ n > 0 && z(m, e / n);
5042
+ }
5043
+ });
4210
5044
  }
4211
5045
  function C(e) {
4212
5046
  var t = document.createElement("div");
@@ -4261,13 +5095,18 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
4261
5095
  }), a(s), s);
4262
5096
  });
4263
5097
  }
4264
- typeof window < "u" && (window.TokUI = window.TokUI || {}, window.TokUI._internal = window.TokUI._internal || {}, window.TokUI._internal.registerChartComponents = Pe, window.TokUI._internal.registerChartRenderer = $, window.TokUI._internal.bumpFsUnits = A, window.TokUI._internal.solvePieFs = j, window.TokUI._internal.pieSizing = U, window.TokUI._internal.MIN_CHART_PX = O), t !== void 0 && t.exports && (t.exports = {
4265
- registerChartComponents: Pe,
5098
+ typeof window < "u" && (window.TokUI = window.TokUI || {}, window.TokUI._internal = window.TokUI._internal || {}, window.TokUI._internal.registerChartComponents = Je, window.TokUI._internal.registerChartRenderer = $, window.TokUI._internal.bumpFsUnits = R, window.TokUI._internal.applyTipScale = z, window.TokUI._internal.axisXLayout = G, window.TokUI._internal.zoomBounds = q, window.TokUI._internal.zoomEnabled = K, window.TokUI._internal.solvePieFs = B, window.TokUI._internal.pieSizing = Z, window.TokUI._internal.MIN_CHART_PX = P, window.TokUI._internal.MAX_CHART_PX = I), t !== void 0 && t.exports && (t.exports = {
5099
+ registerChartComponents: Je,
4266
5100
  registerChartRenderer: $,
4267
- bumpFsUnits: A,
4268
- solvePieFs: j,
4269
- pieSizing: U,
4270
- MIN_CHART_PX: O
5101
+ bumpFsUnits: R,
5102
+ solvePieFs: B,
5103
+ pieSizing: Z,
5104
+ MIN_CHART_PX: P,
5105
+ MAX_CHART_PX: I,
5106
+ applyTipScale: z,
5107
+ axisXLayout: G,
5108
+ zoomBounds: q,
5109
+ zoomEnabled: K
4271
5110
  });
4272
5111
  })), v = /* @__PURE__ */ o(((e, t) => {
4273
5112
  var n = {
@@ -9403,29 +10242,11 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9403
10242
  }
9404
10243
  };
9405
10244
  function s(e) {
9406
- var t = e.indexOf("/"), n = t > 0 ? e.slice(0, t) : e, r = t > 0 ? e.slice(t + 1) : "", i = "", a = "";
9407
- if (r) {
9408
- var o = r.split("/");
9409
- i = o[0].trim().toLowerCase(), a = o[1] ? o[1].trim().toLowerCase() : "";
9410
- }
9411
- var s = n.indexOf(":");
10245
+ var t = T(e), n = t.text, r = n.indexOf(":");
9412
10246
  return {
9413
- name: s > 0 ? n.slice(0, s) : n,
9414
- align: {
9415
- c: "center",
9416
- center: "center",
9417
- r: "right",
9418
- right: "right",
9419
- l: "left",
9420
- left: "left"
9421
- }[i] || "",
9422
- color: {
9423
- primary: "primary",
9424
- success: "success",
9425
- warning: "warning",
9426
- danger: "danger",
9427
- info: "info"
9428
- }[a] || ""
10247
+ name: r > 0 ? n.slice(0, r) : n,
10248
+ align: t.align,
10249
+ color: t.color
9429
10250
  };
9430
10251
  }
9431
10252
  let c = [], u = [], d = [], f = 0, p = null;
@@ -9542,7 +10363,14 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9542
10363
  function b(e) {
9543
10364
  for (var t = [], n = "", r = !1, i = 0, a = 0; a < e.length; a++) {
9544
10365
  var o = e[a];
9545
- o === "\"" ? r = !r : r ? n += o : o === "[" ? (i++, n += o) : o === "]" ? (i--, n += o) : o === "," && i === 0 ? (t.push(n), n = "") : n += o;
10366
+ if (o === "\"") r = !r;
10367
+ else if (r) n += o;
10368
+ else if (o === "[") i++, n += o;
10369
+ else if (o === "]") i--, n += o;
10370
+ else if (o === "," && i === 0) {
10371
+ var s = e[a - 1], c = e[a + 1], l = e[a + 2], u = e[a + 3], d = e[a + 4], f = /=([cr]\d+){1,2}$/.test(n), p = /[¥¥$€£₩₹]/.test(n);
10372
+ !f && p && s >= "0" && s <= "9" && c >= "0" && c <= "9" && l >= "0" && l <= "9" && u >= "0" && u <= "9" && !(d >= "0" && d <= "9") ? n += o : (t.push(n), n = "");
10373
+ } else n += o;
9546
10374
  }
9547
10375
  return t.push(n), t;
9548
10376
  }
@@ -9593,55 +10421,83 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9593
10421
  rowspan: a
9594
10422
  };
9595
10423
  }
9596
- function T(e, r, o) {
9597
- var s = o.colTypes, c = o.colAligns, l = o.seqNum, u = o.colspanVal, d = o.cellCols && o.cellCols[r] != null ? o.cellCols[r] : r, f = { class: "tokui-td" }, p = c[d];
9598
- p && (f.class += " tokui-col-" + p);
9599
- var m = o.colColors && o.colColors[d];
9600
- if (m && (f.class += " tokui-text--" + m), r === 0 && u >= 2 && (f.colspan = String(u)), r > 0 && r < u) return null;
9601
- var h = w(e), g = h.text.trim();
9602
- if (h.colspan >= 2 && (f.colspan = String(h.colspan)), h.rowspan >= 2 && (f.rowspan = String(h.rowspan)), s[d] === "chk") {
10424
+ function T(e) {
10425
+ for (var t = {
10426
+ c: "center",
10427
+ center: "center",
10428
+ r: "right",
10429
+ right: "right",
10430
+ l: "left",
10431
+ left: "left"
10432
+ }, n = {
10433
+ primary: "primary",
10434
+ success: "success",
10435
+ warning: "warning",
10436
+ danger: "danger",
10437
+ info: "info"
10438
+ }, r = "", i = "", a = 0; a < 2; a++) {
10439
+ var o = String(e).match(/\/([A-Za-z]+)$/);
10440
+ if (!o) break;
10441
+ var s = o[1].toLowerCase();
10442
+ if (t[s] && !r) r = t[s];
10443
+ else if (n[s] && !i) i = n[s];
10444
+ else break;
10445
+ e = String(e).slice(0, o.index);
10446
+ }
10447
+ return {
10448
+ text: e,
10449
+ align: r,
10450
+ color: i
10451
+ };
10452
+ }
10453
+ function E(e, r, o) {
10454
+ var s = o.colTypes, c = o.colAligns, l = o.seqNum, u = o.colspanVal, d = o.cellCols && o.cellCols[r] != null ? o.cellCols[r] : r, f = { class: "tokui-td" }, p = T(e), m = w(p.text), h = m.text.trim(), g = p.align || c[d];
10455
+ g && (f.class += " tokui-col-" + g);
10456
+ var _ = p.color || o.colColors && o.colColors[d];
10457
+ if (_ && (f.class += " tokui-text--" + _), r === 0 && u >= 2 && (f.colspan = String(u)), r > 0 && r < u) return null;
10458
+ if (m.colspan >= 2 && (f.colspan = String(m.colspan)), m.rowspan >= 2 && (f.rowspan = String(m.rowspan)), s[d] === "chk") {
9603
10459
  f.class += " tokui-col-chk";
9604
- var _ = t("td", f);
9605
- return _.appendChild(t("input", {
10460
+ var v = t("td", f);
10461
+ return v.appendChild(t("input", {
9606
10462
  type: "checkbox",
9607
10463
  class: "tokui-chk-row"
9608
- })), _;
10464
+ })), v;
9609
10465
  }
9610
10466
  if (s[d] === "#") return f.class += " tokui-col-seq", t("td", f, String(l));
9611
- var v = a(g);
9612
- if (v) {
10467
+ var y = a(h);
10468
+ if (y) {
9613
10469
  f.class += " tokui-td--inline";
9614
- var y = t("td", f);
9615
- return y.appendChild(v), y;
10470
+ var b = t("td", f);
10471
+ return b.appendChild(y), b;
9616
10472
  }
9617
- if (g.startsWith("btn:")) {
10473
+ if (h.startsWith("btn:")) {
9618
10474
  f.class += " tokui-col-action";
9619
- var b = t("td", f);
9620
- return b.appendChild(n(g, t, i)), b;
9621
- }
9622
- if (g.startsWith("tag:")) {
9623
- var x = t("td", f), S = g.split(/\s+/), C = "", T = { class: "tokui-tag" };
9624
- return S.forEach(function(e) {
9625
- e.startsWith("tag:") ? C = e.slice(4) : e.startsWith("t:") && (T.class += " tokui-tag--" + e.slice(2));
9626
- }), x.appendChild(t("span", T, C)), x;
9627
- }
9628
- if (g.startsWith("progress")) {
9629
- var E = t("td", f), D = g.split(/\s+/), O = 0, k = "span", A = "";
9630
- if (D.forEach(function(e) {
9631
- e.startsWith("v:") ? O = parseInt(e.slice(2)) || 0 : e.startsWith("t:") ? k = e.slice(2) : e.startsWith("status:") && (A = e.slice(7));
9632
- }), k === "span") {
9633
- var j = t("span", { class: "tokui-progress tokui-progress--span" }), M = t("span", { class: "tokui-progress__mini-bar" }), N = "tokui-progress__mini-fill";
9634
- A === "error" ? N += " tokui-progress--error" : O >= 80 && (N += " tokui-progress--success");
9635
- var P = t("span", { class: N });
9636
- P.style.width = O + "%", M.appendChild(P), j.appendChild(M);
9637
- var F = t("span", { class: "tokui-progress__span-text" });
9638
- F.textContent = O + "%", j.appendChild(F), E.appendChild(j);
9639
- }
9640
- return E;
9641
- }
9642
- return t("td", f, g);
9643
- }
9644
- function E(e, t) {
10475
+ var x = t("td", f);
10476
+ return x.appendChild(n(h, t, i)), x;
10477
+ }
10478
+ if (h.startsWith("tag:")) {
10479
+ var S = t("td", f), C = h.split(/\s+/), E = "", D = { class: "tokui-tag" };
10480
+ return C.forEach(function(e) {
10481
+ e.startsWith("tag:") ? E = e.slice(4) : e.startsWith("t:") && (D.class += " tokui-tag--" + e.slice(2));
10482
+ }), S.appendChild(t("span", D, E)), S;
10483
+ }
10484
+ if (h.startsWith("progress")) {
10485
+ var O = t("td", f), k = h.split(/\s+/), A = 0, j = "span", M = "";
10486
+ if (k.forEach(function(e) {
10487
+ e.startsWith("v:") ? A = parseInt(e.slice(2)) || 0 : e.startsWith("t:") ? j = e.slice(2) : e.startsWith("status:") && (M = e.slice(7));
10488
+ }), j === "span") {
10489
+ var N = t("span", { class: "tokui-progress tokui-progress--span" }), P = t("span", { class: "tokui-progress__mini-bar" }), F = "tokui-progress__mini-fill";
10490
+ M === "error" ? F += " tokui-progress--error" : A >= 80 && (F += " tokui-progress--success");
10491
+ var I = t("span", { class: F });
10492
+ I.style.width = A + "%", P.appendChild(I), N.appendChild(P);
10493
+ var L = t("span", { class: "tokui-progress__span-text" });
10494
+ L.textContent = A + "%", N.appendChild(L), O.appendChild(N);
10495
+ }
10496
+ return O;
10497
+ }
10498
+ return t("td", f, h);
10499
+ }
10500
+ function D(e, t) {
9645
10501
  e._tokuiCellText = [], e._tokuiCellTds = [];
9646
10502
  var n = "\0SKELETON\0";
9647
10503
  function r(t, n) {
@@ -9664,7 +10520,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9664
10520
  if (e._tokuiCellText[l] !== g) {
9665
10521
  var _ = e._tokuiCellTds[l];
9666
10522
  _ && _.parentNode === e && e.removeChild(_);
9667
- var v = h ? x(l, t) : T(u, l, t);
10523
+ var v = h ? x(l, t) : E(u, l, t);
9668
10524
  r(v, l), e._tokuiCellTds[l] = v || null, e._tokuiCellText[l] = g;
9669
10525
  }
9670
10526
  }
@@ -9692,7 +10548,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9692
10548
  colspanVal: r,
9693
10549
  tbodyEl: e._tbodyEl
9694
10550
  };
9695
- if (e._stream === "open") return E(n, a), n;
10551
+ if (e._stream === "open") return D(n, a), n;
9696
10552
  if (e.content) {
9697
10553
  var o = y(e.content);
9698
10554
  let t = b(o);
@@ -9703,7 +10559,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
9703
10559
  return e !== t;
9704
10560
  }), p = o.indexOf("[tr") !== -1;
9705
10561
  !s && !l && i.length > 0 && t.length !== i.length && r < 2 && console.warn("TokUI Table: tr 单元格数 " + t.length + " != 列数 " + i.length + " → 列错位。" + (p ? "⚠️ 内容含 [tr 残留,疑似 tr 未正确闭合(引号未配对/含字面 [ ] 未引号包)→ parser 标签断裂、串行。" : t.length > i.length ? "疑似单元格内含逗号未用双引号包裹(如 12,800.00、\"a,b,c\")。" : "疑似列标题(thead cols)含逗号被切散、或该行缺格。") + "规则:tr 不要外层引号、含逗号单元格直引号包。tr 原文: " + o), t.forEach((e, t) => {
9706
- let r = T(e, t, a);
10562
+ let r = E(e, t, a);
9707
10563
  r && n.appendChild(r);
9708
10564
  });
9709
10565
  }
@@ -11175,20 +12031,20 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
11175
12031
  var W = t("div", { class: "tokui-datetimepicker-body" });
11176
12032
  W.appendChild(D), W.appendChild(k), E.appendChild(W), E.appendChild(H), V(g, _), E.style.display = "none", u.appendChild(E);
11177
12033
  var G = !1;
11178
- function K() {
12034
+ function ee() {
11179
12035
  if (!(r || G)) {
11180
- P(q), G = !0, E.style.display = "", u.classList.add("tokui-datetimepicker--open");
12036
+ P(K), G = !0, E.style.display = "", u.classList.add("tokui-datetimepicker--open");
11181
12037
  var e = d.getBoundingClientRect();
11182
12038
  E.style.left = e.left + "px", E.style.top = e.bottom + 4 + "px", E.style.width = "auto";
11183
12039
  var t = E.offsetWidth, n = L();
11184
12040
  e.left + t > n - 8 && (E.style.left = Math.max(8, n - t - 8) + "px"), M(I, y), M(z, b), O && B && M(B, x);
11185
12041
  }
11186
12042
  }
11187
- function q() {
11188
- G && (G = !1, E.style.display = "none", u.classList.remove("tokui-datetimepicker--open"), F(q));
12043
+ function K() {
12044
+ G && (G = !1, E.style.display = "none", u.classList.remove("tokui-datetimepicker--open"), F(K));
11189
12045
  }
11190
12046
  return r || (d.addEventListener("click", function(e) {
11191
- e.stopPropagation(), G ? q() : K();
12047
+ e.stopPropagation(), G ? K() : ee();
11192
12048
  }), D.addEventListener("click", function(e) {
11193
12049
  e.stopPropagation();
11194
12050
  var t = e.target.closest(".tokui-datepicker-day");
@@ -11199,7 +12055,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
11199
12055
  }), U.addEventListener("click", function(e) {
11200
12056
  e.stopPropagation(), v ||= new Date(g, _, h.getDate()), y = j(I), b = j(z), O && B && (x = j(B)), v.setHours(y, b, x);
11201
12057
  var t = T(v, i);
11202
- if (p.value = t, S.value = t, q(), n.clk) {
12058
+ if (p.value = t, S.value = t, K(), n.clk) {
11203
12059
  var r = typeof window < "u" && window.TokUI && window.TokUI._eventBus ? window.TokUI._eventBus.getHandler(n.clk) : null;
11204
12060
  r && r({
11205
12061
  value: t,
@@ -11208,7 +12064,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
11208
12064
  });
11209
12065
  }
11210
12066
  }), typeof document < "u" && document.addEventListener("click", function(e) {
11211
- u.contains(e.target) || q();
12067
+ u.contains(e.target) || K();
11212
12068
  })), c.appendChild(u), c._variantTarget = u, c;
11213
12069
  });
11214
12070
  }