minerva-design 1.13.2 → 1.14.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/custom-elements.json +194 -12
- package/dist/angular/fesm2022/minerva-angular.mjs +20 -0
- package/dist/angular/fesm2022/minerva-angular.mjs.map +1 -1
- package/dist/angular/types/minerva-angular.d.ts +10 -1
- package/dist/charts/canvas.d.cts +1 -0
- package/dist/charts/canvas.d.ts +1 -0
- package/dist/charts/engine/canvas.cjs +1 -1
- package/dist/charts/engine/canvas.cjs.map +1 -1
- package/dist/charts/engine/canvas.js +152 -128
- package/dist/charts/engine/canvas.js.map +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 +475 -405
- package/dist/charts/engine/chart.js.map +1 -1
- package/dist/charts/engine/controller.cjs +2 -2
- package/dist/charts/engine/controller.cjs.map +1 -1
- package/dist/charts/engine/controller.js +263 -248
- package/dist/charts/engine/controller.js.map +1 -1
- package/dist/charts/engine/dom.cjs +1 -1
- package/dist/charts/engine/dom.cjs.map +1 -1
- package/dist/charts/engine/dom.d.cts +34 -0
- package/dist/charts/engine/dom.d.ts +34 -0
- package/dist/charts/engine/dom.js +62 -51
- package/dist/charts/engine/dom.js.map +1 -1
- package/dist/charts/engine/graph/chart.cjs +1 -1
- package/dist/charts/engine/graph/chart.cjs.map +1 -1
- package/dist/charts/engine/graph/chart.js +835 -821
- package/dist/charts/engine/graph/chart.js.map +1 -1
- package/dist/charts/engine/graph/dom.cjs +1 -1
- package/dist/charts/engine/graph/dom.cjs.map +1 -1
- package/dist/charts/engine/graph/dom.js +44 -51
- package/dist/charts/engine/graph/dom.js.map +1 -1
- package/dist/charts/engine/hover-rect.cjs +2 -0
- package/dist/charts/engine/hover-rect.cjs.map +1 -0
- package/dist/charts/engine/hover-rect.d.cts +10 -0
- package/dist/charts/engine/hover-rect.d.ts +10 -0
- package/dist/charts/engine/hover-rect.js +47 -0
- package/dist/charts/engine/hover-rect.js.map +1 -0
- package/dist/charts/engine/items.cjs +1 -1
- package/dist/charts/engine/items.cjs.map +1 -1
- package/dist/charts/engine/items.js +8 -8
- package/dist/charts/engine/model.cjs +1 -1
- package/dist/charts/engine/model.cjs.map +1 -1
- package/dist/charts/engine/model.js +191 -191
- package/dist/charts/engine/model.js.map +1 -1
- package/dist/charts/engine/orderbook/depth.cjs +1 -1
- package/dist/charts/engine/orderbook/depth.cjs.map +1 -1
- package/dist/charts/engine/orderbook/depth.js +63 -63
- package/dist/charts/engine/orderbook/heatmap.cjs +1 -1
- package/dist/charts/engine/orderbook/heatmap.cjs.map +1 -1
- package/dist/charts/engine/orderbook/heatmap.js +155 -155
- package/dist/charts/engine/orderbook/host.cjs +1 -1
- package/dist/charts/engine/orderbook/host.cjs.map +1 -1
- package/dist/charts/engine/orderbook/host.js +87 -75
- package/dist/charts/engine/orderbook/host.js.map +1 -1
- package/dist/charts/engine/orderbook/ladder.cjs +1 -1
- package/dist/charts/engine/orderbook/ladder.cjs.map +1 -1
- package/dist/charts/engine/orderbook/ladder.js +41 -41
- package/dist/charts/engine/orderbook/tape.cjs +1 -1
- package/dist/charts/engine/orderbook/tape.cjs.map +1 -1
- package/dist/charts/engine/orderbook/tape.js +31 -31
- package/dist/charts/engine/presets.cjs +2 -2
- package/dist/charts/engine/presets.cjs.map +1 -1
- package/dist/charts/engine/presets.js +15 -15
- package/dist/charts/engine/renderers/vector-gpu.cjs +24 -0
- package/dist/charts/engine/renderers/vector-gpu.cjs.map +1 -0
- package/dist/charts/engine/renderers/vector-gpu.d.cts +22 -0
- package/dist/charts/engine/renderers/vector-gpu.d.ts +22 -0
- package/dist/charts/engine/renderers/vector-gpu.js +301 -0
- package/dist/charts/engine/renderers/vector-gpu.js.map +1 -0
- package/dist/charts/engine/renderers/vector.cjs +2 -0
- package/dist/charts/engine/renderers/vector.cjs.map +1 -0
- package/dist/charts/engine/renderers/vector.d.cts +140 -0
- package/dist/charts/engine/renderers/vector.d.ts +140 -0
- package/dist/charts/engine/renderers/vector.js +568 -0
- package/dist/charts/engine/renderers/vector.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 +43 -3
- package/dist/charts/engine/scene.d.ts +43 -3
- package/dist/charts/engine/scene.js +411 -338
- package/dist/charts/engine/scene.js.map +1 -1
- package/dist/charts/engine/shapes/bullet.cjs +1 -1
- package/dist/charts/engine/shapes/bullet.cjs.map +1 -1
- package/dist/charts/engine/shapes/bullet.js +36 -36
- package/dist/charts/engine/shapes/calendar.cjs +1 -1
- package/dist/charts/engine/shapes/calendar.cjs.map +1 -1
- package/dist/charts/engine/shapes/calendar.js +53 -53
- package/dist/charts/engine/shapes/chart.cjs +1 -1
- package/dist/charts/engine/shapes/chart.cjs.map +1 -1
- package/dist/charts/engine/shapes/chart.d.cts +3 -2
- package/dist/charts/engine/shapes/chart.d.ts +3 -2
- package/dist/charts/engine/shapes/chart.js +192 -162
- package/dist/charts/engine/shapes/chart.js.map +1 -1
- package/dist/charts/engine/shapes/draw.cjs +1 -1
- package/dist/charts/engine/shapes/draw.cjs.map +1 -1
- package/dist/charts/engine/shapes/draw.js +87 -86
- package/dist/charts/engine/shapes/draw.js.map +1 -1
- package/dist/charts/engine/shapes/layout.cjs +2 -2
- package/dist/charts/engine/shapes/layout.cjs.map +1 -1
- package/dist/charts/engine/shapes/layout.d.cts +8 -7
- package/dist/charts/engine/shapes/layout.d.ts +8 -7
- package/dist/charts/engine/shapes/layout.js +262 -166
- package/dist/charts/engine/shapes/layout.js.map +1 -1
- package/dist/charts/engine/shapes/types.d.cts +13 -1
- package/dist/charts/engine/shapes/types.d.ts +13 -1
- package/dist/charts/engine/three-d/chart.cjs +1 -1
- package/dist/charts/engine/three-d/chart.cjs.map +1 -1
- package/dist/charts/engine/three-d/chart.js +266 -257
- package/dist/charts/engine/three-d/chart.js.map +1 -1
- package/dist/charts/engine/three-d/dom.cjs +1 -1
- package/dist/charts/engine/three-d/dom.cjs.map +1 -1
- package/dist/charts/engine/three-d/dom.js +28 -35
- package/dist/charts/engine/three-d/dom.js.map +1 -1
- package/dist/charts/engine/three-d/geometry.cjs +1 -1
- package/dist/charts/engine/three-d/geometry.cjs.map +1 -1
- package/dist/charts/engine/three-d/geometry.js +70 -70
- package/dist/charts/engine/three-d/overlay.cjs +1 -1
- package/dist/charts/engine/three-d/overlay.cjs.map +1 -1
- package/dist/charts/engine/three-d/overlay.js +15 -15
- package/dist/charts/engine/tooltip.cjs +2 -0
- package/dist/charts/engine/tooltip.cjs.map +1 -0
- package/dist/charts/engine/tooltip.d.cts +94 -0
- package/dist/charts/engine/tooltip.d.ts +94 -0
- package/dist/charts/engine/tooltip.js +242 -0
- package/dist/charts/engine/tooltip.js.map +1 -0
- package/dist/charts/engine/trading/chart.cjs +1 -1
- package/dist/charts/engine/trading/chart.cjs.map +1 -1
- package/dist/charts/engine/trading/chart.js +135 -135
- package/dist/charts/react/shapes.cjs +1 -1
- package/dist/charts/react/shapes.cjs.map +1 -1
- package/dist/charts/react/shapes.d.cts +10 -1
- package/dist/charts/react/shapes.d.ts +10 -1
- package/dist/charts/react/shapes.js +24 -19
- package/dist/charts/react/shapes.js.map +1 -1
- 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/canvas.cjs +1 -1
- package/dist/native/charts/src/canvas.js +8 -7
- package/dist/native/charts/src/engine/canvas.cjs +1 -1
- package/dist/native/charts/src/engine/canvas.js +2 -0
- package/dist/native/charts/src/engine/controller.cjs +2 -2
- package/dist/native/charts/src/engine/controller.cjs.map +1 -1
- package/dist/native/charts/src/engine/controller.js +102 -87
- package/dist/native/charts/src/engine/controller.js.map +1 -1
- package/dist/native/charts/src/engine/hover-rect.cjs +2 -0
- package/dist/native/charts/src/engine/hover-rect.cjs.map +1 -0
- package/dist/native/charts/src/engine/hover-rect.js +47 -0
- package/dist/native/charts/src/engine/hover-rect.js.map +1 -0
- 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 +318 -245
- package/dist/native/charts/src/engine/scene.js.map +1 -1
- package/dist/native/charts/src/engine/shapes/draw.cjs +1 -1
- package/dist/native/charts/src/engine/shapes/draw.cjs.map +1 -1
- package/dist/native/charts/src/engine/shapes/draw.js +81 -80
- package/dist/native/charts/src/engine/shapes/draw.js.map +1 -1
- package/dist/native/charts/src/engine/shapes/layout.cjs +2 -2
- package/dist/native/charts/src/engine/shapes/layout.cjs.map +1 -1
- package/dist/native/charts/src/engine/shapes/layout.js +239 -143
- package/dist/native/charts/src/engine/shapes/layout.js.map +1 -1
- package/dist/native/charts/src/engine/tooltip.cjs +2 -0
- package/dist/native/charts/src/engine/tooltip.cjs.map +1 -0
- package/dist/native/charts/src/engine/tooltip.js +164 -0
- package/dist/native/charts/src/engine/tooltip.js.map +1 -0
- package/dist/native/components/Chart/scene.cjs +1 -1
- package/dist/native/components/Chart/scene.cjs.map +1 -1
- package/dist/native/components/Chart/scene.js +210 -187
- package/dist/native/components/Chart/scene.js.map +1 -1
- package/dist/native/source/components/Chart/scene.tsx +55 -2
- package/dist/taro/index.js +2026 -1626
- package/dist/uni/charts-canvas.js +1 -0
- package/dist/vue/components/Chart/BulletChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/CalendarHeatmap.vue.d.ts +2 -0
- package/dist/vue/components/Chart/ChordChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/DonutChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/FunnelChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/GaugeChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/PieChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/RadarChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/RadialBarChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/SankeyChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/SunburstChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/TreemapChart.vue.d.ts +2 -0
- package/dist/vue/components/Chart/props.d.ts +2 -0
- package/dist/vue/components/Chart/props.js +1 -0
- package/dist/vue/components/Chart/props.js.map +1 -1
- package/dist/vue/components/Chart/shape.d.ts +2 -1
- package/dist/vue/components/Chart/shape.js +2 -0
- package/dist/vue/components/Chart/shape.js.map +1 -1
- package/dist/vue/components/Chart/types.d.ts +2 -0
- package/dist/weapp/charts/canvas.js +2576 -1969
- package/dist/weapp/charts/core.js +1 -0
- package/dist/web-components/components/chart/shape-chart.d.ts +9 -7
- package/dist/web-components/components/chart/shape-chart.js +3 -0
- package/dist/web-components/components/chart/shape-chart.js.map +1 -1
- package/dist/web-components/components/chart/shapes-extended.d.ts +6 -6
- package/dist/web-components/components/chart/shapes-extended.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { luminance as e, mix as t, toCss as n, unpackColor as r } from "./color.js";
|
|
2
2
|
import { nearestIndex as i } from "./data.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import { numberFormat as a } from "./locale.js";
|
|
4
|
+
import { formatDuration as o, formatPercent as s, tickFormatter as c } from "./format.js";
|
|
5
|
+
import { axisTicks as l } from "./axis.js";
|
|
6
|
+
import { alongX as u, alongY as d, computePlot as f, createScales as p, heatCellStyle as m, screenRect as h, toData as g, toScreen as _ } from "./layout.js";
|
|
7
|
+
import { barOpacity as v, gridOf as y, plottedY as b, toPlotX as x } from "./model.js";
|
|
7
8
|
import { insideLabelColor as ee } from "./overlay.js";
|
|
8
|
-
import { axisTicks as x } from "./axis.js";
|
|
9
9
|
var S = {
|
|
10
10
|
top: 12,
|
|
11
11
|
right: 16,
|
|
12
12
|
bottom: 4,
|
|
13
13
|
left: 4
|
|
14
|
-
}, C = (e, t) => t,
|
|
14
|
+
}, C = (e, t) => t, te = (e, n, r, i) => {
|
|
15
15
|
let a = n.resolve ?? C, o = (e) => r && e !== void 0 ? r(e) : e, s = (e) => i && e !== void 0 ? i(e) : e;
|
|
16
16
|
return (e ?? []).map((e) => {
|
|
17
17
|
if (e.type === "rect") {
|
|
@@ -50,122 +50,122 @@ var S = {
|
|
|
50
50
|
label: e.label
|
|
51
51
|
};
|
|
52
52
|
});
|
|
53
|
-
},
|
|
53
|
+
}, w = (e) => {
|
|
54
54
|
let { model: t, view: n, theme: r, width: i, height: a, measure: o } = e;
|
|
55
|
-
if (t.horizontal) return
|
|
56
|
-
let
|
|
57
|
-
if (t.y.visible) for (let e of
|
|
58
|
-
let
|
|
59
|
-
if (
|
|
60
|
-
let
|
|
55
|
+
if (t.horizontal) return ne(e);
|
|
56
|
+
let s = t.y.tickCount ?? (t.y.type === "category" ? Math.max(1, Math.floor((a - 40) / (r.fontSize + 5))) : a >= 220 ? 5 : Math.max(2, Math.round((a - 48) / 52))), c = l(t.y, n.y, s), u = 0;
|
|
57
|
+
if (t.y.visible) for (let e of c.labels) u = Math.max(u, o(e));
|
|
58
|
+
let d = T(t, c, n.y, s), m = 0;
|
|
59
|
+
if (d && t.y2?.visible) for (let e of d.labels) m = Math.max(m, o(e));
|
|
60
|
+
let h = 48;
|
|
61
61
|
if (t.x.type === "category") {
|
|
62
|
-
|
|
62
|
+
h = 0;
|
|
63
63
|
let e = Math.max(1, Math.floor(t.x.categories.length / 200));
|
|
64
|
-
for (let n = 0; n < t.x.categories.length; n += e)
|
|
64
|
+
for (let n = 0; n < t.x.categories.length; n += e) h = Math.max(h, o(t.x.categories[n]));
|
|
65
65
|
}
|
|
66
|
-
let
|
|
66
|
+
let g = {
|
|
67
67
|
...S,
|
|
68
68
|
...e.padding
|
|
69
|
-
},
|
|
69
|
+
}, _ = f({
|
|
70
70
|
width: i,
|
|
71
71
|
height: a,
|
|
72
|
-
padding:
|
|
73
|
-
yLabelWidth: t.y.visible ? Math.ceil(
|
|
74
|
-
y2LabelWidth: Math.ceil(
|
|
72
|
+
padding: g,
|
|
73
|
+
yLabelWidth: t.y.visible ? Math.ceil(u) : 0,
|
|
74
|
+
y2LabelWidth: Math.ceil(m),
|
|
75
75
|
y2Title: !!t.y2?.title && !!t.y2.visible,
|
|
76
76
|
xAxisVisible: t.x.visible,
|
|
77
77
|
xTitle: !!t.x.title && t.x.visible,
|
|
78
78
|
yTitle: !!t.y.title && t.y.visible,
|
|
79
79
|
fontSize: r.fontSize
|
|
80
80
|
});
|
|
81
|
-
e.top && (
|
|
82
|
-
let
|
|
81
|
+
e.top && (_.y += e.top);
|
|
82
|
+
let v = t.x.type === "category" ? Math.max(1, Math.floor(_.width / (h + 14))) : t.x.tickCount ?? Math.max(3, Math.floor(_.width / 88)), y = l(t.x, n.x, v);
|
|
83
83
|
return {
|
|
84
|
-
plot:
|
|
85
|
-
scales:
|
|
86
|
-
xTicks:
|
|
87
|
-
yTicks:
|
|
88
|
-
y2Ticks:
|
|
84
|
+
plot: _,
|
|
85
|
+
scales: p(_, n, t.x.reverse, t.y.reverse),
|
|
86
|
+
xTicks: y,
|
|
87
|
+
yTicks: c,
|
|
88
|
+
y2Ticks: d
|
|
89
89
|
};
|
|
90
90
|
}, T = (e, t, n, r) => {
|
|
91
91
|
let i = e.y2, a = e.y2Map;
|
|
92
92
|
if (!i || !a || !a.scale) return null;
|
|
93
93
|
if (a.log) {
|
|
94
|
-
let e = (n[0] - a.offset) / a.scale, t = (n[1] - a.offset) / a.scale, o =
|
|
94
|
+
let e = (n[0] - a.offset) / a.scale, t = (n[1] - a.offset) / a.scale, o = l(i, [Math.min(e, t), Math.max(e, t)], r);
|
|
95
95
|
return {
|
|
96
96
|
...o,
|
|
97
97
|
values: o.values.map((e) => e * a.scale + a.offset)
|
|
98
98
|
};
|
|
99
99
|
}
|
|
100
|
-
let o = t.values.map((e) => (e - a.offset) / a.scale), s = o.length > 1 ? Math.abs(o[1] - o[0]) : 1,
|
|
101
|
-
for (let e of o)
|
|
102
|
-
let
|
|
100
|
+
let o = t.values.map((e) => (e - a.offset) / a.scale), s = o.length > 1 ? Math.abs(o[1] - o[0]) : 1, u = 0;
|
|
101
|
+
for (let e of o) u = Math.max(u, Math.abs(e));
|
|
102
|
+
let d = i.format ?? c(s, u, e.locale);
|
|
103
103
|
return {
|
|
104
104
|
values: t.values,
|
|
105
|
-
labels: o.map(
|
|
105
|
+
labels: o.map(d),
|
|
106
106
|
formatValue: i.format ?? e.formatValue
|
|
107
107
|
};
|
|
108
|
-
},
|
|
109
|
-
let { model: t, view: n, theme: r, width: i, height: a, measure: o } = e,
|
|
108
|
+
}, ne = (e) => {
|
|
109
|
+
let { model: t, view: n, theme: r, width: i, height: a, measure: o } = e, s = Math.max(1, Math.floor((a - 40) / (r.fontSize + 5))), c = t.x.tickCount ?? (t.x.type === "category" ? s : a >= 220 ? 5 : Math.max(2, Math.round((a - 48) / 52))), u = l(t.x, n.x, c), d = 0;
|
|
110
110
|
if (t.x.visible) {
|
|
111
111
|
if (t.x.type === "category") {
|
|
112
112
|
let e = t.x.categories, n = Math.max(1, Math.floor(e.length / 200));
|
|
113
113
|
for (let r = 0; r < e.length; r += n) {
|
|
114
114
|
let n = t.x.format ? t.x.format(r) : e[r];
|
|
115
|
-
|
|
115
|
+
d = Math.max(d, o(n));
|
|
116
116
|
}
|
|
117
|
-
} else for (let e of
|
|
117
|
+
} else for (let e of u.labels) d = Math.max(d, o(e));
|
|
118
118
|
}
|
|
119
|
-
let
|
|
119
|
+
let m = {
|
|
120
120
|
...S,
|
|
121
121
|
...e.padding
|
|
122
|
-
},
|
|
122
|
+
}, h = f({
|
|
123
123
|
width: i,
|
|
124
124
|
height: a,
|
|
125
|
-
padding:
|
|
126
|
-
yLabelWidth: t.x.visible ? Math.ceil(
|
|
125
|
+
padding: m,
|
|
126
|
+
yLabelWidth: t.x.visible ? Math.ceil(d) : 0,
|
|
127
127
|
xAxisVisible: t.y.visible,
|
|
128
128
|
xTitle: !!t.y.title && t.y.visible,
|
|
129
129
|
yTitle: !!t.x.title && t.x.visible,
|
|
130
130
|
fontSize: r.fontSize
|
|
131
131
|
});
|
|
132
|
-
e.top && (
|
|
133
|
-
let
|
|
132
|
+
e.top && (h.y += e.top);
|
|
133
|
+
let g = t.y.tickCount ?? (t.y.type === "category" ? Math.max(1, Math.floor(h.width / 60)) : Math.max(t.y.type === "time" ? 4 : 3, Math.min(8, Math.floor(h.width / 88)))), _ = l(t.y, n.y, g);
|
|
134
134
|
return {
|
|
135
|
-
plot:
|
|
136
|
-
scales:
|
|
137
|
-
xTicks:
|
|
138
|
-
yTicks:
|
|
135
|
+
plot: h,
|
|
136
|
+
scales: p(h, n, t.x.reverse, t.y.reverse, !0),
|
|
137
|
+
xTicks: u,
|
|
138
|
+
yTicks: _,
|
|
139
139
|
y2Ticks: null
|
|
140
140
|
};
|
|
141
|
-
},
|
|
141
|
+
}, re = (e, t, n, r, i) => {
|
|
142
142
|
let a = [], o = e.percent ? e.formatValue : r?.formatValue ?? e.formatValue;
|
|
143
143
|
for (let r of e.series) {
|
|
144
144
|
if (r.hidden || !r.showLabels) continue;
|
|
145
145
|
if (r.type === "bar" && r.barTop) {
|
|
146
|
-
let s = r.format ?? (r.yAxis === "right" ? e.y2?.format ?? e.formatValue : o), { x: c, count: l } = r.cols, { y:
|
|
146
|
+
let s = r.format ?? (r.yAxis === "right" ? e.y2?.format ?? e.formatValue : o), { x: c, count: l } = r.cols, { y: u, y0: d, labels: f } = r.raw, p = r.barTop, [m, g] = t.x[0] <= t.x[1] ? t.x : [t.x[1], t.x[0]];
|
|
147
147
|
for (let t = 0; t < l && a.length < 300; t++) {
|
|
148
148
|
let o = c[t] + r.barOffset;
|
|
149
|
-
if (!Number.isFinite(
|
|
150
|
-
let l =
|
|
151
|
-
if (b && e.y.type === "time" && !
|
|
152
|
-
let x = b ?
|
|
149
|
+
if (!Number.isFinite(u[t]) || o < m || o > g) continue;
|
|
150
|
+
let l = p[t] < (r.barBase?.[t] ?? 0) !== e.y.reverse, y = _(n, o, p[t]), b = r.floating && d && Number.isFinite(d[t]);
|
|
151
|
+
if (b && e.y.type === "time" && !f?.[t]) continue;
|
|
152
|
+
let x = b ? u[t] - (d?.[t] ?? 0) : 0, S = f?.[t] ?? (b ? `${x > 0 ? "+" : ""}${s(x)}` : s(u[t]));
|
|
153
153
|
if (r.labelsInside) {
|
|
154
154
|
let e = r.barBase?.[t] ?? 0, s = r.barHalfWidth, c = r.pointColors?.[t] ?? r.color, l = [
|
|
155
155
|
c[0],
|
|
156
156
|
c[1],
|
|
157
157
|
c[2],
|
|
158
|
-
c[3] *
|
|
159
|
-
],
|
|
158
|
+
c[3] * v(r, t)
|
|
159
|
+
], u = i ? ee(l, i) : void 0, d = _(n, o, (e + p[t]) / 2);
|
|
160
160
|
a.push({
|
|
161
|
-
x:
|
|
162
|
-
y:
|
|
161
|
+
x: d.x,
|
|
162
|
+
y: d.y,
|
|
163
163
|
r: 0,
|
|
164
164
|
text: S,
|
|
165
165
|
placement: "inside",
|
|
166
166
|
align: n.horizontal ? "start" : "center",
|
|
167
|
-
bar:
|
|
168
|
-
...
|
|
167
|
+
bar: h(n, n.xToPx(o - s), n.xToPx(o + s), n.yToPx(e), n.yToPx(p[t])),
|
|
168
|
+
...u ? { color: u } : {}
|
|
169
169
|
});
|
|
170
170
|
continue;
|
|
171
171
|
}
|
|
@@ -180,77 +180,77 @@ var S = {
|
|
|
180
180
|
continue;
|
|
181
181
|
}
|
|
182
182
|
if (r.type !== "scatter") continue;
|
|
183
|
-
let { x: s, y: c, count: l, labels:
|
|
184
|
-
if (
|
|
185
|
-
let i =
|
|
183
|
+
let { x: s, y: c, count: l, labels: u, size: d } = r.cols;
|
|
184
|
+
if (u) for (let e = 0; e < l && a.length < 300; e++) {
|
|
185
|
+
let i = u[e];
|
|
186
186
|
if (!i) continue;
|
|
187
187
|
let o = s[e], l = c[e];
|
|
188
188
|
if (o < t.x[0] || o > t.x[1] || l < t.y[0] || l > t.y[1]) continue;
|
|
189
|
-
let
|
|
189
|
+
let f = d && d[e] > 0 ? d[e] : r.pointSize, p = _(n, o, l);
|
|
190
190
|
a.push({
|
|
191
|
-
x:
|
|
192
|
-
y:
|
|
193
|
-
r:
|
|
191
|
+
x: p.x,
|
|
192
|
+
y: p.y,
|
|
193
|
+
r: f / 2,
|
|
194
194
|
text: i
|
|
195
195
|
});
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
return a;
|
|
199
|
-
},
|
|
200
|
-
let r =
|
|
199
|
+
}, E = (e) => e.type === "bar" || e.type === "boxplot" ? e.barOffset : 0, D = (e, t, n) => {
|
|
200
|
+
let r = _(n, e.cols.x[t] + E(e), b(e, t));
|
|
201
201
|
return {
|
|
202
202
|
px: r.x,
|
|
203
203
|
py: r.y
|
|
204
204
|
};
|
|
205
|
-
},
|
|
205
|
+
}, O = (e, t, n, r, i, a, o) => {
|
|
206
206
|
let s = e.yToPx(r), c = e.yToPx(i);
|
|
207
207
|
return Math.abs(a - t) <= n && o >= Math.min(s, c) - 2 && o <= Math.max(s, c) + 2;
|
|
208
|
-
},
|
|
209
|
-
let
|
|
210
|
-
if (e.type === "bar" && e.barBase && e.barTop)
|
|
208
|
+
}, k = (e, t, n, r, i) => {
|
|
209
|
+
let a = D(e, t, i), o = u(i, n, r), s = d(i, n, r), c = i.xToPx(e.cols.x[t] + E(e)), l = !1;
|
|
210
|
+
if (e.type === "bar" && e.barBase && e.barTop) l = O(i, c, e.barHalfWidth / Math.abs(i.xPerPx), e.barBase[t], e.barTop[t], o, s);
|
|
211
211
|
else if (e.type === "candlestick" || e.type === "boxplot") {
|
|
212
212
|
let { high: n, low: r, y: a } = e.cols;
|
|
213
|
-
|
|
213
|
+
l = O(i, c, Math.max(e.barHalfWidth / Math.abs(i.xPerPx), 3), n ? n[t] : a[t], r ? r[t] : a[t], o, s);
|
|
214
214
|
}
|
|
215
215
|
return {
|
|
216
216
|
series: e,
|
|
217
217
|
index: t,
|
|
218
|
-
px:
|
|
219
|
-
py:
|
|
220
|
-
dx: Math.abs(i.xToPx(e.cols.x[t]) -
|
|
221
|
-
dist:
|
|
222
|
-
inside:
|
|
218
|
+
px: a.px,
|
|
219
|
+
py: a.py,
|
|
220
|
+
dx: Math.abs(i.xToPx(e.cols.x[t]) - o),
|
|
221
|
+
dist: l ? 0 : Math.hypot(a.px - n, a.py - r),
|
|
222
|
+
inside: l
|
|
223
223
|
};
|
|
224
|
-
},
|
|
225
|
-
let
|
|
226
|
-
if (!
|
|
227
|
-
let
|
|
228
|
-
return
|
|
229
|
-
let a = Math.hypot(
|
|
224
|
+
}, A = (e, t, n, r, i, a) => {
|
|
225
|
+
let o = e.cols.outliers?.[t];
|
|
226
|
+
if (!o) return;
|
|
227
|
+
let s = i.xToPx(e.cols.x[t] + E(e)), c = u(i, n, r) - s, l = d(i, n, r), f = e.outlierSize / 2 + 4 + a, p, m = f;
|
|
228
|
+
return o.forEach((n, r) => {
|
|
229
|
+
let a = Math.hypot(c, i.yToPx(n) - l);
|
|
230
230
|
a <= m && (m = a, p = e.raw.outliers?.[t]?.[r] ?? n);
|
|
231
231
|
}), p;
|
|
232
|
-
},
|
|
232
|
+
}, j = (e, t) => e.cols.size && e.cols.size[t] > 0 ? e.cols.size[t] : e.pointSize, M = /* @__PURE__ */ new WeakMap(), ie = (e) => {
|
|
233
233
|
let t = e.cols.size;
|
|
234
234
|
if (!t) return e.pointSize;
|
|
235
|
-
let n =
|
|
235
|
+
let n = M.get(t);
|
|
236
236
|
if (n === void 0) {
|
|
237
237
|
n = e.pointSize;
|
|
238
238
|
for (let e = 0; e < t.length; e++) t[e] > n && (n = t[e]);
|
|
239
|
-
|
|
239
|
+
M.set(t, n);
|
|
240
240
|
}
|
|
241
241
|
return n;
|
|
242
|
-
},
|
|
243
|
-
let a = Math.max(
|
|
244
|
-
return
|
|
245
|
-
let o =
|
|
246
|
-
s <= Math.max(
|
|
242
|
+
}, ae = (e, t, n, r, i) => {
|
|
243
|
+
let a = Math.max(ie(e) / 2 + 6, 10) + i, o = g(r, t, n), s = a * Math.abs(r.xPerPx), c = a * Math.abs(r.yPerPx), l = -1, u = Infinity, { x: d, y: f } = e.cols;
|
|
244
|
+
return y(e).query(o.x - s, o.x + s, o.y - c, o.y + c, (a) => {
|
|
245
|
+
let o = _(r, d[a], f[a]), s = Math.hypot(o.x - t, o.y - n);
|
|
246
|
+
s <= Math.max(j(e, a) / 2 + 4, 8) + i && s <= u && (u = s, l = a);
|
|
247
247
|
}), l;
|
|
248
|
-
},
|
|
248
|
+
}, oe = (e, t, n) => {
|
|
249
249
|
let { x: r, y: i } = e.cellHalf, { x: a, y: o } = e.cols, s = -1;
|
|
250
|
-
return
|
|
250
|
+
return y(e).query(t - r, t + r, n - i, n + i, (c) => {
|
|
251
251
|
e.cellColors?.[c] && Math.abs(a[c] - t) <= r && Math.abs(o[c] - n) <= i && (s = c);
|
|
252
252
|
}), s;
|
|
253
|
-
},
|
|
253
|
+
}, se = (e, t) => {
|
|
254
254
|
let { x: n, y: r, count: a, sorted: o } = e.cols;
|
|
255
255
|
if (o) return i(n, r, a, t);
|
|
256
256
|
let s = -1, c = Infinity;
|
|
@@ -260,7 +260,7 @@ var S = {
|
|
|
260
260
|
i < c && (c = i, s = e);
|
|
261
261
|
}
|
|
262
262
|
return s;
|
|
263
|
-
},
|
|
263
|
+
}, N = (e, t) => {
|
|
264
264
|
let i = e.pointColors?.[t], { open: a, high: o, low: s, value: c, y0: l, q1: u, q3: d, outliers: f, labels: p } = e.raw, m = p?.[t], h = i ? n(i) : e.colorCss, g = {};
|
|
265
265
|
if (e.type === "candlestick") {
|
|
266
266
|
let r = a ? a[t] : NaN;
|
|
@@ -286,11 +286,11 @@ var S = {
|
|
|
286
286
|
...m === void 0 ? {} : { label: m },
|
|
287
287
|
...g
|
|
288
288
|
};
|
|
289
|
-
},
|
|
289
|
+
}, P = (e, t) => {
|
|
290
290
|
if (!e.length) return null;
|
|
291
291
|
e.sort((e, t) => e.series.index - t.series.index);
|
|
292
292
|
let n = e.map((e) => {
|
|
293
|
-
let t =
|
|
293
|
+
let t = N(e.series, e.index);
|
|
294
294
|
return e.outlier !== void 0 && (t.outlier = e.outlier), t;
|
|
295
295
|
}), r = n[0].x;
|
|
296
296
|
return {
|
|
@@ -298,95 +298,95 @@ var S = {
|
|
|
298
298
|
x: r,
|
|
299
299
|
xLabel: t?.formatValue(r) ?? String(r)
|
|
300
300
|
};
|
|
301
|
-
},
|
|
301
|
+
}, ce = (e, t, n, r, i, a = 0) => {
|
|
302
302
|
let { plot: o } = t, s = 6 + a;
|
|
303
303
|
if (r < o.x - s || r > o.x + o.width + s || i < o.y - s || i > o.y + o.height + s) return null;
|
|
304
|
-
let c =
|
|
304
|
+
let c = g(t, r, i), l = [], u = [];
|
|
305
305
|
for (let n of e.series) if (!n.hidden && n.tooltip && n.cols.count !== 0) {
|
|
306
306
|
if (n.type === "scatter") {
|
|
307
|
-
let e =
|
|
308
|
-
e >= 0 && l.push(
|
|
307
|
+
let e = ae(n, r, i, t, a);
|
|
308
|
+
e >= 0 && l.push(k(n, e, r, i, t));
|
|
309
309
|
} else if (n.type === "heatmap") {
|
|
310
|
-
let e =
|
|
310
|
+
let e = oe(n, c.x, c.y);
|
|
311
311
|
if (e >= 0) {
|
|
312
|
-
let a =
|
|
312
|
+
let a = k(n, e, r, i, t);
|
|
313
313
|
a.inside = !0, a.dist = 0, l.push(a);
|
|
314
314
|
}
|
|
315
315
|
} else {
|
|
316
|
-
let e =
|
|
316
|
+
let e = se(n, c.x);
|
|
317
317
|
if (e < 0) continue;
|
|
318
|
-
let o =
|
|
319
|
-
n.type === "boxplot" && (o.outlier =
|
|
318
|
+
let o = k(n, e, r, i, t);
|
|
319
|
+
n.type === "boxplot" && (o.outlier = A(n, e, r, i, t, a), o.outlier !== void 0 && (o.inside = !0, o.dist = 0)), u.push(o);
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
if (e.tooltipMode === "item") {
|
|
323
323
|
let e = [...l, ...u].filter((e) => e.inside || e.series.type === "scatter" || (e.series.type === "line" || e.series.type === "area") && e.dist <= 8 + a);
|
|
324
|
-
return e.length ?
|
|
324
|
+
return e.length ? P([e.reduce((e, t) => t.dist < e.dist || t.dist === e.dist && t.series.index > e.series.index ? t : e)], n) : null;
|
|
325
325
|
}
|
|
326
326
|
if (e.tooltipMode === "nearest") {
|
|
327
327
|
let e = [...l, ...u].filter((e) => e.inside || e.series.type === "scatter" || e.dist <= 32 + a);
|
|
328
|
-
return e.length ?
|
|
328
|
+
return e.length ? P([e.reduce((e, t) => t.dist <= e.dist ? t : e)], n) : null;
|
|
329
329
|
}
|
|
330
|
-
if (!u.length) return l.length ?
|
|
331
|
-
let
|
|
332
|
-
|
|
333
|
-
...
|
|
330
|
+
if (!u.length) return l.length ? P([l.reduce((e, t) => t.dist <= e.dist ? t : e)], n) : null;
|
|
331
|
+
let d = Math.min(...u.map((e) => e.dx)), f = e.x.type === "category" ? .5 / Math.abs(t.xPerPx) : 0, p = u.filter((e) => e.dx <= d + Math.max(1, f)), m = p.reduce((e, t) => t.dx < e.dx ? t : e), h = P([
|
|
332
|
+
m,
|
|
333
|
+
...p.filter((e) => e !== m),
|
|
334
334
|
...l
|
|
335
335
|
], n);
|
|
336
|
-
return
|
|
337
|
-
},
|
|
336
|
+
return h && (h.x = N(m.series, m.index).x, h.xLabel = n?.formatValue(h.x) ?? String(h.x)), h;
|
|
337
|
+
}, le = (e, t) => e === t || !!e && !!t && e.items.length === t.items.length && e.items.every((e, n) => e.index === t.items[n].index && e.seriesIndex === t.items[n].seriesIndex), F = {
|
|
338
338
|
style: "percent",
|
|
339
339
|
minimumFractionDigits: 2,
|
|
340
340
|
maximumFractionDigits: 2
|
|
341
|
-
},
|
|
341
|
+
}, I = (e, t) => e.raw.details?.[t]?.map((e) => ({
|
|
342
342
|
color: null,
|
|
343
343
|
name: e.name,
|
|
344
344
|
value: e.value
|
|
345
|
-
})) ?? [],
|
|
346
|
-
let i = n?.formatValue ?? String,
|
|
347
|
-
if (t.items.length === 1 &&
|
|
348
|
-
let n =
|
|
345
|
+
})) ?? [], L = (e, t, n, r = null) => {
|
|
346
|
+
let i = n?.formatValue ?? String, c = (t) => t.format ?? (t.yAxis === "right" ? r?.formatValue ?? e.y2?.format ?? e.formatValue : i), l = e.labels, u = t.items[0], d = u ? e.series[u.seriesIndex] : null;
|
|
347
|
+
if (t.items.length === 1 && u && d?.type === "bar" && u.y0 !== void 0 && e.y.type === "time") {
|
|
348
|
+
let n = c(d);
|
|
349
349
|
return {
|
|
350
|
-
title:
|
|
351
|
-
titleColor:
|
|
352
|
-
subtitle:
|
|
350
|
+
title: u.label ?? t.xLabel,
|
|
351
|
+
titleColor: u.color,
|
|
352
|
+
subtitle: u.label === void 0 ? d.name : `${t.xLabel} · ${d.name}`,
|
|
353
353
|
rows: [
|
|
354
354
|
{
|
|
355
355
|
color: null,
|
|
356
|
-
name:
|
|
357
|
-
value: n(
|
|
356
|
+
name: l.start,
|
|
357
|
+
value: n(u.y0)
|
|
358
358
|
},
|
|
359
359
|
{
|
|
360
360
|
color: null,
|
|
361
|
-
name:
|
|
362
|
-
value: n(
|
|
361
|
+
name: l.end,
|
|
362
|
+
value: n(u.y)
|
|
363
363
|
},
|
|
364
364
|
{
|
|
365
365
|
color: null,
|
|
366
|
-
name:
|
|
367
|
-
value:
|
|
366
|
+
name: l.duration,
|
|
367
|
+
value: o(u.y - u.y0, e.locale)
|
|
368
368
|
},
|
|
369
|
-
...
|
|
369
|
+
...I(d, u.index)
|
|
370
370
|
]
|
|
371
371
|
};
|
|
372
372
|
}
|
|
373
|
-
if (t.items.length === 1 &&
|
|
374
|
-
let n = e.y.type === "category" ? e.y.categories[Math.round(
|
|
373
|
+
if (t.items.length === 1 && d?.type === "heatmap") {
|
|
374
|
+
let n = e.y.type === "category" ? e.y.categories[Math.round(u.y)] ?? i(u.y) : i(u.y);
|
|
375
375
|
return {
|
|
376
376
|
title: `${t.xLabel} · ${n}`,
|
|
377
377
|
titleColor: null,
|
|
378
378
|
rows: [{
|
|
379
|
-
color:
|
|
380
|
-
name:
|
|
381
|
-
value:
|
|
382
|
-
}, ...
|
|
379
|
+
color: u.color,
|
|
380
|
+
name: u.label ?? d.name,
|
|
381
|
+
value: u.value === void 0 ? "–" : (d.format ?? e.formatValue)(u.value)
|
|
382
|
+
}, ...I(d, u.index)]
|
|
383
383
|
};
|
|
384
384
|
}
|
|
385
385
|
if (t.items.every((t) => e.series[t.seriesIndex].type === "scatter") && t.items.length === 1) {
|
|
386
|
-
let n = t.items[0],
|
|
386
|
+
let n = t.items[0], a = e.series[n.seriesIndex], o = n.value === void 0 ? [] : [{
|
|
387
387
|
color: null,
|
|
388
|
-
name:
|
|
389
|
-
value: (
|
|
388
|
+
name: a.valueName ?? l.value,
|
|
389
|
+
value: (a.format ?? e.formatValue)(n.value)
|
|
390
390
|
}];
|
|
391
391
|
if (e.x.type === "category") return {
|
|
392
392
|
title: n.label ?? t.xLabel,
|
|
@@ -395,25 +395,25 @@ var S = {
|
|
|
395
395
|
{
|
|
396
396
|
color: n.color,
|
|
397
397
|
name: n.seriesName,
|
|
398
|
-
value: a
|
|
398
|
+
value: c(a)(n.y)
|
|
399
399
|
},
|
|
400
|
-
...
|
|
401
|
-
...
|
|
400
|
+
...o,
|
|
401
|
+
...I(a, n.index)
|
|
402
402
|
]
|
|
403
403
|
};
|
|
404
|
-
let
|
|
404
|
+
let s = a.yAxis === "right" ? r?.formatValue ?? e.y2?.format ?? e.formatValue : i, u = [
|
|
405
405
|
{
|
|
406
406
|
color: null,
|
|
407
|
-
name: e.x.title ??
|
|
407
|
+
name: e.x.title ?? l.x,
|
|
408
408
|
value: t.xLabel
|
|
409
409
|
},
|
|
410
410
|
{
|
|
411
411
|
color: null,
|
|
412
|
-
name: (
|
|
413
|
-
value: (n.value === void 0 ? a
|
|
412
|
+
name: (a.yAxis === "right" ? e.y2?.title : e.y.title) ?? l.y,
|
|
413
|
+
value: (n.value === void 0 ? c(a) : s)(n.y)
|
|
414
414
|
},
|
|
415
|
-
...
|
|
416
|
-
...
|
|
415
|
+
...o,
|
|
416
|
+
...I(a, n.index)
|
|
417
417
|
];
|
|
418
418
|
return {
|
|
419
419
|
title: n.label ?? n.seriesName,
|
|
@@ -422,23 +422,23 @@ var S = {
|
|
|
422
422
|
rows: u
|
|
423
423
|
};
|
|
424
424
|
}
|
|
425
|
-
let
|
|
425
|
+
let f = [], p = [], m = t.items.length === 1 && d?.type === "bar" && e.x.type !== "category" && u?.label !== void 0 ? u.label : null;
|
|
426
426
|
for (let n of t.items) {
|
|
427
|
-
let t = e.series[n.seriesIndex], r =
|
|
428
|
-
if (
|
|
427
|
+
let t = e.series[n.seriesIndex], r = c(t);
|
|
428
|
+
if (p.push(f.length), t.type === "candlestick") {
|
|
429
429
|
let i = n.open !== void 0 && n.open !== 0 ? (n.y - n.open) / Math.abs(n.open) * 100 : NaN;
|
|
430
|
-
|
|
430
|
+
f.push({
|
|
431
431
|
color: n.color,
|
|
432
432
|
name: t.name,
|
|
433
|
-
value: Number.isFinite(i) ? `${i >= 0 ? "+" : ""}${
|
|
433
|
+
value: Number.isFinite(i) ? `${i >= 0 ? "+" : ""}${a(e.locale, F).format(i / 100)}` : ""
|
|
434
434
|
});
|
|
435
|
-
let
|
|
436
|
-
[
|
|
437
|
-
[
|
|
438
|
-
[
|
|
439
|
-
[
|
|
435
|
+
let o = [
|
|
436
|
+
[l.open, n.open],
|
|
437
|
+
[l.high, n.high],
|
|
438
|
+
[l.low, n.low],
|
|
439
|
+
[l.close, n.y]
|
|
440
440
|
];
|
|
441
|
-
for (let [e, t] of
|
|
441
|
+
for (let [e, t] of o) t !== void 0 && Number.isFinite(t) && f.push({
|
|
442
442
|
color: null,
|
|
443
443
|
name: e,
|
|
444
444
|
value: r(t)
|
|
@@ -447,37 +447,37 @@ var S = {
|
|
|
447
447
|
}
|
|
448
448
|
if (t.type === "boxplot") {
|
|
449
449
|
if (n.outlier !== void 0) {
|
|
450
|
-
|
|
450
|
+
f.push({
|
|
451
451
|
color: n.color,
|
|
452
452
|
name: n.label ? `${n.seriesName} · ${n.label}` : n.seriesName,
|
|
453
453
|
value: ""
|
|
454
454
|
}, {
|
|
455
455
|
color: null,
|
|
456
|
-
name:
|
|
456
|
+
name: l.outlier,
|
|
457
457
|
value: r(n.outlier)
|
|
458
458
|
});
|
|
459
459
|
continue;
|
|
460
460
|
}
|
|
461
|
-
|
|
461
|
+
f.push({
|
|
462
462
|
color: n.color,
|
|
463
463
|
name: n.label ? `${n.seriesName} · ${n.label}` : n.seriesName,
|
|
464
464
|
value: ""
|
|
465
465
|
});
|
|
466
466
|
let e = [
|
|
467
|
-
[
|
|
468
|
-
[
|
|
469
|
-
[
|
|
470
|
-
[
|
|
471
|
-
[
|
|
467
|
+
[l.max, n.high],
|
|
468
|
+
[l.q3, n.q3],
|
|
469
|
+
[l.median, n.y],
|
|
470
|
+
[l.q1, n.q1],
|
|
471
|
+
[l.min, n.low]
|
|
472
472
|
];
|
|
473
|
-
for (let [t, n] of e) n !== void 0 && Number.isFinite(n) &&
|
|
473
|
+
for (let [t, n] of e) n !== void 0 && Number.isFinite(n) && f.push({
|
|
474
474
|
color: null,
|
|
475
475
|
name: t,
|
|
476
476
|
value: r(n)
|
|
477
477
|
});
|
|
478
|
-
n.outliers &&
|
|
478
|
+
n.outliers && f.push({
|
|
479
479
|
color: null,
|
|
480
|
-
name:
|
|
480
|
+
name: l.outliers,
|
|
481
481
|
value: String(n.outliers)
|
|
482
482
|
});
|
|
483
483
|
continue;
|
|
@@ -487,57 +487,57 @@ var S = {
|
|
|
487
487
|
let a = n.y - n.y0;
|
|
488
488
|
i = t.type === "bar" && e.y.type !== "time" ? `${a > 0 ? "+" : ""}${r(a)}` : `${r(n.y0)} – ${r(n.y)}`;
|
|
489
489
|
}
|
|
490
|
-
|
|
490
|
+
f.push({
|
|
491
491
|
color: n.color,
|
|
492
|
-
name: n.label &&
|
|
492
|
+
name: n.label && m === null ? `${n.seriesName} · ${n.label}` : n.seriesName,
|
|
493
493
|
value: i
|
|
494
|
-
}),
|
|
494
|
+
}), f.push(...I(t, n.index));
|
|
495
495
|
}
|
|
496
496
|
if (e.percent) {
|
|
497
497
|
let n = /* @__PURE__ */ new Map();
|
|
498
498
|
for (let r of t.items) {
|
|
499
|
-
let t =
|
|
499
|
+
let t = R(e, r.seriesIndex);
|
|
500
500
|
t !== null && Number.isFinite(r.y) && n.set(t, (n.get(t) ?? 0) + Math.abs(r.y));
|
|
501
501
|
}
|
|
502
502
|
t.items.forEach((t, r) => {
|
|
503
|
-
let i =
|
|
504
|
-
a && o && Number.isFinite(t.y) && (o.value = `${(e.series[t.seriesIndex].format ?? e.formatValue)(t.y)} · ${
|
|
503
|
+
let i = R(e, t.seriesIndex), a = i === null ? void 0 : n.get(i), o = f[p[r]];
|
|
504
|
+
a && o && Number.isFinite(t.y) && (o.value = `${(e.series[t.seriesIndex].format ?? e.formatValue)(t.y)} · ${s(Math.abs(t.y) / a * 100, e.locale, !0)}`);
|
|
505
505
|
});
|
|
506
506
|
}
|
|
507
507
|
return {
|
|
508
|
-
title:
|
|
508
|
+
title: m ?? t.xLabel,
|
|
509
509
|
titleColor: null,
|
|
510
|
-
rows:
|
|
510
|
+
rows: f
|
|
511
511
|
};
|
|
512
|
-
},
|
|
512
|
+
}, R = (e, t) => e.series[t].hidden ? null : e.stacks[t], z = (e, t, i) => {
|
|
513
513
|
let a = [], { plot: o } = t, s = Infinity, c = -Infinity;
|
|
514
|
-
for (let
|
|
515
|
-
let i = e.series[
|
|
516
|
-
if (i.type === "boxplot" &&
|
|
517
|
-
let e =
|
|
514
|
+
for (let l of i.items) {
|
|
515
|
+
let i = e.series[l.seriesIndex], u = i.cols.x[l.index] ?? l.x;
|
|
516
|
+
if (i.type === "boxplot" && l.outlier !== void 0) {
|
|
517
|
+
let e = _(t, u + E(i), fe(i, l));
|
|
518
518
|
a.push({
|
|
519
519
|
kind: "dot",
|
|
520
520
|
x: e.x,
|
|
521
521
|
y: e.y,
|
|
522
522
|
size: i.outlierSize + 3,
|
|
523
|
-
color:
|
|
524
|
-
halo: n(i.pointColors?.[
|
|
523
|
+
color: l.color,
|
|
524
|
+
halo: n(i.pointColors?.[l.index] ?? i.color, .2)
|
|
525
525
|
});
|
|
526
526
|
continue;
|
|
527
527
|
}
|
|
528
528
|
if (i.type === "bar" || i.type === "candlestick" || i.type === "boxplot") {
|
|
529
|
-
let
|
|
530
|
-
s = Math.min(s,
|
|
529
|
+
let n = t.xToPx(u + E(i)), r = Math.max(i.barHalfWidth / Math.abs(t.xPerPx), 1);
|
|
530
|
+
s = Math.min(s, n - r), c = Math.max(c, n + r), i.type === "bar" && a.push(...ue(e, t, i, l.index));
|
|
531
531
|
continue;
|
|
532
532
|
}
|
|
533
533
|
if (i.type === "heatmap") {
|
|
534
|
-
let e = t.xToPx(
|
|
535
|
-
g >
|
|
534
|
+
let e = t.xToPx(u), n = t.yToPx(l.y), s = Math.abs(i.cellHalf.x / t.xPerPx), c = Math.abs(i.cellHalf.y / t.yPerPx), d = h(t, e - s, e + s, n - c, n + c), f = m(d.width, d.height, i.radius), p = Math.max(o.y, d.y), g = Math.min(o.y + o.height, d.y + d.height), _ = Math.max(o.x, d.x), v = Math.min(o.x + o.width, d.x + d.width);
|
|
535
|
+
g > p && a.push({
|
|
536
536
|
kind: "guide",
|
|
537
537
|
x: o.x,
|
|
538
|
-
y:
|
|
538
|
+
y: p,
|
|
539
539
|
width: o.width,
|
|
540
|
-
height: g -
|
|
540
|
+
height: g - p
|
|
541
541
|
}), v > _ && a.push({
|
|
542
542
|
kind: "guide",
|
|
543
543
|
x: _,
|
|
@@ -545,29 +545,31 @@ var S = {
|
|
|
545
545
|
width: v - _,
|
|
546
546
|
height: o.height
|
|
547
547
|
});
|
|
548
|
-
let y = i.cellColors?.[
|
|
548
|
+
let y = i.cellColors?.[l.index], b = y ? r(y) : i.color;
|
|
549
549
|
a.push({
|
|
550
550
|
kind: "cell",
|
|
551
|
-
x:
|
|
552
|
-
y:
|
|
553
|
-
width: Math.max(1,
|
|
554
|
-
height: Math.max(1,
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
551
|
+
x: d.x + f.inset,
|
|
552
|
+
y: d.y + f.inset,
|
|
553
|
+
width: Math.max(1, d.width - f.inset * 2),
|
|
554
|
+
height: Math.max(1, d.height - f.inset * 2),
|
|
555
|
+
seriesIndex: i.index,
|
|
556
|
+
index: l.index,
|
|
557
|
+
color: l.color,
|
|
558
|
+
ring: B(b),
|
|
559
|
+
radius: f.radius
|
|
558
560
|
});
|
|
559
561
|
continue;
|
|
560
562
|
}
|
|
561
|
-
let { px:
|
|
562
|
-
if (
|
|
563
|
-
let
|
|
563
|
+
let { px: d, py: f } = D(i, l.index, t);
|
|
564
|
+
if (d < o.x - 1 || d > o.x + o.width + 1 || f < o.y - 1 || f > o.y + o.height + 1) continue;
|
|
565
|
+
let p = i.type === "scatter" ? j(i, l.index) + 4 : Math.max(9, i.lineWidth * 2 + 5), g = i.pointColors?.[l.index] ?? i.color;
|
|
564
566
|
a.push({
|
|
565
567
|
kind: "dot",
|
|
566
|
-
x:
|
|
567
|
-
y:
|
|
568
|
-
size:
|
|
569
|
-
color:
|
|
570
|
-
halo: n(
|
|
568
|
+
x: d,
|
|
569
|
+
y: f,
|
|
570
|
+
size: p,
|
|
571
|
+
color: l.color,
|
|
572
|
+
halo: n(g, .2)
|
|
571
573
|
});
|
|
572
574
|
}
|
|
573
575
|
if (c > s) {
|
|
@@ -588,18 +590,89 @@ var S = {
|
|
|
588
590
|
});
|
|
589
591
|
}
|
|
590
592
|
return a;
|
|
591
|
-
},
|
|
593
|
+
}, B = (t) => e(t) > .45 ? "rgba(15, 23, 42, 0.78)" : "rgba(255, 255, 255, 0.9)", V = .6, H = (e, t) => !t.floating && e.series.some((e) => e !== t && !e.hidden && e.type === "bar" && !e.floating && e.barOffset === t.barOffset) ? 0 : t.radius, U = (e, t) => {
|
|
594
|
+
let n = Infinity;
|
|
595
|
+
for (let r of e.series) {
|
|
596
|
+
if (r.hidden || r.type !== "bar" && r.type !== "boxplot") continue;
|
|
597
|
+
let e = Math.abs(r.barOffset - t.barOffset);
|
|
598
|
+
e > 0 && e < n && (n = e);
|
|
599
|
+
}
|
|
600
|
+
return Number.isFinite(n) ? Math.max(0, n / 2 - t.barHalfWidth) : null;
|
|
601
|
+
}, W = (e, t, n, r) => {
|
|
602
|
+
let i = Math.min(5, Math.max(1.5, r * .08)), a = U(e, n);
|
|
603
|
+
return a !== null && (i = Math.min(i, a / Math.abs(t.xPerPx) * .5)), i >= .75 ? Math.round(i * 4) / 4 : 0;
|
|
604
|
+
}, G = (e, t, n, r) => {
|
|
605
|
+
let i = n.barBase?.[r], a = n.barTop?.[r], o = n.cols.x[r];
|
|
606
|
+
if (i === void 0 || a === void 0 || Number.isNaN(i) || Number.isNaN(a) || !Number.isFinite(o)) return null;
|
|
607
|
+
let { plot: s } = t, c = t.xToPx(o + n.barOffset), l = Math.max(n.barHalfWidth / Math.abs(t.xPerPx), .5), u = t.horizontal ? s.x : s.y, d = u + (t.horizontal ? s.width : s.height), f = (e) => Math.min(d + 16, Math.max(u - 16, Number.isNaN(e) ? u : e)), p = f(t.yToPx(i)), m = f(t.yToPx(a));
|
|
608
|
+
if (Math.abs(p - m) < .5) return null;
|
|
609
|
+
let g = h(t, c - l, c + l, p, m);
|
|
610
|
+
return g.x > s.x + s.width || g.x + g.width < s.x || g.y > s.y + s.height || g.y + g.height < s.y ? null : {
|
|
611
|
+
...g,
|
|
612
|
+
radius: Math.min(H(e, n), g.width / 2, g.height / 2),
|
|
613
|
+
base: t.horizontal ? p < m ? "left" : "right" : p > m ? "bottom" : "top"
|
|
614
|
+
};
|
|
615
|
+
}, ue = (e, t, r, i) => {
|
|
616
|
+
let a = G(e, t, r, i);
|
|
617
|
+
if (!a) return [];
|
|
618
|
+
let o = W(e, t, r, a.base === "top" || a.base === "bottom" ? a.width : a.height), s = r.pointColors?.[i] ?? r.color, c = s[3] * v(r, i), l = c < V, u = [{
|
|
619
|
+
kind: "bar",
|
|
620
|
+
...a,
|
|
621
|
+
seriesIndex: r.index,
|
|
622
|
+
index: i,
|
|
623
|
+
color: n(s, v(r, i)),
|
|
624
|
+
backdrop: c < .98,
|
|
625
|
+
ring: l ? n([
|
|
626
|
+
s[0],
|
|
627
|
+
s[1],
|
|
628
|
+
s[2],
|
|
629
|
+
1
|
|
630
|
+
]) : B(s),
|
|
631
|
+
grow: o
|
|
632
|
+
}], d = Math.min(r.barBase?.[i] ?? NaN, r.barTop?.[i] ?? NaN), f = Math.max(r.barBase?.[i] ?? NaN, r.barTop?.[i] ?? NaN);
|
|
633
|
+
if (!r.floating || !(f >= d)) return u;
|
|
634
|
+
let p = (f - d) * 1e-9;
|
|
635
|
+
for (let a of e.series) if (a !== r && !a.hidden && !a.tooltip && a.type === "bar" && a.floating && a.barOffset === r.barOffset && a.barBase && a.barTop) for (let s = 0; s < a.cols.count; s++) {
|
|
636
|
+
if (a.cols.x[s] !== r.cols.x[i]) continue;
|
|
637
|
+
let c = Math.min(a.barBase[s], a.barTop[s]), l = Math.max(a.barBase[s], a.barTop[s]);
|
|
638
|
+
if (!(c >= d - p && l <= f + p)) continue;
|
|
639
|
+
let m = G(e, t, a, s);
|
|
640
|
+
if (!m) continue;
|
|
641
|
+
let h = a.pointColors?.[s] ?? a.color;
|
|
642
|
+
u.push({
|
|
643
|
+
kind: "bar",
|
|
644
|
+
...m,
|
|
645
|
+
seriesIndex: a.index,
|
|
646
|
+
index: s,
|
|
647
|
+
color: n(h, v(a, s)),
|
|
648
|
+
backdrop: !1,
|
|
649
|
+
ring: null,
|
|
650
|
+
grow: o
|
|
651
|
+
});
|
|
652
|
+
}
|
|
653
|
+
return u;
|
|
654
|
+
}, de = (e) => e.base === "top" || e.base === "bottom" ? {
|
|
655
|
+
x: e.x - e.grow,
|
|
656
|
+
y: e.y,
|
|
657
|
+
width: e.width + e.grow * 2,
|
|
658
|
+
height: e.height
|
|
659
|
+
} : {
|
|
660
|
+
x: e.x,
|
|
661
|
+
y: e.y - e.grow,
|
|
662
|
+
width: e.width,
|
|
663
|
+
height: e.height + e.grow * 2
|
|
664
|
+
}, fe = (e, t) => {
|
|
592
665
|
let n = e.raw.outliers?.[t.index], r = n ? n.indexOf(t.outlier ?? NaN) : -1;
|
|
593
666
|
return (r >= 0 ? e.cols.outliers?.[t.index]?.[r] : void 0) ?? t.outlier ?? 0;
|
|
594
|
-
},
|
|
667
|
+
}, pe = (e, t) => {
|
|
595
668
|
let r = [];
|
|
596
669
|
for (let i of e.series) {
|
|
597
670
|
let e = i.connector;
|
|
598
671
|
if (!e || i.hidden || i.type !== "bar" || !i.barTop) continue;
|
|
599
|
-
let { x: a, count: o } = i.cols, s = i.barTop, c = i.barHalfWidth, [l, u] = t.view.x[0] <= t.view.x[1] ? t.view.x : [t.view.x[1], t.view.x[0]], d = n(e.color, .75),
|
|
672
|
+
let { x: a, count: o } = i.cols, s = i.barTop, c = i.barHalfWidth, [l, u] = t.view.x[0] <= t.view.x[1] ? t.view.x : [t.view.x[1], t.view.x[0]], d = n(e.color, .75), f = -1;
|
|
600
673
|
for (let n = 0; n < o && r.length < 1200; n++) if (Number.isFinite(s[n]) && Number.isFinite(a[n])) {
|
|
601
|
-
if (
|
|
602
|
-
let o =
|
|
674
|
+
if (f >= 0 && a[n] + c >= l && a[f] - c <= u) {
|
|
675
|
+
let o = _(t, a[f] + i.barOffset + c, s[f]), l = _(t, a[n] + i.barOffset - c, s[f]);
|
|
603
676
|
r.push({
|
|
604
677
|
x0: o.x,
|
|
605
678
|
y0: o.y,
|
|
@@ -610,21 +683,21 @@ var S = {
|
|
|
610
683
|
dash: e.dash
|
|
611
684
|
});
|
|
612
685
|
}
|
|
613
|
-
|
|
686
|
+
f = n;
|
|
614
687
|
}
|
|
615
688
|
}
|
|
616
689
|
return r;
|
|
617
|
-
},
|
|
690
|
+
}, me = (e, t) => {
|
|
618
691
|
let r = t.resolve ?? C, i = n(t.textMuted, .85);
|
|
619
692
|
return (e ?? []).map((e) => ({
|
|
620
693
|
from: e.from,
|
|
621
694
|
to: e.to,
|
|
622
695
|
color: e.color ? n(r(e.color, t.textMuted)) : i
|
|
623
696
|
}));
|
|
624
|
-
},
|
|
697
|
+
}, K = {
|
|
625
698
|
length: 6,
|
|
626
699
|
half: 3.5
|
|
627
|
-
},
|
|
700
|
+
}, he = (e, t, n, r) => {
|
|
628
701
|
let i = {
|
|
629
702
|
boxes: [],
|
|
630
703
|
byId: /* @__PURE__ */ new Map(),
|
|
@@ -636,11 +709,11 @@ var S = {
|
|
|
636
709
|
let e = o.raw.ids;
|
|
637
710
|
if (e) for (let t of e) t !== void 0 && i.ids.add(t);
|
|
638
711
|
if (o.hidden || !o.tooltip) continue;
|
|
639
|
-
let { x: s, y: c, count: l } = o.cols, u = o.type === "bar" && o.barBase && o.barTop, d =
|
|
712
|
+
let { x: s, y: c, count: l } = o.cols, u = o.type === "bar" && o.barBase && o.barTop, d = E(o);
|
|
640
713
|
for (let f = 0; f < l; f++) {
|
|
641
714
|
let l = u ? o.barBase[f] : c[f], p = u ? o.barTop[f] : c[f];
|
|
642
715
|
if (!Number.isFinite(s[f]) || !Number.isFinite(l) || !Number.isFinite(p)) continue;
|
|
643
|
-
let m = u ? o.barHalfWidth / Math.abs(t.xPerPx) :
|
|
716
|
+
let m = u ? o.barHalfWidth / Math.abs(t.xPerPx) : j(o, f) / 2, h = n(Math.min(l, p)), g = n(Math.max(l, p)), _ = u ? 0 : m, v = {
|
|
644
717
|
c: r(s[f] + d),
|
|
645
718
|
half: m,
|
|
646
719
|
start: h,
|
|
@@ -657,28 +730,28 @@ var S = {
|
|
|
657
730
|
}
|
|
658
731
|
}
|
|
659
732
|
return i;
|
|
660
|
-
},
|
|
661
|
-
let t = e.map((e) => [e.lo -
|
|
733
|
+
}, q = 8, J = 4, Y = (e) => {
|
|
734
|
+
let t = e.map((e) => [e.lo - J, e.hi + J]).sort((e, t) => e[0] - t[0]), n = [];
|
|
662
735
|
for (let e of t) {
|
|
663
736
|
let t = n[n.length - 1];
|
|
664
737
|
t && e[0] <= t[1] ? t[1] = Math.max(t[1], e[1]) : n.push(e);
|
|
665
738
|
}
|
|
666
739
|
return n;
|
|
667
|
-
},
|
|
740
|
+
}, ge = (e, t) => e.some(([e, n]) => t > e + 1e-6 && t < n - 1e-6), _e = (e, t, n, r) => {
|
|
668
741
|
let i = [t];
|
|
669
742
|
for (let [t, n] of e) i.push(t, n);
|
|
670
743
|
let a = null;
|
|
671
744
|
for (let o of i) {
|
|
672
745
|
let i = r * (o - t);
|
|
673
|
-
i < 0 || r * (n - o) < 0 ||
|
|
746
|
+
i < 0 || r * (n - o) < 0 || ge(e, o) || (a === null || i < r * (a - t)) && (a = o);
|
|
674
747
|
}
|
|
675
748
|
return a;
|
|
676
|
-
},
|
|
749
|
+
}, ve = (e, t) => {
|
|
677
750
|
let n = e.find(([e, n]) => t > e + 1e-6 && t < n - 1e-6);
|
|
678
751
|
if (!n) return t;
|
|
679
752
|
let [r, i] = n;
|
|
680
753
|
return t - r <= i - t ? r : i;
|
|
681
|
-
},
|
|
754
|
+
}, X = (e) => {
|
|
682
755
|
let t = [], n = (e, t) => Math.abs(e - t) < 1e-6;
|
|
683
756
|
for (let r of e) {
|
|
684
757
|
let e = t[t.length - 1];
|
|
@@ -687,11 +760,11 @@ var S = {
|
|
|
687
760
|
i && e && (n(i[0], e[0]) && n(e[0], r[0]) || n(i[1], e[1]) && n(e[1], r[1])) && t.pop(), t.push(r);
|
|
688
761
|
}
|
|
689
762
|
return t;
|
|
690
|
-
},
|
|
691
|
-
let o = e.c, s = t.c, c = n + i *
|
|
763
|
+
}, Z = (e, t, n, r, i, a) => {
|
|
764
|
+
let o = e.c, s = t.c, c = n + i * q, l = i * (r - c) >= 0, u = Math.min(o, s), d = Math.max(o, s), f = d - u < .5 ? [] : a.filter((n) => n !== e && n !== t && n.c + n.half > u && n.c - n.half < d);
|
|
692
765
|
if (l) {
|
|
693
|
-
let e =
|
|
694
|
-
if (e !== null) return
|
|
766
|
+
let e = _e(Y(f), c, r, i);
|
|
767
|
+
if (e !== null) return X([
|
|
695
768
|
[n, o],
|
|
696
769
|
[e, o],
|
|
697
770
|
[e, s],
|
|
@@ -717,20 +790,20 @@ var S = {
|
|
|
717
790
|
...[...m.values()].sort((e, t) => p * (e.c - t.c)).map((e) => ({
|
|
718
791
|
c: e.c,
|
|
719
792
|
half: e.half,
|
|
720
|
-
lanes:
|
|
793
|
+
lanes: Y(e.of)
|
|
721
794
|
})),
|
|
722
795
|
{
|
|
723
796
|
c: s,
|
|
724
797
|
half: t.half,
|
|
725
798
|
lanes: []
|
|
726
799
|
}
|
|
727
|
-
], g = r - i *
|
|
800
|
+
], g = r - i * q, _ = [[n, o], [c, o]], v = c;
|
|
728
801
|
for (let e = 0; e + 1 < h.length; e++) {
|
|
729
|
-
let t = h[e], n = h[e + 1], a = Math.abs(n.c - t.c) < .5 ? t.c + p * (Math.max(t.half, n.half) +
|
|
802
|
+
let t = h[e], n = h[e + 1], a = Math.abs(n.c - t.c) < .5 ? t.c + p * (Math.max(t.half, n.half) + J) : (t.c + p * t.half + n.c - p * n.half) / 2, o = e + 2 === h.length ? l && i * (r - v) >= 0 ? v : g : ve(n.lanes, l ? v : g);
|
|
730
803
|
o !== v && (_.push([v, a], [o, a]), v = o);
|
|
731
804
|
}
|
|
732
|
-
return _.push([v, s], [r, s]),
|
|
733
|
-
},
|
|
805
|
+
return _.push([v, s], [r, s]), X(_);
|
|
806
|
+
}, ye = (e, t, n) => {
|
|
734
807
|
if (!n.length) return [];
|
|
735
808
|
let r = t.horizontal, i = (e, t) => r ? {
|
|
736
809
|
x: e,
|
|
@@ -739,18 +812,18 @@ var S = {
|
|
|
739
812
|
x: t,
|
|
740
813
|
y: e
|
|
741
814
|
}, a = (e) => {
|
|
742
|
-
let n =
|
|
815
|
+
let n = _(t, 0, e);
|
|
743
816
|
return r ? n.x : n.y;
|
|
744
817
|
}, o = (e) => {
|
|
745
|
-
let n =
|
|
818
|
+
let n = _(t, e, 0);
|
|
746
819
|
return r ? n.y : n.x;
|
|
747
|
-
}, s = Math.sign(a(t.view.y[1]) - a(t.view.y[0])) || 1, c =
|
|
820
|
+
}, s = Math.sign(a(t.view.y[1]) - a(t.view.y[0])) || 1, c = he(e, t, a, o), l = (e) => c.byId.get(e) ?? (c.ids.has(e) ? void 0 : c.byRow.get(e)), { length: u, half: d } = K, f = [];
|
|
748
821
|
for (let e of n) {
|
|
749
822
|
let t = l(e.from), n = l(e.to);
|
|
750
823
|
if (!t || !n || t === n) continue;
|
|
751
|
-
let r = t.end + (t.dot ? s * t.half : 0), a = n.start - s * (n.dot ? n.half + 1 : 1), o = a - s * u,
|
|
752
|
-
|
|
753
|
-
points:
|
|
824
|
+
let r = t.end + (t.dot ? s * t.half : 0), a = n.start - s * (n.dot ? n.half + 1 : 1), o = a - s * u, p = Z(t, n, r, o, s, c.boxes);
|
|
825
|
+
f.push({
|
|
826
|
+
points: p.map(([e, t]) => i(e, t)),
|
|
754
827
|
head: [
|
|
755
828
|
i(a, n.c),
|
|
756
829
|
i(o, n.c - d),
|
|
@@ -760,13 +833,13 @@ var S = {
|
|
|
760
833
|
width: 1.25
|
|
761
834
|
});
|
|
762
835
|
}
|
|
763
|
-
return
|
|
764
|
-
},
|
|
836
|
+
return f;
|
|
837
|
+
}, be = 12, Q = (e) => {
|
|
765
838
|
if (!e.series.length || e.series.some((e) => e.type !== "heatmap")) return null;
|
|
766
839
|
let t = e.series.find((e) => !e.hidden && e.colorLut), i = t?.colorLut;
|
|
767
840
|
if (!t || !i) return null;
|
|
768
841
|
let a = [];
|
|
769
|
-
for (let e = 0; e <
|
|
842
|
+
for (let e = 0; e < be; e++) {
|
|
770
843
|
let t = i[Math.round(e / 11 * (i.length - 1))];
|
|
771
844
|
a.push(n(r(t ?? 0)));
|
|
772
845
|
}
|
|
@@ -785,18 +858,18 @@ var S = {
|
|
|
785
858
|
stops: a,
|
|
786
859
|
labels: l
|
|
787
860
|
};
|
|
788
|
-
},
|
|
861
|
+
}, xe = (e, t, n) => e === void 0 ? n > 1 || Q(t) !== null : !!e, Se = (e) => e === "scatter" ? "dot" : e === "line" ? "line" : "square", $ = (e, t, n) => n ?? (e.tooltipMode === "axis" && t.items.some((t) => {
|
|
789
862
|
let n = e.series[t.seriesIndex].type;
|
|
790
863
|
return n === "line" || n === "area";
|
|
791
864
|
}) && !t.items.some((t) => {
|
|
792
865
|
let n = e.series[t.seriesIndex].type;
|
|
793
866
|
return n === "bar" || n === "candlestick" || n === "boxplot";
|
|
794
|
-
})),
|
|
867
|
+
})), Ce = (e, t, n, r) => {
|
|
795
868
|
if (!$(e, n, r)) return null;
|
|
796
|
-
let i = n.items[0], a = t.xToPx(e.series[i.seriesIndex]?.cols.x[i.index] ??
|
|
869
|
+
let i = n.items[0], a = t.xToPx(e.series[i.seriesIndex]?.cols.x[i.index] ?? x(e, i.x)), o = t.horizontal ? t.plot.y : t.plot.x, s = o + (t.horizontal ? t.plot.height : t.plot.width);
|
|
797
870
|
return a >= o && a <= s ? a : null;
|
|
798
871
|
};
|
|
799
872
|
//#endregion
|
|
800
|
-
export {
|
|
873
|
+
export { K as ARROW_HEAD, S as DEFAULT_PADDING, re as collectPointLabels, Q as colorLegend, pe as connectorSegments, B as contrastRing, Ce as crosshairAt, ye as dependencyArrows, j as dotSize, C as fallbackResolve, ce as hitTest, N as hoverItemOf, z as hoverMarks, w as layoutChart, Se as legendShape, xe as legendShown, de as liftedBarRect, D as pointOf, te as resolveAnnotations, me as resolveDependencies, le as sameHover, $ as showsCrosshair, L as tooltipContent };
|
|
801
874
|
|
|
802
875
|
//# sourceMappingURL=scene.js.map
|