vue-data-ui 3.0.0-next.9 → 3.0.1

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 (144) hide show
  1. package/README.md +32 -30
  2. package/dist/{Arrow-B6OlqyCG.js → Arrow-DQoWnUfD.js} +1 -1
  3. package/dist/{BaseDraggableDialog-CA8QOk7L.js → BaseDraggableDialog-DEw6oieL.js} +4 -4
  4. package/dist/{BaseIcon-DxUUKVlt.js → BaseIcon-DEl03NUZ.js} +1 -1
  5. package/dist/{ColorPicker-Bh1dfgXt.js → ColorPicker-CrivFZqC.js} +2 -2
  6. package/dist/{DataTable--paavNqF.js → DataTable-ClgCsiJA.js} +2 -2
  7. package/dist/{Legend-BZ06qU55.js → Legend-CMvJ6X5j.js} +2 -2
  8. package/dist/{NonSvgPenAndPaper-DN9XjEHv.js → NonSvgPenAndPaper-B2Wvbl3p.js} +3 -3
  9. package/dist/{PackageVersion-2QvaZf9_.js → PackageVersion-CD5VH_Al.js} +3 -3
  10. package/dist/{PenAndPaper-hGgW0EHz.js → PenAndPaper-D3WRn-G2.js} +32 -32
  11. package/dist/{RecursiveCircles-Dn3TGoL6.js → RecursiveCircles-BcLb1aRS.js} +15 -13
  12. package/dist/RecursiveLabels-Bgcv0pzu.js +50 -0
  13. package/dist/{RecursiveLinks-ld_gDZH4.js → RecursiveLinks-00zGWPf9.js} +20 -18
  14. package/dist/{Shape-Mr1eIp_G.js → Shape-Adi9i_-f.js} +43 -37
  15. package/dist/Slicer-t6e1t2iM.js +602 -0
  16. package/dist/{SparkTooltip-Czhz446b.js → SparkTooltip-B8OnBSvk.js} +7 -7
  17. package/dist/{Title-B2dA6-uH.js → Title-xTWR-Vil.js} +1 -1
  18. package/dist/{Tooltip-O_hCvqgF.js → Tooltip-BH3CiANh.js} +23 -19
  19. package/dist/{UserOptions-Bk03FRqW.js → UserOptions-CKKPgDLV.js} +2 -2
  20. package/dist/{dom-to-png-Bt5F9TXw.js → dom-to-png-C4hj491O.js} +1 -1
  21. package/dist/{img-C_9wps3s.js → img-Vb4QHAHI.js} +1 -1
  22. package/dist/{index-CgShIRes.js → index-Dzc2Gi60.js} +2885 -2010
  23. package/dist/{pdf-CXdbjyRJ.js → pdf-ddpqw-dt.js} +1 -1
  24. package/dist/style.css +1 -1
  25. package/dist/types/vue-data-ui.d.cts +753 -65
  26. package/dist/types/vue-data-ui.d.ts +753 -65
  27. package/dist/useAutoSizeLabelsInsideViewbox-CN_Jh8Hr.js +81 -0
  28. package/dist/useFitSvgText-2crs6Fv5.js +69 -0
  29. package/dist/useLoading-D7YHNtLX.js +29 -0
  30. package/dist/useNestedProp-CjnS13nF.js +13 -0
  31. package/dist/usePanZoom-BVca3eMk.js +122 -0
  32. package/dist/{usePrinter-rIrqBbbm.js → usePrinter-DBRh8ZvS.js} +2 -2
  33. package/dist/useTimeLabelCollider-CIsgDrl9.js +78 -0
  34. package/dist/{useTimeLabels-DG97x2hL.js → useTimeLabels-DkzmKfZn.js} +208 -156
  35. package/dist/{vue-data-ui-DiwfJSwC.js → vue-data-ui-B7ztqj9-.js} +105 -100
  36. package/dist/vue-data-ui.js +26 -25
  37. package/dist/vue-ui-3d-bar-DUmYPtHl.js +1323 -0
  38. package/dist/{vue-ui-accordion-hlzscmAS.js → vue-ui-accordion-CPk8wAuj.js} +3 -3
  39. package/dist/vue-ui-age-pyramid-Bv5HmeXj.js +835 -0
  40. package/dist/{vue-ui-annotator-BHwBUNRO.js → vue-ui-annotator-KXWlIhtd.js} +12 -12
  41. package/dist/vue-ui-bullet-B4N4mBk9.js +571 -0
  42. package/dist/vue-ui-candlestick-DENvPnUO.js +1000 -0
  43. package/dist/{vue-ui-carousel-table-6MTDYf-H.js → vue-ui-carousel-table-vC2bHBaY.js} +29 -29
  44. package/dist/{vue-ui-chestnut-Cr6dK21e.js → vue-ui-chestnut-2nS0StrY.js} +664 -536
  45. package/dist/vue-ui-chord-CyfS6vNM.js +1038 -0
  46. package/dist/vue-ui-circle-pack-C4JR-0fx.js +709 -0
  47. package/dist/{vue-ui-cursor-Ch5yUxNn.js → vue-ui-cursor-BgeSDtQh.js} +2 -2
  48. package/dist/{vue-ui-dashboard-tVZ9aEHo.js → vue-ui-dashboard-9DWUBJ-I.js} +64 -64
  49. package/dist/{vue-ui-digits-BOlYLluF.js → vue-ui-digits-BQO7IBFA.js} +2 -2
  50. package/dist/{vue-ui-donut-BKwAnTKA.js → vue-ui-donut-C-ZJXJ74.js} +431 -422
  51. package/dist/vue-ui-donut-evolution-B870IrQA.js +1076 -0
  52. package/dist/vue-ui-dumbbell-Cfs2Uotx.js +1120 -0
  53. package/dist/vue-ui-flow-DnaUVVAD.js +841 -0
  54. package/dist/{vue-ui-funnel-CAV6A--C.js → vue-ui-funnel-B9s-H5ZG.js} +16 -16
  55. package/dist/vue-ui-galaxy-BoJOczdh.js +680 -0
  56. package/dist/vue-ui-gauge-qjm4BqZR.js +791 -0
  57. package/dist/vue-ui-gizmo-fn7ZaMTI.js +210 -0
  58. package/dist/vue-ui-heatmap-CIBDKhh8.js +1078 -0
  59. package/dist/vue-ui-history-plot-bbNxldYG.js +1074 -0
  60. package/dist/{vue-ui-kpi-DjHXc1Z9.js → vue-ui-kpi-BX-2jhLx.js} +26 -26
  61. package/dist/{vue-ui-mini-loader-C68r9wbr.js → vue-ui-mini-loader-Bn1Bb8-J.js} +2 -2
  62. package/dist/vue-ui-molecule-DQ3qFtBq.js +656 -0
  63. package/dist/vue-ui-mood-radar-Cf-ehIo1.js +785 -0
  64. package/dist/vue-ui-nested-donuts-CWg5BEi-.js +1284 -0
  65. package/dist/vue-ui-onion-sHgQTYfa.js +776 -0
  66. package/dist/vue-ui-parallel-coordinate-plot-Ki3ITp_s.js +916 -0
  67. package/dist/{vue-ui-quadrant-ULvVhjjq.js → vue-ui-quadrant-BIVqW7U7.js} +512 -459
  68. package/dist/vue-ui-quick-chart-C_hvHc1b.js +1762 -0
  69. package/dist/vue-ui-radar-RZUPyPwB.js +796 -0
  70. package/dist/{vue-ui-rating-CkdVnYpj.js → vue-ui-rating-BI8Vk7dO.js} +2 -2
  71. package/dist/vue-ui-relation-circle-TVMUEtxK.js +598 -0
  72. package/dist/vue-ui-ridgeline-DQeXHQG4.js +1157 -0
  73. package/dist/vue-ui-rings-BH81WmMS.js +728 -0
  74. package/dist/vue-ui-scatter-Cy7Tz_An.js +1178 -0
  75. package/dist/{vue-ui-skeleton-BsBaCvoE.js → vue-ui-skeleton-CF50qQxr.js} +13 -13
  76. package/dist/{vue-ui-smiley-B2sBY2Q-.js → vue-ui-smiley-CrFXEbJs.js} +46 -46
  77. package/dist/vue-ui-spark-trend-DtHArnot.js +315 -0
  78. package/dist/vue-ui-sparkbar-CIOwFFgA.js +351 -0
  79. package/dist/vue-ui-sparkgauge-E0DdGotz.js +232 -0
  80. package/dist/vue-ui-sparkhistogram-Dm7WoyjY.js +380 -0
  81. package/dist/vue-ui-sparkline-DoW6DDKT.js +513 -0
  82. package/dist/vue-ui-sparkstackbar-BJnPUWY4.js +421 -0
  83. package/dist/vue-ui-stackbar-Du42smPs.js +1371 -0
  84. package/dist/vue-ui-strip-plot-DnenGI-d.js +916 -0
  85. package/dist/{vue-ui-table-DaE8lQuo.js → vue-ui-table-BQOQVlHr.js} +17 -17
  86. package/dist/{vue-ui-table-heatmap--dSEG8cU.js → vue-ui-table-heatmap-BzK4_gsP.js} +5 -5
  87. package/dist/{vue-ui-table-sparkline-D4DkGvDP.js → vue-ui-table-sparkline-B-IwcT8I.js} +19 -16
  88. package/dist/vue-ui-thermometer-06ao_Pj5.js +541 -0
  89. package/dist/{vue-ui-timer-CYXTAh6x.js → vue-ui-timer-CxQq4roK.js} +5 -5
  90. package/dist/vue-ui-tiremarks-CuTxkByj.js +406 -0
  91. package/dist/vue-ui-treemap-BgHhRpiV.js +1035 -0
  92. package/dist/{vue-ui-vertical-bar-CO9eR1ty.js → vue-ui-vertical-bar-CAcsUUCo.js} +104 -102
  93. package/dist/vue-ui-waffle-Ct3Upw3m.js +910 -0
  94. package/dist/vue-ui-wheel-oz06Kt-p.js +379 -0
  95. package/dist/vue-ui-word-cloud-BRy7fg4S.js +765 -0
  96. package/dist/{vue-ui-world-P45Plcqw.js → vue-ui-world-CTV-YfFN.js} +364 -327
  97. package/dist/vue-ui-xy-DqCy9dpa.js +3808 -0
  98. package/dist/{vue-ui-xy-canvas-DgNBgUak.js → vue-ui-xy-canvas-BZdhKUIp.js} +265 -264
  99. package/package.json +4 -4
  100. package/dist/RecursiveLabels-NTMB9w5C.js +0 -49
  101. package/dist/Slicer-3t0HimeE.js +0 -577
  102. package/dist/useLoading-Bt5Doa8m.js +0 -28
  103. package/dist/useNestedProp-BC4Ciblw.js +0 -13
  104. package/dist/usePanZoom-BQMvRXEQ.js +0 -115
  105. package/dist/vue-ui-3d-bar-BqmzX9u4.js +0 -1227
  106. package/dist/vue-ui-age-pyramid-eRPt0BJb.js +0 -746
  107. package/dist/vue-ui-bullet-BSnF2gql.js +0 -513
  108. package/dist/vue-ui-candlestick-kMbNnoYe.js +0 -873
  109. package/dist/vue-ui-chord-Dxy_bfIE.js +0 -949
  110. package/dist/vue-ui-circle-pack-I_p4FPiW.js +0 -673
  111. package/dist/vue-ui-donut-evolution-DQhZJ4Sa.js +0 -903
  112. package/dist/vue-ui-dumbbell-DdN-7b3g.js +0 -753
  113. package/dist/vue-ui-flow-MvORTthN.js +0 -765
  114. package/dist/vue-ui-galaxy-B0PLMAn8.js +0 -617
  115. package/dist/vue-ui-gauge-C4FTzDFt.js +0 -738
  116. package/dist/vue-ui-gizmo-Dl5FHFb4.js +0 -192
  117. package/dist/vue-ui-heatmap-C3dee43W.js +0 -877
  118. package/dist/vue-ui-history-plot-dqv4u1Oa.js +0 -924
  119. package/dist/vue-ui-molecule-DtRAlfhC.js +0 -597
  120. package/dist/vue-ui-mood-radar-BZj2G0zE.js +0 -670
  121. package/dist/vue-ui-nested-donuts-OqJTwMb2.js +0 -1212
  122. package/dist/vue-ui-onion-DXLokGec.js +0 -701
  123. package/dist/vue-ui-parallel-coordinate-plot-tg7QhtIE.js +0 -807
  124. package/dist/vue-ui-quick-chart-4EODniQ3.js +0 -1612
  125. package/dist/vue-ui-radar-Dt5p5oSy.js +0 -741
  126. package/dist/vue-ui-relation-circle-_SysXj9T.js +0 -542
  127. package/dist/vue-ui-ridgeline-Cs5UihNN.js +0 -969
  128. package/dist/vue-ui-rings-Duay-EmS.js +0 -685
  129. package/dist/vue-ui-scatter-C6oGQcbL.js +0 -1045
  130. package/dist/vue-ui-spark-trend-CEAqGu3d.js +0 -291
  131. package/dist/vue-ui-sparkbar-ByPUDc6x.js +0 -301
  132. package/dist/vue-ui-sparkgauge-C-GKwevJ.js +0 -201
  133. package/dist/vue-ui-sparkhistogram-Dz0DdaVW.js +0 -313
  134. package/dist/vue-ui-sparkline-BULntz_U.js +0 -459
  135. package/dist/vue-ui-sparkstackbar-DXjHOeeU.js +0 -381
  136. package/dist/vue-ui-stackbar-CeP9n7zy.js +0 -1207
  137. package/dist/vue-ui-strip-plot-CaFQkWV8.js +0 -761
  138. package/dist/vue-ui-thermometer-BXf14CYH.js +0 -495
  139. package/dist/vue-ui-tiremarks-D6hJ1cd4.js +0 -358
  140. package/dist/vue-ui-treemap-tBurCrdn.js +0 -965
  141. package/dist/vue-ui-waffle-BNzs_BxY.js +0 -863
  142. package/dist/vue-ui-wheel-tydUATi8.js +0 -352
  143. package/dist/vue-ui-word-cloud-DUUc_tj6.js +0 -659
  144. package/dist/vue-ui-xy--HToGdle.js +0 -2982
