vue-data-ui 3.0.6 → 3.0.8

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.
Files changed (92) hide show
  1. package/dist/{Arrow-eH6zr7jY.js → Arrow-DXBPuYos.js} +1 -1
  2. package/dist/{BaseDraggableDialog-COBKT377.js → BaseDraggableDialog-Dp-LkWyA.js} +2 -2
  3. package/dist/{BaseIcon-BP55sAS4.js → BaseIcon-CeWUv4rq.js} +1 -1
  4. package/dist/{ColorPicker-rtpGZvge.js → ColorPicker-Bcw_Lmqk.js} +2 -2
  5. package/dist/{DataTable-BsZNCCiq.js → DataTable-CHGbx-9J.js} +2 -2
  6. package/dist/{Legend-DvgvB-wU.js → Legend-ClxfBalA.js} +2 -2
  7. package/dist/{NonSvgPenAndPaper-CmTVzs9z.js → NonSvgPenAndPaper-5MMdcN5c.js} +3 -3
  8. package/dist/{PackageVersion-CceJ5BO0.js → PackageVersion-CBLYUwKk.js} +1 -1
  9. package/dist/{PenAndPaper-CEyTp4aY.js → PenAndPaper-C_FbwLbe.js} +3 -3
  10. package/dist/{Shape-DfDVJHIa.js → Shape-DqeUQm2d.js} +1 -1
  11. package/dist/{Slicer-CPxX7TxR.js → Slicer-B2_tbKnR.js} +2 -2
  12. package/dist/{SparkTooltip-BIBtUxe0.js → SparkTooltip-7ZZL7pcb.js} +1 -1
  13. package/dist/{Title-CP-52fsT.js → Title-CAJPYzZL.js} +1 -1
  14. package/dist/{Tooltip-CvVNyNmi.js → Tooltip-CIPq6i73.js} +1 -1
  15. package/dist/{UserOptions-Dpg2ZAMi.js → UserOptions-CQTdguCS.js} +2 -2
  16. package/dist/{dom-to-png-BHK8mbAk.js → dom-to-png-DLHUoQQa.js} +1 -1
  17. package/dist/{img-B2EzIOH4.js → img-BWVtVa_R.js} +1 -1
  18. package/dist/{index-CEtY3Y6T.js → index-DuDJlW5i.js} +11 -2
  19. package/dist/{pdf-Dif2Rumm.js → pdf-BPJfyKqt.js} +1 -1
  20. package/dist/style.css +1 -1
  21. package/dist/types/vue-data-ui.d.cts +9 -0
  22. package/dist/types/vue-data-ui.d.ts +9 -0
  23. package/dist/{useAutoSizeLabelsInsideViewbox-CxfMGWAl.js → useAutoSizeLabelsInsideViewbox-C27r2YmW.js} +1 -1
  24. package/dist/{useNestedProp-Ii3lZlzP.js → useNestedProp-DjAOrUMl.js} +1 -1
  25. package/dist/{usePrinter-Ct_ga1BV.js → usePrinter-DSx12TjX.js} +2 -2
  26. package/dist/{vue-data-ui-DOxUijlC.js → vue-data-ui-DKUneuh2.js} +64 -64
  27. package/dist/vue-data-ui.js +1 -1
  28. package/dist/{vue-ui-3d-bar-CXBcUwwa.js → vue-ui-3d-bar-DnkuXwJ9.js} +6 -6
  29. package/dist/{vue-ui-accordion-Dd45N8sR.js → vue-ui-accordion-DFgru4Vn.js} +3 -3
  30. package/dist/{vue-ui-age-pyramid-5z3bXquO.js → vue-ui-age-pyramid-DEWxj68b.js} +6 -6
  31. package/dist/{vue-ui-annotator-CGVAEYVg.js → vue-ui-annotator-AJGSFV4p.js} +2 -2
  32. package/dist/{vue-ui-bullet-2JkdnFzw.js → vue-ui-bullet-SKDt53Qh.js} +7 -7
  33. package/dist/{vue-ui-candlestick-B2vUnWpp.js → vue-ui-candlestick-BwNj30uc.js} +7 -7
  34. package/dist/{vue-ui-carousel-table-Bo_zripj.js → vue-ui-carousel-table-CQqCUNFy.js} +4 -4
  35. package/dist/{vue-ui-chestnut-Czd_DM6l.js → vue-ui-chestnut-D-t0dytk.js} +5 -5
  36. package/dist/{vue-ui-chord-Cc01LLih.js → vue-ui-chord-8yMp-EP0.js} +8 -8
  37. package/dist/{vue-ui-circle-pack-DKLt8ose.js → vue-ui-circle-pack-Bv65v2eJ.js} +6 -6
  38. package/dist/{vue-ui-cursor-jknHE5vU.js → vue-ui-cursor-BQBeBWym.js} +2 -2
  39. package/dist/{vue-ui-dashboard-B33lfAUU.js → vue-ui-dashboard-dfA0vvKU.js} +62 -62
  40. package/dist/{vue-ui-digits-BMeVQa49.js → vue-ui-digits-DgjbixRG.js} +2 -2
  41. package/dist/{vue-ui-donut-CqTEpXzh.js → vue-ui-donut-CcJ77x4q.js} +8 -8
  42. package/dist/{vue-ui-donut-evolution-Nd1QRPT4.js → vue-ui-donut-evolution-CTjwS47d.js} +8 -8
  43. package/dist/{vue-ui-dumbbell-Ce-OIdYx.js → vue-ui-dumbbell-B9KhXXFf.js} +7 -7
  44. package/dist/{vue-ui-flow-CGVrdlGQ.js → vue-ui-flow-XvS8UCj5.js} +7 -7
  45. package/dist/{vue-ui-funnel-Duha39HH.js → vue-ui-funnel-Ci4_9e7Z.js} +6 -6
  46. package/dist/{vue-ui-galaxy-DHB0-OzZ.js → vue-ui-galaxy-n37gaXhO.js} +5 -5
  47. package/dist/{vue-ui-gauge-BfdfKC8k.js → vue-ui-gauge-cNbGY_5I.js} +7 -7
  48. package/dist/{vue-ui-gizmo-6cvygvrc.js → vue-ui-gizmo-C3gEtYEx.js} +3 -3
  49. package/dist/{vue-ui-heatmap-DADmzQtU.js → vue-ui-heatmap-DR60xzuo.js} +7 -7
  50. package/dist/{vue-ui-history-plot-C3vI04Oa.js → vue-ui-history-plot-CrYlo7pA.js} +7 -7
  51. package/dist/{vue-ui-kpi-BxzL6n29.js → vue-ui-kpi-UWj5gr85.js} +3 -3
  52. package/dist/{vue-ui-mini-loader-DCxaFsu5.js → vue-ui-mini-loader-BYQy77b4.js} +2 -2
  53. package/dist/{vue-ui-molecule-d5w-FfYZ.js → vue-ui-molecule-BrFDuIa0.js} +5 -5
  54. package/dist/{vue-ui-mood-radar-C4Lf_qiv.js → vue-ui-mood-radar-BPt_D0F-.js} +7 -7
  55. package/dist/{vue-ui-nested-donuts-DOsvyspN.js → vue-ui-nested-donuts-BB4DUoSj.js} +7 -7
  56. package/dist/{vue-ui-onion-DxYequON.js → vue-ui-onion-CjeGdHTb.js} +8 -8
  57. package/dist/{vue-ui-parallel-coordinate-plot-C1o_ksGH.js → vue-ui-parallel-coordinate-plot-HiPC80yx.js} +8 -8
  58. package/dist/{vue-ui-quadrant-Sjwp-p_C.js → vue-ui-quadrant-dN27zJ0O.js} +8 -8
  59. package/dist/{vue-ui-quick-chart-BTeSWjue.js → vue-ui-quick-chart-Bp8TE8Gn.js} +6 -6
  60. package/dist/{vue-ui-radar-Ch90-xXN.js → vue-ui-radar-DWL2Gy0y.js} +8 -8
  61. package/dist/{vue-ui-rating-8O36Avyg.js → vue-ui-rating-Cc6T4yxA.js} +2 -2
  62. package/dist/{vue-ui-relation-circle-ACSD26Ko.js → vue-ui-relation-circle-xFSrTD0T.js} +7 -7
  63. package/dist/{vue-ui-ridgeline-DgsBpi6c.js → vue-ui-ridgeline-BexIbjI6.js} +8 -8
  64. package/dist/{vue-ui-rings-B30B7Rk9.js → vue-ui-rings-ViJ5mBSS.js} +8 -8
  65. package/dist/vue-ui-scatter-KH-0eByA.js +1288 -0
  66. package/dist/{vue-ui-skeleton-DtfU9Y-p.js → vue-ui-skeleton-D8f_PZTs.js} +3 -3
  67. package/dist/{vue-ui-smiley-z_Un5JJa.js → vue-ui-smiley-0ZRJ8E-Y.js} +2 -2
  68. package/dist/{vue-ui-spark-trend-2MlSpWd0.js → vue-ui-spark-trend-BJsh1KX_.js} +3 -3
  69. package/dist/{vue-ui-sparkbar-2cdzKOzM.js → vue-ui-sparkbar-5nC-dtEL.js} +3 -3
  70. package/dist/{vue-ui-sparkgauge-D7RfFrjJ.js → vue-ui-sparkgauge-C7pq2y3S.js} +3 -3
  71. package/dist/{vue-ui-sparkhistogram-CBg8GDrZ.js → vue-ui-sparkhistogram-B-1jzFC3.js} +4 -4
  72. package/dist/{vue-ui-sparkline-C2umA4Q6.js → vue-ui-sparkline-DIXhLse4.js} +3 -3
  73. package/dist/{vue-ui-sparkstackbar-BVADf3Tk.js → vue-ui-sparkstackbar-COZATAnT.js} +3 -3
  74. package/dist/{vue-ui-stackbar-DMPlvwcH.js → vue-ui-stackbar-uE48m7ub.js} +9 -9
  75. package/dist/{vue-ui-strip-plot-BUDIS-ii.js → vue-ui-strip-plot-B9fNLmV8.js} +7 -7
  76. package/dist/{vue-ui-table-DFHkKJkK.js → vue-ui-table-BCp6YkjO.js} +3 -3
  77. package/dist/{vue-ui-table-heatmap-Es8n714c.js → vue-ui-table-heatmap-DmQyUY8m.js} +5 -5
  78. package/dist/{vue-ui-table-sparkline-D8kLXwZc.js → vue-ui-table-sparkline-BJhSbWju.js} +4 -4
  79. package/dist/{vue-ui-thermometer-BTVzQ73I.js → vue-ui-thermometer-wmzdk_at.js} +7 -7
  80. package/dist/{vue-ui-timer-BnLRbn1q.js → vue-ui-timer-DAnHVZU5.js} +5 -5
  81. package/dist/{vue-ui-tiremarks-C1Kvt5oV.js → vue-ui-tiremarks-CM45MbvB.js} +6 -6
  82. package/dist/{vue-ui-treemap-DXN635ri.js → vue-ui-treemap-CAy4GiOG.js} +8 -8
  83. package/dist/{vue-ui-vertical-bar-CAqZZ_jh.js → vue-ui-vertical-bar-C0zuPAfP.js} +9 -9
  84. package/dist/{vue-ui-waffle-BTi4u658.js → vue-ui-waffle-CoawMcsS.js} +8 -8
  85. package/dist/{vue-ui-wheel-BbN4D8MA.js → vue-ui-wheel-DWmAdlT_.js} +6 -6
  86. package/dist/{vue-ui-word-cloud-QkDzSzu9.js → vue-ui-word-cloud-U1rVM83_.js} +6 -6
  87. package/dist/{vue-ui-world-R-fy7YWW.js → vue-ui-world-Ctk1y8Y2.js} +6 -6
  88. package/dist/vue-ui-xy-CMtlUEYc.js +3920 -0
  89. package/dist/{vue-ui-xy-canvas-1MwhA5v2.js → vue-ui-xy-canvas-DvEfhYIW.js} +8 -8
  90. package/package.json +1 -1
  91. package/dist/vue-ui-scatter-BYs-Mwmm.js +0 -1189
  92. package/dist/vue-ui-xy-DN1PKeQk.js +0 -3905
