minerva-design 1.17.2 → 1.18.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 +10 -0
- package/dist/angular/fesm2022/minerva-angular.mjs +27 -25
- package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
- package/dist/angular/types/minerva-angular.d.ts +1 -1
- package/dist/charts/engine/chart.cjs +1 -1
- package/dist/charts/engine/chart.cjs.map +1 -1
- package/dist/charts/engine/chart.js +309 -301
- 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 +87 -69
- package/dist/charts/engine/overlay.js.map +1 -1
- 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/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 +320 -231
- 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 +82 -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 +1514 -1496
- package/dist/taro/style.css +22 -0
- package/dist/uni/style.css +22 -0
- 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 +14 -8
- package/dist/vue/components/QuadrantTaskBoard/QuadrantTaskBoard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/weapp/charts/canvas.js +35 -7
- package/dist/weapp/controls.wxss +22 -0
- package/dist/web-components/components/quadrant-task-board/quadrant-task-board.js +7 -7
- 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,69 @@ 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
|
-
|
|
40
|
+
}, at = [], k = !0, ot = 0, A = [], st = [], j = null, ct = null, M = null, lt = null, N = null, ut = 0, P = !1, F = 0, I = null, dt = "", L = null, R = null, z = null, ft = !1, pt = [], B = null, mt = null, ht = null, V = null, gt = [], _t = [], vt = [], yt = [], bt = [], H = null, U = null, W = null, xt = "", St = 0, Ct = "", wt = "", G = null, K = null, Tt = () => {}, Et = new Promise((e) => {
|
|
41
|
+
Tt = e;
|
|
42
42
|
}), q = (e, t) => {
|
|
43
|
-
|
|
44
|
-
},
|
|
45
|
-
if (
|
|
46
|
-
|
|
47
|
-
let e =
|
|
48
|
-
if (e === !1) return
|
|
43
|
+
S[e]?.forEach((e) => e(t));
|
|
44
|
+
}, Dt = null, Ot = null, J = () => {
|
|
45
|
+
if (Dt === C) return Ot;
|
|
46
|
+
Dt = C;
|
|
47
|
+
let e = C.interaction;
|
|
48
|
+
if (e === !1) return Ot = null;
|
|
49
49
|
let t = typeof e == "object" ? e : {};
|
|
50
|
-
return
|
|
50
|
+
return Ot = {
|
|
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 || F || (F =
|
|
61
|
-
}, kt = () => {
|
|
62
|
-
E = de(w, T, rt, nt);
|
|
63
|
-
let { base: e, zoom: t, minSpan: n } = E;
|
|
64
|
-
O ? (D = {
|
|
65
|
-
x: t.x ? qe(D.x, e.x, n.x) : [...e.x],
|
|
66
|
-
y: t.y ? qe(D.y, e.y, n.y) : [...e.y]
|
|
67
|
-
}, O = !Ye(D.x, e.x) || !Ye(D.y, e.y)) : D = y(e);
|
|
68
|
-
let r = Ue(E, xt, (e) => w.series[e]?.stack);
|
|
69
|
-
r !== St && (St = r, k = {
|
|
70
|
-
x: Qe(e.x),
|
|
71
|
-
y: Qe(e.y)
|
|
72
|
-
}, A = !0, I && !I.keyboard && (I = null, q("hover", null))), z && (clearTimeout(z.timer), z = null, ft = !0), ot = Me(w.annotations, T, E.y.type === "log" ? Math.log10 : void 0, E.x.type === "log" ? Math.log10 : void 0), st = Ne(w.dependencies, T), jt(), Mt(), Y();
|
|
60
|
+
}, kt = () => C.tooltip === !1 ? null : typeof C.tooltip == "object" ? C.tooltip : {}, Y = () => {
|
|
61
|
+
P || F || (F = b?.requestAnimationFrame ? b.requestAnimationFrame(It) : setTimeout(It, 16));
|
|
73
62
|
}, At = () => {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
63
|
+
T = fe(C, w, it, rt);
|
|
64
|
+
let { base: e, zoom: t, minSpan: n } = T;
|
|
65
|
+
D ? (E = {
|
|
66
|
+
x: t.x ? Je(E.x, e.x, n.x) : [...e.x],
|
|
67
|
+
y: t.y ? Je(E.y, e.y, n.y) : [...e.y]
|
|
68
|
+
}, D = !Xe(E.x, e.x) || !Xe(E.y, e.y)) : E = v(e);
|
|
69
|
+
let r = We(T, St, (e) => C.series[e]?.stack);
|
|
70
|
+
r !== Ct && (Ct = r, O = {
|
|
71
|
+
x: $e(e.x),
|
|
72
|
+
y: $e(e.y)
|
|
73
|
+
}, k = !0, I && !I.keyboard && (I = null, q("hover", null))), z && (clearTimeout(z.timer), z = null, ft = !0), A = Ne(C.annotations, w, T.y.type === "log" ? Math.log10 : void 0, T.x.type === "log" ? Math.log10 : void 0), st = Pe(C.dependencies, w), Mt(), Nt(), Y();
|
|
79
74
|
}, jt = () => {
|
|
80
|
-
let e =
|
|
75
|
+
let e = (e, t) => Math.max(Math.abs(e[0] - t), Math.abs(e[1] - t)) > (e[1] - e[0]) * 2e3;
|
|
76
|
+
(e(E.x, O.x) || e(E.y, O.y)) && (O = {
|
|
77
|
+
x: $e(E.x),
|
|
78
|
+
y: $e(E.y)
|
|
79
|
+
}, k = !0);
|
|
80
|
+
}, Mt = () => {
|
|
81
|
+
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
82
|
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 =
|
|
83
|
+
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}`;
|
|
84
|
+
if (s === wt) return;
|
|
85
|
+
wt = s;
|
|
86
|
+
let c = [...x.legend.children].indexOf(y.activeElement);
|
|
87
|
+
if (x.legend.replaceChildren(), W = null, x.legend.style.display = n ? "flex" : "none", n) {
|
|
88
|
+
if (x.legend.style.order = a ? "1" : "0", x.legend.style.padding = a ? "8px 4px 0" : "0 4px 8px", o) {
|
|
89
|
+
x.legend.style.justifyContent = "flex-end";
|
|
90
|
+
let e = y.createElement("div");
|
|
90
91
|
g(e, {
|
|
91
92
|
display: "flex",
|
|
92
93
|
alignItems: "center",
|
|
@@ -95,7 +96,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
95
96
|
fontSize: "11px",
|
|
96
97
|
fontVariantNumeric: "tabular-nums"
|
|
97
98
|
});
|
|
98
|
-
let t = o.labels[0], n = o.labels[o.labels.length - 1], r =
|
|
99
|
+
let t = o.labels[0], n = o.labels[o.labels.length - 1], r = y.createElement("div");
|
|
99
100
|
if (g(r, {
|
|
100
101
|
position: "relative",
|
|
101
102
|
width: "160px",
|
|
@@ -104,7 +105,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
104
105
|
background: `linear-gradient(to right, ${o.stops.join(", ")})`,
|
|
105
106
|
boxShadow: "inset 0 0 0 1px color-mix(in srgb, var(--text-color, #1f2937) 8%, transparent)"
|
|
106
107
|
}), o.labels.length > 2) {
|
|
107
|
-
let e =
|
|
108
|
+
let e = y.createElement("div");
|
|
108
109
|
g(e, {
|
|
109
110
|
position: "absolute",
|
|
110
111
|
left: "50%",
|
|
@@ -114,7 +115,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
114
115
|
background: "color-mix(in srgb, var(--text-color, #1f2937) 35%, transparent)"
|
|
115
116
|
}), r.appendChild(e);
|
|
116
117
|
}
|
|
117
|
-
W =
|
|
118
|
+
W = y.createElement("div"), g(W, {
|
|
118
119
|
position: "absolute",
|
|
119
120
|
top: "-3px",
|
|
120
121
|
width: "4px",
|
|
@@ -126,17 +127,17 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
126
127
|
display: "none"
|
|
127
128
|
}), r.appendChild(W);
|
|
128
129
|
let i = (e) => {
|
|
129
|
-
let t =
|
|
130
|
+
let t = y.createElement("span");
|
|
130
131
|
return t.textContent = e, t;
|
|
131
132
|
};
|
|
132
|
-
e.append(i(t?.text ?? ""), r, i(n?.text ?? "")),
|
|
133
|
+
e.append(i(t?.text ?? ""), r, i(n?.text ?? "")), x.legend.appendChild(e);
|
|
133
134
|
return;
|
|
134
135
|
}
|
|
135
|
-
|
|
136
|
-
for (let e of
|
|
137
|
-
let t =
|
|
136
|
+
x.legend.style.justifyContent = "";
|
|
137
|
+
for (let e of T.series) {
|
|
138
|
+
let t = y.createElement(i ? "button" : "span");
|
|
138
139
|
t instanceof HTMLButtonElement && (t.type = "button", t.setAttribute("aria-pressed", String(!e.hidden)), t.addEventListener("click", () => {
|
|
139
|
-
|
|
140
|
+
it.has(e.id) ? it.delete(e.id) : it.add(e.id), At();
|
|
140
141
|
})), g(t, {
|
|
141
142
|
display: "inline-flex",
|
|
142
143
|
alignItems: "center",
|
|
@@ -151,68 +152,68 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
151
152
|
cursor: i ? "pointer" : "default",
|
|
152
153
|
opacity: e.hidden ? "0.45" : "1",
|
|
153
154
|
textDecoration: e.hidden ? "line-through" : "none"
|
|
154
|
-
}), t.append(_(
|
|
155
|
+
}), t.append(_(y, e.colorCss, ke(e.type)), y.createTextNode(e.name)), x.legend.appendChild(t);
|
|
155
156
|
}
|
|
156
|
-
c >= 0 &&
|
|
157
|
+
c >= 0 && x.legend.children[c]?.focus();
|
|
157
158
|
}
|
|
158
|
-
},
|
|
159
|
-
|
|
159
|
+
}, Nt = () => {
|
|
160
|
+
x.stage.setAttribute("aria-label", C.ariaLabel ?? de(T));
|
|
160
161
|
let e = J()?.keyboard;
|
|
161
|
-
|
|
162
|
-
},
|
|
162
|
+
x.stage.style.touchAction = J()?.dragPoints ? "none" : "pan-y", e ? x.stage.tabIndex = 0 : x.stage.removeAttribute("tabindex");
|
|
163
|
+
}, Pt = (e, t, n, r) => {
|
|
163
164
|
let i = Math.max(1, Math.round(t * r)), a = Math.max(1, Math.round(n * r));
|
|
164
165
|
e.width !== i && (e.width = i), e.height !== a && (e.height = a), e.style.width = `${t}px`, e.style.height = `${n}px`;
|
|
165
|
-
},
|
|
166
|
+
}, Ft = (e, t, n) => {
|
|
166
167
|
let r = 2 / (e[1] - e[0]), i = (t - e[0]) * r - 1;
|
|
167
168
|
return n ? [-r, -i] : [r, i];
|
|
168
169
|
};
|
|
169
|
-
function
|
|
170
|
+
function It() {
|
|
170
171
|
if (F = 0, P) return;
|
|
171
|
-
let e =
|
|
172
|
+
let e = x.stage.clientWidth, t = x.stage.clientHeight;
|
|
172
173
|
if (e <= 0 || t <= 0) return;
|
|
173
|
-
let n =
|
|
174
|
-
|
|
175
|
-
let r =
|
|
176
|
-
r && (r.setTransform(n, 0, 0, n, 0, 0), r.font =
|
|
177
|
-
let a =
|
|
178
|
-
model:
|
|
179
|
-
view:
|
|
180
|
-
theme:
|
|
174
|
+
let n = b?.devicePixelRatio || 1;
|
|
175
|
+
Pt(x.background, e, t, n), Pt(x.foreground, e, t, n);
|
|
176
|
+
let r = x.background.getContext("2d"), i = x.foreground.getContext("2d");
|
|
177
|
+
r && (r.setTransform(n, 0, 0, n, 0, 0), r.font = le(w));
|
|
178
|
+
let a = Oe({
|
|
179
|
+
model: T,
|
|
180
|
+
view: E,
|
|
181
|
+
theme: w,
|
|
181
182
|
width: e,
|
|
182
183
|
height: t,
|
|
183
|
-
padding:
|
|
184
|
-
measure: r ? (e) => r.measureText(e).width : (e) => e.length *
|
|
184
|
+
padding: C.padding,
|
|
185
|
+
measure: r ? (e) => r.measureText(e).width : (e) => e.length * w.fontSize * .6
|
|
185
186
|
}), { plot: o } = a;
|
|
186
187
|
ct = a.xTicks, M = a.yTicks, lt = a.y2Ticks, j = a.scales;
|
|
187
|
-
let s =
|
|
188
|
+
let s = Rt();
|
|
188
189
|
if (s && s.join() !== dt && (dt = s.join(), q("layout", {
|
|
189
190
|
x: s[0],
|
|
190
191
|
y: s[1],
|
|
191
192
|
width: s[2],
|
|
192
193
|
height: s[3]
|
|
193
|
-
})), r &&
|
|
194
|
+
})), r && se(r, {
|
|
194
195
|
width: e,
|
|
195
196
|
height: t,
|
|
196
197
|
scales: j,
|
|
197
|
-
x:
|
|
198
|
-
y:
|
|
198
|
+
x: T.x,
|
|
199
|
+
y: T.y,
|
|
199
200
|
xTicks: ct,
|
|
200
201
|
yTicks: M,
|
|
201
|
-
y2:
|
|
202
|
+
y2: T.y2,
|
|
202
203
|
y2Ticks: lt,
|
|
203
|
-
theme:
|
|
204
|
-
annotations:
|
|
205
|
-
}), i && (i.setTransform(n, 0, 0, n, 0, 0), pt =
|
|
204
|
+
theme: w,
|
|
205
|
+
annotations: A
|
|
206
|
+
}), i && (i.setTransform(n, 0, 0, n, 0, 0), pt = ce(i, {
|
|
206
207
|
width: e,
|
|
207
208
|
height: t,
|
|
208
209
|
scales: j,
|
|
209
|
-
theme:
|
|
210
|
-
annotations:
|
|
211
|
-
pointLabels:
|
|
212
|
-
connectors:
|
|
213
|
-
arrows:
|
|
210
|
+
theme: w,
|
|
211
|
+
annotations: A,
|
|
212
|
+
pointLabels: be(T, E, j, M, w.background, L?.moved ? L.item : z?.item ?? null, ht),
|
|
213
|
+
connectors: Se(T, j),
|
|
214
|
+
arrows: we(T, j, st)
|
|
214
215
|
})), N) {
|
|
215
|
-
let e = N.canvas, t =
|
|
216
|
+
let e = N.canvas, t = T.horizontal, r = t ? o.height : o.width, i = t ? o.width : o.height;
|
|
216
217
|
g(e, {
|
|
217
218
|
left: `${o.x}px`,
|
|
218
219
|
top: `${o.y}px`,
|
|
@@ -222,14 +223,14 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
222
223
|
transform: t ? "matrix(0, 1, 1, 0, 0, 0)" : ""
|
|
223
224
|
});
|
|
224
225
|
let a = Math.max(1, Math.round(r * n)), s = Math.max(1, Math.round(i * n));
|
|
225
|
-
(e.width !== a || e.height !== s) && N.resize(a, s),
|
|
226
|
+
(e.width !== a || e.height !== s) && N.resize(a, s), jt();
|
|
226
227
|
let c = {
|
|
227
228
|
x: 1 / Math.abs(j.xPerPx),
|
|
228
229
|
y: 1 / Math.abs(j.yPerPx)
|
|
229
|
-
}, l =
|
|
230
|
-
l !==
|
|
231
|
-
let [u, d] =
|
|
232
|
-
N.render(
|
|
230
|
+
}, l = Ve(T, c);
|
|
231
|
+
l !== xt && (xt = l, k = !0), k && (ot++, at = Be(T, O, ot, c), k = !1);
|
|
232
|
+
let [u, d] = Ft(E.x, O.x, T.x.reverse), [f, p] = Ft(E.y, O.y, t ? !T.y.reverse : T.y.reverse);
|
|
233
|
+
N.render(at, {
|
|
233
234
|
transform: {
|
|
234
235
|
xScale: u,
|
|
235
236
|
xOffset: d,
|
|
@@ -241,23 +242,23 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
241
242
|
dpr: n
|
|
242
243
|
});
|
|
243
244
|
}
|
|
244
|
-
|
|
245
|
+
Ht(), ft ? (ft = !1, L?.moved || Jt()) : L?.moved && Kt();
|
|
245
246
|
}
|
|
246
|
-
let
|
|
247
|
+
let Lt = (e, t) => j ? Te(T, j, ct, e, t) : null, Rt = () => {
|
|
247
248
|
let e = j?.plot;
|
|
248
249
|
return e ? [
|
|
249
|
-
e.x +
|
|
250
|
-
e.y +
|
|
250
|
+
e.x + x.stage.offsetLeft,
|
|
251
|
+
e.y + x.stage.offsetTop,
|
|
251
252
|
e.width,
|
|
252
253
|
e.height
|
|
253
254
|
] : null;
|
|
254
|
-
},
|
|
255
|
-
let t = !
|
|
256
|
-
I = e,
|
|
257
|
-
},
|
|
258
|
-
let t =
|
|
255
|
+
}, zt = (e, t) => J()?.dragPoints ? Lt(e, t)?.items.find((e) => T.series[e.seriesIndex].type === "scatter") ?? null : null, X = (e) => {
|
|
256
|
+
let t = !Fe(I?.event ?? null, e?.event ?? null);
|
|
257
|
+
I = e, Ht(), t && q("hover", e ? e.event : null);
|
|
258
|
+
}, Bt = (e) => {
|
|
259
|
+
let t = kt()?.render;
|
|
259
260
|
if (t) return t(e);
|
|
260
|
-
let n =
|
|
261
|
+
let n = Ie(T, e, M, lt), r = y.createDocumentFragment(), i = y.createElement("div");
|
|
261
262
|
if (g(i, {
|
|
262
263
|
display: "flex",
|
|
263
264
|
alignItems: "center",
|
|
@@ -265,8 +266,8 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
265
266
|
fontWeight: "600",
|
|
266
267
|
marginBottom: n.subtitle ? "0" : "4px",
|
|
267
268
|
color: "var(--text-color, #1f2937)"
|
|
268
|
-
}), n.titleColor && i.appendChild(_(
|
|
269
|
-
let e =
|
|
269
|
+
}), n.titleColor && i.appendChild(_(y, n.titleColor, "dot")), i.appendChild(y.createTextNode(n.title)), r.append(i), n.subtitle) {
|
|
270
|
+
let e = y.createElement("div");
|
|
270
271
|
g(e, {
|
|
271
272
|
color: "var(--text-secondary-color, #6b7280)",
|
|
272
273
|
fontSize: "11px",
|
|
@@ -275,7 +276,7 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
275
276
|
}), e.textContent = n.subtitle, r.append(e);
|
|
276
277
|
}
|
|
277
278
|
if (!n.rows.length) return r;
|
|
278
|
-
let a = n.rows.some((e) => e.color), o =
|
|
279
|
+
let a = n.rows.some((e) => e.color), o = y.createElement("div");
|
|
279
280
|
g(o, {
|
|
280
281
|
display: "grid",
|
|
281
282
|
gridTemplateColumns: a ? "auto minmax(0, 1fr) auto" : "minmax(0, 1fr) auto",
|
|
@@ -285,21 +286,21 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
285
286
|
});
|
|
286
287
|
for (let e of n.rows) {
|
|
287
288
|
if (a) {
|
|
288
|
-
let t =
|
|
289
|
+
let t = y.createElement("span");
|
|
289
290
|
g(t, {
|
|
290
291
|
display: "inline-flex",
|
|
291
292
|
width: "14px",
|
|
292
293
|
justifyContent: "flex-start"
|
|
293
|
-
}), e.color && t.appendChild(_(
|
|
294
|
+
}), e.color && t.appendChild(_(y, e.color, "dot")), o.appendChild(t);
|
|
294
295
|
}
|
|
295
|
-
let t =
|
|
296
|
+
let t = y.createElement("span");
|
|
296
297
|
g(t, {
|
|
297
298
|
color: "var(--text-secondary-color, #6b7280)",
|
|
298
299
|
paddingRight: "16px",
|
|
299
300
|
overflow: "hidden",
|
|
300
301
|
textOverflow: "ellipsis"
|
|
301
302
|
}), t.textContent = e.name;
|
|
302
|
-
let n =
|
|
303
|
+
let n = y.createElement("span");
|
|
303
304
|
g(n, {
|
|
304
305
|
fontWeight: "600",
|
|
305
306
|
fontVariantNumeric: "tabular-nums",
|
|
@@ -308,39 +309,39 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
308
309
|
}), n.textContent = e.value, o.append(t, n);
|
|
309
310
|
}
|
|
310
311
|
return r.append(o), r;
|
|
311
|
-
},
|
|
312
|
-
function
|
|
312
|
+
}, Vt = (e, t, n, r = x.hover) => (e[t] || (e[t] = n(), r.appendChild(e[t])), e[t].style.display = "block", e[t]);
|
|
313
|
+
function Ht() {
|
|
313
314
|
let e = j;
|
|
314
|
-
I && e && G && G.scales === e && G.model ===
|
|
315
|
-
let n =
|
|
316
|
-
if (!I || !e || !
|
|
315
|
+
I && e && G && G.scales === e && G.model === T && Fe(G.event, I.event) || Ut(e);
|
|
316
|
+
let n = x.tooltip;
|
|
317
|
+
if (!I || !e || !kt() || V?.moved || L?.moved) {
|
|
317
318
|
n.style.display = "none";
|
|
318
319
|
return;
|
|
319
320
|
}
|
|
320
|
-
let r =
|
|
321
|
-
if (!r && K && K.model ===
|
|
321
|
+
let r = kt()?.render, i, a;
|
|
322
|
+
if (!r && K && K.model === T && K.yTicks === M && Fe(K.event, I.event) && n.style.display === "block") i = K.width, a = K.height;
|
|
322
323
|
else {
|
|
323
324
|
K = null;
|
|
324
|
-
let e =
|
|
325
|
+
let e = Bt(I.event);
|
|
325
326
|
if (e === null || e === "") {
|
|
326
327
|
n.style.display = "none";
|
|
327
328
|
return;
|
|
328
329
|
}
|
|
329
330
|
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 || (K = {
|
|
330
331
|
event: I.event,
|
|
331
|
-
model:
|
|
332
|
+
model: T,
|
|
332
333
|
yTicks: M,
|
|
333
334
|
width: i,
|
|
334
335
|
height: a
|
|
335
336
|
});
|
|
336
337
|
}
|
|
337
|
-
t(n,
|
|
338
|
+
t(n, x.stage, {
|
|
338
339
|
anchor: {
|
|
339
340
|
x: I.anchorX,
|
|
340
341
|
y: I.anchorY
|
|
341
342
|
},
|
|
342
|
-
avoid:
|
|
343
|
-
obstacles:
|
|
343
|
+
avoid: et(Re(T, e, I.event), mt),
|
|
344
|
+
obstacles: ze(T, e),
|
|
344
345
|
prefer: e.horizontal ? "vertical" : "side",
|
|
345
346
|
size: {
|
|
346
347
|
width: i,
|
|
@@ -349,20 +350,20 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
349
350
|
animate: !0
|
|
350
351
|
});
|
|
351
352
|
}
|
|
352
|
-
function
|
|
353
|
+
function Ut(e) {
|
|
353
354
|
let t = 0, r = 0, i = 0, l = 0, u = 0, d = !1;
|
|
354
|
-
if (
|
|
355
|
+
if (Wt(), G = null, x.crosshair.style.display = "none", I && e) {
|
|
355
356
|
G = {
|
|
356
357
|
event: I.event,
|
|
357
|
-
model:
|
|
358
|
+
model: T,
|
|
358
359
|
scales: e
|
|
359
360
|
};
|
|
360
361
|
let { plot: f } = e;
|
|
361
|
-
|
|
362
|
-
let p =
|
|
362
|
+
x.hover.style.width = `${x.stage.clientWidth}px`, x.hover.style.height = `${x.stage.clientHeight}px`;
|
|
363
|
+
let p = Ce(T, e, I.event, C.crosshair);
|
|
363
364
|
if (p !== null) {
|
|
364
365
|
let t = "1px dashed color-mix(in srgb, var(--text-secondary-color, #6b7280) 45%, transparent)";
|
|
365
|
-
g(
|
|
366
|
+
g(x.crosshair, e.horizontal ? {
|
|
366
367
|
display: "block",
|
|
367
368
|
left: `${f.x}px`,
|
|
368
369
|
top: `${Math.round(p)}px`,
|
|
@@ -380,13 +381,13 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
380
381
|
borderTop: "0"
|
|
381
382
|
});
|
|
382
383
|
}
|
|
383
|
-
let m =
|
|
384
|
+
let m = De(T, e, I.event), ee = m.some((e) => e.kind === "bar");
|
|
384
385
|
for (let e of m) {
|
|
385
386
|
if (e.kind === "band" || e.kind === "guide") {
|
|
386
|
-
let t = e.kind === "band" ?
|
|
387
|
+
let t = e.kind === "band" ? Vt(_t, r++, () => c(y), x.underlay) : Vt(yt, l++, () => g(c(y), {
|
|
387
388
|
borderRadius: "0",
|
|
388
389
|
background: "color-mix(in srgb, var(--text-color, #1f2937) 6%, transparent)"
|
|
389
|
-
}),
|
|
390
|
+
}), x.lift);
|
|
390
391
|
g(t, {
|
|
391
392
|
left: `${e.x}px`,
|
|
392
393
|
top: `${e.y}px`,
|
|
@@ -396,20 +397,20 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
396
397
|
continue;
|
|
397
398
|
}
|
|
398
399
|
if (e.kind === "bar") {
|
|
399
|
-
let t =
|
|
400
|
-
H || (H = g(
|
|
400
|
+
let t = T.series.some((e) => !e.hidden && (e.type === "line" || e.type === "area")), r = t ? x.underlay : x.lift;
|
|
401
|
+
H || (H = g(y.createElement("div"), {
|
|
401
402
|
position: "absolute",
|
|
402
403
|
overflow: "hidden"
|
|
403
|
-
})), (H.parentElement !== r || t && r.lastElementChild !== H) && r.appendChild(H), !d && !t && (d = !0, U || (U = g(
|
|
404
|
+
})), (H.parentElement !== r || t && r.lastElementChild !== H) && r.appendChild(H), !d && !t && (d = !0, U || (U = g(y.createElement("div"), {
|
|
404
405
|
position: "absolute",
|
|
405
406
|
background: `color-mix(in srgb, ${s} 42%, transparent)`,
|
|
406
407
|
opacity: "0"
|
|
407
|
-
}),
|
|
408
|
+
}), x.lift.insertBefore(U, H.parentElement === x.lift ? H : null)), g(U, {
|
|
408
409
|
left: `${f.x}px`,
|
|
409
410
|
top: `${f.y}px`,
|
|
410
411
|
width: `${f.width}px`,
|
|
411
412
|
height: `${f.height}px`,
|
|
412
|
-
transition: n(
|
|
413
|
+
transition: n(b) ? "none" : "opacity 140ms ease-out",
|
|
413
414
|
opacity: "1"
|
|
414
415
|
})), g(H, {
|
|
415
416
|
left: `${f.x}px`,
|
|
@@ -417,9 +418,9 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
417
418
|
width: `${f.width}px`,
|
|
418
419
|
height: `${f.height}px`
|
|
419
420
|
});
|
|
420
|
-
let i = `${e.seriesIndex}:${e.index}`, a =
|
|
421
|
+
let i = `${e.seriesIndex}:${e.index}`, a = bt[u], o = !a || a.style.display !== "block" || a.dataset.key !== i, l = Vt(bt, u++, () => c(y), H);
|
|
421
422
|
l.dataset.key = i;
|
|
422
|
-
let p =
|
|
423
|
+
let p = je(e), m = e.base === "top" || e.base === "bottom", h = e.ring === null ? null : {
|
|
423
424
|
color: e.ring,
|
|
424
425
|
width: Math.min(e.backdrop ? 2 : 1.5, Math.max(0, (Math.min(p.width, p.height) - 2) / 4))
|
|
425
426
|
};
|
|
@@ -442,15 +443,15 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
442
443
|
}, {
|
|
443
444
|
transform: "none",
|
|
444
445
|
...h ? { boxShadow: ee } : {}
|
|
445
|
-
},
|
|
446
|
+
}, b);
|
|
446
447
|
}
|
|
447
448
|
continue;
|
|
448
449
|
}
|
|
449
450
|
if (e.kind === "cell") {
|
|
450
|
-
let t = `${e.seriesIndex}:${e.index}`, n =
|
|
451
|
+
let t = `${e.seriesIndex}:${e.index}`, n = vt[i], r = !n || n.style.display !== "block" || n.dataset.key !== t, s = Vt(vt, i++, () => g(c(y), {
|
|
451
452
|
zIndex: "1",
|
|
452
453
|
transform: `scale(${o})`
|
|
453
|
-
}),
|
|
454
|
+
}), x.lift);
|
|
454
455
|
s.dataset.key = t;
|
|
455
456
|
let l = {
|
|
456
457
|
color: e.ring,
|
|
@@ -470,10 +471,10 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
470
471
|
}, {
|
|
471
472
|
transform: `scale(${o})`,
|
|
472
473
|
boxShadow: u
|
|
473
|
-
},
|
|
474
|
+
}, b);
|
|
474
475
|
continue;
|
|
475
476
|
}
|
|
476
|
-
let p =
|
|
477
|
+
let p = gt[t], m = !p || p.style.display !== "block" || p.style.left !== `${e.x}px` || p.style.top !== `${e.y}px`, _ = Vt(gt, t++, () => h(y));
|
|
477
478
|
g(_, {
|
|
478
479
|
left: `${e.x}px`,
|
|
479
480
|
top: `${e.y}px`,
|
|
@@ -487,38 +488,38 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
487
488
|
}, {
|
|
488
489
|
transform: "translate(-50%, -50%) scale(1)",
|
|
489
490
|
opacity: "1"
|
|
490
|
-
},
|
|
491
|
+
}, b);
|
|
491
492
|
}
|
|
492
|
-
|
|
493
|
+
Gt(e);
|
|
493
494
|
} else B && (B.style.display = "none", mt = null);
|
|
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 <
|
|
495
|
+
for (let e = t; e < gt.length; e++) gt[e].style.display = "none";
|
|
496
|
+
for (let e = r; e < _t.length; e++) _t[e].style.display = "none";
|
|
497
|
+
for (let e = i; e < vt.length; e++) vt[e].style.display = "none";
|
|
498
|
+
for (let e = l; e < yt.length; e++) yt[e].style.display = "none";
|
|
499
|
+
for (let e = u; e < bt.length; e++) bt[e].style.display = "none";
|
|
499
500
|
U && !d && (U.style.opacity = "0");
|
|
500
501
|
}
|
|
501
|
-
function
|
|
502
|
+
function Wt() {
|
|
502
503
|
let e = W;
|
|
503
504
|
if (!e) return;
|
|
504
|
-
let t = I?.event.items[0], n = t ?
|
|
505
|
+
let t = I?.event.items[0], n = t ? T.series[t.seriesIndex] : void 0;
|
|
505
506
|
if (!t || !n || n.type !== "heatmap" || t.value === void 0) {
|
|
506
507
|
e.style.display = "none";
|
|
507
508
|
return;
|
|
508
509
|
}
|
|
509
|
-
e.style.display = "block", e.style.left = `${(
|
|
510
|
+
e.style.display = "block", e.style.left = `${(he(n, t.value) * 100).toFixed(2)}%`;
|
|
510
511
|
}
|
|
511
|
-
function
|
|
512
|
-
let t = I?.event.items[0], n = t ?
|
|
513
|
-
if (t && n?.type === "scatter" && t.label && !L?.moved) {
|
|
514
|
-
let i =
|
|
515
|
-
r = pt.find(({ label: e }) => e.text === t.label && Math.abs(e.x - i.px) < .5 && Math.abs(e.y - i.py) < .5);
|
|
512
|
+
function Gt(e) {
|
|
513
|
+
let t = I?.event.items[0], n = t ? T.series[t.seriesIndex] : void 0, r;
|
|
514
|
+
if (t && n?.type === "scatter" && t.label && !L?.moved && J()?.hoverLabel !== !1) {
|
|
515
|
+
let i = Me(n, t.index, e);
|
|
516
|
+
r = pt.find(({ label: e }) => !e.hidden && e.text === t.label && Math.abs(e.x - i.px) < .5 && Math.abs(e.y - i.py) < .5);
|
|
516
517
|
}
|
|
517
518
|
if (mt = null, !r || !t) {
|
|
518
519
|
B && (B.style.display = "none");
|
|
519
520
|
return;
|
|
520
521
|
}
|
|
521
|
-
B || (B = m(
|
|
522
|
+
B || (B = m(y), B.dataset.hoverMark = "label", x.hover.appendChild(B)), B.textContent = r.label.text, g(B, {
|
|
522
523
|
display: "block",
|
|
523
524
|
left: `${r.box.x - 10}px`,
|
|
524
525
|
top: `${r.box.y + r.box.height / 2}px`,
|
|
@@ -533,19 +534,19 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
533
534
|
height: 22
|
|
534
535
|
};
|
|
535
536
|
}
|
|
536
|
-
function
|
|
537
|
+
function Kt() {
|
|
537
538
|
let e = L, t = j;
|
|
538
|
-
e?.moved && t &&
|
|
539
|
+
e?.moved && t && qt(Le(T, t, A, e.item, e.px, e.py, !!J()?.dropTargets), !0);
|
|
539
540
|
}
|
|
540
|
-
function
|
|
541
|
+
function qt(e, t) {
|
|
541
542
|
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",
|
|
543
|
+
dot: d(y),
|
|
544
|
+
pill: m(y),
|
|
545
|
+
placeholder: f(y),
|
|
546
|
+
target: p(y)
|
|
547
|
+
}, 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
548
|
let { dot: n, pill: r, placeholder: i, target: a } = R;
|
|
548
|
-
if (
|
|
549
|
+
if (x.hover.style.width = `${x.stage.clientWidth}px`, x.hover.style.height = `${x.stage.clientHeight}px`, g(n, {
|
|
549
550
|
display: "block",
|
|
550
551
|
left: `${e.x}px`,
|
|
551
552
|
top: `${e.y}px`,
|
|
@@ -585,58 +586,58 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
585
586
|
boxShadow: `inset 0 0 0 2px color-mix(in srgb, ${e.target.color} 70%, transparent)`
|
|
586
587
|
}) : a.style.display = "none";
|
|
587
588
|
}
|
|
588
|
-
function
|
|
589
|
+
function Jt() {
|
|
589
590
|
if (R) for (let e of Object.values(R)) e.style.display = "none";
|
|
590
591
|
}
|
|
591
|
-
let
|
|
592
|
-
e.key === "Escape" && L && (e.preventDefault(), e.stopPropagation(),
|
|
593
|
-
},
|
|
594
|
-
|
|
592
|
+
let Yt = (e) => {
|
|
593
|
+
e.key === "Escape" && L && (e.preventDefault(), e.stopPropagation(), Zt());
|
|
594
|
+
}, Xt = (e) => {
|
|
595
|
+
x.stage.hasPointerCapture?.(e) && x.stage.releasePointerCapture(e);
|
|
595
596
|
};
|
|
596
|
-
function
|
|
597
|
+
function Zt() {
|
|
597
598
|
let e = L;
|
|
598
|
-
e && (L = null,
|
|
599
|
+
e && (L = null, b?.removeEventListener("keydown", Yt, !0), Xt(e.id), x.stage.style.cursor = "", Jt(), e.moved && (Y(), q("dragEnd", {
|
|
599
600
|
item: e.item,
|
|
600
601
|
cancelled: !0
|
|
601
602
|
})));
|
|
602
603
|
}
|
|
603
604
|
let Z = (e, t) => {
|
|
604
|
-
let { base: n, minSpan: r } =
|
|
605
|
-
|
|
606
|
-
x:
|
|
607
|
-
y:
|
|
608
|
-
},
|
|
605
|
+
let { base: n, minSpan: r } = T;
|
|
606
|
+
E = {
|
|
607
|
+
x: Je(e.x, n.x, r.x),
|
|
608
|
+
y: Je(e.y, n.y, r.y)
|
|
609
|
+
}, D = !Xe(E.x, n.x) || !Xe(E.y, n.y);
|
|
609
610
|
let i = J();
|
|
610
|
-
|
|
611
|
-
},
|
|
611
|
+
x.stage.style.cursor = D && i?.pan ? "grab" : "", t && q("zoom", ye(T, E)), Y();
|
|
612
|
+
}, Qt = (e, t, n) => {
|
|
612
613
|
let r = j;
|
|
613
614
|
if (!r) return;
|
|
614
|
-
let i =
|
|
615
|
-
|
|
615
|
+
let i = v(E), a = ae(r, e, t);
|
|
616
|
+
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
617
|
}, Q = (e) => {
|
|
617
|
-
let t =
|
|
618
|
+
let t = x.stage.getBoundingClientRect();
|
|
618
619
|
return {
|
|
619
620
|
x: e.clientX - t.left,
|
|
620
621
|
y: e.clientY - t.top
|
|
621
622
|
};
|
|
622
|
-
},
|
|
623
|
+
}, $t = (e, t) => {
|
|
623
624
|
let n = j?.plot;
|
|
624
625
|
return !!n && e >= n.x && e <= n.x + n.width && t >= n.y && t <= n.y + n.height;
|
|
625
|
-
},
|
|
626
|
+
}, en = (e, t) => {
|
|
626
627
|
let n = j;
|
|
627
628
|
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 =
|
|
629
|
+
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
630
|
return {
|
|
630
|
-
x:
|
|
631
|
-
y:
|
|
631
|
+
x: pe(T, o.x),
|
|
632
|
+
y: me(T, o.y)
|
|
632
633
|
};
|
|
633
|
-
},
|
|
634
|
+
}, tn = (e) => {
|
|
634
635
|
let { x: t, y: n } = Q(e);
|
|
635
636
|
if (L && L.id === e.pointerId) {
|
|
636
637
|
let r = L;
|
|
637
638
|
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 =
|
|
639
|
+
r.moved = !0, x.stage.setPointerCapture?.(e.pointerId), x.stage.style.cursor = "grabbing", b?.addEventListener("keydown", Yt, !0), z && (clearTimeout(z.timer), z = null), X(null), Y();
|
|
640
|
+
let t = en(r.x, r.y);
|
|
640
641
|
t && q("dragStart", {
|
|
641
642
|
item: r.item,
|
|
642
643
|
x: t.x,
|
|
@@ -644,8 +645,8 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
644
645
|
});
|
|
645
646
|
}
|
|
646
647
|
if (r.moved && L === r) {
|
|
647
|
-
|
|
648
|
-
let e =
|
|
648
|
+
Kt();
|
|
649
|
+
let e = en(t, n);
|
|
649
650
|
e && q("drag", {
|
|
650
651
|
item: r.item,
|
|
651
652
|
x: e.x,
|
|
@@ -658,26 +659,26 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
658
659
|
let r = t - V.x, i = n - V.y;
|
|
659
660
|
if (!V.moved && Math.hypot(r, i) > 3) {
|
|
660
661
|
let t = J();
|
|
661
|
-
|
|
662
|
+
D && t?.pan && (V.moved = !0, x.stage.setPointerCapture?.(e.pointerId), x.stage.style.cursor = "grabbing");
|
|
662
663
|
}
|
|
663
664
|
if (V.moved && j) {
|
|
664
|
-
let e =
|
|
665
|
-
|
|
665
|
+
let e = v(V.view), r = ae(j, V.x, V.y), i = ae(j, t, n);
|
|
666
|
+
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
667
|
return;
|
|
667
668
|
}
|
|
668
669
|
}
|
|
669
|
-
let r =
|
|
670
|
+
let r = Lt(t, n);
|
|
670
671
|
X(r ? {
|
|
671
672
|
event: r,
|
|
672
673
|
anchorX: t,
|
|
673
674
|
anchorY: n,
|
|
674
675
|
keyboard: !1
|
|
675
|
-
} : null), !V && J()?.dragPoints && (
|
|
676
|
-
},
|
|
676
|
+
} : null), !V && J()?.dragPoints && (x.stage.style.cursor = zt(t, n) || D && J()?.pan ? "grab" : "");
|
|
677
|
+
}, nn = (e) => {
|
|
677
678
|
if (e.button !== 0) return;
|
|
678
679
|
let { x: t, y: n } = Q(e);
|
|
679
|
-
if (
|
|
680
|
-
let r =
|
|
680
|
+
if (!$t(t, n)) return;
|
|
681
|
+
let r = zt(t, n);
|
|
681
682
|
if (r) {
|
|
682
683
|
L = {
|
|
683
684
|
id: e.pointerId,
|
|
@@ -694,84 +695,84 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
694
695
|
id: e.pointerId,
|
|
695
696
|
x: t,
|
|
696
697
|
y: n,
|
|
697
|
-
view:
|
|
698
|
+
view: v(E),
|
|
698
699
|
moved: !1
|
|
699
700
|
};
|
|
700
|
-
},
|
|
701
|
+
}, rn = (e) => {
|
|
701
702
|
if (L && L.id === e.pointerId) {
|
|
702
703
|
let t = L, { x: n, y: r } = Q(e);
|
|
703
704
|
if (t.moved && e.type === "pointercancel") {
|
|
704
|
-
|
|
705
|
+
Zt();
|
|
705
706
|
return;
|
|
706
707
|
}
|
|
707
|
-
if (L = null,
|
|
708
|
+
if (L = null, b?.removeEventListener("keydown", Yt, !0), Xt(e.pointerId), x.stage.style.cursor = zt(n, r) ? "grab" : "", t.moved) {
|
|
708
709
|
t.px = n, t.py = r;
|
|
709
|
-
let e =
|
|
710
|
-
i ? (
|
|
710
|
+
let e = en(n, r), i = j;
|
|
711
|
+
i ? (qt(Le(T, i, A, t.item, n, r, !1), !1), z && clearTimeout(z.timer), z = {
|
|
711
712
|
item: t.item,
|
|
712
713
|
timer: setTimeout(() => {
|
|
713
|
-
z = null, L?.moved ||
|
|
714
|
+
z = null, L?.moved || Jt(), Y();
|
|
714
715
|
}, 320)
|
|
715
|
-
}) :
|
|
716
|
+
}) : Jt(), e && q("drop", {
|
|
716
717
|
item: t.item,
|
|
717
718
|
x: e.x,
|
|
718
719
|
y: e.y
|
|
719
720
|
}), q("dragEnd", {
|
|
720
721
|
item: t.item,
|
|
721
722
|
cancelled: !e
|
|
722
|
-
}),
|
|
723
|
+
}), Ht();
|
|
723
724
|
} else {
|
|
724
|
-
let e =
|
|
725
|
+
let e = Lt(n, r);
|
|
725
726
|
e && q("click", e);
|
|
726
727
|
}
|
|
727
728
|
return;
|
|
728
729
|
}
|
|
729
730
|
if (!V || V.id !== e.pointerId) return;
|
|
730
731
|
let t = V.moved;
|
|
731
|
-
if (V = null,
|
|
732
|
+
if (V = null, x.stage.hasPointerCapture?.(e.pointerId) && x.stage.releasePointerCapture(e.pointerId), x.stage.style.cursor = D && J()?.pan ? "grab" : "", t) Ht();
|
|
732
733
|
else {
|
|
733
|
-
let { x: t, y: n } = Q(e), r =
|
|
734
|
+
let { x: t, y: n } = Q(e), r = Lt(t, n);
|
|
734
735
|
if (r) q("click", r);
|
|
735
|
-
else if (e.type !== "pointercancel" &&
|
|
736
|
-
let e =
|
|
736
|
+
else if (e.type !== "pointercancel" && $t(t, n)) {
|
|
737
|
+
let e = en(t, n);
|
|
737
738
|
e && q("plotClick", e);
|
|
738
739
|
}
|
|
739
740
|
}
|
|
740
|
-
},
|
|
741
|
+
}, an = () => {
|
|
741
742
|
!V?.moved && !L?.moved && X(null);
|
|
742
|
-
},
|
|
743
|
+
}, on = (e) => {
|
|
743
744
|
let t = J();
|
|
744
|
-
if (!t || t.zoom === !1 || !
|
|
745
|
+
if (!t || t.zoom === !1 || !T.zoom.x && !T.zoom.y) return;
|
|
745
746
|
let { x: n, y: r } = Q(e);
|
|
746
|
-
if (
|
|
747
|
+
if (!$t(n, r)) return;
|
|
747
748
|
let i = e.ctrlKey || e.metaKey;
|
|
748
|
-
if (t.wheel === "always" || i) e.preventDefault(),
|
|
749
|
-
else if (
|
|
749
|
+
if (t.wheel === "always" || i) e.preventDefault(), Qt(n, r, Ze(e.deltaY, e.deltaMode, e.ctrlKey && !e.metaKey));
|
|
750
|
+
else if (D && T.zoom.x && j && !j.horizontal && Math.abs(e.deltaX) > Math.abs(e.deltaY)) {
|
|
750
751
|
e.preventDefault();
|
|
751
|
-
let t =
|
|
752
|
-
t.x =
|
|
752
|
+
let t = v(E);
|
|
753
|
+
t.x = Ye(E.x, e.deltaX * j.xPerPx * (T.x.reverse ? -1 : 1)), Z(t, !0);
|
|
753
754
|
}
|
|
754
|
-
},
|
|
755
|
+
}, sn = (e) => {
|
|
755
756
|
let { x: t, y: n } = Q(e);
|
|
756
|
-
J() &&
|
|
757
|
-
},
|
|
757
|
+
J() && D && $t(t, n) && _n();
|
|
758
|
+
}, cn = (t) => {
|
|
758
759
|
let n = j;
|
|
759
760
|
if (!n) return;
|
|
760
|
-
let r = I?.keyboard ? I.event.items[0] : null, i = (r &&
|
|
761
|
+
let r = I?.keyboard ? I.event.items[0] : null, i = (r && T.series[r.seriesIndex]) ?? T.series.find((e) => !e.hidden && e.cols.count > 0);
|
|
761
762
|
if (!i) return;
|
|
762
763
|
let { x: a, y: o, count: s } = i.cols, c;
|
|
763
|
-
for (r ? c = r.index + t : (c = i.cols.sorted ? e(a, s,
|
|
764
|
+
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
765
|
if (c < 0 || c >= s) return;
|
|
765
766
|
let l = n;
|
|
766
|
-
if (
|
|
767
|
-
let e =
|
|
767
|
+
if (T.zoom.x && (a[c] < E.x[0] || a[c] > E.x[1])) {
|
|
768
|
+
let e = E.x[1] - E.x[0];
|
|
768
769
|
Z({
|
|
769
770
|
x: [a[c] - e / 2, a[c] + e / 2],
|
|
770
|
-
y:
|
|
771
|
-
}, !0), l = j = ie(n.plot,
|
|
771
|
+
y: E.y
|
|
772
|
+
}, !0), l = j = ie(n.plot, E, T.x.reverse, T.y.reverse, T.horizontal);
|
|
772
773
|
}
|
|
773
|
-
let u =
|
|
774
|
-
items: [d, ...
|
|
774
|
+
let u = Me(i, c, l), d = Ee(i, c), f = {
|
|
775
|
+
items: [d, ...T.tooltipMode === "axis" && i.type !== "scatter" ? (Lt(u.px, u.py)?.items ?? []).filter((e) => e.seriesIndex !== i.index) : []],
|
|
775
776
|
x: d.x,
|
|
776
777
|
xLabel: ct?.formatValue(d.x) ?? String(d.x)
|
|
777
778
|
};
|
|
@@ -782,8 +783,8 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
782
783
|
keyboard: !0
|
|
783
784
|
});
|
|
784
785
|
let p = d;
|
|
785
|
-
|
|
786
|
-
},
|
|
786
|
+
x.live.textContent = `${p.seriesName}: ${f.xLabel}, ${M?.formatValue(p.y) ?? p.y}${p.label ? ` (${p.label})` : ""}`;
|
|
787
|
+
}, ln = (e) => {
|
|
787
788
|
if (!J()?.keyboard) return;
|
|
788
789
|
let t = () => {
|
|
789
790
|
let e = j?.plot;
|
|
@@ -792,87 +793,87 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
792
793
|
switch (e.key) {
|
|
793
794
|
case "ArrowRight":
|
|
794
795
|
case "ArrowLeft":
|
|
795
|
-
if (
|
|
796
|
-
e.preventDefault(),
|
|
796
|
+
if (T.horizontal) return;
|
|
797
|
+
e.preventDefault(), cn(e.key === "ArrowRight" === T.x.reverse ? -1 : 1);
|
|
797
798
|
break;
|
|
798
799
|
case "ArrowDown":
|
|
799
800
|
case "ArrowUp":
|
|
800
|
-
if (!
|
|
801
|
-
e.preventDefault(),
|
|
801
|
+
if (!T.horizontal) return;
|
|
802
|
+
e.preventDefault(), cn(e.key === "ArrowDown" === T.x.reverse ? -1 : 1);
|
|
802
803
|
break;
|
|
803
804
|
case "+":
|
|
804
805
|
case "=": {
|
|
805
|
-
if (!
|
|
806
|
+
if (!T.zoom.x && !T.zoom.y) return;
|
|
806
807
|
e.preventDefault();
|
|
807
808
|
let [n, r] = t();
|
|
808
|
-
|
|
809
|
+
Qt(n, r, .8);
|
|
809
810
|
break;
|
|
810
811
|
}
|
|
811
812
|
case "-":
|
|
812
813
|
case "_": {
|
|
813
|
-
if (!
|
|
814
|
+
if (!T.zoom.x && !T.zoom.y) return;
|
|
814
815
|
e.preventDefault();
|
|
815
816
|
let [n, r] = t();
|
|
816
|
-
|
|
817
|
+
Qt(n, r, 1.25);
|
|
817
818
|
break;
|
|
818
819
|
}
|
|
819
820
|
case "0":
|
|
820
|
-
e.preventDefault(),
|
|
821
|
+
e.preventDefault(), _n();
|
|
821
822
|
break;
|
|
822
823
|
case "Escape": I && (e.preventDefault(), X(null));
|
|
823
824
|
}
|
|
824
|
-
},
|
|
825
|
+
}, un = () => {
|
|
825
826
|
let e;
|
|
826
827
|
try {
|
|
827
|
-
e =
|
|
828
|
+
e = x.stage.matches(":focus-visible");
|
|
828
829
|
} catch {
|
|
829
830
|
e = !0;
|
|
830
831
|
}
|
|
831
|
-
e && (
|
|
832
|
-
},
|
|
833
|
-
|
|
834
|
-
}, $ =
|
|
835
|
-
$.addEventListener("pointermove",
|
|
836
|
-
let
|
|
837
|
-
|
|
838
|
-
let
|
|
832
|
+
e && (x.stage.style.boxShadow = "0 0 0 2px var(--primary-color, #4f46e5)");
|
|
833
|
+
}, dn = () => {
|
|
834
|
+
x.stage.style.boxShadow = "", I?.keyboard && X(null);
|
|
835
|
+
}, $ = x.stage;
|
|
836
|
+
$.addEventListener("pointermove", tn), $.addEventListener("pointerdown", nn), $.addEventListener("pointerup", rn), $.addEventListener("pointercancel", rn), $.addEventListener("pointerleave", an), $.addEventListener("wheel", on, { passive: !1 }), $.addEventListener("dblclick", sn), $.addEventListener("keydown", ln), $.addEventListener("focus", un), $.addEventListener("blur", dn);
|
|
837
|
+
let fn = typeof ResizeObserver == "function" ? new ResizeObserver(() => Y()) : null;
|
|
838
|
+
fn?.observe(x.stage);
|
|
839
|
+
let pn = () => {
|
|
839
840
|
if (P) return;
|
|
840
|
-
let e =
|
|
841
|
-
|
|
842
|
-
},
|
|
843
|
-
!P && !
|
|
844
|
-
}),
|
|
845
|
-
let t = ++ut, n = await
|
|
846
|
-
P || N?.kind !== t || (N.destroy(), N.canvas.remove(), N = null,
|
|
841
|
+
let e = Ge(x.root, C.palette);
|
|
842
|
+
Ke(w, e) && St++, w = e, i(x.tooltip, w), At();
|
|
843
|
+
}, mn = qe(pn), hn = ue(() => {
|
|
844
|
+
!P && !C.locale && At();
|
|
845
|
+
}), gn = async (e = /* @__PURE__ */ new Set()) => {
|
|
846
|
+
let t = ++ut, n = await He(C.renderer ?? "auto", () => u(y), (t) => {
|
|
847
|
+
P || N?.kind !== t || (N.destroy(), N.canvas.remove(), N = null, gn(/* @__PURE__ */ new Set([...e, t])));
|
|
847
848
|
}, e);
|
|
848
849
|
if (P || t !== ut) {
|
|
849
850
|
n?.destroy();
|
|
850
851
|
return;
|
|
851
852
|
}
|
|
852
|
-
N && (N.destroy(), N.canvas.remove()), N = n, n && (
|
|
853
|
+
N && (N.destroy(), N.canvas.remove()), N = n, n && (x.root.dataset.renderer = n.kind, x.stage.insertBefore(n.canvas, x.lift), k = !0, q("renderer", n.kind)), Tt(n?.kind ?? null), Y();
|
|
853
854
|
};
|
|
854
|
-
function
|
|
855
|
-
|
|
855
|
+
function _n() {
|
|
856
|
+
D && Z(v(T.base), !0);
|
|
856
857
|
}
|
|
857
|
-
|
|
858
|
-
let
|
|
858
|
+
At(), gn();
|
|
859
|
+
let vn = Ue(() => C.renderer, () => void gn());
|
|
859
860
|
return {
|
|
860
861
|
setOptions(e) {
|
|
861
862
|
if (P) return;
|
|
862
|
-
let t =
|
|
863
|
-
|
|
863
|
+
let t = C;
|
|
864
|
+
C = e, (e.palette ?? []).join() !== (t.palette ?? []).join() && (w = Ge(x.root, e.palette), St++), (e.renderer ?? "auto") !== (t.renderer ?? "auto") && gn(), At();
|
|
864
865
|
},
|
|
865
866
|
resize() {
|
|
866
867
|
Y();
|
|
867
868
|
},
|
|
868
|
-
resetZoom:
|
|
869
|
-
getView: () =>
|
|
869
|
+
resetZoom: _n,
|
|
870
|
+
getView: () => ye(T, E),
|
|
870
871
|
setView(e) {
|
|
871
|
-
P || Z(
|
|
872
|
+
P || Z(ve(T, e, E), !1);
|
|
872
873
|
},
|
|
873
874
|
getRenderer: () => N?.kind ?? null,
|
|
874
875
|
getPlotRect() {
|
|
875
|
-
let e =
|
|
876
|
+
let e = Rt();
|
|
876
877
|
return e ? {
|
|
877
878
|
x: e[0],
|
|
878
879
|
y: e[1],
|
|
@@ -882,37 +883,44 @@ var Qe = (e) => (e[0] + e[1]) / 2, $e = (e, t) => {
|
|
|
882
883
|
},
|
|
883
884
|
toPixel(e, t) {
|
|
884
885
|
if (!j) return null;
|
|
885
|
-
let n =
|
|
886
|
+
let n = oe(j, ge(T, e), _e(T, t));
|
|
886
887
|
return {
|
|
887
|
-
x: n.x +
|
|
888
|
-
y: n.y +
|
|
888
|
+
x: n.x + x.stage.offsetLeft,
|
|
889
|
+
y: n.y + x.stage.offsetTop
|
|
889
890
|
};
|
|
890
891
|
},
|
|
891
892
|
fromPixel(e, t) {
|
|
892
893
|
if (!j) return null;
|
|
893
|
-
let n =
|
|
894
|
+
let n = ae(j, e - x.stage.offsetLeft, t - x.stage.offsetTop);
|
|
894
895
|
return {
|
|
895
|
-
x:
|
|
896
|
-
y:
|
|
896
|
+
x: pe(T, n.x),
|
|
897
|
+
y: me(T, n.y)
|
|
897
898
|
};
|
|
898
899
|
},
|
|
899
|
-
ready:
|
|
900
|
-
refreshTheme:
|
|
900
|
+
ready: Et,
|
|
901
|
+
refreshTheme: pn,
|
|
902
|
+
setLabelHidden(e) {
|
|
903
|
+
let t = e ? {
|
|
904
|
+
seriesIndex: e.seriesIndex,
|
|
905
|
+
index: e.index
|
|
906
|
+
} : null;
|
|
907
|
+
(t?.seriesIndex !== ht?.seriesIndex || t?.index !== ht?.index) && (ht = t, Y());
|
|
908
|
+
},
|
|
901
909
|
on(e, t) {
|
|
902
|
-
let n =
|
|
903
|
-
return n || (n = /* @__PURE__ */ new Set(),
|
|
910
|
+
let n = S[e];
|
|
911
|
+
return n || (n = /* @__PURE__ */ new Set(), S[e] = n), n.add(t), () => {
|
|
904
912
|
n.delete(t);
|
|
905
913
|
};
|
|
906
914
|
},
|
|
907
915
|
destroy() {
|
|
908
916
|
if (!P) {
|
|
909
|
-
P = !0,
|
|
910
|
-
for (let e of Object.keys(
|
|
917
|
+
P = !0, b?.removeEventListener("keydown", Yt, !0), z && clearTimeout(z.timer), F && (b?.cancelAnimationFrame ? b.cancelAnimationFrame(F) : clearTimeout(F)), fn?.disconnect(), vn(), mn(), hn(), $.removeEventListener("wheel", on), N?.destroy(), N = null, r(x.tooltip), x.root.remove();
|
|
918
|
+
for (let e of Object.keys(S)) delete S[e];
|
|
911
919
|
}
|
|
912
920
|
}
|
|
913
921
|
};
|
|
914
922
|
};
|
|
915
923
|
//#endregion
|
|
916
|
-
export {
|
|
924
|
+
export { tt as createChart };
|
|
917
925
|
|
|
918
926
|
//# sourceMappingURL=chart.js.map
|