apexcharts 8.2.0 → 8.3.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/README.md +7 -7
- package/dist/apexcharts.common.js +2 -2
- package/dist/apexcharts.core.js +271 -173
- package/dist/apexcharts.core.min.js +2 -2
- package/dist/apexcharts.css +35 -0
- package/dist/apexcharts.esm.js +1722 -1527
- package/dist/apexcharts.full.js +1459 -1075
- package/dist/apexcharts.full.min.js +2 -2
- package/dist/apexcharts.js +994 -715
- package/dist/apexcharts.min.js +2 -2
- package/dist/apexcharts.ssr.common.js +2 -2
- package/dist/apexcharts.ssr.esm.js +994 -715
- package/dist/area.common.js +2 -2
- package/dist/area.esm.js +91 -40
- package/dist/bar.common.js +2 -2
- package/dist/bar.esm.js +433 -394
- package/dist/bar.js +2 -2
- package/dist/boxPlot.common.js +2 -2
- package/dist/boxPlot.esm.js +364 -322
- package/dist/bubble.common.js +2 -2
- package/dist/bubble.esm.js +91 -40
- package/dist/candlestick.common.js +2 -2
- package/dist/candlestick.esm.js +364 -322
- package/dist/candlestick.js +2 -2
- package/dist/column.common.js +2 -2
- package/dist/column.esm.js +433 -394
- package/dist/core.common.js +2 -2
- package/dist/core.esm.js +271 -173
- package/dist/donut.common.js +1 -1
- package/dist/donut.esm.js +1 -1
- package/dist/dumbbell.common.js +2 -2
- package/dist/dumbbell.esm.js +433 -394
- package/dist/features/all.common.js +2 -2
- package/dist/features/all.esm.js +250 -187
- package/dist/features/annotations.common.js +1 -1
- package/dist/features/annotations.esm.js +1 -1
- package/dist/features/annotations.js +1 -1
- package/dist/features/context-menu.common.js +1 -1
- package/dist/features/context-menu.esm.js +1 -1
- package/dist/features/context-menu.js +1 -1
- package/dist/features/drilldown.common.js +2 -2
- package/dist/features/drilldown.esm.js +4 -2
- package/dist/features/drilldown.js +2 -2
- package/dist/features/dumbbell.common.js +1 -1
- package/dist/features/dumbbell.esm.js +1 -1
- package/dist/features/dumbbell.js +1 -1
- package/dist/features/exports.common.js +1 -1
- package/dist/features/exports.esm.js +1 -1
- package/dist/features/exports.js +1 -1
- package/dist/features/facet.common.js +1 -1
- package/dist/features/facet.esm.js +1 -1
- package/dist/features/facet.js +1 -1
- package/dist/features/highlight-filter.common.js +2 -2
- package/dist/features/highlight-filter.esm.js +14 -9
- package/dist/features/highlight-filter.js +2 -2
- package/dist/features/history.common.js +1 -1
- package/dist/features/history.esm.js +1 -1
- package/dist/features/history.js +1 -1
- package/dist/features/ink.common.js +1 -1
- package/dist/features/ink.esm.js +1 -1
- package/dist/features/ink.js +1 -1
- package/dist/features/keyboard.common.js +2 -2
- package/dist/features/keyboard.esm.js +97 -145
- package/dist/features/keyboard.js +2 -2
- package/dist/features/legend.common.js +2 -2
- package/dist/features/legend.esm.js +63 -43
- package/dist/features/legend.js +2 -2
- package/dist/features/link.common.js +1 -1
- package/dist/features/link.esm.js +1 -1
- package/dist/features/link.js +1 -1
- package/dist/features/marks.common.js +1 -1
- package/dist/features/marks.esm.js +1 -1
- package/dist/features/marks.js +1 -1
- package/dist/features/measure.common.js +1 -1
- package/dist/features/measure.esm.js +1 -1
- package/dist/features/measure.js +1 -1
- package/dist/features/morph.common.js +1 -1
- package/dist/features/morph.esm.js +1 -1
- package/dist/features/morph.js +1 -1
- package/dist/features/perspectives.common.js +1 -1
- package/dist/features/perspectives.esm.js +1 -1
- package/dist/features/perspectives.js +1 -1
- package/dist/features/raincloud.common.js +1 -1
- package/dist/features/raincloud.esm.js +1 -1
- package/dist/features/raincloud.js +1 -1
- package/dist/features/renderer-canvas.common.js +2 -2
- package/dist/features/renderer-canvas.esm.js +2 -1
- package/dist/features/renderer-canvas.js +2 -2
- package/dist/features/stats.common.js +1 -1
- package/dist/features/stats.esm.js +1 -1
- package/dist/features/stats.js +1 -1
- package/dist/features/storyboard.common.js +1 -1
- package/dist/features/storyboard.esm.js +1 -1
- package/dist/features/storyboard.js +1 -1
- package/dist/features/streamgraph.common.js +2 -2
- package/dist/features/streamgraph.esm.js +3 -2
- package/dist/features/streamgraph.js +2 -2
- package/dist/features/toolbar.common.js +2 -2
- package/dist/features/toolbar.esm.js +92 -2
- package/dist/features/toolbar.js +2 -2
- package/dist/features/trellis.common.js +2 -2
- package/dist/features/trellis.esm.js +83 -47
- package/dist/features/trellis.js +2 -2
- package/dist/features/waterfall.common.js +1 -1
- package/dist/features/waterfall.esm.js +1 -1
- package/dist/features/waterfall.js +1 -1
- package/dist/features/weave.common.js +1 -1
- package/dist/features/weave.esm.js +1 -1
- package/dist/features/weave.js +1 -1
- package/dist/full.common.js +2 -2
- package/dist/full.esm.js +950 -795
- package/dist/heatmap.common.js +2 -2
- package/dist/heatmap.esm.js +3 -17
- package/dist/heatmap.js +2 -2
- package/dist/histogram.common.js +2 -2
- package/dist/histogram.esm.js +433 -394
- package/dist/icicle.common.js +2 -2
- package/dist/icicle.esm.js +54 -38
- package/dist/icicle.js +2 -2
- package/dist/line.common.js +2 -2
- package/dist/line.esm.js +91 -40
- package/dist/line.js +2 -2
- package/dist/locales/en.json +2 -1
- package/dist/locales/ro.json +3 -2
- package/dist/pictograms.common.js +1 -1
- package/dist/pictograms.esm.js +1 -1
- package/dist/pictograms.js +1 -1
- package/dist/pie.common.js +1 -1
- package/dist/pie.esm.js +1 -1
- package/dist/pie.js +1 -1
- package/dist/polarArea.common.js +1 -1
- package/dist/polarArea.esm.js +1 -1
- package/dist/radar.common.js +2 -2
- package/dist/radar.esm.js +5 -4
- package/dist/radar.js +2 -2
- package/dist/radialBar.common.js +1 -1
- package/dist/radialBar.esm.js +1 -1
- package/dist/radialBar.js +1 -1
- package/dist/raincloud.common.js +2 -2
- package/dist/raincloud.esm.js +72 -26
- package/dist/rangeArea.common.js +2 -2
- package/dist/rangeArea.esm.js +91 -40
- package/dist/rangeBar.common.js +2 -2
- package/dist/rangeBar.esm.js +433 -394
- package/dist/scatter.common.js +2 -2
- package/dist/scatter.esm.js +91 -40
- package/dist/streamgraph.common.js +2 -2
- package/dist/streamgraph.esm.js +93 -41
- package/dist/sunburst.common.js +2 -2
- package/dist/sunburst.esm.js +103 -93
- package/dist/sunburst.js +2 -2
- package/dist/treemap.common.js +2 -2
- package/dist/treemap.esm.js +105 -86
- package/dist/treemap.js +2 -2
- package/dist/unit-shapes.common.js +1 -1
- package/dist/unit-shapes.esm.js +1 -1
- package/dist/unit-shapes.js +1 -1
- package/dist/unit.common.js +2 -2
- package/dist/unit.esm.js +280 -202
- package/dist/unit.js +2 -2
- package/dist/violin.common.js +2 -2
- package/dist/violin.esm.js +72 -26
- package/dist/violin.js +2 -2
- package/dist/waterfall.common.js +2 -2
- package/dist/waterfall.esm.js +432 -393
- package/package.json +1 -1
- package/src/apexcharts.js +13 -6
- package/src/assets/apexcharts.css +35 -0
- package/src/charts/Bar.js +62 -55
- package/src/charts/BarStacked.js +80 -88
- package/src/charts/BoxCandleStick.js +28 -31
- package/src/charts/Icicle.js +37 -37
- package/src/charts/Line.js +118 -42
- package/src/charts/Radar.js +5 -7
- package/src/charts/RangeBar.js +47 -43
- package/src/charts/Sunburst.js +101 -98
- package/src/charts/Treemap.js +108 -66
- package/src/charts/Unit.js +368 -250
- package/src/charts/Violin.js +48 -30
- package/src/charts/common/Breadcrumb.js +2 -2
- package/src/charts/common/Hierarchy.js +32 -11
- package/src/charts/common/Jitter.js +32 -7
- package/src/charts/common/bar/DataLabels.js +76 -81
- package/src/charts/common/bar/Helpers.js +43 -7
- package/src/charts/common/line/Helpers.js +12 -15
- package/src/charts/common/partition/NodeTooltip.js +8 -1
- package/src/charts/common/partition/Partition.js +33 -1
- package/src/charts/common/treemap/Helpers.js +3 -11
- package/src/locales/en.json +2 -1
- package/src/locales/ro.json +3 -2
- package/src/modules/Core.js +4 -0
- package/src/modules/CoreUtils.js +18 -42
- package/src/modules/Data.js +23 -24
- package/src/modules/DataLabels.js +6 -6
- package/src/modules/Graphics.js +62 -49
- package/src/modules/Markers.js +3 -1
- package/src/modules/Range.js +44 -29
- package/src/modules/RendererController.js +17 -3
- package/src/modules/Scales.js +32 -9
- package/src/modules/Series.js +39 -18
- package/src/modules/Theme.js +1 -1
- package/src/modules/ZoomPanSelection.js +119 -2
- package/src/modules/accessibility/KeyboardNavigation.js +114 -186
- package/src/modules/animations/LengthTransition.js +22 -2
- package/src/modules/drilldown/Breadcrumb.js +5 -2
- package/src/modules/helpers/Destroy.js +1 -1
- package/src/modules/highlightFilter/HighlightFilter.js +8 -9
- package/src/modules/highlightFilter/TreemapPart.js +2 -2
- package/src/modules/legend/HeatmapGradientLegend.js +76 -45
- package/src/modules/legend/Helpers.js +2 -0
- package/src/modules/legend/Legend.js +11 -12
- package/src/modules/settings/Options.js +7 -0
- package/src/modules/streamgraph/StreamLabels.js +1 -0
- package/src/modules/tooltip/Tooltip.js +20 -4
- package/src/modules/tooltip/Utils.js +8 -0
- package/src/modules/trellis/Trellis.js +6 -0
- package/src/modules/trellis/TrellisChrome.js +18 -7
- package/src/modules/trellis/TrellisSync.js +2 -0
- package/src/renderers/canvas/CanvasGraphics.js +1 -0
- package/src/ssr/DOMShim.js +10 -0
- package/src/types/internal.d.ts +9 -3
- package/types/apexcharts.d.ts +31 -12
package/dist/apexcharts.core.js
CHANGED
|
@@ -7,6 +7,7 @@ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
|
7
7
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
9
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
|
+
var __pow = Math.pow;
|
|
10
11
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
12
|
var __spreadValues = (a, b) => {
|
|
12
13
|
for (var prop in b || (b = {}))
|
|
@@ -54,7 +55,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
54
55
|
});
|
|
55
56
|
};
|
|
56
57
|
/*!
|
|
57
|
-
* ApexCharts v8.
|
|
58
|
+
* ApexCharts v8.3.0
|
|
58
59
|
* (c) 2018-2026 ApexCharts
|
|
59
60
|
*/
|
|
60
61
|
|
|
@@ -128,6 +129,15 @@ var __async = (__this, __arguments, generator) => {
|
|
|
128
129
|
setAttribute(name2, value) {
|
|
129
130
|
this.attributes.set(name2, value);
|
|
130
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* Namespaced attributes serialize by their qualified name.
|
|
134
|
+
* @param {any} _ns
|
|
135
|
+
* @param {string} name
|
|
136
|
+
* @param {any} value
|
|
137
|
+
*/
|
|
138
|
+
setAttributeNS(_ns, name2, value) {
|
|
139
|
+
this.setAttribute(name2, value);
|
|
140
|
+
}
|
|
131
141
|
/**
|
|
132
142
|
* @param {string} name
|
|
133
143
|
*/
|
|
@@ -1925,7 +1935,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
1925
1935
|
}
|
|
1926
1936
|
}
|
|
1927
1937
|
const name = "en";
|
|
1928
|
-
const options = { "months": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], "shortMonths": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], "days": ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], "shortDays": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], "toolbar": { "exportToSVG": "Download SVG", "exportToPNG": "Download PNG", "exportToCSV": "Download CSV", "menu": "Menu", "selection": "Selection", "selectionZoom": "Selection Zoom", "zoomIn": "Zoom In", "zoomOut": "Zoom Out", "pan": "Panning", "reset": "Reset Zoom", "measure": "Measure" } };
|
|
1938
|
+
const options = { "months": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], "shortMonths": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], "days": ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], "shortDays": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], "toolbar": { "exportToSVG": "Download SVG", "exportToPNG": "Download PNG", "exportToCSV": "Download CSV", "menu": "Menu", "selection": "Selection", "selectionZoom": "Selection Zoom", "zoomIn": "Zoom In", "zoomOut": "Zoom Out", "pan": "Panning", "reset": "Reset Zoom", "measure": "Measure", "wheelZoomHint": "Use {key} + scroll to zoom" } };
|
|
1929
1939
|
const en = {
|
|
1930
1940
|
name,
|
|
1931
1941
|
options
|
|
@@ -2735,7 +2745,14 @@ var __async = (__this, __arguments, generator) => {
|
|
|
2735
2745
|
// asked for and nobody can undo is a trap. Set either to true to
|
|
2736
2746
|
// force the gesture on regardless (for a page that supplies its own
|
|
2737
2747
|
// reset control), or false to turn it off outright.
|
|
2748
|
+
//
|
|
2749
|
+
// The 'auto' wheel is also cooperative: a bare wheel scrolls the
|
|
2750
|
+
// page, and Ctrl/Cmd + wheel (or a trackpad pinch) zooms, so a page
|
|
2751
|
+
// of charts scrolls past them. `true` zooms on every wheel.
|
|
2738
2752
|
allowMouseWheelZoom: "auto",
|
|
2753
|
+
// With the cooperative wheel, a bare scroll over the chart briefly
|
|
2754
|
+
// shows how to zoom it ("Use Ctrl + scroll to zoom").
|
|
2755
|
+
wheelHint: true,
|
|
2739
2756
|
// Momentum: two-finger pinch-zoom on touch devices. Zooms the x-axis
|
|
2740
2757
|
// around the pinch centroid (matching the x-only wheel/toolbar zoom),
|
|
2741
2758
|
// frame-by-frame rather than the 400ms wheel throttle.
|
|
@@ -9073,21 +9090,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9073
9090
|
});
|
|
9074
9091
|
gl.seriesYAxisMap = axisSeriesMap.map((x) => x);
|
|
9075
9092
|
gl.seriesYAxisReverseMap = seriesYAxisReverseMap.map((x) => x);
|
|
9076
|
-
gl.seriesYAxisMap.forEach((axisSeries, ai) => {
|
|
9077
|
-
axisSeries.forEach((si) => {
|
|
9078
|
-
if (
|
|
9079
|
-
/** @type {any} */
|
|
9080
|
-
cnf.series[si] && /** @type {any} */
|
|
9081
|
-
cnf.series[si].group === void 0
|
|
9082
|
-
) {
|
|
9083
|
-
const _series = (
|
|
9084
|
-
/** @type {any} */
|
|
9085
|
-
cnf.series[si]
|
|
9086
|
-
);
|
|
9087
|
-
_series.group = "apexcharts-axis-".concat(ai.toString());
|
|
9088
|
-
}
|
|
9089
|
-
});
|
|
9090
|
-
});
|
|
9091
9093
|
}
|
|
9092
9094
|
/**
|
|
9093
9095
|
* @param {number | null} [index]
|
|
@@ -9221,12 +9223,15 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9221
9223
|
(s2, i2) => isBarSeries(s2) ? -1 : i2
|
|
9222
9224
|
).filter((i2) => i2 !== -1) : [];
|
|
9223
9225
|
const stackedTotals = excluded.length ? this.getStackedSeriesTotals(excluded) : w.seriesData.stackedSeriesTotals;
|
|
9224
|
-
const sx = w.axisFlags.isXNumeric &&
|
|
9226
|
+
const sx = w.axisFlags.isXNumeric && w.seriesData.seriesX;
|
|
9227
|
+
const gi = w.labelData.seriesGroupIndex;
|
|
9228
|
+
const byKey = sx || w.labelData.seriesGroups.length > 1;
|
|
9229
|
+
const key = (i2, j2) => gi[i2] + " " + (sx ? sx[i2][j2] : j2);
|
|
9225
9230
|
const byX = /* @__PURE__ */ new Map();
|
|
9226
|
-
if (
|
|
9231
|
+
if (byKey) {
|
|
9227
9232
|
w.seriesData.series.forEach((s2, i2) => {
|
|
9228
9233
|
if (excluded.indexOf(i2) < 0) {
|
|
9229
|
-
s2.forEach((v, j2) => byX.set(
|
|
9234
|
+
s2.forEach((v, j2) => byX.set(key(i2, j2), (byX.get(key(i2, j2)) || 0) + v));
|
|
9230
9235
|
}
|
|
9231
9236
|
});
|
|
9232
9237
|
}
|
|
@@ -9234,7 +9239,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9234
9239
|
const seriesPercent = [];
|
|
9235
9240
|
if (Array.isArray(ser)) {
|
|
9236
9241
|
for (let j2 = 0; j2 < ser.length; j2++) {
|
|
9237
|
-
const total =
|
|
9242
|
+
const total = byKey ? byX.get(key(i2, j2)) : stackedTotals[j2];
|
|
9238
9243
|
let percent = 0;
|
|
9239
9244
|
if (total) {
|
|
9240
9245
|
percent = 100 * ser[j2] / total;
|
|
@@ -9281,13 +9286,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9281
9286
|
if (!zRatio) {
|
|
9282
9287
|
zRatio = 1;
|
|
9283
9288
|
}
|
|
9284
|
-
|
|
9285
|
-
|
|
9286
|
-
|
|
9287
|
-
|
|
9288
|
-
|
|
9289
|
-
_hasNegsGl.hasNegs = true;
|
|
9290
|
-
}
|
|
9289
|
+
const _hasNegsGl = (
|
|
9290
|
+
/** @type {any} */
|
|
9291
|
+
gl
|
|
9292
|
+
);
|
|
9293
|
+
_hasNegsGl.hasNegs = gl.minY !== Number.MIN_VALUE && Math.abs(gl.minY) !== 0;
|
|
9291
9294
|
if (w.globals.seriesYAxisReverseMap.length > 0) {
|
|
9292
9295
|
const scaleBaseLineYScale = (y, i2) => {
|
|
9293
9296
|
const yAxis = w.config.yaxis[w.globals.seriesYAxisReverseMap[i2]];
|
|
@@ -9444,7 +9447,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9444
9447
|
// other series of the same type on the same axis.
|
|
9445
9448
|
/**
|
|
9446
9449
|
* @param {Record<string, any>} typeSeries
|
|
9447
|
-
* @param {
|
|
9450
|
+
* @param {number[]} typeGroups
|
|
9448
9451
|
* @param {string} type
|
|
9449
9452
|
* @param {string} chartClass
|
|
9450
9453
|
*/
|
|
@@ -9456,10 +9459,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
9456
9459
|
const gs = [];
|
|
9457
9460
|
const gi = [];
|
|
9458
9461
|
typeSeries.i.forEach((i2, ii) => {
|
|
9459
|
-
if (
|
|
9460
|
-
/** @type {Record<string,any>} */
|
|
9461
|
-
w.config.series[i2].group === gn
|
|
9462
|
-
) {
|
|
9462
|
+
if (w.labelData.seriesGroupIndex[i2] === gn) {
|
|
9463
9463
|
gs.push(typeSeries.series[ii]);
|
|
9464
9464
|
gi.push(i2);
|
|
9465
9465
|
}
|
|
@@ -11502,6 +11502,22 @@ var __async = (__this, __arguments, generator) => {
|
|
|
11502
11502
|
].join(" ");
|
|
11503
11503
|
return arc;
|
|
11504
11504
|
}
|
|
11505
|
+
/**
|
|
11506
|
+
* stroke.dashArray of a series, shared with the canvas renderer. A plugin
|
|
11507
|
+
* may have claimed it: resolved here rather than written into the config,
|
|
11508
|
+
* so the caller's own dashing is untouched and there is nothing to restore
|
|
11509
|
+
* when the claim goes. See weave/Claims.
|
|
11510
|
+
* @param {number} realIndex
|
|
11511
|
+
*/
|
|
11512
|
+
seriesDash(realIndex) {
|
|
11513
|
+
const d = this.w.config.stroke.dashArray;
|
|
11514
|
+
return resolveClaimed(
|
|
11515
|
+
this.w,
|
|
11516
|
+
"stroke.dashArray",
|
|
11517
|
+
realIndex,
|
|
11518
|
+
Array.isArray(d) ? d[realIndex] : d
|
|
11519
|
+
);
|
|
11520
|
+
}
|
|
11505
11521
|
/**
|
|
11506
11522
|
* @memberof Graphics
|
|
11507
11523
|
* @param {Record<string, any>} opts
|
|
@@ -11574,19 +11590,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
11574
11590
|
w.globals.animationEnded = true;
|
|
11575
11591
|
}
|
|
11576
11592
|
}
|
|
11577
|
-
const strokeDashArrayOpt = w.config.stroke.dashArray;
|
|
11578
|
-
let strokeDashArray = 0;
|
|
11579
|
-
if (Array.isArray(strokeDashArrayOpt)) {
|
|
11580
|
-
strokeDashArray = strokeDashArrayOpt[realIndex];
|
|
11581
|
-
} else {
|
|
11582
|
-
strokeDashArray = w.config.stroke.dashArray;
|
|
11583
|
-
}
|
|
11584
|
-
strokeDashArray = resolveClaimed(
|
|
11585
|
-
w,
|
|
11586
|
-
"stroke.dashArray",
|
|
11587
|
-
realIndex,
|
|
11588
|
-
strokeDashArray
|
|
11589
|
-
);
|
|
11590
11593
|
const el = this.drawPath({
|
|
11591
11594
|
d,
|
|
11592
11595
|
stroke,
|
|
@@ -11595,7 +11598,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
11595
11598
|
fillOpacity: 1,
|
|
11596
11599
|
classes: className,
|
|
11597
11600
|
strokeLinecap,
|
|
11598
|
-
strokeDashArray
|
|
11601
|
+
strokeDashArray: this.seriesDash(realIndex)
|
|
11599
11602
|
});
|
|
11600
11603
|
el.attr("index", realIndex);
|
|
11601
11604
|
if (shouldClipToGrid) {
|
|
@@ -11788,13 +11791,19 @@ var __async = (__this, __arguments, generator) => {
|
|
|
11788
11791
|
}
|
|
11789
11792
|
return g;
|
|
11790
11793
|
}
|
|
11791
|
-
/** @param {{ text: any, maxWidth: any, fontSize: any, fontFamily?: any }} opts */
|
|
11792
|
-
getTextBasedOnMaxWidth({ text, maxWidth, fontSize, fontFamily }) {
|
|
11793
|
-
const tRects = this.getTextRects(
|
|
11794
|
-
|
|
11795
|
-
|
|
11794
|
+
/** @param {{ text: any, maxWidth: any, fontSize: any, fontFamily?: any, fontWeight?: any }} opts */
|
|
11795
|
+
getTextBasedOnMaxWidth({ text, maxWidth, fontSize, fontFamily, fontWeight }) {
|
|
11796
|
+
const tRects = this.getTextRects(
|
|
11797
|
+
text,
|
|
11798
|
+
fontSize,
|
|
11799
|
+
fontFamily,
|
|
11800
|
+
"",
|
|
11801
|
+
true,
|
|
11802
|
+
fontWeight
|
|
11803
|
+
);
|
|
11804
|
+
const n2 = Math.floor(maxWidth / (tRects.width / text.length)) - 3;
|
|
11796
11805
|
if (maxWidth < tRects.width) {
|
|
11797
|
-
return text.slice(0,
|
|
11806
|
+
return n2 < 0 ? "" : text.slice(0, n2) + "...";
|
|
11798
11807
|
}
|
|
11799
11808
|
return text;
|
|
11800
11809
|
}
|
|
@@ -11831,7 +11840,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
11831
11840
|
const commonProps = {
|
|
11832
11841
|
maxWidth,
|
|
11833
11842
|
fontSize,
|
|
11834
|
-
fontFamily
|
|
11843
|
+
fontFamily,
|
|
11844
|
+
fontWeight
|
|
11835
11845
|
};
|
|
11836
11846
|
let elText;
|
|
11837
11847
|
if (Array.isArray(text)) {
|
|
@@ -12032,7 +12042,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12032
12042
|
if (w.config.states.hover.filter.type !== "none") {
|
|
12033
12043
|
if (!w.interact.isTouchDevice) {
|
|
12034
12044
|
const hoverFilter = w.config.states.hover.filter;
|
|
12035
|
-
filters.applyFilter(
|
|
12045
|
+
filters.applyFilter(
|
|
12046
|
+
path,
|
|
12047
|
+
Filters.isSliceChart(w) ? j2 : i2,
|
|
12048
|
+
hoverFilter.type,
|
|
12049
|
+
hoverFilter.value
|
|
12050
|
+
);
|
|
12036
12051
|
}
|
|
12037
12052
|
}
|
|
12038
12053
|
}
|
|
@@ -12066,33 +12081,28 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12066
12081
|
}
|
|
12067
12082
|
if (Filters.hoverOutlineOwnsHoverState(w)) return;
|
|
12068
12083
|
if (w.config.states.hover.filter.type !== "none") {
|
|
12069
|
-
filters.getDefaultFilter(path, i2);
|
|
12084
|
+
filters.getDefaultFilter(path, Filters.isSliceChart(w) ? j2 : i2);
|
|
12070
12085
|
}
|
|
12071
12086
|
}
|
|
12072
12087
|
/**
|
|
12073
12088
|
* Clear every selected data point (single-select mode): reset the selection
|
|
12074
|
-
* array and restore the default filter on
|
|
12075
|
-
*
|
|
12076
|
-
*
|
|
12077
|
-
* @param {any} filters
|
|
12089
|
+
* array and restore the default filter on each selected node, with its own
|
|
12090
|
+
* series index (dropShadow.enabledOnSeries is per series; a pie slice's
|
|
12091
|
+
* shadow is per slice, j).
|
|
12092
|
+
* @param {any} filters
|
|
12078
12093
|
*/
|
|
12079
|
-
_clearAllDataPointSelections(filters
|
|
12094
|
+
_clearAllDataPointSelections(filters) {
|
|
12080
12095
|
const w = this.w;
|
|
12081
12096
|
w.interact.selectedDataPoints = [];
|
|
12082
|
-
|
|
12083
|
-
|
|
12084
|
-
);
|
|
12085
|
-
const elCircles = w.dom.Paper.find(
|
|
12086
|
-
".apexcharts-series circle:not(.apexcharts-decoration-element), .apexcharts-series rect:not(.apexcharts-decoration-element)"
|
|
12087
|
-
);
|
|
12088
|
-
const deSelect = (els) => {
|
|
12089
|
-
Array.prototype.forEach.call(els, (el) => {
|
|
12097
|
+
w.dom.Paper.find('.apexcharts-series [selected="true"]').forEach(
|
|
12098
|
+
(el) => {
|
|
12090
12099
|
el.node.setAttribute("selected", "false");
|
|
12091
|
-
filters.getDefaultFilter(
|
|
12092
|
-
|
|
12093
|
-
|
|
12094
|
-
|
|
12095
|
-
|
|
12100
|
+
filters.getDefaultFilter(
|
|
12101
|
+
el,
|
|
12102
|
+
+el.node.getAttribute(Filters.isSliceChart(w) ? "j" : "index")
|
|
12103
|
+
);
|
|
12104
|
+
}
|
|
12105
|
+
);
|
|
12096
12106
|
}
|
|
12097
12107
|
/**
|
|
12098
12108
|
* Toggle the selected state of a single data point. Mutates
|
|
@@ -12112,7 +12122,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12112
12122
|
return "false";
|
|
12113
12123
|
}
|
|
12114
12124
|
if (!w.config.states.active.allowMultipleDataPointsSelection && w.interact.selectedDataPoints.length > 0) {
|
|
12115
|
-
this._clearAllDataPointSelections(filters
|
|
12125
|
+
this._clearAllDataPointSelections(filters);
|
|
12116
12126
|
}
|
|
12117
12127
|
path.node.setAttribute("selected", "true");
|
|
12118
12128
|
if (typeof w.interact.selectedDataPoints[i2] === "undefined") {
|
|
@@ -12132,10 +12142,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12132
12142
|
if (Filters.sliceOffsetOwnsActiveState(w)) return;
|
|
12133
12143
|
if (selected === "true") {
|
|
12134
12144
|
const activeFilter = w.config.states.active.filter;
|
|
12135
|
-
if (activeFilter !== "none") {
|
|
12145
|
+
if (activeFilter.type !== "none") {
|
|
12136
12146
|
filters.applyFilter(path, i2, activeFilter.type, activeFilter.value);
|
|
12137
12147
|
} else {
|
|
12138
|
-
if (w.config.states.hover.filter !== "none") {
|
|
12148
|
+
if (w.config.states.hover.filter.type !== "none") {
|
|
12139
12149
|
if (!w.interact.isTouchDevice) {
|
|
12140
12150
|
const hoverFilter = w.config.states.hover.filter;
|
|
12141
12151
|
filters.applyFilter(path, i2, hoverFilter.type, hoverFilter.value);
|
|
@@ -12168,7 +12178,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12168
12178
|
const crossfilterClick = !!(link && (typeof link.dimension === "function" || link.enabled));
|
|
12169
12179
|
if (!crossfilterClick) {
|
|
12170
12180
|
const selected = this._togglePointSelection(path, filters, i2, j2);
|
|
12171
|
-
this._applyPointSelectionFilter(
|
|
12181
|
+
this._applyPointSelectionFilter(
|
|
12182
|
+
path,
|
|
12183
|
+
filters,
|
|
12184
|
+
Filters.isSliceChart(w) ? j2 : i2,
|
|
12185
|
+
selected
|
|
12186
|
+
);
|
|
12172
12187
|
}
|
|
12173
12188
|
if (typeof w.config.chart.events.dataPointSelection === "function") {
|
|
12174
12189
|
w.config.chart.events.dataPointSelection(e2, this.ctx, {
|
|
@@ -12956,7 +12971,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
12956
12971
|
}
|
|
12957
12972
|
setGlobalMarkerSize() {
|
|
12958
12973
|
const w = this.w;
|
|
12959
|
-
w.globals.markers.size = Array.isArray(w.config.markers.size) ? w.config.markers.size : [w.config.markers.size];
|
|
12974
|
+
w.globals.markers.size = Array.isArray(w.config.markers.size) ? w.config.markers.size.slice() : [w.config.markers.size];
|
|
12960
12975
|
if (w.globals.markers.size.length > 0) {
|
|
12961
12976
|
if (w.globals.markers.size.length < w.seriesData.series.length + 1) {
|
|
12962
12977
|
for (let i2 = 0; i2 <= w.seriesData.series.length; i2++) {
|
|
@@ -13666,6 +13681,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
13666
13681
|
* @param {string} fontSize
|
|
13667
13682
|
*/
|
|
13668
13683
|
dataLabelsCorrection(x, y, val, i2, dataPointIndex, alwaysDrawDataLabel, fontSize) {
|
|
13684
|
+
var _a;
|
|
13669
13685
|
const w = this.w;
|
|
13670
13686
|
const graphics = new Graphics(this.w);
|
|
13671
13687
|
let drawnextLabel = false;
|
|
@@ -13708,6 +13724,9 @@ var __async = (__this, __arguments, generator) => {
|
|
|
13708
13724
|
if (dataPointIndex === 0 || alwaysDrawDataLabel) {
|
|
13709
13725
|
drawnextLabel = true;
|
|
13710
13726
|
}
|
|
13727
|
+
if (drawnextLabel) {
|
|
13728
|
+
((_a = w.globals.lastDrawnDataLabelsIndexes)[i2] || (_a[i2] = [])).push(len + 1);
|
|
13729
|
+
}
|
|
13711
13730
|
return {
|
|
13712
13731
|
x,
|
|
13713
13732
|
y,
|
|
@@ -13953,10 +13972,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
13953
13972
|
}
|
|
13954
13973
|
parent.add(dataLabelText);
|
|
13955
13974
|
if (penDrawn(w, i2)) applyProgressiveReveal(dataLabelText, x, w);
|
|
13956
|
-
if (typeof w.globals.lastDrawnDataLabelsIndexes[i2] === "undefined") {
|
|
13957
|
-
w.globals.lastDrawnDataLabelsIndexes[i2] = [];
|
|
13958
|
-
}
|
|
13959
|
-
w.globals.lastDrawnDataLabelsIndexes[i2].push(j2);
|
|
13960
13975
|
}
|
|
13961
13976
|
return dataLabelText;
|
|
13962
13977
|
}
|
|
@@ -15920,6 +15935,13 @@ var __async = (__this, __arguments, generator) => {
|
|
|
15920
15935
|
if (typeof gl.yAxisScale[index] === "undefined") {
|
|
15921
15936
|
gl.yAxisScale[index] = [];
|
|
15922
15937
|
}
|
|
15938
|
+
if (y.logarithmic && minY <= Number.MIN_VALUE) {
|
|
15939
|
+
const s2 = this.w.seriesData.series;
|
|
15940
|
+
const map = gl.isMultipleYAxis && gl.seriesYAxisMap[index];
|
|
15941
|
+
const b = y.logBase || 10;
|
|
15942
|
+
const m = (map ? map.map((i2) => s2[i2]) : s2).flat().reduce((a2, v) => v > 0 && (!a2 || v < a2) ? v : a2, 0);
|
|
15943
|
+
minY = m && Math.min(b, __pow(b, Math.floor(Math.log(m) / Math.log(b))));
|
|
15944
|
+
}
|
|
15923
15945
|
const range = Math.abs(maxY - minY);
|
|
15924
15946
|
const spansABase = y.logarithmic && this._logDomainSpan(minY, maxY, y.logBase) >= 1;
|
|
15925
15947
|
const validLogScale = y.logarithmic && (spansABase || range > 5);
|
|
@@ -15952,19 +15974,26 @@ var __async = (__this, __arguments, generator) => {
|
|
|
15952
15974
|
* @param {number} maxX
|
|
15953
15975
|
*/
|
|
15954
15976
|
setXScale(minX, maxX) {
|
|
15977
|
+
var _a;
|
|
15955
15978
|
const w = this.w;
|
|
15956
15979
|
const gl = w.globals;
|
|
15957
15980
|
if (maxX === -Number.MAX_VALUE || !Utils$1.isNumber(maxX)) {
|
|
15958
15981
|
gl.xAxisScale = this.linearScale(0, 10, 10);
|
|
15959
15982
|
} else {
|
|
15960
|
-
const
|
|
15961
|
-
|
|
15962
|
-
|
|
15963
|
-
|
|
15964
|
-
|
|
15965
|
-
0
|
|
15966
|
-
|
|
15967
|
-
);
|
|
15983
|
+
const x = w.config.xaxis;
|
|
15984
|
+
let step = ((_a = x.max) != null ? _a : x.range) === void 0 ? x.stepSize : void 0;
|
|
15985
|
+
const fit = step > 0 && !gl.isBarHorizontal && x.type !== "datetime";
|
|
15986
|
+
if (fit) {
|
|
15987
|
+
const n2 = Math.ceil((maxX - minX) / step - 1e-9);
|
|
15988
|
+
n2 > 1e3 ? step = void 0 : gl.xTickAmount = n2;
|
|
15989
|
+
}
|
|
15990
|
+
let s2 = this.linearScale(minX, maxX, gl.xTickAmount, 0, step);
|
|
15991
|
+
if (fit && step) {
|
|
15992
|
+
while (s2.niceMax < maxX)
|
|
15993
|
+
s2 = this.linearScale(minX, maxX, ++gl.xTickAmount, 0, step);
|
|
15994
|
+
gl.maxX = s2.niceMax;
|
|
15995
|
+
}
|
|
15996
|
+
gl.xAxisScale = s2;
|
|
15968
15997
|
}
|
|
15969
15998
|
return gl.xAxisScale;
|
|
15970
15999
|
}
|
|
@@ -16599,22 +16628,21 @@ var __async = (__this, __arguments, generator) => {
|
|
|
16599
16628
|
gl.barGroups = [];
|
|
16600
16629
|
gl.lineGroups = [];
|
|
16601
16630
|
gl.areaGroups = [];
|
|
16602
|
-
cnf.series.forEach((s2) => {
|
|
16603
|
-
const
|
|
16631
|
+
cnf.series.forEach((s2, i2) => {
|
|
16632
|
+
const g = this.w.labelData.seriesGroupIndex[i2];
|
|
16633
|
+
switch (
|
|
16604
16634
|
/** @type {any} */
|
|
16605
|
-
s2
|
|
16606
|
-
)
|
|
16607
|
-
const type = _s.type || cnf.chart.type;
|
|
16608
|
-
switch (type) {
|
|
16635
|
+
s2.type || cnf.chart.type
|
|
16636
|
+
) {
|
|
16609
16637
|
case "bar":
|
|
16610
16638
|
case "column":
|
|
16611
|
-
gl.barGroups.push(
|
|
16639
|
+
gl.barGroups.push(g);
|
|
16612
16640
|
break;
|
|
16613
16641
|
case "line":
|
|
16614
|
-
gl.lineGroups.push(
|
|
16642
|
+
gl.lineGroups.push(g);
|
|
16615
16643
|
break;
|
|
16616
16644
|
case "area":
|
|
16617
|
-
gl.areaGroups.push(
|
|
16645
|
+
gl.areaGroups.push(g);
|
|
16618
16646
|
break;
|
|
16619
16647
|
}
|
|
16620
16648
|
});
|
|
@@ -16699,9 +16727,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
16699
16727
|
ticks = gl.dataPoints - 1;
|
|
16700
16728
|
}
|
|
16701
16729
|
} else if (cnf.xaxis.tickAmount === "dataPoints") {
|
|
16702
|
-
|
|
16703
|
-
|
|
16704
|
-
|
|
16730
|
+
ticks = Math.max(
|
|
16731
|
+
1,
|
|
16732
|
+
(this.w.seriesData.series[gl.maxValsInArrayIndex] || []).length - 1
|
|
16733
|
+
);
|
|
16705
16734
|
if (this.w.axisFlags.isXNumeric) {
|
|
16706
16735
|
const diff = Math.round(gl.maxX - gl.minX);
|
|
16707
16736
|
if (diff < 30) {
|
|
@@ -16759,8 +16788,26 @@ var __async = (__this, __arguments, generator) => {
|
|
|
16759
16788
|
}
|
|
16760
16789
|
}
|
|
16761
16790
|
if (isXNumeric && gl.isBarHorizontal) {
|
|
16791
|
+
const rows = (this.w.seriesData.seriesX[gl.maxValsInArrayIndex] || []).slice();
|
|
16792
|
+
const seen = new Set(rows);
|
|
16793
|
+
const n2 = rows.length;
|
|
16794
|
+
if (cnf.chart.type === "bar") {
|
|
16795
|
+
this.w.seriesData.seriesX.forEach(
|
|
16796
|
+
(s2) => s2 == null ? void 0 : s2.forEach((x) => {
|
|
16797
|
+
if (x != null && !seen.has(x)) {
|
|
16798
|
+
seen.add(x);
|
|
16799
|
+
rows.push(x);
|
|
16800
|
+
}
|
|
16801
|
+
})
|
|
16802
|
+
);
|
|
16803
|
+
}
|
|
16804
|
+
if (rows.length > n2) {
|
|
16805
|
+
const dir = rows[0] > rows[n2 - 1] ? -1 : 1;
|
|
16806
|
+
rows.sort((a2, b) => (a2 - b) * dir);
|
|
16807
|
+
gl.dataPoints = rows.length;
|
|
16808
|
+
}
|
|
16762
16809
|
this.w.labelData.labels = /** @type {any} */
|
|
16763
|
-
|
|
16810
|
+
rows;
|
|
16764
16811
|
} else if (isXNumeric) {
|
|
16765
16812
|
this.w.labelData.labels = /** @type {any} */
|
|
16766
16813
|
gl.xAxisScale.result.slice();
|
|
@@ -16885,7 +16932,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
16885
16932
|
const windowed = this._autoScaleYEnabled();
|
|
16886
16933
|
if (!this.w.seriesData.series.length) return;
|
|
16887
16934
|
const gIdx = this.w.labelData.seriesGroupIndex;
|
|
16888
|
-
const byX = this.w.axisFlags.isXNumeric
|
|
16935
|
+
const byX = this.w.axisFlags.isXNumeric;
|
|
16889
16936
|
const stacks = /* @__PURE__ */ new Map();
|
|
16890
16937
|
this.w.config.series.forEach(
|
|
16891
16938
|
(serie, i2) => {
|
|
@@ -16900,7 +16947,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
16900
16947
|
if (!st) stacks.set(key, st = [0, 0]);
|
|
16901
16948
|
const v = this.w.seriesData.series[i2][j2];
|
|
16902
16949
|
if (stackSeries && v !== null && Utils$1.isNumber(v)) {
|
|
16903
|
-
v > 0 ? st[0] +=
|
|
16950
|
+
v > 0 ? st[0] += v * 1.000001 : st[1] += +v;
|
|
16904
16951
|
}
|
|
16905
16952
|
}
|
|
16906
16953
|
}
|
|
@@ -18322,6 +18369,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18322
18369
|
return count === 0 ? k : `${k}#${count}`;
|
|
18323
18370
|
});
|
|
18324
18371
|
}
|
|
18372
|
+
function seriesKeys(w, realIndex, n2 = ((_a) => (_a = w.seriesData.series[realIndex]) == null ? void 0 : _a.length)() | 0) {
|
|
18373
|
+
return uniquifyKeys(
|
|
18374
|
+
Array.from({ length: n2 }, (_, j2) => datumKey(w, realIndex, j2))
|
|
18375
|
+
);
|
|
18376
|
+
}
|
|
18325
18377
|
function seriesJoin(w, realIndex, includeIdentity = false, allowReorder = false) {
|
|
18326
18378
|
var _a, _b;
|
|
18327
18379
|
if (!lengthTransitionEnabled(w)) return null;
|
|
@@ -18334,7 +18386,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18334
18386
|
const oldKeys = uniquifyKeys(
|
|
18335
18387
|
oldY.map((_, j2) => frameDatumKey(frame, realIndex, j2))
|
|
18336
18388
|
);
|
|
18337
|
-
const newKeys =
|
|
18389
|
+
const newKeys = seriesKeys(w, realIndex);
|
|
18338
18390
|
const join = joinKeys(oldKeys, newKeys);
|
|
18339
18391
|
if (!join.ordered && !allowReorder) return null;
|
|
18340
18392
|
if (!join.changed && !includeIdentity) return null;
|
|
@@ -19510,11 +19562,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19510
19562
|
*/
|
|
19511
19563
|
isSeriesHidden(seriesName) {
|
|
19512
19564
|
var _a;
|
|
19513
|
-
const
|
|
19514
|
-
|
|
19515
|
-
/** @type {Element} */
|
|
19516
|
-
targetElement
|
|
19517
|
-
);
|
|
19565
|
+
const el = this.getSeriesByName(seriesName);
|
|
19566
|
+
if (!el) return { isHidden: false, realIndex: -1 };
|
|
19518
19567
|
const realIndex = parseInt((_a = el.getAttribute("data:realIndex")) != null ? _a : "0", 10);
|
|
19519
19568
|
const gl = this.w.globals;
|
|
19520
19569
|
const isHidden = el.classList.contains("apexcharts-series-collapsed") || gl.collapsedSeriesIndices.includes(realIndex) || gl.ancillaryCollapsedSeriesIndices.includes(realIndex);
|
|
@@ -19664,9 +19713,9 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19664
19713
|
*/
|
|
19665
19714
|
toggleSeries(seriesName) {
|
|
19666
19715
|
var _a;
|
|
19667
|
-
const
|
|
19668
|
-
(_a = this._toggleDataSeries) == null ? void 0 : _a.call(this,
|
|
19669
|
-
return
|
|
19716
|
+
const { isHidden, realIndex } = this.isSeriesHidden(seriesName);
|
|
19717
|
+
if (realIndex > -1) (_a = this._toggleDataSeries) == null ? void 0 : _a.call(this, realIndex, isHidden);
|
|
19718
|
+
return isHidden;
|
|
19670
19719
|
}
|
|
19671
19720
|
/**
|
|
19672
19721
|
* @param {string} seriesName
|
|
@@ -19684,7 +19733,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19684
19733
|
hideSeries(seriesName) {
|
|
19685
19734
|
var _a;
|
|
19686
19735
|
const isSeriesHidden = this.isSeriesHidden(seriesName);
|
|
19687
|
-
if (!isSeriesHidden.isHidden) {
|
|
19736
|
+
if (!isSeriesHidden.isHidden && isSeriesHidden.realIndex > -1) {
|
|
19688
19737
|
(_a = this._toggleDataSeries) == null ? void 0 : _a.call(this, isSeriesHidden.realIndex, false);
|
|
19689
19738
|
}
|
|
19690
19739
|
}
|
|
@@ -19760,10 +19809,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19760
19809
|
* @param {any[]} series
|
|
19761
19810
|
*/
|
|
19762
19811
|
emptyCollapsedSeries(series) {
|
|
19763
|
-
const
|
|
19812
|
+
const gl = this.w.globals;
|
|
19764
19813
|
if (!Array.isArray(series)) return series;
|
|
19765
19814
|
for (let i2 = 0; i2 < series.length; i2++) {
|
|
19766
|
-
if (
|
|
19815
|
+
if (gl.collapsedSeriesIndices.includes(i2) || gl.ancillaryCollapsedSeriesIndices.includes(i2)) {
|
|
19767
19816
|
if (series[i2] && typeof series[i2] === "object") {
|
|
19768
19817
|
series[i2].data = [];
|
|
19769
19818
|
} else {
|
|
@@ -19969,9 +20018,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19969
20018
|
* @param {'highlight'|'reset'} action
|
|
19970
20019
|
*/
|
|
19971
20020
|
highlightRangeInSeries(rangeIndex, action) {
|
|
20021
|
+
var _a, _b;
|
|
19972
20022
|
const w = this.w;
|
|
20023
|
+
const t2 = w.config.chart.type === "treemap" ? "treemap" : "heatmap";
|
|
19973
20024
|
const allHeatMapElements = w.dom.baseEl.getElementsByClassName(
|
|
19974
|
-
|
|
20025
|
+
`apexcharts-${t2}-rect`
|
|
19975
20026
|
);
|
|
19976
20027
|
const toggleAllInactive = (op) => {
|
|
19977
20028
|
for (let i2 = 0; i2 < allHeatMapElements.length; i2++) {
|
|
@@ -19988,14 +20039,23 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19988
20039
|
toggleAllInactive("remove");
|
|
19989
20040
|
return;
|
|
19990
20041
|
}
|
|
19991
|
-
const ranges = w.config.plotOptions.
|
|
20042
|
+
const ranges = w.config.plotOptions[t2].colorScale.ranges;
|
|
19992
20043
|
const range = ranges && ranges[rangeIndex];
|
|
19993
20044
|
if (!range) return;
|
|
19994
20045
|
toggleAllInactive("add");
|
|
19995
20046
|
for (let i2 = 0; i2 < allHeatMapElements.length; i2++) {
|
|
19996
|
-
const
|
|
20047
|
+
const el = allHeatMapElements[i2];
|
|
20048
|
+
const val = Number(
|
|
20049
|
+
(_b = el.getAttribute("val")) != null ? _b : (_a = w.seriesData.series[
|
|
20050
|
+
/** @type {any} */
|
|
20051
|
+
el.getAttribute("i")
|
|
20052
|
+
]) == null ? void 0 : _a[
|
|
20053
|
+
/** @type {any} */
|
|
20054
|
+
el.getAttribute("j")
|
|
20055
|
+
]
|
|
20056
|
+
);
|
|
19997
20057
|
if (val >= range.from && val <= range.to) {
|
|
19998
|
-
|
|
20058
|
+
el.classList.remove(this.legendInactiveClass);
|
|
19999
20059
|
}
|
|
20000
20060
|
}
|
|
20001
20061
|
}
|
|
@@ -20009,10 +20069,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20009
20069
|
const activeSeriesIndex = w.config.series.map((s2, index) => {
|
|
20010
20070
|
const checkChartType = () => {
|
|
20011
20071
|
if (w.globals.comboCharts) {
|
|
20012
|
-
return chartTypes.length === 0 || chartTypes.length && chartTypes.indexOf(
|
|
20013
|
-
/** @type {Record<string,any>} */
|
|
20014
|
-
w.config.series[index].type
|
|
20015
|
-
) > -1;
|
|
20072
|
+
return chartTypes.length === 0 || chartTypes.length && chartTypes.indexOf(s2.type || w.config.chart.type) > -1;
|
|
20016
20073
|
}
|
|
20017
20074
|
return true;
|
|
20018
20075
|
};
|
|
@@ -20050,7 +20107,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20050
20107
|
let last = -1;
|
|
20051
20108
|
w.config.series.forEach((s2, i2) => {
|
|
20052
20109
|
if (w.labelData.seriesGroupIndex[i2] !== gi) return;
|
|
20053
|
-
if (w.globals.comboCharts && chartTypes.length && chartTypes.indexOf(s2.type) === -1) {
|
|
20110
|
+
if (w.globals.comboCharts && chartTypes.length && chartTypes.indexOf(s2.type || w.config.chart.type) === -1) {
|
|
20054
20111
|
return;
|
|
20055
20112
|
}
|
|
20056
20113
|
const hasData = s2.data && s2.data.length > 0 && w.globals.collapsedSeriesIndices.indexOf(i2) === -1;
|
|
@@ -20063,7 +20120,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20063
20120
|
const w = this.w;
|
|
20064
20121
|
if (w.globals.comboCharts) {
|
|
20065
20122
|
return this.w.config.series.map((s2, i2) => {
|
|
20066
|
-
|
|
20123
|
+
const t2 = s2.type || w.config.chart.type;
|
|
20124
|
+
return t2 === "bar" || t2 === "column" ? i2 : -1;
|
|
20067
20125
|
}).filter((i2) => {
|
|
20068
20126
|
return i2 !== -1;
|
|
20069
20127
|
});
|
|
@@ -20118,6 +20176,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20118
20176
|
for (let j2 = 0; j2 < paths.length; j2++) {
|
|
20119
20177
|
if (paths[j2].hasAttribute("pathTo")) {
|
|
20120
20178
|
const d = (type === "line" || type === "area") && paths[j2].getAttribute("d") || paths[j2].getAttribute("pathTo");
|
|
20179
|
+
if (paths[j2].classList.contains("apexcharts-raincloud-box")) {
|
|
20180
|
+
const body = dArr.paths[dArr.paths.length - 1];
|
|
20181
|
+
if (body) (body.box || (body.box = [])).push(d);
|
|
20182
|
+
continue;
|
|
20183
|
+
}
|
|
20121
20184
|
dArr.paths.push({
|
|
20122
20185
|
d,
|
|
20123
20186
|
key: paths[j2].getAttribute("data:pathKey"),
|
|
@@ -20141,7 +20204,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20141
20204
|
"rangeArea",
|
|
20142
20205
|
"candlestick",
|
|
20143
20206
|
"boxPlot",
|
|
20144
|
-
"radar"
|
|
20207
|
+
"radar",
|
|
20208
|
+
"violin"
|
|
20145
20209
|
];
|
|
20146
20210
|
chartTypes.forEach((type) => {
|
|
20147
20211
|
const paths = getPaths(type);
|
|
@@ -20716,7 +20780,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20716
20780
|
applyColorTypes(colorTypes, defaultColors) {
|
|
20717
20781
|
const w = this.w;
|
|
20718
20782
|
colorTypes.forEach((c) => {
|
|
20719
|
-
w.globals[c].colors = w.config[c].colors === void 0 ? this.isColorFn ? w.config.colors.slice() : defaultColors : w.config[c].colors.slice();
|
|
20783
|
+
w.globals[c].colors = w.config[c].colors === void 0 ? this.isColorFn && w.config.colors ? w.config.colors.slice() : defaultColors : w.config[c].colors.slice();
|
|
20720
20784
|
this.pushExtraColors(
|
|
20721
20785
|
/** @type {Record<string,any>} */
|
|
20722
20786
|
w.globals[c].colors
|
|
@@ -22565,6 +22629,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
22565
22629
|
const { w, ctx } = this;
|
|
22566
22630
|
const { config: cnf, globals: gl } = w;
|
|
22567
22631
|
const { line, boxCandlestick, violin } = renderers;
|
|
22632
|
+
if (cnf.chart.type !== "unit") ctx._unitPrevDots = null;
|
|
22568
22633
|
let elGraph = [];
|
|
22569
22634
|
if (gl.comboCharts) {
|
|
22570
22635
|
const coreUtils = new CoreUtils(this.w);
|
|
@@ -23263,26 +23328,33 @@ var __async = (__this, __arguments, generator) => {
|
|
|
23263
23328
|
const list = dd && Array.isArray(dd.series) ? dd.series : [];
|
|
23264
23329
|
return list.find((s2) => s2 && s2.id === id);
|
|
23265
23330
|
}
|
|
23266
|
-
function
|
|
23331
|
+
function segment(name2, seen) {
|
|
23332
|
+
var _a;
|
|
23333
|
+
const n2 = String(name2).replace(/\//g, "%2F");
|
|
23334
|
+
const o2 = ((_a = seen.get(n2)) != null ? _a : -1) + 1;
|
|
23335
|
+
seen.set(n2, o2);
|
|
23336
|
+
return `${o2}:${n2}`;
|
|
23337
|
+
}
|
|
23338
|
+
function toNode(w, d, i2, paletteFromParent, parentKey, seenIds = null, opts = {}, seen = /* @__PURE__ */ new Map()) {
|
|
23267
23339
|
var _a, _b, _c;
|
|
23268
23340
|
const isObj = d && typeof d === "object";
|
|
23269
23341
|
const name2 = isObj ? (_b = (_a = d.x) != null ? _a : d.name) != null ? _b : "" : "";
|
|
23270
|
-
const
|
|
23342
|
+
const raw = isObj ? (_c = d.y) != null ? _c : d.value : d;
|
|
23343
|
+
const value = raw == null || raw === "" ? NaN : Number(raw);
|
|
23271
23344
|
const node = {
|
|
23272
23345
|
name: String(name2),
|
|
23273
23346
|
value: isNaN(value) ? null : value,
|
|
23274
23347
|
color: isObj && d.color ? d.color : void 0,
|
|
23275
|
-
|
|
23276
|
-
// siblings stay distinct). Update animations morph matched keys in place.
|
|
23277
|
-
_key: `${parentKey}/${i2}:${name2}`
|
|
23348
|
+
_key: `${parentKey}/${segment(name2, seen)}`
|
|
23278
23349
|
};
|
|
23279
23350
|
if (paletteFromParent && !node.color) {
|
|
23280
23351
|
node.color = paletteFromParent[i2 % paletteFromParent.length];
|
|
23281
23352
|
}
|
|
23282
23353
|
if (opts.keepDatum) node._datum = d;
|
|
23354
|
+
const kids = /* @__PURE__ */ new Map();
|
|
23283
23355
|
if (isObj && Array.isArray(d.children) && d.children.length) {
|
|
23284
23356
|
node.children = d.children.map(
|
|
23285
|
-
(c, j2) => toNode(w, c, j2, null, node._key, seenIds, opts)
|
|
23357
|
+
(c, j2) => toNode(w, c, j2, null, node._key, seenIds, opts, kids)
|
|
23286
23358
|
);
|
|
23287
23359
|
} else if (isObj && d.drilldown != null && opts.expandDrilldown !== false) {
|
|
23288
23360
|
const visited = seenIds || /* @__PURE__ */ new Set();
|
|
@@ -23293,7 +23365,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
23293
23365
|
nextSeen.add(d.drilldown);
|
|
23294
23366
|
const palette = Array.isArray(dd.colors) ? dd.colors : null;
|
|
23295
23367
|
node.children = dd.data.map(
|
|
23296
|
-
(c, j2) => toNode(w, c, j2, palette, node._key, nextSeen, opts)
|
|
23368
|
+
(c, j2) => toNode(w, c, j2, palette, node._key, nextSeen, opts, kids)
|
|
23297
23369
|
);
|
|
23298
23370
|
}
|
|
23299
23371
|
}
|
|
@@ -23306,10 +23378,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
23306
23378
|
series || w.config.series
|
|
23307
23379
|
);
|
|
23308
23380
|
if (!Array.isArray(cfgSeries)) return [];
|
|
23381
|
+
const seen = /* @__PURE__ */ new Map();
|
|
23309
23382
|
return cfgSeries.map((s2, i2) => {
|
|
23310
23383
|
var _a, _b;
|
|
23311
23384
|
const data = s2 && Array.isArray(s2.data) ? s2.data : [];
|
|
23312
|
-
const key =
|
|
23385
|
+
const key = segment((_a = s2 == null ? void 0 : s2.name) != null ? _a : "", seen);
|
|
23386
|
+
const kids = /* @__PURE__ */ new Map();
|
|
23313
23387
|
const root = {
|
|
23314
23388
|
name: String((_b = s2 == null ? void 0 : s2.name) != null ? _b : ""),
|
|
23315
23389
|
value: null,
|
|
@@ -23317,7 +23391,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
23317
23391
|
_key: key,
|
|
23318
23392
|
_seriesIndex: i2,
|
|
23319
23393
|
children: data.map(
|
|
23320
|
-
(d, j2) => toNode(w, d, j2, null, key, null, opts)
|
|
23394
|
+
(d, j2) => toNode(w, d, j2, null, key, null, opts, kids)
|
|
23321
23395
|
)
|
|
23322
23396
|
};
|
|
23323
23397
|
return root;
|
|
@@ -23445,7 +23519,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
23445
23519
|
var _a;
|
|
23446
23520
|
if (!d || typeof d !== "object") return Utils$1.parseNumber(d) || 0;
|
|
23447
23521
|
const v = (_a = d.y) != null ? _a : d.value;
|
|
23448
|
-
if (v != null) return Utils$1.parseNumber(v) || 0;
|
|
23522
|
+
if (v != null && v !== "") return Utils$1.parseNumber(v) || 0;
|
|
23449
23523
|
if (!Array.isArray(d.children)) return 0;
|
|
23450
23524
|
return d.children.reduce(
|
|
23451
23525
|
(s2, c) => s2 + Math.max(0, subtreeTotal(c)),
|
|
@@ -24171,13 +24245,18 @@ var __async = (__this, __arguments, generator) => {
|
|
|
24171
24245
|
}
|
|
24172
24246
|
});
|
|
24173
24247
|
this.coreUtils.setSeriesYAxisMappings();
|
|
24174
|
-
const
|
|
24175
|
-
const
|
|
24176
|
-
...new Set(cnf.series.map((s2) => s2.group))
|
|
24177
|
-
];
|
|
24178
|
-
this.w.labelData.seriesGroupIndex = cnf.series.map(
|
|
24248
|
+
const rev = this.w.globals.seriesYAxisReverseMap;
|
|
24249
|
+
const keys = cnf.series.map(
|
|
24179
24250
|
(s2, i2) => {
|
|
24180
|
-
|
|
24251
|
+
var _a2;
|
|
24252
|
+
return (_a2 = s2.group) != null ? _a2 : "apexcharts-axis-" + rev[i2];
|
|
24253
|
+
}
|
|
24254
|
+
);
|
|
24255
|
+
const buckets = [];
|
|
24256
|
+
const groups = [...new Set(keys)];
|
|
24257
|
+
this.w.labelData.seriesGroupIndex = keys.map(
|
|
24258
|
+
(k, i2) => {
|
|
24259
|
+
const index = groups.indexOf(k);
|
|
24181
24260
|
if (!buckets[index]) buckets[index] = [];
|
|
24182
24261
|
buckets[index].push(this.w.seriesData.seriesNames[i2]);
|
|
24183
24262
|
return index;
|
|
@@ -24460,12 +24539,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
24460
24539
|
if (rootColors && x !== void 0) {
|
|
24461
24540
|
rootColors[labels.length] = dataPoint.color;
|
|
24462
24541
|
}
|
|
24463
|
-
if (x !== void 0 &&
|
|
24464
|
-
labels.push(String(x));
|
|
24465
|
-
values.push(Utils$1.parseNumber(y));
|
|
24466
|
-
} else if (x !== void 0 && Array.isArray(dataPoint.children)) {
|
|
24542
|
+
if (x !== void 0 && Array.isArray(dataPoint.children)) {
|
|
24467
24543
|
labels.push(String(x));
|
|
24468
24544
|
values.push(subtreeTotal(dataPoint));
|
|
24545
|
+
} else if (x !== void 0 && y !== void 0) {
|
|
24546
|
+
labels.push(String(x));
|
|
24547
|
+
values.push(Utils$1.parseNumber(y));
|
|
24469
24548
|
} else {
|
|
24470
24549
|
console.warn(
|
|
24471
24550
|
"ApexCharts: Invalid data point format for pie chart. Expected {x, y} format:",
|
|
@@ -26402,6 +26481,13 @@ var __async = (__this, __arguments, generator) => {
|
|
|
26402
26481
|
const markers = this.getElMarkers(capturedSeries);
|
|
26403
26482
|
return markers.length > 0;
|
|
26404
26483
|
}
|
|
26484
|
+
/**
|
|
26485
|
+
* Whether any visible series has a marker node, its points' or its hover
|
|
26486
|
+
* dot's.
|
|
26487
|
+
*/
|
|
26488
|
+
hasVisibleMarkers() {
|
|
26489
|
+
return this.getAllMarkers(true).some(Boolean);
|
|
26490
|
+
}
|
|
26405
26491
|
/**
|
|
26406
26492
|
* @param {any} point
|
|
26407
26493
|
* @param {number} size
|
|
@@ -26848,11 +26934,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
26848
26934
|
*/
|
|
26849
26935
|
placeAroundCell(cell, plot, {
|
|
26850
26936
|
el = null,
|
|
26851
|
-
ttWidth = ((
|
|
26852
|
-
ttHeight = ((
|
|
26937
|
+
ttWidth = ((_b) => (_b = this.ttCtx.tooltipRect) == null ? void 0 : _b.ttWidth)() || 0,
|
|
26938
|
+
ttHeight = ((_c) => (_c = this.ttCtx.tooltipRect) == null ? void 0 : _c.ttHeight)() || 0
|
|
26853
26939
|
} = {}) {
|
|
26854
|
-
var
|
|
26855
|
-
if (!((
|
|
26940
|
+
var _a;
|
|
26941
|
+
if (!((_a = el == null ? void 0 : el.closest) == null ? void 0 : _a.call(el, '[clip-path*="heatmapHexMask"]'))) {
|
|
26856
26942
|
cell = this._visiblePart(cell, plot);
|
|
26857
26943
|
}
|
|
26858
26944
|
return this._placeAround(placeAroundCell, cell, plot, {
|
|
@@ -26923,11 +27009,11 @@ var __async = (__this, __arguments, generator) => {
|
|
|
26923
27009
|
* @param {{ ttWidth?: number, ttHeight?: number, side?: 'left'|'right'|null, beside?: boolean }} [opts]
|
|
26924
27010
|
* @returns {import('./placement').CellPlacement}
|
|
26925
27011
|
*/
|
|
26926
|
-
_placeAround(decide, mark, plot,
|
|
26927
|
-
var
|
|
26928
|
-
ttWidth = ((
|
|
26929
|
-
ttHeight = ((
|
|
26930
|
-
} =
|
|
27012
|
+
_placeAround(decide, mark, plot, _f = {}) {
|
|
27013
|
+
var _g = _f, {
|
|
27014
|
+
ttWidth = ((_d) => (_d = this.ttCtx.tooltipRect) == null ? void 0 : _d.ttWidth)() || 0,
|
|
27015
|
+
ttHeight = ((_e) => (_e = this.ttCtx.tooltipRect) == null ? void 0 : _e.ttHeight)() || 0
|
|
27016
|
+
} = _g, rest = __objRest(_g, [
|
|
26931
27017
|
"ttWidth",
|
|
26932
27018
|
"ttHeight"
|
|
26933
27019
|
]);
|
|
@@ -31111,16 +31197,22 @@ var __async = (__this, __arguments, generator) => {
|
|
|
31111
31197
|
ttCtx.tooltipLabels.drawSeriesTexts(__spreadProps(__spreadValues({}, commonSeriesTextsParams), {
|
|
31112
31198
|
shared: this.showOnIntersect ? false : this.tConfig.shared
|
|
31113
31199
|
}));
|
|
31114
|
-
|
|
31200
|
+
const capturedPoints = hasMarkers || dynamicPoints;
|
|
31201
|
+
if (capturedPoints || w.globals.comboCharts && !canvasMode && this.tooltipUtil.hasVisibleMarkers()) {
|
|
31115
31202
|
handlePoints();
|
|
31116
|
-
}
|
|
31203
|
+
}
|
|
31204
|
+
if (this.tooltipUtil.hasBars()) {
|
|
31117
31205
|
if (canvasMode) {
|
|
31118
|
-
|
|
31206
|
+
if (!capturedPoints) {
|
|
31207
|
+
ttCtx.tooltipPosition.moveStickyTooltipOverBars(j2, capturedSeries);
|
|
31208
|
+
}
|
|
31119
31209
|
} else if ([...bars].some((b) => b.querySelector("path"))) {
|
|
31120
31210
|
const graphics = new Graphics(this.w, this.ctx);
|
|
31121
31211
|
const paths = w.dom.Paper.find(`.apexcharts-bar-area[j='${j2}']`);
|
|
31122
31212
|
this.deactivateHoverFilter();
|
|
31123
|
-
|
|
31213
|
+
if (!capturedPoints) {
|
|
31214
|
+
ttCtx.tooltipPosition.moveStickyTooltipOverBars(j2, capturedSeries);
|
|
31215
|
+
}
|
|
31124
31216
|
for (let b = 0; b < paths.length; b++) {
|
|
31125
31217
|
graphics.pathMouseEnter(
|
|
31126
31218
|
/** @type {any} */
|
|
@@ -31321,7 +31413,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
31321
31413
|
this._activate(desired, this._instances[desired]);
|
|
31322
31414
|
return this._activeKind;
|
|
31323
31415
|
}
|
|
31324
|
-
if (mode === desired) {
|
|
31416
|
+
if (mode === desired && !this._warned) {
|
|
31417
|
+
this._warned = 1;
|
|
31325
31418
|
warnMissingFeature(
|
|
31326
31419
|
`\`chart.renderer: '${desired}'\``,
|
|
31327
31420
|
`renderer-${desired}`,
|
|
@@ -31330,11 +31423,17 @@ var __async = (__this, __arguments, generator) => {
|
|
|
31330
31423
|
}
|
|
31331
31424
|
);
|
|
31332
31425
|
}
|
|
31333
|
-
} else if (mode === "canvas" && hasCanvasUnsupportedFeature(this.w)) {
|
|
31426
|
+
} else if (mode === "canvas" && !this._warned && hasCanvasUnsupportedFeature(this.w)) {
|
|
31427
|
+
this._warned = 1;
|
|
31334
31428
|
console.warn(
|
|
31335
31429
|
`[apexcharts] renderer:"canvas" requested but this chart uses a feature the canvas renderer does not render yet (gradient/pattern/image fill or a state color-matrix filter); falling back to SVG.`
|
|
31336
31430
|
);
|
|
31337
31431
|
}
|
|
31432
|
+
const prev = this._instances[this._activeKind];
|
|
31433
|
+
if (prev) {
|
|
31434
|
+
prev.destroy();
|
|
31435
|
+
delete this._instances[this._activeKind];
|
|
31436
|
+
}
|
|
31338
31437
|
this._activate("svg", this.svg);
|
|
31339
31438
|
return this._activeKind;
|
|
31340
31439
|
}
|
|
@@ -32585,7 +32684,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
32585
32684
|
if (isUpdating) {
|
|
32586
32685
|
this.ctx._zoomPanSelection = null;
|
|
32587
32686
|
this.ctx._toolbar = null;
|
|
32588
|
-
(_e = this.ctx._keyboardNavigation) == null ? void 0 : _e.destroy();
|
|
32687
|
+
(_e = this.ctx._keyboardNavigation) == null ? void 0 : _e.destroy(true);
|
|
32589
32688
|
this.ctx._keyboardNavigation = null;
|
|
32590
32689
|
} else {
|
|
32591
32690
|
(_f = this.ctx.perspectives) == null ? void 0 : _f.teardown();
|
|
@@ -32871,7 +32970,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
32871
32970
|
ros.delete(fn);
|
|
32872
32971
|
}
|
|
32873
32972
|
}
|
|
32874
|
-
const apexCSS = '@keyframes opaque{0%{opacity:0}to{opacity:1}}.apexcharts-canvas{position:relative;direction:ltr!important;user-select:none;--apexcharts-focus-color: #008FFB}.apexcharts-canvas .apexcharts-theme-dark,.apexcharts-theme-dark.apexcharts-canvas{--apexcharts-focus-color: #FFD500}.apexcharts-canvas.apexcharts-high-contrast,.apexcharts-high-contrast.apexcharts-canvas{--apexcharts-focus-color: #FFFF00}.apexcharts-sr-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *,.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *:before,.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.apexcharts-canvas ::-webkit-scrollbar{-webkit-appearance:none;width:6px}.apexcharts-canvas ::-webkit-scrollbar-thumb{border-radius:4px;background-color:#00000080;box-shadow:0 0 1px #ffffff80;-webkit-box-shadow:0 0 1px rgba(255,255,255,.5)}.apexcharts-inner{position:relative}.apexcharts-text tspan{font-family:inherit}rect.legend-mouseover-inactive,.legend-mouseover-inactive rect,.legend-mouseover-inactive path,.legend-mouseover-inactive circle,.legend-mouseover-inactive line,.legend-mouseover-inactive text.apexcharts-yaxis-title-text,.legend-mouseover-inactive text.apexcharts-yaxis-label{transition:.15s ease all;opacity:.2}.apexcharts-crossfilter-dimmed{transition:opacity .25s ease;opacity:var(--apx-cf-dim, .2)}.apexcharts-cf-table{border-collapse:collapse;width:100%;font-size:13px}.apexcharts-cf-table caption{caption-side:bottom;text-align:right;padding:6px 2px;font-size:12px;opacity:.7}.apexcharts-cf-table th,.apexcharts-cf-table td{padding:6px 10px;text-align:left;border-bottom:1px solid rgba(0,0,0,.08)}.apexcharts-cf-table th{font-weight:600;border-bottom-width:2px}.apexcharts-cf-table tbody tr:hover{background:#6366f10f}.apexcharts-canvas{--apx-measure-up: #16a34a;--apx-measure-down: #dc2626;--apx-measure-neutral: #64748b;--apx-measure-guide: #94a3b8}.apexcharts-measure-capture{cursor:crosshair}.apexcharts-canvas{--apx-menu-bg: #ffffff;--apx-menu-fg: #1e293b;--apx-menu-border: #e2e8f0;--apx-menu-hover: #f1f5f9;--apx-menu-shadow: rgba(15, 23, 42, .18)}.apexcharts-context-menu{min-width:168px;padding:4px;border-radius:8px;background:var(--apx-menu-bg);border:1px solid var(--apx-menu-border);box-shadow:0 6px 22px var(--apx-menu-shadow);font-family:Helvetica,Arial,sans-serif;font-size:13px;z-index:20;user-select:none}.apexcharts-context-menu-item{display:block;width:100%;box-sizing:border-box;text-align:left;padding:7px 12px;border:0;border-radius:5px;background:transparent;color:var(--apx-menu-fg);font:inherit;cursor:pointer}.apexcharts-context-menu-item:hover,.apexcharts-context-menu-item--active{background:var(--apx-menu-hover)}.apexcharts-context-menu-item:focus{outline:none}.apexcharts-canvas{--apx-ink-card-bg: #ffffff;--apx-ink-card-fg: #1e293b;--apx-ink-card-border: #e2e8f0;--apx-ink-card-hover: #f1f5f9;--apx-ink-card-accent: #6366f1;--apx-ink-card-shadow: rgba(15, 23, 42, .18)}.apexcharts-ink-card{position:absolute;z-index:25;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:8px;background:var(--apx-ink-card-bg);border:1px solid var(--apx-ink-card-border);box-shadow:0 6px 22px var(--apx-ink-card-shadow);font-family:Helvetica,Arial,sans-serif;font-size:12px;color:var(--apx-ink-card-fg);user-select:none}.apexcharts-ink-card-row{display:flex;align-items:center;gap:4px}.apexcharts-ink-card input.apexcharts-ink-editor{flex:1 1 auto;width:150px;min-width:0;box-sizing:border-box;padding:4px 6px;font:inherit;color:inherit;background:transparent;border:1px solid var(--apx-ink-card-border);border-radius:5px}.apexcharts-ink-card input.apexcharts-ink-editor:focus{outline:none;border-color:var(--apx-ink-card-accent)}.apexcharts-ink-btn{flex:0 0 auto;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:12px;line-height:1;cursor:pointer}.apexcharts-ink-btn:hover,.apexcharts-ink-btn--active{background:var(--apx-ink-card-hover)}.apexcharts-ink-btn:focus-visible,.apexcharts-ink-swatch:focus-visible{outline:2px solid var(--apx-ink-card-accent);outline-offset:1px}.apexcharts-ink-btn--bold{font-weight:700}.apexcharts-ink-btn--delete:hover{color:#dc2626}.apexcharts-ink-swatch{flex:0 0 auto;width:16px;height:16px;padding:0;border:1px solid rgba(100,116,139,.45);border-radius:50%;cursor:pointer}.apexcharts-ink-swatch--active{box-shadow:0 0 0 2px var(--apx-ink-card-bg),0 0 0 4px var(--apx-ink-card-accent)}.apexcharts-ink-sep{flex:0 0 auto;width:1px;height:16px;margin:0 2px;background:var(--apx-ink-card-border)}.apexcharts-ink-cardlabel{flex:0 0 auto;font-size:10px;letter-spacing:.4px;text-transform:uppercase;opacity:.65;margin-right:2px}.apexcharts-ink-marker-size{flex:0 0 auto;min-width:16px;text-align:center;font-variant-numeric:tabular-nums}.apexcharts-legend-text{padding-left:15px;margin-left:-15px}.apexcharts-legend-series[role=button]:focus{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:2px}.apexcharts-legend-series[role=button]:focus:not(:focus-visible){outline:none}.apexcharts-legend-series[role=button]:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:2px}.apexcharts-series-collapsed{opacity:0}.apexcharts-series-collapsed.apexcharts-series-collapsing{opacity:1}.apexcharts-datalabels.apexcharts-series-collapsing{animation:apexcharts-datalabels-exit var(--apexcharts-dl-exit, .4s) ease-in forwards}@keyframes apexcharts-datalabels-exit{0%{opacity:1}to{opacity:0}}.apexcharts-canvas svg:focus:not(:focus-visible){outline:none}.apexcharts-bar-area.apexcharts-keyboard-focused,.apexcharts-candlestick-area.apexcharts-keyboard-focused,.apexcharts-boxPlot-area.apexcharts-keyboard-focused,.apexcharts-violin-area.apexcharts-keyboard-focused,.apexcharts-rangebar-area.apexcharts-keyboard-focused,.apexcharts-pie-area.apexcharts-keyboard-focused,.apexcharts-heatmap-rect.apexcharts-keyboard-focused,.apexcharts-treemap-rect.apexcharts-keyboard-focused,.apexcharts-keyboard-focus-ring{stroke:var(--apexcharts-focus-color, #008FFB);stroke-width:2;stroke-opacity:1}.apexcharts-keyboard-focus-ring{fill:none;pointer-events:none}.apexcharts-tooltip{--apx-tt-bg: #ffffff;--apx-tt-border: rgba(15, 23, 42, .12);--apx-tt-shadow-dir: 1;--apx-tt-shadow: 0 calc(var(--apx-tt-shadow-dir) * 1px) 2px rgba(15, 23, 42, .06), 0 calc(var(--apx-tt-shadow-dir) * 4px) 8px -2px rgba(15, 23, 42, .1), 0 calc(var(--apx-tt-shadow-dir) * 12px) 20px -8px rgba(15, 23, 42, .14);--apx-tt-arrow-bg: var(--apx-tt-bg);--apx-tt-color: #0f172a;--apx-tt-color-muted: rgba(15, 23, 42, .55);border-radius:8px;background:var(--apx-tt-bg);border:1px solid var(--apx-tt-border);box-shadow:var(--apx-tt-shadow);color:var(--apx-tt-color);cursor:default;font-size:13px;left:0;top:0;opacity:0;pointer-events:none;position:absolute;display:flex;flex-direction:column;padding:2px 0;white-space:nowrap;z-index:12;transition:opacity .12s ease}.apexcharts-tooltip.apexcharts-active{opacity:1;transition:opacity .12s ease}.apexcharts-tooltip.apexcharts-tooltip-interactive.apexcharts-active{pointer-events:auto}.apexcharts-tooltip.apexcharts-active[data-positioned=true]{transition:opacity .12s ease,left .16s ease-out,top .16s ease-out}.apexcharts-tooltip.apexcharts-theme-dark{--apx-tt-bg: #1c1c1f;--apx-tt-border: rgba(255, 255, 255, .16);--apx-tt-shadow: 0 calc(var(--apx-tt-shadow-dir) * 1px) 2px rgba(0, 0, 0, .24), 0 calc(var(--apx-tt-shadow-dir) * 4px) 8px -2px rgba(0, 0, 0, .3), 0 calc(var(--apx-tt-shadow-dir) * 12px) 20px -8px rgba(0, 0, 0, .38);--apx-tt-color: #f3f4f6;--apx-tt-color-muted: rgba(243, 244, 246, .55)}.apexcharts-tooltip *{font-family:inherit}.apexcharts-tooltip.apexcharts-annotation-tooltip{padding:6px 10px;max-width:240px;white-space:normal;line-height:1.4;pointer-events:none;z-index:13}.apexcharts-tooltip-title{padding:8px 12px 4px;font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--apx-tt-color-muted);background:transparent;border-bottom:none;margin-bottom:0}.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title,.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title{background:transparent;border-bottom:none}.apexcharts-tooltip.apexcharts-tooltip-fill-series{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;padding:0;overflow:hidden;color:#fff}.apexcharts-tooltip.apexcharts-tooltip-fill-series .apexcharts-tooltip-title{background:#00000038;color:#fff;opacity:1;padding:6px 12px}.apexcharts-tooltip.apexcharts-tooltip-fill-series .apexcharts-tooltip-series-group{color:#fff}.apexcharts-tooltip-arrow{position:absolute;box-sizing:border-box;width:10px;height:10px;background:var(--apx-tt-arrow-bg);transform:rotate(45deg);pointer-events:none;top:calc(var(--apx-tt-arrow-y, calc(50% + 1px) ) - 6px)}.apexcharts-tooltip[data-placement=right] .apexcharts-tooltip-arrow{left:-6px;border-left:1px solid var(--apx-tt-border);border-bottom:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=left] .apexcharts-tooltip-arrow{right:-6px;border-top:1px solid var(--apx-tt-border);border-right:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=top] .apexcharts-tooltip-arrow,.apexcharts-tooltip[data-placement=bottom] .apexcharts-tooltip-arrow{top:auto;left:calc(var(--apx-tt-arrow-x, calc(50% + 1px) ) - 6px)}.apexcharts-tooltip[data-placement=top] .apexcharts-tooltip-arrow{bottom:-6px;border-right:1px solid var(--apx-tt-border);border-bottom:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=bottom] .apexcharts-tooltip-arrow{top:-6px;border-top:1px solid var(--apx-tt-border);border-left:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=bottom]{--apx-tt-shadow-dir: -1 }.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value{display:inline-block;margin-left:5px;font-weight:600}.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty{display:none}.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value{padding:6px 0 5px}.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value{display:flex}.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty){margin-top:-6px}.apexcharts-tooltip-marker{display:inline-flex;align-items:center;justify-content:center;position:relative;width:12px;height:12px;margin-right:6px;vertical-align:middle;color:inherit}.apexcharts-tooltip-marker svg{width:100%;height:100%;display:block}.apexcharts-tooltip-series-group{padding:4px 12px;display:none;gap:8px;text-align:left;justify-content:left;align-items:center}.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker{opacity:1}.apexcharts-tooltip-series-group.apexcharts-active:last-child,.apexcharts-tooltip-series-group:last-child{padding-bottom:8px}.apexcharts-tooltip-y-group{padding:6px 0 5px}.apexcharts-tooltip.apexcharts-tooltip-compact{padding:3px 8px;font-size:11px;line-height:1.35}.apexcharts-tooltip-compact .apexcharts-tooltip-title{padding:0;font-size:11px;white-space:nowrap}.apexcharts-tooltip-compact .apexcharts-tooltip-series-group,.apexcharts-tooltip-compact .apexcharts-tooltip-series-group.apexcharts-active:last-child,.apexcharts-tooltip-compact .apexcharts-tooltip-series-group:last-child{padding:0;gap:5px}.apexcharts-tooltip-compact .apexcharts-tooltip-y-group{padding:0}.apexcharts-tooltip-compact .apexcharts-tooltip-marker{width:8px;height:8px}.apexcharts-tooltip.apexcharts-tooltip-compact.apexcharts-tooltip-value-only{flex-direction:row;align-items:baseline;gap:6px}.apexcharts-tooltip-value-only .apexcharts-tooltip-marker,.apexcharts-tooltip-value-only .apexcharts-tooltip-text-y-label{display:none}.apexcharts-custom-tooltip,.apexcharts-tooltip-box{padding:4px 8px}.apexcharts-tooltip-boxPlot{display:flex;flex-direction:column-reverse}.apexcharts-tooltip-box>div{margin:4px 0}.apexcharts-tooltip-box span.value{font-weight:700}.apexcharts-tooltip-rangebar{padding:5px 8px}.apexcharts-tooltip-rangebar .category{font-weight:600;color:#777}.apexcharts-tooltip-rangebar .series-name{font-weight:700;display:block;margin-bottom:5px}.apexcharts-tooltip-stream{padding:5px 8px}.apexcharts-tooltip-stream .apexcharts-tooltip-title{background:transparent;border:0;padding:0 0 4px;margin:0;font-weight:700}.apexcharts-tooltip-stream-band{display:flex;align-items:center;gap:5px;line-height:1.6;opacity:.72}.apexcharts-tooltip-stream-band.apexcharts-active{opacity:1;font-weight:700}.apexcharts-tooltip-stream-band .series-name{flex:1 1 auto;margin-right:8px}.apexcharts-tooltip-stream-band .value{font-weight:700;margin-left:auto}.apexcharts-tooltip-stream-total{display:flex;align-items:center;margin-top:4px;padding-top:4px;border-top:1px solid var(--apx-tt-border, rgba(15, 23, 42, .12))}.apexcharts-tooltip-stream-total .series-name{flex:1 1 auto;font-weight:600}.apexcharts-tooltip-stream-total .value{font-weight:700;margin-left:auto}.apexcharts-streamgraph-label{pointer-events:none}.apexcharts-xaxistooltip,.apexcharts-yaxistooltip{--apx-axt-bg: #ffffff;--apx-axt-border: rgba(15, 23, 42, .08);--apx-axt-color: #0f172a;--apx-axt-shadow: 0 4px 12px -4px rgba(15, 23, 42, .18), 0 1px 3px -1px rgba(15, 23, 42, .12);opacity:0;pointer-events:none;color:var(--apx-axt-color);font-size:12px;font-weight:500;text-align:center;border-radius:6px;position:absolute;z-index:10;background:var(--apx-axt-bg);border:1px solid var(--apx-axt-border);box-shadow:var(--apx-axt-shadow)}.apexcharts-xaxistooltip.apexcharts-theme-dark,.apexcharts-yaxistooltip.apexcharts-theme-dark{--apx-axt-bg: #1c1c1f;--apx-axt-border: rgba(255, 255, 255, .1);--apx-axt-color: #f3f4f6;--apx-axt-shadow: 0 4px 12px -4px rgba(0, 0, 0, .55), 0 1px 3px -1px rgba(0, 0, 0, .45) }.apexcharts-xaxistooltip{padding:4px 8px;transition:.15s ease all}.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before{left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.apexcharts-xaxistooltip:after{border-color:transparent;border-width:5px;margin-left:-5px}.apexcharts-xaxistooltip:before{border-color:transparent;border-width:6px;margin-left:-6px}.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before{bottom:100%}.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before{top:100%}.apexcharts-xaxistooltip-bottom:after{border-bottom-color:var(--apx-axt-bg)}.apexcharts-xaxistooltip-bottom:before{border-bottom-color:var(--apx-axt-border)}.apexcharts-xaxistooltip-top:after{border-top-color:var(--apx-axt-bg)}.apexcharts-xaxistooltip-top:before{border-top-color:var(--apx-axt-border)}.apexcharts-xaxistooltip.apexcharts-active{opacity:1;transition:.15s ease all}.apexcharts-yaxistooltip{padding:3px 8px}.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before{top:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.apexcharts-yaxistooltip:after{border-color:transparent;border-width:5px;margin-top:-5px}.apexcharts-yaxistooltip:before{border-color:transparent;border-width:6px;margin-top:-6px}.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before{left:100%}.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before{right:100%}.apexcharts-yaxistooltip-left:after{border-left-color:var(--apx-axt-bg)}.apexcharts-yaxistooltip-left:before{border-left-color:var(--apx-axt-border)}.apexcharts-yaxistooltip-right:after{border-right-color:var(--apx-axt-bg)}.apexcharts-yaxistooltip-right:before{border-right-color:var(--apx-axt-border)}.apexcharts-yaxistooltip.apexcharts-active{opacity:1}.apexcharts-yaxistooltip-hidden{display:none}.apexcharts-xcrosshairs,.apexcharts-ycrosshairs{pointer-events:none;opacity:0;transition:.15s ease all}.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active{opacity:1;transition:.15s ease all}.apexcharts-ycrosshairs-hidden{opacity:0}.apexcharts-selection-rect{cursor:move}.svg_select_shape{stroke-width:1;stroke-dasharray:10 10;stroke:#000;stroke-opacity:.1;pointer-events:none;fill:none}.svg_select_handle{stroke-width:3;stroke:#000;fill:none}.svg_select_handle_r{cursor:e-resize}.svg_select_handle_l{cursor:w-resize}.apexcharts-svg.apexcharts-zoomable.hovering-zoom{cursor:crosshair}.apexcharts-svg.apexcharts-zoomable.hovering-pan{cursor:move}.apexcharts-menu-icon,.apexcharts-measure-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{cursor:pointer;width:26px;height:24px;line-height:24px;color:#6e8192;text-align:center;padding:0;margin:0;background:transparent;border:0;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease}.apexcharts-menu-icon svg,.apexcharts-measure-icon svg,.apexcharts-pan-icon svg,.apexcharts-reset-icon svg,.apexcharts-selection-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.apexcharts-theme-dark .apexcharts-menu-icon,.apexcharts-theme-dark .apexcharts-measure-icon,.apexcharts-theme-dark .apexcharts-pan-icon,.apexcharts-theme-dark .apexcharts-reset-icon,.apexcharts-theme-dark .apexcharts-selection-icon,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon,.apexcharts-theme-dark .apexcharts-zoom-icon,.apexcharts-theme-dark .apexcharts-zoomin-icon,.apexcharts-theme-dark .apexcharts-zoomout-icon{color:#d4d6dc}.apexcharts-canvas .apexcharts-measure-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-pan-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected{background:#008ffb1f;color:#008ffb}.apexcharts-theme-light .apexcharts-menu-icon:hover,.apexcharts-theme-light .apexcharts-measure-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-pan-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-reset-icon:hover,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-zoomin-icon:hover,.apexcharts-theme-light .apexcharts-zoomout-icon:hover{background:#0f172a0f;color:#1f2937}.apexcharts-theme-dark .apexcharts-menu-icon:hover,.apexcharts-theme-dark .apexcharts-measure-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-pan-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-reset-icon:hover,.apexcharts-theme-dark .apexcharts-selection-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-zoom-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-zoomin-icon:hover,.apexcharts-theme-dark .apexcharts-zoomout-icon:hover{background:#ffffff14;color:#fff}.apexcharts-menu-icon,.apexcharts-selection-icon{position:relative}.apexcharts-toolbar{position:absolute;z-index:11;display:inline-flex;align-items:center;gap:1px;padding:3px;border-radius:8px;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.apexcharts-theme-dark .apexcharts-toolbar{background:#1c1c1fd1}.apexcharts-menu{background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:absolute;top:calc(100% + 4px);border:1px solid rgba(15,23,42,.08);border-radius:8px;padding:4px;right:0;opacity:0;min-width:120px;transition:opacity .15s ease,transform .15s ease;transform:translateY(-2px);pointer-events:none;box-shadow:0 4px 16px -4px #0f172a1f,0 2px 4px -1px #0f172a0f}.apexcharts-menu.apexcharts-menu-open{opacity:1;transform:translateY(0);pointer-events:all}.apexcharts-menu-item{padding:6px 9px;font-size:12px;border-radius:5px;cursor:pointer}.apexcharts-theme-light .apexcharts-menu-item:hover{background:#0f172a0f}.apexcharts-theme-dark .apexcharts-menu{background:#1c1c1feb;border-color:#ffffff14;color:#f3f4f6;box-shadow:0 4px 16px -4px #00000080,0 2px 4px -1px #0006}.apexcharts-theme-dark .apexcharts-menu-item:hover{background:#ffffff14}@media screen and (min-width:768px){.apexcharts-canvas:hover .apexcharts-toolbar{opacity:1}}.apexcharts-toolbar:focus-within{opacity:1}.apexcharts-menu-icon:focus-visible,.apexcharts-measure-icon:focus-visible,.apexcharts-pan-icon:focus-visible,.apexcharts-reset-icon:focus-visible,.apexcharts-selection-icon:focus-visible,.apexcharts-toolbar-custom-icon:focus-visible,.apexcharts-zoom-icon:focus-visible,.apexcharts-zoomin-icon:focus-visible,.apexcharts-zoomout-icon:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:1px;border-radius:5px}.apexcharts-menu-item:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:-2px;background:#eee}.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points{opacity:0}.apexcharts-hidden-element-shown{opacity:1;transition:.25s ease all}.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label,.apexcharts-pie-name-label,.apexcharts-pie-name-label-group,.apexcharts-pie-label-connector,.apexcharts-unit-outer-label,.apexcharts-unit-outer-label-group,.apexcharts-unit-label-connector{cursor:default;pointer-events:none}.apexcharts-pie-label-connector,.apexcharts-unit-label-connector{fill:none}.apexcharts-pie-label-delay,.apexcharts-unit-label-delay{opacity:0;animation-name:opaque;animation-duration:.3s;animation-fill-mode:forwards;animation-timing-function:ease}.apexcharts-unit-label-delay{animation-duration:.5s}.apexcharts-radialbar-label{cursor:pointer}.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-gridline,.apexcharts-line,.apexcharts-point-annotation-label,.apexcharts-radar-series path:not(.apexcharts-marker),.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect,.no-pointer-events{pointer-events:none}.apexcharts-tooltip-active .apexcharts-marker{transition:.15s ease all}.apexcharts-radar-series .apexcharts-yaxis,.apexcharts-bar-goals-markers,.apexcharts-bar-shadows,.apexcharts-rangebar-goals-markers{pointer-events:none}.apexcharts-drilldown-target{cursor:pointer}.apexcharts-breadcrumb{position:absolute;z-index:11;display:inline-flex;align-items:center;gap:2px;font-size:12px;font-family:inherit;padding:2px 4px}.apexcharts-breadcrumb-item{background:transparent;border:none;padding:2px 6px;border-radius:3px;font:inherit;color:inherit;cursor:pointer;line-height:1.2}.apexcharts-breadcrumb-item:hover:not(.apexcharts-breadcrumb-current){background:#00000014}.apexcharts-breadcrumb-arrow{margin-right:4px;font-weight:600;user-select:none}.apexcharts-breadcrumb-current{cursor:default;font-weight:600;opacity:.85}.apexcharts-breadcrumb-separator{opacity:.5;user-select:none}.apexcharts-theme-dark .apexcharts-breadcrumb-item:hover:not(.apexcharts-breadcrumb-current){background:#ffffff1f}.apexcharts-drilldown-loading{position:absolute;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-family:inherit;color:inherit;background:#ffffff9e;cursor:progress}.apexcharts-drilldown-loading-spinner{width:26px;height:26px;border-radius:50%;border:2.5px solid rgba(0,0,0,.16);border-top-color:#0000008c;animation:apexcharts-drilldown-spin .7s linear infinite}.apexcharts-drilldown-loading-text{opacity:.8}.apexcharts-theme-dark .apexcharts-drilldown-loading{background:#1e1e1e9e}.apexcharts-theme-dark .apexcharts-drilldown-loading-spinner{border-color:#ffffff38;border-top-color:#ffffffb3}@keyframes apexcharts-drilldown-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) .apexcharts-drilldown-loading-spinner{animation:apexcharts-drilldown-pulse 1.4s ease-in-out infinite!important}@keyframes apexcharts-drilldown-pulse{0%,to{opacity:.35}50%{opacity:1}}}.apexcharts-disable-transitions *{transition:none!important}.apexcharts-trellis{position:relative}.apexcharts-trellis-grid{display:grid}.apexcharts-trellis-cell{min-width:0;position:relative}.apexcharts-trellis-header{font-size:12px;font-weight:600;line-height:22px;height:22px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-title{font-size:14px;font-weight:700;padding:2px 0 6px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-mute-y .apexcharts-yaxis,.apexcharts-trellis-mute-x .apexcharts-xaxis{opacity:0}.apexcharts-trellis-has-toolbar{padding-top:24px}.apexcharts-trellis-strip{font-size:12px;font-weight:600;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apexcharts-trellis-strip-column{text-align:center;line-height:22px;height:22px;align-self:end}.apexcharts-trellis-strip-row{align-self:center;max-width:140px;padding-right:6px}.apexcharts-trellis-cell-empty{position:relative}.apexcharts-trellis-empty-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));opacity:.45;pointer-events:none}.apexcharts-trellis-cell-hidden>*{visibility:hidden}.apexcharts-trellis-gradient-legend{margin:10px auto 0}.apexcharts-trellis-panel.apexcharts-trellis-skeleton{background:var(--apx-fore, var(--apx-trellis-fore, #373d3f));opacity:.05;border-radius:4px}.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-tooltip,.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-xaxistooltip,.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-yaxistooltip{opacity:0!important}.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-tooltip,.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-xaxistooltip,.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-yaxistooltip{opacity:0!important}.apexcharts-trellis-tooltip{position:absolute;top:0;left:0;z-index:14;pointer-events:none;opacity:0;transition:opacity .1s ease;background:var(--apx-bg, #fff);color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));border:1px solid rgba(120,120,120,.25);border-radius:5px;box-shadow:2px 2px 6px -4px #0006;font-size:12px;min-width:140px;max-width:320px}.apexcharts-trellis-tooltip-active{opacity:1}.apexcharts-trellis-tooltip .apexcharts-tooltip-title{padding:5px 10px;font-weight:600;background:#78787814;border-bottom:1px solid rgba(120,120,120,.18);margin-bottom:2px}.apexcharts-trellis-tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 10px;line-height:1.6}.apexcharts-trellis-tooltip-row-active{background:#7878781a;font-weight:600}.apexcharts-trellis-tooltip-key{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apexcharts-trellis-tooltip-vals{display:flex;gap:10px;white-space:nowrap}.apexcharts-trellis-tooltip-val{display:inline-flex;align-items:center;gap:5px}.apexcharts-trellis-tooltip-marker{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.apexcharts-trellis-cell-promoted{grid-column:1 / -1}.apexcharts-trellis-cell-parked{display:none}.apexcharts-trellis-cell-promoted.apexcharts-trellis-mute-y .apexcharts-yaxis,.apexcharts-trellis-cell-promoted.apexcharts-trellis-mute-x .apexcharts-xaxis{opacity:1}.apexcharts-trellis-header-clickable{cursor:pointer}.apexcharts-trellis-header-clickable:hover{text-decoration:underline;text-underline-offset:3px}.apexcharts-trellis-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;padding:2px 0 6px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-breadcrumb-back{border:none;background:none;padding:0;font-size:12px;cursor:pointer;color:var(--apx-accent, #008ffb)}.apexcharts-trellis-breadcrumb-back:hover{text-decoration:underline}.apexcharts-trellis-breadcrumb-sep{opacity:.5}.apexcharts-trellis-breadcrumb-current{font-weight:600}.apexcharts-trellis-menu{position:absolute;top:26px;right:0;display:none;flex-direction:column;min-width:132px;background:var(--apx-bg, #fff);border:1px solid rgba(120,120,120,.25);border-radius:5px;box-shadow:2px 2px 6px -4px #0006;padding:4px;z-index:15}.apexcharts-trellis-menu-open{display:flex}.apexcharts-trellis-menu-item{border:none;background:none;text-align:left;font-size:12px;padding:5px 8px;border-radius:3px;cursor:pointer;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-menu-item:hover{background:#7878781f}.apexcharts-trellis-toolbar{position:absolute;top:0;right:0;display:flex;gap:2px;z-index:12}.apexcharts-trellis-tool{border:0;background:transparent;padding:2px;cursor:pointer;border-radius:3px;color:#6e8192;line-height:0}.apexcharts-trellis-tool:hover{color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-tool.apexcharts-selected{color:var(--apx-accent, #008ffb)}.apexcharts-trellis-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;padding:8px 10px 2px}.apexcharts-trellis-legend-item{display:flex;align-items:center;gap:6px;cursor:pointer;line-height:1}.apexcharts-trellis-legend-item .apexcharts-legend-marker{width:12px;height:12px;border-radius:50%;display:inline-block}.apexcharts-trellis-legend-item .apexcharts-legend-text{font-size:12px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-legend-item.apexcharts-inactive-legend{opacity:.45}@media print{.apexcharts-canvas.apexcharts-printing,.apexcharts-canvas.apexcharts-printing svg{max-width:100%!important}.apexcharts-canvas.apexcharts-printing svg{height:auto!important}.apexcharts-canvas.apexcharts-printing{height:auto!important}.apexcharts-toolbar{display:none!important}}';
|
|
32973
|
+
const apexCSS = '@keyframes opaque{0%{opacity:0}to{opacity:1}}.apexcharts-canvas{position:relative;direction:ltr!important;user-select:none;--apexcharts-focus-color: #008FFB}.apexcharts-canvas .apexcharts-theme-dark,.apexcharts-theme-dark.apexcharts-canvas{--apexcharts-focus-color: #FFD500}.apexcharts-canvas.apexcharts-high-contrast,.apexcharts-high-contrast.apexcharts-canvas{--apexcharts-focus-color: #FFFF00}.apexcharts-sr-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *,.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *:before,.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.apexcharts-canvas ::-webkit-scrollbar{-webkit-appearance:none;width:6px}.apexcharts-canvas ::-webkit-scrollbar-thumb{border-radius:4px;background-color:#00000080;box-shadow:0 0 1px #ffffff80;-webkit-box-shadow:0 0 1px rgba(255,255,255,.5)}.apexcharts-inner{position:relative}.apexcharts-text tspan{font-family:inherit}rect.legend-mouseover-inactive,.legend-mouseover-inactive rect,.legend-mouseover-inactive path,.legend-mouseover-inactive circle,.legend-mouseover-inactive line,.legend-mouseover-inactive text.apexcharts-yaxis-title-text,.legend-mouseover-inactive text.apexcharts-yaxis-label{transition:.15s ease all;opacity:.2}.apexcharts-crossfilter-dimmed{transition:opacity .25s ease;opacity:var(--apx-cf-dim, .2)}.apexcharts-cf-table{border-collapse:collapse;width:100%;font-size:13px}.apexcharts-cf-table caption{caption-side:bottom;text-align:right;padding:6px 2px;font-size:12px;opacity:.7}.apexcharts-cf-table th,.apexcharts-cf-table td{padding:6px 10px;text-align:left;border-bottom:1px solid rgba(0,0,0,.08)}.apexcharts-cf-table th{font-weight:600;border-bottom-width:2px}.apexcharts-cf-table tbody tr:hover{background:#6366f10f}.apexcharts-canvas{--apx-measure-up: #16a34a;--apx-measure-down: #dc2626;--apx-measure-neutral: #64748b;--apx-measure-guide: #94a3b8}.apexcharts-measure-capture{cursor:crosshair}.apexcharts-canvas{--apx-menu-bg: #ffffff;--apx-menu-fg: #1e293b;--apx-menu-border: #e2e8f0;--apx-menu-hover: #f1f5f9;--apx-menu-shadow: rgba(15, 23, 42, .18)}.apexcharts-context-menu{min-width:168px;padding:4px;border-radius:8px;background:var(--apx-menu-bg);border:1px solid var(--apx-menu-border);box-shadow:0 6px 22px var(--apx-menu-shadow);font-family:Helvetica,Arial,sans-serif;font-size:13px;z-index:20;user-select:none}.apexcharts-context-menu-item{display:block;width:100%;box-sizing:border-box;text-align:left;padding:7px 12px;border:0;border-radius:5px;background:transparent;color:var(--apx-menu-fg);font:inherit;cursor:pointer}.apexcharts-context-menu-item:hover,.apexcharts-context-menu-item--active{background:var(--apx-menu-hover)}.apexcharts-context-menu-item:focus{outline:none}.apexcharts-canvas{--apx-ink-card-bg: #ffffff;--apx-ink-card-fg: #1e293b;--apx-ink-card-border: #e2e8f0;--apx-ink-card-hover: #f1f5f9;--apx-ink-card-accent: #6366f1;--apx-ink-card-shadow: rgba(15, 23, 42, .18)}.apexcharts-ink-card{position:absolute;z-index:25;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:8px;background:var(--apx-ink-card-bg);border:1px solid var(--apx-ink-card-border);box-shadow:0 6px 22px var(--apx-ink-card-shadow);font-family:Helvetica,Arial,sans-serif;font-size:12px;color:var(--apx-ink-card-fg);user-select:none}.apexcharts-ink-card-row{display:flex;align-items:center;gap:4px}.apexcharts-ink-card input.apexcharts-ink-editor{flex:1 1 auto;width:150px;min-width:0;box-sizing:border-box;padding:4px 6px;font:inherit;color:inherit;background:transparent;border:1px solid var(--apx-ink-card-border);border-radius:5px}.apexcharts-ink-card input.apexcharts-ink-editor:focus{outline:none;border-color:var(--apx-ink-card-accent)}.apexcharts-ink-btn{flex:0 0 auto;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:12px;line-height:1;cursor:pointer}.apexcharts-ink-btn:hover,.apexcharts-ink-btn--active{background:var(--apx-ink-card-hover)}.apexcharts-ink-btn:focus-visible,.apexcharts-ink-swatch:focus-visible{outline:2px solid var(--apx-ink-card-accent);outline-offset:1px}.apexcharts-ink-btn--bold{font-weight:700}.apexcharts-ink-btn--delete:hover{color:#dc2626}.apexcharts-ink-swatch{flex:0 0 auto;width:16px;height:16px;padding:0;border:1px solid rgba(100,116,139,.45);border-radius:50%;cursor:pointer}.apexcharts-ink-swatch--active{box-shadow:0 0 0 2px var(--apx-ink-card-bg),0 0 0 4px var(--apx-ink-card-accent)}.apexcharts-ink-sep{flex:0 0 auto;width:1px;height:16px;margin:0 2px;background:var(--apx-ink-card-border)}.apexcharts-ink-cardlabel{flex:0 0 auto;font-size:10px;letter-spacing:.4px;text-transform:uppercase;opacity:.65;margin-right:2px}.apexcharts-ink-marker-size{flex:0 0 auto;min-width:16px;text-align:center;font-variant-numeric:tabular-nums}.apexcharts-legend-text{padding-left:15px;margin-left:-15px}.apexcharts-legend-series[role=button]:focus{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:2px}.apexcharts-legend-series[role=button]:focus:not(:focus-visible){outline:none}.apexcharts-legend-series[role=button]:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:2px}.apexcharts-series-collapsed{opacity:0}.apexcharts-series-collapsed.apexcharts-series-collapsing{opacity:1}.apexcharts-datalabels.apexcharts-series-collapsing{animation:apexcharts-datalabels-exit var(--apexcharts-dl-exit, .4s) ease-in forwards}@keyframes apexcharts-datalabels-exit{0%{opacity:1}to{opacity:0}}.apexcharts-canvas svg:focus:not(:focus-visible){outline:none}.apexcharts-bar-area.apexcharts-keyboard-focused,.apexcharts-candlestick-area.apexcharts-keyboard-focused,.apexcharts-boxPlot-area.apexcharts-keyboard-focused,.apexcharts-violin-area.apexcharts-keyboard-focused,.apexcharts-rangebar-area.apexcharts-keyboard-focused,.apexcharts-pie-area.apexcharts-keyboard-focused,.apexcharts-heatmap-rect.apexcharts-keyboard-focused,.apexcharts-treemap-rect.apexcharts-keyboard-focused,.apexcharts-keyboard-focus-ring{stroke:var(--apexcharts-focus-color, #008FFB);stroke-width:2;stroke-opacity:1}.apexcharts-keyboard-focus-ring{fill:none;pointer-events:none}.apexcharts-tooltip{--apx-tt-bg: #ffffff;--apx-tt-border: rgba(15, 23, 42, .12);--apx-tt-shadow-dir: 1;--apx-tt-shadow: 0 calc(var(--apx-tt-shadow-dir) * 1px) 2px rgba(15, 23, 42, .06), 0 calc(var(--apx-tt-shadow-dir) * 4px) 8px -2px rgba(15, 23, 42, .1), 0 calc(var(--apx-tt-shadow-dir) * 12px) 20px -8px rgba(15, 23, 42, .14);--apx-tt-arrow-bg: var(--apx-tt-bg);--apx-tt-color: #0f172a;--apx-tt-color-muted: rgba(15, 23, 42, .55);border-radius:8px;background:var(--apx-tt-bg);border:1px solid var(--apx-tt-border);box-shadow:var(--apx-tt-shadow);color:var(--apx-tt-color);cursor:default;font-size:13px;left:0;top:0;opacity:0;pointer-events:none;position:absolute;display:flex;flex-direction:column;padding:2px 0;white-space:nowrap;z-index:12;transition:opacity .12s ease}.apexcharts-tooltip.apexcharts-active{opacity:1;transition:opacity .12s ease}.apexcharts-tooltip.apexcharts-tooltip-interactive.apexcharts-active{pointer-events:auto}.apexcharts-tooltip.apexcharts-active[data-positioned=true]{transition:opacity .12s ease,left .16s ease-out,top .16s ease-out}.apexcharts-tooltip.apexcharts-theme-dark{--apx-tt-bg: #1c1c1f;--apx-tt-border: rgba(255, 255, 255, .16);--apx-tt-shadow: 0 calc(var(--apx-tt-shadow-dir) * 1px) 2px rgba(0, 0, 0, .24), 0 calc(var(--apx-tt-shadow-dir) * 4px) 8px -2px rgba(0, 0, 0, .3), 0 calc(var(--apx-tt-shadow-dir) * 12px) 20px -8px rgba(0, 0, 0, .38);--apx-tt-color: #f3f4f6;--apx-tt-color-muted: rgba(243, 244, 246, .55)}.apexcharts-tooltip *{font-family:inherit}.apexcharts-tooltip.apexcharts-annotation-tooltip{padding:6px 10px;max-width:240px;white-space:normal;line-height:1.4;pointer-events:none;z-index:13}.apexcharts-tooltip-title{padding:8px 12px 4px;font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--apx-tt-color-muted);background:transparent;border-bottom:none;margin-bottom:0}.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title,.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title{background:transparent;border-bottom:none}.apexcharts-tooltip.apexcharts-tooltip-fill-series{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;padding:0;overflow:hidden;color:#fff}.apexcharts-tooltip.apexcharts-tooltip-fill-series .apexcharts-tooltip-title{background:#00000038;color:#fff;opacity:1;padding:6px 12px}.apexcharts-tooltip.apexcharts-tooltip-fill-series .apexcharts-tooltip-series-group{color:#fff}.apexcharts-tooltip-arrow{position:absolute;box-sizing:border-box;width:10px;height:10px;background:var(--apx-tt-arrow-bg);transform:rotate(45deg);pointer-events:none;top:calc(var(--apx-tt-arrow-y, calc(50% + 1px) ) - 6px)}.apexcharts-tooltip[data-placement=right] .apexcharts-tooltip-arrow{left:-6px;border-left:1px solid var(--apx-tt-border);border-bottom:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=left] .apexcharts-tooltip-arrow{right:-6px;border-top:1px solid var(--apx-tt-border);border-right:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=top] .apexcharts-tooltip-arrow,.apexcharts-tooltip[data-placement=bottom] .apexcharts-tooltip-arrow{top:auto;left:calc(var(--apx-tt-arrow-x, calc(50% + 1px) ) - 6px)}.apexcharts-tooltip[data-placement=top] .apexcharts-tooltip-arrow{bottom:-6px;border-right:1px solid var(--apx-tt-border);border-bottom:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=bottom] .apexcharts-tooltip-arrow{top:-6px;border-top:1px solid var(--apx-tt-border);border-left:1px solid var(--apx-tt-border)}.apexcharts-tooltip[data-placement=bottom]{--apx-tt-shadow-dir: -1 }.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value{display:inline-block;margin-left:5px;font-weight:600}.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty{display:none}.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value{padding:6px 0 5px}.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value{display:flex}.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty){margin-top:-6px}.apexcharts-tooltip-marker{display:inline-flex;align-items:center;justify-content:center;position:relative;width:12px;height:12px;margin-right:6px;vertical-align:middle;color:inherit}.apexcharts-tooltip-marker svg{width:100%;height:100%;display:block}.apexcharts-tooltip-series-group{padding:4px 12px;display:none;gap:8px;text-align:left;justify-content:left;align-items:center}.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker{opacity:1}.apexcharts-tooltip-series-group.apexcharts-active:last-child,.apexcharts-tooltip-series-group:last-child{padding-bottom:8px}.apexcharts-tooltip-y-group{padding:6px 0 5px}.apexcharts-tooltip.apexcharts-tooltip-compact{padding:3px 8px;font-size:11px;line-height:1.35}.apexcharts-tooltip-compact .apexcharts-tooltip-title{padding:0;font-size:11px;white-space:nowrap}.apexcharts-tooltip-compact .apexcharts-tooltip-series-group,.apexcharts-tooltip-compact .apexcharts-tooltip-series-group.apexcharts-active:last-child,.apexcharts-tooltip-compact .apexcharts-tooltip-series-group:last-child{padding:0;gap:5px}.apexcharts-tooltip-compact .apexcharts-tooltip-y-group{padding:0}.apexcharts-tooltip-compact .apexcharts-tooltip-marker{width:8px;height:8px}.apexcharts-tooltip.apexcharts-tooltip-compact.apexcharts-tooltip-value-only{flex-direction:row;align-items:baseline;gap:6px}.apexcharts-tooltip-value-only .apexcharts-tooltip-marker,.apexcharts-tooltip-value-only .apexcharts-tooltip-text-y-label{display:none}.apexcharts-custom-tooltip,.apexcharts-tooltip-box{padding:4px 8px}.apexcharts-tooltip-boxPlot{display:flex;flex-direction:column-reverse}.apexcharts-tooltip-box>div{margin:4px 0}.apexcharts-tooltip-box span.value{font-weight:700}.apexcharts-tooltip-rangebar{padding:5px 8px}.apexcharts-tooltip-rangebar .category{font-weight:600;color:#777}.apexcharts-tooltip-rangebar .series-name{font-weight:700;display:block;margin-bottom:5px}.apexcharts-tooltip-stream{padding:5px 8px}.apexcharts-tooltip-stream .apexcharts-tooltip-title{background:transparent;border:0;padding:0 0 4px;margin:0;font-weight:700}.apexcharts-tooltip-stream-band{display:flex;align-items:center;gap:5px;line-height:1.6;opacity:.72}.apexcharts-tooltip-stream-band.apexcharts-active{opacity:1;font-weight:700}.apexcharts-tooltip-stream-band .series-name{flex:1 1 auto;margin-right:8px}.apexcharts-tooltip-stream-band .value{font-weight:700;margin-left:auto}.apexcharts-tooltip-stream-total{display:flex;align-items:center;margin-top:4px;padding-top:4px;border-top:1px solid var(--apx-tt-border, rgba(15, 23, 42, .12))}.apexcharts-tooltip-stream-total .series-name{flex:1 1 auto;font-weight:600}.apexcharts-tooltip-stream-total .value{font-weight:700;margin-left:auto}.apexcharts-streamgraph-label{pointer-events:none}.apexcharts-xaxistooltip,.apexcharts-yaxistooltip{--apx-axt-bg: #ffffff;--apx-axt-border: rgba(15, 23, 42, .08);--apx-axt-color: #0f172a;--apx-axt-shadow: 0 4px 12px -4px rgba(15, 23, 42, .18), 0 1px 3px -1px rgba(15, 23, 42, .12);opacity:0;pointer-events:none;color:var(--apx-axt-color);font-size:12px;font-weight:500;text-align:center;border-radius:6px;position:absolute;z-index:10;background:var(--apx-axt-bg);border:1px solid var(--apx-axt-border);box-shadow:var(--apx-axt-shadow)}.apexcharts-xaxistooltip.apexcharts-theme-dark,.apexcharts-yaxistooltip.apexcharts-theme-dark{--apx-axt-bg: #1c1c1f;--apx-axt-border: rgba(255, 255, 255, .1);--apx-axt-color: #f3f4f6;--apx-axt-shadow: 0 4px 12px -4px rgba(0, 0, 0, .55), 0 1px 3px -1px rgba(0, 0, 0, .45) }.apexcharts-xaxistooltip{padding:4px 8px;transition:.15s ease all}.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before{left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.apexcharts-xaxistooltip:after{border-color:transparent;border-width:5px;margin-left:-5px}.apexcharts-xaxistooltip:before{border-color:transparent;border-width:6px;margin-left:-6px}.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before{bottom:100%}.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before{top:100%}.apexcharts-xaxistooltip-bottom:after{border-bottom-color:var(--apx-axt-bg)}.apexcharts-xaxistooltip-bottom:before{border-bottom-color:var(--apx-axt-border)}.apexcharts-xaxistooltip-top:after{border-top-color:var(--apx-axt-bg)}.apexcharts-xaxistooltip-top:before{border-top-color:var(--apx-axt-border)}.apexcharts-xaxistooltip.apexcharts-active{opacity:1;transition:.15s ease all}.apexcharts-yaxistooltip{padding:3px 8px}.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before{top:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.apexcharts-yaxistooltip:after{border-color:transparent;border-width:5px;margin-top:-5px}.apexcharts-yaxistooltip:before{border-color:transparent;border-width:6px;margin-top:-6px}.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before{left:100%}.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before{right:100%}.apexcharts-yaxistooltip-left:after{border-left-color:var(--apx-axt-bg)}.apexcharts-yaxistooltip-left:before{border-left-color:var(--apx-axt-border)}.apexcharts-yaxistooltip-right:after{border-right-color:var(--apx-axt-bg)}.apexcharts-yaxistooltip-right:before{border-right-color:var(--apx-axt-border)}.apexcharts-yaxistooltip.apexcharts-active{opacity:1}.apexcharts-yaxistooltip-hidden{display:none}.apexcharts-xcrosshairs,.apexcharts-ycrosshairs{pointer-events:none;opacity:0;transition:.15s ease all}.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active{opacity:1;transition:.15s ease all}.apexcharts-ycrosshairs-hidden{opacity:0}.apexcharts-selection-rect{cursor:move}.svg_select_shape{stroke-width:1;stroke-dasharray:10 10;stroke:#000;stroke-opacity:.1;pointer-events:none;fill:none}.svg_select_handle{stroke-width:3;stroke:#000;fill:none}.svg_select_handle_r{cursor:e-resize}.svg_select_handle_l{cursor:w-resize}.apexcharts-svg.apexcharts-zoomable.hovering-zoom{cursor:crosshair}.apexcharts-svg.apexcharts-zoomable.hovering-pan{cursor:move}.apexcharts-wheel-hint{position:absolute;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .2s ease}.apexcharts-wheel-hint-visible{opacity:1}.apexcharts-wheel-hint span{padding:6px 12px;border-radius:8px;font-size:13px;color:#fff;background:#1c1c1fd1}.apexcharts-theme-dark .apexcharts-wheel-hint span{color:#1c1c1f;background:#ffffffe6}@media(prefers-reduced-motion:reduce){.apexcharts-wheel-hint{transition:none}}.apexcharts-menu-icon,.apexcharts-measure-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{cursor:pointer;width:26px;height:24px;line-height:24px;color:#6e8192;text-align:center;padding:0;margin:0;background:transparent;border:0;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease}.apexcharts-menu-icon svg,.apexcharts-measure-icon svg,.apexcharts-pan-icon svg,.apexcharts-reset-icon svg,.apexcharts-selection-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.apexcharts-theme-dark .apexcharts-menu-icon,.apexcharts-theme-dark .apexcharts-measure-icon,.apexcharts-theme-dark .apexcharts-pan-icon,.apexcharts-theme-dark .apexcharts-reset-icon,.apexcharts-theme-dark .apexcharts-selection-icon,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon,.apexcharts-theme-dark .apexcharts-zoom-icon,.apexcharts-theme-dark .apexcharts-zoomin-icon,.apexcharts-theme-dark .apexcharts-zoomout-icon{color:#d4d6dc}.apexcharts-canvas .apexcharts-measure-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-pan-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected{background:#008ffb1f;color:#008ffb}.apexcharts-theme-light .apexcharts-menu-icon:hover,.apexcharts-theme-light .apexcharts-measure-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-pan-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-reset-icon:hover,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover,.apexcharts-theme-light .apexcharts-zoomin-icon:hover,.apexcharts-theme-light .apexcharts-zoomout-icon:hover{background:#0f172a0f;color:#1f2937}.apexcharts-theme-dark .apexcharts-menu-icon:hover,.apexcharts-theme-dark .apexcharts-measure-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-pan-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-reset-icon:hover,.apexcharts-theme-dark .apexcharts-selection-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-zoom-icon:not(.apexcharts-selected):hover,.apexcharts-theme-dark .apexcharts-zoomin-icon:hover,.apexcharts-theme-dark .apexcharts-zoomout-icon:hover{background:#ffffff14;color:#fff}.apexcharts-menu-icon,.apexcharts-selection-icon{position:relative}.apexcharts-toolbar{position:absolute;z-index:11;display:inline-flex;align-items:center;gap:1px;padding:3px;border-radius:8px;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.apexcharts-theme-dark .apexcharts-toolbar{background:#1c1c1fd1}.apexcharts-menu{background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:absolute;top:calc(100% + 4px);border:1px solid rgba(15,23,42,.08);border-radius:8px;padding:4px;right:0;opacity:0;min-width:120px;transition:opacity .15s ease,transform .15s ease;transform:translateY(-2px);pointer-events:none;box-shadow:0 4px 16px -4px #0f172a1f,0 2px 4px -1px #0f172a0f}.apexcharts-menu.apexcharts-menu-open{opacity:1;transform:translateY(0);pointer-events:all}.apexcharts-menu-item{padding:6px 9px;font-size:12px;border-radius:5px;cursor:pointer}.apexcharts-theme-light .apexcharts-menu-item:hover{background:#0f172a0f}.apexcharts-theme-dark .apexcharts-menu{background:#1c1c1feb;border-color:#ffffff14;color:#f3f4f6;box-shadow:0 4px 16px -4px #00000080,0 2px 4px -1px #0006}.apexcharts-theme-dark .apexcharts-menu-item:hover{background:#ffffff14}@media screen and (min-width:768px){.apexcharts-canvas:hover .apexcharts-toolbar{opacity:1}}.apexcharts-toolbar:focus-within{opacity:1}.apexcharts-menu-icon:focus-visible,.apexcharts-measure-icon:focus-visible,.apexcharts-pan-icon:focus-visible,.apexcharts-reset-icon:focus-visible,.apexcharts-selection-icon:focus-visible,.apexcharts-toolbar-custom-icon:focus-visible,.apexcharts-zoom-icon:focus-visible,.apexcharts-zoomin-icon:focus-visible,.apexcharts-zoomout-icon:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:1px;border-radius:5px}.apexcharts-menu-item:focus-visible{outline:2px solid var(--apexcharts-focus-color, #008FFB);outline-offset:-2px;background:#eee}.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points{opacity:0}.apexcharts-hidden-element-shown{opacity:1;transition:.25s ease all}.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label,.apexcharts-pie-name-label,.apexcharts-pie-name-label-group,.apexcharts-pie-label-connector,.apexcharts-unit-outer-label,.apexcharts-unit-outer-label-group,.apexcharts-unit-label-connector{cursor:default;pointer-events:none}.apexcharts-pie-label-connector,.apexcharts-unit-label-connector{fill:none}.apexcharts-pie-label-delay,.apexcharts-unit-label-delay{opacity:0;animation-name:opaque;animation-duration:.3s;animation-fill-mode:forwards;animation-timing-function:ease}.apexcharts-unit-label-delay{animation-duration:.5s}.apexcharts-radialbar-label{cursor:pointer}.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-gridline,.apexcharts-line,.apexcharts-point-annotation-label,.apexcharts-radar-series path:not(.apexcharts-marker),.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect,.no-pointer-events{pointer-events:none}.apexcharts-tooltip-active .apexcharts-marker{transition:.15s ease all}.apexcharts-radar-series .apexcharts-yaxis,.apexcharts-bar-goals-markers,.apexcharts-bar-shadows,.apexcharts-rangebar-goals-markers{pointer-events:none}.apexcharts-drilldown-target{cursor:pointer}.apexcharts-breadcrumb{position:absolute;z-index:11;display:inline-flex;align-items:center;gap:2px;font-size:12px;font-family:inherit;padding:2px 4px}.apexcharts-breadcrumb-item{background:transparent;border:none;padding:2px 6px;border-radius:3px;font:inherit;color:inherit;cursor:pointer;line-height:1.2}.apexcharts-breadcrumb-item:hover:not(.apexcharts-breadcrumb-current){background:#00000014}.apexcharts-breadcrumb-arrow{margin-right:4px;font-weight:600;user-select:none}.apexcharts-breadcrumb-current{cursor:default;font-weight:600;opacity:.85}.apexcharts-breadcrumb-separator{opacity:.5;user-select:none}.apexcharts-theme-dark .apexcharts-breadcrumb-item:hover:not(.apexcharts-breadcrumb-current){background:#ffffff1f}.apexcharts-drilldown-loading{position:absolute;inset:0;z-index:12;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-family:inherit;color:inherit;background:#ffffff9e;cursor:progress}.apexcharts-drilldown-loading-spinner{width:26px;height:26px;border-radius:50%;border:2.5px solid rgba(0,0,0,.16);border-top-color:#0000008c;animation:apexcharts-drilldown-spin .7s linear infinite}.apexcharts-drilldown-loading-text{opacity:.8}.apexcharts-theme-dark .apexcharts-drilldown-loading{background:#1e1e1e9e}.apexcharts-theme-dark .apexcharts-drilldown-loading-spinner{border-color:#ffffff38;border-top-color:#ffffffb3}@keyframes apexcharts-drilldown-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.apexcharts-canvas:not(.apexcharts-ignore-reduced-motion) .apexcharts-drilldown-loading-spinner{animation:apexcharts-drilldown-pulse 1.4s ease-in-out infinite!important}@keyframes apexcharts-drilldown-pulse{0%,to{opacity:.35}50%{opacity:1}}}.apexcharts-disable-transitions *{transition:none!important}.apexcharts-trellis{position:relative}.apexcharts-trellis-grid{display:grid}.apexcharts-trellis-cell{min-width:0;position:relative}.apexcharts-trellis-header{font-size:12px;font-weight:600;line-height:22px;height:22px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-title{font-size:14px;font-weight:700;padding:2px 0 6px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-mute-y .apexcharts-yaxis,.apexcharts-trellis-mute-x .apexcharts-xaxis{opacity:0}.apexcharts-trellis-has-toolbar{padding-top:24px}.apexcharts-trellis-strip{font-size:12px;font-weight:600;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apexcharts-trellis-strip-column{text-align:center;line-height:22px;height:22px;align-self:end}.apexcharts-trellis-strip-row{align-self:center;max-width:140px;padding-right:6px}.apexcharts-trellis-cell-empty{position:relative}.apexcharts-trellis-empty-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));opacity:.45;pointer-events:none}.apexcharts-trellis-cell-hidden>*{visibility:hidden}.apexcharts-trellis-gradient-legend{margin:10px auto 0}.apexcharts-trellis-panel.apexcharts-trellis-skeleton{background:var(--apx-fore, var(--apx-trellis-fore, #373d3f));opacity:.05;border-radius:4px}.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-tooltip,.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-xaxistooltip,.apexcharts-trellis[data-tooltip-mode=panel] .apexcharts-trellis-cell:not(:hover) .apexcharts-yaxistooltip{opacity:0!important}.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-tooltip,.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-xaxistooltip,.apexcharts-trellis[data-tooltip-mode=grid] .apexcharts-trellis-cell .apexcharts-yaxistooltip{opacity:0!important}.apexcharts-trellis-tooltip{position:absolute;top:0;left:0;z-index:14;pointer-events:none;opacity:0;transition:opacity .1s ease;background:var(--apx-bg, #fff);color:var(--apx-fore, var(--apx-trellis-fore, #373d3f));border:1px solid rgba(120,120,120,.25);border-radius:5px;box-shadow:2px 2px 6px -4px #0006;font-size:12px;min-width:140px;max-width:320px}.apexcharts-trellis-tooltip-active{opacity:1}.apexcharts-trellis-tooltip .apexcharts-tooltip-title{padding:5px 10px;font-weight:600;background:#78787814;border-bottom:1px solid rgba(120,120,120,.18);margin-bottom:2px}.apexcharts-trellis-tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 10px;line-height:1.6}.apexcharts-trellis-tooltip-row-active{background:#7878781a;font-weight:600}.apexcharts-trellis-tooltip-key{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apexcharts-trellis-tooltip-vals{display:flex;gap:10px;white-space:nowrap}.apexcharts-trellis-tooltip-val{display:inline-flex;align-items:center;gap:5px}.apexcharts-trellis-tooltip-marker{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.apexcharts-trellis-cell-promoted{grid-column:1 / -1}.apexcharts-trellis-cell-parked{display:none}.apexcharts-trellis-cell-promoted.apexcharts-trellis-mute-y .apexcharts-yaxis,.apexcharts-trellis-cell-promoted.apexcharts-trellis-mute-x .apexcharts-xaxis{opacity:1}.apexcharts-trellis-header-clickable{cursor:pointer}.apexcharts-trellis-header-clickable:hover{text-decoration:underline;text-underline-offset:3px}.apexcharts-trellis-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;padding:2px 0 6px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-breadcrumb-back{border:none;background:none;padding:0;font-size:12px;cursor:pointer;color:var(--apx-accent, #008ffb)}.apexcharts-trellis-breadcrumb-back:hover{text-decoration:underline}.apexcharts-trellis-breadcrumb-sep{opacity:.5}.apexcharts-trellis-breadcrumb-current{font-weight:600}.apexcharts-trellis-menu{position:absolute;top:26px;right:0;display:none;flex-direction:column;min-width:132px;background:var(--apx-bg, #fff);border:1px solid rgba(120,120,120,.25);border-radius:5px;box-shadow:2px 2px 6px -4px #0006;padding:4px;z-index:15}.apexcharts-trellis-menu-open{display:flex}.apexcharts-trellis-menu-item{border:none;background:none;text-align:left;font-size:12px;padding:5px 8px;border-radius:3px;cursor:pointer;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-menu-item:hover{background:#7878781f}.apexcharts-trellis-toolbar{position:absolute;top:0;right:0;display:flex;gap:2px;z-index:12}.apexcharts-trellis-tool{border:0;background:transparent;padding:2px;cursor:pointer;border-radius:3px;color:#6e8192;line-height:0}.apexcharts-trellis-tool:hover{color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-tool.apexcharts-selected{color:var(--apx-accent, #008ffb)}.apexcharts-trellis-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;padding:8px 10px 2px}.apexcharts-trellis-legend-item{display:flex;align-items:center;gap:6px;cursor:pointer;line-height:1}.apexcharts-trellis-legend-item .apexcharts-legend-marker{width:12px;height:12px;border-radius:50%;display:inline-block}.apexcharts-trellis-legend-item .apexcharts-legend-text{font-size:12px;color:var(--apx-fore, var(--apx-trellis-fore, #373d3f))}.apexcharts-trellis-legend-item.apexcharts-inactive-legend{opacity:.45}@media print{.apexcharts-canvas.apexcharts-printing,.apexcharts-canvas.apexcharts-printing svg{max-width:100%!important}.apexcharts-canvas.apexcharts-printing svg{height:auto!important}.apexcharts-canvas.apexcharts-printing{height:auto!important}.apexcharts-toolbar{display:none!important}}';
|
|
32875
32974
|
const e = globalThis.console;
|
|
32876
32975
|
function t(t2, ...s2) {
|
|
32877
32976
|
e.error(t2, ...s2);
|
|
@@ -33817,6 +33916,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
33817
33916
|
if (w.config.chart.accessibility.enabled && w.config.chart.accessibility.keyboard.enabled && w.config.chart.accessibility.keyboard.navigation.enabled) {
|
|
33818
33917
|
(_i = me.keyboardNavigation) == null ? void 0 : _i.init();
|
|
33819
33918
|
}
|
|
33919
|
+
w.interact.keyNav = null;
|
|
33820
33920
|
if (Environment.isBrowser() && w.globals.axisCharts && (w.axisFlags.isXNumeric || /** @type {Record<string,any>} */
|
|
33821
33921
|
w.config.xaxis.convertedCatToNumeric || w.axisFlags.isRangeBar)) {
|
|
33822
33922
|
if (w.config.chart.zoom.enabled || w.config.chart.selection && w.config.chart.selection.enabled || // @ts-ignore — chart.pan is an internal toolbar config property
|
|
@@ -35121,21 +35221,19 @@ var __async = (__this, __arguments, generator) => {
|
|
|
35121
35221
|
* Returns the highest y value in the specified series.
|
|
35122
35222
|
*
|
|
35123
35223
|
* @param {number} [seriesIndex=0]
|
|
35124
|
-
* @returns {number}
|
|
35224
|
+
* @returns {number | undefined}
|
|
35125
35225
|
*/
|
|
35126
35226
|
getHighestValueInSeries(seriesIndex = 0) {
|
|
35127
|
-
|
|
35128
|
-
return range.getMinYMaxY(seriesIndex).highestY;
|
|
35227
|
+
return this.w.seriesData.series[seriesIndex] && new Range(this.w).getMinYMaxY(seriesIndex).highestY;
|
|
35129
35228
|
}
|
|
35130
35229
|
/**
|
|
35131
35230
|
* Returns the lowest y value in the specified series.
|
|
35132
35231
|
*
|
|
35133
35232
|
* @param {number} [seriesIndex=0]
|
|
35134
|
-
* @returns {number}
|
|
35233
|
+
* @returns {number | undefined}
|
|
35135
35234
|
*/
|
|
35136
35235
|
getLowestValueInSeries(seriesIndex = 0) {
|
|
35137
|
-
|
|
35138
|
-
return range.getMinYMaxY(seriesIndex).lowestY;
|
|
35236
|
+
return this.w.seriesData.series[seriesIndex] && new Range(this.w).getMinYMaxY(seriesIndex).lowestY;
|
|
35139
35237
|
}
|
|
35140
35238
|
/**
|
|
35141
35239
|
* Returns the sum of each series (the totals used for percentage calculations).
|