@@ -0,0 +1,1762 @@
1
+ import { defineAsyncComponent as $e, ref as w, computed as N, toRefs as ta, watch as Ie, shallowRef as $t, onMounted as aa, onBeforeUnmount as It, nextTick as Et, watchEffect as la, createElementBlock as o, openBlock as l, normalizeStyle as O, normalizeClass as ce, createBlock as qe, createCommentVNode as g, createVNode as ke, unref as r, createSlots as oa, withCtx as K, renderSlot as U, normalizeProps as he, guardReactiveProps as fe, toDisplayString as F, createElementVNode as z, Fragment as p, renderList as I, mergeProps as et } from "vue";
2
+ import { u as na, c as ia, t as ua, a as ra, p as j, b as sa, C as We, d as va, G as da, f as ca, o as ha, e as tt, m as fa, D as Pt, X as ga, n as ma, q as at, r as Ee, k as ee, i as W, I as Tt, V as Ot, h as te, y as Xe, z as lt } from "./index-Dzc2Gi60.js";
3
+ import { t as Rt, u as pa } from "./useResponsive-DfdjqQps.js";
4
+ import { u as xa } from "./usePrinter-DBRh8ZvS.js";
5
+ import { u as Mt } from "./useNestedProp-CjnS13nF.js";
6
+ import { u as ya } from "./useTimeLabels-DkzmKfZn.js";
7
+ import { u as ka } from "./useChartAccessibility-9icAAmYg.js";
8
+ import { u as ba } from "./useTimeLabelCollider-CIsgDrl9.js";
9
+ import Sa from "./img-Vb4QHAHI.js";
10
+ import { S as wa } from "./Slicer-t6e1t2iM.js";
11
+ import { u as Aa, B as La } from "./useLoading-D7YHNtLX.js";
12
+ import { _ as _a } from "./_plugin-vue_export-helper-CHgC5LLL.js";
13
+ const _ = {
14
+ LINE: "LINE",
15
+ BAR: "BAR",
16
+ DONUT: "DONUT"
17
+ }, za = ["SERIE", "SERIES", "DATA", "VALUE", "VALUES", "NUM"];
18
+ function Ca({ dataset: h, barLineSwitch: T = 6, debug: S = !0 }) {
19
+ let B = null, H = null, le = 0;
20
+ if ((typeof h == "number" || typeof h == "string") && S && console.warn(`The provided dataset (${h}) is not sufficient to build a chart`), Pe(h) && (ae(h) && (h.length < T ? B = _.BAR : B = _.LINE, H = h, le = h.length), je(h))) {
21
+ if (!Ia(h))
22
+ return S && console.warn("The objects in the dataset array have a different data structure. Either keys or value types are different."), !1;
23
+ const Se = Object.keys(h[0]), M = Object.values(h[0]);
24
+ if (!Se.some((R) => Ea(R)))
25
+ return S && console.warn("The data type of the dataset objects in the array must contain one of the following keys: DATA, SERIES, VALUE, VALUES, NUM. Casing is not important."), !1;
26
+ Ft(M, (R) => typeof R == "number") && (B = _.DONUT, H = h), Ft(M, (R) => Array.isArray(R) && ae(R)) && (Nt(h) > T ? B = _.LINE : B = _.BAR, le = Nt(h), H = h.map((R) => ({
27
+ ...R,
28
+ data: Pa(R, (Te) => ae(Te))
29
+ }))), h = h.map((R) => Bt(R)), H = H.map((R) => Bt(R));
30
+ }
31
+ return Pe(h) && [...new Set(h.flatMap((Se) => Array.isArray(Se)))][0], {
32
+ dataset: h,
33
+ type: B,
34
+ usableDataset: H,
35
+ maxSeriesLength: le
36
+ };
37
+ }
38
+ function Dt(h) {
39
+ return !h || Pe(h) && !h.length;
40
+ }
41
+ function Pe(h) {
42
+ return Array.isArray(h);
43
+ }
44
+ function ae(h) {
45
+ if (!Pe(h) || Dt(h)) return !1;
46
+ const T = h.map((S) => Number(S));
47
+ return ![...new Set(T.flatMap((S) => typeof S == "number" && !isNaN(S)))].includes(!1);
48
+ }
49
+ function je(h) {
50
+ return !Pe(h) || Dt(h) || !![...new Set(h.flatMap((S) => typeof S == "object" && !Array.isArray(S)))].includes(!1) ? !1 : !h.map((S) => Object.keys(S).length > 0).includes(!1);
51
+ }
52
+ function $a(h, T) {
53
+ const S = Object.keys(h).sort(), B = Object.keys(T).sort();
54
+ if (S.length !== B.length)
55
+ return !1;
56
+ for (let H = 0; H < S.length; H += 1) {
57
+ const le = S[H], be = B[H];
58
+ if (le !== be || typeof h[le] != typeof T[be])
59
+ return !1;
60
+ }
61
+ return !0;
62
+ }
63
+ function Ia(h) {
64
+ if (h.length <= 1) return !0;
65
+ for (let T = 0; T < h.length; T += 1)
66
+ for (let S = T + 1; S < h.length; S += 1)
67
+ if (!$a(h[T], h[S]))
68
+ return !1;
69
+ return !0;
70
+ }
71
+ function Ea(h) {
72
+ return za.includes(h.toUpperCase());
73
+ }
74
+ function Ft(h, T) {
75
+ let S = [];
76
+ for (let B = 0; B < h.length; B += 1)
77
+ S.push(T(h[B]));
78
+ return S.includes(!0);
79
+ }
80
+ function Nt(h) {
81
+ return Math.max(...[...h].flatMap((T) => Object.values(T).filter((S) => ae(S)).map((S) => S.length)));
82
+ }
83
+ function Pa(h, T) {
84
+ return Object.values(h).filter((S) => T(S))[0];
85
+ }
86
+ function Bt(h) {
87
+ const T = {};
88
+ for (let S in h)
89
+ h.hasOwnProperty(S) && (T[S.toUpperCase()] = h[S]);
90
+ return T;
91
+ }
92
+ const Ta = ["id"], Oa = ["xmlns", "viewBox"], Ra = ["x", "y", "width", "height"], Ma = ["x", "y", "width", "height"], Fa = ["width", "height"], Na = ["id"], Ba = ["id"], Da = ["id"], Ua = ["flood-color"], Va = {
93
+ key: 0,
94
+ class: "donut-label-connectors"
95
+ }, Ha = ["d", "stroke", "stroke-width", "filter"], qa = ["cx", "cy", "r", "fill", "filter"], Wa = { class: "donut" }, Xa = ["d", "fill", "stroke", "stroke-width", "filter"], ja = ["d", "onMouseenter", "onMouseout", "onClick"], Ga = {
96
+ key: 1,
97
+ class: "donut-labels quick-animation"
98
+ }, Ya = ["cx", "cy", "fill", "stroke", "filter"], Za = ["text-anchor", "x", "y", "fill", "font-size", "filter"], Ja = ["text-anchor", "x", "y", "fill", "font-size", "filter"], Qa = {
99
+ key: 2,
100
+ class: "donut-hollow quick-animation"
101
+ }, Ka = ["x", "y", "font-size", "fill"], el = ["x", "y", "font-size", "fill"], tl = {
102
+ key: 0,
103
+ class: "line-grid"
104
+ }, al = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ll = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ol = {
105
+ key: 1,
106
+ class: "line-axis"
107
+ }, nl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], il = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ul = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], rl = ["x", "y", "font-size", "fill"], sl = {
108
+ key: 3,
109
+ class: "periodLabels"
110
+ }, vl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], dl = { key: 0 }, cl = ["font-size", "text-anchor", "fill", "transform"], hl = ["font-size", "text-anchor", "fill", "transform", "innerHTML"], fl = { class: "plots" }, gl = { class: "line-plot-series" }, ml = ["d", "stroke", "stroke-width"], pl = ["d", "stroke", "stroke-width"], xl = ["d", "stroke", "stroke-width"], yl = ["d", "stroke", "stroke-width"], kl = ["cx", "cy", "fill", "stroke"], bl = {
111
+ key: 4,
112
+ class: "dataLabels"
113
+ }, Sl = ["font-size", "fill", "x", "y"], wl = {
114
+ key: 5,
115
+ class: "tooltip-traps"
116
+ }, Al = ["x", "y", "height", "width", "fill", "onMouseenter", "onMouseleave", "onClick"], Ll = {
117
+ key: 0,
118
+ class: "line-grid"
119
+ }, _l = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], zl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Cl = {
120
+ key: 1,
121
+ class: "line-axis"
122
+ }, $l = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Il = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], El = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Pl = ["x", "y", "font-size", "fill"], Tl = {
123
+ key: 3,
124
+ class: "periodLabels"
125
+ }, Ol = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Rl = { key: 0 }, Ml = ["font-size", "text-anchor", "fill", "transform"], Fl = ["font-size", "text-anchor", "fill", "transform", "innerHTML"], Nl = { class: "plots" }, Bl = ["x", "width", "height", "y", "fill", "stroke", "stroke-width"], Dl = ["to"], Ul = ["from", "to"], Vl = {
126
+ key: 4,
127
+ class: "dataLabels"
128
+ }, Hl = ["x", "y", "font-size", "fill"], ql = {
129
+ key: 5,
130
+ class: "tooltip-traps"
131
+ }, Wl = ["x", "y", "height", "width", "fill", "onMouseenter", "onMouseleave", "onClick"], Xl = {
132
+ key: 6,
133
+ class: "axis-labels"
134
+ }, jl = ["font-size", "fill", "x", "y"], Gl = ["font-size", "fill", "x", "y"], Yl = ["font-size", "fill", "transform"], Zl = ["font-size", "fill", "transform"], Jl = {
135
+ key: 5,
136
+ class: "vue-data-ui-watermark"
137
+ }, Ql = ["onClick"], Kl = ["onClick"], eo = ["onClick"], to = {
138
+ key: 1,
139
+ class: "vue-ui-quick-chart-not-processable"
140
+ }, ao = {
141
+ __name: "vue-ui-quick-chart",
142
+ props: {
143
+ config: {
144
+ type: Object,
145
+ default() {
146
+ return {};
147
+ }
148
+ },
149
+ dataset: {
150
+ type: [Array, Object, String, Number],
151
+ default() {
152
+ return null;
153
+ }
154
+ }
155
+ },
156
+ emits: ["selectDatapoint", "selectLegend"],
157
+ setup(h, { expose: T, emit: S }) {
158
+ const B = $e(() => import("./BaseIcon-DEl03NUZ.js")), H = $e(() => import("./PackageVersion-CD5VH_Al.js")), le = $e(() => import("./PenAndPaper-D3WRn-G2.js")), be = $e(() => import("./Tooltip-BH3CiANh.js")), ot = $e(() => import("./UserOptions-CKKPgDLV.js")), { vue_ui_quick_chart: Se } = na(), M = h, R = w(null), Te = w(null), nt = w(null), it = w(null), oe = w(ia()), re = w(!1), we = w(null), se = w(""), Y = w(null), ut = w(null), rt = w(null), A = w([]), st = w(0), Oe = w(0), Z = w(null), Re = w(null), vt = w(null), dt = w(null), Me = w("#FFFFFF"), e = w(Ze()), Ge = N(() => !!e.value.debug), { loading: D, FINAL_DATASET: Ut, manualLoading: ct } = Aa({
159
+ ...ta(M),
160
+ FINAL_CONFIG: e,
161
+ prepareConfig: Ze,
162
+ skeletonDataset: [1, 2, 3, 5, 8, 13, 21, 34, 55, 89],
163
+ skeletonConfig: ua({
164
+ defaultConfig: e.value,
165
+ userConfig: {
166
+ backgroundColor: "#99999930",
167
+ customPalette: ["#BABABA"],
168
+ showDataLabels: !1,
169
+ paletteStartIndex: 0,
170
+ showUserOptions: !1,
171
+ showTooltip: !1,
172
+ xAxisLabel: "",
173
+ yAxisLabel: "",
174
+ xyAxisStroke: "#999999",
175
+ xyGridStroke: "#99999950",
176
+ xyPeriods: [],
177
+ xyShowScale: !1,
178
+ xyPaddingLeft: 6,
179
+ xyPaddingBottom: 12,
180
+ zoomXy: !1,
181
+ zoomStartIndex: null,
182
+ zoomEndIndex: null
183
+ }
184
+ })
185
+ }), { svgRef: ht } = ka({ config: { text: e.value.title } }), Vt = N(() => e.value.showUserOptionsOnChartHover), ft = N(() => e.value.keepUserOptionsStateOnChartLeave), Fe = w(!e.value.showUserOptionsOnChartHover), Ye = w(!1);
186
+ function gt(a = !1) {
187
+ Ye.value = a, Vt.value && (Fe.value = a);
188
+ }
189
+ function Ze() {
190
+ const a = Mt({
191
+ userConfig: M.config,
192
+ defaultConfig: Se
193
+ });
194
+ let c = {};
195
+ return a.theme ? c = {
196
+ ...Mt({
197
+ userConfig: sa.vue_ui_quick_chart[a.theme] || M.config,
198
+ defaultConfig: a
199
+ }),
200
+ customPalette: ra[a.theme] || j
201
+ } : c = a, M.config && We(M.config, "zoomStartIndex") ? c.zoomStartIndex = M.config.zoomStartIndex : c.zoomStartIndex = null, M.config && We(M.config, "zoomEndIndex") ? c.zoomEndIndex = M.config.zoomEndIndex : c.zoomEndIndex = null, M.config && !We(M.config, "donutStroke") ? We(M.config, "backgroundColor") ? Me.value = M.config.backgroundColor : Me.value = "#FFFFFF" : Me.value = M.config.donutStroke, c;
202
+ }
203
+ Ie(() => M.config, (a) => {
204
+ D.value || (e.value = Ze()), b.value.width = e.value.width, b.value.height = e.value.height, Fe.value = !e.value.showUserOptionsOnChartHover, xt(), me.value.showTooltip = e.value.showTooltip;
205
+ }, { deep: !0 }), Ie(() => M.dataset, (a) => {
206
+ k.value = Le.value, m.value.start = 0, m.value.end = k.value.maxSeriesLength, Oe.value += 1;
207
+ }, { deep: !0 }), Ie(() => M.dataset, (a) => {
208
+ Array.isArray(a) && a.length > 0 && (ct.value = !1);
209
+ }, { immediate: !0 });
210
+ const Ae = N(() => va(e.value.customPalette)), ge = S, Le = N(() => {
211
+ const a = Ca({ debug: Ge.value, dataset: da(Ut.value, [
212
+ "serie",
213
+ "series",
214
+ "data",
215
+ "value",
216
+ "values",
217
+ "num"
218
+ ]), barLineSwitch: e.value.chartIsBarUnderDatasetLength });
219
+ return !a && Ge.value && console.error("VueUiQuickChart : Dataset is not processable"), a;
220
+ }), k = w(Le.value), Ht = N(() => !!k.value), $ = N(() => k.value ? k.value.type : null);
221
+ Ie(() => $.value, (a) => {
222
+ a || ca({
223
+ componentName: "VueUiQuickChart",
224
+ type: "dataset",
225
+ debug: Ge.value
226
+ });
227
+ }, { immediate: !0 });
228
+ const { isPrinting: Ne, isImaging: Be, generatePdf: mt, generateImage: pt } = xa({
229
+ elementId: `${$.value}_${oe.value}`,
230
+ fileName: e.value.title || $.value,
231
+ options: e.value.userOptionsPrint
232
+ }), qt = N(() => e.value.showUserOptions && !e.value.title), b = w({
233
+ width: e.value.width,
234
+ height: e.value.height
235
+ }), me = w({
236
+ showTooltip: e.value.showTooltip
237
+ });
238
+ Ie(e, () => {
239
+ me.value = {
240
+ showTooltip: e.value.showTooltip
241
+ };
242
+ }, { immediate: !0 });
243
+ const ne = $t(null), pe = $t(null);
244
+ aa(() => {
245
+ xt();
246
+ });
247
+ function xt() {
248
+ if (ha(M.dataset) || (ct.value = e.value.loading), e.value.responsive) {
249
+ const a = Rt(() => {
250
+ const { width: c, height: t } = pa({
251
+ chart: R.value,
252
+ title: e.value.title ? Te.value : null,
253
+ legend: e.value.showLegend ? nt.value : null,
254
+ slicer: [_.BAR, _.LINE].includes($.value) && e.value.zoomXy && k.value.maxSeriesLength > 1 ? it.value : null,
255
+ source: ut.value,
256
+ noTitle: rt.value
257
+ });
258
+ requestAnimationFrame(() => {
259
+ b.value.width = c, b.value.height = t;
260
+ });
261
+ });
262
+ ne.value && (pe.value && ne.value.unobserve(pe.value), ne.value.disconnect()), ne.value = new ResizeObserver(a), pe.value = R.value.parentNode, ne.value.observe(pe.value);
263
+ }
264
+ Lt();
265
+ }
266
+ It(() => {
267
+ ne.value && (pe.value && ne.value.unobserve(pe.value), ne.value.disconnect());
268
+ });
269
+ const Wt = N(() => {
270
+ switch ($.value) {
271
+ case _.LINE:
272
+ return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
273
+ case _.BAR:
274
+ return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
275
+ case _.DONUT:
276
+ return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
277
+ default:
278
+ return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
279
+ }
280
+ });
281
+ function yt(a) {
282
+ return [...a].map((c) => c.value).reduce((c, t) => c + t, 0);
283
+ }
284
+ function _e(a) {
285
+ return e.value.blurOnHover && ![null, void 0].includes(Y.value) && Y.value !== a ? `url(#blur_${oe.value})` : "";
286
+ }
287
+ function kt(a, c) {
288
+ A.value.includes(a) ? A.value = A.value.filter((t) => t !== a) : A.value.length < c && A.value.push(a);
289
+ }
290
+ const bt = w(null), St = w(null), De = w(!1);
291
+ function Xt(a, c) {
292
+ De.value = !0;
293
+ let t = a.value;
294
+ const i = Le.value.dataset.find((u, x) => a.id === `donut_${x}`).VALUE;
295
+ if (A.value.includes(a.id)) {
296
+ let u = function() {
297
+ t > i ? (De.value = !1, cancelAnimationFrame(St.value), k.value = {
298
+ ...k.value,
299
+ dataset: k.value.dataset.map((x, L) => a.id === `donut_${L}` ? {
300
+ ...x,
301
+ value: i,
302
+ VALUE: i
303
+ } : x)
304
+ }) : (t += i * 0.025, k.value = {
305
+ ...k.value,
306
+ dataset: k.value.dataset.map((x, L) => a.id === `donut_${L}` ? {
307
+ ...x,
308
+ value: t,
309
+ VALUE: t
310
+ } : x)
311
+ }, St.value = requestAnimationFrame(u));
312
+ };
313
+ A.value = A.value.filter((x) => x !== a.id), u();
314
+ } else if (c.length > 1) {
315
+ let u = function() {
316
+ t < i / 100 ? (De.value = !1, cancelAnimationFrame(bt.value), A.value.push(a.id), k.value = {
317
+ ...k.value,
318
+ dataset: k.value.dataset.map((x, L) => a.id === `donut_${L}` ? {
319
+ ...x,
320
+ value: 0,
321
+ VALUE: 0
322
+ } : x)
323
+ }) : (t /= 1.1, k.value = {
324
+ ...k.value,
325
+ dataset: k.value.dataset.map((x, L) => a.id === `donut_${L}` ? {
326
+ ...x,
327
+ value: t,
328
+ VALUE: t
329
+ } : x)
330
+ }, bt.value = requestAnimationFrame(u));
331
+ };
332
+ u();
333
+ }
334
+ }
335
+ const J = w(null);
336
+ function jt(a) {
337
+ J.value = a;
338
+ }
339
+ const wt = N(() => e.value.donutThicknessRatio < 0.01 ? 0.01 : e.value.donutThicknessRatio > 0.4 ? 0.4 : e.value.donutThicknessRatio), P = N(() => {
340
+ if ($.value !== _.DONUT) return null;
341
+ const a = k.value.dataset.map((f, C) => ({
342
+ ...f,
343
+ value: f.VALUE || f.DATA || f.SERIE || f.VALUES || f.NUM || 0,
344
+ name: f.NAME || f.DESCRIPTION || f.TITLE || f.LABEL || `Serie ${C}`,
345
+ id: `donut_${C}`
346
+ })).map((f, C) => ({
347
+ ...f,
348
+ color: f.COLOR ? tt(f.COLOR) : Ae.value[C + e.value.paletteStartIndex] || j[C + e.value.paletteStartIndex] || j[(C + e.value.paletteStartIndex) % j.length],
349
+ immutableValue: f.value
350
+ }));
351
+ function c(f, C) {
352
+ return W({
353
+ v: isNaN(f.value / yt(C)) ? 0 : f.value / yt(C) * 100,
354
+ s: "%",
355
+ r: e.value.dataLabelRoundingPercentage
356
+ });
357
+ }
358
+ function t(f) {
359
+ return f.proportion * 100 > e.value.donutHideLabelUnderPercentage;
360
+ }
361
+ function i(f, C) {
362
+ const v = Le.value.dataset.find((y, E) => `donut_${E}` === f).VALUE;
363
+ return Math.abs(String(Number(v.toFixed(0))).length - String(Number(C.toFixed(0))).length);
364
+ }
365
+ function u({ datapoint: f, seriesIndex: C }) {
366
+ we.value = { datapoint: f, seriesIndex: C, config: e.value, dataset: a }, Y.value = f.id;
367
+ const v = e.value.tooltipCustomFormat;
368
+ if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: f, seriesIndex: C }), Xe(v) && lt(() => v({
369
+ datapoint: f,
370
+ seriesIndex: C,
371
+ series: a,
372
+ config: e.value
373
+ })))
374
+ se.value = v({
375
+ datapoint: f,
376
+ seriesIndex: C,
377
+ series: a,
378
+ config: e.value
379
+ });
380
+ else {
381
+ let n = "";
382
+ n += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${f.name}</div>`, n += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${f.color}"/></svg>`, n += `<b>${ee(
383
+ e.value.formatter,
384
+ f.value,
385
+ W({
386
+ p: e.value.valuePrefix,
387
+ v: f.value,
388
+ s: e.value.valueSuffix,
389
+ r: e.value.dataLabelRoundingValue
390
+ }),
391
+ { datapoint: f, seriesIndex: C }
392
+ )}</b>`, n += `<span>(${W({ v: f.proportion * 100, s: "%", r: e.value.dataLabelRoundingPercentage })})</span></div>`, se.value = `<div>${n}</div>`;
393
+ }
394
+ re.value = !0;
395
+ }
396
+ function x({ datapoint: f, seriesIndex: C }) {
397
+ e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: f, seriesIndex: C }), re.value = !1, Y.value = null, J.value = null;
398
+ }
399
+ function L({ datapoint: f, seriesIndex: C }) {
400
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: f, seriesIndex: C }), ge("selectDatapoint", f);
401
+ }
402
+ const ie = {
403
+ centerX: b.value.width / 2,
404
+ centerY: b.value.height / 2
405
+ }, X = a.filter((f) => !A.value.includes(f.id)).map((f) => f.value || 0).reduce((f, C) => f + C, 0), ye = a.map((f, C) => ({
406
+ ...f,
407
+ proportion: (f.value || 0) / X,
408
+ value: f.value || 0,
409
+ absoluteValue: Le.value.dataset.find((v, n) => `donut_${n}` === f.id).VALUE
410
+ })), ve = b.value.width / 2, ue = b.value.height / 2, Q = b.value.height * e.value.donutRadiusRatio;
411
+ return {
412
+ dataset: ye.filter((f) => !A.value.includes(f.id)),
413
+ legend: ye,
414
+ drawingArea: ie,
415
+ displayArcPercentage: c,
416
+ isArcBigEnough: t,
417
+ useTooltip: u,
418
+ killTooltip: x,
419
+ selectDatapoint: L,
420
+ getSpaces: i,
421
+ total: X,
422
+ cx: ve,
423
+ cy: ue,
424
+ radius: Q,
425
+ chart: fa(
426
+ { series: a.filter((f) => !A.value.includes(f.id)) },
427
+ ve,
428
+ ue,
429
+ Q,
430
+ Q,
431
+ 1.99999,
432
+ 2,
433
+ 1,
434
+ 360,
435
+ 105.25,
436
+ b.value.height * wt.value
437
+ )
438
+ };
439
+ }), m = w({
440
+ start: 0,
441
+ end: k.value.maxSeriesLength
442
+ });
443
+ function Gt() {
444
+ Lt();
445
+ }
446
+ const At = w(null);
447
+ async function Lt() {
448
+ await Et(), await Et();
449
+ const { zoomStartIndex: a, zoomEndIndex: c } = e.value, t = At.value;
450
+ (a != null || c != null) && t ? (a != null && t.setStartValue(a), c != null && t.setEndValue(Yt(c + 1))) : (m.value = {
451
+ start: 0,
452
+ end: k.value.maxSeriesLength
453
+ }, Oe.value += 1);
454
+ }
455
+ function Yt(a) {
456
+ const c = k.value.maxSeriesLength;
457
+ return a > c ? c : a < 0 || e.value.zoomStartIndex !== null && a < e.value.zoomStartIndex ? e.value.zoomStartIndex !== null ? e.value.zoomStartIndex + 1 : 1 : a;
458
+ }
459
+ const Zt = N(() => {
460
+ if (!e.value.zoomMinimap.show || $.value === _.DONUT) return [];
461
+ let a = [];
462
+ ae(k.value.dataset) && (a = k.value.dataset), je(k.value.dataset) && (a = k.value.dataset.map((u, x) => ({
463
+ values: u.VALUE || u.DATA || u.SERIE || u.SERIES || u.VALUES || u.NUM || 0,
464
+ id: $.value === _.LINE ? `line_${x}` : `bar_${x}`
465
+ })).filter((u) => !A.value.includes(u.id)));
466
+ const c = ae(a) ? a.length : Math.max(...a.map((u) => u.values.length));
467
+ let t = [];
468
+ if (ae(a))
469
+ t = a;
470
+ else
471
+ for (let u = 0; u < c; u += 1)
472
+ t.push(a.map((x) => x.values[u] || 0).reduce((x, L) => (x || 0) + (L || 0), 0));
473
+ const i = Math.min(...t);
474
+ return t.map((u) => u + (i < 0 ? Math.abs(i) : 0));
475
+ });
476
+ function _t() {
477
+ let a = 0;
478
+ return Re.value && (a = Array.from(Re.value.querySelectorAll("text")).reduce((i, u) => {
479
+ const x = u.getComputedTextLength();
480
+ return x > i ? x : i;
481
+ }, 0)), a + 4;
482
+ }
483
+ const Je = w(0), Jt = Rt((a) => {
484
+ Je.value = a;
485
+ }, 100);
486
+ la((a) => {
487
+ const c = Z.value;
488
+ if (!c) return;
489
+ const t = new ResizeObserver((i) => {
490
+ Jt(i[0].contentRect.height);
491
+ });
492
+ t.observe(c), a(() => t.disconnect());
493
+ }), It(() => {
494
+ Je.value = 0;
495
+ });
496
+ const Ue = N(() => {
497
+ let a = 0, c = 0;
498
+ return Z.value && (c = Je.value), a + c;
499
+ }), d = N(() => {
500
+ if ($.value !== _.LINE) return null;
501
+ const a = {
502
+ height: b.value.height,
503
+ width: b.value.width
504
+ };
505
+ let c = _t();
506
+ if (Z.value) {
507
+ const v = Z.value.getBBox().x;
508
+ v < 0 && (c += Math.abs(v));
509
+ }
510
+ const t = {
511
+ left: c + e.value.xyPaddingLeft,
512
+ top: e.value.xyPaddingTop,
513
+ right: a.width - e.value.xyPaddingRight,
514
+ bottom: a.height - e.value.xyPaddingBottom - Ue.value,
515
+ width: Math.max(10, a.width - e.value.xyPaddingLeft - e.value.xyPaddingRight - c),
516
+ height: Math.max(10, a.height - e.value.xyPaddingTop - e.value.xyPaddingBottom - Ue.value)
517
+ };
518
+ let i = [];
519
+ ae(k.value.dataset) && (i = [
520
+ {
521
+ values: k.value.dataset.slice(m.value.start, m.value.end),
522
+ absoluteIndices: k.value.dataset.map((v, n) => n).slice(m.value.start, m.value.end),
523
+ name: e.value.title,
524
+ color: Ae.value[e.value.paletteStartIndex] || j[e.value.paletteStartIndex],
525
+ id: "line_0"
526
+ }
527
+ ]), je(k.value.dataset) && (i = k.value.dataset.map((v, n) => ({
528
+ ...v,
529
+ values: v.VALUE || v.DATA || v.SERIE || v.SERIES || v.VALUES || v.NUM || 0,
530
+ name: v.NAME || v.DESCRIPTION || v.TITLE || v.LABEL || `Serie ${n}`,
531
+ id: `line_${n}`
532
+ })).map((v, n) => ({
533
+ ...v,
534
+ color: v.COLOR ? tt(v.COLOR) : Ae.value[n + e.value.paletteStartIndex] || j[n + e.value.paletteStartIndex] || j[(n + e.value.paletteStartIndex) % j.length],
535
+ values: v.values.slice(m.value.start, m.value.end),
536
+ absoluteIndices: v.values.map((y, E) => E).slice(m.value.start, m.value.end)
537
+ })));
538
+ const u = {
539
+ max: Math.max(...i.filter((v) => !A.value.includes(v.id)).flatMap((v) => v.values)),
540
+ min: Math.min(...i.filter((v) => !A.value.includes(v.id)).flatMap((v) => v.values)),
541
+ maxSeries: Math.max(...i.map((v) => v.values.length))
542
+ }, x = Pt(u.min < 0 ? u.min : 0, u.max < 0 ? 0 : u.max, e.value.xyScaleSegments), L = u.min < 0 ? Math.abs(u.min) : 0, ie = u.max < 0 ? t.top : t.bottom - L / (x.max + L) * t.height, X = t.width / u.maxSeries, ye = x.ticks.map((v) => ({
543
+ y: t.bottom - t.height * ((v + L) / (x.max + L)),
544
+ x: t.left - 8,
545
+ value: v
546
+ })), ve = i.map((v, n) => ({
547
+ ...v,
548
+ coordinates: v.values.map((y, E) => ({
549
+ x: t.left + X * (E + 1) - X / 2,
550
+ y: t.bottom - (y + L) / (x.max + L) * t.height,
551
+ value: y
552
+ }))
553
+ })).map((v) => {
554
+ let n = [];
555
+ return v.coordinates.forEach((y) => {
556
+ n.push(`${y.x},${y.y} `);
557
+ }), {
558
+ ...v,
559
+ linePath: n.join(" ")
560
+ };
561
+ });
562
+ function ue(v) {
563
+ return i.map((n) => ({
564
+ ...n,
565
+ value: n.values[v],
566
+ absoluteIndex: n.absoluteIndices[v]
567
+ })).filter((n) => !A.value.includes(n.id));
568
+ }
569
+ function Q(v) {
570
+ Y.value = v, J.value = v;
571
+ const n = ue(v);
572
+ we.value = { datapoint: n, seriesIndex: v, config: e.value, dataset: i };
573
+ const y = e.value.tooltipCustomFormat;
574
+ if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: n, seriesIndex: v + m.value.start }), Xe(y) && lt(() => y({
575
+ datapoint: n,
576
+ seriesIndex: v,
577
+ series: i,
578
+ config: e.value
579
+ })))
580
+ se.value = y({
581
+ datapoint: n,
582
+ seriesIndex: v,
583
+ series: i,
584
+ config: e.value
585
+ });
586
+ else {
587
+ let E = "";
588
+ G.value[n[0].absoluteIndex] && (E += `<div style="border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${G.value[n[0].absoluteIndex].text}</div>`), n.forEach((V, q) => {
589
+ E += `
590
+ <div style="display:flex; flex-wrap: wrap; align-items:center; gap:3px;">
591
+ <svg viewBox="0 0 12 12" height="14" width="12"><circle cx="6" cy="6" r="6" stroke="none" fill="${V.color}"/></svg>
592
+ <span>${V.name}:</span>
593
+ <b>${ee(
594
+ e.value.formatter,
595
+ V.value,
596
+ W({
597
+ p: e.value.valuePrefix,
598
+ v: V.value,
599
+ s: e.value.valueSuffix,
600
+ r: e.value.dataLabelRoundingValue
601
+ }),
602
+ { datapoint: V, seriesIndex: q }
603
+ )}
604
+ </b>
605
+ </div>
606
+ `;
607
+ }), se.value = E;
608
+ }
609
+ re.value = !0;
610
+ }
611
+ function f(v) {
612
+ const n = ue(v);
613
+ e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: n, seriesIndex: v + m.value.start }), Y.value = null, J.value = null, re.value = !1;
614
+ }
615
+ function C(v) {
616
+ const n = ue(v);
617
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: n, seriesIndex: v + m.value.start }), ge("selectDatapoint", n);
618
+ }
619
+ return {
620
+ absoluteZero: ie,
621
+ dataset: ve.filter((v) => !A.value.includes(v.id)),
622
+ legend: ve,
623
+ drawingArea: t,
624
+ extremes: u,
625
+ slotSize: X,
626
+ yLabels: ye,
627
+ useTooltip: Q,
628
+ killTooltip: f,
629
+ selectDatapoint: C
630
+ };
631
+ }), s = N(() => {
632
+ if ($.value !== _.BAR) return null;
633
+ const a = {
634
+ height: b.value.height,
635
+ width: b.value.width
636
+ };
637
+ let c = _t();
638
+ if (Z.value) {
639
+ const n = Z.value.getBBox().x;
640
+ n < 0 && (c += Math.abs(n));
641
+ }
642
+ const t = {
643
+ left: c + e.value.xyPaddingLeft,
644
+ top: e.value.xyPaddingTop,
645
+ right: a.width - e.value.xyPaddingRight,
646
+ bottom: a.height - e.value.xyPaddingBottom - Ue.value,
647
+ width: Math.max(10, a.width - e.value.xyPaddingLeft - e.value.xyPaddingRight - c),
648
+ height: Math.max(10, a.height - e.value.xyPaddingTop - e.value.xyPaddingBottom - Ue.value)
649
+ };
650
+ let i = [];
651
+ ae(k.value.dataset) && (i = [
652
+ {
653
+ values: k.value.dataset.slice(m.value.start, m.value.end),
654
+ absoluteIndices: k.value.dataset.map((n, y) => y).slice(m.value.start, m.value.end),
655
+ name: e.value.title,
656
+ color: Ae.value[e.value.paletteStartIndex] || j[e.value.paletteStartIndex],
657
+ id: "bar_0"
658
+ }
659
+ ]), je(k.value.dataset) && (i = k.value.dataset.map((n, y) => ({
660
+ ...n,
661
+ values: n.VALUE || n.DATA || n.SERIE || n.SERIES || n.VALUES || n.NUM || 0,
662
+ name: n.NAME || n.DESCRIPTION || n.TITLE || n.LABEL || `Serie ${y}`,
663
+ id: `bar_${y}`
664
+ })).map((n, y) => ({
665
+ ...n,
666
+ color: n.COLOR ? tt(n.COLOR) : Ae.value[y + e.value.paletteStartIndex] || j[y + e.value.paletteStartIndex] || j[(y + e.value.paletteStartIndex) % j.length],
667
+ values: n.values.slice(m.value.start, m.value.end),
668
+ absoluteIndices: n.values.map((E, V) => V).slice(m.value.start, m.value.end)
669
+ })));
670
+ const u = {
671
+ max: Math.max(...i.filter((n) => !A.value.includes(n.id)).flatMap((n) => n.values)) < 0 ? 0 : Math.max(...i.filter((n) => !A.value.includes(n.id)).flatMap((n) => n.values)),
672
+ min: Math.min(...i.filter((n) => !A.value.includes(n.id)).flatMap((n) => n.values)),
673
+ maxSeries: Math.max(...i.filter((n) => !A.value.includes(n.id)).map((n) => n.values.length))
674
+ }, x = Pt(u.min < 0 ? u.min : 0, u.max, e.value.xyScaleSegments), L = x.min < 0 ? Math.abs(x.min) : 0, ie = t.bottom - L / (x.max + L) * t.height, X = t.width / u.maxSeries, ye = x.ticks.map((n) => ({
675
+ y: t.bottom - t.height * ((n + L) / (x.max + L)),
676
+ x: t.left - 8,
677
+ value: n
678
+ })), ve = i.map((n, y) => ({
679
+ ...n,
680
+ coordinates: n.values.map((E, V) => {
681
+ const q = (E + L) / (u.max + L) * t.height, ze = Math.abs(E) / Math.abs(u.min) * (t.height - ie), Ke = L / (u.max + L) * t.height, Ce = X / i.filter((de) => !A.value.includes(de.id)).length - e.value.barGap / i.filter((de) => !A.value.includes(de.id)).length;
682
+ return {
683
+ x: t.left + X * V + Ce * y + e.value.barGap / 2,
684
+ y: E > 0 ? t.bottom - q : ie,
685
+ height: E > 0 ? q - Ke : ze,
686
+ value: E,
687
+ width: Ce
688
+ };
689
+ })
690
+ })), ue = i.filter((n) => !A.value.includes(n.id)).map((n, y) => ({
691
+ ...n,
692
+ coordinates: n.values.map((E, V) => {
693
+ const q = (E + L) / (u.max + L) * t.height, ze = Math.abs(E) / (u.max + L) * t.height, Ke = L / (u.max + L) * t.height, Ce = X / i.filter((de) => !A.value.includes(de.id)).length - e.value.barGap / i.filter((de) => !A.value.includes(de.id)).length;
694
+ return {
695
+ x: t.left + X * V + Ce * y + e.value.barGap / 2,
696
+ y: E > 0 ? t.bottom - q : ie,
697
+ height: E > 0 ? q - Ke : ze,
698
+ value: E,
699
+ width: Ce
700
+ };
701
+ })
702
+ }));
703
+ function Q(n) {
704
+ return i.map((y) => ({
705
+ ...y,
706
+ value: y.values[n],
707
+ absoluteIndex: y.absoluteIndices[n]
708
+ })).filter((y) => !A.value.includes(y.id));
709
+ }
710
+ function f(n) {
711
+ Y.value = n, J.value = n;
712
+ const y = Q(n);
713
+ we.value = { datapoint: y, seriesIndex: n, config: e.value, dataset: i };
714
+ const E = e.value.tooltipCustomFormat;
715
+ if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: y, seriesIndex: n + m.value.start }), Xe(E) && lt(() => E({
716
+ datapoint: y,
717
+ seriesIndex: n,
718
+ series: i,
719
+ config: e.value
720
+ })))
721
+ se.value = E({
722
+ point: y,
723
+ seriesIndex: n,
724
+ series: i,
725
+ config: e.value
726
+ });
727
+ else {
728
+ let V = "";
729
+ G.value[y[0].absoluteIndex] && (V += `<div style="border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${G.value[y[0].absoluteIndex].text}</div>`), y.forEach((q, ze) => {
730
+ V += `
731
+ <div style="display:flex; flex-wrap: wrap; align-items:center; gap:3px;">
732
+ <svg viewBox="0 0 12 12" height="14" width="12"><rect x=0 y="0" width="12" height="12" rx="1" stroke="none" fill="${q.color}"/></svg>
733
+ <span>${q.name}:</span>
734
+ <b>${ee(
735
+ e.value.formatter,
736
+ q.value,
737
+ W({
738
+ p: e.value.valuePrefix,
739
+ v: q.value,
740
+ s: e.value.valueSuffix,
741
+ r: e.value.dataLabelRoundingValue
742
+ }),
743
+ { datapoint: q, seriesIndex: ze }
744
+ )}
745
+ </b>
746
+ </div>
747
+ `;
748
+ }), se.value = V;
749
+ }
750
+ re.value = !0;
751
+ }
752
+ function C(n) {
753
+ const y = Q(n);
754
+ e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: y, seriesIndex: n + m.value.start }), re.value = !1, Y.value = null, J.value = null;
755
+ }
756
+ function v(n) {
757
+ const y = Q(n);
758
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: y, seriesIndex: n + m.value.start }), ge("selectDatapoint", y);
759
+ }
760
+ return {
761
+ absoluteZero: ie,
762
+ dataset: ue.filter((n) => !A.value.includes(n.id)),
763
+ legend: ve,
764
+ drawingArea: t,
765
+ extremes: u,
766
+ slotSize: X,
767
+ yLabels: ye,
768
+ useTooltip: f,
769
+ killTooltip: C,
770
+ selectDatapoint: v
771
+ };
772
+ }), G = N(() => ya({
773
+ values: e.value.xyPeriods,
774
+ maxDatapoints: k.value.maxSeriesLength,
775
+ formatter: e.value.datetimeFormatter,
776
+ start: m.value.start,
777
+ end: m.value.end
778
+ })), xe = N(() => {
779
+ const a = e.value.xyPeriodsModulo;
780
+ return e.value.xyPeriods.length ? Math.min(a, [...new Set(G.value.map((c) => c.text))].length) : a;
781
+ }), Ve = w(!1);
782
+ function zt(a) {
783
+ Ve.value = a, st.value += 1;
784
+ }
785
+ function Ct() {
786
+ me.value.showTooltip = !me.value.showTooltip;
787
+ }
788
+ const He = w(!1);
789
+ function Qe() {
790
+ He.value = !He.value;
791
+ }
792
+ async function Qt({ scale: a = 2 } = {}) {
793
+ if (!R.value) return;
794
+ const { width: c, height: t } = R.value.getBoundingClientRect(), i = c / t, { imageUri: u, base64: x } = await Sa({ domElement: R.value, base64: !0, img: !0, scale: a });
795
+ return {
796
+ imageUri: u,
797
+ base64: x,
798
+ title: e.value.title,
799
+ width: c,
800
+ height: t,
801
+ aspectRatio: i
802
+ };
803
+ }
804
+ const Kt = N(() => b.value.width), ea = N(() => b.value.height);
805
+ return ba({
806
+ timeLabelsEls: Z,
807
+ timeLabels: G,
808
+ slicer: m,
809
+ configRef: e,
810
+ rotationPath: ["xyPeriodLabelsRotation"],
811
+ autoRotatePath: ["xyPeriodLabelsAutoRotate", "enable"],
812
+ isAutoSize: !1,
813
+ rotation: e.value.xyPeriodLabelsAutoRotate.angle,
814
+ height: ea.value,
815
+ width: Kt.value
816
+ }), T({
817
+ getImage: Qt,
818
+ generatePdf: mt,
819
+ generateImage: pt,
820
+ toggleTooltip: Ct,
821
+ toggleAnnotator: Qe,
822
+ toggleFullscreen: zt
823
+ }), (a, c) => Ht.value ? (l(), o("div", {
824
+ key: 0,
825
+ id: `${$.value}_${oe.value}`,
826
+ ref_key: "quickChart",
827
+ ref: R,
828
+ class: ce({ "vue-ui-quick-chart": !0, "vue-data-ui-wrapper-fullscreen": Ve.value }),
829
+ style: O(`background:${e.value.backgroundColor};color:${e.value.color};font-family:${e.value.fontFamily}; position: relative; ${e.value.responsive ? "height: 100%" : ""}`),
830
+ onMouseenter: c[2] || (c[2] = () => gt(!0)),
831
+ onMouseleave: c[3] || (c[3] = () => gt(!1))
832
+ }, [
833
+ e.value.userOptionsButtons.annotator ? (l(), qe(r(le), {
834
+ key: 0,
835
+ svgRef: r(ht),
836
+ backgroundColor: e.value.backgroundColor,
837
+ color: e.value.color,
838
+ active: He.value,
839
+ onClose: Qe
840
+ }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : g("", !0),
841
+ qt.value ? (l(), o("div", {
842
+ key: 1,
843
+ ref_key: "noTitle",
844
+ ref: rt,
845
+ class: "vue-data-ui-no-title-space",
846
+ style: "height:36px; width: 100%;background:transparent"
847
+ }, null, 512)) : g("", !0),
848
+ e.value.showUserOptions && (ft.value || Fe.value) ? (l(), qe(r(ot), {
849
+ ref: "details",
850
+ key: `user_option_${st.value}`,
851
+ backgroundColor: e.value.backgroundColor,
852
+ color: e.value.color,
853
+ isPrinting: r(Ne),
854
+ isImaging: r(Be),
855
+ uid: oe.value,
856
+ hasTooltip: e.value.userOptionsButtons.tooltip && e.value.showTooltip,
857
+ hasPdf: e.value.userOptionsButtons.pdf,
858
+ hasImg: e.value.userOptionsButtons.img,
859
+ hasFullscreen: e.value.userOptionsButtons.fullscreen,
860
+ hasXls: !1,
861
+ isTooltip: me.value.showTooltip,
862
+ isFullscreen: Ve.value,
863
+ titles: { ...e.value.userOptionsButtonTitles },
864
+ chartElement: R.value,
865
+ position: e.value.userOptionsPosition,
866
+ hasAnnotator: e.value.userOptionsButtons.annotator,
867
+ isAnnotation: He.value,
868
+ callbacks: e.value.userOptionsCallbacks,
869
+ printScale: e.value.userOptionsPrint.scale,
870
+ onToggleFullscreen: zt,
871
+ onGeneratePdf: r(mt),
872
+ onGenerateImage: r(pt),
873
+ onToggleTooltip: Ct,
874
+ onToggleAnnotator: Qe,
875
+ style: O({
876
+ visibility: ft.value ? Fe.value ? "visible" : "hidden" : "visible"
877
+ })
878
+ }, oa({ _: 2 }, [
879
+ a.$slots.menuIcon ? {
880
+ name: "menuIcon",
881
+ fn: K(({ isOpen: t, color: i }) => [
882
+ U(a.$slots, "menuIcon", he(fe({ isOpen: t, color: i })), void 0, !0)
883
+ ]),
884
+ key: "0"
885
+ } : void 0,
886
+ a.$slots.optionTooltip ? {
887
+ name: "optionTooltip",
888
+ fn: K(() => [
889
+ U(a.$slots, "optionTooltip", {}, void 0, !0)
890
+ ]),
891
+ key: "1"
892
+ } : void 0,
893
+ a.$slots.optionPdf ? {
894
+ name: "optionPdf",
895
+ fn: K(() => [
896
+ U(a.$slots, "optionPdf", {}, void 0, !0)
897
+ ]),
898
+ key: "2"
899
+ } : void 0,
900
+ a.$slots.optionImg ? {
901
+ name: "optionImg",
902
+ fn: K(() => [
903
+ U(a.$slots, "optionImg", {}, void 0, !0)
904
+ ]),
905
+ key: "3"
906
+ } : void 0,
907
+ a.$slots.optionFullscreen ? {
908
+ name: "optionFullscreen",
909
+ fn: K(({ toggleFullscreen: t, isFullscreen: i }) => [
910
+ U(a.$slots, "optionFullscreen", he(fe({ toggleFullscreen: t, isFullscreen: i })), void 0, !0)
911
+ ]),
912
+ key: "4"
913
+ } : void 0,
914
+ a.$slots.optionAnnotator ? {
915
+ name: "optionAnnotator",
916
+ fn: K(({ toggleAnnotator: t, isAnnotator: i }) => [
917
+ U(a.$slots, "optionAnnotator", he(fe({ toggleAnnotator: t, isAnnotator: i })), void 0, !0)
918
+ ]),
919
+ key: "5"
920
+ } : void 0
921
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasImg", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : g("", !0),
922
+ e.value.title ? (l(), o("div", {
923
+ key: 3,
924
+ ref_key: "quickChartTitle",
925
+ ref: Te,
926
+ class: "vue-ui-quick-chart-title",
927
+ style: O(`background:transparent;color:${e.value.color};font-size:${e.value.titleFontSize}px;font-weight:${e.value.titleBold ? "bold" : "normal"};text-align:${e.value.titleTextAlign}`)
928
+ }, F(e.value.title), 5)) : g("", !0),
929
+ $.value ? (l(), o("svg", {
930
+ key: 4,
931
+ ref_key: "svgRef",
932
+ ref: ht,
933
+ xmlns: r(ga),
934
+ viewBox: Wt.value,
935
+ style: O(`max-width:100%;overflow:visible;background:transparent;color:${e.value.color}`)
936
+ }, [
937
+ ke(r(H)),
938
+ a.$slots["chart-background"] && $.value === _.BAR ? (l(), o("foreignObject", {
939
+ key: 0,
940
+ x: s.value.drawingArea.left,
941
+ y: s.value.drawingArea.top,
942
+ width: s.value.drawingArea.width,
943
+ height: s.value.drawingArea.height,
944
+ style: {
945
+ pointerEvents: "none"
946
+ }
947
+ }, [
948
+ U(a.$slots, "chart-background", {}, void 0, !0)
949
+ ], 8, Ra)) : g("", !0),
950
+ a.$slots["chart-background"] && $.value === _.LINE ? (l(), o("foreignObject", {
951
+ key: 1,
952
+ x: d.value.drawingArea.left,
953
+ y: d.value.drawingArea.top,
954
+ width: d.value.drawingArea.width,
955
+ height: d.value.drawingArea.height,
956
+ style: {
957
+ pointerEvents: "none"
958
+ }
959
+ }, [
960
+ U(a.$slots, "chart-background", {}, void 0, !0)
961
+ ], 8, Ma)) : g("", !0),
962
+ a.$slots["chart-background"] && $.value === _.DONUT ? (l(), o("foreignObject", {
963
+ key: 2,
964
+ x: 0,
965
+ y: 0,
966
+ width: b.value.width,
967
+ height: b.value.height,
968
+ style: {
969
+ pointerEvents: "none"
970
+ }
971
+ }, [
972
+ U(a.$slots, "chart-background", {}, void 0, !0)
973
+ ], 8, Fa)) : g("", !0),
974
+ z("defs", null, [
975
+ z("filter", {
976
+ id: `blur_${oe.value}`,
977
+ x: "-50%",
978
+ y: "-50%",
979
+ width: "200%",
980
+ height: "200%"
981
+ }, [
982
+ z("feGaussianBlur", {
983
+ in: "SourceGraphic",
984
+ stdDeviation: 2,
985
+ id: `blur_std_${oe.value}`
986
+ }, null, 8, Ba),
987
+ c[4] || (c[4] = z("feColorMatrix", {
988
+ type: "saturate",
989
+ values: "0"
990
+ }, null, -1))
991
+ ], 8, Na),
992
+ z("filter", {
993
+ id: `shadow_${oe.value}`,
994
+ "color-interpolation-filters": "sRGB"
995
+ }, [
996
+ z("feDropShadow", {
997
+ dx: "0",
998
+ dy: "0",
999
+ stdDeviation: "10",
1000
+ "flood-opacity": "0.5",
1001
+ "flood-color": e.value.donutShadowColor
1002
+ }, null, 8, Ua)
1003
+ ], 8, Da)
1004
+ ]),
1005
+ $.value === _.DONUT ? (l(), o(p, { key: 3 }, [
1006
+ e.value.showDataLabels ? (l(), o("g", Va, [
1007
+ (l(!0), o(p, null, I(P.value.chart, (t, i) => (l(), o(p, null, [
1008
+ P.value.isArcBigEnough(t) ? (l(), o("path", {
1009
+ key: 0,
1010
+ d: r(ma)(t, { x: b.value.width / 2, y: b.value.height / 2 }, 16, 16, !1, !1, b.value.height * wt.value, 12, e.value.donutCurvedMarkers),
1011
+ stroke: t.color,
1012
+ "stroke-width": e.value.donutLabelMarkerStrokeWidth,
1013
+ "stroke-linecap": "round",
1014
+ "stroke-linejoin": "round",
1015
+ fill: "none",
1016
+ filter: _e(t.id)
1017
+ }, null, 8, Ha)) : g("", !0)
1018
+ ], 64))), 256))
1019
+ ])) : g("", !0),
1020
+ z("circle", {
1021
+ cx: P.value.cx,
1022
+ cy: P.value.cy,
1023
+ r: P.value.radius,
1024
+ fill: e.value.backgroundColor,
1025
+ filter: e.value.donutUseShadow ? `url(#shadow_${oe.value})` : ""
1026
+ }, null, 8, qa),
1027
+ z("g", Wa, [
1028
+ (l(!0), o(p, null, I(P.value.chart, (t, i) => (l(), o("path", {
1029
+ d: t.arcSlice,
1030
+ fill: t.color,
1031
+ stroke: Me.value,
1032
+ "stroke-width": e.value.donutStrokeWidth,
1033
+ filter: _e(t.id)
1034
+ }, null, 8, Xa))), 256)),
1035
+ (l(!0), o(p, null, I(P.value.chart, (t, i) => (l(), o("path", {
1036
+ d: t.arcSlice,
1037
+ fill: "transparent",
1038
+ onMouseenter: (u) => P.value.useTooltip({ datapoint: t, seriesIndex: i }),
1039
+ onMouseout: (u) => P.value.killTooltip({ datapoint: t, seriesIndex: i }),
1040
+ onClick: (u) => P.value.selectDatapoint({ datapoint: t, seriesIndex: i })
1041
+ }, null, 40, ja))), 256))
1042
+ ]),
1043
+ e.value.showDataLabels ? (l(), o("g", Ga, [
1044
+ (l(!0), o(p, null, I(P.value.chart, (t, i) => (l(), o(p, null, [
1045
+ P.value.isArcBigEnough(t) ? (l(), o("circle", {
1046
+ key: 0,
1047
+ cx: r(Ee)(t).x,
1048
+ cy: r(at)(t) - 3.7,
1049
+ fill: t.color,
1050
+ stroke: e.value.backgroundColor,
1051
+ "stroke-width": 1,
1052
+ r: 3,
1053
+ filter: _e(t.id)
1054
+ }, null, 8, Ya)) : g("", !0),
1055
+ P.value.isArcBigEnough(t) ? (l(), o("text", {
1056
+ key: 1,
1057
+ "text-anchor": r(Ee)(t, !0, 20).anchor,
1058
+ x: r(Ee)(t, !0).x,
1059
+ y: r(at)(t),
1060
+ fill: e.value.color,
1061
+ "font-size": e.value.dataLabelFontSize,
1062
+ filter: _e(t.id)
1063
+ }, F(P.value.displayArcPercentage(t, P.value.chart)) + " (" + F(r(ee)(
1064
+ e.value.formatter,
1065
+ t.value,
1066
+ r(W)({
1067
+ p: e.value.valuePrefix,
1068
+ v: t.value,
1069
+ s: e.value.valueSuffix,
1070
+ r: e.value.dataLabelRoundingValue
1071
+ }),
1072
+ { datapoint: t, seriesIndex: i }
1073
+ )) + ") ", 9, Za)) : g("", !0),
1074
+ P.value.isArcBigEnough(t, !0, 20) ? (l(), o("text", {
1075
+ key: 2,
1076
+ "text-anchor": r(Ee)(t).anchor,
1077
+ x: r(Ee)(t, !0).x,
1078
+ y: r(at)(t) + e.value.dataLabelFontSize,
1079
+ fill: e.value.color,
1080
+ "font-size": e.value.dataLabelFontSize,
1081
+ filter: _e(t.id)
1082
+ }, F(t.name), 9, Ja)) : g("", !0)
1083
+ ], 64))), 256))
1084
+ ])) : g("", !0),
1085
+ e.value.donutShowTotal ? (l(), o("g", Qa, [
1086
+ z("text", {
1087
+ "text-anchor": "middle",
1088
+ x: P.value.drawingArea.centerX,
1089
+ y: P.value.drawingArea.centerY - e.value.donutTotalLabelFontSize / 2,
1090
+ "font-size": e.value.donutTotalLabelFontSize,
1091
+ fill: e.value.color
1092
+ }, F(e.value.donutTotalLabelText), 9, Ka),
1093
+ z("text", {
1094
+ "text-anchor": "middle",
1095
+ x: P.value.drawingArea.centerX,
1096
+ y: P.value.drawingArea.centerY + e.value.donutTotalLabelFontSize,
1097
+ "font-size": e.value.donutTotalLabelFontSize,
1098
+ fill: e.value.color
1099
+ }, F(r(W)({
1100
+ p: e.value.valuePrefix,
1101
+ v: P.value.total,
1102
+ s: e.value.valueSuffix,
1103
+ r: e.value.dataLabelRoundingValue
1104
+ })), 9, el)
1105
+ ])) : g("", !0)
1106
+ ], 64)) : g("", !0),
1107
+ $.value === _.LINE ? (l(), o(p, { key: 4 }, [
1108
+ e.value.xyShowGrid ? (l(), o("g", tl, [
1109
+ (l(!0), o(p, null, I(d.value.yLabels, (t) => (l(), o(p, null, [
1110
+ t.y <= d.value.drawingArea.bottom ? (l(), o("line", {
1111
+ key: 0,
1112
+ x1: d.value.drawingArea.left,
1113
+ x2: d.value.drawingArea.right,
1114
+ y1: t.y,
1115
+ y2: t.y,
1116
+ stroke: e.value.xyGridStroke,
1117
+ "stroke-width": e.value.xyGridStrokeWidth,
1118
+ "stroke-linecap": "round"
1119
+ }, null, 8, al)) : g("", !0)
1120
+ ], 64))), 256)),
1121
+ (l(!0), o(p, null, I(d.value.extremes.maxSeries + 1, (t, i) => (l(), o("line", {
1122
+ x1: d.value.drawingArea.left + d.value.slotSize * i,
1123
+ x2: d.value.drawingArea.left + d.value.slotSize * i,
1124
+ y1: d.value.drawingArea.top,
1125
+ y2: d.value.drawingArea.bottom,
1126
+ stroke: e.value.xyGridStroke,
1127
+ "stroke-width": e.value.xyGridStrokeWidth,
1128
+ "stroke-linecap": "round"
1129
+ }, null, 8, ll))), 256))
1130
+ ])) : g("", !0),
1131
+ e.value.xyShowAxis ? (l(), o("g", ol, [
1132
+ z("line", {
1133
+ x1: d.value.drawingArea.left,
1134
+ x2: d.value.drawingArea.left,
1135
+ y1: d.value.drawingArea.top,
1136
+ y2: d.value.drawingArea.bottom,
1137
+ stroke: e.value.xyAxisStroke,
1138
+ "stroke-width": e.value.xyAxisStrokeWidth,
1139
+ "stroke-linecap": "round"
1140
+ }, null, 8, nl),
1141
+ z("line", {
1142
+ x1: d.value.drawingArea.left,
1143
+ x2: d.value.drawingArea.right,
1144
+ y1: isNaN(d.value.absoluteZero) ? d.value.drawingArea.bottom : d.value.absoluteZero,
1145
+ y2: isNaN(d.value.absoluteZero) ? d.value.drawingArea.bottom : d.value.absoluteZero,
1146
+ stroke: e.value.xyAxisStroke,
1147
+ "stroke-width": e.value.xyAxisStrokeWidth,
1148
+ "stroke-linecap": "round"
1149
+ }, null, 8, il)
1150
+ ])) : g("", !0),
1151
+ e.value.xyShowScale ? (l(), o("g", {
1152
+ key: 2,
1153
+ class: "yLabels",
1154
+ ref_key: "scaleLabels",
1155
+ ref: Re
1156
+ }, [
1157
+ (l(!0), o(p, null, I(d.value.yLabels, (t, i) => (l(), o(p, null, [
1158
+ t.y <= d.value.drawingArea.bottom ? (l(), o("line", {
1159
+ key: 0,
1160
+ x1: t.x + 4,
1161
+ x2: d.value.drawingArea.left,
1162
+ y1: t.y,
1163
+ y2: t.y,
1164
+ stroke: e.value.xyAxisStroke,
1165
+ "stroke-width": e.value.xyAxisStrokeWidth,
1166
+ "stroke-linecap": "round"
1167
+ }, null, 8, ul)) : g("", !0),
1168
+ t.y <= d.value.drawingArea.bottom ? (l(), o("text", {
1169
+ key: 1,
1170
+ x: t.x,
1171
+ y: t.y + e.value.xyLabelsYFontSize / 3,
1172
+ "text-anchor": "end",
1173
+ "font-size": e.value.xyLabelsYFontSize,
1174
+ fill: e.value.color
1175
+ }, F(r(ee)(
1176
+ e.value.formatter,
1177
+ t.value,
1178
+ r(W)({
1179
+ p: e.value.valuePrefix,
1180
+ v: t.value,
1181
+ s: e.value.valueSuffix,
1182
+ r: e.value.dataLabelRoundingValue
1183
+ }),
1184
+ { datapoint: t, seriesIndex: i }
1185
+ )), 9, rl)) : g("", !0)
1186
+ ], 64))), 256))
1187
+ ], 512)) : g("", !0),
1188
+ e.value.xyShowScale && e.value.xyPeriods.length ? (l(), o("g", sl, [
1189
+ (l(!0), o(p, null, I(G.value.map((t) => t.text), (t, i) => (l(), o(p, null, [
1190
+ !e.value.xyPeriodsShowOnlyAtModulo || e.value.xyPeriodsShowOnlyAtModulo && i % Math.floor((m.value.end - m.value.start) / xe.value) === 0 || m.value.end - m.value.start <= xe.value ? (l(), o("line", {
1191
+ key: 0,
1192
+ x1: d.value.drawingArea.left + d.value.slotSize * (i + 1) - d.value.slotSize / 2,
1193
+ x2: d.value.drawingArea.left + d.value.slotSize * (i + 1) - d.value.slotSize / 2,
1194
+ y1: d.value.drawingArea.bottom,
1195
+ y2: d.value.drawingArea.bottom + 4,
1196
+ stroke: e.value.xyAxisStroke,
1197
+ "stroke-width": e.value.xyAxisStrokeWidth,
1198
+ "stroke-linecap": "round"
1199
+ }, null, 8, vl)) : g("", !0)
1200
+ ], 64))), 256)),
1201
+ z("g", {
1202
+ ref_key: "timeLabelsEls",
1203
+ ref: Z
1204
+ }, [
1205
+ (l(!0), o(p, null, I(G.value.map((t) => t.text), (t, i) => (l(), o(p, null, [
1206
+ !e.value.xyPeriodsShowOnlyAtModulo || e.value.xyPeriodsShowOnlyAtModulo && i % Math.floor((m.value.end - m.value.start) / xe.value) === 0 || m.value.end - m.value.start <= xe.value ? (l(), o("g", dl, [
1207
+ String(t).includes(`
1208
+ `) ? (l(), o("text", {
1209
+ key: 1,
1210
+ class: "vue-data-ui-time-label",
1211
+ "font-size": e.value.xyLabelsXFontSize,
1212
+ "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1213
+ fill: e.value.color,
1214
+ transform: `translate(${d.value.drawingArea.left + d.value.slotSize * (i + 1) - d.value.slotSize / 2}, ${d.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`,
1215
+ innerHTML: r(Tt)({
1216
+ content: String(t),
1217
+ fontSize: e.value.xyLabelsXFontSize,
1218
+ fill: e.value.color,
1219
+ x: 0,
1220
+ y: 0
1221
+ })
1222
+ }, null, 8, hl)) : (l(), o("text", {
1223
+ key: 0,
1224
+ class: "vue-data-ui-time-label",
1225
+ "font-size": e.value.xyLabelsXFontSize,
1226
+ "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1227
+ fill: e.value.color,
1228
+ transform: `translate(${d.value.drawingArea.left + d.value.slotSize * (i + 1) - d.value.slotSize / 2}, ${d.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`
1229
+ }, F(t), 9, cl))
1230
+ ])) : g("", !0)
1231
+ ], 64))), 256))
1232
+ ], 512)
1233
+ ])) : g("", !0),
1234
+ z("g", fl, [
1235
+ (l(!0), o(p, null, I(d.value.dataset, (t, i) => (l(), o("g", gl, [
1236
+ e.value.lineSmooth ? (l(), o(p, { key: 0 }, [
1237
+ z("path", {
1238
+ d: `M ${r(Ot)(t.coordinates)}`,
1239
+ stroke: e.value.backgroundColor,
1240
+ "stroke-width": e.value.lineStrokeWidth + 1,
1241
+ "stroke-linecap": "round",
1242
+ fill: "none",
1243
+ class: ce({ "quick-animation": !r(D), "vue-data-ui-line-animated": e.value.lineAnimated && !r(D) }),
1244
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1245
+ }, null, 14, ml),
1246
+ z("path", {
1247
+ d: `M ${r(Ot)(t.coordinates)}`,
1248
+ stroke: t.color,
1249
+ "stroke-width": e.value.lineStrokeWidth,
1250
+ "stroke-linecap": "round",
1251
+ fill: "none",
1252
+ class: ce({ "quick-animation": !r(D), "vue-data-ui-line-animated": e.value.lineAnimated && !r(D) }),
1253
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1254
+ }, null, 14, pl)
1255
+ ], 64)) : (l(), o(p, { key: 1 }, [
1256
+ z("path", {
1257
+ d: `M ${t.linePath}`,
1258
+ stroke: e.value.backgroundColor,
1259
+ "stroke-width": e.value.lineStrokeWidth + 1,
1260
+ "stroke-linecap": "round",
1261
+ fill: "none",
1262
+ class: ce({ "quick-animation": !r(D), "vue-data-ui-line-animated": e.value.lineAnimated && !r(D) }),
1263
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1264
+ }, null, 14, xl),
1265
+ z("path", {
1266
+ d: `M ${t.linePath}`,
1267
+ stroke: t.color,
1268
+ "stroke-width": e.value.lineStrokeWidth,
1269
+ "stroke-linecap": "round",
1270
+ fill: "none",
1271
+ class: ce({ "quick-animation": !r(D), "vue-data-ui-line-animated": e.value.lineAnimated && !r(D) }),
1272
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1273
+ }, null, 14, yl)
1274
+ ], 64)),
1275
+ (l(!0), o(p, null, I(t.coordinates, (u, x) => (l(), o("circle", {
1276
+ cx: u.x,
1277
+ cy: r(te)(u.y),
1278
+ r: 3,
1279
+ fill: t.color,
1280
+ stroke: e.value.backgroundColor,
1281
+ "stroke-width": "0.5",
1282
+ class: ce({ "quick-animation": !r(D) }),
1283
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1284
+ }, null, 14, kl))), 256))
1285
+ ]))), 256))
1286
+ ]),
1287
+ e.value.showDataLabels ? (l(), o("g", bl, [
1288
+ (l(!0), o(p, null, I(d.value.dataset, (t, i) => (l(), o(p, null, [
1289
+ (l(!0), o(p, null, I(t.coordinates, (u, x) => (l(), o("text", {
1290
+ "text-anchor": "middle",
1291
+ "font-size": e.value.dataLabelFontSize,
1292
+ fill: t.color,
1293
+ x: u.x,
1294
+ y: r(te)(u.y) - e.value.dataLabelFontSize / 2,
1295
+ class: "quick-animation",
1296
+ style: O({ transition: r(D) ? void 0 : "all 0.3s ease-in-out" })
1297
+ }, F(r(ee)(
1298
+ e.value.formatter,
1299
+ r(te)(u.value),
1300
+ r(W)({
1301
+ p: e.value.valuePrefix,
1302
+ v: r(te)(u.value),
1303
+ s: e.value.valueSuffix,
1304
+ r: e.value.dataLabelRoundingValue
1305
+ }),
1306
+ { datapoint: u, seriesIndex: x }
1307
+ )), 13, Sl))), 256))
1308
+ ], 64))), 256))
1309
+ ])) : g("", !0),
1310
+ Ye.value ? (l(), o("g", wl, [
1311
+ (l(!0), o(p, null, I(d.value.extremes.maxSeries, (t, i) => (l(), o("rect", {
1312
+ x: d.value.drawingArea.left + i * d.value.slotSize,
1313
+ y: d.value.drawingArea.top,
1314
+ height: d.value.drawingArea.height <= 0 ? 1e-5 : d.value.drawingArea.height,
1315
+ width: d.value.slotSize <= 0 ? 1e-5 : d.value.slotSize,
1316
+ fill: [Y.value, J.value].includes(i) ? e.value.xyHighlighterColor : "transparent",
1317
+ style: O(`opacity:${e.value.xyHighlighterOpacity}`),
1318
+ onMouseenter: (u) => d.value.useTooltip(i),
1319
+ onMouseleave: (u) => d.value.killTooltip(i),
1320
+ onClick: (u) => d.value.selectDatapoint(i)
1321
+ }, null, 44, Al))), 256))
1322
+ ])) : g("", !0)
1323
+ ], 64)) : g("", !0),
1324
+ $.value === _.BAR ? (l(), o(p, { key: 5 }, [
1325
+ e.value.xyShowGrid ? (l(), o("g", Ll, [
1326
+ (l(!0), o(p, null, I(s.value.yLabels, (t) => (l(), o(p, null, [
1327
+ t.y <= s.value.drawingArea.bottom ? (l(), o("line", {
1328
+ key: 0,
1329
+ x1: s.value.drawingArea.left,
1330
+ x2: s.value.drawingArea.right,
1331
+ y1: t.y,
1332
+ y2: t.y,
1333
+ stroke: e.value.xyGridStroke,
1334
+ "stroke-width": e.value.xyGridStrokeWidth,
1335
+ "stroke-linecap": "round"
1336
+ }, null, 8, _l)) : g("", !0)
1337
+ ], 64))), 256)),
1338
+ (l(!0), o(p, null, I(s.value.extremes.maxSeries + 1, (t, i) => (l(), o("line", {
1339
+ x1: s.value.drawingArea.left + s.value.slotSize * i,
1340
+ x2: s.value.drawingArea.left + s.value.slotSize * i,
1341
+ y1: s.value.drawingArea.top,
1342
+ y2: s.value.drawingArea.bottom,
1343
+ stroke: e.value.xyGridStroke,
1344
+ "stroke-width": e.value.xyGridStrokeWidth,
1345
+ "stroke-linecap": "round"
1346
+ }, null, 8, zl))), 256))
1347
+ ])) : g("", !0),
1348
+ e.value.xyShowAxis ? (l(), o("g", Cl, [
1349
+ z("line", {
1350
+ x1: s.value.drawingArea.left,
1351
+ x2: s.value.drawingArea.left,
1352
+ y1: s.value.drawingArea.top,
1353
+ y2: s.value.drawingArea.bottom,
1354
+ stroke: e.value.xyAxisStroke,
1355
+ "stroke-width": e.value.xyAxisStrokeWidth,
1356
+ "stroke-linecap": "round"
1357
+ }, null, 8, $l),
1358
+ z("line", {
1359
+ x1: s.value.drawingArea.left,
1360
+ x2: s.value.drawingArea.right,
1361
+ y1: isNaN(s.value.absoluteZero) ? s.value.drawingArea.bottom : s.value.absoluteZero,
1362
+ y2: isNaN(s.value.absoluteZero) ? s.value.drawingArea.bottom : s.value.absoluteZero,
1363
+ stroke: e.value.xyAxisStroke,
1364
+ "stroke-width": e.value.xyAxisStrokeWidth,
1365
+ "stroke-linecap": "round"
1366
+ }, null, 8, Il)
1367
+ ])) : g("", !0),
1368
+ e.value.xyShowScale ? (l(), o("g", {
1369
+ key: 2,
1370
+ class: "yLabels",
1371
+ ref_key: "scaleLabels",
1372
+ ref: Re
1373
+ }, [
1374
+ (l(!0), o(p, null, I(s.value.yLabels, (t, i) => (l(), o(p, null, [
1375
+ t.y <= s.value.drawingArea.bottom ? (l(), o("line", {
1376
+ key: 0,
1377
+ x1: t.x + 4,
1378
+ x2: s.value.drawingArea.left,
1379
+ y1: t.y,
1380
+ y2: t.y,
1381
+ stroke: e.value.xyAxisStroke,
1382
+ "stroke-width": e.value.xyAxisStrokeWidth,
1383
+ "stroke-linecap": "round"
1384
+ }, null, 8, El)) : g("", !0),
1385
+ t.y <= s.value.drawingArea.bottom ? (l(), o("text", {
1386
+ key: 1,
1387
+ x: t.x,
1388
+ y: t.y + e.value.xyLabelsYFontSize / 3,
1389
+ "text-anchor": "end",
1390
+ "font-size": e.value.xyLabelsYFontSize,
1391
+ fill: e.value.color
1392
+ }, F(r(ee)(
1393
+ e.value.formatter,
1394
+ t.value,
1395
+ r(W)({
1396
+ p: e.value.valuePrefix,
1397
+ v: t.value,
1398
+ s: e.value.valueSuffix,
1399
+ r: e.value.dataLabelRoundingValue
1400
+ }),
1401
+ { datapoint: t, seriesIndex: i }
1402
+ )), 9, Pl)) : g("", !0)
1403
+ ], 64))), 256))
1404
+ ], 512)) : g("", !0),
1405
+ e.value.xyShowScale && e.value.xyPeriods.length ? (l(), o("g", Tl, [
1406
+ (l(!0), o(p, null, I(e.value.xyPeriods.slice(m.value.start, m.value.end), (t, i) => (l(), o("line", {
1407
+ x1: s.value.drawingArea.left + s.value.slotSize * (i + 1) - s.value.slotSize / 2,
1408
+ x2: s.value.drawingArea.left + s.value.slotSize * (i + 1) - s.value.slotSize / 2,
1409
+ y1: s.value.drawingArea.bottom,
1410
+ y2: s.value.drawingArea.bottom + 4,
1411
+ stroke: e.value.xyAxisStroke,
1412
+ "stroke-width": e.value.xyAxisStrokeWidth,
1413
+ "stroke-linecap": "round"
1414
+ }, null, 8, Ol))), 256)),
1415
+ z("g", {
1416
+ ref_key: "timeLabelsEls",
1417
+ ref: Z
1418
+ }, [
1419
+ (l(!0), o(p, null, I(G.value.map((t) => t.text), (t, i) => (l(), o(p, null, [
1420
+ !e.value.xyPeriodsShowOnlyAtModulo || e.value.xyPeriodsShowOnlyAtModulo && i % Math.floor((m.value.end - m.value.start) / xe.value) === 0 || m.value.end - m.value.start <= xe.value ? (l(), o("g", Rl, [
1421
+ String(t).includes(`
1422
+ `) ? (l(), o("text", {
1423
+ key: 1,
1424
+ class: "vue-data-ui-time-label",
1425
+ "font-size": e.value.xyLabelsXFontSize,
1426
+ "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1427
+ fill: e.value.color,
1428
+ transform: `translate(${s.value.drawingArea.left + s.value.slotSize * (i + 1) - s.value.slotSize / 2}, ${s.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`,
1429
+ innerHTML: r(Tt)({
1430
+ content: String(t),
1431
+ fontSize: e.value.xyLabelsXFontSize,
1432
+ fill: e.value.color,
1433
+ x: 0,
1434
+ y: 0
1435
+ })
1436
+ }, null, 8, Fl)) : (l(), o("text", {
1437
+ key: 0,
1438
+ class: "vue-data-ui-time-label",
1439
+ "font-size": e.value.xyLabelsXFontSize,
1440
+ "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1441
+ fill: e.value.color,
1442
+ transform: `translate(${s.value.drawingArea.left + s.value.slotSize * (i + 1) - s.value.slotSize / 2}, ${s.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`
1443
+ }, F(t), 9, Ml))
1444
+ ])) : g("", !0)
1445
+ ], 64))), 256))
1446
+ ], 512)
1447
+ ])) : g("", !0),
1448
+ z("g", Nl, [
1449
+ (l(!0), o(p, null, I(s.value.dataset, (t, i) => (l(), o(p, null, [
1450
+ (l(!0), o(p, null, I(t.coordinates, (u, x) => (l(), o("rect", {
1451
+ x: u.x,
1452
+ width: u.width <= 0 ? 1e-5 : u.width,
1453
+ height: r(te)(u.height <= 0 ? 1e-5 : u.height),
1454
+ y: r(te)(u.y),
1455
+ fill: t.color,
1456
+ stroke: e.value.backgroundColor,
1457
+ "stroke-width": e.value.barStrokeWidth,
1458
+ "stroke-linecap": "round",
1459
+ class: ce({ "vue-data-ui-bar-animated": e.value.barAnimated && u.value < 0 && !r(D) })
1460
+ }, [
1461
+ e.value.barAnimated && u.value > 0 && !r(Ne) && !r(Be) ? (l(), o("animate", {
1462
+ key: 0,
1463
+ attributeName: "height",
1464
+ from: 0,
1465
+ to: u.height,
1466
+ dur: "0.5s"
1467
+ }, null, 8, Dl)) : g("", !0),
1468
+ e.value.barAnimated && u.value > 0 && !r(Ne) && !r(Be) ? (l(), o("animate", {
1469
+ key: 1,
1470
+ attributeName: "y",
1471
+ from: s.value.absoluteZero,
1472
+ to: s.value.absoluteZero - u.height,
1473
+ dur: "0.5s"
1474
+ }, null, 8, Ul)) : g("", !0)
1475
+ ], 10, Bl))), 256))
1476
+ ], 64))), 256))
1477
+ ]),
1478
+ e.value.showDataLabels ? (l(), o("g", Vl, [
1479
+ (l(!0), o(p, null, I(s.value.dataset, (t, i) => (l(), o(p, null, [
1480
+ (l(!0), o(p, null, I(t.coordinates, (u, x) => (l(), o("text", {
1481
+ x: u.x + u.width / 2,
1482
+ y: r(te)(u.y) - e.value.dataLabelFontSize / 2,
1483
+ "text-anchor": "middle",
1484
+ "font-size": e.value.dataLabelFontSize,
1485
+ fill: t.color,
1486
+ class: "quick-animation"
1487
+ }, F(r(ee)(
1488
+ e.value.formatter,
1489
+ r(te)(u.value),
1490
+ r(W)({
1491
+ p: e.value.valuePrefix,
1492
+ v: r(te)(u.value),
1493
+ s: e.value.valueSuffix,
1494
+ r: e.value.dataLabelRoundingValue
1495
+ }),
1496
+ { datapoint: u, seriesIndex: x }
1497
+ )), 9, Hl))), 256))
1498
+ ], 64))), 256))
1499
+ ])) : g("", !0),
1500
+ Ye.value ? (l(), o("g", ql, [
1501
+ (l(!0), o(p, null, I(s.value.extremes.maxSeries, (t, i) => (l(), o("rect", {
1502
+ x: s.value.drawingArea.left + i * s.value.slotSize,
1503
+ y: s.value.drawingArea.top,
1504
+ height: s.value.drawingArea.height <= 0 ? 1e-5 : s.value.drawingArea.height,
1505
+ width: s.value.slotSize <= 0 ? 1e-5 : s.value.slotSize,
1506
+ fill: [Y.value, J.value].includes(i) ? e.value.xyHighlighterColor : "transparent",
1507
+ style: O(`opacity:${e.value.xyHighlighterOpacity}`),
1508
+ onMouseenter: (u) => s.value.useTooltip(i),
1509
+ onMouseleave: (u) => s.value.killTooltip(i),
1510
+ onClick: (u) => s.value.selectDatapoint(i)
1511
+ }, null, 44, Wl))), 256))
1512
+ ])) : g("", !0)
1513
+ ], 64)) : g("", !0),
1514
+ [_.LINE, _.BAR].includes($.value) ? (l(), o("g", Xl, [
1515
+ e.value.xAxisLabel && $.value === _.LINE ? (l(), o("g", {
1516
+ key: 0,
1517
+ ref_key: "xAxisLabel",
1518
+ ref: vt
1519
+ }, [
1520
+ z("text", {
1521
+ "font-size": e.value.axisLabelsFontSize,
1522
+ fill: e.value.color,
1523
+ "text-anchor": "middle",
1524
+ x: d.value.drawingArea.left + d.value.drawingArea.width / 2,
1525
+ y: b.value.height - e.value.axisLabelsFontSize / 3
1526
+ }, F(e.value.xAxisLabel), 9, jl)
1527
+ ], 512)) : g("", !0),
1528
+ e.value.xAxisLabel && $.value === _.BAR ? (l(), o("g", {
1529
+ key: 1,
1530
+ ref_key: "xAxisLabel",
1531
+ ref: vt
1532
+ }, [
1533
+ z("text", {
1534
+ "font-size": e.value.axisLabelsFontSize,
1535
+ fill: e.value.color,
1536
+ "text-anchor": "middle",
1537
+ x: s.value.drawingArea.left + s.value.drawingArea.width / 2,
1538
+ y: b.value.height - e.value.axisLabelsFontSize / 3
1539
+ }, F(e.value.xAxisLabel), 9, Gl)
1540
+ ], 512)) : g("", !0),
1541
+ e.value.yAxisLabel && $.value === _.LINE ? (l(), o("g", {
1542
+ key: 2,
1543
+ ref_key: "yAxisLabel",
1544
+ ref: dt
1545
+ }, [
1546
+ z("text", {
1547
+ "font-size": e.value.axisLabelsFontSize,
1548
+ fill: e.value.color,
1549
+ transform: `translate(${e.value.axisLabelsFontSize}, ${d.value.drawingArea.top + d.value.drawingArea.height / 2}) rotate(-90)`,
1550
+ "text-anchor": "middle"
1551
+ }, F(e.value.yAxisLabel), 9, Yl)
1552
+ ], 512)) : g("", !0),
1553
+ e.value.yAxisLabel && $.value === _.BAR ? (l(), o("g", {
1554
+ key: 3,
1555
+ ref_key: "yAxisLabel",
1556
+ ref: dt
1557
+ }, [
1558
+ z("text", {
1559
+ "font-size": e.value.axisLabelsFontSize,
1560
+ fill: e.value.color,
1561
+ transform: `translate(${e.value.axisLabelsFontSize}, ${s.value.drawingArea.top + s.value.drawingArea.height / 2}) rotate(-90)`,
1562
+ "text-anchor": "middle"
1563
+ }, F(e.value.yAxisLabel), 9, Zl)
1564
+ ], 512)) : g("", !0)
1565
+ ])) : g("", !0)
1566
+ ], 12, Oa)) : g("", !0),
1567
+ a.$slots.watermark ? (l(), o("div", Jl, [
1568
+ U(a.$slots, "watermark", he(fe({ isPrinting: r(Ne) || r(Be) })), void 0, !0)
1569
+ ])) : g("", !0),
1570
+ [_.BAR, _.LINE].includes($.value) && e.value.zoomXy && k.value.maxSeriesLength > 1 ? (l(), o("div", {
1571
+ key: `slicer_${Oe.value}`,
1572
+ ref_key: "quickChartSlicer",
1573
+ ref: it
1574
+ }, [
1575
+ (l(), qe(wa, {
1576
+ ref_key: "slicerComponent",
1577
+ ref: At,
1578
+ key: `slicer_${Oe.value}`,
1579
+ background: e.value.zoomColor,
1580
+ borderColor: e.value.backgroundColor,
1581
+ fontSize: e.value.zoomFontSize,
1582
+ useResetSlot: e.value.zoomUseResetSlot,
1583
+ labelLeft: e.value.xyPeriods[m.value.start] ? G.value[0].text : "",
1584
+ labelRight: e.value.xyPeriods[m.value.end - 1] ? G.value.at(-1).text : "",
1585
+ textColor: e.value.color,
1586
+ inputColor: e.value.zoomColor,
1587
+ selectColor: e.value.zoomHighlightColor,
1588
+ max: k.value.maxSeriesLength,
1589
+ min: 0,
1590
+ valueStart: m.value.start,
1591
+ valueEnd: m.value.end,
1592
+ smoothMinimap: e.value.zoomMinimap.smooth,
1593
+ minimapSelectedColor: e.value.zoomMinimap.selectedColor,
1594
+ minimapSelectedColorOpacity: e.value.zoomMinimap.selectedColorOpacity,
1595
+ minimapSelectionRadius: e.value.zoomMinimap.selectionRadius,
1596
+ minimapLineColor: e.value.zoomMinimap.lineColor,
1597
+ minimap: Zt.value,
1598
+ minimapIndicatorColor: e.value.zoomMinimap.indicatorColor,
1599
+ verticalHandles: e.value.zoomMinimap.verticalHandles,
1600
+ minimapSelectedIndex: J.value,
1601
+ start: m.value.start,
1602
+ "onUpdate:start": c[0] || (c[0] = (t) => m.value.start = t),
1603
+ end: m.value.end,
1604
+ "onUpdate:end": c[1] || (c[1] = (t) => m.value.end = t),
1605
+ refreshStartPoint: e.value.zoomStartIndex !== null ? e.value.zoomStartIndex : 0,
1606
+ refreshEndPoint: e.value.zoomEndIndex !== null ? e.value.zoomEndIndex + 1 : k.value.maxSeriesLength,
1607
+ enableRangeHandles: e.value.zoomEnableRangeHandles,
1608
+ enableSelectionDrag: e.value.zoomEnableSelectionDrag,
1609
+ onReset: Gt,
1610
+ onTrapMouse: jt
1611
+ }, {
1612
+ "reset-action": K(({ reset: t }) => [
1613
+ U(a.$slots, "reset-action", he(fe({ reset: t })), void 0, !0)
1614
+ ]),
1615
+ _: 3
1616
+ }, 8, ["background", "borderColor", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "max", "valueStart", "valueEnd", "smoothMinimap", "minimapSelectedColor", "minimapSelectedColorOpacity", "minimapSelectionRadius", "minimapLineColor", "minimap", "minimapIndicatorColor", "verticalHandles", "minimapSelectedIndex", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag"]))
1617
+ ])) : g("", !0),
1618
+ e.value.showLegend ? (l(), o("div", {
1619
+ key: 7,
1620
+ ref_key: "quickChartLegend",
1621
+ ref: nt,
1622
+ class: "vue-ui-quick-chart-legend",
1623
+ style: O(`background:transparent;color:${e.value.color}`)
1624
+ }, [
1625
+ $.value === _.DONUT ? (l(!0), o(p, { key: 0 }, I(P.value.legend, (t, i) => (l(), o("div", {
1626
+ class: "vue-ui-quick-chart-legend-item",
1627
+ onClick: (u) => {
1628
+ Xt(t, P.value.dataset), ge("selectLegend", t);
1629
+ },
1630
+ style: O(`cursor: ${P.value.legend.length > 1 ? "pointer" : "default"}; opacity:${A.value.includes(t.id) ? "0.5" : "1"}`)
1631
+ }, [
1632
+ e.value.useCustomLegend ? U(a.$slots, "legend", et({
1633
+ key: 0,
1634
+ ref_for: !0
1635
+ }, { legend: t }), void 0, !0) : (l(), o(p, { key: 1 }, [
1636
+ ke(r(B), {
1637
+ name: e.value.legendIcon,
1638
+ stroke: t.color,
1639
+ size: e.value.legendIconSize
1640
+ }, null, 8, ["name", "stroke", "size"]),
1641
+ z("span", {
1642
+ style: O(`font-size:${e.value.legendFontSize}px`)
1643
+ }, F(t.name), 5),
1644
+ z("span", {
1645
+ style: O(`font-size:${e.value.legendFontSize}px;font-variant-numeric:tabular-nums`)
1646
+ }, F(A.value.includes(t.id) ? "-" : r(ee)(
1647
+ e.value.formatter,
1648
+ t.absoluteValue,
1649
+ r(W)({
1650
+ p: e.value.valuePrefix,
1651
+ v: t.absoluteValue,
1652
+ s: e.value.valueSuffix,
1653
+ r: e.value.dataLabelRoundingValue
1654
+ }),
1655
+ { datapoint: t, seriesIndex: i }
1656
+ )), 5),
1657
+ A.value.includes(t.id) ? (l(), o("span", {
1658
+ key: 0,
1659
+ style: O(`font-size:${e.value.legendFontSize}px`)
1660
+ }, " ( - % ) ", 4)) : De.value ? (l(), o("span", {
1661
+ key: 1,
1662
+ style: O(`font-size:${e.value.legendFontSize}px; font-variant-numeric: tabular-nums;`)
1663
+ }, " ( - % ) ", 4)) : (l(), o("span", {
1664
+ key: 2,
1665
+ style: O(`font-size:${e.value.legendFontSize}px; font-variant-numeric: tabular-nums;`)
1666
+ }, " (" + F(r(W)({
1667
+ v: t.value / P.value.total * 100,
1668
+ s: "%",
1669
+ r: e.value.dataLabelRoundingPercentage
1670
+ })) + ") ", 5))
1671
+ ], 64))
1672
+ ], 12, Ql))), 256)) : g("", !0),
1673
+ $.value === _.LINE ? (l(!0), o(p, { key: 1 }, I(d.value.legend, (t, i) => (l(), o("div", {
1674
+ class: "vue-ui-quick-chart-legend-item",
1675
+ onClick: (u) => {
1676
+ kt(t.id, d.value.legend.length - 1), ge("selectLegend", t);
1677
+ },
1678
+ style: O(`cursor: ${d.value.legend.length > 1 ? "pointer" : "default"}; opacity:${A.value.includes(t.id) ? "0.5" : "1"}`)
1679
+ }, [
1680
+ e.value.useCustomLegend ? U(a.$slots, "legend", et({
1681
+ key: 0,
1682
+ ref_for: !0
1683
+ }, { legend: t }), void 0, !0) : (l(), o(p, { key: 1 }, [
1684
+ ke(r(B), {
1685
+ name: e.value.legendIcon,
1686
+ stroke: t.color,
1687
+ size: e.value.legendIconSize
1688
+ }, null, 8, ["name", "stroke", "size"]),
1689
+ z("span", {
1690
+ style: O(`font-size:${e.value.legendFontSize}px`)
1691
+ }, F(t.name), 5)
1692
+ ], 64))
1693
+ ], 12, Kl))), 256)) : g("", !0),
1694
+ $.value === _.BAR ? (l(!0), o(p, { key: 2 }, I(s.value.legend, (t, i) => (l(), o("div", {
1695
+ class: "vue-ui-quick-chart-legend-item",
1696
+ onClick: (u) => {
1697
+ kt(t.id, s.value.legend.length - 1), ge("selectLegend", t);
1698
+ },
1699
+ style: O(`cursor: ${s.value.legend.length > 1 ? "pointer" : "default"}; opacity:${A.value.includes(t.id) ? "0.5" : "1"}`)
1700
+ }, [
1701
+ e.value.useCustomLegend ? U(a.$slots, "legend", et({
1702
+ key: 0,
1703
+ ref_for: !0
1704
+ }, { legend: t }), void 0, !0) : (l(), o(p, { key: 1 }, [
1705
+ ke(r(B), {
1706
+ name: e.value.legendIcon,
1707
+ stroke: t.color,
1708
+ size: e.value.legendIconSize
1709
+ }, null, 8, ["name", "stroke", "size"]),
1710
+ z("span", {
1711
+ style: O(`font-size:${e.value.legendFontSize}px`)
1712
+ }, F(t.name), 5)
1713
+ ], 64))
1714
+ ], 12, eo))), 256)) : g("", !0)
1715
+ ], 4)) : g("", !0),
1716
+ a.$slots.source ? (l(), o("div", {
1717
+ key: 8,
1718
+ ref_key: "source",
1719
+ ref: ut,
1720
+ dir: "auto"
1721
+ }, [
1722
+ U(a.$slots, "source", {}, void 0, !0)
1723
+ ], 512)) : g("", !0),
1724
+ ke(r(be), {
1725
+ show: me.value.showTooltip && re.value,
1726
+ backgroundColor: e.value.backgroundColor,
1727
+ color: e.value.color,
1728
+ borderRadius: e.value.tooltipBorderRadius,
1729
+ borderColor: e.value.tooltipBorderColor,
1730
+ borderWidth: e.value.tooltipBorderWidth,
1731
+ fontSize: e.value.tooltipFontSize,
1732
+ backgroundOpacity: e.value.tooltipBackgroundOpacity,
1733
+ position: e.value.tooltipPosition,
1734
+ offsetY: e.value.tooltipOffsetY,
1735
+ parent: R.value,
1736
+ content: se.value,
1737
+ isFullscreen: Ve.value,
1738
+ isCustom: r(Xe)(e.value.tooltipCustomFormat),
1739
+ smooth: e.value.tooltipSmooth,
1740
+ backdropFilter: e.value.tooltipBackdropFilter
1741
+ }, {
1742
+ "tooltip-before": K(() => [
1743
+ U(a.$slots, "tooltip-before", he(fe({ ...we.value })), void 0, !0)
1744
+ ]),
1745
+ "tooltip-after": K(() => [
1746
+ U(a.$slots, "tooltip-after", he(fe({ ...we.value })), void 0, !0)
1747
+ ]),
1748
+ _: 3
1749
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter"]),
1750
+ r(D) ? (l(), qe(La, { key: 9 })) : g("", !0)
1751
+ ], 46, Ta)) : (l(), o("div", to, [
1752
+ ke(r(B), {
1753
+ name: "circleCancel",
1754
+ stroke: "red"
1755
+ }),
1756
+ c[5] || (c[5] = z("span", null, "Dataset is not processable", -1))
1757
+ ]));
1758
+ }
1759
+ }, mo = /* @__PURE__ */ _a(ao, [["__scopeId", "data-v-d59499c1"]]);
1760
+ export {
1761
+ mo as default
1762
+ };