minerva-design 1.17.2 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/custom-elements.json +10 -6
- package/dist/angular/fesm2022/minerva-angular.mjs +173 -70
- package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
- package/dist/angular/types/minerva-angular.d.ts +33 -21
- package/dist/charts/core.cjs +1 -1
- package/dist/charts/core.d.cts +1 -0
- package/dist/charts/core.d.ts +1 -0
- package/dist/charts/core.js +22 -21
- package/dist/charts/engine/chart.cjs +1 -1
- package/dist/charts/engine/chart.cjs.map +1 -1
- package/dist/charts/engine/chart.js +414 -376
- package/dist/charts/engine/chart.js.map +1 -1
- package/dist/charts/engine/overlay.cjs +1 -1
- package/dist/charts/engine/overlay.cjs.map +1 -1
- package/dist/charts/engine/overlay.d.cts +5 -0
- package/dist/charts/engine/overlay.d.ts +5 -0
- package/dist/charts/engine/overlay.js +94 -69
- package/dist/charts/engine/overlay.js.map +1 -1
- package/dist/charts/engine/quadrant-card.cjs +2 -0
- package/dist/charts/engine/quadrant-card.cjs.map +1 -0
- package/dist/charts/engine/quadrant-card.d.cts +83 -0
- package/dist/charts/engine/quadrant-card.d.ts +83 -0
- package/dist/charts/engine/quadrant-card.js +154 -0
- package/dist/charts/engine/quadrant-card.js.map +1 -0
- package/dist/charts/engine/scene.cjs +1 -1
- package/dist/charts/engine/scene.cjs.map +1 -1
- package/dist/charts/engine/scene.d.cts +5 -0
- package/dist/charts/engine/scene.d.ts +5 -0
- package/dist/charts/engine/scene.js +32 -32
- package/dist/charts/engine/scene.js.map +1 -1
- package/dist/charts/engine/types.d.cts +14 -0
- package/dist/charts/engine/types.d.ts +14 -0
- package/dist/charts/index.cjs +1 -1
- package/dist/charts/index.js +28 -27
- package/dist/charts/react/Chart.cjs +1 -1
- package/dist/charts/react/Chart.cjs.map +1 -1
- package/dist/charts/react/Chart.d.cts +4 -2
- package/dist/charts/react/Chart.d.ts +4 -2
- package/dist/charts/react/Chart.js +42 -42
- package/dist/charts/react/Chart.js.map +1 -1
- package/dist/charts/react/charts.cjs +1 -1
- package/dist/charts/react/charts.cjs.map +1 -1
- package/dist/charts/react/charts.js +395 -391
- package/dist/charts/react/charts.js.map +1 -1
- package/dist/charts/react/types.d.cts +8 -2
- package/dist/charts/react/types.d.ts +8 -2
- package/dist/core/contracts.cjs +1 -1
- package/dist/core/contracts.cjs.map +1 -1
- package/dist/core/contracts.js +1 -1
- package/dist/core/contracts.js.map +1 -1
- package/dist/native/charts/src/engine/overlay.cjs +1 -1
- package/dist/native/charts/src/engine/overlay.cjs.map +1 -1
- package/dist/native/charts/src/engine/overlay.js +89 -65
- package/dist/native/charts/src/engine/overlay.js.map +1 -1
- package/dist/native/charts/src/engine/scene.cjs +1 -1
- package/dist/native/charts/src/engine/scene.cjs.map +1 -1
- package/dist/native/charts/src/engine/scene.js +32 -32
- package/dist/native/charts/src/engine/scene.js.map +1 -1
- package/dist/react/components/QuadrantTaskBoard/QuadrantTaskBoard.cjs +1 -1
- package/dist/react/components/QuadrantTaskBoard/QuadrantTaskBoard.cjs.map +1 -1
- package/dist/react/components/QuadrantTaskBoard/QuadrantTaskBoard.js +14 -8
- package/dist/react/components/QuadrantTaskBoard/QuadrantTaskBoard.js.map +1 -1
- package/dist/react/components/QuadrantTaskBoard/quadrantTaskBoard.module.scss.cjs +1 -1
- package/dist/react/components/QuadrantTaskBoard/quadrantTaskBoard.module.scss.cjs.map +1 -1
- package/dist/react/components/QuadrantTaskBoard/quadrantTaskBoard.module.scss.js +16 -15
- package/dist/react/components/QuadrantTaskBoard/quadrantTaskBoard.module.scss.js.map +1 -1
- package/dist/react/style.css +1 -1
- package/dist/react/styles/quadrant-task-board.css +1 -1
- package/dist/taro/index.js +1521 -1496
- package/dist/taro/style.css +22 -0
- package/dist/uni/manifest.d.ts +34 -34
- package/dist/uni/manifest.js +34 -39
- package/dist/uni/style.css +22 -0
- package/dist/vue/components/Chart/QuadrantChart.vue.d.ts +4 -3
- package/dist/vue/components/Chart/QuadrantChart.vue.js.map +1 -1
- package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js +186 -142
- package/dist/vue/components/Chart/QuadrantChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/vue/components/Chart/cartesian.d.ts +5 -1
- package/dist/vue/components/Chart/cartesian.js +2 -0
- package/dist/vue/components/Chart/cartesian.js.map +1 -1
- package/dist/vue/components/QuadrantTaskBoard/QuadrantTaskBoard.vue.js.map +1 -1
- package/dist/vue/components/QuadrantTaskBoard/QuadrantTaskBoard.vue_vue_type_script_setup_true_lang.js +18 -12
- package/dist/vue/components/QuadrantTaskBoard/QuadrantTaskBoard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/weapp/charts/canvas.js +48 -11
- package/dist/weapp/controls.wxss +22 -0
- package/dist/web-components/components/chart/chart.d.ts +4 -1
- package/dist/web-components/components/chart/chart.js +3 -1
- package/dist/web-components/components/chart/chart.js.map +1 -1
- package/dist/web-components/components/chart/charts.d.ts +34 -14
- package/dist/web-components/components/chart/charts.js +145 -98
- package/dist/web-components/components/chart/charts.js.map +1 -1
- package/dist/web-components/components/quadrant-task-board/quadrant-task-board.d.ts +8 -8
- package/dist/web-components/components/quadrant-task-board/quadrant-task-board.js +16 -12
- package/dist/web-components/components/quadrant-task-board/quadrant-task-board.js.map +1 -1
- package/dist/web-components/styles/QuadrantTaskBoard/quadrantTaskBoard.css.js +1 -1
- package/dist/web-components/styles/QuadrantTaskBoard/quadrantTaskBoard.css.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { lowerBound as e } from "./data.js";
|
|
2
2
|
import { positionTooltip as t, prefersReducedMotion as n, releaseTooltip as r, themeTooltip as i } from "./tooltip.js";
|
|
3
3
|
import { CELL_ACCENT as a, CELL_LIFT as o, PLOT_BACKGROUND as s, createBand as c, createChartDom as l, createDataCanvas as u, createDragDot as d, createDragPlaceholder as f, createDropTarget as p, createLabelPill as m, createMarker as h, dragDotShadow as ee, liftShadow as te, markerHalo as ne, playLift as re, styleElement as g, swatch as _ } from "./dom.js";
|
|
4
|
-
import { createScales as ie, toData as
|
|
5
|
-
import { drawBackground as
|
|
6
|
-
import { watchLocale as
|
|
7
|
-
import { chartAriaLabel as
|
|
8
|
-
import { buildModel as
|
|
9
|
-
import { collectPointLabels as
|
|
10
|
-
import { dragPreview as
|
|
11
|
-
import { hoverRect as
|
|
12
|
-
import { buildItems as
|
|
13
|
-
import { createRenderer as
|
|
14
|
-
import { followDefaultRenderer as
|
|
15
|
-
import { itemsSignature as
|
|
16
|
-
import { readTheme as
|
|
17
|
-
import { clampRange as
|
|
4
|
+
import { createScales as ie, toData as ae, toScreen as oe } from "./layout.js";
|
|
5
|
+
import { drawBackground as se, drawForeground as ce, font as le } from "./overlay.js";
|
|
6
|
+
import { watchLocale as ue } from "./locale.js";
|
|
7
|
+
import { chartAriaLabel as de } from "./labels.js";
|
|
8
|
+
import { buildModel as fe, fromPlotX as pe, fromPlotY as me, heatPosition as he, toPlotX as ge, toPlotY as _e, viewFromValues as ve, viewToValues as ye } from "./model.js";
|
|
9
|
+
import { collectPointLabels as be, colorLegend as xe, connectorSegments as Se, crosshairAt as Ce, dependencyArrows as we, hitTest as Te, hoverItemOf as Ee, hoverMarks as De, layoutChart as Oe, legendShape as ke, legendShown as Ae, liftedBarRect as je, pointOf as Me, resolveAnnotations as Ne, resolveDependencies as Pe, sameHover as Fe, tooltipContent as Ie } from "./scene.js";
|
|
10
|
+
import { dragPreview as Le } from "./drag-preview.js";
|
|
11
|
+
import { hoverRect as Re, tooltipObstacles as ze } from "./hover-rect.js";
|
|
12
|
+
import { buildItems as Be, cellStyleKey as Ve } from "./items.js";
|
|
13
|
+
import { createRenderer as He } from "./renderers/detect.js";
|
|
14
|
+
import { followDefaultRenderer as Ue } from "./renderers/follow.js";
|
|
15
|
+
import { itemsSignature as We } from "./signature.js";
|
|
16
|
+
import { readTheme as Ge, themeColorsChanged as Ke, watchTheme as qe } from "./theme.js";
|
|
17
|
+
import { clampRange as Je, panRange as Ye, sameRange as Xe, wheelFactor as Ze, zoomRange as Qe } from "./viewport.js";
|
|
18
18
|
//#region src/engine/chart.ts
|
|
19
|
-
var
|
|
19
|
+
var $e = (e) => (e[0] + e[1]) / 2, et = (e, t) => {
|
|
20
20
|
if (!e || !t) return e ?? t;
|
|
21
21
|
let n = Math.min(e.x, t.x), r = Math.min(e.y, t.y);
|
|
22
22
|
return {
|
|
@@ -25,68 +25,77 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
25
25
|
width: Math.max(e.x + e.width, t.x + t.width) - n,
|
|
26
26
|
height: Math.max(e.y + e.height, t.y + t.height) - r
|
|
27
27
|
};
|
|
28
|
-
},
|
|
28
|
+
}, v = (e) => ({
|
|
29
29
|
x: [e.x[0], e.x[1]],
|
|
30
30
|
y: [e.y[0], e.y[1]]
|
|
31
|
-
}),
|
|
32
|
-
let
|
|
33
|
-
i(
|
|
34
|
-
let
|
|
31
|
+
}), tt = (tt, nt) => {
|
|
32
|
+
let y = tt.ownerDocument, b = y.defaultView, x = l(tt), rt = /* @__PURE__ */ new Map(), it = /* @__PURE__ */ new Set(), S = {}, C = nt, w = Ge(x.root, C.palette);
|
|
33
|
+
i(x.tooltip, w);
|
|
34
|
+
let T, E = {
|
|
35
35
|
x: [0, 1],
|
|
36
36
|
y: [0, 1]
|
|
37
|
-
},
|
|
37
|
+
}, D = !1, O = {
|
|
38
38
|
x: 0,
|
|
39
39
|
y: 0
|
|
40
|
-
},
|
|
41
|
-
|
|
42
|
-
}),
|
|
43
|
-
|
|
44
|
-
},
|
|
45
|
-
if (
|
|
46
|
-
|
|
47
|
-
let e =
|
|
48
|
-
if (e === !1) return
|
|
40
|
+
}, at = [], k = !0, ot = 0, st = [], ct = [], A = null, lt = null, j = null, ut = null, M = null, dt = 0, N = !1, P = 0, ft = !1, pt = "", F = null, I = null, mt = "", L = null, R = null, z = null, ht = !1, gt = [], B = null, _t = null, vt = null, V = null, yt = [], bt = [], xt = [], St = [], Ct = [], H = null, U = null, wt = null, Tt = "", Et = 0, Dt = "", Ot = "", W = null, G = null, kt = () => {}, At = new Promise((e) => {
|
|
41
|
+
kt = e;
|
|
42
|
+
}), K = (e, t) => {
|
|
43
|
+
S[e]?.forEach((e) => e(t));
|
|
44
|
+
}, jt = null, Mt = null, q = () => {
|
|
45
|
+
if (jt === C) return Mt;
|
|
46
|
+
jt = C;
|
|
47
|
+
let e = C.interaction;
|
|
48
|
+
if (e === !1) return Mt = null;
|
|
49
49
|
let t = typeof e == "object" ? e : {};
|
|
50
|
-
return
|
|
50
|
+
return Mt = {
|
|
51
51
|
zoom: t.zoom ?? !0,
|
|
52
52
|
wheel: t.wheel ?? "modifier",
|
|
53
53
|
pan: t.pan ?? !0,
|
|
54
54
|
keyboard: t.keyboard ?? !0,
|
|
55
55
|
dragPoints: t.dragPoints ?? !1,
|
|
56
56
|
dropTargets: t.dropTargets ?? !1,
|
|
57
|
-
dragLabel: t.dragLabel ?? !0
|
|
57
|
+
dragLabel: t.dragLabel ?? !0,
|
|
58
|
+
hoverLabel: t.hoverLabel ?? !0
|
|
58
59
|
};
|
|
59
|
-
},
|
|
60
|
-
P
|
|
61
|
-
},
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
60
|
+
}, Nt = () => C.tooltip === !1 ? null : typeof C.tooltip == "object" ? C.tooltip : {}, Pt = () => {
|
|
61
|
+
P = b?.requestAnimationFrame ? b.requestAnimationFrame(Ut) : setTimeout(Ut, 16);
|
|
62
|
+
}, J = () => {
|
|
63
|
+
N || (ft = !0, P || Pt());
|
|
64
|
+
}, Ft = () => {
|
|
65
|
+
N || P || Pt();
|
|
66
|
+
}, It = () => {
|
|
67
|
+
T = fe(C, w, it, rt);
|
|
68
|
+
let { base: e, zoom: t, minSpan: n } = T;
|
|
69
|
+
D ? (E = {
|
|
70
|
+
x: t.x ? Je(E.x, e.x, n.x) : [...e.x],
|
|
71
|
+
y: t.y ? Je(E.y, e.y, n.y) : [...e.y]
|
|
72
|
+
}, D = !Xe(E.x, e.x) || !Xe(E.y, e.y)) : E = v(e);
|
|
73
|
+
let r = We(T, Et, (e) => C.series[e]?.stack);
|
|
74
|
+
r !== Dt && (Dt = r, O = {
|
|
75
|
+
x: $e(e.x),
|
|
76
|
+
y: $e(e.y)
|
|
77
|
+
}, k = !0, F && !F.keyboard && (I = {
|
|
78
|
+
x: F.anchorX,
|
|
79
|
+
y: F.anchorY,
|
|
80
|
+
event: I?.event ?? F.event
|
|
81
|
+
}, F = null)), z && (clearTimeout(z.timer), z = null, ht = !0), st = Ne(C.annotations, w, T.y.type === "log" ? Math.log10 : void 0, T.x.type === "log" ? Math.log10 : void 0), ct = Pe(C.dependencies, w), Rt(), zt(), J();
|
|
82
|
+
}, Lt = () => {
|
|
74
83
|
let e = (e, t) => Math.max(Math.abs(e[0] - t), Math.abs(e[1] - t)) > (e[1] - e[0]) * 2e3;
|
|
75
|
-
(e(
|
|
76
|
-
x:
|
|
77
|
-
y:
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
let e =
|
|
84
|
+
(e(E.x, O.x) || e(E.y, O.y)) && (O = {
|
|
85
|
+
x: $e(E.x),
|
|
86
|
+
y: $e(E.y)
|
|
87
|
+
}, k = !0);
|
|
88
|
+
}, Rt = () => {
|
|
89
|
+
let e = C.legend, t = C.series.filter((e) => e.name).length, n = Ae(e, T, t), r = typeof e == "object" ? e : {}, i = r.toggle ?? !0, a = r.position === "bottom", o = n ? xe(T) : null, s = `${n}|${a}|${i}`;
|
|
81
90
|
if (o) s += `\n${o.stops.join(";")}|${o.labels.map((e) => e.text).join(";")}`;
|
|
82
|
-
else if (n) for (let e of
|
|
83
|
-
if (s ===
|
|
84
|
-
|
|
85
|
-
let c = [...
|
|
86
|
-
if (
|
|
87
|
-
if (
|
|
88
|
-
|
|
89
|
-
let e =
|
|
91
|
+
else if (n) for (let e of T.series) s += `\n${e.id}\u0001${e.name}\u0001${e.colorCss}\u0001${ke(e.type)}\u0001${e.hidden}`;
|
|
92
|
+
if (s === Ot) return;
|
|
93
|
+
Ot = s;
|
|
94
|
+
let c = [...x.legend.children].indexOf(y.activeElement);
|
|
95
|
+
if (x.legend.replaceChildren(), wt = null, x.legend.style.display = n ? "flex" : "none", n) {
|
|
96
|
+
if (x.legend.style.order = a ? "1" : "0", x.legend.style.padding = a ? "8px 4px 0" : "0 4px 8px", o) {
|
|
97
|
+
x.legend.style.justifyContent = "flex-end";
|
|
98
|
+
let e = y.createElement("div");
|
|
90
99
|
g(e, {
|
|
91
100
|
display: "flex",
|
|
92
101
|
alignItems: "center",
|
|
@@ -95,7 +104,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
95
104
|
fontSize: "11px",
|
|
96
105
|
fontVariantNumeric: "tabular-nums"
|
|
97
106
|
});
|
|
98
|
-
let t = o.labels[0], n = o.labels[o.labels.length - 1], r =
|
|
107
|
+
let t = o.labels[0], n = o.labels[o.labels.length - 1], r = y.createElement("div");
|
|
99
108
|
if (g(r, {
|
|
100
109
|
position: "relative",
|
|
101
110
|
width: "160px",
|
|
@@ -104,7 +113,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
104
113
|
background: `linear-gradient(to right, ${o.stops.join(", ")})`,
|
|
105
114
|
boxShadow: "inset 0 0 0 1px color-mix(in srgb, var(--text-color, #1f2937) 8%, transparent)"
|
|
106
115
|
}), o.labels.length > 2) {
|
|
107
|
-
let e =
|
|
116
|
+
let e = y.createElement("div");
|
|
108
117
|
g(e, {
|
|
109
118
|
position: "absolute",
|
|
110
119
|
left: "50%",
|
|
@@ -114,7 +123,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
114
123
|
background: "color-mix(in srgb, var(--text-color, #1f2937) 35%, transparent)"
|
|
115
124
|
}), r.appendChild(e);
|
|
116
125
|
}
|
|
117
|
-
|
|
126
|
+
wt = y.createElement("div"), g(wt, {
|
|
118
127
|
position: "absolute",
|
|
119
128
|
top: "-3px",
|
|
120
129
|
width: "4px",
|
|
@@ -124,19 +133,19 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
124
133
|
background: "var(--text-color, #1f2937)",
|
|
125
134
|
boxShadow: "0 0 0 1.5px var(--surface-color, var(--background-color, #fff))",
|
|
126
135
|
display: "none"
|
|
127
|
-
}), r.appendChild(
|
|
136
|
+
}), r.appendChild(wt);
|
|
128
137
|
let i = (e) => {
|
|
129
|
-
let t =
|
|
138
|
+
let t = y.createElement("span");
|
|
130
139
|
return t.textContent = e, t;
|
|
131
140
|
};
|
|
132
|
-
e.append(i(t?.text ?? ""), r, i(n?.text ?? "")),
|
|
141
|
+
e.append(i(t?.text ?? ""), r, i(n?.text ?? "")), x.legend.appendChild(e);
|
|
133
142
|
return;
|
|
134
143
|
}
|
|
135
|
-
|
|
136
|
-
for (let e of
|
|
137
|
-
let t =
|
|
144
|
+
x.legend.style.justifyContent = "";
|
|
145
|
+
for (let e of T.series) {
|
|
146
|
+
let t = y.createElement(i ? "button" : "span");
|
|
138
147
|
t instanceof HTMLButtonElement && (t.type = "button", t.setAttribute("aria-pressed", String(!e.hidden)), t.addEventListener("click", () => {
|
|
139
|
-
|
|
148
|
+
it.has(e.id) ? it.delete(e.id) : it.add(e.id), It();
|
|
140
149
|
})), g(t, {
|
|
141
150
|
display: "inline-flex",
|
|
142
151
|
alignItems: "center",
|
|
@@ -151,85 +160,94 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
151
160
|
cursor: i ? "pointer" : "default",
|
|
152
161
|
opacity: e.hidden ? "0.45" : "1",
|
|
153
162
|
textDecoration: e.hidden ? "line-through" : "none"
|
|
154
|
-
}), t.append(_(
|
|
163
|
+
}), t.append(_(y, e.colorCss, ke(e.type)), y.createTextNode(e.name)), x.legend.appendChild(t);
|
|
155
164
|
}
|
|
156
|
-
c >= 0 &&
|
|
165
|
+
c >= 0 && x.legend.children[c]?.focus();
|
|
157
166
|
}
|
|
158
|
-
},
|
|
159
|
-
|
|
160
|
-
let e =
|
|
161
|
-
|
|
162
|
-
},
|
|
167
|
+
}, zt = () => {
|
|
168
|
+
x.stage.setAttribute("aria-label", C.ariaLabel ?? de(T));
|
|
169
|
+
let e = q()?.keyboard;
|
|
170
|
+
x.stage.style.touchAction = q()?.dragPoints ? "none" : "pan-y", e ? x.stage.tabIndex = 0 : x.stage.removeAttribute("tabindex");
|
|
171
|
+
}, Bt = (e, t, n, r) => {
|
|
163
172
|
let i = Math.max(1, Math.round(t * r)), a = Math.max(1, Math.round(n * r));
|
|
164
173
|
e.width !== i && (e.width = i), e.height !== a && (e.height = a), e.style.width = `${t}px`, e.style.height = `${n}px`;
|
|
165
|
-
},
|
|
174
|
+
}, Vt = (e, t, n) => {
|
|
166
175
|
let r = 2 / (e[1] - e[0]), i = (t - e[0]) * r - 1;
|
|
167
176
|
return n ? [-r, -i] : [r, i];
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
let e = S.stage.clientWidth, t = S.stage.clientHeight;
|
|
172
|
-
if (e <= 0 || t <= 0) return;
|
|
173
|
-
let n = x?.devicePixelRatio || 1;
|
|
174
|
-
Nt(S.background, e, t, n), Nt(S.foreground, e, t, n);
|
|
175
|
-
let r = S.background.getContext("2d"), i = S.foreground.getContext("2d");
|
|
176
|
-
r && (r.setTransform(n, 0, 0, n, 0, 0), r.font = ce(T));
|
|
177
|
-
let a = De({
|
|
178
|
-
model: E,
|
|
179
|
-
view: D,
|
|
180
|
-
theme: T,
|
|
181
|
-
width: e,
|
|
182
|
-
height: t,
|
|
183
|
-
padding: w.padding,
|
|
184
|
-
measure: r ? (e) => r.measureText(e).width : (e) => e.length * T.fontSize * .6
|
|
185
|
-
}), { plot: o } = a;
|
|
186
|
-
ct = a.xTicks, M = a.yTicks, lt = a.y2Ticks, j = a.scales;
|
|
187
|
-
let s = Lt();
|
|
188
|
-
if (s && s.join() !== dt && (dt = s.join(), q("layout", {
|
|
189
|
-
x: s[0],
|
|
190
|
-
y: s[1],
|
|
191
|
-
width: s[2],
|
|
192
|
-
height: s[3]
|
|
193
|
-
})), r && oe(r, {
|
|
177
|
+
}, Ht = (e, t, n) => {
|
|
178
|
+
let r = x.foreground.getContext("2d");
|
|
179
|
+
r && A && (r.setTransform(n, 0, 0, n, 0, 0), gt = ce(r, {
|
|
194
180
|
width: e,
|
|
195
181
|
height: t,
|
|
196
|
-
scales:
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
|
|
182
|
+
scales: A,
|
|
183
|
+
theme: w,
|
|
184
|
+
annotations: st,
|
|
185
|
+
pointLabels: be(T, E, A, j, w.background, L?.moved ? L.item : z?.item ?? null, vt),
|
|
186
|
+
connectors: Se(T, A),
|
|
187
|
+
arrows: we(T, A, ct)
|
|
188
|
+
}));
|
|
189
|
+
};
|
|
190
|
+
function Ut() {
|
|
191
|
+
if (P = 0, N) return;
|
|
192
|
+
let e = ft;
|
|
193
|
+
ft = !1;
|
|
194
|
+
let t = x.stage.clientWidth, n = x.stage.clientHeight;
|
|
195
|
+
if (t <= 0 || n <= 0) return;
|
|
196
|
+
let r = b?.devicePixelRatio || 1, i = `${t}x${n}@${r}`;
|
|
197
|
+
if (!e && i === pt && A) {
|
|
198
|
+
Ht(t, n, r), Yt(), L?.moved && $t();
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
pt = i, Bt(x.background, t, n, r), Bt(x.foreground, t, n, r);
|
|
202
|
+
let a = x.background.getContext("2d");
|
|
203
|
+
a && (a.setTransform(r, 0, 0, r, 0, 0), a.font = le(w));
|
|
204
|
+
let o = Oe({
|
|
205
|
+
model: T,
|
|
206
|
+
view: E,
|
|
207
|
+
theme: w,
|
|
208
|
+
width: t,
|
|
209
|
+
height: n,
|
|
210
|
+
padding: C.padding,
|
|
211
|
+
measure: a ? (e) => a.measureText(e).width : (e) => e.length * w.fontSize * .6
|
|
212
|
+
}), { plot: s } = o;
|
|
213
|
+
lt = o.xTicks, j = o.yTicks, ut = o.y2Ticks, A = o.scales;
|
|
214
|
+
let c = Wt();
|
|
215
|
+
if (c && c.join() !== mt && (mt = c.join(), K("layout", {
|
|
216
|
+
x: c[0],
|
|
217
|
+
y: c[1],
|
|
218
|
+
width: c[2],
|
|
219
|
+
height: c[3]
|
|
220
|
+
})), a && se(a, {
|
|
221
|
+
width: t,
|
|
222
|
+
height: n,
|
|
223
|
+
scales: A,
|
|
224
|
+
x: T.x,
|
|
225
|
+
y: T.y,
|
|
226
|
+
xTicks: lt,
|
|
227
|
+
yTicks: j,
|
|
228
|
+
y2: T.y2,
|
|
229
|
+
y2Ticks: ut,
|
|
230
|
+
theme: w,
|
|
231
|
+
annotations: st
|
|
232
|
+
}), Ht(t, n, r), M) {
|
|
233
|
+
let e = M.canvas, t = T.horizontal, n = t ? s.height : s.width, i = t ? s.width : s.height;
|
|
216
234
|
g(e, {
|
|
217
|
-
left: `${
|
|
218
|
-
top: `${
|
|
219
|
-
width: `${
|
|
235
|
+
left: `${s.x}px`,
|
|
236
|
+
top: `${s.y}px`,
|
|
237
|
+
width: `${n}px`,
|
|
220
238
|
height: `${i}px`,
|
|
221
239
|
transformOrigin: t ? "0 0" : "",
|
|
222
240
|
transform: t ? "matrix(0, 1, 1, 0, 0, 0)" : ""
|
|
223
241
|
});
|
|
224
|
-
let a = Math.max(1, Math.round(
|
|
225
|
-
(e.width !== a || e.height !==
|
|
242
|
+
let a = Math.max(1, Math.round(n * r)), o = Math.max(1, Math.round(i * r));
|
|
243
|
+
(e.width !== a || e.height !== o) && M.resize(a, o), Lt();
|
|
226
244
|
let c = {
|
|
227
|
-
x: 1 / Math.abs(
|
|
228
|
-
y: 1 / Math.abs(
|
|
229
|
-
}, l =
|
|
230
|
-
l !==
|
|
231
|
-
let [u, d] =
|
|
232
|
-
|
|
245
|
+
x: 1 / Math.abs(A.xPerPx),
|
|
246
|
+
y: 1 / Math.abs(A.yPerPx)
|
|
247
|
+
}, l = Ve(T, c);
|
|
248
|
+
l !== Tt && (Tt = l, k = !0), k && (ot++, at = Be(T, O, ot, c), k = !1);
|
|
249
|
+
let [u, d] = Vt(E.x, O.x, T.x.reverse), [f, p] = Vt(E.y, O.y, t ? !T.y.reverse : T.y.reverse);
|
|
250
|
+
M.render(at, {
|
|
233
251
|
transform: {
|
|
234
252
|
xScale: u,
|
|
235
253
|
xOffset: d,
|
|
@@ -237,27 +255,40 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
237
255
|
yOffset: p
|
|
238
256
|
},
|
|
239
257
|
width: a,
|
|
240
|
-
height:
|
|
241
|
-
dpr:
|
|
258
|
+
height: o,
|
|
259
|
+
dpr: r
|
|
242
260
|
});
|
|
243
261
|
}
|
|
244
|
-
|
|
262
|
+
Kt(), Yt(), ht ? (ht = !1, L?.moved || tn()) : L?.moved && $t();
|
|
245
263
|
}
|
|
246
|
-
let
|
|
247
|
-
let e =
|
|
264
|
+
let Y = (e, t) => A ? Te(T, A, lt, e, t) : null, Wt = () => {
|
|
265
|
+
let e = A?.plot;
|
|
248
266
|
return e ? [
|
|
249
|
-
e.x +
|
|
250
|
-
e.y +
|
|
267
|
+
e.x + x.stage.offsetLeft,
|
|
268
|
+
e.y + x.stage.offsetTop,
|
|
251
269
|
e.width,
|
|
252
270
|
e.height
|
|
253
271
|
] : null;
|
|
254
|
-
},
|
|
255
|
-
let t =
|
|
256
|
-
I =
|
|
257
|
-
|
|
258
|
-
|
|
272
|
+
}, Gt = (e, t) => q()?.dragPoints ? Y(e, t)?.items.find((e) => T.series[e.seriesIndex].type === "scatter") ?? null : null, X = (e) => {
|
|
273
|
+
let t = I ? I.event : F?.event ?? null;
|
|
274
|
+
I = null;
|
|
275
|
+
let n = !Fe(t, e?.event ?? null);
|
|
276
|
+
F = e, Yt(), n && K("hover", e ? e.event : null);
|
|
277
|
+
}, Kt = () => {
|
|
278
|
+
let e = I;
|
|
279
|
+
if (!e || !A) return;
|
|
280
|
+
I = null;
|
|
281
|
+
let t = Y(e.x, e.y);
|
|
282
|
+
F = t ? {
|
|
283
|
+
event: t,
|
|
284
|
+
anchorX: e.x,
|
|
285
|
+
anchorY: e.y,
|
|
286
|
+
keyboard: !1
|
|
287
|
+
} : null, Fe(e.event, t) && e.event.items.every((e, n) => e.x === t.items[n].x && e.y === t.items[n].y) || K("hover", t);
|
|
288
|
+
}, qt = (e) => {
|
|
289
|
+
let t = Nt()?.render;
|
|
259
290
|
if (t) return t(e);
|
|
260
|
-
let n =
|
|
291
|
+
let n = Ie(T, e, j, ut), r = y.createDocumentFragment(), i = y.createElement("div");
|
|
261
292
|
if (g(i, {
|
|
262
293
|
display: "flex",
|
|
263
294
|
alignItems: "center",
|
|
@@ -265,8 +296,8 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
265
296
|
fontWeight: "600",
|
|
266
297
|
marginBottom: n.subtitle ? "0" : "4px",
|
|
267
298
|
color: "var(--text-color, #1f2937)"
|
|
268
|
-
}), n.titleColor && i.appendChild(_(
|
|
269
|
-
let e =
|
|
299
|
+
}), n.titleColor && i.appendChild(_(y, n.titleColor, "dot")), i.appendChild(y.createTextNode(n.title)), r.append(i), n.subtitle) {
|
|
300
|
+
let e = y.createElement("div");
|
|
270
301
|
g(e, {
|
|
271
302
|
color: "var(--text-secondary-color, #6b7280)",
|
|
272
303
|
fontSize: "11px",
|
|
@@ -275,7 +306,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
275
306
|
}), e.textContent = n.subtitle, r.append(e);
|
|
276
307
|
}
|
|
277
308
|
if (!n.rows.length) return r;
|
|
278
|
-
let a = n.rows.some((e) => e.color), o =
|
|
309
|
+
let a = n.rows.some((e) => e.color), o = y.createElement("div");
|
|
279
310
|
g(o, {
|
|
280
311
|
display: "grid",
|
|
281
312
|
gridTemplateColumns: a ? "auto minmax(0, 1fr) auto" : "minmax(0, 1fr) auto",
|
|
@@ -285,21 +316,21 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
285
316
|
});
|
|
286
317
|
for (let e of n.rows) {
|
|
287
318
|
if (a) {
|
|
288
|
-
let t =
|
|
319
|
+
let t = y.createElement("span");
|
|
289
320
|
g(t, {
|
|
290
321
|
display: "inline-flex",
|
|
291
322
|
width: "14px",
|
|
292
323
|
justifyContent: "flex-start"
|
|
293
|
-
}), e.color && t.appendChild(_(
|
|
324
|
+
}), e.color && t.appendChild(_(y, e.color, "dot")), o.appendChild(t);
|
|
294
325
|
}
|
|
295
|
-
let t =
|
|
326
|
+
let t = y.createElement("span");
|
|
296
327
|
g(t, {
|
|
297
328
|
color: "var(--text-secondary-color, #6b7280)",
|
|
298
329
|
paddingRight: "16px",
|
|
299
330
|
overflow: "hidden",
|
|
300
331
|
textOverflow: "ellipsis"
|
|
301
332
|
}), t.textContent = e.name;
|
|
302
|
-
let n =
|
|
333
|
+
let n = y.createElement("span");
|
|
303
334
|
g(n, {
|
|
304
335
|
fontWeight: "600",
|
|
305
336
|
fontVariantNumeric: "tabular-nums",
|
|
@@ -308,39 +339,39 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
308
339
|
}), n.textContent = e.value, o.append(t, n);
|
|
309
340
|
}
|
|
310
341
|
return r.append(o), r;
|
|
311
|
-
},
|
|
312
|
-
function
|
|
313
|
-
let e =
|
|
314
|
-
|
|
315
|
-
let n =
|
|
316
|
-
if (!
|
|
342
|
+
}, Jt = (e, t, n, r = x.hover) => (e[t] || (e[t] = n(), r.appendChild(e[t])), e[t].style.display = "block", e[t]);
|
|
343
|
+
function Yt() {
|
|
344
|
+
let e = A;
|
|
345
|
+
F && e && W && W.scales === e && W.model === T && Fe(W.event, F.event) || Xt(e);
|
|
346
|
+
let n = x.tooltip;
|
|
347
|
+
if (!F || !e || !Nt() || V?.moved || L?.moved) {
|
|
317
348
|
n.style.display = "none";
|
|
318
349
|
return;
|
|
319
350
|
}
|
|
320
|
-
let r =
|
|
321
|
-
if (!r &&
|
|
351
|
+
let r = Nt()?.render, i, a;
|
|
352
|
+
if (!r && G && G.model === T && G.yTicks === j && Fe(G.event, F.event) && n.style.display === "block") i = G.width, a = G.height;
|
|
322
353
|
else {
|
|
323
|
-
|
|
324
|
-
let e =
|
|
354
|
+
G = null;
|
|
355
|
+
let e = qt(F.event);
|
|
325
356
|
if (e === null || e === "") {
|
|
326
357
|
n.style.display = "none";
|
|
327
358
|
return;
|
|
328
359
|
}
|
|
329
|
-
typeof e == "string" ? (n.textContent = e, n.style.whiteSpace = "pre") : (n.replaceChildren(e), n.style.whiteSpace = "nowrap"), n.style.display = "block", i = n.offsetWidth, a = n.offsetHeight, r || (
|
|
330
|
-
event:
|
|
331
|
-
model:
|
|
332
|
-
yTicks:
|
|
360
|
+
typeof e == "string" ? (n.textContent = e, n.style.whiteSpace = "pre") : (n.replaceChildren(e), n.style.whiteSpace = "nowrap"), n.style.display = "block", i = n.offsetWidth, a = n.offsetHeight, r || (G = {
|
|
361
|
+
event: F.event,
|
|
362
|
+
model: T,
|
|
363
|
+
yTicks: j,
|
|
333
364
|
width: i,
|
|
334
365
|
height: a
|
|
335
366
|
});
|
|
336
367
|
}
|
|
337
|
-
t(n,
|
|
368
|
+
t(n, x.stage, {
|
|
338
369
|
anchor: {
|
|
339
|
-
x:
|
|
340
|
-
y:
|
|
370
|
+
x: F.anchorX,
|
|
371
|
+
y: F.anchorY
|
|
341
372
|
},
|
|
342
|
-
avoid:
|
|
343
|
-
obstacles:
|
|
373
|
+
avoid: et(Re(T, e, F.event), _t),
|
|
374
|
+
obstacles: ze(T, e),
|
|
344
375
|
prefer: e.horizontal ? "vertical" : "side",
|
|
345
376
|
size: {
|
|
346
377
|
width: i,
|
|
@@ -349,20 +380,20 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
349
380
|
animate: !0
|
|
350
381
|
});
|
|
351
382
|
}
|
|
352
|
-
function
|
|
383
|
+
function Xt(e) {
|
|
353
384
|
let t = 0, r = 0, i = 0, l = 0, u = 0, d = !1;
|
|
354
|
-
if (
|
|
355
|
-
|
|
356
|
-
event:
|
|
357
|
-
model:
|
|
385
|
+
if (Zt(), W = null, x.crosshair.style.display = "none", F && e) {
|
|
386
|
+
W = {
|
|
387
|
+
event: F.event,
|
|
388
|
+
model: T,
|
|
358
389
|
scales: e
|
|
359
390
|
};
|
|
360
391
|
let { plot: f } = e;
|
|
361
|
-
|
|
362
|
-
let p =
|
|
392
|
+
x.hover.style.width = `${x.stage.clientWidth}px`, x.hover.style.height = `${x.stage.clientHeight}px`;
|
|
393
|
+
let p = Ce(T, e, F.event, C.crosshair);
|
|
363
394
|
if (p !== null) {
|
|
364
395
|
let t = "1px dashed color-mix(in srgb, var(--text-secondary-color, #6b7280) 45%, transparent)";
|
|
365
|
-
g(
|
|
396
|
+
g(x.crosshair, e.horizontal ? {
|
|
366
397
|
display: "block",
|
|
367
398
|
left: `${f.x}px`,
|
|
368
399
|
top: `${Math.round(p)}px`,
|
|
@@ -380,13 +411,13 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
380
411
|
borderTop: "0"
|
|
381
412
|
});
|
|
382
413
|
}
|
|
383
|
-
let m =
|
|
414
|
+
let m = De(T, e, F.event), ee = m.some((e) => e.kind === "bar");
|
|
384
415
|
for (let e of m) {
|
|
385
416
|
if (e.kind === "band" || e.kind === "guide") {
|
|
386
|
-
let t = e.kind === "band" ?
|
|
417
|
+
let t = e.kind === "band" ? Jt(bt, r++, () => c(y), x.underlay) : Jt(St, l++, () => g(c(y), {
|
|
387
418
|
borderRadius: "0",
|
|
388
419
|
background: "color-mix(in srgb, var(--text-color, #1f2937) 6%, transparent)"
|
|
389
|
-
}),
|
|
420
|
+
}), x.lift);
|
|
390
421
|
g(t, {
|
|
391
422
|
left: `${e.x}px`,
|
|
392
423
|
top: `${e.y}px`,
|
|
@@ -396,20 +427,20 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
396
427
|
continue;
|
|
397
428
|
}
|
|
398
429
|
if (e.kind === "bar") {
|
|
399
|
-
let t =
|
|
400
|
-
H || (H = g(
|
|
430
|
+
let t = T.series.some((e) => !e.hidden && (e.type === "line" || e.type === "area")), r = t ? x.underlay : x.lift;
|
|
431
|
+
H || (H = g(y.createElement("div"), {
|
|
401
432
|
position: "absolute",
|
|
402
433
|
overflow: "hidden"
|
|
403
|
-
})), (H.parentElement !== r || t && r.lastElementChild !== H) && r.appendChild(H), !d && !t && (d = !0, U || (U = g(
|
|
434
|
+
})), (H.parentElement !== r || t && r.lastElementChild !== H) && r.appendChild(H), !d && !t && (d = !0, U || (U = g(y.createElement("div"), {
|
|
404
435
|
position: "absolute",
|
|
405
436
|
background: `color-mix(in srgb, ${s} 42%, transparent)`,
|
|
406
437
|
opacity: "0"
|
|
407
|
-
}),
|
|
438
|
+
}), x.lift.insertBefore(U, H.parentElement === x.lift ? H : null)), g(U, {
|
|
408
439
|
left: `${f.x}px`,
|
|
409
440
|
top: `${f.y}px`,
|
|
410
441
|
width: `${f.width}px`,
|
|
411
442
|
height: `${f.height}px`,
|
|
412
|
-
transition: n(
|
|
443
|
+
transition: n(b) ? "none" : "opacity 140ms ease-out",
|
|
413
444
|
opacity: "1"
|
|
414
445
|
})), g(H, {
|
|
415
446
|
left: `${f.x}px`,
|
|
@@ -417,9 +448,9 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
417
448
|
width: `${f.width}px`,
|
|
418
449
|
height: `${f.height}px`
|
|
419
450
|
});
|
|
420
|
-
let i = `${e.seriesIndex}:${e.index}`, a =
|
|
451
|
+
let i = `${e.seriesIndex}:${e.index}`, a = Ct[u], o = !a || a.style.display !== "block" || a.dataset.key !== i, l = Jt(Ct, u++, () => c(y), H);
|
|
421
452
|
l.dataset.key = i;
|
|
422
|
-
let p =
|
|
453
|
+
let p = je(e), m = e.base === "top" || e.base === "bottom", h = e.ring === null ? null : {
|
|
423
454
|
color: e.ring,
|
|
424
455
|
width: Math.min(e.backdrop ? 2 : 1.5, Math.max(0, (Math.min(p.width, p.height) - 2) / 4))
|
|
425
456
|
};
|
|
@@ -442,15 +473,15 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
442
473
|
}, {
|
|
443
474
|
transform: "none",
|
|
444
475
|
...h ? { boxShadow: ee } : {}
|
|
445
|
-
},
|
|
476
|
+
}, b);
|
|
446
477
|
}
|
|
447
478
|
continue;
|
|
448
479
|
}
|
|
449
480
|
if (e.kind === "cell") {
|
|
450
|
-
let t = `${e.seriesIndex}:${e.index}`, n =
|
|
481
|
+
let t = `${e.seriesIndex}:${e.index}`, n = xt[i], r = !n || n.style.display !== "block" || n.dataset.key !== t, s = Jt(xt, i++, () => g(c(y), {
|
|
451
482
|
zIndex: "1",
|
|
452
483
|
transform: `scale(${o})`
|
|
453
|
-
}),
|
|
484
|
+
}), x.lift);
|
|
454
485
|
s.dataset.key = t;
|
|
455
486
|
let l = {
|
|
456
487
|
color: e.ring,
|
|
@@ -470,10 +501,10 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
470
501
|
}, {
|
|
471
502
|
transform: `scale(${o})`,
|
|
472
503
|
boxShadow: u
|
|
473
|
-
},
|
|
504
|
+
}, b);
|
|
474
505
|
continue;
|
|
475
506
|
}
|
|
476
|
-
let p =
|
|
507
|
+
let p = yt[t], m = !p || p.style.display !== "block" || p.style.left !== `${e.x}px` || p.style.top !== `${e.y}px`, _ = Jt(yt, t++, () => h(y));
|
|
477
508
|
g(_, {
|
|
478
509
|
left: `${e.x}px`,
|
|
479
510
|
top: `${e.y}px`,
|
|
@@ -487,38 +518,38 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
487
518
|
}, {
|
|
488
519
|
transform: "translate(-50%, -50%) scale(1)",
|
|
489
520
|
opacity: "1"
|
|
490
|
-
},
|
|
521
|
+
}, b);
|
|
491
522
|
}
|
|
492
|
-
|
|
493
|
-
} else B && (B.style.display = "none",
|
|
494
|
-
for (let e = t; e <
|
|
495
|
-
for (let e = r; e <
|
|
496
|
-
for (let e = i; e <
|
|
497
|
-
for (let e = l; e <
|
|
498
|
-
for (let e = u; e <
|
|
523
|
+
Qt(e);
|
|
524
|
+
} else B && (B.style.display = "none", _t = null);
|
|
525
|
+
for (let e = t; e < yt.length; e++) yt[e].style.display = "none";
|
|
526
|
+
for (let e = r; e < bt.length; e++) bt[e].style.display = "none";
|
|
527
|
+
for (let e = i; e < xt.length; e++) xt[e].style.display = "none";
|
|
528
|
+
for (let e = l; e < St.length; e++) St[e].style.display = "none";
|
|
529
|
+
for (let e = u; e < Ct.length; e++) Ct[e].style.display = "none";
|
|
499
530
|
U && !d && (U.style.opacity = "0");
|
|
500
531
|
}
|
|
501
|
-
function
|
|
502
|
-
let e =
|
|
532
|
+
function Zt() {
|
|
533
|
+
let e = wt;
|
|
503
534
|
if (!e) return;
|
|
504
|
-
let t =
|
|
535
|
+
let t = F?.event.items[0], n = t ? T.series[t.seriesIndex] : void 0;
|
|
505
536
|
if (!t || !n || n.type !== "heatmap" || t.value === void 0) {
|
|
506
537
|
e.style.display = "none";
|
|
507
538
|
return;
|
|
508
539
|
}
|
|
509
|
-
e.style.display = "block", e.style.left = `${(
|
|
540
|
+
e.style.display = "block", e.style.left = `${(he(n, t.value) * 100).toFixed(2)}%`;
|
|
510
541
|
}
|
|
511
|
-
function
|
|
512
|
-
let t =
|
|
513
|
-
if (t && n?.type === "scatter" && t.label && !L?.moved) {
|
|
514
|
-
let i =
|
|
515
|
-
r =
|
|
542
|
+
function Qt(e) {
|
|
543
|
+
let t = F?.event.items[0], n = t ? T.series[t.seriesIndex] : void 0, r;
|
|
544
|
+
if (t && n?.type === "scatter" && t.label && !L?.moved && q()?.hoverLabel !== !1) {
|
|
545
|
+
let i = Me(n, t.index, e);
|
|
546
|
+
r = gt.find(({ label: e }) => !e.hidden && e.text === t.label && Math.abs(e.x - i.px) < .5 && Math.abs(e.y - i.py) < .5);
|
|
516
547
|
}
|
|
517
|
-
if (
|
|
548
|
+
if (_t = null, !r || !t) {
|
|
518
549
|
B && (B.style.display = "none");
|
|
519
550
|
return;
|
|
520
551
|
}
|
|
521
|
-
B || (B = m(
|
|
552
|
+
B || (B = m(y), B.dataset.hoverMark = "label", x.hover.appendChild(B)), B.textContent = r.label.text, g(B, {
|
|
522
553
|
display: "block",
|
|
523
554
|
left: `${r.box.x - 10}px`,
|
|
524
555
|
top: `${r.box.y + r.box.height / 2}px`,
|
|
@@ -526,26 +557,26 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
526
557
|
background: `color-mix(in srgb, ${t.color} 14%, var(--surface-color, var(--background-color, #fff)))`,
|
|
527
558
|
borderColor: `color-mix(in srgb, ${t.color} 45%, transparent)`,
|
|
528
559
|
boxShadow: "0 4px 12px -4px rgba(15, 23, 42, 0.28)"
|
|
529
|
-
}),
|
|
560
|
+
}), _t = {
|
|
530
561
|
x: r.box.x - 10,
|
|
531
562
|
y: r.box.y + r.box.height / 2 - 11,
|
|
532
563
|
width: r.box.width * 1.1 + 20,
|
|
533
564
|
height: 22
|
|
534
565
|
};
|
|
535
566
|
}
|
|
536
|
-
function
|
|
537
|
-
let e = L, t =
|
|
538
|
-
e?.moved && t &&
|
|
567
|
+
function $t() {
|
|
568
|
+
let e = L, t = A;
|
|
569
|
+
e?.moved && t && en(Le(T, t, st, e.item, e.px, e.py, !!q()?.dropTargets), !0);
|
|
539
570
|
}
|
|
540
|
-
function
|
|
571
|
+
function en(e, t) {
|
|
541
572
|
R || (R = {
|
|
542
|
-
dot: d(
|
|
543
|
-
pill: m(
|
|
544
|
-
placeholder: f(
|
|
545
|
-
target: p(
|
|
546
|
-
}, R.dot.dataset.dragMark = "dot", R.pill.dataset.dragMark = "label", R.placeholder.dataset.dragMark = "origin", R.target.dataset.dragMark = "target",
|
|
573
|
+
dot: d(y),
|
|
574
|
+
pill: m(y),
|
|
575
|
+
placeholder: f(y),
|
|
576
|
+
target: p(y)
|
|
577
|
+
}, R.dot.dataset.dragMark = "dot", R.pill.dataset.dragMark = "label", R.placeholder.dataset.dragMark = "origin", R.target.dataset.dragMark = "target", x.underlay.appendChild(R.target), x.hover.append(R.placeholder, R.dot, R.pill));
|
|
547
578
|
let { dot: n, pill: r, placeholder: i, target: a } = R;
|
|
548
|
-
if (
|
|
579
|
+
if (x.hover.style.width = `${x.stage.clientWidth}px`, x.hover.style.height = `${x.stage.clientHeight}px`, g(n, {
|
|
549
580
|
display: "block",
|
|
550
581
|
left: `${e.x}px`,
|
|
551
582
|
top: `${e.y}px`,
|
|
@@ -553,9 +584,9 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
553
584
|
height: `${e.size}px`,
|
|
554
585
|
background: e.color,
|
|
555
586
|
boxShadow: ee(e.color)
|
|
556
|
-
}), e.label &&
|
|
587
|
+
}), e.label && q()?.dragLabel !== !1) {
|
|
557
588
|
r.textContent = e.label;
|
|
558
|
-
let t =
|
|
589
|
+
let t = A, n = !t || e.x < t.plot.x + t.plot.width * .62;
|
|
559
590
|
g(r, {
|
|
560
591
|
display: "block",
|
|
561
592
|
left: `${e.x}px`,
|
|
@@ -585,68 +616,68 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
585
616
|
boxShadow: `inset 0 0 0 2px color-mix(in srgb, ${e.target.color} 70%, transparent)`
|
|
586
617
|
}) : a.style.display = "none";
|
|
587
618
|
}
|
|
588
|
-
function
|
|
619
|
+
function tn() {
|
|
589
620
|
if (R) for (let e of Object.values(R)) e.style.display = "none";
|
|
590
621
|
}
|
|
591
|
-
let
|
|
592
|
-
e.key === "Escape" && L && (e.preventDefault(), e.stopPropagation(),
|
|
593
|
-
},
|
|
594
|
-
|
|
622
|
+
let nn = (e) => {
|
|
623
|
+
e.key === "Escape" && L && (e.preventDefault(), e.stopPropagation(), an());
|
|
624
|
+
}, rn = (e) => {
|
|
625
|
+
x.stage.hasPointerCapture?.(e) && x.stage.releasePointerCapture(e);
|
|
595
626
|
};
|
|
596
|
-
function
|
|
627
|
+
function an() {
|
|
597
628
|
let e = L;
|
|
598
|
-
e && (L = null,
|
|
629
|
+
e && (L = null, b?.removeEventListener("keydown", nn, !0), rn(e.id), x.stage.style.cursor = "", tn(), e.moved && (J(), K("dragEnd", {
|
|
599
630
|
item: e.item,
|
|
600
631
|
cancelled: !0
|
|
601
632
|
})));
|
|
602
633
|
}
|
|
603
634
|
let Z = (e, t) => {
|
|
604
|
-
let { base: n, minSpan: r } =
|
|
605
|
-
|
|
606
|
-
x:
|
|
607
|
-
y:
|
|
608
|
-
},
|
|
609
|
-
let i =
|
|
610
|
-
|
|
611
|
-
},
|
|
612
|
-
let r =
|
|
635
|
+
let { base: n, minSpan: r } = T;
|
|
636
|
+
E = {
|
|
637
|
+
x: Je(e.x, n.x, r.x),
|
|
638
|
+
y: Je(e.y, n.y, r.y)
|
|
639
|
+
}, D = !Xe(E.x, n.x) || !Xe(E.y, n.y);
|
|
640
|
+
let i = q();
|
|
641
|
+
x.stage.style.cursor = D && i?.pan ? "grab" : "", t && K("zoom", ye(T, E)), J();
|
|
642
|
+
}, on = (e, t, n) => {
|
|
643
|
+
let r = A;
|
|
613
644
|
if (!r) return;
|
|
614
|
-
let i =
|
|
615
|
-
|
|
645
|
+
let i = v(E), a = ae(r, e, t);
|
|
646
|
+
T.zoom.x && (i.x = Qe(E.x, a.x, n)), T.zoom.y && (i.y = Qe(E.y, a.y, n)), Z(i, !0);
|
|
616
647
|
}, Q = (e) => {
|
|
617
|
-
let t =
|
|
648
|
+
let t = x.stage.getBoundingClientRect();
|
|
618
649
|
return {
|
|
619
650
|
x: e.clientX - t.left,
|
|
620
651
|
y: e.clientY - t.top
|
|
621
652
|
};
|
|
622
|
-
},
|
|
623
|
-
let n =
|
|
653
|
+
}, sn = (e, t) => {
|
|
654
|
+
let n = A?.plot;
|
|
624
655
|
return !!n && e >= n.x && e <= n.x + n.width && t >= n.y && t <= n.y + n.height;
|
|
625
|
-
},
|
|
626
|
-
let n =
|
|
656
|
+
}, cn = (e, t) => {
|
|
657
|
+
let n = A;
|
|
627
658
|
if (!n) return null;
|
|
628
|
-
let { plot: r } = n, i = Math.max(r.x, Math.min(r.x + r.width, e)), a = Math.max(r.y, Math.min(r.y + r.height, t)), o =
|
|
659
|
+
let { plot: r } = n, i = Math.max(r.x, Math.min(r.x + r.width, e)), a = Math.max(r.y, Math.min(r.y + r.height, t)), o = ae(n, i, a);
|
|
629
660
|
return {
|
|
630
|
-
x:
|
|
631
|
-
y:
|
|
661
|
+
x: pe(T, o.x),
|
|
662
|
+
y: me(T, o.y)
|
|
632
663
|
};
|
|
633
|
-
},
|
|
664
|
+
}, ln = (e) => {
|
|
634
665
|
let { x: t, y: n } = Q(e);
|
|
635
666
|
if (L && L.id === e.pointerId) {
|
|
636
667
|
let r = L;
|
|
637
668
|
if (r.px = t, r.py = n, !r.moved && Math.hypot(t - r.x, n - r.y) > 3) {
|
|
638
|
-
r.moved = !0,
|
|
639
|
-
let t =
|
|
640
|
-
t &&
|
|
669
|
+
r.moved = !0, x.stage.setPointerCapture?.(e.pointerId), x.stage.style.cursor = "grabbing", b?.addEventListener("keydown", nn, !0), z && (clearTimeout(z.timer), z = null), X(null), J();
|
|
670
|
+
let t = cn(r.x, r.y);
|
|
671
|
+
t && K("dragStart", {
|
|
641
672
|
item: r.item,
|
|
642
673
|
x: t.x,
|
|
643
674
|
y: t.y
|
|
644
675
|
});
|
|
645
676
|
}
|
|
646
677
|
if (r.moved && L === r) {
|
|
647
|
-
|
|
648
|
-
let e =
|
|
649
|
-
e &&
|
|
678
|
+
$t();
|
|
679
|
+
let e = cn(t, n);
|
|
680
|
+
e && K("drag", {
|
|
650
681
|
item: r.item,
|
|
651
682
|
x: e.x,
|
|
652
683
|
y: e.y
|
|
@@ -657,27 +688,27 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
657
688
|
if (V && V.id === e.pointerId) {
|
|
658
689
|
let r = t - V.x, i = n - V.y;
|
|
659
690
|
if (!V.moved && Math.hypot(r, i) > 3) {
|
|
660
|
-
let t =
|
|
661
|
-
|
|
691
|
+
let t = q();
|
|
692
|
+
D && t?.pan && (V.moved = !0, x.stage.setPointerCapture?.(e.pointerId), x.stage.style.cursor = "grabbing");
|
|
662
693
|
}
|
|
663
|
-
if (V.moved &&
|
|
664
|
-
let e =
|
|
665
|
-
|
|
694
|
+
if (V.moved && A) {
|
|
695
|
+
let e = v(V.view), r = ae(A, V.x, V.y), i = ae(A, t, n);
|
|
696
|
+
T.zoom.x && (e.x = Ye(V.view.x, r.x - i.x)), T.zoom.y && (e.y = Ye(V.view.y, r.y - i.y)), Z(e, !0);
|
|
666
697
|
return;
|
|
667
698
|
}
|
|
668
699
|
}
|
|
669
|
-
let r =
|
|
700
|
+
let r = Y(t, n);
|
|
670
701
|
X(r ? {
|
|
671
702
|
event: r,
|
|
672
703
|
anchorX: t,
|
|
673
704
|
anchorY: n,
|
|
674
705
|
keyboard: !1
|
|
675
|
-
} : null), !V &&
|
|
676
|
-
},
|
|
706
|
+
} : null), !V && q()?.dragPoints && (x.stage.style.cursor = Gt(t, n) || D && q()?.pan ? "grab" : "");
|
|
707
|
+
}, un = (e) => {
|
|
677
708
|
if (e.button !== 0) return;
|
|
678
709
|
let { x: t, y: n } = Q(e);
|
|
679
|
-
if (!
|
|
680
|
-
let r =
|
|
710
|
+
if (!sn(t, n)) return;
|
|
711
|
+
let r = Gt(t, n);
|
|
681
712
|
if (r) {
|
|
682
713
|
L = {
|
|
683
714
|
id: e.pointerId,
|
|
@@ -694,86 +725,86 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
694
725
|
id: e.pointerId,
|
|
695
726
|
x: t,
|
|
696
727
|
y: n,
|
|
697
|
-
view:
|
|
728
|
+
view: v(E),
|
|
698
729
|
moved: !1
|
|
699
730
|
};
|
|
700
|
-
},
|
|
731
|
+
}, dn = (e) => {
|
|
701
732
|
if (L && L.id === e.pointerId) {
|
|
702
733
|
let t = L, { x: n, y: r } = Q(e);
|
|
703
734
|
if (t.moved && e.type === "pointercancel") {
|
|
704
|
-
|
|
735
|
+
an();
|
|
705
736
|
return;
|
|
706
737
|
}
|
|
707
|
-
if (L = null,
|
|
738
|
+
if (L = null, b?.removeEventListener("keydown", nn, !0), rn(e.pointerId), x.stage.style.cursor = Gt(n, r) ? "grab" : "", t.moved) {
|
|
708
739
|
t.px = n, t.py = r;
|
|
709
|
-
let e =
|
|
710
|
-
i ? (
|
|
740
|
+
let e = cn(n, r), i = A;
|
|
741
|
+
i ? (en(Le(T, i, st, t.item, n, r, !1), !1), z && clearTimeout(z.timer), z = {
|
|
711
742
|
item: t.item,
|
|
712
743
|
timer: setTimeout(() => {
|
|
713
|
-
z = null, L?.moved ||
|
|
744
|
+
z = null, L?.moved || tn(), J();
|
|
714
745
|
}, 320)
|
|
715
|
-
}) :
|
|
746
|
+
}) : tn(), e && K("drop", {
|
|
716
747
|
item: t.item,
|
|
717
748
|
x: e.x,
|
|
718
749
|
y: e.y
|
|
719
|
-
}),
|
|
750
|
+
}), K("dragEnd", {
|
|
720
751
|
item: t.item,
|
|
721
752
|
cancelled: !e
|
|
722
|
-
}),
|
|
753
|
+
}), Yt();
|
|
723
754
|
} else {
|
|
724
|
-
let e =
|
|
725
|
-
e &&
|
|
755
|
+
let e = Y(n, r);
|
|
756
|
+
e && K("click", e);
|
|
726
757
|
}
|
|
727
758
|
return;
|
|
728
759
|
}
|
|
729
760
|
if (!V || V.id !== e.pointerId) return;
|
|
730
761
|
let t = V.moved;
|
|
731
|
-
if (V = null,
|
|
762
|
+
if (V = null, x.stage.hasPointerCapture?.(e.pointerId) && x.stage.releasePointerCapture(e.pointerId), x.stage.style.cursor = D && q()?.pan ? "grab" : "", t) Yt();
|
|
732
763
|
else {
|
|
733
|
-
let { x: t, y: n } = Q(e), r =
|
|
734
|
-
if (r)
|
|
735
|
-
else if (e.type !== "pointercancel" &&
|
|
736
|
-
let e =
|
|
737
|
-
e &&
|
|
764
|
+
let { x: t, y: n } = Q(e), r = Y(t, n);
|
|
765
|
+
if (r) K("click", r);
|
|
766
|
+
else if (e.type !== "pointercancel" && sn(t, n)) {
|
|
767
|
+
let e = cn(t, n);
|
|
768
|
+
e && K("plotClick", e);
|
|
738
769
|
}
|
|
739
770
|
}
|
|
740
|
-
},
|
|
771
|
+
}, fn = () => {
|
|
741
772
|
!V?.moved && !L?.moved && X(null);
|
|
742
|
-
},
|
|
743
|
-
let t =
|
|
744
|
-
if (!t || t.zoom === !1 || !
|
|
773
|
+
}, pn = (e) => {
|
|
774
|
+
let t = q();
|
|
775
|
+
if (!t || t.zoom === !1 || !T.zoom.x && !T.zoom.y) return;
|
|
745
776
|
let { x: n, y: r } = Q(e);
|
|
746
|
-
if (!
|
|
777
|
+
if (!sn(n, r)) return;
|
|
747
778
|
let i = e.ctrlKey || e.metaKey;
|
|
748
|
-
if (t.wheel === "always" || i) e.preventDefault(),
|
|
749
|
-
else if (
|
|
779
|
+
if (t.wheel === "always" || i) e.preventDefault(), on(n, r, Ze(e.deltaY, e.deltaMode, e.ctrlKey && !e.metaKey));
|
|
780
|
+
else if (D && T.zoom.x && A && !A.horizontal && Math.abs(e.deltaX) > Math.abs(e.deltaY)) {
|
|
750
781
|
e.preventDefault();
|
|
751
|
-
let t =
|
|
752
|
-
t.x =
|
|
782
|
+
let t = v(E);
|
|
783
|
+
t.x = Ye(E.x, e.deltaX * A.xPerPx * (T.x.reverse ? -1 : 1)), Z(t, !0);
|
|
753
784
|
}
|
|
754
|
-
},
|
|
785
|
+
}, mn = (e) => {
|
|
755
786
|
let { x: t, y: n } = Q(e);
|
|
756
|
-
|
|
757
|
-
},
|
|
758
|
-
let n =
|
|
787
|
+
q() && D && sn(t, n) && wn();
|
|
788
|
+
}, hn = (t) => {
|
|
789
|
+
let n = A;
|
|
759
790
|
if (!n) return;
|
|
760
|
-
let r =
|
|
791
|
+
let r = F?.keyboard ? F.event.items[0] : null, i = (r && T.series[r.seriesIndex]) ?? T.series.find((e) => !e.hidden && e.cols.count > 0);
|
|
761
792
|
if (!i) return;
|
|
762
793
|
let { x: a, y: o, count: s } = i.cols, c;
|
|
763
|
-
for (r ? c = r.index + t : (c = i.cols.sorted ? e(a, s,
|
|
794
|
+
for (r ? c = r.index + t : (c = i.cols.sorted ? e(a, s, E.x[0]) : 0, t < 0 && (c = i.cols.sorted ? e(a, s, E.x[1]) - 1 : s - 1)); c >= 0 && c < s && !Number.isFinite(o[c]);) c += t || 1;
|
|
764
795
|
if (c < 0 || c >= s) return;
|
|
765
796
|
let l = n;
|
|
766
|
-
if (
|
|
767
|
-
let e =
|
|
797
|
+
if (T.zoom.x && (a[c] < E.x[0] || a[c] > E.x[1])) {
|
|
798
|
+
let e = E.x[1] - E.x[0];
|
|
768
799
|
Z({
|
|
769
800
|
x: [a[c] - e / 2, a[c] + e / 2],
|
|
770
|
-
y:
|
|
771
|
-
}, !0), l =
|
|
801
|
+
y: E.y
|
|
802
|
+
}, !0), l = A = ie(n.plot, E, T.x.reverse, T.y.reverse, T.horizontal);
|
|
772
803
|
}
|
|
773
|
-
let u =
|
|
774
|
-
items: [d, ...
|
|
804
|
+
let u = Me(i, c, l), d = Ee(i, c), f = {
|
|
805
|
+
items: [d, ...T.tooltipMode === "axis" && i.type !== "scatter" ? (Y(u.px, u.py)?.items ?? []).filter((e) => e.seriesIndex !== i.index) : []],
|
|
775
806
|
x: d.x,
|
|
776
|
-
xLabel:
|
|
807
|
+
xLabel: lt?.formatValue(d.x) ?? String(d.x)
|
|
777
808
|
};
|
|
778
809
|
X({
|
|
779
810
|
event: f,
|
|
@@ -782,97 +813,97 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
782
813
|
keyboard: !0
|
|
783
814
|
});
|
|
784
815
|
let p = d;
|
|
785
|
-
|
|
786
|
-
},
|
|
787
|
-
if (!
|
|
816
|
+
x.live.textContent = `${p.seriesName}: ${f.xLabel}, ${j?.formatValue(p.y) ?? p.y}${p.label ? ` (${p.label})` : ""}`;
|
|
817
|
+
}, gn = (e) => {
|
|
818
|
+
if (!q()?.keyboard) return;
|
|
788
819
|
let t = () => {
|
|
789
|
-
let e =
|
|
820
|
+
let e = A?.plot;
|
|
790
821
|
return e ? [e.x + e.width / 2, e.y + e.height / 2] : [0, 0];
|
|
791
822
|
};
|
|
792
823
|
switch (e.key) {
|
|
793
824
|
case "ArrowRight":
|
|
794
825
|
case "ArrowLeft":
|
|
795
|
-
if (
|
|
796
|
-
e.preventDefault(),
|
|
826
|
+
if (T.horizontal) return;
|
|
827
|
+
e.preventDefault(), hn(e.key === "ArrowRight" === T.x.reverse ? -1 : 1);
|
|
797
828
|
break;
|
|
798
829
|
case "ArrowDown":
|
|
799
830
|
case "ArrowUp":
|
|
800
|
-
if (!
|
|
801
|
-
e.preventDefault(),
|
|
831
|
+
if (!T.horizontal) return;
|
|
832
|
+
e.preventDefault(), hn(e.key === "ArrowDown" === T.x.reverse ? -1 : 1);
|
|
802
833
|
break;
|
|
803
834
|
case "+":
|
|
804
835
|
case "=": {
|
|
805
|
-
if (!
|
|
836
|
+
if (!T.zoom.x && !T.zoom.y) return;
|
|
806
837
|
e.preventDefault();
|
|
807
838
|
let [n, r] = t();
|
|
808
|
-
|
|
839
|
+
on(n, r, .8);
|
|
809
840
|
break;
|
|
810
841
|
}
|
|
811
842
|
case "-":
|
|
812
843
|
case "_": {
|
|
813
|
-
if (!
|
|
844
|
+
if (!T.zoom.x && !T.zoom.y) return;
|
|
814
845
|
e.preventDefault();
|
|
815
846
|
let [n, r] = t();
|
|
816
|
-
|
|
847
|
+
on(n, r, 1.25);
|
|
817
848
|
break;
|
|
818
849
|
}
|
|
819
850
|
case "0":
|
|
820
|
-
e.preventDefault(),
|
|
851
|
+
e.preventDefault(), wn();
|
|
821
852
|
break;
|
|
822
|
-
case "Escape":
|
|
853
|
+
case "Escape": F && (e.preventDefault(), X(null));
|
|
823
854
|
}
|
|
824
|
-
},
|
|
855
|
+
}, _n = () => {
|
|
825
856
|
let e;
|
|
826
857
|
try {
|
|
827
|
-
e =
|
|
858
|
+
e = x.stage.matches(":focus-visible");
|
|
828
859
|
} catch {
|
|
829
860
|
e = !0;
|
|
830
861
|
}
|
|
831
|
-
e && (
|
|
832
|
-
},
|
|
833
|
-
|
|
834
|
-
}, $ =
|
|
835
|
-
$.addEventListener("pointermove",
|
|
836
|
-
let
|
|
837
|
-
|
|
838
|
-
let
|
|
839
|
-
if (
|
|
840
|
-
let e =
|
|
841
|
-
|
|
842
|
-
},
|
|
843
|
-
!
|
|
844
|
-
}),
|
|
845
|
-
let t = ++
|
|
846
|
-
|
|
862
|
+
e && (x.stage.style.boxShadow = "0 0 0 2px var(--primary-color, #4f46e5)");
|
|
863
|
+
}, vn = () => {
|
|
864
|
+
x.stage.style.boxShadow = "", F?.keyboard && X(null);
|
|
865
|
+
}, $ = x.stage;
|
|
866
|
+
$.addEventListener("pointermove", ln), $.addEventListener("pointerdown", un), $.addEventListener("pointerup", dn), $.addEventListener("pointercancel", dn), $.addEventListener("pointerleave", fn), $.addEventListener("wheel", pn, { passive: !1 }), $.addEventListener("dblclick", mn), $.addEventListener("keydown", gn), $.addEventListener("focus", _n), $.addEventListener("blur", vn);
|
|
867
|
+
let yn = typeof ResizeObserver == "function" ? new ResizeObserver(() => J()) : null;
|
|
868
|
+
yn?.observe(x.stage);
|
|
869
|
+
let bn = () => {
|
|
870
|
+
if (N) return;
|
|
871
|
+
let e = Ge(x.root, C.palette);
|
|
872
|
+
Ke(w, e) && Et++, w = e, i(x.tooltip, w), It();
|
|
873
|
+
}, xn = qe(bn), Sn = ue(() => {
|
|
874
|
+
!N && !C.locale && It();
|
|
875
|
+
}), Cn = async (e = /* @__PURE__ */ new Set()) => {
|
|
876
|
+
let t = ++dt, n = await He(C.renderer ?? "auto", () => u(y), (t) => {
|
|
877
|
+
N || M?.kind !== t || (M.destroy(), M.canvas.remove(), M = null, Cn(/* @__PURE__ */ new Set([...e, t])));
|
|
847
878
|
}, e);
|
|
848
|
-
if (
|
|
879
|
+
if (N || t !== dt) {
|
|
849
880
|
n?.destroy();
|
|
850
881
|
return;
|
|
851
882
|
}
|
|
852
|
-
|
|
883
|
+
M && (M.destroy(), M.canvas.remove()), M = n, n && (x.root.dataset.renderer = n.kind, x.stage.insertBefore(n.canvas, x.lift), k = !0, K("renderer", n.kind)), kt(n?.kind ?? null), J();
|
|
853
884
|
};
|
|
854
|
-
function
|
|
855
|
-
|
|
885
|
+
function wn() {
|
|
886
|
+
D && Z(v(T.base), !0);
|
|
856
887
|
}
|
|
857
|
-
|
|
858
|
-
let
|
|
888
|
+
It(), Cn();
|
|
889
|
+
let Tn = Ue(() => C.renderer, () => void Cn());
|
|
859
890
|
return {
|
|
860
891
|
setOptions(e) {
|
|
861
|
-
if (
|
|
862
|
-
let t =
|
|
863
|
-
|
|
892
|
+
if (N) return;
|
|
893
|
+
let t = C;
|
|
894
|
+
C = e, (e.palette ?? []).join() !== (t.palette ?? []).join() && (w = Ge(x.root, e.palette), Et++), (e.renderer ?? "auto") !== (t.renderer ?? "auto") && Cn(), It();
|
|
864
895
|
},
|
|
865
896
|
resize() {
|
|
866
|
-
|
|
897
|
+
J();
|
|
867
898
|
},
|
|
868
|
-
resetZoom:
|
|
869
|
-
getView: () =>
|
|
899
|
+
resetZoom: wn,
|
|
900
|
+
getView: () => ye(T, E),
|
|
870
901
|
setView(e) {
|
|
871
|
-
|
|
902
|
+
N || Z(ve(T, e, E), !1);
|
|
872
903
|
},
|
|
873
|
-
getRenderer: () =>
|
|
904
|
+
getRenderer: () => M?.kind ?? null,
|
|
874
905
|
getPlotRect() {
|
|
875
|
-
let e =
|
|
906
|
+
let e = Wt();
|
|
876
907
|
return e ? {
|
|
877
908
|
x: e[0],
|
|
878
909
|
y: e[1],
|
|
@@ -881,38 +912,45 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
881
912
|
} : null;
|
|
882
913
|
},
|
|
883
914
|
toPixel(e, t) {
|
|
884
|
-
if (!
|
|
885
|
-
let n =
|
|
915
|
+
if (!A) return null;
|
|
916
|
+
let n = oe(A, ge(T, e), _e(T, t));
|
|
886
917
|
return {
|
|
887
|
-
x: n.x +
|
|
888
|
-
y: n.y +
|
|
918
|
+
x: n.x + x.stage.offsetLeft,
|
|
919
|
+
y: n.y + x.stage.offsetTop
|
|
889
920
|
};
|
|
890
921
|
},
|
|
891
922
|
fromPixel(e, t) {
|
|
892
|
-
if (!
|
|
893
|
-
let n =
|
|
923
|
+
if (!A) return null;
|
|
924
|
+
let n = ae(A, e - x.stage.offsetLeft, t - x.stage.offsetTop);
|
|
894
925
|
return {
|
|
895
|
-
x:
|
|
896
|
-
y:
|
|
926
|
+
x: pe(T, n.x),
|
|
927
|
+
y: me(T, n.y)
|
|
897
928
|
};
|
|
898
929
|
},
|
|
899
|
-
ready:
|
|
900
|
-
refreshTheme:
|
|
930
|
+
ready: At,
|
|
931
|
+
refreshTheme: bn,
|
|
932
|
+
setLabelHidden(e) {
|
|
933
|
+
let t = e ? {
|
|
934
|
+
seriesIndex: e.seriesIndex,
|
|
935
|
+
index: e.index
|
|
936
|
+
} : null;
|
|
937
|
+
(t?.seriesIndex !== vt?.seriesIndex || t?.index !== vt?.index) && (vt = t, Ft());
|
|
938
|
+
},
|
|
901
939
|
on(e, t) {
|
|
902
|
-
let n =
|
|
903
|
-
return n || (n = /* @__PURE__ */ new Set(),
|
|
940
|
+
let n = S[e];
|
|
941
|
+
return n || (n = /* @__PURE__ */ new Set(), S[e] = n), n.add(t), () => {
|
|
904
942
|
n.delete(t);
|
|
905
943
|
};
|
|
906
944
|
},
|
|
907
945
|
destroy() {
|
|
908
|
-
if (!
|
|
909
|
-
|
|
910
|
-
for (let e of Object.keys(
|
|
946
|
+
if (!N) {
|
|
947
|
+
N = !0, b?.removeEventListener("keydown", nn, !0), z && clearTimeout(z.timer), P && (b?.cancelAnimationFrame ? b.cancelAnimationFrame(P) : clearTimeout(P)), yn?.disconnect(), Tn(), xn(), Sn(), $.removeEventListener("wheel", pn), M?.destroy(), M = null, r(x.tooltip), x.root.remove();
|
|
948
|
+
for (let e of Object.keys(S)) delete S[e];
|
|
911
949
|
}
|
|
912
950
|
}
|
|
913
951
|
};
|
|
914
952
|
};
|
|
915
953
|
//#endregion
|
|
916
|
-
export {
|
|
954
|
+
export { tt as createChart };
|
|
917
955
|
|
|
918
956
|
//# sourceMappingURL=chart.js.map
|