@@ -1,3905 +0,0 @@
1
- import { useCssVars as vo, computed as k, ref as p, onMounted as il, onBeforeUnmount as sl, watch as nt, nextTick as Zt, onUpdated as ho, createElementBlock as i, openBlock as n, createElementVNode as b, createCommentVNode as h, renderSlot as J, normalizeStyle as _, createVNode as Ut, withDirectives as Yl, unref as v, Fragment as x, renderList as C, normalizeClass as Ie, withKeys as Aa, vModelText as za, toDisplayString as ae, defineAsyncComponent as kt, useSlots as fo, getCurrentInstance as go, toRefs as mo, watchEffect as xo, createBlock as Ee, createSlots as bo, withCtx as ge, normalizeProps as dt, guardReactiveProps as wt, mergeProps as _l, Teleport as po, vModelCheckbox as yo, createTextVNode as ko } from "vue";
2
- import { c as Al, V as zl, U as Il, X as wo, F as Je, u as So, f as Wl, t as $o, a4 as qe, d as _o, D as ul, ac as Rt, e as Lo, p as Mo, ad as Ll, a9 as G, ae as Co, h as E, af as Ia, ag as Ta, ah as Ao, ai as Na, aj as Ra, k as pe, ak as zo, y as Pa, z as Io, _ as Oa, R as ot, i as Be, x as Pt, s as Ke, a7 as ee, L as To, al as Ml, I as No, am as St, C as Fe, a as Ro, b as Po, o as Ha, v as Oo, w as Ho, E as Gt } from "./index-CEtY3Y6T.js";
3
- import { t as Xl, u as Vo } from "./useResponsive-DfdjqQps.js";
4
- import { u as Eo } from "./usePrinter-Ct_ga1BV.js";
5
- import { u as Bo, B as Fo } from "./useLoading-D7YHNtLX.js";
6
- import { u as Dl } from "./useNestedProp-Ii3lZlzP.js";
7
- import { u as Va } from "./useTimeLabels-DkzmKfZn.js";
8
- import { u as Wo } from "./useTimeLabelCollider-CIsgDrl9.js";
9
- import Do from "./img-B2EzIOH4.js";
10
- import Yo from "./Title-CP-52fsT.js";
11
- import { S as Xo } from "./Slicer-CPxX7TxR.js";
12
- import { _ as Cl } from "./Shape-DfDVJHIa.js";
13
- import Go from "./BaseIcon-BP55sAS4.js";
14
- import { _ as Ea } from "./_plugin-vue_export-helper-CHgC5LLL.js";
15
- const Uo = {
16
- class: "vue-data-ui-slicer-labels",
17
- style: { position: "relative", "z-index": "1", "pointer-events": "none" }
18
- }, Zo = {
19
- key: 0,
20
- style: { width: "100%", position: "relative" }
21
- }, qo = {
22
- key: 0,
23
- class: "minimap",
24
- style: { width: "100%" }
25
- }, Ko = ["xmlns", "viewBox"], Jo = ["id"], Qo = ["stop-color"], jo = ["d", "stroke"], en = ["x", "width", "height", "fill", "rx"], tn = ["d", "fill"], ln = ["x", "width", "height", "rx", "fill"], an = ["x", "width", "height", "fill", "rx"], on = ["d", "fill"], nn = ["d", "stroke"], un = ["cx", "cy", "stroke", "fill"], sn = ["cx", "cy", "stroke", "fill"], rn = ["x1", "x2", "y2", "stroke"], cn = ["x", "height", "width", "onMouseenter"], vn = ["min", "max"], dn = ["min", "max"], hn = {
26
- __name: "SlicerPreview",
27
- props: {
28
- background: {
29
- type: String,
30
- default: "#FFFFFF"
31
- },
32
- borderColor: {
33
- type: String,
34
- default: "#FFFFFF"
35
- },
36
- fontSize: {
37
- type: Number,
38
- default: 14
39
- },
40
- labelLeft: {
41
- type: [String, Number],
42
- default: ""
43
- },
44
- labelRight: {
45
- type: [String, Number],
46
- default: ""
47
- },
48
- textColor: {
49
- type: String,
50
- default: "#1A1A1A"
51
- },
52
- inputColor: {
53
- type: String,
54
- default: "#1A1A1A"
55
- },
56
- max: {
57
- type: Number,
58
- default: 0
59
- },
60
- min: {
61
- type: Number,
62
- default: 0
63
- },
64
- selectColor: {
65
- type: String,
66
- default: "#4A4A4A"
67
- },
68
- useResetSlot: {
69
- type: Boolean,
70
- default: !1
71
- },
72
- valueStart: {
73
- type: [Number, String],
74
- default: 0
75
- },
76
- valueEnd: {
77
- type: [Number, String],
78
- default: 0
79
- },
80
- minimap: {
81
- type: Array,
82
- default: []
83
- },
84
- smoothMinimap: {
85
- type: Boolean,
86
- default: !1
87
- },
88
- minimapSelectedColor: {
89
- type: String,
90
- default: "#1f77b4"
91
- },
92
- minimapSelectionRadius: {
93
- type: Number,
94
- default: 12
95
- },
96
- minimapLineColor: {
97
- type: String,
98
- default: "#2D353C"
99
- },
100
- minimapSelectedColorOpacity: {
101
- type: Number,
102
- default: 0.2
103
- },
104
- minimapSelectedIndex: {
105
- type: Number,
106
- default: null
107
- },
108
- minimapIndicatorColor: {
109
- type: String,
110
- default: "#2D353C"
111
- },
112
- refreshStartPoint: {
113
- type: Number,
114
- default: 0
115
- },
116
- refreshEndPoint: {
117
- type: Number,
118
- default: null
119
- },
120
- enableRangeHandles: {
121
- type: Boolean,
122
- default: !1
123
- },
124
- enableSelectionDrag: {
125
- type: Boolean,
126
- default: !0
127
- },
128
- verticalHandles: {
129
- type: Boolean,
130
- default: !1
131
- },
132
- timeLabels: {
133
- type: Array
134
- },
135
- isPreview: {
136
- type: Boolean,
137
- default: !1
138
- }
139
- },
140
- emits: ["futureStart", "futureEnd", "update:start", "update:end", "reset", "trapMouse"],
141
- setup(I, { expose: Tl, emit: Nl }) {
142
- vo((g) => ({
143
- "1f8c42d3": _t.value,
144
- "90fc6972": Ne.value,
145
- bd2af110: Rl.value,
146
- d091e712: I.selectColor,
147
- e9db38f6: Lt.value
148
- }));
149
- const d = I, Te = p(null), he = p(d.min), me = p(d.max), $t = k(() => !!d.minimap.length), qt = p(Al()), Ot = p(!1), Ht = p(0), ht = k({
150
- get() {
151
- return he.value;
152
- },
153
- set(g) {
154
- const f = Math.min(g, me.value - 1);
155
- he.value = f, Qt.value && (Qt.value.value = String(f)), fe("futureStart", f);
156
- }
157
- }), Qe = k({
158
- get() {
159
- return me.value;
160
- },
161
- set(g) {
162
- const f = Math.max(g, he.value + 1);
163
- me.value = f, it.value && (it.value.value = String(f)), fe("futureEnd", f);
164
- }
165
- });
166
- il(() => {
167
- const g = () => {
168
- Te.value && (Ht.value = Te.value.getBoundingClientRect().width);
169
- };
170
- g();
171
- const f = Xl(g, 50);
172
- window.addEventListener("resize", f), sl(() => {
173
- window.removeEventListener("resize", f);
174
- });
175
- });
176
- let Kt = null;
177
- function We() {
178
- clearTimeout(Kt), fe("update:start", Number(he.value)), fe("update:end", Number(me.value)), Ot.value = !1;
179
- }
180
- const Jt = k(() => d.refreshEndPoint === null ? d.max : d.refreshEndPoint), fe = Nl, xe = k(() => {
181
- const g = d.max - d.min, f = (he.value - d.min) / g * 100, S = (me.value - d.min) / g * 100, m = (f + S) / 2, ue = je.value ? `calc(${m}% - ${Ge.value.width}px)` : Me.value ? `calc(${m}%)` : `calc(${m}% - ${Ge.value.width / 2}px)`;
182
- return {
183
- left: `${f}%`,
184
- width: `${S - f}%`,
185
- background: d.selectColor,
186
- tooltipLeft: `calc(${f}% - ${Me.value ? 0 : Bt.value / 2}px)`,
187
- tooltipRight: `calc(${S}% - ${je.value ? y.value : y.value / 2}px)`,
188
- tooltipCenter: ue,
189
- arrowLeft: !Me.value,
190
- arrowRight: !je.value
191
- };
192
- }), Me = k(() => Te.value ? Te.value.getBoundingClientRect().width * ((he.value - d.min) / (d.max - d.min)) - Bt.value / 2 < 0 : !1), je = k(() => Te.value ? Te.value.getBoundingClientRect().width * ((me.value - d.min) / (d.max - d.min)) + y.value / 2 > Te.value.getBoundingClientRect().width : !1), _t = k(() => d.inputColor), Lt = k(() => d.background), Rl = k(() => `${d.selectColor}33`), Ne = k(() => d.borderColor), Vt = k(() => {
193
- let g = [];
194
- for (let f = 0; f < d.minimap.length; f += 1)
195
- g.push(f);
196
- return g;
197
- });
198
- function ut() {
199
- fe("reset");
200
- }
201
- nt(
202
- () => d.min,
203
- (g) => {
204
- Number(he.value) < Number(g) && (he.value = Number(g)), Number(me.value) < Number(g) && (me.value = Number(g));
205
- }
206
- ), nt(
207
- () => d.max,
208
- (g) => {
209
- Number(he.value) > Number(g) && (he.value = Number(g)), Number(me.value) > Number(g) && (me.value = Number(g));
210
- }
211
- );
212
- const Mt = p(null), Z = p({
213
- width: 1,
214
- height: 1
215
- }), et = p(null);
216
- il(() => {
217
- if ($t.value) {
218
- const g = Xl(() => {
219
- const { width: f, height: S } = Vo({
220
- chart: Mt.value
221
- });
222
- Z.value.width = f, Z.value.height = S - 47;
223
- });
224
- et.value = new ResizeObserver(g), et.value.observe(Mt.value);
225
- }
226
- }), sl(() => {
227
- et.value && et.value.disconnect();
228
- });
229
- const ve = k(() => d.minimap.length ? Z.value.width / d.minimap.length : 0), A = k(() => {
230
- if (!d.minimap.length) return [];
231
- const g = Math.max(...d.minimap), f = Math.min(...d.minimap) - 10, S = g - (f > 0 ? 0 : f), m = d.minimap.map((Wt, Pl) => {
232
- const el = Wt - f;
233
- return {
234
- x: Z.value.width / d.minimap.length * Pl + ve.value / 2,
235
- y: Z.value.height - el / S * (Z.value.height * 0.9)
236
- };
237
- }), ue = d.smoothMinimap ? zl(m) : Il(m), bt = [...m].slice(d.valueStart, d.valueEnd), fl = d.smoothMinimap ? zl(bt) : Il(bt);
238
- return {
239
- fullSet: ue,
240
- selectionSet: fl,
241
- sliced: bt,
242
- firstPlot: m[d.valueStart],
243
- lastPlot: m[d.valueEnd - 1]
244
- };
245
- }), Re = k(() => ({
246
- x: ve.value * he.value + ve.value / 2,
247
- width: Z.value.width * ((me.value - he.value) / d.max) - ve.value
248
- })), oe = p(d.minimapSelectedIndex);
249
- nt(() => d.minimapSelectedIndex, (g) => {
250
- oe.value = g + d.valueStart;
251
- }, { immediate: !0 });
252
- function ne(g) {
253
- oe.value = g, g >= d.valueStart && g < d.valueEnd && fe("trapMouse", g - d.valueStart);
254
- }
255
- const Et = p(0), Qt = p(null), it = p(null);
256
- function ft(g) {
257
- if (typeof g == "object" && g && "target" in g) {
258
- const S = g.target, m = "valueAsNumber" in S ? S.valueAsNumber : +S.value;
259
- return Number.isFinite(m) ? m : NaN;
260
- }
261
- const f = +g;
262
- return Number.isFinite(f) ? f : NaN;
263
- }
264
- function st(g) {
265
- Ot.value = !0;
266
- const f = ft(g);
267
- Number.isFinite(f) && (ht.value = f);
268
- }
269
- function jt(g) {
270
- Ot.value = !0;
271
- const f = ft(g);
272
- Number.isFinite(f) && (Qe.value = f);
273
- }
274
- const De = k(() => d.valueEnd - d.valueStart), Q = p(!1);
275
- let U = p(null);
276
- const rl = k(() => (Ht.value - 48) / (d.max - d.min)), cl = k(() => (Ht.value - 48) / (d.max - d.min) * De.value), vl = p(2.5), gt = k(() => {
277
- const g = Ht.value - 48;
278
- return Math.ceil(
279
- (d.max - d.min) / ((g - cl.value) / vl.value)
280
- );
281
- });
282
- let Pe = null, P = null, Ye = null, Oe = null;
283
- const Ct = (g) => {
284
- if (tt.value = !0, !d.enableSelectionDrag) return;
285
- const f = g.type === "touchstart", S = f && g.targetTouches && g.targetTouches[0] ? g.targetTouches[0] : null, m = f ? S ? S.target : null : g.target;
286
- !m || !(m instanceof Element) || m.classList && m.classList.contains("range-handle") || (Q.value = !0, U.value = f ? S ? S.clientX : 0 : g.clientX, Pe = f ? "touchmove" : "mousemove", P = f ? "touchend" : "mouseup", Ye = f ? Xe : ye, Oe = f ? L : dl, window.addEventListener(Pe, Ye, { passive: !1 }), window.addEventListener(P, Oe));
287
- };
288
- function ye(g) {
289
- Q.value && At(g.clientX);
290
- }
291
- function Xe(g) {
292
- if (!Q.value || !Te.value) return;
293
- const f = g.target;
294
- if (!(f instanceof Element) || !Te.value.contains(f) || f.classList && f.classList.contains("range-handle")) return;
295
- g.preventDefault();
296
- const S = g.targetTouches && g.targetTouches[0] ? g.targetTouches[0] : null;
297
- S && At(S.clientX);
298
- }
299
- function At(g) {
300
- if (!Q.value) return;
301
- const f = g - U.value;
302
- if (Math.abs(f) > rl.value) {
303
- if (f > 0) {
304
- const S = Math.min(d.max, me.value + gt.value);
305
- Qe.value = S, ht.value = S - De.value;
306
- } else {
307
- const S = Math.max(d.min, he.value - gt.value);
308
- ht.value = S, Qe.value = S + De.value;
309
- }
310
- U.value = g;
311
- }
312
- }
313
- function dl() {
314
- hl();
315
- }
316
- function L() {
317
- hl();
318
- }
319
- function hl() {
320
- Q.value = !1, Pe && Ye && window.removeEventListener(Pe, Ye), P && Oe && window.removeEventListener(P, Oe), Pe = P = null, Ye = Oe = null, We();
321
- }
322
- const mt = p(!1), xt = p(null), rt = p(null), Bt = p(1), y = p(1), tt = p(!1);
323
- function $() {
324
- xt.value && (Bt.value = xt.value.getBoundingClientRect().width);
325
- }
326
- function $e() {
327
- rt.value && (y.value = rt.value.getBoundingClientRect().width);
328
- }
329
- const Ft = p(0);
330
- function zt(g) {
331
- Ft.value = g === "start" ? 1 : 0;
332
- }
333
- const t = p(!1), Ge = p({
334
- width: 0,
335
- left: 0
336
- });
337
- nt([he, me], async () => {
338
- if (await Zt(), !xt.value || !rt.value) {
339
- t.value = !1, Ge.value = { width: 0, left: 0 };
340
- return;
341
- }
342
- const g = xt.value.getBoundingClientRect(), f = rt.value.getBoundingClientRect();
343
- t.value = g.x + g.width > f.x;
344
- const S = g.x + g.width / 2, m = f.x + f.width / 2, ue = g.width + f.width, bt = (S + m) / 2;
345
- Ge.value = {
346
- width: ue,
347
- left: bt - ue / 2
348
- };
349
- }), ho(() => {
350
- $(), $e();
351
- }), nt(() => d.labelLeft, () => {
352
- Zt($);
353
- }, { deep: !0 }), nt(() => d.labelRight, () => {
354
- Zt($e);
355
- }, { deep: !0 });
356
- const B = k(() => {
357
- const g = d.timeLabels.find((S) => S.absoluteIndex === he.value), f = d.timeLabels.find((S) => S.absoluteIndex === me.value - 1);
358
- return {
359
- left: g ? g.text : "",
360
- right: f ? f.text : ""
361
- };
362
- });
363
- return sl(() => {
364
- et.value && et.value.disconnect(), Pe && Ye && window.removeEventListener(Pe, Ye), P && Oe && window.removeEventListener(P, Oe), Pe = P = null, Ye = Oe = null, clearTimeout(Kt);
365
- }), Tl({
366
- setStartValue: st,
367
- setEndValue: jt
368
- }), (g, f) => (n(), i("div", {
369
- "data-dom-to-png-ignore": "",
370
- style: { padding: "0 24px" },
371
- class: "vue-data-ui-zoom",
372
- ref_key: "zoomWrapper",
373
- ref: Te,
374
- onMousedown: Ct,
375
- onTouchstart: Ct
376
- }, [
377
- b("div", Uo, [
378
- I.valueStart !== I.refreshStartPoint || I.valueEnd !== Jt.value ? (n(), i("div", Zo, [
379
- I.useResetSlot ? J(g.$slots, "reset-action", {
380
- key: 1,
381
- reset: ut
382
- }, void 0, !0) : (n(), i("button", {
383
- key: 0,
384
- tabindex: "0",
385
- role: "button",
386
- class: "vue-data-ui-refresh-button",
387
- style: _({
388
- top: $t.value ? "36px" : "-16px",
389
- pointerEvents: "all !important"
390
- }),
391
- onClick: ut
392
- }, [
393
- Ut(Go, {
394
- name: "refresh",
395
- stroke: I.textColor
396
- }, null, 8, ["stroke"])
397
- ], 4))
398
- ])) : h("", !0)
399
- ]),
400
- b("div", {
401
- class: "double-range-slider",
402
- ref_key: "minimapWrapper",
403
- ref: Mt,
404
- style: { "z-index": "0" },
405
- onMouseenter: f[13] || (f[13] = (S) => tt.value = !0),
406
- onMouseleave: f[14] || (f[14] = (S) => tt.value = !1)
407
- }, [
408
- $t.value ? (n(), i("div", qo, [
409
- (n(), i("svg", {
410
- xmlns: v(wo),
411
- viewBox: `0 0 ${Z.value.width < 0 ? 0 : Z.value.width} ${Z.value.height < 0 ? 0 : Z.value.height}`
412
- }, [
413
- b("defs", null, [
414
- b("linearGradient", {
415
- id: qt.value,
416
- x1: "0%",
417
- y1: "0%",
418
- x2: "0%",
419
- y2: "100%"
420
- }, [
421
- b("stop", {
422
- offset: "0%",
423
- "stop-color": `${I.minimapLineColor}50`
424
- }, null, 8, Qo),
425
- f[15] || (f[15] = b("stop", {
426
- offset: "100%",
427
- "stop-color": "transparent"
428
- }, null, -1))
429
- ], 8, Jo)
430
- ]),
431
- b("path", {
432
- d: `M${A.value.fullSet}`,
433
- stroke: `${I.minimapLineColor}`,
434
- fill: "none",
435
- "stroke-width": "1",
436
- "stroke-linecap": "round",
437
- "stroke-linejoin": "round",
438
- style: { opacity: "1" }
439
- }, null, 8, jo),
440
- b("rect", {
441
- x: Re.value.x,
442
- width: Re.value.width < 0 ? 0 : Re.value.width,
443
- height: Math.max(Z.value.height, 0),
444
- y: 0,
445
- fill: Ne.value,
446
- rx: I.minimapSelectionRadius,
447
- stroke: "none"
448
- }, null, 8, en),
449
- b("path", {
450
- d: `M${ve.value / 2},${Math.max(Z.value.height, 0)} ${A.value.fullSet} L${Z.value.width - ve.value / 2},${Math.max(Z.value.height, 0)}Z`,
451
- fill: `url(#${qt.value})`,
452
- stroke: "none",
453
- style: { opacity: "1" }
454
- }, null, 8, tn),
455
- b("rect", {
456
- x: Re.value.x,
457
- width: Re.value.width < 0 ? 0 : Re.value.width,
458
- height: Math.max(Z.value.height, 0),
459
- y: 0,
460
- rx: I.minimapSelectionRadius,
461
- fill: Ne.value,
462
- style: _({
463
- opacity: Q.value || Ot.value ? 0 : 1
464
- })
465
- }, null, 12, ln),
466
- b("rect", {
467
- x: Re.value.x,
468
- width: Re.value.width < 0 ? 0 : Re.value.width,
469
- height: Math.max(Z.value.height, 0),
470
- y: 0,
471
- fill: I.minimapSelectedColor,
472
- rx: I.minimapSelectionRadius,
473
- style: _({
474
- opacity: I.minimapSelectedColorOpacity
475
- })
476
- }, null, 12, an),
477
- b("path", {
478
- d: `M${A.value.sliced[0].x},${Math.max(Z.value.height, 0)} ${A.value.selectionSet} L${A.value.sliced.at(-1).x},${Math.max(Z.value.height, 0)}Z`,
479
- fill: `url(#${qt.value})`,
480
- stroke: "none",
481
- style: { opacity: "1" }
482
- }, null, 8, on),
483
- b("path", {
484
- d: `M ${A.value.selectionSet}`,
485
- stroke: `${I.minimapLineColor}`,
486
- fill: "transparent",
487
- "stroke-width": "2",
488
- "stroke-linecap": "round",
489
- "stroke-linejoin": "round"
490
- }, null, 8, nn),
491
- b("circle", {
492
- cx: A.value.firstPlot.x,
493
- cy: A.value.firstPlot.y,
494
- "stroke-width": "0.5",
495
- stroke: Ne.value,
496
- r: "3",
497
- fill: I.minimapLineColor
498
- }, null, 8, un),
499
- b("circle", {
500
- cx: A.value.lastPlot.x,
501
- cy: A.value.lastPlot.y,
502
- "stroke-width": "0.5",
503
- stroke: Ne.value,
504
- r: "3",
505
- fill: I.minimapLineColor
506
- }, null, 8, sn),
507
- oe.value !== null ? (n(!0), i(x, { key: 0 }, C(Vt.value, (S, m) => (n(), i("g", null, [
508
- oe.value === S && S >= I.valueStart && S < I.valueEnd ? (n(), i("line", {
509
- key: 0,
510
- x1: ve.value * m + ve.value / 2,
511
- x2: ve.value * m + ve.value / 2,
512
- y1: 0,
513
- y2: Math.max(Z.value.height, 0),
514
- stroke: I.minimapIndicatorColor,
515
- "stroke-linecap": "round",
516
- "stroke-dasharray": "2",
517
- "stroke-width": "1"
518
- }, null, 8, rn)) : h("", !0)
519
- ]))), 256)) : h("", !0),
520
- (n(!0), i(x, null, C(Vt.value, (S, m) => (n(), i("rect", {
521
- x: ve.value * m,
522
- y: 0,
523
- height: Math.max(Z.value.height, 0),
524
- width: ve.value < 0 ? 0 : ve.value,
525
- fill: "transparent",
526
- style: _([{ "pointer-events": "all !important" }, {
527
- cursor: S >= I.valueStart && S < I.valueEnd && I.enableSelectionDrag ? mt.value ? "grabbing" : "grab" : "default"
528
- }]),
529
- onMousedown: f[0] || (f[0] = (ue) => mt.value = !0),
530
- onMouseup: f[1] || (f[1] = (ue) => mt.value = !1),
531
- onMouseenter: (ue) => ne(S),
532
- onMouseleave: f[2] || (f[2] = (ue) => {
533
- oe.value = null, fe("trapMouse", null);
534
- })
535
- }, null, 44, cn))), 256))
536
- ], 8, Ko))
537
- ])) : h("", !0),
538
- f[16] || (f[16] = b("div", { class: "slider-track" }, null, -1)),
539
- b("div", {
540
- class: Ie({
541
- "range-highlight": !0,
542
- move: I.enableSelectionDrag
543
- }),
544
- onMousedown: f[3] || (f[3] = (S) => mt.value = !0),
545
- onMouseup: f[4] || (f[4] = (S) => mt.value = !1),
546
- style: _({
547
- ...xe.value,
548
- cursor: mt.value ? "grabbing" : "grab"
549
- })
550
- }, null, 38),
551
- I.enableRangeHandles ? Yl((n(), i("input", {
552
- ref_key: "rangeStart",
553
- ref: Qt,
554
- key: `range-min${Et.value}`,
555
- type: "range",
556
- class: Ie({ "range-left": !0, "range-handle": !0, "range-minimap": $t.value && I.verticalHandles }),
557
- min: I.min,
558
- max: I.max,
559
- "onUpdate:modelValue": f[5] || (f[5] = (S) => ht.value = S),
560
- onInput: f[6] || (f[6] = (S) => st(S)),
561
- onChange: We,
562
- onKeyup: Aa(We, ["enter"]),
563
- onBlur: We,
564
- onMouseenter: f[7] || (f[7] = (S) => zt("start")),
565
- onPointermove: f[8] || (f[8] = (S) => ht.value = +S.target.value),
566
- onPointerup: We
567
- }, null, 42, vn)), [
568
- [
569
- za,
570
- ht.value,
571
- void 0,
572
- { number: !0 }
573
- ]
574
- ]) : h("", !0),
575
- I.enableRangeHandles ? Yl((n(), i("input", {
576
- key: 2,
577
- ref_key: "rangeEnd",
578
- ref: it,
579
- type: "range",
580
- class: Ie({ "range-right": !0, "range-handle": !0, "range-minimap": $t.value && I.verticalHandles }),
581
- min: I.min,
582
- max: I.max,
583
- "onUpdate:modelValue": f[9] || (f[9] = (S) => Qe.value = S),
584
- onInput: f[10] || (f[10] = (S) => jt(S)),
585
- onChange: We,
586
- onKeyup: Aa(We, ["enter"]),
587
- onBlur: We,
588
- onMouseenter: f[11] || (f[11] = (S) => zt("end")),
589
- onPointermove: f[12] || (f[12] = (S) => Qe.value = +S.target.value),
590
- onPointerup: We
591
- }, null, 42, dn)), [
592
- [
593
- za,
594
- Qe.value,
595
- void 0,
596
- { number: !0 }
597
- ]
598
- ]) : h("", !0),
599
- B.value.left ? (n(), i("div", {
600
- key: 3,
601
- ref_key: "tooltipLeft",
602
- ref: xt,
603
- class: Ie({
604
- "range-tooltip": !0,
605
- "range-tooltip-visible": tt.value,
606
- "range-tooltip-arrow": xe.value.arrowLeft && !I.verticalHandles,
607
- "range-tooltip-arrow-left": !xe.value.arrowLeft && !I.verticalHandles
608
- }),
609
- style: _({
610
- left: xe.value.tooltipLeft,
611
- color: v(Je)(I.selectColor),
612
- backgroundColor: I.selectColor,
613
- border: `1px solid ${Ne.value}`,
614
- zIndex: `${Ft.value + 4}`,
615
- visibility: t.value || B.value.left === B.value.right ? "hidden" : "visible"
616
- })
617
- }, ae(B.value.left), 7)) : h("", !0),
618
- (t.value || B.value.left === B.value.right) && (B.value.left || B.value.right) ? (n(), i("div", {
619
- key: 4,
620
- ref: "tooltipMerge",
621
- class: Ie({
622
- "range-tooltip": !0,
623
- "range-tooltip-visible": tt.value,
624
- "range-tooltip-arrow": !0,
625
- "range-tooltip-arrow-left": !xe.value.arrowLeft && !I.verticalHandles,
626
- "range-tooltip-arrow-right": !xe.value.arrowRight && !I.verticalHandles
627
- }),
628
- style: _({
629
- left: xe.value.tooltipCenter,
630
- width: Ge.value.width + "px",
631
- color: v(Je)(I.selectColor),
632
- backgroundColor: I.selectColor,
633
- border: `1px solid ${Ne.value}`,
634
- zIndex: "4"
635
- })
636
- }, ae(B.value.left === B.value.right ? B.value.left : `${B.value.left} - ${B.value.right}`), 7)) : h("", !0),
637
- B.value.right ? (n(), i("div", {
638
- key: 5,
639
- ref_key: "tooltipRight",
640
- ref: rt,
641
- class: Ie({
642
- "range-tooltip": !0,
643
- "range-tooltip-visible": tt.value,
644
- "range-tooltip-arrow": xe.value.arrowRight && !I.verticalHandles,
645
- "range-tooltip-arrow-right": !xe.value.arrowRight && !I.verticalHandles
646
- }),
647
- style: _({
648
- left: xe.value.tooltipRight,
649
- color: v(Je)(I.selectColor),
650
- backgroundColor: I.selectColor,
651
- border: `1px solid ${Ne.value}`,
652
- zIndex: "4",
653
- visibility: t.value || B.value.left === B.value.right ? "hidden" : "visible"
654
- })
655
- }, ae(B.value.right), 7)) : h("", !0)
656
- ], 544)
657
- ], 544));
658
- }
659
- }, fn = /* @__PURE__ */ Ea(hn, [["__scopeId", "data-v-a8dc8a61"]]), gn = ["id"], mn = ["id"], xn = ["viewBox", "aria-label"], bn = ["x", "y", "width", "height"], pn = { key: 1 }, yn = { class: "vue-ui-xy-grid" }, kn = ["stroke", "x1", "x2", "y1", "y2"], wn = ["stroke", "x1", "x2", "y1", "y2"], Sn = { key: 1 }, $n = ["x1", "x2", "y1", "y2", "stroke"], _n = ["x1", "x2", "y1", "y2", "stroke"], Ln = ["x1", "x2", "y1", "y2", "stroke"], Mn = { key: 3 }, Cn = ["d", "stroke"], An = { key: 4 }, zn = ["d", "stroke"], In = ["id"], Tn = ["stop-color"], Nn = ["stop-color"], Rn = ["stop-color"], Pn = ["id"], On = ["stop-color"], Hn = ["stop-color"], Vn = ["stop-color"], En = ["id"], Bn = ["stop-color"], Fn = ["stop-color"], Wn = ["id"], Dn = ["stop-color"], Yn = ["stop-color"], Xn = ["id"], Gn = ["stop-color"], Un = ["stop-color"], Zn = ["x", "y", "height", "width", "fill"], qn = ["x", "y", "width"], Kn = { key: 0 }, Jn = ["x", "y", "height", "width", "fill"], Qn = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], jn = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], eu = ["width", "x", "y"], tu = { key: 0 }, lu = ["id"], au = ["fill"], ou = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], nu = ["x", "y", "font-size", "fill"], uu = ["stroke", "x1", "x2", "y1", "y2"], iu = { key: 3 }, su = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], ru = ["x", "y", "width", "height", "stroke", "stroke-width", "stroke-linecap", "stroke-linejoin", "stroke-dasharray"], cu = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], vu = ["fill", "font-size", "transform"], du = ["x1", "x2", "y1", "y2", "stroke"], hu = ["x", "y", "font-size", "fill"], fu = ["x1", "x2", "y1", "y2", "stroke"], gu = ["x", "y", "font-size", "fill"], mu = ["width", "x", "y"], xu = { style: { width: "100%" } }, bu = { key: 0 }, pu = ["id"], yu = ["fill"], ku = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], wu = ["x", "y", "font-size", "fill"], Su = ["d", "stroke", "stroke-width", "stroke-dasharray"], $u = ["d", "stroke", "stroke-width", "stroke-dasharray"], _u = { key: 6 }, Lu = { key: 7 }, Mu = ["d", "fill", "fill-opacity"], Cu = { key: 0 }, Au = ["d", "fill"], zu = ["d", "fill"], Iu = ["d", "fill"], Tu = ["d", "fill"], Nu = ["d", "stroke", "stroke-width", "stroke-dasharray"], Ru = ["d", "stroke", "stroke-width", "stroke-dasharray"], Pu = ["width", "x", "y"], Ou = { style: { width: "100%" } }, Hu = { key: 3 }, Vu = ["id"], Eu = ["fill"], Bu = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], Fu = ["x", "y", "font-size", "fill"], Wu = { key: 8 }, Du = ["x", "y", "font-size", "fill"], Yu = ["x", "y", "font-size", "fill", "font-weight"], Xu = { key: 9 }, Gu = ["x", "y", "font-size", "fill"], Uu = { key: 10 }, Zu = ["x", "y"], qu = ["innerHTML"], Ku = ["x", "y"], Ju = ["innerHTML"], Qu = ["x1", "x2", "y1", "y2", "stroke"], ju = { key: 11 }, ei = ["x", "y", "font-size", "fill"], ti = { key: 12 }, li = ["x", "y"], ai = ["innerHTML"], oi = ["x", "y"], ni = ["innerHTML"], ui = ["x1", "x2", "y1", "y2", "stroke"], ii = ["x", "y", "font-size", "fill", "innerHTML"], si = ["x", "y", "font-size", "fill", "innerHTML"], ri = ["x", "y", "font-size", "fill", "innerHTML"], ci = ["x", "y", "font-size", "fill", "innerHTML"], vi = ["id"], di = ["stop-color"], hi = ["stop-color"], fi = ["x", "y", "width", "height", "fill", "onMouseenter"], gi = ["font-size", "fill", "transform"], mi = ["x", "y", "font-size", "fill"], xi = ["text-anchor", "font-size", "fill", "transform", "onClick"], bi = ["text-anchor", "font-size", "fill", "transform", "innerHTML", "onClick"], pi = { key: 15 }, yi = ["x1", "y1", "x2", "y2", "stroke", "stroke-width", "stroke-dasharray"], ki = ["x1", "y1", "x2", "y2", "stroke", "stroke-width", "stroke-dasharray"], wi = ["y", "x", "width", "height", "fill"], Si = ["id", "x", "y", "font-size", "fill", "text-anchor"], $i = {
660
- key: 16,
661
- style: { "pointer-events": "none" }
662
- }, _i = ["x", "y"], Li = ["innerHTML"], Mi = ["cx", "cy", "r", "fill"], Ci = {
663
- key: 4,
664
- class: "vue-data-ui-watermark"
665
- }, Ai = {
666
- class: "vue-ui-xy-tag-arrow",
667
- height: "20",
668
- viewBox: "0 0 10 20",
669
- style: { position: "absolute", right: "100%", top: "50%", transform: "translateY(-50%)" }
670
- }, zi = ["fill"], Ii = ["innerHTML"], Ti = {
671
- class: "vue-ui-xy-tag-arrow",
672
- height: "100%",
673
- viewBox: "0 0 10 20",
674
- style: { position: "absolute", left: "100%", top: "50%", transform: "translateY(-50%)" }
675
- }, Ni = ["fill"], Ri = ["innerHTML"], Pi = {
676
- class: "vue-ui-xy-tag-arrow",
677
- height: "20",
678
- viewBox: "0 0 10 20",
679
- style: { position: "absolute", right: "100%", top: "50%", transform: "translateY(-50%)" }
680
- }, Oi = ["fill"], Hi = ["innerHTML"], Vi = {
681
- class: "vue-ui-xy-tag-arrow",
682
- height: "100%",
683
- viewBox: "0 0 10 20",
684
- style: { position: "absolute", left: "100%", top: "50%", transform: "translateY(-50%)" }
685
- }, Ei = ["fill"], Bi = ["innerHTML"], Fi = ["id"], Wi = ["onClick"], Di = {
686
- key: 0,
687
- viewBox: "0 0 20 12",
688
- height: "14",
689
- width: "20"
690
- }, Yi = ["stroke", "fill"], Xi = {
691
- key: 1,
692
- viewBox: "0 0 40 40",
693
- height: "14",
694
- width: "14"
695
- }, Gi = ["fill"], Ui = ["fill"], Zi = {
696
- key: 2,
697
- viewBox: "0 0 12 12",
698
- height: "14",
699
- width: "14"
700
- }, qi = {
701
- style: { display: "flex", "flex-direction": "row", gap: "6px", "align-items": "center", "padding-left": "6px" },
702
- "data-dom-to-png-ignore": ""
703
- }, Ki = ["innerHTML"], Ji = {
704
- __name: "vue-ui-xy",
705
- props: {
706
- config: {
707
- type: Object,
708
- default() {
709
- return {};
710
- }
711
- },
712
- dataset: {
713
- type: Array,
714
- default() {
715
- return [];
716
- }
717
- },
718
- selectedXIndex: {
719
- type: Number,
720
- default: void 0
721
- }
722
- },
723
- emits: ["selectTimeLabel", "selectX", "selectLegend"],
724
- setup(I, { expose: Tl, emit: Nl }) {
725
- const d = I, Te = kt(() => import("./DataTable-BsZNCCiq.js")), he = kt(() => import("./Tooltip-CvVNyNmi.js")), me = kt(() => import("./UserOptions-Dpg2ZAMi.js")), $t = kt(() => import("./BaseIcon-BP55sAS4.js")), qt = kt(() => import("./vue-ui-table-sparkline-D8kLXwZc.js")), Ot = kt(() => import("./vue-ui-accordion-Dd45N8sR.js")), Ht = kt(() => import("./PackageVersion-CceJ5BO0.js")), ht = kt(() => import("./PenAndPaper-CEyTp4aY.js")), Qe = Nl, Kt = fo(), We = go(), { vue_ui_xy: Jt } = So(), fe = p(null), xe = p(null), Me = p(null), je = p(null), _t = p(null), Lt = p(null), Rl = p(null), Ne = p(null), Vt = p(null), ut = p(null), Mt = p(null), Z = p(null), et = p(null), ve = p(0), A = p(null), Re = p(!0), oe = p(600), ne = p(1e3), Et = p("0 0 1000 600"), Qt = p({ x: 0, y: 0 }), it = p({ line: "line", bar: "bar", plot: "plot" }), ft = p(!1), st = p(!1), jt = p(!1), De = p(null), Q = p([]), U = p(Al()), rl = p(0), cl = p(0), vl = p(0), gt = p(!0), Pe = p(0), P = p(null), Ye = p(!1), Oe = p(!0), Ct = p(!0), ye = p(null), Xe = p({}), At = p(null), dl = p(!1), L = p(null), hl = k(() => ({
726
- height: oe.value,
727
- width: ne.value
728
- })), mt = d.config.downsample && d.config.downsample.threshold ? d.config.downsample.threshold : 500;
729
- function xt(l) {
730
- return Number.isFinite(l) ? Math.max(0, Math.floor(l)) : 0;
731
- }
732
- function rt(l, r, e = 0) {
733
- return Number.isFinite(l) && Number.isFinite(r) && Math.abs(r) > 1e-9 ? l / r : e;
734
- }
735
- const Bt = p(!1), y = p({
736
- dataLabels: { show: !0 },
737
- showTooltip: !0,
738
- showTable: !1,
739
- isStacked: !1,
740
- useIndividualScale: !1
741
- });
742
- function tt() {
743
- Bt.value ? (y.value.isStacked = t.value.chart.grid.labels.yAxis.stacked, y.value.useIndividualScale == null && (y.value.useIndividualScale = t.value.chart.grid.labels.yAxis.useIndividualScale)) : (y.value = {
744
- dataLabels: { show: !0 },
745
- showTooltip: t.value.chart.tooltip.show === !0,
746
- showTable: t.value.showTable === !0,
747
- isStacked: t.value.chart.grid.labels.yAxis.stacked,
748
- useIndividualScale: t.value.chart.grid.labels.yAxis.useIndividualScale
749
- }, Bt.value = !0);
750
- }
751
- const $ = p({
752
- xAxis: 18,
753
- yAxis: 12,
754
- dataLabels: 20,
755
- plotLabels: 10
756
- }), $e = p({ plot: 3, line: 3 });
757
- il(() => {
758
- dl.value = !0, d.dataset.length && d.dataset.forEach((l, r) => {
759
- [null, void 0].includes(l.series) && Wl({
760
- componentName: "VueUiXy",
761
- type: "datasetSerieAttribute",
762
- property: "series (number[])",
763
- index: r,
764
- debug: Ge.value
765
- });
766
- });
767
- });
768
- function Ft() {
769
- if (!Object.keys(d.config || {}).length)
770
- return Jt;
771
- const l = Dl({
772
- userConfig: d.config,
773
- defaultConfig: Jt
774
- });
775
- return d.config && Fe(d.config, "chart.highlightArea") && (Array.isArray(d.config.chart.highlightArea) ? l.chart.highlightArea = d.config.chart.highlightArea : l.chart.highlightArea = [d.config.chart.highlightArea]), d.config && Fe(d.config, "chart.grid.labels.yAxis.scaleMin") ? l.chart.grid.labels.yAxis.scaleMin = d.config.chart.grid.labels.yAxis.scaleMin : l.chart.grid.labels.yAxis.scaleMin = null, d.config && Fe(d.config, "chart.grid.labels.yAxis.scaleMax") ? l.chart.grid.labels.yAxis.scaleMax = d.config.chart.grid.labels.yAxis.scaleMax : l.chart.grid.labels.yAxis.scaleMax = null, d.config && Fe(d.config, "chart.zoom.startIndex") ? l.chart.zoom.startIndex = d.config.chart.zoom.startIndex : l.chart.zoom.startIndex = null, d.config && Fe(d.config, "chart.zoom.endIndex") ? l.chart.zoom.endIndex = d.config.chart.zoom.endIndex : l.chart.zoom.endIndex = null, d.config && Fe(d.config, "chart.grid.labels.yAxis.groupColor") ? l.chart.grid.labels.yAxis.groupColor = d.config.chart.grid.labels.yAxis.groupColor : l.chart.grid.labels.yAxis.groupColor = null, d.config && d.config.chart.annotations && Array.isArray(d.config.chart.annotations) && d.config.chart.annotations.length ? l.chart.annotations = d.config.chart.annotations.map((r) => Dl({
776
- defaultConfig: Jt.chart.annotations[0],
777
- userConfig: r
778
- })) : l.chart.annotations = [], d.config && Fe(d.config, "chart.grid.position") && d.config.chart.grid.position === "start" && d.dataset.length && d.dataset.some((r) => r.type === "bar") && (l.chart.grid.position = "middle", Fe(d.config, "debug") && console.warn("Vue Data UI - VueUiXy - config.chart.grid.position was overriden to `middle` because your dataset contains a bar")), d.config && Fe(d.config, "chart.grid.labels.yAxis.serieNameFormatter") ? l.chart.grid.labels.yAxis.serieNameFormatter = d.config.chart.grid.labels.yAxis.serieNameFormatter : l.chart.grid.labels.yAxis.serieNameFormatter = null, d.config && Fe(d.config, "events.datapointEnter") ? l.events.datapointEnter = d.config.events.datapointEnter : l.events.datapointEnter = null, d.config && Fe(d.config, "events.datapointLeave") ? l.events.datapointLeave = d.config.events.datapointLeave : l.events.datapointLeave = null, d.config && Fe(d.config, "events.datapointClick") ? l.events.datapointClick = d.config.events.datapointClick : l.events.datapointClick = null, l.theme ? {
779
- ...Dl({
780
- userConfig: Po.vue_ui_xy[l.theme] || d.config,
781
- defaultConfig: l
782
- }),
783
- customPalette: Ro[l.theme] || d.palette
784
- } : l;
785
- }
786
- const zt = k({
787
- get() {
788
- return !!d.dataset && d.dataset.length;
789
- },
790
- set(l) {
791
- return l;
792
- }
793
- }), t = p(Ft()), Ge = k(() => !!t.value.debug), { loading: B, FINAL_DATASET: g, manualLoading: f } = Bo({
794
- ...mo(d),
795
- FINAL_CONFIG: t,
796
- prepareConfig: Ft,
797
- callback: () => {
798
- Promise.resolve().then(async () => {
799
- await bl();
800
- });
801
- },
802
- skeletonDataset: [
803
- {
804
- name: "",
805
- series: [0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 134],
806
- type: "line",
807
- smooth: !0,
808
- color: "#BABABA"
809
- },
810
- {
811
- name: "",
812
- series: [0, 0.5, 1, 1.5, 2.5, 4, 6.5, 10.5, 17, 27.5, 44.5, 67],
813
- type: "bar",
814
- color: "#CACACA"
815
- }
816
- ],
817
- skeletonConfig: $o({
818
- defaultConfig: t.value,
819
- userConfig: {
820
- useCssAnimation: !1,
821
- showTable: !1,
822
- chart: {
823
- annotations: [],
824
- highlightArea: [],
825
- backgroundColor: "#99999930",
826
- grid: {
827
- stroke: "#6A6A6A",
828
- labels: {
829
- show: !1,
830
- axis: {
831
- yLabel: "",
832
- xLabel: ""
833
- },
834
- xAxisLabels: { show: !1 },
835
- yAxis: {
836
- commonScaleSteps: 10,
837
- useNiceScale: !0,
838
- scaleMin: 0,
839
- scaleMax: 134
840
- },
841
- zeroLine: { show: !0 }
842
- }
843
- },
844
- padding: {
845
- top: 12,
846
- bottom: 24,
847
- left: 24,
848
- right: 24
849
- },
850
- userOptions: { show: !1 },
851
- zoom: {
852
- show: !1,
853
- startIndex: null,
854
- endIndex: null
855
- }
856
- },
857
- bar: {
858
- serieName: { show: !1 },
859
- labels: { show: !1 },
860
- border: {
861
- useSerieColor: !1,
862
- stroke: "#999999"
863
- }
864
- },
865
- line: {
866
- dot: {
867
- useSerieColor: !1,
868
- fill: "#8A8A8A"
869
- },
870
- labels: { show: !1 }
871
- }
872
- }
873
- })
874
- }), S = k({
875
- get: () => Math.max(...g.value.map((l) => qe({ data: l.series, threshold: mt }).length)),
876
- set: (l) => l
877
- }), m = p({ start: 0, end: S.value }), ue = p({ start: 0, end: S.value }), bt = k(() => t.value.chart.zoom.preview.enable && (ue.value.start !== m.value.start || ue.value.end !== m.value.end));
878
- function fl(l, r) {
879
- ue.value[l] = r;
880
- }
881
- function Wt() {
882
- const l = Math.max(
883
- 1,
884
- ...g.value.map((u) => qe({
885
- data: u.series,
886
- threshold: t.value.downsample.threshold
887
- }).length)
888
- );
889
- let r = Math.max(0, Math.min(m.value.start ?? 0, l - 1)), e = Math.max(r + 1, Math.min(m.value.end ?? l, l));
890
- (!Number.isFinite(r) || !Number.isFinite(e) || e <= r) && (r = 0, e = l), m.value = { start: r, end: e }, ue.value.start = r, ue.value.end = e;
891
- }
892
- const Pl = k(() => {
893
- const { left: l, top: r, width: e, height: u } = c.value, a = m.value.start, o = m.value.end - a, R = e / o, F = ue.value.start - a, W = ue.value.end - a, M = Math.max(0, Math.min(o, F)), H = Math.max(0, Math.min(o, W));
894
- return {
895
- x: l + M * R,
896
- y: r,
897
- width: (H - M) * R,
898
- height: u,
899
- fill: t.value.chart.zoom.preview.fill,
900
- stroke: t.value.chart.zoom.preview.stroke,
901
- "stroke-width": t.value.chart.zoom.preview.strokeWidth,
902
- "stroke-dasharray": t.value.chart.zoom.preview.strokeDasharray,
903
- "stroke-linecap": "round",
904
- "stroke-linejoin": "round",
905
- style: {
906
- pointerEvents: "none",
907
- transition: "all 0.1s ease-in-out",
908
- animation: "none !important"
909
- }
910
- };
911
- });
912
- nt(() => d.selectedXIndex, (l) => {
913
- if ([null, void 0].includes(d.selectedXIndex)) {
914
- L.value = null;
915
- return;
916
- }
917
- const r = l - m.value.start;
918
- r < 0 || l >= m.value.end ? L.value = null : L.value = r ?? null;
919
- }, { immediate: !0 });
920
- const { isPrinting: el, isImaging: Gl, generatePdf: Ul, generateImage: Zl } = Eo({
921
- elementId: `vue-ui-xy_${U.value}`,
922
- fileName: t.value.chart.title.text || "vue-ui-xy",
923
- options: t.value.chart.userOptions.print
924
- }), Ba = p(!1), ql = k(() => _o(t.value.customPalette)), gl = k(() => {
925
- if (t.value.chart.grid.labels.yAxis.scaleMin !== null)
926
- return t.value.chart.grid.labels.yAxis.scaleMin;
927
- const l = Math.min(...ct.value.filter((r) => !Q.value.includes(r.id)).map((r) => Math.min(...r.series)));
928
- return l > 0 ? 0 : l;
929
- }), ml = k(() => {
930
- if (t.value.chart.grid.labels.yAxis.scaleMax)
931
- return t.value.chart.grid.labels.yAxis.scaleMax;
932
- const l = Math.max(...ct.value.filter((r) => !Q.value.includes(r.id)).map((r) => Math.max(...r.series)));
933
- return gl.value === l ? l + 1 : l;
934
- }), Ue = k(() => t.value.chart.grid.labels.yAxis.useNiceScale ? ul(gl.value, ml.value < 0 ? 0 : ml.value, t.value.chart.grid.labels.yAxis.commonScaleSteps) : Rt(gl.value, ml.value < 0 ? 0 : ml.value, t.value.chart.grid.labels.yAxis.commonScaleSteps)), tl = k(() => [null, void 0].includes(t.value.chart.grid.labels.yAxis.scaleMin) ? Ue.value.min >= 0 ? 0 : Math.abs(Ue.value.min) : -Ue.value.min), ct = k(() => Re.value ? g.value.map((l, r) => {
935
- const e = qe({
936
- data: l.series,
937
- threshold: t.value.downsample.threshold
938
- }), u = `uniqueId_${r}`;
939
- return {
940
- ...l,
941
- slotAbsoluteIndex: r,
942
- series: e.map((a) => Ll(a) ? a : null).slice(m.value.start, m.value.end),
943
- color: Lo(l.color ? l.color : ql.value[r] ? ql.value[r] : Mo[r]),
944
- id: u,
945
- scaleLabel: l.scaleLabel || u
946
- };
947
- }) : g.value), lt = k(() => ct.value.map((l, r) => ({
948
- absoluteIndex: r,
949
- ...l,
950
- series: l.series.map((e) => e + tl.value),
951
- absoluteValues: l.series,
952
- segregate: () => da(l),
953
- isSegregated: Q.value.includes(l.id)
954
- }))), He = k(() => ct.value.map((l, r) => ({
955
- ...l,
956
- series: l.series.map((e) => e + tl.value),
957
- absoluteValues: l.series
958
- })).filter((l) => !Q.value.includes(l.id)));
959
- function Fa() {
960
- let l = 0;
961
- Mt.value && (l = Array.from(Mt.value.querySelectorAll("text")).reduce((a, s) => {
962
- const o = s.getComputedTextLength();
963
- return (o > a ? o : a) + t.value.chart.grid.labels.yAxis.scaleValueOffsetX;
964
- }, 0));
965
- const r = Vt.value ? Vt.value.getBoundingClientRect().width + t.value.chart.grid.labels.axis.yLabelOffsetX + $.value.yAxis : 0, e = t.value.chart.grid.labels.yAxis.crosshairSize;
966
- return l + r + e;
967
- }
968
- const Ol = p(0), Wa = Xl((l) => {
969
- Ol.value = l;
970
- }, 100);
971
- xo((l) => {
972
- const r = ut.value;
973
- if (!r) return;
974
- const e = new ResizeObserver((u) => {
975
- Wa(u[0].contentRect.height);
976
- });
977
- e.observe(r), l(() => e.disconnect());
978
- }), sl(() => {
979
- Ol.value = 0;
980
- });
981
- const Kl = k(() => {
982
- let l = 0;
983
- Ne.value && (l = Ne.value.getBBox().height);
984
- let r = 0;
985
- return ut.value && (r = Ol.value), l + r + $.value.xAxis;
986
- }), Da = k(() => g.value.some((l) => l.useProgression)), c = k(() => {
987
- let l = 0;
988
- const r = 36;
989
- t.value.chart.grid.labels.show && (y.value.useIndividualScale && !y.value.isStacked ? l = (g.value.length - Q.value.length) * (t.value.chart.grid.labels.yAxis.labelWidth + r) : y.value.useIndividualScale && y.value.isStacked ? l = t.value.chart.grid.labels.yAxis.labelWidth + r : l = Fa());
990
- const e = t.value.chart.labels.fontSize * 1.1, u = Da.value ? 24 : 6;
991
- if (ut.value) {
992
- const o = ut.value.getBBox().x;
993
- o < 0 && (l += Math.abs(o));
994
- }
995
- const a = ne.value - l - t.value.chart.grid.labels.yAxis.crosshairSize - u - t.value.chart.padding.left - t.value.chart.padding.right, s = t.value.chart.grid.position === "middle" ? 0 : a / N.value / 2;
996
- return {
997
- top: t.value.chart.padding.top + e,
998
- right: ne.value - u - t.value.chart.padding.right,
999
- bottom: oe.value - Kl.value - t.value.chart.padding.bottom - t.value.chart.grid.labels.axis.xLabelOffsetY,
1000
- left: l + t.value.chart.grid.labels.yAxis.crosshairSize - s + t.value.chart.padding.left,
1001
- height: oe.value - Kl.value - t.value.chart.padding.top - t.value.chart.padding.bottom - e - t.value.chart.grid.labels.axis.xLabelOffsetY,
1002
- width: a,
1003
- scaleLabelX: l,
1004
- individualOffsetX: r
1005
- };
1006
- }), Ya = k(() => {
1007
- const l = t.value.chart.grid.position === "middle" ? 1 : 0, r = N.value + l, e = G(c.value.top), u = G(c.value.bottom);
1008
- return Array.from({ length: r }).map((a, s) => {
1009
- const o = c.value.width / N.value * s + c.value.left + j.value;
1010
- return `M${o},${e} L${o},${u}`;
1011
- }).join(" ");
1012
- }), Xa = k(() => {
1013
- if (!t.value.chart.grid.labels.xAxis.showCrosshairs) return "";
1014
- const l = c.value.width / N.value, r = t.value.chart.grid.labels.xAxis.crosshairSize, e = t.value.chart.grid.labels.xAxis.crosshairsAlwaysAtZero;
1015
- return Vl.value.map((u, a) => {
1016
- if (!u || !u.text) return null;
1017
- const s = c.value.left + l * a + l / 2, o = e ? ke.value - (ke.value === c.value.bottom ? 0 : r / 2) : c.value.bottom, R = e ? ke.value + r / (ke.value === c.value.bottom ? 1 : 2) : c.value.bottom + r;
1018
- return `M${s},${o} L${s},${R}`;
1019
- }).filter(Boolean).join(" ");
1020
- });
1021
- function Jl() {
1022
- return !!We?.vnode.props?.onSelectTimeLabel;
1023
- }
1024
- function Ga(l, r, e) {
1025
- if (!At.value) {
1026
- const u = document.createElement("canvas");
1027
- At.value = u.getContext("2d");
1028
- }
1029
- return At.value.font = `normal ${l}px sans-serif`, At.value;
1030
- }
1031
- function Ql() {
1032
- const l = fe.value.querySelectorAll(".vue-ui-xy-tag");
1033
- l.length && Array.from(l).forEach((r) => r.style.opacity = "0");
1034
- }
1035
- function xl(l, r, e, u, a) {
1036
- e && (Xe.value[`${l}_${r}_${u}_${a}`] = e);
1037
- }
1038
- const jl = p(!1);
1039
- async function ea(l = !1) {
1040
- await Zt(), jl.value = l, Ye.value && (Ct.value = l);
1041
- }
1042
- function Hl() {
1043
- ft.value = !ft.value;
1044
- }
1045
- const de = k(() => {
1046
- const l = Math.max(...g.value.map((r) => qe({ data: r.series, threshold: t.value.downsample.threshold }).length));
1047
- return Va({
1048
- values: t.value.chart.grid.labels.xAxisLabels.values,
1049
- maxDatapoints: l,
1050
- formatter: t.value.chart.grid.labels.xAxisLabels.datetimeFormatter,
1051
- start: m.value.start,
1052
- end: m.value.end
1053
- });
1054
- }), ta = k(() => {
1055
- const l = Math.max(...g.value.map((r) => qe({ data: r.series, threshold: t.value.downsample.threshold }).length));
1056
- return Va({
1057
- values: t.value.chart.grid.labels.xAxisLabels.values,
1058
- maxDatapoints: l,
1059
- formatter: t.value.chart.grid.labels.xAxisLabels.datetimeFormatter,
1060
- start: 0,
1061
- end: S.value
1062
- });
1063
- }), Ua = k(() => {
1064
- const l = t.value.chart.grid.labels.xAxisLabels.modulo;
1065
- return de.value.length ? Math.min(l, [...new Set(de.value.map((r) => r.text))].length) : l;
1066
- }), Vl = k(() => {
1067
- const l = t.value.chart.grid.labels.xAxisLabels, r = de.value || [];
1068
- if (l.showOnlyFirstAndLast) {
1069
- if (r.length <= 2) return r;
1070
- const w = L.value;
1071
- return r.map(
1072
- (O, z) => z === 0 || z === r.length - 1 || w != null && z === w ? O : { ...O, text: "" }
1073
- );
1074
- }
1075
- if (!l.showOnlyAtModulo) return r;
1076
- const e = Math.max(1, Ua.value || 1);
1077
- if (N.value <= e) return r;
1078
- const u = e, a = ta.value || [], s = m.value.start ?? 0, o = [];
1079
- for (let w = 0; w < r.length; w += 1) {
1080
- const O = r[w]?.text ?? "";
1081
- if (!O) continue;
1082
- const z = s + w - 1 >= 0 ? a[s + w - 1]?.text ?? "" : null;
1083
- O !== z && o.push(w);
1084
- }
1085
- if (!o.length) return r.map((w) => ({ ...w, text: "" }));
1086
- const R = o.length, F = Math.max(2, Math.min(u - 3, R)), W = Math.min(R, u + 3);
1087
- let M = Math.min(u, R), H = 1 / 0;
1088
- for (let w = F; w <= W; w += 1) {
1089
- const O = (R - 1) % (w - 1), z = Math.abs(w - u), ie = O * 10 + z;
1090
- ie < H && (H = ie, M = w);
1091
- }
1092
- const q = /* @__PURE__ */ new Set();
1093
- if (M <= 1)
1094
- q.add(o[Math.round((R - 1) / 2)]);
1095
- else {
1096
- const w = (R - 1) / (M - 1);
1097
- for (let O = 0; O < M; O += 1)
1098
- q.add(o[Math.round(O * w)]);
1099
- }
1100
- return r.map((w, O) => q.has(O) ? w : { ...w, text: "" });
1101
- });
1102
- function la(l, r) {
1103
- const e = He.value.map((u) => ({
1104
- shape: u.shape || null,
1105
- name: u.name,
1106
- color: u.color,
1107
- type: u.type,
1108
- value: u.absoluteValues.find((a, s) => s === r),
1109
- comments: u.comments || [],
1110
- prefix: u.prefix || t.value.chart.labels.prefix,
1111
- suffix: u.suffix || t.value.chart.labels.suffix
1112
- }));
1113
- Qe("selectTimeLabel", {
1114
- datapoint: e,
1115
- absoluteIndex: l.absoluteIndex,
1116
- label: l.text
1117
- });
1118
- }
1119
- const N = k(() => {
1120
- const l = xt((m.value.end ?? 0) - (m.value.start ?? 0));
1121
- return Math.max(1, l);
1122
- });
1123
- function aa(l) {
1124
- P.value = l;
1125
- }
1126
- function oa() {
1127
- y.value.isStacked = !y.value.isStacked, y.value.isStacked ? y.value.useIndividualScale = !0 : y.value.useIndividualScale = t.value.chart.grid.labels.yAxis.useIndividualScale;
1128
- }
1129
- function El(l) {
1130
- Ge.value && l.autoScaling && (t.value.chart.grid.labels.yAxis.useIndividualScale || console.warn(`VueUiXy (datapoint: ${l.name}) : autoScaling only works when config.chart.grid.labels.yAxis.useIndividualScale is set to true`), t.value.chart.grid.labels.yAxis.stacked || console.warn(`VueUiXy (datapoint: ${l.name}) : autoScaling only works when config.chart.grid.labels.yAxis.stacked is set to true`));
1131
- }
1132
- function Za(l, r) {
1133
- const e = xt(l), u = Array(e).fill(0);
1134
- for (let a = 0; a < r.length && a < e; a += 1) u[a] = r[a] ?? 0;
1135
- return u;
1136
- }
1137
- function qa(l) {
1138
- const r = Math.max(...g.value.map((e) => qe({ data: e.series, threshold: t.value.downsample.threshold }).length));
1139
- return l > r ? r : l < 0 || t.value.chart.zoom.startIndex !== null && l < t.value.chart.zoom.startIndex ? t.value.chart.zoom.startIndex !== null ? t.value.chart.zoom.startIndex + 1 : 1 : l;
1140
- }
1141
- async function bl() {
1142
- await Zt(), await Zt();
1143
- const { startIndex: l, endIndex: r } = t.value.chart.zoom, e = Me.value, u = Math.max(
1144
- ...g.value.map(
1145
- (a) => qe({
1146
- data: a.series,
1147
- threshold: t.value.downsample.threshold
1148
- }).length
1149
- )
1150
- );
1151
- (l != null || r != null) && e ? (l != null && (m.value.start = l, e.setStartValue(l)), r != null && (m.value.end = r + 1, e.setEndValue(qa(r + 1)))) : (m.value = { start: 0, end: u }, ve.value += 1), ue.value.start = m.value.start, ue.value.end = m.value.end, Wt();
1152
- }
1153
- async function na() {
1154
- await bl();
1155
- }
1156
- function Ce(l) {
1157
- return ![null, void 0, NaN, 1 / 0, -1 / 0].includes(l);
1158
- }
1159
- const ua = k(() => Ue.value.max + tl.value);
1160
- function It(l) {
1161
- return l / (Ce(ua.value) ? ua.value : 1);
1162
- }
1163
- const ke = k(() => isNaN(It(tl.value)) ? c.value.bottom : c.value.bottom - c.value.height * It(tl.value));
1164
- function ia(l) {
1165
- const r = ![null, void 0].includes(t.value.chart.grid.labels.yAxis.scaleMin) && t.value.chart.grid.labels.yAxis.scaleMin > 0 && gl.value >= 0 ? c.value.bottom : ke.value;
1166
- return l.value >= 0 ? E(r - l.y <= 0 ? 1e-5 : r - l.y) : E(l.y - ke.value <= 0 ? 1e-5 : l.y - ke.value);
1167
- }
1168
- function sa(l) {
1169
- return l.value >= 0 ? E(l.zeroPosition - l.y <= 0 ? 1e-5 : l.zeroPosition - l.y) : E(l.y - l.zeroPosition <= 0 ? 1e-5 : l.zeroPosition - l.y);
1170
- }
1171
- const le = k(() => {
1172
- const l = Math.max(1, N.value), r = Math.max(1, c.value.width), e = Math.max(1, ct.value.filter((u) => u.type === "bar" && !Q.value.includes(u.id)).length);
1173
- return {
1174
- bar: rt(r, l * e, 1),
1175
- plot: rt(r, l, 1),
1176
- line: rt(r, l, 1)
1177
- };
1178
- });
1179
- function Dt() {
1180
- return y.value.useIndividualScale && y.value.isStacked ? le.value.line - c.value.width / N.value * 0.1 : le.value.bar;
1181
- }
1182
- function pl(l) {
1183
- return y.value.useIndividualScale && y.value.isStacked ? l.x + c.value.width / N.value * 0.05 : l.x + le.value.bar / 2;
1184
- }
1185
- function ra(l) {
1186
- return l.value >= 0 ? l.y : [null, void 0, NaN, 1 / 0, -1 / 0].includes(ke.value) ? c.bottom.value : ke.value;
1187
- }
1188
- function ca(l) {
1189
- return l.value >= 0 ? l.y : [null, void 0, NaN, 1 / 0, -1 / 0].includes(l.zeroPosition) ? 0 : l.zeroPosition;
1190
- }
1191
- const ll = p(null);
1192
- function Ka(l) {
1193
- if (ft.value) return;
1194
- const r = ye.value.getBoundingClientRect(), u = ye.value.viewBox.baseVal.width / r.width, s = (l.clientX - r.left) * u - c.value.left, o = c.value.width / N.value, R = Math.floor(s / o);
1195
- R >= 0 && R < N.value ? ll.value !== R && (ll.value = R, wa(!0, R)) : va();
1196
- }
1197
- function va() {
1198
- ll.value = null, wa(!1, null);
1199
- }
1200
- function Ja() {
1201
- ll.value != null && Qa(ll.value);
1202
- }
1203
- function Qa(l) {
1204
- const r = He.value.map((e) => ({
1205
- name: e.name,
1206
- value: [null, void 0, NaN].includes(e.absoluteValues[l]) ? null : e.absoluteValues[l],
1207
- color: e.color,
1208
- type: e.type
1209
- }));
1210
- Qe(
1211
- "selectX",
1212
- {
1213
- dataset: r,
1214
- index: l,
1215
- indexLabel: t.value.chart.grid.labels.xAxisLabels.values[l]
1216
- }
1217
- ), t.value.events.datapointClick && t.value.events.datapointClick({ datapoint: r, seriesIndex: l + m.value.start });
1218
- }
1219
- function ja() {
1220
- return lt.value.map((l) => ({
1221
- values: l.absoluteValues,
1222
- color: l.color,
1223
- name: l.name,
1224
- type: l.type
1225
- }));
1226
- }
1227
- async function eo({ scale: l = 2 } = {}) {
1228
- if (!fe.value) return;
1229
- const { width: r, height: e } = fe.value.getBoundingClientRect(), u = r / e, { imageUri: a, base64: s } = await Do({ domElement: fe.value, base64: !0, img: !0, scale: l });
1230
- return {
1231
- imageUri: a,
1232
- base64: s,
1233
- title: t.value.chart.title.text,
1234
- width: r,
1235
- height: e,
1236
- aspectRatio: u
1237
- };
1238
- }
1239
- function da(l) {
1240
- if (Q.value.includes(l.id))
1241
- Q.value = Q.value.filter((r) => r !== l.id);
1242
- else {
1243
- if (Q.value.length + 1 === ct.value.length) return;
1244
- Q.value.push(l.id);
1245
- }
1246
- Qe("selectLegend", He.value.map((r) => ({
1247
- name: r.name,
1248
- values: r.absoluteValues,
1249
- color: r.color,
1250
- type: r.type
1251
- }))), Pe.value += 1;
1252
- }
1253
- const to = k(() => {
1254
- const l = t.value.chart.title.text || "Chart visualization", r = t.value.chart.title.subtitle.text || "";
1255
- return `${l}. ${r}`;
1256
- }), ha = k(() => ({
1257
- linePlot: N.value > t.value.line.dot.hideAboveMaxSerieLength
1258
- })), lo = k(() => t.value.chart.userOptions.show && (!t.value.chart.title.show || !t.value.chart.title.text)), ao = k(() => {
1259
- if (Array.isArray(t.value.chart.highlightArea))
1260
- return t.value.chart.highlightArea.map((r) => {
1261
- const e = Math.min(r.to, S.value - 1);
1262
- return {
1263
- ...r,
1264
- span: r.from === e ? 1 : e < r.from ? 0 : e - r.from + 1
1265
- };
1266
- });
1267
- const l = {
1268
- ...t.value.chart.highlightArea,
1269
- to: Math.min(t.value.chart.highlightArea.to, S.value - 1)
1270
- };
1271
- return [{ ...l, span: l.from === l.to ? 1 : l.to < l.from ? 0 : l.to - l.from + 1 }];
1272
- }), oo = k(() => Re.value ? g.value.map((l, r) => ({
1273
- ...l,
1274
- series: qe({
1275
- data: l.series,
1276
- threshold: t.value.downsample.threshold
1277
- }),
1278
- id: `uniqueId_${r}`
1279
- })) : g.value), no = k(() => He.value.map((l) => {
1280
- const r = l.absoluteValues.map((e) => [void 0, null].includes(e) ? 0 : e);
1281
- return {
1282
- id: l.id,
1283
- name: l.name,
1284
- color: l.color,
1285
- values: Za(N.value, r)
1286
- };
1287
- })), uo = k(() => ({
1288
- responsiveBreakpoint: t.value.table.responsiveBreakpoint,
1289
- roundingValues: t.value.table.rounding,
1290
- showAverage: !1,
1291
- showMedian: !1,
1292
- showTotal: !1,
1293
- fontFamily: t.value.chart.fontFamily,
1294
- prefix: t.value.chart.labels.prefix,
1295
- suffix: t.value.chart.labels.suffix,
1296
- colNames: de.value.map((l) => l.text),
1297
- thead: {
1298
- backgroundColor: t.value.table.th.backgroundColor,
1299
- color: t.value.table.th.color,
1300
- outline: t.value.table.th.outline
1301
- },
1302
- tbody: {
1303
- backgroundColor: t.value.table.td.backgroundColor,
1304
- color: t.value.table.td.color,
1305
- outline: t.value.table.td.outline
1306
- },
1307
- userOptions: {
1308
- show: !1
1309
- }
1310
- })), j = k(() => t.value.chart.grid.position === "middle" ? 0 : c.value.width / N.value / 2), Tt = k(() => Co(lt.value.filter((l) => !Q.value.includes(l.id)))), T = k(() => {
1311
- const l = Object.groupBy(Tt.value, (e) => e.scaleLabel), r = {};
1312
- for (const [e, u] of Object.entries(l)) {
1313
- const a = u.flatMap((s) => s.absoluteValues);
1314
- r[e] = {
1315
- min: Math.min(...a) || 0,
1316
- max: Math.max(...a) || 1,
1317
- groupId: `scale_group_${Al()}`
1318
- };
1319
- }
1320
- return r;
1321
- }), io = k(() => {
1322
- const l = ct.value.filter((r) => r.type === "bar").filter((r) => !Q.value.includes(r.id)).length;
1323
- return c.value.width / N.value / l - yl.value * l;
1324
- }), yl = k(() => le.value.line * t.value.bar.periodGap), kl = k(() => Math.max(1e-5, Dt() - (y.value.useIndividualScale && y.value.isStacked ? 0 : yl.value))), wl = k(() => kl.value * Math.min(Math.abs(t.value.bar.innerGap), 0.95)), fa = k(() => {
1325
- if (!t.value.chart.zoom.minimap.show) return [];
1326
- const l = oo.value.filter((a) => !Q.value.includes(a.id)), r = Math.max(...l.map((a) => a.series.length)), e = [];
1327
- for (let a = 0; a < r; a += 1)
1328
- e.push(l.map((s) => s.series[a] || 0).reduce((s, o) => (s || 0) + (o || 0), 0));
1329
- const u = Math.min(...e);
1330
- return e.map((a) => a + (u < 0 ? Math.abs(u) : 0));
1331
- }), Yt = k(() => He.value.map((l) => ({
1332
- slotAbsoluteIndex: l.slotAbsoluteIndex,
1333
- shape: l.shape || null,
1334
- name: l.name,
1335
- color: l.color,
1336
- type: l.type,
1337
- value: l.absoluteValues.find((r, e) => e === L.value),
1338
- comments: l.comments || [],
1339
- prefix: l.prefix || t.value.chart.labels.prefix,
1340
- suffix: l.suffix || t.value.chart.labels.suffix
1341
- }))), ga = k(() => Ue.value.ticks.map((l) => ({
1342
- y: l >= 0 ? ke.value - c.value.height * It(l) : ke.value + c.value.height * It(Math.abs(l)),
1343
- value: l,
1344
- prefix: t.value.chart.labels.prefix,
1345
- suffix: t.value.chart.labels.suffix
1346
- }))), ma = k(() => {
1347
- const l = t.value.chart.annotations;
1348
- if (!l || !Array.isArray(l) || l.every((M) => !M.show)) return [];
1349
- const r = l.filter(
1350
- (M) => M.show && (M.yAxis.yTop != null || M.yAxis.yBottom != null)
1351
- );
1352
- if (!r.length) return [];
1353
- const { left: e, right: u } = c.value, a = ke.value, s = c.value.height, o = Ue.value.min, F = Ue.value.max - o, W = (M) => {
1354
- const H = (M - 0) / F;
1355
- return a - H * s;
1356
- };
1357
- return r.map((M) => {
1358
- const { yAxis: { yTop: H, yBottom: q, label: w } } = M, O = H != null && q != null && H !== q, z = H == null ? null : W(H), ie = q == null ? null : W(q), we = Ga(w.fontSize);
1359
- we.font = `${w.fontSize}px sans-serif`;
1360
- const te = we.measureText(w.text).width, Ve = w.fontSize, at = (w.position === "start" ? e + w.padding.left : u - w.padding.right) + w.offsetX, Ae = (z != null && ie != null ? Math.min(z, ie) : z ?? ie) - w.fontSize / 3 + w.offsetY - w.padding.top;
1361
- let Y;
1362
- w.textAnchor === "middle" ? Y = at - te / 2 - w.padding.left : w.textAnchor === "end" ? Y = at - te - w.padding.right : Y = at - w.padding.left;
1363
- const X = Ae - Ve * 0.75 - w.padding.top;
1364
- return {
1365
- show: ![z, ie, X].includes(NaN),
1366
- id: `annotation_y_${Al()}`,
1367
- hasArea: O,
1368
- areaHeight: O ? Math.abs(z - ie) : 0,
1369
- yTop: z,
1370
- yBottom: ie,
1371
- config: M.yAxis,
1372
- x1: e,
1373
- x2: u,
1374
- _text: { x: at, y: Ae },
1375
- _box: {
1376
- x: Y,
1377
- y: X,
1378
- width: te + w.padding.left + w.padding.right,
1379
- height: Ve + w.padding.top + w.padding.bottom,
1380
- fill: w.backgroundColor,
1381
- stroke: w.border.stroke,
1382
- rx: w.border.rx,
1383
- ry: w.border.ry,
1384
- strokeWidth: w.border.strokeWidth
1385
- }
1386
- };
1387
- });
1388
- });
1389
- function xa(l, r) {
1390
- const e = l[r - 1], u = l[r + 1];
1391
- let a = !!e && !!u && e.value == null && u.value == null || !e && !!u && u.value == null || !!e && !u && e.value == null;
1392
- return Ce(l[r].value) && a && t.value.line.cutNullValues;
1393
- }
1394
- const vt = k(() => {
1395
- const l = Tt.value.filter((o) => ["bar", "line", "plot"].includes(o.type)), r = l.length, e = t.value.chart.grid.labels.yAxis.gap, u = y.value.isStacked, a = u ? e * (r - 1) : 0, s = c.value.height - a;
1396
- return l.filter((o) => o.type === "bar").map((o, R) => {
1397
- El(o);
1398
- const F = T.value[o.scaleLabel].min, W = T.value[o.scaleLabel].max;
1399
- o.absoluteValues.filter((D) => ![null, void 0].includes(D)).map((D) => (D - F) / (W - F));
1400
- const M = {
1401
- valueMin: F,
1402
- valueMax: W < 0 ? 0 : W
1403
- }, H = {
1404
- max: o.scaleMax || Math.max(...o.absoluteValues) || 1,
1405
- min: o.scaleMin || Math.min(...o.absoluteValues.filter((D) => ![void 0, null].includes(D))) > 0 ? 0 : Math.min(...o.absoluteValues.filter((D) => ![null, void 0].includes(D)))
1406
- }, q = o.scaleSteps || t.value.chart.grid.labels.yAxis.commonScaleSteps, w = 1.0000001, O = t.value.chart.grid.labels.yAxis.useNiceScale ? ul(H.min, H.max === H.min ? H.max * w : H.max, q) : Rt(H.min, H.max === H.min ? H.max * w : H.max, q), z = t.value.chart.grid.labels.yAxis.useNiceScale ? ul(M.valueMin, M.valueMax === M.valueMin ? M.valueMax * w : M.valueMax, q) : Rt(M.valueMin, M.valueMax === M.valueMin ? M.valueMax * w : M.valueMax, q), ie = O.min >= 0 ? 0 : Math.abs(O.min), we = 0, te = O.max + ie, Ve = z.max + Math.abs(we), at = o.stackIndex, Xt = r - 1 - at, Ae = u ? 1 - o.cumulatedStackRatio : 0, Y = u ? s * Ae + e * Xt : 0, X = u ? s * o.stackRatio : c.value.height, se = c.value.bottom - Y - X * ie / te, ze = c.value.bottom - Y - X * we / Ve, Se = lt.value.filter((D) => D.type === "bar").filter((D) => !Q.value.includes(D.id)).length, ol = o.series.map((D, ce) => {
1407
- const yt = y.value.useIndividualScale ? (o.absoluteValues[ce] + ie) / te : It(D), Nt = y.value.useIndividualScale && y.value.isStacked ? c.value.left + c.value.width / N.value * ce : c.value.left + le.value.bar * R + le.value.bar * ce * Se - io.value / 2 - R * yl.value;
1408
- return {
1409
- yOffset: E(Y),
1410
- individualHeight: E(X),
1411
- x: E(Nt),
1412
- y: c.value.bottom - Y - X * yt,
1413
- value: o.absoluteValues[ce],
1414
- zeroPosition: E(se),
1415
- individualMax: E(te),
1416
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[ce] || ""
1417
- };
1418
- }), Le = o.absoluteValues.map((D) => z.min >= 0 ? (D - Math.abs(z.min)) / (z.max - Math.abs(z.min)) : (D + Math.abs(z.min)) / (z.max + Math.abs(z.min))), pt = o.series.map((D, ce) => {
1419
- const yt = y.value.useIndividualScale && y.value.isStacked ? c.value.left + c.value.width / N.value * ce : c.value.left - le.value.bar / 2 + le.value.bar * R + le.value.bar * ce * lt.value.filter((Nt) => Nt.type === "bar").filter((Nt) => !Q.value.includes(Nt.id)).length;
1420
- return {
1421
- yOffset: E(Y),
1422
- individualHeight: E(X),
1423
- x: E(yt),
1424
- y: E(c.value.bottom - E(Y) - (E(X) * Le[ce] || 0)),
1425
- value: o.absoluteValues[ce],
1426
- zeroPosition: E(se),
1427
- individualMax: E(te),
1428
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[ce] || ""
1429
- };
1430
- }), K = O.ticks.map((D) => ({
1431
- y: D >= 0 ? se - X * (D / te) : se + X * Math.abs(D) / te,
1432
- value: D,
1433
- prefix: o.prefix || t.value.chart.labels.prefix,
1434
- suffix: o.suffix || t.value.chart.labels.suffix,
1435
- datapoint: o
1436
- })), re = z.ticks.map((D) => {
1437
- const ce = (D - z.min) / (z.max - z.min);
1438
- return {
1439
- y: D >= 0 ? ze - X * ce : ze + X * ce,
1440
- value: D,
1441
- prefix: o.prefix || t.value.chart.labels.prefix,
1442
- suffix: o.suffix || t.value.chart.labels.suffix,
1443
- datapoint: o
1444
- };
1445
- });
1446
- return T.value[o.scaleLabel].name = o.name, T.value[o.scaleLabel].groupName = o.scaleLabel, T.value[o.scaleLabel].groupColor = t.value.chart.grid.labels.yAxis.groupColor || o.color, T.value[o.scaleLabel].color = o.color, T.value[o.scaleLabel].scaleYLabels = o.autoScaling ? re : K, T.value[o.scaleLabel].zeroPosition = o.autoScaling ? ze : se, T.value[o.scaleLabel].individualMax = o.autoScaling ? Ve : te, T.value[o.scaleLabel].scaleLabel = o.scaleLabel, T.value[o.scaleLabel].id = o.id, T.value[o.scaleLabel].yOffset = Y, T.value[o.scaleLabel].individualHeight = X, T.value[o.scaleLabel].autoScaleYLabels = re, T.value[o.scaleLabel].unique = Tt.value.filter((D) => D.scaleLabel === o.scaleLabel).length === 1, {
1447
- ...o,
1448
- yOffset: Y,
1449
- autoScaleYLabels: re,
1450
- individualHeight: X,
1451
- scaleYLabels: o.autoScaling ? re : K,
1452
- individualScale: o.autoScaling ? z : O,
1453
- individualMax: o.autoScaling ? Ve : te,
1454
- zeroPosition: o.autoScaling ? ze : se,
1455
- plots: o.autoScaling ? pt : ol,
1456
- groupId: T.value[o.scaleLabel].groupId
1457
- };
1458
- });
1459
- }), _e = k(() => {
1460
- const l = Tt.value.filter((o) => ["bar", "line", "plot"].includes(o.type)), r = l.length, e = t.value.chart.grid.labels.yAxis.gap, u = y.value.isStacked, a = u ? e * (r - 1) : 0, s = c.value.height - a;
1461
- return l.filter((o) => o.type === "line").map((o, R) => {
1462
- El(o);
1463
- const F = T.value[o.scaleLabel].min, W = T.value[o.scaleLabel].max;
1464
- o.absoluteValues.filter((V) => ![null, void 0].includes(V)).map((V) => (V - F) / (W - F));
1465
- const M = {
1466
- valueMin: F,
1467
- valueMax: W
1468
- }, H = {
1469
- max: o.scaleMax || Math.max(...o.absoluteValues) || 1,
1470
- min: o.scaleMin || (Math.min(...o.absoluteValues) > 0 ? 0 : Math.min(...o.absoluteValues))
1471
- }, q = o.scaleSteps || t.value.chart.grid.labels.yAxis.commonScaleSteps, w = 1.0000001, O = t.value.chart.grid.labels.yAxis.useNiceScale ? ul(H.min, H.max === H.min ? H.max * w : H.max, q) : Rt(H.min, H.max === H.min ? H.max * w : H.max, q), z = t.value.chart.grid.labels.yAxis.useNiceScale ? ul(M.valueMin, M.valueMax === M.valueMin ? M.valueMax * w : M.valueMax, q) : Rt(M.valueMin, M.valueMax === M.valueMin ? M.valueMax * w : M.valueMax, q), ie = O.min >= 0 ? 0 : Math.abs(O.min), we = 0, te = O.max + Math.abs(ie), Ve = z.max + Math.abs(we), at = o.stackIndex, Xt = r - 1 - at, Ae = u ? 1 - o.cumulatedStackRatio : 0, Y = u ? s * Ae + e * Xt : 0, X = u ? s * o.stackRatio : c.value.height, se = c.value.bottom - Y - X * ie / te, ze = c.value.bottom - Y - X * we / Ve, Se = o.series.map((V, be) => {
1472
- const co = y.value.useIndividualScale ? (o.absoluteValues[be] + Math.abs(ie)) / te : It(V);
1473
- return {
1474
- x: E(c.value.left + le.value.line / 2 + le.value.line * be),
1475
- y: E(c.value.bottom - Y - X * co),
1476
- value: o.absoluteValues[be],
1477
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[be] || ""
1478
- };
1479
- }), ol = o.absoluteValues.map((V) => z.min >= 0 ? (V - Math.abs(z.min)) / (z.max - Math.abs(z.min)) : (V + Math.abs(z.min)) / (z.max + Math.abs(z.min))), Le = o.series.map((V, be) => [void 0, null].includes(o.absoluteValues[be]) ? {
1480
- x: E(c.value.left + le.value.line / 2 + le.value.line * be),
1481
- y: se,
1482
- value: o.absoluteValues[be],
1483
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[be] || ""
1484
- } : {
1485
- x: E(c.value.left + le.value.line / 2 + le.value.line * be),
1486
- y: E(c.value.bottom - Y - (X * ol[be] || 0)),
1487
- value: o.absoluteValues[be],
1488
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[be] || ""
1489
- }), pt = t.value.line.cutNullValues ? Ia(Se) : zl(Se.filter((V) => V.value !== null)), K = t.value.line.cutNullValues ? Ia(Le) : zl(Le.filter((V) => V.value !== null)), re = t.value.line.cutNullValues ? Ta(Se) : Il(Se.filter((V) => V.value !== null)), D = t.value.line.cutNullValues ? Ta(Le) : Il(Le.filter((V) => V.value !== null)), ce = O.ticks.map((V) => ({
1490
- y: V >= 0 ? se - X * (V / te) : se + X * Math.abs(V) / te,
1491
- value: V,
1492
- prefix: o.prefix || t.value.chart.labels.prefix,
1493
- suffix: o.suffix || t.value.chart.labels.suffix,
1494
- datapoint: o
1495
- })), yt = z.ticks.map((V) => {
1496
- const be = (V - z.min) / (z.max - z.min);
1497
- return {
1498
- y: V >= 0 ? ze - X * be : ze + X * be,
1499
- value: V,
1500
- prefix: o.prefix || t.value.chart.labels.prefix,
1501
- suffix: o.suffix || t.value.chart.labels.suffix,
1502
- datapoint: o
1503
- };
1504
- });
1505
- T.value[o.scaleLabel].name = o.name, T.value[o.scaleLabel].groupName = o.scaleLabel, T.value[o.scaleLabel].groupColor = t.value.chart.grid.labels.yAxis.groupColor || o.color, T.value[o.scaleLabel].color = o.color, T.value[o.scaleLabel].scaleYLabels = o.autoScaling ? yt : ce, T.value[o.scaleLabel].zeroPosition = o.autoScaling ? ze : se, T.value[o.scaleLabel].individualMax = o.autoScaling ? Ve : te, T.value[o.scaleLabel].scaleLabel = o.scaleLabel, T.value[o.scaleLabel].id = o.id, T.value[o.scaleLabel].yOffset = Y, T.value[o.scaleLabel].individualHeight = X, T.value[o.scaleLabel].autoScaleYLabels = yt, T.value[o.scaleLabel].unique = Tt.value.filter((V) => V.scaleLabel === o.scaleLabel).length === 1;
1506
- const Nt = y.value.useIndividualScale ? o.autoScaling ? ze : se : ke.value, nl = Math.max(Math.max(o.autoScaling ? ze : ce.at(-1) ? ce.at(-1).y : 0, c.value.top), Nt);
1507
- return {
1508
- ...o,
1509
- yOffset: Y,
1510
- autoScaleYLabels: yt,
1511
- individualHeight: X,
1512
- scaleYLabels: o.autoScaling ? yt : ce,
1513
- individualScale: o.autoScaling ? z : O,
1514
- individualMax: o.autoScaling ? Ve : te,
1515
- zeroPosition: o.autoScaling ? ze : se,
1516
- curve: o.autoScaling ? K : pt,
1517
- plots: o.autoScaling ? Le : Se,
1518
- area: o.useArea ? y.value.useIndividualScale ? t.value.line.cutNullValues ? Na(
1519
- o.autoScaling ? Le : Se,
1520
- nl
1521
- ) : Ra(
1522
- o.autoScaling ? Le.filter((V) => V.value !== null) : Se.filter((V) => V.value !== null),
1523
- nl
1524
- ) : t.value.line.cutNullValues ? Na(Se, nl) : Ra(Se.filter((V) => V.value !== null), nl) : "",
1525
- curveAreas: o.useArea ? Ao(
1526
- o.autoScaling ? t.value.line.cutNullValues ? Le : Le.filter((V) => V.value !== null) : t.value.line.cutNullValues ? Se : Se.filter((V) => V.value !== null),
1527
- nl,
1528
- t.value.line.cutNullValues
1529
- ) : [],
1530
- straight: o.autoScaling ? D : re,
1531
- groupId: T.value[o.scaleLabel].groupId
1532
- };
1533
- });
1534
- }), Ze = k(() => {
1535
- const l = Tt.value.filter((o) => ["bar", "line", "plot"].includes(o.type)), r = l.length, e = t.value.chart.grid.labels.yAxis.gap, u = y.value.isStacked, a = u ? e * (r - 1) : 0, s = c.value.height - a;
1536
- return l.filter((o) => o.type === "plot").map((o) => {
1537
- El(o);
1538
- const R = T.value[o.scaleLabel].min, F = T.value[o.scaleLabel].max;
1539
- o.absoluteValues.filter((K) => ![null, void 0].includes(K)).map((K) => (K - R) / (F - R));
1540
- const W = {
1541
- valueMin: R,
1542
- valueMax: F
1543
- }, M = {
1544
- max: o.scaleMax || Math.max(...o.absoluteValues) || 1,
1545
- min: o.scaleMin || Math.min(...o.absoluteValues) > 0 ? 0 : Math.min(...o.absoluteValues)
1546
- }, H = o.scaleSteps || t.value.chart.grid.labels.yAxis.commonScaleSteps, q = 1.0000001, w = Rt(M.min, M.max === M.min ? M.max * q : M.max, H), O = Rt(W.valueMin, W.valueMax === W.valueMin ? W.valueMax * q : W.valueMax, H), z = w.min >= 0 ? 0 : Math.abs(w.min), ie = 0, we = w.max + z, te = O.max + Math.abs(ie), Ve = o.stackIndex, at = r - 1 - Ve, Xt = u ? 1 - o.cumulatedStackRatio : 0, Ae = u ? s * Xt + e * at : 0, Y = u ? s * o.stackRatio : c.value.height, X = c.value.bottom - Ae - Y * z / we, se = c.value.bottom - Ae - Y * ie / te, ze = o.series.map((K, re) => {
1547
- const D = y.value.useIndividualScale ? (o.absoluteValues[re] + Math.abs(z)) / we : It(K);
1548
- return {
1549
- x: E(c.value.left + le.value.plot / 2 + le.value.plot * re),
1550
- y: E(c.value.bottom - Ae - Y * D),
1551
- value: o.absoluteValues[re],
1552
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[re] || ""
1553
- };
1554
- }), Se = o.absoluteValues.map((K) => O.min >= 0 ? (K - Math.abs(O.min)) / (O.max - Math.abs(O.min)) : (K + Math.abs(O.min)) / (O.max + Math.abs(O.min))), ol = o.series.map((K, re) => ({
1555
- x: E(c.value.left + le.value.plot / 2 + le.value.plot * re),
1556
- y: E(c.value.bottom - Ae - (Y * Se[re] || 0)),
1557
- value: o.absoluteValues[re],
1558
- comment: o.comments && o.comments.slice(m.value.start, m.value.end)[re] || ""
1559
- })), Le = w.ticks.map((K) => ({
1560
- y: K >= 0 ? X - Y * (K / we) : X + Y * Math.abs(K) / we,
1561
- value: K,
1562
- prefix: o.prefix || t.value.chart.labels.prefix,
1563
- suffix: o.suffix || t.value.chart.labels.suffix,
1564
- datapoint: o
1565
- })), pt = O.ticks.map((K) => {
1566
- const re = (K - O.min) / (O.max - O.min);
1567
- return {
1568
- y: K >= 0 ? se - Y * re : se + Y * re,
1569
- value: K,
1570
- prefix: o.prefix || t.value.chart.labels.prefix,
1571
- suffix: o.suffix || t.value.chart.labels.suffix,
1572
- datapoint: o
1573
- };
1574
- });
1575
- return T.value[o.scaleLabel].name = o.name, T.value[o.scaleLabel].groupName = o.scaleLabel, T.value[o.scaleLabel].groupColor = t.value.chart.grid.labels.yAxis.groupColor || o.color, T.value[o.scaleLabel].color = o.color, T.value[o.scaleLabel].scaleYLabels = o.autoScaling ? pt : Le, T.value[o.scaleLabel].zeroPosition = o.autoScaling ? se : X, T.value[o.scaleLabel].individualMax = o.autoScaling ? te : we, T.value[o.scaleLabel].scaleLabel = o.scaleLabel, T.value[o.scaleLabel].id = o.id, T.value[o.scaleLabel].yOffset = Ae, T.value[o.scaleLabel].individualHeight = Y, T.value[o.scaleLabel].autoScaleYLabels = pt, T.value[o.scaleLabel].unique = Tt.value.filter((K) => K.scaleLabel === o.scaleLabel).length === 1, {
1576
- ...o,
1577
- yOffset: Ae,
1578
- autoScaleYLabels: pt,
1579
- individualHeight: Y,
1580
- scaleYLabels: o.autoScaling ? pt : Le,
1581
- individualScale: o.autoScaling ? O : w,
1582
- individualMax: o.autoScaling ? te : we,
1583
- zeroPosition: o.autoScaling ? se : X,
1584
- plots: o.autoScaling ? ol : ze,
1585
- groupId: T.value[o.scaleLabel].groupId
1586
- };
1587
- });
1588
- }), al = k(() => {
1589
- const l = _e.value.map((s) => ({
1590
- name: s.name,
1591
- color: s.color,
1592
- scale: s.individualScale,
1593
- scaleYLabels: s.scaleYLabels,
1594
- zero: s.zeroPosition,
1595
- max: s.individualMax,
1596
- scaleLabel: s.scaleLabel || "",
1597
- id: s.id,
1598
- yOffset: s.yOffset || 0,
1599
- individualHeight: s.individualHeight || c.value.height,
1600
- autoScaleYLabels: s.autoScaleYLabels
1601
- })), r = vt.value.map((s) => ({
1602
- name: s.name,
1603
- color: s.color,
1604
- scale: s.individualScale,
1605
- scaleYLabels: s.scaleYLabels,
1606
- zero: s.zeroPosition,
1607
- max: s.individualMax,
1608
- scaleLabel: s.scaleLabel || "",
1609
- id: s.id,
1610
- yOffset: s.yOffset || 0,
1611
- individualHeight: s.individualHeight || c.value.height
1612
- })), e = Ze.value.map((s) => ({
1613
- name: s.name,
1614
- color: s.color,
1615
- scale: s.individualScale,
1616
- scaleYLabels: s.scaleYLabels,
1617
- // FIX
1618
- zero: s.zeroPosition,
1619
- max: s.individualMax,
1620
- scaleLabel: s.scaleLabel || "",
1621
- id: s.id,
1622
- yOffset: s.yOffset || 0,
1623
- individualHeight: s.individualHeight || c.value.height
1624
- })), u = y.value.useIndividualScale && !y.value.isStacked ? Object.values(T.value) : [...l, ...r, ...e], a = u.flatMap((s) => s).length;
1625
- return u.flatMap((s, o) => {
1626
- let R = 0;
1627
- R = y.value.isStacked ? c.value.left : c.value.left / a * (o + 1);
1628
- const F = y.value.useIndividualScale && !y.value.isStacked ? s.unique ? s.name : s.groupName : s.name;
1629
- return {
1630
- unique: s.unique,
1631
- id: s.id,
1632
- groupId: s.groupId,
1633
- scaleLabel: s.scaleLabel,
1634
- name: pe(
1635
- t.value.chart.grid.labels.yAxis.serieNameFormatter,
1636
- F,
1637
- F,
1638
- s
1639
- ),
1640
- color: y.value.useIndividualScale && !y.value.isStacked ? s.unique ? s.color : s.groupColor : s.color,
1641
- scale: s.scale,
1642
- yOffset: s.yOffset,
1643
- individualHeight: s.individualHeight,
1644
- x: R,
1645
- yLabels: s.scaleYLabels || s.scale.ticks.map((W) => ({
1646
- y: W >= 0 ? s.zero - s.individualHeight * (W / s.max) : s.zero + s.individualHeight * Math.abs(W) / s.max,
1647
- value: W
1648
- }))
1649
- };
1650
- });
1651
- }), ba = k(() => {
1652
- const l = t.value.line.interLine || {}, r = l.pairs || [], e = l.colors || [];
1653
- if (!r.length) return [];
1654
- const u = [];
1655
- return r.forEach((a, s) => {
1656
- const [o, R] = Array.isArray(a) ? a : [a.a, a.b];
1657
- if (!o || !R) return;
1658
- const F = _e.value.find((w) => w.name === o), W = _e.value.find((w) => w.name === R);
1659
- if (!F || !W || F.type !== "line" || W.type !== "line") return;
1660
- const M = e?.[s]?.[0] ?? F.color, H = e?.[s]?.[1] ?? W.color;
1661
- zo({
1662
- lineA: F.plots,
1663
- lineB: W.plots,
1664
- smoothA: !!F.smooth,
1665
- smoothB: !!W.smooth,
1666
- colorLineA: M,
1667
- colorLineB: H,
1668
- sampleStepPx: 2,
1669
- cutNullValues: t.value.line.cutNullValues
1670
- }).forEach((w, O) => {
1671
- u.push({ ...w, key: `inter_${o}_${R}_${s}_${O}` });
1672
- });
1673
- }), u;
1674
- }), pa = k(() => ({
1675
- datapoint: Yt.value,
1676
- seriesIndex: L.value,
1677
- series: lt.value,
1678
- bars: vt.value,
1679
- lines: _e.value,
1680
- plots: Ze.value,
1681
- config: t.value
1682
- })), so = k(() => {
1683
- let l = "", r = Yt.value.map((a) => a.value).filter((a) => Ll(a) && a !== null).reduce((a, s) => Math.abs(a) + Math.abs(s), 0);
1684
- const e = de.value[L.value], u = t.value.chart.tooltip.customFormat;
1685
- return Pa(u) && Io(() => u({
1686
- absoluteIndex: L.value + m.value.start,
1687
- seriesIndex: L.value,
1688
- datapoint: Yt.value,
1689
- series: lt.value,
1690
- bars: vt.value,
1691
- lines: _e.value,
1692
- plots: Ze.value,
1693
- config: t.value
1694
- })) ? u({
1695
- absoluteIndex: L.value + m.value.start,
1696
- seriesIndex: L.value,
1697
- datapoint: Yt.value,
1698
- series: lt.value,
1699
- bars: vt.value,
1700
- lines: _e.value,
1701
- plots: Ze.value,
1702
- config: t.value
1703
- }) : (e && e.text && t.value.chart.tooltip.showTimeLabel && (l += `<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${t.value.chart.tooltip.borderColor}; width:100%">${e.text}</div>`), Yt.value.forEach((a) => {
1704
- if (Ll(a.value)) {
1705
- let s = "", o = "";
1706
- switch (it.value[a.type]) {
1707
- case "bar":
1708
- s = `<svg viewBox="0 0 40 40" height="14" width="14">${Kt.pattern ? `<rect x="0" y="0" rx="1" stroke="none" height="40" width="40" fill="${a.color}" />` : ""}<rect x="0" y="0" rx="1" stroke="none" height="40" width="40" fill="${Kt.pattern ? `url(#pattern_${U.value}_${a.slotAbsoluteIndex}` : a.color}" /></svg>`;
1709
- break;
1710
- case "line":
1711
- !a.shape || !["star", "triangle", "square", "diamond", "pentagon", "hexagon"].includes(a.shape) ? o = `<circle cx="10" cy="8" r="4" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" fill="${a.color}" />` : a.shape === "triangle" ? o = `<path d="${ot({ plot: { x: 10, y: 8 }, radius: 4, sides: 3, rotation: 0.52 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" />` : a.shape === "square" ? o = `<path d="${ot({ plot: { x: 10, y: 8 }, radius: 4, sides: 4, rotation: 0.8 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" />` : a.shape === "diamond" ? o = `<path d="${ot({ plot: { x: 10, y: 8 }, radius: 4, sides: 4, rotation: 0 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" />` : a.shape === "pentagon" ? o = `<path d="${ot({ plot: { x: 10, y: 8 }, radius: 4, sides: 5, rotation: 0.95 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" />` : a.shape === "hexagon" ? o = `<path d="${ot({ plot: { x: 10, y: 8 }, radius: 4, sides: 6, rotation: 0 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" />` : a.shape === "star" && (o = `<polygon stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" fill="${a.color}" points="${Oa({ plot: { x: 10, y: 8 }, radius: 4 })}" />`), s = `<svg viewBox="0 0 20 12" height="14" width="20"><rect rx="1.5" x="0" y="6.5" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="0.5" height="3" width="20" fill="${a.color}" />${o}</svg>`;
1712
- break;
1713
- case "plot":
1714
- if (!a.shape || !["star", "triangle", "square", "diamond", "pentagon", "hexagon"].includes(a.shape)) {
1715
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" fill="${a.color}" /></svg>`;
1716
- break;
1717
- }
1718
- if (a.shape === "star") {
1719
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><polygon stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" fill="${a.color}" points="${Oa({ plot: { x: 6, y: 6 }, radius: 5 })}" /></svg>`;
1720
- break;
1721
- }
1722
- if (a.shape === "triangle") {
1723
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${ot({ plot: { x: 6, y: 6 }, radius: 6, sides: 3, rotation: 0.52 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`;
1724
- break;
1725
- }
1726
- if (a.shape === "square") {
1727
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${ot({ plot: { x: 6, y: 6 }, radius: 6, sides: 4, rotation: 0.8 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`;
1728
- break;
1729
- }
1730
- if (a.shape === "diamond") {
1731
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${ot({ plot: { x: 6, y: 6 }, radius: 5, sides: 4, rotation: 0 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`;
1732
- break;
1733
- }
1734
- if (a.shape === "pentagon") {
1735
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${ot({ plot: { x: 6, y: 6 }, radius: 5, sides: 5, rotation: 0.95 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`;
1736
- break;
1737
- }
1738
- if (a.shape === "hexagon") {
1739
- s = `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${ot({ plot: { x: 6, y: 6 }, radius: 5, sides: 6, rotation: 0 }).path}" fill="${a.color}" stroke="${t.value.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`;
1740
- break;
1741
- }
1742
- }
1743
- l += `<div style="display:flex;flex-direction:row; align-items:center;gap:3px;"><div style="width:20px">${s}</div> ${a.name}: <b>${t.value.chart.tooltip.showValue ? pe(
1744
- a.type === "line" ? t.value.line.labels.formatter : a.type === "bar" ? t.value.bar.labels.formatter : t.value.plot.labels.formatter,
1745
- a.value,
1746
- Be({
1747
- p: a.prefix,
1748
- v: a.value,
1749
- s: a.suffix,
1750
- r: t.value.chart.tooltip.roundingValue
1751
- }),
1752
- { datapoint: a }
1753
- ) : ""}</b> ${t.value.chart.tooltip.showPercentage ? `(${Be({
1754
- v: E(Math.abs(a.value) / r * 100),
1755
- s: "%",
1756
- r: t.value.chart.tooltip.roundingPercentage
1757
- })})` : ""}</div>`, t.value.chart.comments.showInTooltip && a.comments.length && a.comments.slice(m.value.start, m.value.end)[L.value] && (l += `<div class="vue-data-ui-tooltip-comment" style="background:${a.color}20; padding: 6px; margin-bottom: 6px; border-left: 1px solid ${a.color}">${a.comments.slice(m.value.start, m.value.end)[L.value]}</div>`);
1758
- }
1759
- }), `<div style="border-radius:4px;padding:12px;font-variant-numeric: tabular-nums;color:${t.value.chart.tooltip.color}">${l}</div>`);
1760
- }), ya = k(() => {
1761
- if (ct.value.length === 0) return { head: [], body: [], config: {}, columnNames: [] };
1762
- const l = He.value.map((e) => ({
1763
- label: e.name,
1764
- color: e.color,
1765
- type: e.type
1766
- })), r = [];
1767
- return de.value.forEach((e, u) => {
1768
- const a = [e.text];
1769
- He.value.forEach((s) => {
1770
- a.push(Ce(s.absoluteValues[u]) ? Number(s.absoluteValues[u].toFixed(t.value.table.rounding)) : "");
1771
- }), r.push(a);
1772
- }), { head: l, body: r };
1773
- }), Sl = k(() => {
1774
- const l = t.value.table.showSum;
1775
- let r = [""].concat(He.value.map((s) => s.name));
1776
- l && (r = r.concat(' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>'));
1777
- let e = [];
1778
- for (let s = 0; s < N.value; s += 1) {
1779
- const o = He.value.map((R) => R.absoluteValues[s] ?? 0).reduce((R, F) => R + F, 0);
1780
- e.push(
1781
- [
1782
- de.value[s].text ?? "-"
1783
- ].concat(He.value.map(
1784
- (R) => pe(
1785
- R.type === "line" ? t.value.line.labels.formatter : R.type === "bar" ? t.value.bar.labels.formatter : t.value.plot.labels.formatter,
1786
- R.absoluteValues[s] ?? 0,
1787
- Be({
1788
- p: R.prefix || t.value.chart.labels.prefix,
1789
- v: R.absoluteValues[s] ?? 0,
1790
- s: R.suffix || t.value.chart.labels.suffix,
1791
- r: t.value.table.rounding
1792
- })
1793
- )
1794
- )).concat(l ? (o ?? 0).toFixed(t.value.table.rounding) : [])
1795
- );
1796
- }
1797
- const u = {
1798
- th: {
1799
- backgroundColor: t.value.table.th.backgroundColor,
1800
- color: t.value.table.th.color,
1801
- outline: t.value.table.th.outline
1802
- },
1803
- td: {
1804
- backgroundColor: t.value.table.td.backgroundColor,
1805
- color: t.value.table.td.color,
1806
- outline: t.value.table.td.outline
1807
- },
1808
- breakpoint: t.value.table.responsiveBreakpoint
1809
- }, a = [t.value.table.columnNames.period].concat(He.value.map((s) => s.name)).concat(t.value.table.columnNames.total);
1810
- return { head: r, body: e, config: u, colNames: a };
1811
- });
1812
- function ka(l = null) {
1813
- const r = [[t.value.chart.title.text], [t.value.chart.title.subtitle.text], [""]], e = ["", ...ya.value.head.map((o) => o.label)], u = ya.value.body, a = r.concat([e]).concat(u), s = Oo(a);
1814
- l ? l(s) : Ho({ csvContent: s, title: t.value.chart.title.text || "vue-ui-xy" });
1815
- }
1816
- function wa(l, r = null) {
1817
- jt.value = l;
1818
- const e = He.value.map((u) => ({
1819
- name: u.name,
1820
- value: [null, void 0, NaN].includes(u.absoluteValues[r]) ? null : u.absoluteValues[r],
1821
- color: u.color,
1822
- type: u.type
1823
- }));
1824
- l ? (L.value = r, t.value.events.datapointEnter && t.value.events.datapointEnter({ datapoint: e, seriesIndex: r + m.value.start })) : (L.value = null, t.value.events.datapointLeave && t.value.events.datapointLeave({ datapoint: e, seriesIndex: r + m.value.start }));
1825
- }
1826
- function Sa() {
1827
- y.value.showTable = !y.value.showTable;
1828
- }
1829
- function $a() {
1830
- y.value.dataLabels.show = !y.value.dataLabels.show;
1831
- }
1832
- function _a() {
1833
- y.value.showTooltip = !y.value.showTooltip;
1834
- }
1835
- function La(l) {
1836
- st.value = l, rl.value += 1;
1837
- }
1838
- function Ma() {
1839
- if (!t.value.responsiveProportionalSizing) {
1840
- $.value.dataLabels = t.value.chart.grid.labels.fontSize, $.value.yAxis = t.value.chart.grid.labels.axis.fontSize, $.value.xAxis = t.value.chart.grid.labels.xAxisLabels.fontSize, $.value.plotLabels = t.value.chart.labels.fontSize, $e.value.plot = t.value.plot.radius, $e.value.line = t.value.line.radius;
1841
- return;
1842
- }
1843
- $.value.dataLabels = Gt({
1844
- relator: oe.value,
1845
- adjuster: 400,
1846
- source: t.value.chart.grid.labels.fontSize,
1847
- threshold: 10,
1848
- fallback: 10
1849
- }), $.value.yAxis = Gt({
1850
- relator: ne.value,
1851
- adjuster: 1e3,
1852
- source: t.value.chart.grid.labels.axis.fontSize,
1853
- threshold: 10,
1854
- fallback: 10
1855
- }), $.value.xAxis = Gt({
1856
- relator: ne.value,
1857
- adjuster: 1e3,
1858
- source: t.value.chart.grid.labels.xAxisLabels.fontSize,
1859
- threshold: 10,
1860
- fallback: 10
1861
- }), $.value.plotLabels = Gt({
1862
- relator: ne.value,
1863
- adjuster: 800,
1864
- source: t.value.chart.labels.fontSize,
1865
- threshold: 10,
1866
- fallback: 10
1867
- }), $e.value.plot = Gt({
1868
- relator: ne.value,
1869
- adjuster: 800,
1870
- source: t.value.plot.radius,
1871
- threshold: 1,
1872
- fallback: 1
1873
- }), $e.value.line = Gt({
1874
- relator: ne.value,
1875
- adjuster: 800,
1876
- source: t.value.line.radius,
1877
- threshold: 1,
1878
- fallback: 1
1879
- });
1880
- }
1881
- function Bl() {
1882
- Ha(d.dataset) ? (Wl({
1883
- componentName: "VueUiXy",
1884
- type: "dataset",
1885
- debug: Ge.value
1886
- }), f.value = !0) : d.dataset.forEach((r, e) => {
1887
- [null, void 0].includes(r.name) && (Wl({
1888
- componentName: "VueUiXy",
1889
- type: "datasetSerieAttribute",
1890
- property: "name (string)",
1891
- index: e,
1892
- debug: Ge.value
1893
- }), f.value = !0);
1894
- }), Ge.value && d.dataset.forEach((r) => {
1895
- r.series.forEach((e, u) => {
1896
- Ll(e) || console.warn(`VueUiXy has detected an unsafe value in your dataset:
1897
- -----> The serie '${r.name}' contains the value '${e}' at index ${u}.
1898
- '${e}' was converted to null to allow the chart to display.`);
1899
- });
1900
- }), Ha(d.dataset) || (f.value = t.value.loading), Ye.value = t.value.chart.userOptions.showOnChartHover, Oe.value = t.value.chart.userOptions.keepStateOnChartLeave, Ct.value = !t.value.chart.userOptions.showOnChartHover, tt();
1901
- const l = 12;
1902
- if (t.value.responsive) {
1903
- const e = fe.value.parentNode;
1904
- Z.value && (Z.value.unobserve(et.value), Z.value.disconnect());
1905
- const { height: u, width: a } = e.getBoundingClientRect();
1906
- let s = null, o = 0;
1907
- t.value.chart.title.show && xe.value && (s = xe.value, o = s.getBoundingClientRect().height);
1908
- let R = null, F = 0;
1909
- t.value.chart.zoom.show && S.value > 6 && zt.value && Me.value && Me.value.$el && (R = Me.value.$el, F = R.getBoundingClientRect().height);
1910
- let W = null, M = 0;
1911
- t.value.chart.legend.show && je.value && (W = je.value, M = W.getBoundingClientRect().height);
1912
- let H = 0;
1913
- _t.value && (H = _t.value.getBoundingClientRect().height);
1914
- let q = 0;
1915
- Lt.value && (q = Lt.value.getBoundingClientRect().height), oe.value = u - o - M - F - H - q - l, ne.value = a, Et.value = `0 0 ${ne.value < 0 ? 10 : ne.value} ${oe.value < 0 ? 10 : oe.value}`, Ma();
1916
- const w = new ResizeObserver((O) => {
1917
- for (const z of O)
1918
- t.value.chart.title.show && xe.value ? o = xe.value.getBoundingClientRect().height : o = 0, Me.value && Me.value.$el ? F = Me.value.$el.getBoundingClientRect().height : F = 0, je.value ? M = je.value.getBoundingClientRect().height : M = 0, _t.value ? H = _t.value.getBoundingClientRect().height : H = 0, Lt.value ? q = Lt.value.getBoundingClientRect().height : q = 0, requestAnimationFrame(() => {
1919
- oe.value = z.contentRect.height - o - M - F - H - q - l, ne.value = z.contentBoxSize[0].inlineSize, Et.value = `0 0 ${ne.value < 0 ? 10 : ne.value} ${oe.value < 0 ? 10 : oe.value}`, Ma();
1920
- });
1921
- });
1922
- Z.value = w, et.value = e, w.observe(e);
1923
- } else
1924
- oe.value = t.value.chart.height, ne.value = t.value.chart.width, $.value.dataLabels = t.value.chart.grid.labels.fontSize, $.value.yAxis = t.value.chart.grid.labels.axis.fontSize, $.value.xAxis = t.value.chart.grid.labels.xAxisLabels.fontSize, $.value.plotLabels = t.value.chart.labels.fontSize, $e.value.plot = t.value.plot.radius, $e.value.line = t.value.line.radius, Et.value = `0 0 ${ne.value} ${oe.value}`;
1925
- }
1926
- il(() => {
1927
- Bl(), bl(), document.addEventListener("mousemove", (l) => {
1928
- Qt.value = {
1929
- x: l.clientX,
1930
- y: l.clientY
1931
- };
1932
- }), document.addEventListener("scroll", Ql);
1933
- }), sl(() => {
1934
- document.removeEventListener("scroll", Ql), Z.value && (Z.value.unobserve(et.value), Z.value.disconnect());
1935
- }), Wo({
1936
- timeLabelsEls: ut,
1937
- timeLabels: de,
1938
- slicer: m,
1939
- configRef: t,
1940
- rotationPath: ["chart", "grid", "labels", "xAxisLabels", "rotation"],
1941
- autoRotatePath: ["chart", "grid", "labels", "xAxisLabels", "autoRotate", "enable"],
1942
- isAutoSize: Ba,
1943
- height: oe,
1944
- width: ne,
1945
- rotation: t.value.chart.grid.labels.xAxisLabels.autoRotate.angle
1946
- });
1947
- const $l = p(!1), ro = k(() => {
1948
- if ([null, void 0].includes(L.value) && [null, void 0].includes(P.value)) return "";
1949
- const l = (L.value != null ? L.value : 0) || (P.value != null ? P.value : 0), r = t.value.chart.timeTag.customFormat;
1950
- if ($l.value = !1, Pa(r))
1951
- try {
1952
- const e = r({
1953
- absoluteIndex: l + m.value.start,
1954
- seriesIndex: l,
1955
- datapoint: Yt.value,
1956
- bars: vt.value,
1957
- lines: _e.value,
1958
- plots: Ze.value,
1959
- config: t.value
1960
- });
1961
- if (typeof e == "string")
1962
- return $l.value = !0, e;
1963
- } catch {
1964
- console.warn("Custom format cannot be applied on timeTag."), $l.value = !1;
1965
- }
1966
- if (!$l.value)
1967
- return [null, void 0].includes(de.value[l]) ? "" : de.value[l].text;
1968
- });
1969
- nt(() => d.dataset, (l) => {
1970
- Array.isArray(l) && l.length > 0 && (f.value = !1), S.value = Math.max(...g.value.map((r) => qe({
1971
- data: r.series,
1972
- threshold: t.value.downsample.threshold
1973
- }).length)), m.value = {
1974
- start: 0,
1975
- end: S.value
1976
- }, ve.value += 1, Pe.value += 1, Wt();
1977
- }, { deep: !0 }), nt(() => d.config, (l) => {
1978
- B.value || (t.value = Ft()), Bl(), vl.value += 1, cl.value += 1, tt(), Wt();
1979
- }, { deep: !0 });
1980
- const Fl = p(!1);
1981
- function Ca() {
1982
- const l = fe.value?.parentNode;
1983
- if (!l) {
1984
- Fl.value = !1;
1985
- return;
1986
- }
1987
- const r = l.getBoundingClientRect();
1988
- Fl.value = r.width > 2 && r.height > 2;
1989
- }
1990
- return il(() => {
1991
- Ca();
1992
- const l = new ResizeObserver(() => {
1993
- Ca(), Fl.value && (Bl(), Wt(), bl());
1994
- });
1995
- fe.value?.parentNode && l.observe(fe.value.parentNode);
1996
- }), nt(t, () => {
1997
- tt();
1998
- }, { immediate: !0 }), Tl({
1999
- getData: ja,
2000
- getImage: eo,
2001
- generatePdf: Ul,
2002
- generateImage: Zl,
2003
- generateCsv: ka,
2004
- toggleStack: oa,
2005
- toggleTable: Sa,
2006
- toggleLabels: $a,
2007
- toggleTooltip: _a,
2008
- toggleAnnotator: Hl,
2009
- toggleFullscreen: La
2010
- }), (l, r) => (n(), i("div", {
2011
- id: `vue-ui-xy_${U.value}`,
2012
- class: Ie(`vue-ui-xy ${st.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${t.value.useCssAnimation ? "" : "vue-ui-dna"}`),
2013
- ref_key: "chart",
2014
- ref: fe,
2015
- style: _(`background:${t.value.chart.backgroundColor}; color:${t.value.chart.color};width:100%;font-family:${t.value.chart.fontFamily};${t.value.responsive ? "height: 100%" : ""}`),
2016
- onMouseenter: r[10] || (r[10] = () => ea(!0)),
2017
- onMouseleave: r[11] || (r[11] = () => ea(!1))
2018
- }, [
2019
- t.value.chart.userOptions.buttons.annotator && ye.value ? (n(), Ee(v(ht), {
2020
- key: 0,
2021
- svgRef: ye.value,
2022
- backgroundColor: t.value.chart.backgroundColor,
2023
- color: t.value.chart.color,
2024
- active: ft.value,
2025
- onClose: Hl
2026
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : h("", !0),
2027
- lo.value ? (n(), i("div", {
2028
- key: 1,
2029
- ref_key: "noTitle",
2030
- ref: Lt,
2031
- class: "vue-data-ui-no-title-space",
2032
- style: "height:36px; width: 100%; background:transparent"
2033
- }, null, 512)) : h("", !0),
2034
- t.value.chart.title.show ? (n(), i("div", {
2035
- key: 2,
2036
- ref_key: "chartTitle",
2037
- ref: xe,
2038
- class: "vue-ui-xy-title",
2039
- style: _(`font-family:${t.value.chart.fontFamily}`)
2040
- }, [
2041
- (n(), Ee(Yo, {
2042
- key: `title_${vl.value}`,
2043
- config: {
2044
- title: {
2045
- cy: "xy-div-title",
2046
- ...t.value.chart.title
2047
- },
2048
- subtitle: {
2049
- cy: "xy-div-subtitle",
2050
- ...t.value.chart.title.subtitle
2051
- }
2052
- }
2053
- }, null, 8, ["config"]))
2054
- ], 4)) : h("", !0),
2055
- b("div", {
2056
- id: `legend-top-${U.value}`
2057
- }, null, 8, mn),
2058
- t.value.chart.userOptions.show && (Oe.value || Ct.value) ? (n(), Ee(v(me), {
2059
- ref: "defails",
2060
- key: `user_options_${rl.value}`,
2061
- backgroundColor: t.value.chart.backgroundColor,
2062
- color: t.value.chart.color,
2063
- isPrinting: v(el),
2064
- isImaging: v(Gl),
2065
- uid: U.value,
2066
- hasTooltip: t.value.chart.userOptions.buttons.tooltip && t.value.chart.tooltip.show,
2067
- hasPdf: t.value.chart.userOptions.buttons.pdf,
2068
- hasXls: t.value.chart.userOptions.buttons.csv,
2069
- hasImg: t.value.chart.userOptions.buttons.img,
2070
- hasLabel: t.value.chart.userOptions.buttons.labels,
2071
- hasTable: t.value.chart.userOptions.buttons.table,
2072
- hasStack: I.dataset.length > 1 && t.value.chart.userOptions.buttons.stack,
2073
- hasFullscreen: t.value.chart.userOptions.buttons.fullscreen,
2074
- isStacked: y.value.isStacked,
2075
- isFullscreen: st.value,
2076
- chartElement: l.$refs.chart,
2077
- position: t.value.chart.userOptions.position,
2078
- isTooltip: y.value.showTooltip,
2079
- titles: { ...t.value.chart.userOptions.buttonTitles },
2080
- hasAnnotator: t.value.chart.userOptions.buttons.annotator,
2081
- isAnnotation: ft.value,
2082
- callbacks: t.value.chart.userOptions.callbacks,
2083
- printScale: t.value.chart.userOptions.print.scale,
2084
- onToggleFullscreen: La,
2085
- onGeneratePdf: v(Ul),
2086
- onGenerateCsv: ka,
2087
- onGenerateImage: v(Zl),
2088
- onToggleTable: Sa,
2089
- onToggleLabels: $a,
2090
- onToggleStack: oa,
2091
- onToggleTooltip: _a,
2092
- onToggleAnnotator: Hl,
2093
- style: _({
2094
- visibility: Oe.value ? Ct.value ? "visible" : "hidden" : "visible"
2095
- })
2096
- }, bo({ _: 2 }, [
2097
- l.$slots.menuIcon ? {
2098
- name: "menuIcon",
2099
- fn: ge(({ isOpen: e, color: u }) => [
2100
- J(l.$slots, "menuIcon", dt(wt({ isOpen: e, color: u })), void 0, !0)
2101
- ]),
2102
- key: "0"
2103
- } : void 0,
2104
- l.$slots.optionTooltip ? {
2105
- name: "optionTooltip",
2106
- fn: ge(() => [
2107
- J(l.$slots, "optionTooltip", {}, void 0, !0)
2108
- ]),
2109
- key: "1"
2110
- } : void 0,
2111
- l.$slots.optionPdf ? {
2112
- name: "optionPdf",
2113
- fn: ge(() => [
2114
- J(l.$slots, "optionPdf", {}, void 0, !0)
2115
- ]),
2116
- key: "2"
2117
- } : void 0,
2118
- l.$slots.optionCsv ? {
2119
- name: "optionCsv",
2120
- fn: ge(() => [
2121
- J(l.$slots, "optionCsv", {}, void 0, !0)
2122
- ]),
2123
- key: "3"
2124
- } : void 0,
2125
- l.$slots.optionImg ? {
2126
- name: "optionImg",
2127
- fn: ge(() => [
2128
- J(l.$slots, "optionImg", {}, void 0, !0)
2129
- ]),
2130
- key: "4"
2131
- } : void 0,
2132
- l.$slots.optionTable ? {
2133
- name: "optionTable",
2134
- fn: ge(() => [
2135
- J(l.$slots, "optionTable", {}, void 0, !0)
2136
- ]),
2137
- key: "5"
2138
- } : void 0,
2139
- l.$slots.optionLabels ? {
2140
- name: "optionLabels",
2141
- fn: ge(() => [
2142
- J(l.$slots, "optionLabels", {}, void 0, !0)
2143
- ]),
2144
- key: "6"
2145
- } : void 0,
2146
- l.$slots.optionStack ? {
2147
- name: "optionStack",
2148
- fn: ge(() => [
2149
- J(l.$slots, "optionStack", {}, void 0, !0)
2150
- ]),
2151
- key: "7"
2152
- } : void 0,
2153
- l.$slots.optionFullscreen ? {
2154
- name: "optionFullscreen",
2155
- fn: ge(({ toggleFullscreen: e, isFullscreen: u }) => [
2156
- J(l.$slots, "optionFullscreen", dt(wt({ toggleFullscreen: e, isFullscreen: u })), void 0, !0)
2157
- ]),
2158
- key: "8"
2159
- } : void 0,
2160
- l.$slots.optionAnnotator ? {
2161
- name: "optionAnnotator",
2162
- fn: ge(({ toggleAnnotator: e, isAnnotator: u }) => [
2163
- J(l.$slots, "optionAnnotator", dt(wt({ toggleAnnotator: e, isAnnotator: u })), void 0, !0)
2164
- ]),
2165
- key: "9"
2166
- } : void 0
2167
- ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasLabel", "hasTable", "hasStack", "hasFullscreen", "isStacked", "isFullscreen", "chartElement", "position", "isTooltip", "titles", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : h("", !0),
2168
- (n(), i("svg", {
2169
- ref_key: "svgRef",
2170
- ref: ye,
2171
- xmlns: "http://www.w3.org/2000/svg",
2172
- class: Ie([{ "vue-data-ui-fullscreen--on": st.value, "vue-data-ui-fulscreen--off": !st.value }, "vue-ui-xy-svg vue-data-ui-svg"]),
2173
- width: "100%",
2174
- viewBox: Et.value,
2175
- style: _({
2176
- background: "transparent",
2177
- color: t.value.chart.color,
2178
- fontFamily: t.value.chart.fontFamily
2179
- }),
2180
- "aria-label": to.value,
2181
- role: "img",
2182
- "aria-live": "polite",
2183
- preserveAspectRatio: "xMidYMid",
2184
- onMousemove: Ka,
2185
- onMouseleave: va,
2186
- onClick: Ja
2187
- }, [
2188
- b("g", {
2189
- ref_key: "G",
2190
- ref: Rl,
2191
- class: "vue-data-ui-g"
2192
- }, [
2193
- Ut(v(Ht)),
2194
- l.$slots["chart-background"] ? (n(), i("foreignObject", {
2195
- key: 0,
2196
- x: c.value.left + j.value < 0 ? 0 : c.value.left + j.value,
2197
- y: c.value.top,
2198
- width: c.value.width - (t.value.chart.grid.position === "middle" ? 0 : c.value.width / N.value) < 0 ? 0 : c.value.width - (t.value.chart.grid.position === "middle" ? 0 : c.value.width / N.value),
2199
- height: c.value.height < 0 ? 0 : c.value.height,
2200
- style: {
2201
- pointerEvents: "none"
2202
- }
2203
- }, [
2204
- J(l.$slots, "chart-background", {}, void 0, !0)
2205
- ], 8, bn)) : h("", !0),
2206
- N.value > 0 ? (n(), i("g", pn, [
2207
- b("g", yn, [
2208
- t.value.chart.grid.labels.xAxis.showBaseline ? (n(), i("line", {
2209
- key: 0,
2210
- stroke: t.value.chart.grid.stroke,
2211
- "stroke-width": "1",
2212
- x1: c.value.left + j.value,
2213
- x2: c.value.right - j.value,
2214
- y1: v(G)(c.value.bottom),
2215
- y2: v(G)(c.value.bottom),
2216
- "stroke-linecap": "round",
2217
- style: { animation: "none !important" }
2218
- }, null, 8, kn)) : h("", !0),
2219
- y.value.useIndividualScale ? t.value.chart.grid.showHorizontalLines ? (n(!0), i(x, { key: 2 }, C(al.value, (e) => (n(), i("g", null, [
2220
- e.id === A.value && e.yLabels.length ? (n(!0), i(x, { key: 0 }, C(e.yLabels, (u) => (n(), i("line", {
2221
- x1: c.value.left + j.value,
2222
- x2: c.value.right - j.value,
2223
- y1: v(G)(u.y),
2224
- y2: v(G)(u.y),
2225
- stroke: e.color,
2226
- "stroke-width": 0.5,
2227
- "stroke-linecap": "round",
2228
- style: { animation: "none !important" }
2229
- }, null, 8, _n))), 256)) : e.yLabels.length ? (n(!0), i(x, { key: 1 }, C(e.yLabels, (u) => (n(), i("line", {
2230
- x1: c.value.left + j.value,
2231
- x2: c.value.right - j.value,
2232
- y1: v(G)(u.y),
2233
- y2: v(G)(u.y),
2234
- stroke: t.value.chart.grid.stroke,
2235
- "stroke-width": 0.5,
2236
- "stroke-linecap": "round",
2237
- style: { animation: "none !important" }
2238
- }, null, 8, Ln))), 256)) : h("", !0)
2239
- ]))), 256)) : h("", !0) : (n(), i(x, { key: 1 }, [
2240
- t.value.chart.grid.labels.yAxis.showBaseline ? (n(), i("line", {
2241
- key: 0,
2242
- stroke: t.value.chart.grid.stroke,
2243
- "stroke-width": "1",
2244
- x1: c.value.left + j.value,
2245
- x2: c.value.left + j.value,
2246
- y1: v(G)(c.value.top),
2247
- y2: v(G)(c.value.bottom),
2248
- "stroke-linecap": "round",
2249
- style: { animation: "none !important" }
2250
- }, null, 8, wn)) : h("", !0),
2251
- t.value.chart.grid.showHorizontalLines ? (n(), i("g", Sn, [
2252
- (n(!0), i(x, null, C(ga.value, (e) => (n(), i("line", {
2253
- x1: c.value.left + j.value,
2254
- x2: c.value.right,
2255
- y1: v(G)(e.y),
2256
- y2: v(G)(e.y),
2257
- stroke: t.value.chart.grid.stroke,
2258
- "stroke-width": 0.5,
2259
- "stroke-linecap": "round",
2260
- style: { animation: "none !important" }
2261
- }, null, 8, $n))), 256))
2262
- ])) : h("", !0)
2263
- ], 64)),
2264
- t.value.chart.grid.showVerticalLines ? (n(), i("g", Mn, [
2265
- b("path", {
2266
- d: Ya.value,
2267
- "stroke-width": 0.5,
2268
- stroke: t.value.chart.grid.stroke,
2269
- "stroke-linecap": "round",
2270
- style: { animation: "none !important" }
2271
- }, null, 8, Cn)
2272
- ])) : h("", !0),
2273
- t.value.chart.grid.labels.xAxisLabels.show ? (n(), i("g", An, [
2274
- b("path", {
2275
- d: Xa.value,
2276
- stroke: t.value.chart.grid.stroke,
2277
- "stroke-width": 1,
2278
- "stroke-linecap": "round",
2279
- style: { animation: "none !important" }
2280
- }, null, 8, zn)
2281
- ])) : h("", !0)
2282
- ]),
2283
- (n(!0), i(x, null, C(vt.value, (e, u) => (n(), i("defs", {
2284
- key: `def_rect_${u}`
2285
- }, [
2286
- b("linearGradient", {
2287
- id: `rectGradient_pos_${u}_${U.value}`,
2288
- x2: "0%",
2289
- y2: "100%"
2290
- }, [
2291
- b("stop", {
2292
- offset: "0%",
2293
- "stop-color": e.color
2294
- }, null, 8, Tn),
2295
- b("stop", {
2296
- offset: "62%",
2297
- "stop-color": `${v(Pt)(e.color, 0.02)}`
2298
- }, null, 8, Nn),
2299
- b("stop", {
2300
- offset: "100%",
2301
- "stop-color": `${v(Pt)(e.color, 0.05)}`
2302
- }, null, 8, Rn)
2303
- ], 8, In),
2304
- b("linearGradient", {
2305
- id: `rectGradient_neg_${u}_${U.value}`,
2306
- x2: "0%",
2307
- y2: "100%"
2308
- }, [
2309
- b("stop", {
2310
- offset: "0%",
2311
- "stop-color": `${v(Pt)(e.color, 0.05)}`
2312
- }, null, 8, On),
2313
- b("stop", {
2314
- offset: "38%",
2315
- "stop-color": `${v(Pt)(e.color, 0.02)}`
2316
- }, null, 8, Hn),
2317
- b("stop", {
2318
- offset: "100%",
2319
- "stop-color": e.color
2320
- }, null, 8, Vn)
2321
- ], 8, Pn)
2322
- ]))), 128)),
2323
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i("defs", {
2324
- key: `def_plot_${u}`
2325
- }, [
2326
- b("radialGradient", {
2327
- id: `plotGradient_${u}_${U.value}`,
2328
- cx: "50%",
2329
- cy: "50%",
2330
- r: "50%",
2331
- fx: "50%",
2332
- fy: "50%"
2333
- }, [
2334
- b("stop", {
2335
- offset: "0%",
2336
- "stop-color": `${v(Pt)(e.color, 0.05)}`
2337
- }, null, 8, Bn),
2338
- b("stop", {
2339
- offset: "100%",
2340
- "stop-color": e.color
2341
- }, null, 8, Fn)
2342
- ], 8, En)
2343
- ]))), 128)),
2344
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i("defs", {
2345
- key: `def_line_${u}`
2346
- }, [
2347
- b("radialGradient", {
2348
- id: `lineGradient_${u}_${U.value}`,
2349
- cx: "50%",
2350
- cy: "50%",
2351
- r: "50%",
2352
- fx: "50%",
2353
- fy: "50%"
2354
- }, [
2355
- b("stop", {
2356
- offset: "0%",
2357
- "stop-color": `${v(Pt)(e.color, 0.05)}`
2358
- }, null, 8, Dn),
2359
- b("stop", {
2360
- offset: "100%",
2361
- "stop-color": e.color
2362
- }, null, 8, Yn)
2363
- ], 8, Wn),
2364
- b("linearGradient", {
2365
- id: `areaGradient_${u}_${U.value}`,
2366
- x1: "0%",
2367
- x2: "100%",
2368
- y1: "0%",
2369
- y2: "0%"
2370
- }, [
2371
- b("stop", {
2372
- offset: "0%",
2373
- "stop-color": `${v(Ke)(v(Pt)(e.color, 0.03), t.value.line.area.opacity)}`
2374
- }, null, 8, Gn),
2375
- b("stop", {
2376
- offset: "100%",
2377
- "stop-color": `${v(Ke)(e.color, t.value.line.area.opacity)}`
2378
- }, null, 8, Un)
2379
- ], 8, Xn)
2380
- ]))), 128)),
2381
- (n(!0), i(x, null, C(ao.value, (e) => (n(), i("g", null, [
2382
- e.show ? (n(), i(x, { key: 0 }, [
2383
- (n(!0), i(x, null, C(e.span, (u, a) => (n(), i("g", null, [
2384
- b("rect", {
2385
- style: _({
2386
- transition: "none",
2387
- opacity: e.from + a >= m.value.start && e.from + a <= m.value.end - 1 ? 1 : 0
2388
- }),
2389
- x: c.value.left + c.value.width / N.value * (e.from + a - m.value.start),
2390
- y: c.value.top,
2391
- height: c.value.height < 0 ? 10 : c.value.height,
2392
- width: c.value.width / N.value < 0 ? 1e-5 : c.value.width / N.value,
2393
- fill: v(Ke)(e.color, e.opacity)
2394
- }, null, 12, Zn)
2395
- ]))), 256)),
2396
- (n(!0), i(x, null, C(e.span, (u, a) => (n(), i("g", null, [
2397
- e.caption.text && a === 0 ? (n(), i("foreignObject", {
2398
- key: 0,
2399
- x: c.value.left + c.value.width / N.value * (e.from + a - m.value.start) - (e.caption.width === "auto" ? 0 : e.caption.width / 2 - c.value.width / N.value * e.span / 2),
2400
- y: c.value.top + e.caption.offsetY,
2401
- style: _({
2402
- overflow: "visible",
2403
- opacity: e.to >= m.value.start && e.from < m.value.end ? 1 : 0
2404
- }),
2405
- height: "1",
2406
- width: e.caption.width === "auto" ? c.value.width / N.value * e.span : e.caption.width
2407
- }, [
2408
- b("div", {
2409
- style: _(`padding:${e.caption.padding}px;text-align:${e.caption.textAlign};font-size:${e.caption.fontSize}px;color:${e.caption.color};font-weight:${e.caption.bold ? "bold" : "normal"}`)
2410
- }, ae(e.caption.text), 5)
2411
- ], 12, qn)) : h("", !0)
2412
- ]))), 256))
2413
- ], 64)) : h("", !0)
2414
- ]))), 256)),
2415
- jl.value ? (n(), i("g", Kn, [
2416
- (n(!0), i(x, null, C(N.value, (e, u) => (n(), i("g", {
2417
- key: `tooltip_trap_highlighter_${u}`
2418
- }, [
2419
- b("rect", {
2420
- x: c.value.left + c.value.width / N.value * u,
2421
- y: c.value.top,
2422
- height: c.value.height < 0 ? 10 : c.value.height,
2423
- width: c.value.width / N.value < 0 ? 1e-5 : c.value.width / N.value,
2424
- fill: [P.value, L.value, De.value].includes(u) ? v(Ke)(t.value.chart.highlighter.color, t.value.chart.highlighter.opacity) : "transparent",
2425
- style: { transition: "none !important", animation: "none !important" }
2426
- }, null, 8, Jn)
2427
- ]))), 128))
2428
- ])) : h("", !0),
2429
- vt.value.length ? (n(!0), i(x, { key: 1 }, C(vt.value, (e, u) => (n(), i("g", {
2430
- key: `serie_bar_${u}`,
2431
- class: Ie(`serie_bar_${u}`),
2432
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2433
- }, [
2434
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i("g", {
2435
- key: `bar_plot_${u}_${s}`
2436
- }, [
2437
- Ce(a.value) ? (n(), i("rect", {
2438
- key: 0,
2439
- x: pl(a) + wl.value / 2,
2440
- y: y.value.useIndividualScale ? ca(a) : ra(a),
2441
- height: y.value.useIndividualScale ? Math.abs(sa(a)) : Math.abs(ia(a)),
2442
- width: kl.value - wl.value,
2443
- rx: t.value.bar.borderRadius,
2444
- fill: t.value.bar.useGradient ? a.value >= 0 ? `url(#rectGradient_pos_${u}_${U.value})` : `url(#rectGradient_neg_${u}_${U.value})` : e.color,
2445
- stroke: t.value.bar.border.useSerieColor ? e.color : t.value.bar.border.stroke,
2446
- "stroke-width": t.value.bar.border.strokeWidth,
2447
- style: _({ transition: v(B) || !t.value.bar.showTransition ? void 0 : `all ${t.value.bar.transitionDurationMs}ms ease-in-out` })
2448
- }, null, 12, Qn)) : h("", !0),
2449
- Ce(a.value) && l.$slots.pattern ? (n(), i("rect", {
2450
- key: 1,
2451
- x: pl(a) - wl.value / 2,
2452
- y: y.value.useIndividualScale ? ca(a) : ra(a),
2453
- height: y.value.useIndividualScale ? Math.abs(sa(a)) : Math.abs(ia(a)),
2454
- width: kl.value - wl.value,
2455
- rx: t.value.bar.borderRadius,
2456
- fill: `url(#pattern_${U.value}_${e.slotAbsoluteIndex})`,
2457
- stroke: t.value.bar.border.useSerieColor ? e.color : t.value.bar.border.stroke,
2458
- "stroke-width": t.value.bar.border.strokeWidth,
2459
- style: _({ transition: v(B) || !t.value.bar.showTransition ? void 0 : `all ${t.value.bar.transitionDurationMs}ms ease-in-out` })
2460
- }, null, 12, jn)) : h("", !0),
2461
- a.comment && t.value.chart.comments.show ? (n(), i("foreignObject", {
2462
- key: 2,
2463
- style: { overflow: "visible" },
2464
- height: "12",
2465
- width: kl.value / 2 + t.value.chart.comments.width,
2466
- x: pl(a) - t.value.chart.comments.width / 2 + t.value.chart.comments.offsetX,
2467
- y: v(E)(a.y) + t.value.chart.comments.offsetY + 6
2468
- }, [
2469
- J(l.$slots, "plot-comment", {
2470
- plot: { ...a, color: e.color, seriesIndex: u, datapointIndex: s }
2471
- }, void 0, !0)
2472
- ], 8, eu)) : h("", !0)
2473
- ]))), 128)),
2474
- Object.hasOwn(e, "useProgression") && e.useProgression === !0 && !isNaN(v(ee)(e.plots).trend) ? (n(), i("g", tu, [
2475
- b("defs", null, [
2476
- b("marker", {
2477
- id: `bar_arrow_${u}`,
2478
- markerWidth: 7,
2479
- markerHeight: 7,
2480
- refX: "0",
2481
- refY: 7 / 2,
2482
- orient: "auto"
2483
- }, [
2484
- b("polygon", {
2485
- points: `0 0, 7 ${7 / 2}, 0 7`,
2486
- fill: e.color
2487
- }, null, 8, au)
2488
- ], 8, lu)
2489
- ]),
2490
- e.plots.length > 1 ? (n(), i("line", {
2491
- key: 0,
2492
- x1: v(ee)(e.plots).x1 + Dt(),
2493
- x2: v(ee)(e.plots).x2 + Dt(),
2494
- y1: v(G)(v(ee)(e.plots).y1),
2495
- y2: v(G)(v(ee)(e.plots).y2),
2496
- "stroke-width": 1,
2497
- stroke: e.color,
2498
- "stroke-dasharray": 2,
2499
- "marker-end": `url(#bar_arrow_${u})`
2500
- }, null, 8, ou)) : h("", !0),
2501
- e.plots.length > 1 ? (n(), i("text", {
2502
- key: 1,
2503
- "text-anchor": "middle",
2504
- x: v(ee)(e.plots).x2 + Dt(),
2505
- y: v(ee)(e.plots).y2 - 6,
2506
- "font-size": $.value.plotLabels,
2507
- fill: e.color
2508
- }, ae(v(Be)({
2509
- v: v(ee)(e.plots).trend * 100,
2510
- s: "%",
2511
- r: 2
2512
- })), 9, nu)) : h("", !0)
2513
- ])) : h("", !0)
2514
- ], 6))), 128)) : h("", !0),
2515
- !y.value.useIndividualScale && t.value.chart.grid.labels.zeroLine.show ? (n(), i("line", {
2516
- key: 2,
2517
- stroke: t.value.chart.grid.stroke,
2518
- "stroke-width": "1",
2519
- x1: c.value.left + j.value,
2520
- x2: c.value.right,
2521
- y1: v(G)(ke.value),
2522
- y2: v(G)(ke.value),
2523
- "stroke-linecap": "round",
2524
- style: { animation: "none !important" }
2525
- }, null, 8, uu)) : h("", !0),
2526
- t.value.chart.highlighter.useLine && (![null, void 0].includes(L.value) || ![null, void 0].includes(P.value)) ? (n(), i("g", iu, [
2527
- b("line", {
2528
- x1: c.value.left + c.value.width / N.value * ((L.value !== null ? L.value : 0) || (P.value !== null ? P.value : 0)) + c.value.width / N.value / 2,
2529
- x2: c.value.left + c.value.width / N.value * ((L.value !== null ? L.value : 0) || (P.value !== null ? P.value : 0)) + c.value.width / N.value / 2,
2530
- y1: v(G)(c.value.top),
2531
- y2: v(G)(c.value.bottom),
2532
- stroke: t.value.chart.highlighter.color,
2533
- "stroke-width": t.value.chart.highlighter.lineWidth,
2534
- "stroke-dasharray": t.value.chart.highlighter.lineDasharray,
2535
- "stroke-linecap": "round",
2536
- style: { transition: "none !important", animation: "none !important", "pointer-events": "none" }
2537
- }, null, 8, su)
2538
- ])) : h("", !0),
2539
- t.value.chart.grid.frame.show ? (n(), i("rect", {
2540
- key: 4,
2541
- style: { pointerEvents: "none", transition: "none", animation: "none !important" },
2542
- x: c.value.left + j.value < 0 ? 0 : c.value.left + j.value,
2543
- y: c.value.top,
2544
- width: c.value.width - (t.value.chart.grid.position === "middle" ? 0 : c.value.width / N.value) < 0 ? 0 : c.value.width - (t.value.chart.grid.position === "middle" ? 0 : c.value.width / N.value),
2545
- height: c.value.height < 0 ? 0 : c.value.height,
2546
- fill: "transparent",
2547
- stroke: t.value.chart.grid.frame.stroke,
2548
- "stroke-width": t.value.chart.grid.frame.strokeWidth,
2549
- "stroke-linecap": t.value.chart.grid.frame.strokeLinecap,
2550
- "stroke-linejoin": t.value.chart.grid.frame.strokeLinejoin,
2551
- "stroke-dasharray": t.value.chart.grid.frame.strokeDasharray
2552
- }, null, 8, ru)) : h("", !0),
2553
- t.value.chart.grid.labels.show ? (n(), i("g", {
2554
- key: 5,
2555
- ref_key: "scaleLabels",
2556
- ref: Mt
2557
- }, [
2558
- y.value.useIndividualScale ? (n(), i(x, { key: 0 }, [
2559
- (n(!0), i(x, null, C(al.value, (e) => (n(), i("g", null, [
2560
- b("line", {
2561
- x1: e.x + j.value - c.value.individualOffsetX,
2562
- x2: e.x + j.value - c.value.individualOffsetX,
2563
- y1: y.value.isStacked ? v(G)(c.value.bottom - e.yOffset - e.individualHeight) : v(G)(c.value.top),
2564
- y2: y.value.isStacked ? v(G)(c.value.bottom - e.yOffset) : v(G)(c.value.bottom),
2565
- stroke: e.color,
2566
- "stroke-width": t.value.chart.grid.stroke,
2567
- "stroke-linecap": "round",
2568
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.3 : 1};transition:opacity 0.2s ease-in-out; animation: none !important`)
2569
- }, null, 12, cu)
2570
- ]))), 256)),
2571
- (n(!0), i(x, null, C(al.value, (e) => (n(), i("g", {
2572
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.3 : 1};transition:opacity 0.2s ease-in-out`)
2573
- }, [
2574
- b("text", {
2575
- fill: e.color,
2576
- "font-size": $.value.dataLabels * 0.8,
2577
- "text-anchor": "middle",
2578
- transform: `translate(${e.x - $.value.dataLabels * 0.8 / 2 + j.value}, ${y.value.isStacked ? c.value.bottom - e.yOffset - e.individualHeight / 2 : c.value.top + c.value.height / 2}) rotate(-90)`
2579
- }, ae(e.name) + " " + ae(e.scaleLabel && e.unique && e.scaleLabel !== e.id ? `-
2580
- ${e.scaleLabel}` : ""), 9, vu),
2581
- (n(!0), i(x, null, C(e.yLabels, (u, a) => (n(), i(x, null, [
2582
- t.value.chart.grid.labels.yAxis.showCrosshairs ? (n(), i("line", {
2583
- key: 0,
2584
- x1: e.x + 3 + j.value - t.value.chart.grid.labels.yAxis.crosshairSize - c.value.individualOffsetX,
2585
- x2: e.x + j.value - c.value.individualOffsetX,
2586
- y1: v(G)(u.y),
2587
- y2: v(G)(u.y),
2588
- stroke: e.color,
2589
- "stroke-width": 1,
2590
- "stroke-linecap": "round",
2591
- style: { animation: "none !important" }
2592
- }, null, 8, du)) : h("", !0)
2593
- ], 64))), 256)),
2594
- (n(!0), i(x, null, C(e.yLabels, (u, a) => (n(), i("text", {
2595
- x: e.x - 5 + j.value - c.value.individualOffsetX,
2596
- y: v(G)(u.y) + $.value.dataLabels / 3,
2597
- "font-size": $.value.dataLabels,
2598
- "text-anchor": "end",
2599
- fill: e.color
2600
- }, ae(v(pe)(
2601
- t.value.chart.grid.labels.yAxis.formatter,
2602
- u.value,
2603
- v(Be)({
2604
- p: u.prefix,
2605
- v: u.value,
2606
- s: u.suffix,
2607
- r: t.value.chart.grid.labels.yAxis.rounding
2608
- }),
2609
- { datapoint: u.datapoint, seriesIndex: a }
2610
- )), 9, hu))), 256))
2611
- ], 4))), 256))
2612
- ], 64)) : (n(!0), i(x, { key: 1 }, C(ga.value, (e, u) => (n(), i("g", {
2613
- key: `yLabel_${u}`
2614
- }, [
2615
- Ce(e) && e.value >= Ue.value.min && e.value <= Ue.value.max && t.value.chart.grid.labels.yAxis.showCrosshairs ? (n(), i("line", {
2616
- key: 0,
2617
- x1: c.value.left + j.value,
2618
- x2: c.value.left + j.value - t.value.chart.grid.labels.yAxis.crosshairSize,
2619
- y1: v(G)(e.y),
2620
- y2: v(G)(e.y),
2621
- stroke: t.value.chart.grid.stroke,
2622
- "stroke-width": "1",
2623
- "stroke-linecap": "round",
2624
- style: { animation: "none !important" }
2625
- }, null, 8, fu)) : h("", !0),
2626
- e.value >= Ue.value.min && e.value <= Ue.value.max ? (n(), i("text", {
2627
- key: 1,
2628
- x: c.value.scaleLabelX - t.value.chart.grid.labels.yAxis.crosshairSize,
2629
- y: v(E)(e.y + $.value.dataLabels / 3),
2630
- "font-size": $.value.dataLabels,
2631
- "text-anchor": "end",
2632
- fill: t.value.chart.grid.labels.color
2633
- }, ae(Ce(e.value) ? v(pe)(
2634
- t.value.chart.grid.labels.yAxis.formatter,
2635
- e.value,
2636
- v(Be)({
2637
- p: e.prefix,
2638
- v: e.value,
2639
- s: e.suffix,
2640
- r: t.value.chart.grid.labels.yAxis.rounding
2641
- })
2642
- ) : ""), 9, gu)) : h("", !0)
2643
- ]))), 128))
2644
- ], 512)) : h("", !0),
2645
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i("g", {
2646
- key: `serie_plot_${u}`,
2647
- class: Ie(`serie_plot_${u}`),
2648
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2649
- }, [
2650
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i("g", {
2651
- key: `circle_plot_${u}_${s}`
2652
- }, [
2653
- a && Ce(a.value) ? (n(), Ee(Cl, {
2654
- key: 0,
2655
- shape: ["triangle", "square", "diamond", "pentagon", "hexagon", "star"].includes(e.shape) ? e.shape : "circle",
2656
- color: t.value.plot.useGradient ? `url(#plotGradient_${u}_${U.value})` : t.value.plot.dot.useSerieColor ? e.color : t.value.plot.dot.fill,
2657
- plot: { x: v(E)(a.x), y: v(E)(a.y) },
2658
- radius: L.value !== null && L.value === s || P.value !== null && P.value === s ? ($e.value.plot || 6) * 1.5 : $e.value.plot || 6,
2659
- stroke: t.value.plot.dot.useSerieColor ? t.value.chart.backgroundColor : e.color,
2660
- strokeWidth: t.value.plot.dot.strokeWidth,
2661
- transition: v(B) || !t.value.plot.showTransition || L.value !== null && L.value === s || P.value !== null && P.value === s ? void 0 : `all ${t.value.plot.transitionDurationMs}ms ease-in-out`
2662
- }, null, 8, ["shape", "color", "plot", "radius", "stroke", "strokeWidth", "transition"])) : h("", !0),
2663
- a.comment && t.value.chart.comments.show ? (n(), i("foreignObject", {
2664
- key: 1,
2665
- style: { overflow: "visible" },
2666
- height: "12",
2667
- width: t.value.chart.comments.width,
2668
- x: a.x - t.value.chart.comments.width / 2 + t.value.chart.comments.offsetX,
2669
- y: a.y + t.value.chart.comments.offsetY + 6
2670
- }, [
2671
- b("div", xu, [
2672
- J(l.$slots, "plot-comment", {
2673
- plot: { ...a, color: e.color, seriesIndex: u, datapointIndex: s }
2674
- }, void 0, !0)
2675
- ])
2676
- ], 8, mu)) : h("", !0)
2677
- ]))), 128)),
2678
- Object.hasOwn(e, "useProgression") && e.useProgression === !0 && !isNaN(v(ee)(e.plots).trend) ? (n(), i("g", bu, [
2679
- b("defs", null, [
2680
- b("marker", {
2681
- id: `plot_arrow_${u}`,
2682
- markerWidth: 7,
2683
- markerHeight: 7,
2684
- refX: "0",
2685
- refY: 7 / 2,
2686
- orient: "auto"
2687
- }, [
2688
- b("polygon", {
2689
- points: `0 0, 7 ${7 / 2}, 0 7`,
2690
- fill: e.color
2691
- }, null, 8, yu)
2692
- ], 8, pu)
2693
- ]),
2694
- e.plots.length > 1 ? (n(), i("line", {
2695
- key: 0,
2696
- x1: v(ee)(e.plots).x1,
2697
- x2: v(ee)(e.plots).x2,
2698
- y1: v(G)(v(ee)(e.plots).y1),
2699
- y2: v(G)(v(ee)(e.plots).y2),
2700
- "stroke-width": 1,
2701
- stroke: e.color,
2702
- "stroke-dasharray": 2,
2703
- "marker-end": `url(#plot_arrow_${u})`
2704
- }, null, 8, ku)) : h("", !0),
2705
- e.plots.length > 1 ? (n(), i("text", {
2706
- key: 1,
2707
- "text-anchor": "middle",
2708
- x: v(ee)(e.plots).x2,
2709
- y: v(ee)(e.plots).y2 - 6,
2710
- "font-size": $.value.plotLabels,
2711
- fill: e.color
2712
- }, ae(v(Be)({
2713
- v: v(ee)(e.plots).trend * 100,
2714
- s: "%",
2715
- r: 2
2716
- })), 9, wu)) : h("", !0)
2717
- ])) : h("", !0)
2718
- ], 6))), 128)),
2719
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i("g", {
2720
- key: `serie_line_${u}`,
2721
- class: Ie(`serie_line_${u}`),
2722
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2723
- }, [
2724
- e.smooth && e.plots.length > 1 && e.curve ? (n(), i("path", {
2725
- key: 0,
2726
- d: `M${e.curve}`,
2727
- stroke: t.value.chart.backgroundColor,
2728
- "stroke-width": t.value.line.strokeWidth + 1,
2729
- "stroke-dasharray": e.dashed ? t.value.line.strokeWidth * 2 : 0,
2730
- fill: "none",
2731
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2732
- }, null, 12, Su)) : e.plots.length > 1 && e.straight ? (n(), i("path", {
2733
- key: 1,
2734
- d: `M${e.straight}`,
2735
- stroke: t.value.chart.backgroundColor,
2736
- "stroke-width": t.value.line.strokeWidth + 1,
2737
- "stroke-dasharray": e.dashed ? t.value.line.strokeWidth * 2 : 0,
2738
- fill: "none",
2739
- "stroke-linecap": "round",
2740
- "stroke-linejoin": "round",
2741
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2742
- }, null, 12, $u)) : h("", !0)
2743
- ], 6))), 128)),
2744
- l.$slots.pattern ? (n(), i("defs", _u, [
2745
- (n(!0), i(x, null, C(ct.value, (e, u) => J(l.$slots, "pattern", _l({
2746
- key: `serie_pattern_slot_${u}`
2747
- }, { ref_for: !0 }, { ...e, seriesIndex: e.slotAbsoluteIndex, patternId: `pattern_${U.value}_${u}` }), void 0, !0)), 128))
2748
- ])) : h("", !0),
2749
- ba.value.length && !y.value.isStacked ? (n(), i("g", Lu, [
2750
- (n(!0), i(x, null, C(ba.value, (e) => (n(), i("path", {
2751
- key: e.key,
2752
- d: e.d,
2753
- fill: e.color,
2754
- "fill-opacity": t.value.line.interLine.fillOpacity,
2755
- stroke: "none",
2756
- "pointer-events": "none",
2757
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2758
- }, null, 12, Mu))), 128))
2759
- ])) : h("", !0),
2760
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i("g", {
2761
- key: `serie_line_${u}`,
2762
- class: Ie(`serie_line_${u}`),
2763
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2764
- }, [
2765
- e.useArea && e.plots.length > 1 ? (n(), i("g", Cu, [
2766
- e.smooth ? (n(!0), i(x, { key: 0 }, C(e.curveAreas, (a, s) => (n(), i(x, { key: s }, [
2767
- a ? (n(), i("path", {
2768
- key: 0,
2769
- d: a,
2770
- fill: t.value.line.area.useGradient ? `url(#areaGradient_${u}_${U.value})` : v(Ke)(e.color, t.value.line.area.opacity),
2771
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2772
- }, null, 12, Au)) : h("", !0),
2773
- l.$slots.pattern && a ? (n(), i("path", {
2774
- key: 1,
2775
- d: a,
2776
- fill: `url(#pattern_${U.value}_${e.slotAbsoluteIndex})`,
2777
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2778
- }, null, 12, zu)) : h("", !0)
2779
- ], 64))), 128)) : (n(!0), i(x, { key: 1 }, C(e.area.split(";"), (a, s) => (n(), i(x, { key: s }, [
2780
- a ? (n(), i("path", {
2781
- key: 0,
2782
- d: `M${a}Z`,
2783
- fill: t.value.line.area.useGradient ? `url(#areaGradient_${u}_${U.value})` : v(Ke)(e.color, t.value.line.area.opacity),
2784
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2785
- }, null, 12, Iu)) : h("", !0),
2786
- l.$slots.pattern && a ? (n(), i("path", {
2787
- key: 1,
2788
- d: `M${a}Z`,
2789
- fill: `url(#pattern_${U.value}_${e.slotAbsoluteIndex})`,
2790
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2791
- }, null, 12, Tu)) : h("", !0)
2792
- ], 64))), 128))
2793
- ])) : h("", !0),
2794
- e.smooth && e.plots.length > 1 && e.curve ? (n(), i("path", {
2795
- key: 1,
2796
- d: `M${e.curve}`,
2797
- stroke: e.color,
2798
- "stroke-width": t.value.line.strokeWidth,
2799
- "stroke-dasharray": e.dashed ? t.value.line.strokeWidth * 2 : 0,
2800
- fill: "none",
2801
- "stroke-linecap": "round",
2802
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2803
- }, null, 12, Nu)) : e.plots.length > 1 && e.straight ? (n(), i("path", {
2804
- key: 2,
2805
- d: `M${e.straight}`,
2806
- stroke: e.color,
2807
- "stroke-width": t.value.line.strokeWidth,
2808
- "stroke-dasharray": e.dashed ? t.value.line.strokeWidth * 2 : 0,
2809
- fill: "none",
2810
- "stroke-linecap": "round",
2811
- "stroke-linejoin": "round",
2812
- style: _({ transition: v(B) || !t.value.line.showTransition ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out` })
2813
- }, null, 12, Ru)) : h("", !0),
2814
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
2815
- key: `circle_line_${u}_${s}`
2816
- }, [
2817
- !ha.value.linePlot && a && Ce(a.value) || ha.value.linePlot && a && Ce(a.value) && (L.value !== null && L.value === s || P.value !== null && P.value === s) || xa(e.plots, s) ? (n(), Ee(Cl, {
2818
- key: 0,
2819
- shape: ["triangle", "square", "diamond", "pentagon", "hexagon", "star"].includes(e.shape) ? e.shape : "circle",
2820
- color: t.value.line.useGradient ? `url(#lineGradient_${u}_${U.value})` : t.value.line.dot.useSerieColor ? e.color : t.value.line.dot.fill,
2821
- plot: { x: v(E)(a.x), y: v(E)(a.y) },
2822
- radius: L.value !== null && L.value === s || P.value !== null && P.value === s ? ($e.value.line || 6) * 1.5 : (xa(e.plots, s), $e.value.line || 6),
2823
- stroke: t.value.line.dot.useSerieColor ? t.value.chart.backgroundColor : e.color,
2824
- strokeWidth: t.value.line.dot.strokeWidth,
2825
- transition: v(B) || !t.value.line.showTransition || L.value !== null && L.value === s || P.value !== null && P.value === s ? void 0 : `all ${t.value.line.transitionDurationMs}ms ease-in-out`
2826
- }, null, 8, ["shape", "color", "plot", "radius", "stroke", "strokeWidth", "transition"])) : h("", !0),
2827
- a.comment && t.value.chart.comments.show ? (n(), i("foreignObject", {
2828
- key: 1,
2829
- style: { overflow: "visible" },
2830
- height: "12",
2831
- width: t.value.chart.comments.width,
2832
- x: a.x - t.value.chart.comments.width / 2 + t.value.chart.comments.offsetX,
2833
- y: a.y + t.value.chart.comments.offsetY + 6
2834
- }, [
2835
- b("div", Ou, [
2836
- J(l.$slots, "plot-comment", {
2837
- plot: { ...a, color: e.color, seriesIndex: u, datapointIndex: s }
2838
- }, void 0, !0)
2839
- ])
2840
- ], 8, Pu)) : h("", !0)
2841
- ], 64))), 128)),
2842
- Object.hasOwn(e, "useProgression") && e.useProgression === !0 && !isNaN(v(ee)(e.plots).trend) ? (n(), i("g", Hu, [
2843
- b("defs", null, [
2844
- b("marker", {
2845
- id: `line_arrow_${u}`,
2846
- markerWidth: 7,
2847
- markerHeight: 7,
2848
- refX: "0",
2849
- refY: 7 / 2,
2850
- orient: "auto"
2851
- }, [
2852
- b("polygon", {
2853
- points: `0 0, 7 ${7 / 2}, 0 7`,
2854
- fill: e.color
2855
- }, null, 8, Eu)
2856
- ], 8, Vu)
2857
- ]),
2858
- e.plots.length > 1 ? (n(), i("line", {
2859
- key: 0,
2860
- x1: v(ee)(e.plots).x1,
2861
- x2: v(ee)(e.plots).x2,
2862
- y1: v(G)(v(ee)(e.plots).y1),
2863
- y2: v(G)(v(ee)(e.plots).y2),
2864
- "stroke-width": 1,
2865
- stroke: e.color,
2866
- "stroke-dasharray": 2,
2867
- "marker-end": `url(#line_arrow_${u})`
2868
- }, null, 8, Bu)) : h("", !0),
2869
- e.plots.length > 1 ? (n(), i("text", {
2870
- key: 1,
2871
- "text-anchor": "middle",
2872
- x: v(ee)(e.plots).x2,
2873
- y: v(ee)(e.plots).y2 - 6,
2874
- "font-size": $.value.plotLabels,
2875
- fill: e.color
2876
- }, ae(v(Be)({
2877
- v: v(ee)(e.plots).trend * 100,
2878
- s: "%",
2879
- r: 2
2880
- })), 9, Fu)) : h("", !0)
2881
- ])) : h("", !0)
2882
- ], 6))), 128)),
2883
- (t.value.bar.labels.show || t.value.bar.serieName.show) && y.value.dataLabels.show ? (n(), i("g", Wu, [
2884
- (n(!0), i(x, null, C(vt.value, (e, u) => (n(), i(x, {
2885
- key: `xLabel_bar_${u}`
2886
- }, [
2887
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
2888
- key: `xLabel_bar_${u}_${s}`
2889
- }, [
2890
- a && (!Object.hasOwn(e, "dataLabels") || e.dataLabels === !0 || L.value !== null && L.value === s || P.value !== null && P.value === s) && t.value.bar.labels.show ? (n(), i("text", {
2891
- key: 0,
2892
- x: y.value.useIndividualScale && y.value.isStacked ? a.x + le.value.line / 2 : pl(a) + Dt() / 2 - yl.value / 2,
2893
- y: v(E)(a.y) + (a.value >= 0 ? t.value.bar.labels.offsetY : -t.value.bar.labels.offsetY * 3),
2894
- "text-anchor": "middle",
2895
- "font-size": $.value.plotLabels,
2896
- fill: t.value.bar.labels.color,
2897
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2898
- }, ae(Ce(a.value) ? v(pe)(
2899
- t.value.bar.labels.formatter,
2900
- a.value,
2901
- v(Be)({
2902
- p: e.prefix || t.value.chart.labels.prefix,
2903
- v: a.value,
2904
- s: e.suffix || t.value.chart.labels.suffix,
2905
- r: t.value.bar.labels.rounding
2906
- }),
2907
- {
2908
- datapoint: a,
2909
- serie: e
2910
- }
2911
- ) : ""), 13, Du)) : h("", !0),
2912
- a && t.value.bar.serieName.show ? (n(), i("text", {
2913
- key: 1,
2914
- x: y.value.useIndividualScale && y.value.isStacked ? a.x + le.value.line / 2 : a.x + Dt() * 1.1,
2915
- y: a.y + (a.value > 0 ? t.value.bar.serieName.offsetY : -t.value.bar.serieName.offsetY * 3),
2916
- "text-anchor": "middle",
2917
- "font-size": $.value.plotLabels,
2918
- fill: t.value.bar.serieName.useSerieColor ? e.color : t.value.bar.serieName.color,
2919
- "font-weight": t.value.bar.serieName.bold ? "bold" : "normal",
2920
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2921
- }, ae(t.value.bar.serieName.useAbbreviation ? v(To)({
2922
- source: e.name,
2923
- length: t.value.bar.serieName.abbreviationSize
2924
- }) : e.name), 13, Yu)) : h("", !0)
2925
- ], 64))), 128))
2926
- ], 64))), 128))
2927
- ])) : h("", !0),
2928
- t.value.plot.labels.show && y.value.dataLabels.show ? (n(), i("g", Xu, [
2929
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i(x, {
2930
- key: `xLabel_plot_${u}`
2931
- }, [
2932
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
2933
- key: `xLabel_plot_${u}_${s}`
2934
- }, [
2935
- a && !Object.hasOwn(e, "dataLabels") || e.dataLabels === !0 || L.value !== null && L.value === s || P.value !== null && P.value === s ? (n(), i("text", {
2936
- key: 0,
2937
- x: a.x,
2938
- y: a.y + t.value.plot.labels.offsetY,
2939
- "text-anchor": "middle",
2940
- "font-size": $.value.plotLabels,
2941
- fill: t.value.plot.labels.color,
2942
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2943
- }, ae(Ce(a.value) ? v(pe)(
2944
- t.value.plot.labels.formatter,
2945
- a.value,
2946
- v(Be)({
2947
- p: e.prefix || t.value.chart.labels.prefix,
2948
- v: a.value,
2949
- s: e.suffix || t.value.chart.labels.suffix,
2950
- r: t.value.plot.labels.rounding
2951
- }),
2952
- {
2953
- datapoint: a,
2954
- serie: e
2955
- }
2956
- ) : ""), 13, Gu)) : h("", !0)
2957
- ], 64))), 128))
2958
- ], 64))), 128))
2959
- ])) : (n(), i("g", Uu, [
2960
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i(x, {
2961
- key: `xLabel_plot_${u}`
2962
- }, [
2963
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
2964
- key: `xLabel_plot_${u}_${s}`
2965
- }, [
2966
- t.value.plot.tag.followValue ? (n(), i(x, { key: 1 }, [
2967
- [P.value, L.value, De.value].includes(s) && e.useTag ? (n(), i("line", {
2968
- key: 0,
2969
- class: "vue-ui-xy-tag-plot",
2970
- x1: c.value.left,
2971
- x2: c.value.right,
2972
- y1: a.y,
2973
- y2: a.y,
2974
- "stroke-width": 1,
2975
- "stroke-linecap": "round",
2976
- "stroke-dasharray": "2",
2977
- stroke: e.color
2978
- }, null, 8, Qu)) : h("", !0)
2979
- ], 64)) : (n(), i(x, { key: 0 }, [
2980
- a && s === 0 && e.useTag && e.useTag === "start" ? (n(), i("foreignObject", {
2981
- key: 0,
2982
- x: a.x,
2983
- y: a.y - 20,
2984
- height: 24,
2985
- width: "150",
2986
- style: _(`overflow: visible; opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2987
- }, [
2988
- b("div", {
2989
- style: _(`padding: 3px; background:${v(Ke)(e.color, 80)};color:${v(Je)(e.color)};width:fit-content;font-size:${$.value.plotLabels}px;border-radius: 2px;`),
2990
- innerHTML: v(pe)(
2991
- t.value.plot.tag.formatter,
2992
- a.value,
2993
- e.name,
2994
- {
2995
- datapoint: a,
2996
- seriesIndex: s,
2997
- serieName: e.name
2998
- }
2999
- )
3000
- }, null, 12, qu)
3001
- ], 12, Zu)) : h("", !0),
3002
- a && s === e.plots.length - 1 && e.useTag && e.useTag === "end" ? (n(), i("foreignObject", {
3003
- key: 1,
3004
- x: a.x - e.name.length * ($.value.plotLabels / 2),
3005
- y: a.y - 20,
3006
- height: 24,
3007
- width: "150",
3008
- style: _(`overflow: visible; opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3009
- }, [
3010
- b("div", {
3011
- style: _(`padding: 3px; background:${v(Ke)(e.color, 80)};color:${v(Je)(e.color)};width:fit-content;font-size:${$.value.plotLabels}px;border-radius: 2px;`),
3012
- innerHTML: v(pe)(
3013
- t.value.plot.tag.formatter,
3014
- a.value,
3015
- e.name,
3016
- {
3017
- datapoint: a,
3018
- seriesIndex: s,
3019
- serieName: e.name
3020
- }
3021
- )
3022
- }, null, 12, Ju)
3023
- ], 12, Ku)) : h("", !0)
3024
- ], 64))
3025
- ], 64))), 128))
3026
- ], 64))), 128))
3027
- ])),
3028
- t.value.line.labels.show && y.value.dataLabels.show ? (n(), i("g", ju, [
3029
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i(x, {
3030
- key: `xLabel_line_${u}`
3031
- }, [
3032
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3033
- key: `xLabel_line_${u}_${s}`
3034
- }, [
3035
- a && !Object.hasOwn(e, "dataLabels") || e.dataLabels === !0 || L.value !== null && L.value === s || P.value !== null && P.value === s ? (n(), i("text", {
3036
- key: 0,
3037
- x: a.x,
3038
- y: a.y + (a.value >= 0 ? t.value.line.labels.offsetY : -t.value.line.labels.offsetY * 3),
3039
- "text-anchor": "middle",
3040
- "font-size": $.value.plotLabels,
3041
- fill: t.value.line.labels.color,
3042
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3043
- }, ae(Ce(a.value) ? v(pe)(
3044
- t.value.line.labels.formatter,
3045
- a.value,
3046
- v(Be)({
3047
- p: e.prefix || t.value.chart.labels.prefix,
3048
- v: a.value,
3049
- s: e.suffix || t.value.chart.labels.suffix,
3050
- r: t.value.line.labels.rounding
3051
- }),
3052
- {
3053
- datapoint: a,
3054
- serie: e
3055
- }
3056
- ) : ""), 13, ei)) : h("", !0)
3057
- ], 64))), 128))
3058
- ], 64))), 128))
3059
- ])) : (n(), i("g", ti, [
3060
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i(x, {
3061
- key: `xLabel_line_${u}`
3062
- }, [
3063
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3064
- key: `xLabel_line_${u}_${s}`
3065
- }, [
3066
- t.value.line.tag.followValue ? (n(), i(x, { key: 1 }, [
3067
- [P.value, L.value, De.value].includes(s) && e.useTag ? (n(), i("line", {
3068
- key: 0,
3069
- class: "vue-ui-xy-tag-line",
3070
- x1: c.value.left,
3071
- x2: c.value.right,
3072
- y1: a.y,
3073
- y2: a.y,
3074
- "stroke-width": 1,
3075
- "stroke-linecap": "round",
3076
- "stroke-dasharray": "2",
3077
- stroke: e.color
3078
- }, null, 8, ui)) : h("", !0)
3079
- ], 64)) : (n(), i(x, { key: 0 }, [
3080
- a && s === 0 && e.useTag && e.useTag === "start" ? (n(), i("foreignObject", {
3081
- key: 0,
3082
- x: a.x,
3083
- y: a.y - 20,
3084
- height: 24,
3085
- width: "150",
3086
- style: _(`overflow: visible; opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3087
- }, [
3088
- b("div", {
3089
- style: _(`padding: 3px; background:${v(Ke)(e.color, 80)};color:${v(Je)(e.color)};width:fit-content;font-size:${$.value.plotLabels}px;border-radius: 2px;`),
3090
- innerHTML: v(pe)(
3091
- t.value.line.tag.formatter,
3092
- a.value,
3093
- e.name,
3094
- {
3095
- datapoint: a,
3096
- seriesIndex: s,
3097
- serieName: e.name
3098
- }
3099
- )
3100
- }, null, 12, ai)
3101
- ], 12, li)) : h("", !0),
3102
- a && s === e.plots.length - 1 && e.useTag && e.useTag === "end" ? (n(), i("foreignObject", {
3103
- key: 1,
3104
- x: a.x,
3105
- y: a.y - 20,
3106
- height: 24,
3107
- width: "150",
3108
- style: _(`overflow: visible; opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3109
- }, [
3110
- b("div", {
3111
- style: _(`padding: 3px; background:${v(Ke)(e.color, 80)};color:${v(Je)(e.color)};width:fit-content;font-size:${$.value.plotLabels}px;border-radius: 2px;`),
3112
- innerHTML: v(pe)(
3113
- t.value.line.tag.formatter,
3114
- a.value,
3115
- e.name,
3116
- {
3117
- datapoint: a,
3118
- seriesIndex: s,
3119
- serieName: e.name
3120
- }
3121
- )
3122
- }, null, 12, ni)
3123
- ], 12, oi)) : h("", !0)
3124
- ], 64))
3125
- ], 64))), 128))
3126
- ], 64))), 128))
3127
- ])),
3128
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i(x, {
3129
- key: `xLabel_line_${u}`
3130
- }, [
3131
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3132
- key: `xLabel_line_${u}_${s}`
3133
- }, [
3134
- a && s === 0 && e.showSerieName && e.showSerieName === "start" ? (n(), i("text", {
3135
- key: 0,
3136
- x: a.x - $.value.plotLabels,
3137
- y: a.y,
3138
- "font-size": $.value.plotLabels,
3139
- "text-anchor": "end",
3140
- fill: e.color,
3141
- innerHTML: v(Ml)({
3142
- content: e.name,
3143
- fontSize: $.value.plotLabels,
3144
- fill: e.color,
3145
- x: a.x - $.value.plotLabels,
3146
- y: a.y,
3147
- maxWords: 2
3148
- }),
3149
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3150
- }, null, 12, ii)) : h("", !0),
3151
- a && s === e.plots.length - 1 && e.showSerieName && e.showSerieName === "end" ? (n(), i("text", {
3152
- key: 1,
3153
- x: a.x + $.value.plotLabels,
3154
- y: a.y,
3155
- "font-size": $.value.plotLabels,
3156
- "text-anchor": "start",
3157
- fill: e.color,
3158
- innerHTML: v(Ml)({
3159
- content: e.name,
3160
- fontSize: $.value.plotLabels,
3161
- fill: e.color,
3162
- x: a.x + $.value.plotLabels,
3163
- y: a.y,
3164
- maxWords: 2
3165
- }),
3166
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3167
- }, null, 12, si)) : h("", !0)
3168
- ], 64))), 128))
3169
- ], 64))), 128)),
3170
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i(x, {
3171
- key: `xLabel_plot_${u}`
3172
- }, [
3173
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3174
- key: `xLabel_plot_${u}_${s}`
3175
- }, [
3176
- a && s === 0 && e.showSerieName && e.showSerieName === "start" ? (n(), i("text", {
3177
- key: 0,
3178
- x: a.x - $.value.plotLabels,
3179
- y: a.y,
3180
- "font-size": $.value.plotLabels,
3181
- "text-anchor": "end",
3182
- fill: e.color,
3183
- innerHTML: v(Ml)({
3184
- content: e.name,
3185
- fontSize: $.value.plotLabels,
3186
- fill: e.color,
3187
- x: a.x - $.value.plotLabels,
3188
- y: a.y,
3189
- maxWords: 2
3190
- }),
3191
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3192
- }, null, 12, ri)) : h("", !0),
3193
- a && s === e.plots.length - 1 && e.showSerieName && e.showSerieName === "end" ? (n(), i("text", {
3194
- key: 1,
3195
- x: a.x + $.value.plotLabels,
3196
- y: a.y,
3197
- "font-size": $.value.plotLabels,
3198
- "text-anchor": "start",
3199
- fill: e.color,
3200
- innerHTML: v(Ml)({
3201
- content: e.name,
3202
- fontSize: $.value.plotLabels,
3203
- fill: e.color,
3204
- x: a.x + $.value.plotLabels,
3205
- y: a.y,
3206
- maxWords: 2
3207
- }),
3208
- style: _(`opacity:${A.value ? A.value === e.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
3209
- }, null, 12, ci)) : h("", !0)
3210
- ], 64))), 128))
3211
- ], 64))), 128)),
3212
- y.value.useIndividualScale && !y.value.isStacked ? (n(), i(x, { key: 13 }, [
3213
- b("defs", null, [
3214
- (n(!0), i(x, null, C(al.value, (e, u) => (n(), i("linearGradient", {
3215
- id: `individual_scale_gradient_${U.value}_${u}`,
3216
- x1: "0%",
3217
- x2: "100%",
3218
- y1: "0%",
3219
- y2: "0%"
3220
- }, [
3221
- b("stop", {
3222
- offset: "0%",
3223
- "stop-color": t.value.chart.backgroundColor,
3224
- "stop-opacity": "0"
3225
- }, null, 8, di),
3226
- b("stop", {
3227
- offset: "100%",
3228
- "stop-color": e.color,
3229
- "stop-opacity": "0.2"
3230
- }, null, 8, hi)
3231
- ], 8, vi))), 256))
3232
- ]),
3233
- (n(!0), i(x, null, C(al.value, (e, u) => (n(), i("rect", {
3234
- x: e.x - t.value.chart.grid.labels.yAxis.labelWidth + j.value - c.value.individualOffsetX,
3235
- y: c.value.top,
3236
- width: t.value.chart.grid.labels.yAxis.labelWidth + c.value.individualOffsetX,
3237
- height: c.value.height < 0 ? 10 : c.value.height,
3238
- fill: A.value === e.groupId ? `url(#individual_scale_gradient_${U.value}_${u})` : "transparent",
3239
- onMouseenter: (a) => A.value = e.groupId,
3240
- onMouseleave: r[0] || (r[0] = (a) => A.value = null)
3241
- }, null, 40, fi))), 256))
3242
- ], 64)) : h("", !0),
3243
- b("g", null, [
3244
- t.value.chart.grid.labels.axis.yLabel && !y.value.useIndividualScale ? (n(), i("text", {
3245
- key: 0,
3246
- ref_key: "yAxisLabel",
3247
- ref: Vt,
3248
- "font-size": $.value.yAxis,
3249
- fill: t.value.chart.grid.labels.color,
3250
- transform: `translate(${t.value.chart.grid.labels.axis.fontSize}, ${c.value.top + c.value.height / 2}) rotate(-90)`,
3251
- "text-anchor": "middle",
3252
- style: { transition: "none" }
3253
- }, ae(t.value.chart.grid.labels.axis.yLabel), 9, gi)) : h("", !0),
3254
- t.value.chart.grid.labels.axis.xLabel ? (n(), i("text", {
3255
- key: 1,
3256
- ref_key: "xAxisLabel",
3257
- ref: Ne,
3258
- "text-anchor": "middle",
3259
- x: ne.value / 2,
3260
- y: oe.value - 3,
3261
- "font-size": $.value.yAxis,
3262
- fill: t.value.chart.grid.labels.color
3263
- }, ae(t.value.chart.grid.labels.axis.xLabel), 9, mi)) : h("", !0)
3264
- ]),
3265
- t.value.chart.grid.labels.xAxisLabels.show ? (n(), i("g", {
3266
- key: 14,
3267
- ref_key: "timeLabelsEls",
3268
- ref: ut
3269
- }, [
3270
- l.$slots["time-label"] ? (n(!0), i(x, { key: 0 }, C(Vl.value, (e, u) => J(l.$slots, "time-label", _l({
3271
- key: `time_label_${u}`,
3272
- ref_for: !0
3273
- }, {
3274
- x: c.value.left + c.value.width / N.value * u + c.value.width / N.value / 2,
3275
- y: c.value.bottom,
3276
- fontSize: $.value.xAxis,
3277
- fill: t.value.chart.grid.labels.xAxisLabels.color,
3278
- transform: `translate(${c.value.left + c.value.width / N.value * u + c.value.width / N.value / 2}, ${c.value.bottom + $.value.xAxis * 1.3 + t.value.chart.grid.labels.xAxisLabels.yOffset}), rotate(${t.value.chart.grid.labels.xAxisLabels.rotation})`,
3279
- absoluteIndex: e.absoluteIndex,
3280
- content: e.text,
3281
- textAnchor: t.value.chart.grid.labels.xAxisLabels.rotation > 0 ? "start" : t.value.chart.grid.labels.xAxisLabels.rotation < 0 ? "end" : "middle",
3282
- show: e && e.text
3283
- }), void 0, !0)), 128)) : (n(!0), i(x, { key: 1 }, C(Vl.value, (e, u) => (n(), i("g", {
3284
- key: `time_label_${u}`
3285
- }, [
3286
- e && e.text ? (n(), i(x, { key: 0 }, [
3287
- String(e.text).includes(`
3288
- `) ? (n(), i("text", {
3289
- key: 1,
3290
- class: "vue-data-ui-time-label",
3291
- "text-anchor": t.value.chart.grid.labels.xAxisLabels.rotation > 0 ? "start" : t.value.chart.grid.labels.xAxisLabels.rotation < 0 ? "end" : "middle",
3292
- "font-size": $.value.xAxis,
3293
- fill: t.value.chart.grid.labels.xAxisLabels.color,
3294
- transform: `translate(${c.value.left + c.value.width / N.value * u + c.value.width / N.value / 2}, ${c.value.bottom + $.value.xAxis * 1.5}), rotate(${t.value.chart.grid.labels.xAxisLabels.rotation})`,
3295
- style: _({
3296
- cursor: Jl() ? "pointer" : "default"
3297
- }),
3298
- innerHTML: v(No)({
3299
- content: String(e.text),
3300
- fontSize: $.value.xAxis,
3301
- fill: t.value.chart.grid.labels.xAxisLabels.color,
3302
- x: 0,
3303
- y: 0
3304
- }),
3305
- onClick: () => la(e, u)
3306
- }, null, 12, bi)) : (n(), i("text", {
3307
- key: 0,
3308
- class: "vue-data-ui-time-label",
3309
- "text-anchor": t.value.chart.grid.labels.xAxisLabels.rotation > 0 ? "start" : t.value.chart.grid.labels.xAxisLabels.rotation < 0 ? "end" : "middle",
3310
- "font-size": $.value.xAxis,
3311
- fill: t.value.chart.grid.labels.xAxisLabels.color,
3312
- transform: `translate(${c.value.left + c.value.width / N.value * u + c.value.width / N.value / 2}, ${c.value.bottom + $.value.xAxis * 1.5}), rotate(${t.value.chart.grid.labels.xAxisLabels.rotation})`,
3313
- style: _({
3314
- cursor: Jl() ? "pointer" : "default"
3315
- }),
3316
- onClick: () => la(e, u)
3317
- }, ae(e.text || ""), 13, xi))
3318
- ], 64)) : h("", !0)
3319
- ]))), 128))
3320
- ], 512)) : h("", !0),
3321
- ma.value.length && !y.value.isStacked ? (n(), i("g", pi, [
3322
- (n(!0), i(x, null, C(ma.value, (e) => (n(), i("g", {
3323
- key: e.uid
3324
- }, [
3325
- e.yTop && e.show && isFinite(e.yTop) ? (n(), i("line", {
3326
- key: 0,
3327
- x1: e.x1,
3328
- y1: e.yTop,
3329
- x2: e.x2,
3330
- y2: e.yTop,
3331
- stroke: e.config.line.stroke,
3332
- "stroke-width": e.config.line.strokeWidth,
3333
- "stroke-dasharray": e.config.line.strokeDasharray,
3334
- "stroke-linecap": "round",
3335
- style: { animation: "none !important" }
3336
- }, null, 8, yi)) : h("", !0),
3337
- e.yBottom && e.show && isFinite(e.yBottom) ? (n(), i("line", {
3338
- key: 1,
3339
- x1: e.x1,
3340
- y1: e.yBottom,
3341
- x2: e.x2,
3342
- y2: e.yBottom,
3343
- stroke: e.config.line.stroke,
3344
- "stroke-width": e.config.line.strokeWidth,
3345
- "stroke-dasharray": e.config.line.strokeDasharray,
3346
- "stroke-linecap": "round",
3347
- style: { animation: "none !important" }
3348
- }, null, 8, ki)) : h("", !0),
3349
- e.hasArea && e.show && isFinite(e.yTop) && isFinite(e.yBottom) ? (n(), i("rect", {
3350
- key: 2,
3351
- y: Math.min(e.yTop, e.yBottom),
3352
- x: e.x1,
3353
- width: c.value.width,
3354
- height: v(E)(e.areaHeight, 0),
3355
- fill: v(Ke)(e.config.area.fill, e.config.area.opacity),
3356
- style: { animation: "none !important" }
3357
- }, null, 8, wi)) : h("", !0),
3358
- e.config.label.text && e.show && isFinite(e._box.y) ? (n(), i("rect", _l({
3359
- key: 3,
3360
- class: "vue-ui-xy-annotation-label-box"
3361
- }, { ref_for: !0 }, e._box, { style: { animation: "none !important", transition: "none !important" } }), null, 16)) : h("", !0),
3362
- e.config.label.text && e.show && isFinite(e._text.y) ? (n(), i("text", {
3363
- key: 4,
3364
- id: e.id,
3365
- class: "vue-ui-xy-annotation-label",
3366
- x: e._text.x,
3367
- y: e._text.y,
3368
- "font-size": e.config.label.fontSize,
3369
- fill: e.config.label.color,
3370
- "text-anchor": e.config.label.textAnchor
3371
- }, ae(e.config.label.text), 9, Si)) : h("", !0)
3372
- ]))), 128))
3373
- ])) : h("", !0),
3374
- t.value.chart.timeTag.show && (![null, void 0].includes(L.value) || ![null, void 0].includes(P.value)) ? (n(), i("g", $i, [
3375
- (n(), i("foreignObject", {
3376
- x: c.value.left + c.value.width / N.value * ((L.value !== null ? L.value : 0) || (P.value !== null ? P.value : 0)) - 100 + c.value.width / N.value / 2,
3377
- y: c.value.bottom,
3378
- width: "200",
3379
- height: "40",
3380
- style: { overflow: "visible !important" }
3381
- }, [
3382
- b("div", {
3383
- class: "vue-ui-xy-time-tag",
3384
- style: _(`width: fit-content;margin: 0 auto;text-align:center;padding:3px 12px;background:${t.value.chart.timeTag.backgroundColor};color:${t.value.chart.timeTag.color};font-size:${t.value.chart.timeTag.fontSize}px`),
3385
- innerHTML: ro.value
3386
- }, null, 12, Li)
3387
- ], 8, _i)),
3388
- b("circle", {
3389
- cx: c.value.left + c.value.width / N.value * ((L.value !== null ? L.value : 0) || (P.value !== null ? P.value : 0)) + c.value.width / N.value / 2,
3390
- cy: c.value.bottom,
3391
- r: t.value.chart.timeTag.circleMarker.radius,
3392
- fill: t.value.chart.timeTag.circleMarker.color
3393
- }, null, 8, Mi)
3394
- ])) : h("", !0)
3395
- ])) : h("", !0),
3396
- bt.value ? (n(), i("rect", dt(_l({ key: 2 }, Pl.value)), null, 16)) : h("", !0),
3397
- J(l.$slots, "svg", { svg: hl.value }, void 0, !0)
3398
- ], 512)
3399
- ], 46, xn)),
3400
- l.$slots.watermark ? (n(), i("div", Ci, [
3401
- J(l.$slots, "watermark", dt(wt({ isPrinting: v(el) || v(Gl) })), void 0, !0)
3402
- ])) : h("", !0),
3403
- (n(!0), i(x, null, C(_e.value, (e, u) => (n(), i(x, {
3404
- key: `tag_line_${u}`
3405
- }, [
3406
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3407
- key: `tag_line_${u}_${s}`
3408
- }, [
3409
- [P.value, L.value, De.value].includes(s) && e.useTag && e.useTag === "end" && t.value.line.tag.followValue ? (n(), i("div", {
3410
- key: 0,
3411
- ref_for: !0,
3412
- ref: (o) => xl(u, s, o, "right", "line"),
3413
- class: "vue-ui-xy-tag",
3414
- "data-tag": "right",
3415
- style: _({
3416
- position: "fixed",
3417
- top: v(St)({
3418
- svgElement: ye.value,
3419
- x: c.value.right + t.value.line.tag.fontSize / 1.5,
3420
- y: a.y,
3421
- element: Xe.value[`${u}_${s}_right_line`],
3422
- position: "right"
3423
- }).top + "px",
3424
- left: v(St)({
3425
- svgElement: ye.value,
3426
- x: c.value.right + t.value.line.tag.fontSize / 1.5,
3427
- y: a.y,
3428
- element: Xe.value[`${u}_${s}_right_line`],
3429
- position: "right"
3430
- }).left + "px",
3431
- height: "fit-content",
3432
- width: "fit-content",
3433
- background: e.color,
3434
- color: v(Je)(e.color),
3435
- padding: "0 6px",
3436
- fontSize: t.value.line.tag.fontSize + "px",
3437
- opacity: 1
3438
- })
3439
- }, [
3440
- (n(), i("svg", Ai, [
3441
- b("path", {
3442
- d: "M 0,10 10,0 10,20 Z",
3443
- fill: e.color,
3444
- stroke: "none"
3445
- }, null, 8, zi)
3446
- ])),
3447
- b("div", {
3448
- class: "vue-ui-xy-tag-content",
3449
- innerHTML: v(pe)(
3450
- t.value.line.tag.formatter,
3451
- a.value,
3452
- e.name,
3453
- {
3454
- datapoint: a,
3455
- seriesIndex: s,
3456
- serieName: e.name
3457
- }
3458
- )
3459
- }, null, 8, Ii)
3460
- ], 4)) : h("", !0),
3461
- [P.value, L.value, De.value].includes(s) && e.useTag && e.useTag === "start" && t.value.line.tag.followValue ? (n(), i("div", {
3462
- key: 1,
3463
- ref_for: !0,
3464
- ref: (o) => xl(u, s, o, "left", "line"),
3465
- class: "vue-ui-xy-tag",
3466
- "data-tag": "left",
3467
- style: _({
3468
- position: "fixed",
3469
- top: v(St)({
3470
- svgElement: ye.value,
3471
- x: c.value.left - t.value.line.tag.fontSize / 1.5,
3472
- y: a.y,
3473
- element: Xe.value[`${u}_${s}_left_line`],
3474
- position: "left"
3475
- }).top + "px",
3476
- left: v(St)({
3477
- svgElement: ye.value,
3478
- x: c.value.left - t.value.line.tag.fontSize / 1.5,
3479
- y: a.y,
3480
- element: Xe.value[`${u}_${s}_left_line`],
3481
- position: "left"
3482
- }).left + "px",
3483
- height: "fit-content",
3484
- width: "fit-content",
3485
- background: e.color,
3486
- color: v(Je)(e.color),
3487
- padding: "0 6px",
3488
- fontSize: t.value.line.tag.fontSize + "px",
3489
- opacity: 1
3490
- })
3491
- }, [
3492
- (n(), i("svg", Ti, [
3493
- b("path", {
3494
- d: "M 0,0 10,10 0,20 Z",
3495
- fill: e.color,
3496
- stroke: "none"
3497
- }, null, 8, Ni)
3498
- ])),
3499
- b("div", {
3500
- class: "vue-ui-xy-tag-content",
3501
- innerHTML: v(pe)(
3502
- t.value.line.tag.formatter,
3503
- a.value,
3504
- e.name,
3505
- {
3506
- datapoint: a,
3507
- seriesIndex: s,
3508
- serieName: e.name
3509
- }
3510
- )
3511
- }, null, 8, Ri)
3512
- ], 4)) : h("", !0)
3513
- ], 64))), 128))
3514
- ], 64))), 128)),
3515
- (n(!0), i(x, null, C(Ze.value, (e, u) => (n(), i(x, {
3516
- key: `tag_plot_${u}`
3517
- }, [
3518
- (n(!0), i(x, null, C(e.plots, (a, s) => (n(), i(x, {
3519
- key: `tag_plot_${u}_${s}`
3520
- }, [
3521
- [P.value, L.value, De.value].includes(s) && e.useTag && e.useTag === "end" && t.value.plot.tag.followValue ? (n(), i("div", {
3522
- key: 0,
3523
- ref_for: !0,
3524
- ref: (o) => xl(u, s, o, "right", "plot"),
3525
- class: "vue-ui-xy-tag",
3526
- "data-tag": "right",
3527
- style: _({
3528
- position: "fixed",
3529
- top: v(St)({
3530
- svgElement: ye.value,
3531
- x: c.value.right + t.value.plot.tag.fontSize / 1.5,
3532
- y: a.y,
3533
- element: Xe.value[`${u}_${s}_right_plot`],
3534
- position: "right"
3535
- }).top + "px",
3536
- left: v(St)({
3537
- svgElement: ye.value,
3538
- x: c.value.right + t.value.plot.tag.fontSize / 1.5,
3539
- y: a.y,
3540
- element: Xe.value[`${u}_${s}_right_plot`],
3541
- position: "right"
3542
- }).left + "px",
3543
- height: "fit-content",
3544
- width: "fit-content",
3545
- background: e.color,
3546
- color: v(Je)(e.color),
3547
- padding: "0 6px",
3548
- fontSize: t.value.plot.tag.fontSize + "px",
3549
- opacity: 1
3550
- })
3551
- }, [
3552
- (n(), i("svg", Pi, [
3553
- b("path", {
3554
- d: "M 0,10 10,0 10,20 Z",
3555
- fill: e.color,
3556
- stroke: "none"
3557
- }, null, 8, Oi)
3558
- ])),
3559
- b("div", {
3560
- class: "vue-ui-xy-tag-content",
3561
- innerHTML: v(pe)(
3562
- t.value.plot.tag.formatter,
3563
- a.value,
3564
- e.name,
3565
- {
3566
- datapoint: a,
3567
- seriesIndex: s,
3568
- serieName: e.name
3569
- }
3570
- )
3571
- }, null, 8, Hi)
3572
- ], 4)) : h("", !0),
3573
- [P.value, L.value, De.value].includes(s) && e.useTag && e.useTag === "start" && t.value.plot.tag.followValue ? (n(), i("div", {
3574
- key: 1,
3575
- ref_for: !0,
3576
- ref: (o) => xl(u, s, o, "left", "plot"),
3577
- class: "vue-ui-xy-tag",
3578
- "data-tag": "left",
3579
- style: _({
3580
- position: "fixed",
3581
- top: v(St)({
3582
- svgElement: ye.value,
3583
- x: c.value.left - t.value.plot.tag.fontSize / 1.5,
3584
- y: a.y,
3585
- element: Xe.value[`${u}_${s}_left_plot`],
3586
- position: "left"
3587
- }).top + "px",
3588
- left: v(St)({
3589
- svgElement: ye.value,
3590
- x: c.value.left - t.value.plot.tag.fontSize / 1.5,
3591
- y: a.y,
3592
- element: Xe.value[`${u}_${s}_left_plot`],
3593
- position: "left"
3594
- }).left + "px",
3595
- height: "fit-content",
3596
- width: "fit-content",
3597
- background: e.color,
3598
- color: v(Je)(e.color),
3599
- padding: "0 6px",
3600
- fontSize: t.value.plot.tag.fontSize + "px",
3601
- opacity: 1
3602
- })
3603
- }, [
3604
- (n(), i("svg", Vi, [
3605
- b("path", {
3606
- d: "M 0,0 10,10 0,20 Z",
3607
- fill: e.color,
3608
- stroke: "none"
3609
- }, null, 8, Ei)
3610
- ])),
3611
- b("div", {
3612
- class: "vue-ui-xy-tag-content",
3613
- innerHTML: v(pe)(
3614
- t.value.plot.tag.formatter,
3615
- a.value,
3616
- e.name,
3617
- {
3618
- datapoint: a,
3619
- seriesIndex: s,
3620
- serieName: e.name
3621
- }
3622
- )
3623
- }, null, 8, Bi)
3624
- ], 4)) : h("", !0)
3625
- ], 64))), 128))
3626
- ], 64))), 128)),
3627
- t.value.chart.zoom.preview.enable ? (n(), i(x, { key: 5 }, [
3628
- t.value.chart.zoom.show && S.value > 6 && zt.value ? (n(), Ee(fn, {
3629
- ref_key: "chartSlicer",
3630
- ref: Me,
3631
- key: `slicer_${ve.value}`,
3632
- background: t.value.chart.zoom.color,
3633
- fontSize: t.value.chart.zoom.fontSize,
3634
- useResetSlot: t.value.chart.zoom.useResetSlot,
3635
- labelLeft: de.value[0] ? de.value[0].text : "",
3636
- labelRight: de.value.at(-1) ? de.value.at(-1).text : "",
3637
- textColor: t.value.chart.color,
3638
- inputColor: t.value.chart.zoom.color,
3639
- selectColor: t.value.chart.zoom.highlightColor,
3640
- borderColor: t.value.chart.backgroundColor,
3641
- minimap: fa.value,
3642
- smoothMinimap: t.value.chart.zoom.minimap.smooth,
3643
- minimapSelectedColor: t.value.chart.zoom.minimap.selectedColor,
3644
- minimapSelectionRadius: t.value.chart.zoom.minimap.selectionRadius,
3645
- minimapLineColor: t.value.chart.zoom.minimap.lineColor,
3646
- minimapSelectedColorOpacity: t.value.chart.zoom.minimap.selectedColorOpacity,
3647
- minimapSelectedIndex: L.value,
3648
- minimapIndicatorColor: t.value.chart.zoom.minimap.indicatorColor,
3649
- verticalHandles: t.value.chart.zoom.minimap.verticalHandles,
3650
- max: S.value,
3651
- min: 0,
3652
- valueStart: m.value.start,
3653
- valueEnd: m.value.end,
3654
- start: m.value.start,
3655
- "onUpdate:start": r[1] || (r[1] = (e) => m.value.start = e),
3656
- end: m.value.end,
3657
- "onUpdate:end": r[2] || (r[2] = (e) => m.value.end = e),
3658
- refreshStartPoint: t.value.chart.zoom.startIndex !== null ? t.value.chart.zoom.startIndex : 0,
3659
- refreshEndPoint: t.value.chart.zoom.endIndex !== null ? t.value.chart.zoom.endIndex + 1 : Math.max(...I.dataset.map((e) => v(qe)({ data: e.series, threshold: t.value.downsample.threshold }).length)),
3660
- enableRangeHandles: t.value.chart.zoom.enableRangeHandles,
3661
- enableSelectionDrag: t.value.chart.zoom.enableSelectionDrag,
3662
- onReset: na,
3663
- onTrapMouse: aa,
3664
- onFutureStart: r[3] || (r[3] = (e) => fl("start", e)),
3665
- onFutureEnd: r[4] || (r[4] = (e) => fl("end", e)),
3666
- timeLabels: ta.value,
3667
- isPreview: bt.value
3668
- }, {
3669
- "reset-action": ge(({ reset: e }) => [
3670
- J(l.$slots, "reset-action", dt(wt({ reset: e })), void 0, !0)
3671
- ]),
3672
- _: 3
3673
- }, 8, ["background", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "borderColor", "minimap", "smoothMinimap", "minimapSelectedColor", "minimapSelectionRadius", "minimapLineColor", "minimapSelectedColorOpacity", "minimapSelectedIndex", "minimapIndicatorColor", "verticalHandles", "max", "valueStart", "valueEnd", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag", "timeLabels", "isPreview"])) : h("", !0)
3674
- ], 64)) : (n(), i(x, { key: 6 }, [
3675
- t.value.chart.zoom.show && S.value > 6 && zt.value ? (n(), Ee(Xo, {
3676
- ref_key: "chartSlicer",
3677
- ref: Me,
3678
- key: `slicer_${ve.value}`,
3679
- background: t.value.chart.zoom.color,
3680
- fontSize: t.value.chart.zoom.fontSize,
3681
- useResetSlot: t.value.chart.zoom.useResetSlot,
3682
- labelLeft: de.value[0] ? de.value[0].text : "",
3683
- labelRight: de.value.at(-1) ? de.value.at(-1).text : "",
3684
- textColor: t.value.chart.color,
3685
- inputColor: t.value.chart.zoom.color,
3686
- selectColor: t.value.chart.zoom.highlightColor,
3687
- borderColor: t.value.chart.backgroundColor,
3688
- minimap: fa.value,
3689
- smoothMinimap: t.value.chart.zoom.minimap.smooth,
3690
- minimapSelectedColor: t.value.chart.zoom.minimap.selectedColor,
3691
- minimapSelectionRadius: t.value.chart.zoom.minimap.selectionRadius,
3692
- minimapLineColor: t.value.chart.zoom.minimap.lineColor,
3693
- minimapSelectedColorOpacity: t.value.chart.zoom.minimap.selectedColorOpacity,
3694
- minimapSelectedIndex: L.value,
3695
- minimapIndicatorColor: t.value.chart.zoom.minimap.indicatorColor,
3696
- verticalHandles: t.value.chart.zoom.minimap.verticalHandles,
3697
- max: S.value,
3698
- min: 0,
3699
- valueStart: m.value.start,
3700
- valueEnd: m.value.end,
3701
- start: m.value.start,
3702
- "onUpdate:start": r[5] || (r[5] = (e) => m.value.start = e),
3703
- end: m.value.end,
3704
- "onUpdate:end": r[6] || (r[6] = (e) => m.value.end = e),
3705
- refreshStartPoint: t.value.chart.zoom.startIndex !== null ? t.value.chart.zoom.startIndex : 0,
3706
- refreshEndPoint: t.value.chart.zoom.endIndex !== null ? t.value.chart.zoom.endIndex + 1 : Math.max(...I.dataset.map((e) => v(qe)({ data: e.series, threshold: t.value.downsample.threshold }).length)),
3707
- enableRangeHandles: t.value.chart.zoom.enableRangeHandles,
3708
- enableSelectionDrag: t.value.chart.zoom.enableSelectionDrag,
3709
- onReset: na,
3710
- onTrapMouse: aa
3711
- }, {
3712
- "reset-action": ge(({ reset: e }) => [
3713
- J(l.$slots, "reset-action", dt(wt({ reset: e })), void 0, !0)
3714
- ]),
3715
- _: 3
3716
- }, 8, ["background", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "borderColor", "minimap", "smoothMinimap", "minimapSelectedColor", "minimapSelectionRadius", "minimapLineColor", "minimapSelectedColorOpacity", "minimapSelectedIndex", "minimapIndicatorColor", "verticalHandles", "max", "valueStart", "valueEnd", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag"])) : h("", !0)
3717
- ], 64)),
3718
- b("div", {
3719
- id: `legend-bottom-${U.value}`
3720
- }, null, 8, Fi),
3721
- dl.value ? (n(), Ee(po, {
3722
- key: 7,
3723
- to: t.value.chart.legend.position === "top" ? `#legend-top-${U.value}` : `#legend-bottom-${U.value}`
3724
- }, [
3725
- t.value.chart.legend.show ? (n(), i("div", {
3726
- key: 0,
3727
- ref_key: "chartLegend",
3728
- ref: je,
3729
- class: "vue-ui-xy-legend",
3730
- style: _(`font-size:${t.value.chart.legend.fontSize}px`)
3731
- }, [
3732
- (n(!0), i(x, null, C(lt.value, (e, u) => (n(), i("div", {
3733
- key: `div_legend_item_${u}`,
3734
- onClick: (a) => da(e),
3735
- class: Ie({ "vue-ui-xy-legend-item-alone": lt.value.length === 1, "vue-ui-xy-legend-item": !0, "vue-ui-xy-legend-item-segregated": Q.value.includes(e.id) })
3736
- }, [
3737
- it.value[e.type] === "line" ? (n(), i("svg", Di, [
3738
- b("rect", {
3739
- x: "0",
3740
- y: "7.5",
3741
- rx: "1.5",
3742
- stroke: t.value.chart.backgroundColor,
3743
- "stroke-width": 0.5,
3744
- height: "3",
3745
- width: "20",
3746
- fill: e.color
3747
- }, null, 8, Yi),
3748
- Ut(Cl, {
3749
- plot: { x: 10, y: 9 },
3750
- radius: 4,
3751
- color: e.color,
3752
- shape: ["triangle", "square", "diamond", "pentagon", "hexagon", "star"].includes(e.shape) ? e.shape : "circle",
3753
- stroke: t.value.chart.backgroundColor,
3754
- strokeWidth: 0.5
3755
- }, null, 8, ["color", "shape", "stroke"])
3756
- ])) : it.value[e.type] === "bar" ? (n(), i("svg", Xi, [
3757
- it.value[e.type] === "bar" && l.$slots.pattern ? (n(), i("rect", {
3758
- key: 0,
3759
- x: "0",
3760
- y: "0",
3761
- rx: "1",
3762
- height: "40",
3763
- width: "40",
3764
- stroke: "none",
3765
- fill: e.color
3766
- }, null, 8, Gi)) : h("", !0),
3767
- it.value[e.type] === "bar" ? (n(), i("rect", {
3768
- key: 1,
3769
- x: "0",
3770
- y: "0",
3771
- rx: "1",
3772
- height: "40",
3773
- width: "40",
3774
- stroke: "none",
3775
- fill: l.$slots.pattern ? `url(#pattern_${U.value}_${e.slotAbsoluteIndex})` : e.color
3776
- }, null, 8, Ui)) : h("", !0)
3777
- ])) : (n(), i("svg", Zi, [
3778
- Ut(Cl, {
3779
- plot: { x: 6, y: 6 },
3780
- radius: 5,
3781
- color: e.color,
3782
- shape: ["triangle", "square", "diamond", "pentagon", "hexagon", "star"].includes(e.shape) ? e.shape : "circle"
3783
- }, null, 8, ["color", "shape"])
3784
- ])),
3785
- b("span", {
3786
- style: _(`color:${t.value.chart.legend.color}`)
3787
- }, ae(e.name), 5)
3788
- ], 10, Wi))), 128))
3789
- ], 4)) : (n(), i("div", {
3790
- key: 1,
3791
- ref_key: "chartLegend",
3792
- ref: je
3793
- }, [
3794
- J(l.$slots, "legend", { legend: lt.value }, void 0, !0)
3795
- ], 512))
3796
- ], 8, ["to"])) : h("", !0),
3797
- l.$slots.source ? (n(), i("div", {
3798
- key: 8,
3799
- ref_key: "source",
3800
- ref: _t,
3801
- dir: "auto"
3802
- }, [
3803
- J(l.$slots, "source", {}, void 0, !0)
3804
- ], 512)) : h("", !0),
3805
- Ut(v(he), {
3806
- show: y.value.showTooltip && jt.value,
3807
- backgroundColor: t.value.chart.tooltip.backgroundColor,
3808
- color: t.value.chart.tooltip.color,
3809
- fontSize: t.value.chart.tooltip.fontSize,
3810
- borderRadius: t.value.chart.tooltip.borderRadius,
3811
- borderColor: t.value.chart.tooltip.borderColor,
3812
- borderWidth: t.value.chart.tooltip.borderWidth,
3813
- backgroundOpacity: t.value.chart.tooltip.backgroundOpacity,
3814
- position: t.value.chart.tooltip.position,
3815
- offsetY: t.value.chart.tooltip.offsetY,
3816
- parent: l.$refs.chart,
3817
- content: so.value,
3818
- isFullscreen: st.value,
3819
- isCustom: t.value.chart.tooltip.customFormat && typeof t.value.chart.tooltip.customFormat == "function",
3820
- smooth: t.value.chart.tooltip.smooth,
3821
- backdropFilter: t.value.chart.tooltip.backdropFilter
3822
- }, {
3823
- "tooltip-before": ge(() => [
3824
- J(l.$slots, "tooltip-before", dt(wt({ ...pa.value })), void 0, !0)
3825
- ]),
3826
- "tooltip-after": ge(() => [
3827
- J(l.$slots, "tooltip-after", dt(wt({ ...pa.value })), void 0, !0)
3828
- ]),
3829
- _: 3
3830
- }, 8, ["show", "backgroundColor", "color", "fontSize", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter"]),
3831
- zt.value ? (n(), Ee(v(Ot), {
3832
- key: 9,
3833
- hideDetails: "",
3834
- config: {
3835
- open: y.value.showTable,
3836
- maxHeight: 1e4,
3837
- body: {
3838
- backgroundColor: t.value.chart.backgroundColor,
3839
- color: t.value.chart.color
3840
- },
3841
- head: {
3842
- backgroundColor: t.value.chart.backgroundColor,
3843
- color: t.value.chart.color
3844
- }
3845
- }
3846
- }, {
3847
- content: ge(() => [
3848
- b("div", {
3849
- style: _(`${v(el) ? "" : "max-height:400px"};overflow:auto;width:100%;margin-top:48px`)
3850
- }, [
3851
- b("div", qi, [
3852
- Yl(b("input", {
3853
- type: "checkbox",
3854
- "onUpdate:modelValue": r[7] || (r[7] = (e) => gt.value = e)
3855
- }, null, 512), [
3856
- [yo, gt.value]
3857
- ]),
3858
- b("div", {
3859
- onClick: r[8] || (r[8] = (e) => gt.value = !gt.value),
3860
- style: { cursor: "pointer" }
3861
- }, [
3862
- Ut(v($t), {
3863
- name: "chartLine",
3864
- size: 20,
3865
- stroke: t.value.chart.color
3866
- }, null, 8, ["stroke"])
3867
- ])
3868
- ]),
3869
- gt.value ? (n(), Ee(v(qt), {
3870
- key: `sparkline_${Pe.value}`,
3871
- dataset: no.value,
3872
- config: uo.value
3873
- }, null, 8, ["dataset", "config"])) : (n(), Ee(v(Te), {
3874
- key: `table_${cl.value}`,
3875
- colNames: Sl.value.colNames,
3876
- head: Sl.value.head,
3877
- body: Sl.value.body,
3878
- config: Sl.value.config,
3879
- title: `${t.value.chart.title.text}${t.value.chart.title.subtitle.text ? ` : ${t.value.chart.title.subtitle.text}` : ""}`,
3880
- onClose: r[9] || (r[9] = (e) => y.value.showTable = !1)
3881
- }, {
3882
- th: ge(({ th: e }) => [
3883
- b("div", { innerHTML: e }, null, 8, Ki)
3884
- ]),
3885
- td: ge(({ td: e }) => [
3886
- ko(ae(isNaN(Number(e)) ? e : v(Be)({
3887
- p: t.value.chart.labels.prefix,
3888
- v: e,
3889
- s: t.value.chart.labels.suffix,
3890
- r: t.value.table.rounding
3891
- })), 1)
3892
- ]),
3893
- _: 1
3894
- }, 8, ["colNames", "head", "body", "config", "title"]))
3895
- ], 4)
3896
- ]),
3897
- _: 1
3898
- }, 8, ["config"])) : h("", !0),
3899
- v(B) ? (n(), Ee(Fo, { key: 10 })) : h("", !0)
3900
- ], 46, gn));
3901
- }
3902
- }, ds = /* @__PURE__ */ Ea(Ji, [["__scopeId", "data-v-c40fb8bf"]]);
3903
- export {
3904
- ds as default
3905
- };