vue-data-ui 3.5.0 → 3.5.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 +26 -0
  2. package/dist/{ColorPicker-J5wOPCeB.js → ColorPicker-ChuwChMo.js} +58 -56
  3. package/dist/{NonSvgPenAndPaper-C7TRn0_3.js → NonSvgPenAndPaper-DVgKKLIf.js} +1 -1
  4. package/dist/{PackageVersion-Cyx_s25h.js → PackageVersion-DQvyATVa.js} +1 -1
  5. package/dist/PenAndPaper-SZQIAgkg.js +388 -0
  6. package/dist/{Title-l36lOBMx.js → Title-isbiM8i8.js} +1 -1
  7. package/dist/components/vue-ui-3d-bar.js +1 -1
  8. package/dist/components/vue-ui-accordion.js +1 -1
  9. package/dist/components/vue-ui-age-pyramid.js +1 -1
  10. package/dist/components/vue-ui-annotator.js +1 -1
  11. package/dist/components/vue-ui-bullet.js +1 -1
  12. package/dist/components/vue-ui-candlestick.js +1 -1
  13. package/dist/components/vue-ui-carousel-table.js +1 -1
  14. package/dist/components/vue-ui-chestnut.js +1 -1
  15. package/dist/components/vue-ui-chord.js +1 -1
  16. package/dist/components/vue-ui-circle-pack.js +1 -1
  17. package/dist/components/vue-ui-cursor.js +1 -1
  18. package/dist/components/vue-ui-dashboard.js +1 -1
  19. package/dist/components/vue-ui-digits.js +1 -1
  20. package/dist/components/vue-ui-donut-evolution.js +1 -1
  21. package/dist/components/vue-ui-donut.js +1 -1
  22. package/dist/components/vue-ui-dumbbell.js +1 -1
  23. package/dist/components/vue-ui-flow.js +1 -1
  24. package/dist/components/vue-ui-funnel.js +1 -1
  25. package/dist/components/vue-ui-galaxy.js +1 -1
  26. package/dist/components/vue-ui-gauge.js +1 -1
  27. package/dist/components/vue-ui-gizmo.js +1 -1
  28. package/dist/components/vue-ui-heatmap.js +1 -1
  29. package/dist/components/vue-ui-history-plot.js +1 -1
  30. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  31. package/dist/components/vue-ui-kpi.js +1 -1
  32. package/dist/components/vue-ui-mini-loader.js +1 -1
  33. package/dist/components/vue-ui-molecule.js +1 -1
  34. package/dist/components/vue-ui-mood-radar.js +1 -1
  35. package/dist/components/vue-ui-nested-donuts.js +1 -1
  36. package/dist/components/vue-ui-onion.js +1 -1
  37. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  38. package/dist/components/vue-ui-quadrant.js +1 -1
  39. package/dist/components/vue-ui-quick-chart.js +1 -1
  40. package/dist/components/vue-ui-radar.js +1 -1
  41. package/dist/components/vue-ui-rating.js +1 -1
  42. package/dist/components/vue-ui-relation-circle.js +1 -1
  43. package/dist/components/vue-ui-ridgeline.js +1 -1
  44. package/dist/components/vue-ui-rings.js +1 -1
  45. package/dist/components/vue-ui-scatter.js +1 -1
  46. package/dist/components/vue-ui-skeleton.js +1 -1
  47. package/dist/components/vue-ui-smiley.js +1 -1
  48. package/dist/components/vue-ui-spark-trend.js +1 -1
  49. package/dist/components/vue-ui-sparkbar.js +1 -1
  50. package/dist/components/vue-ui-sparkgauge.js +1 -1
  51. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  52. package/dist/components/vue-ui-sparkline.js +1 -1
  53. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  54. package/dist/components/vue-ui-stackbar.js +1 -1
  55. package/dist/components/vue-ui-strip-plot.js +1 -1
  56. package/dist/components/vue-ui-table-heatmap.js +1 -1
  57. package/dist/components/vue-ui-table-sparkline.js +1 -1
  58. package/dist/components/vue-ui-table.js +1 -1
  59. package/dist/components/vue-ui-thermometer.js +1 -1
  60. package/dist/components/vue-ui-timer.js +1 -1
  61. package/dist/components/vue-ui-tiremarks.js +1 -1
  62. package/dist/components/vue-ui-treemap.js +1 -1
  63. package/dist/components/vue-ui-vertical-bar.js +1 -1
  64. package/dist/components/vue-ui-waffle.js +1 -1
  65. package/dist/components/vue-ui-wheel.js +1 -1
  66. package/dist/components/vue-ui-word-cloud.js +1 -1
  67. package/dist/components/vue-ui-world.js +1 -1
  68. package/dist/components/vue-ui-xy-canvas.js +1 -1
  69. package/dist/components/vue-ui-xy.js +1 -1
  70. package/dist/style.css +1 -1
  71. package/dist/types/vue-data-ui.d.ts +17 -8
  72. package/dist/{useNestedProp-BjZe1Y85.js → useNestedProp-DjGXw6S9.js} +22 -8
  73. package/dist/{vue-data-ui-DxgRqCAo.js → vue-data-ui-B_RxfmEm.js} +63 -63
  74. package/dist/vue-data-ui.js +64 -64
  75. package/dist/{vue-ui-3d-bar-DmNJp8SY.js → vue-ui-3d-bar-CMNYyVa2.js} +454 -434
  76. package/dist/{vue-ui-accordion-CZ0thhxa.js → vue-ui-accordion-CqhVCfc2.js} +1 -1
  77. package/dist/{vue-ui-age-pyramid-CPAP3sNY.js → vue-ui-age-pyramid-Vqa9iYXE.js} +180 -160
  78. package/dist/{vue-ui-annotator-BylDgUVb.js → vue-ui-annotator-nNv10fBm.js} +3 -3
  79. package/dist/{vue-ui-bullet-Ce6uvCQJ.js → vue-ui-bullet-BWEBeYV5.js} +190 -170
  80. package/dist/{vue-ui-candlestick-DewevWV_.js → vue-ui-candlestick-BoLzL0g1.js} +201 -181
  81. package/dist/{vue-ui-carousel-table-Dv1CDfE5.js → vue-ui-carousel-table-Bi6wvUUU.js} +2 -2
  82. package/dist/{vue-ui-chestnut-D9sdFZ4E.js → vue-ui-chestnut-BGz1TLXG.js} +375 -355
  83. package/dist/vue-ui-chord-CebhS7ln.js +1153 -0
  84. package/dist/{vue-ui-circle-pack-Be74QB_0.js → vue-ui-circle-pack-7PJVyKjp.js} +289 -269
  85. package/dist/{vue-ui-cursor-ik59bfC4.js → vue-ui-cursor-qYLAwvzn.js} +1 -1
  86. package/dist/vue-ui-dashboard-DcmMvhgM.js +432 -0
  87. package/dist/{vue-ui-digits-ByNNcWXi.js → vue-ui-digits-DyE8eU1m.js} +1 -1
  88. package/dist/{vue-ui-donut-BRGFcgxS.js → vue-ui-donut-CxZcJFTo.js} +462 -442
  89. package/dist/{vue-ui-donut-evolution-DJ0C-7jH.js → vue-ui-donut-evolution-BVYL-BUJ.js} +293 -273
  90. package/dist/{vue-ui-dumbbell-iQJ0BUhm.js → vue-ui-dumbbell-QxZn86A3.js} +210 -190
  91. package/dist/{vue-ui-flow-CTYFoib3.js → vue-ui-flow-DEI5LRch.js} +339 -319
  92. package/dist/{vue-ui-funnel-CG55Xcdy.js → vue-ui-funnel-B_A5orFg.js} +218 -198
  93. package/dist/{vue-ui-galaxy-BQrxjKZJ.js → vue-ui-galaxy-CUoDRr-O.js} +201 -181
  94. package/dist/{vue-ui-gauge-Tc-0NI0Y.js → vue-ui-gauge-46tSRZN5.js} +311 -291
  95. package/dist/{vue-ui-gizmo-P8h-gnLd.js → vue-ui-gizmo-BOgbsXao.js} +2 -2
  96. package/dist/{vue-ui-heatmap-BZimPzsL.js → vue-ui-heatmap-DKKjl1A2.js} +303 -283
  97. package/dist/{vue-ui-history-plot-BVzbuqYY.js → vue-ui-history-plot-C6p_aThr.js} +229 -209
  98. package/dist/{vue-ui-kpi-BGGff8LM.js → vue-ui-kpi-B1yJ83aF.js} +2 -2
  99. package/dist/{vue-ui-mini-loader-CSF-7TJL.js → vue-ui-mini-loader-BudcNBg-.js} +1 -1
  100. package/dist/{vue-ui-molecule-BALqwB8c.js → vue-ui-molecule-L90GnHee.js} +156 -136
  101. package/dist/{vue-ui-mood-radar-QJ5nlZby.js → vue-ui-mood-radar-Dhigm5rw.js} +266 -246
  102. package/dist/{vue-ui-nested-donuts-CmUabkkQ.js → vue-ui-nested-donuts-D0MCLs5n.js} +506 -486
  103. package/dist/{vue-ui-onion-DAOCf3f8.js → vue-ui-onion-B7yPJ3gL.js} +220 -200
  104. package/dist/{vue-ui-parallel-coordinate-plot-D8jTuFjq.js → vue-ui-parallel-coordinate-plot-DY21ivNe.js} +235 -215
  105. package/dist/{vue-ui-quadrant-CO52mSRY.js → vue-ui-quadrant-b0vMRaq-.js} +463 -443
  106. package/dist/{vue-ui-quick-chart-DEaVSldE.js → vue-ui-quick-chart-VK2EN7sh.js} +288 -268
  107. package/dist/{vue-ui-radar-C5V4hhbW.js → vue-ui-radar-B5Vkoz9M.js} +331 -311
  108. package/dist/{vue-ui-rating-CiMoFM_c.js → vue-ui-rating-BH4DW1ZY.js} +1 -1
  109. package/dist/{vue-ui-relation-circle-CbMM0Jka.js → vue-ui-relation-circle-XHbE-ZUX.js} +228 -208
  110. package/dist/{vue-ui-ridgeline-CXCIRDq6.js → vue-ui-ridgeline-CAMNq-p_.js} +242 -222
  111. package/dist/{vue-ui-rings-BpUcyqo7.js → vue-ui-rings-ImGOqm_J.js} +189 -169
  112. package/dist/{vue-ui-scatter--Dxe-hfO.js → vue-ui-scatter-CterNJYe.js} +275 -255
  113. package/dist/{vue-ui-skeleton-BWq-VDzg.js → vue-ui-skeleton-CykXHWj-.js} +2 -2
  114. package/dist/{vue-ui-smiley-sGFRbn31.js → vue-ui-smiley-DnGm6qrK.js} +1 -1
  115. package/dist/{vue-ui-spark-trend-T4J_YOa_.js → vue-ui-spark-trend-N1AsNQJA.js} +2 -2
  116. package/dist/{vue-ui-sparkbar-DnKP55Vu.js → vue-ui-sparkbar-Bvsi5DTT.js} +2 -2
  117. package/dist/{vue-ui-sparkgauge-BDQLP-zi.js → vue-ui-sparkgauge-DyJmWCWT.js} +2 -2
  118. package/dist/{vue-ui-sparkhistogram-Dm7QXrA-.js → vue-ui-sparkhistogram-5eKrkmSb.js} +143 -140
  119. package/dist/{vue-ui-sparkline-tXGDLHRy.js → vue-ui-sparkline-ChKAzlVq.js} +2 -2
  120. package/dist/{vue-ui-sparkstackbar-M53Nt07M.js → vue-ui-sparkstackbar-BXNy6nuw.js} +2 -2
  121. package/dist/vue-ui-stackbar-1IwvUYBO.js +1827 -0
  122. package/dist/{vue-ui-strip-plot-BX9i3wMn.js → vue-ui-strip-plot-B1wGxP8-.js} +245 -225
  123. package/dist/{vue-ui-table-7r02N9R9.js → vue-ui-table-DSsIrT4L.js} +3 -3
  124. package/dist/{vue-ui-table-heatmap-BqCEBoUf.js → vue-ui-table-heatmap-DXFHy7-E.js} +1 -1
  125. package/dist/{vue-ui-table-sparkline-DZaAh10E.js → vue-ui-table-sparkline-DpqY_4ay.js} +2 -2
  126. package/dist/vue-ui-thermometer-CMKvSA8p.js +584 -0
  127. package/dist/{vue-ui-timer-Ds-MJoW2.js → vue-ui-timer-BpdCY_wg.js} +3 -3
  128. package/dist/vue-ui-tiremarks-CNipzVli.js +450 -0
  129. package/dist/{vue-ui-treemap-BEvl8hiw.js → vue-ui-treemap-DPE8SY0_.js} +453 -433
  130. package/dist/{vue-ui-vertical-bar-D8dtM8sw.js → vue-ui-vertical-bar-ZU1GCbX0.js} +323 -303
  131. package/dist/{vue-ui-waffle-B3q-2SCR.js → vue-ui-waffle-z7nuSuSV.js} +219 -199
  132. package/dist/vue-ui-wheel-DLRoRjeM.js +663 -0
  133. package/dist/{vue-ui-word-cloud-ChT7uLbN.js → vue-ui-word-cloud-D2r5E3pP.js} +248 -228
  134. package/dist/{vue-ui-world-CdP4g_3_.js → vue-ui-world-goXYnTyM.js} +287 -267
  135. package/dist/{vue-ui-xy-B68qQ-gX.js → vue-ui-xy-NDDbNbds.js} +389 -369
  136. package/dist/{vue-ui-xy-canvas-DDngEA1s.js → vue-ui-xy-canvas-2a6NlQe3.js} +4 -4
  137. package/package.json +4 -4
  138. package/dist/PenAndPaper-DSvu9dwa.js +0 -373
  139. package/dist/vue-ui-chord-BG4dxKNA.js +0 -1133
  140. package/dist/vue-ui-dashboard-C4BLwHey.js +0 -412
  141. package/dist/vue-ui-stackbar-CkBOjryQ.js +0 -1724
  142. package/dist/vue-ui-thermometer-CFPt3MOv.js +0 -564
  143. package/dist/vue-ui-tiremarks-2eIQ6vxu.js +0 -430
  144. package/dist/vue-ui-wheel-BpirIgAG.js +0 -643
@@ -0,0 +1,1827 @@
1
+ import { defineAsyncComponent as j, useSlots as Cl, computed as g, ref as d, onMounted as na, toRefs as Ml, watch as Me, shallowRef as ia, onBeforeUnmount as yt, watchEffect as ua, nextTick as _l, createElementBlock as u, openBlock as o, normalizeStyle as ne, normalizeClass as he, createBlock as ee, createCommentVNode as f, renderSlot as w, createElementVNode as te, createVNode as _e, unref as m, withCtx as S, normalizeProps as H, guardReactiveProps as X, createSlots as gt, Fragment as x, renderList as L, mergeProps as Te, toDisplayString as E, Teleport as Tl, resolveDynamicComponent as $l, createTextVNode as ca } from "vue";
2
+ import { u as Al, a as va } from "./useNestedProp-DjGXw6S9.js";
3
+ import { c as ha, t as Pl, b as Nl, p as He, O as de, e as Ol, o as da, f as ya, g as Rl, h as Il, aj as $e, n as ga, m as fa, v as Fl, X as Dl, S as Vl, r as ie, J as ba, a as ye, d as ae, M as El, $ as Ul, G as ma, P as Bl, Q as Hl, H as Xl } from "./lib-C_mNZmhD.js";
4
+ import { t as ft, u as Yl } from "./useResponsive-DfdjqQps.js";
5
+ import { u as Wl } from "./usePrinter-DTzqpYKF.js";
6
+ import { u as Gl, B as ql } from "./BaseScanner-BgWxam9d.js";
7
+ import { u as pa, a as Jl, l as Zl } from "./useTimeLabels-BGFjWgrv.js";
8
+ import { u as Ql } from "./useSvgExport-DrjCWun4.js";
9
+ import { u as Kl } from "./useUserOptionState-BIvW1Kz7.js";
10
+ import { u as jl } from "./useChartAccessibility-9icAAmYg.js";
11
+ import { u as er } from "./useTimeLabelCollider-CIsgDrl9.js";
12
+ import tr from "./img-BecE5qXd.js";
13
+ import ar from "./Title-isbiM8i8.js";
14
+ import { _ as lr } from "./Shape-CNXKB8O0.js";
15
+ import { t as rr } from "./themes-AUNCOb2G.js";
16
+ import sr from "./Legend-G6GMcdAc.js";
17
+ import { S as or } from "./SlicerPreview-ij72TAs6.js";
18
+ import { _ as nr } from "./_plugin-vue_export-helper-CHgC5LLL.js";
19
+ const ir = ["id"], ur = ["id"], cr = ["xmlns", "viewBox"], vr = ["x", "y", "width", "height"], hr = { key: 1 }, dr = ["id"], yr = ["stop-color"], gr = ["stop-color"], fr = ["stop-color"], br = ["x", "y", "width", "height", "stroke", "stroke-width", "stroke-linecap", "stroke-linejoin", "stroke-dasharray"], mr = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], pr = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], xr = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], kr = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], wr = { key: 0 }, Lr = ["x", "y", "height", "rx", "width", "fill", "stroke", "stroke-width"], Sr = { key: 0 }, zr = ["x", "y", "height", "rx", "width", "fill", "stroke", "stroke-width"], Cr = ["x", "y", "width", "rx", "height", "fill", "stroke", "stroke-width"], Mr = { key: 0 }, _r = ["x", "y", "width", "rx", "height", "fill", "stroke", "stroke-width"], Tr = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], $r = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ar = ["x", "y", "font-size", "fill", "font-weight"], Pr = ["transform", "font-size", "fill", "font-weight"], Nr = ["x", "y", "font-size", "fill", "font-weight"], Or = ["x", "y", "font-size", "font-weight", "fill"], Rr = ["x", "y", "font-size", "fill", "font-weight"], Ir = ["x", "y", "font-size", "font-weight", "fill"], Fr = ["x1", "x2", "y1", "y2", "stroke"], Dr = ["x", "y", "font-size", "font-weight", "fill"], Vr = ["x1", "x2", "y1", "y2", "stroke"], Er = ["font-size", "font-weight", "fill", "text-anchor", "transform"], Ur = { key: 0 }, Br = { key: 1 }, Hr = ["text-anchor", "font-size", "font-weight", "fill", "transform", "onClick"], Xr = ["text-anchor", "font-size", "fill", "transform", "innerHTML", "onClick"], Yr = { key: 0 }, Wr = { key: 1 }, Gr = ["font-size", "font-weight", "fill", "x", "y", "onClick"], qr = ["font-size", "font-weight", "fill", "x", "y", "onClick", "innerHTML"], Jr = ["x", "y", "width", "height", "onClick", "onMouseenter", "onMouseleave", "fill"], Zr = ["x", "y", "width", "height", "onClick", "onMouseenter", "onMouseleave", "fill"], Qr = ["data-start", "data-end"], Kr = {
20
+ key: 3,
21
+ class: "vue-data-ui-watermark"
22
+ }, jr = ["x", "y", "height", "width", "fill", "stroke"], es = ["id"], ts = ["onClick"], as = ["innerHTML"], ls = {
23
+ __name: "vue-ui-stackbar",
24
+ props: {
25
+ config: {
26
+ type: Object,
27
+ default() {
28
+ return {};
29
+ }
30
+ },
31
+ dataset: {
32
+ type: Array,
33
+ default() {
34
+ return [];
35
+ }
36
+ },
37
+ selectedXIndex: {
38
+ type: Number,
39
+ default: void 0
40
+ }
41
+ },
42
+ emits: ["selectDatapoint", "selectLegend", "selectTimeLabel", "selectX"],
43
+ setup(Xe, { expose: xa, emit: ka }) {
44
+ const wa = j(() => import("./Tooltip-oWCO1HKy.js")), La = j(() => import("./BaseIcon-BmMbm4d0.js")), Sa = j(() => import("./vue-ui-accordion-CqhVCfc2.js")), za = j(() => import("./DataTable-BT7VF2ua.js")), Ca = j(() => import("./PenAndPaper-SZQIAgkg.js")), Ma = j(() => import("./UserOptions-CGnQt6Fd.js")), _a = j(() => import("./PackageVersion-DQvyATVa.js")), Ta = j(() => import("./BaseDraggableDialog-ymf2sfB8.js")), { vue_ui_stackbar: $a } = Al(), Aa = Cl(), k = Xe, ge = ka, fe = g({
45
+ get() {
46
+ return !!k.dataset && k.dataset.length;
47
+ },
48
+ set(a) {
49
+ return a;
50
+ }
51
+ }), J = d(null), U = d(ha()), Ye = d(!1), We = d(null), Ge = d(""), P = d([]), bt = d(0), mt = d(null), pt = d(null), be = d(null), xt = d(null), me = d(!1), q = d(null), le = d(!1), kt = d(0), Pa = d(0), Na = d(0), wt = d(!1), pe = d(null), qe = d(null), Je = d(null), Ze = d(null), re = d(null), se = d(null), Oa = d(null), Qe = d(null), Ke = d(null);
52
+ na(() => {
53
+ wt.value = !0, rt();
54
+ });
55
+ const e = d(at()), { loading: xe, FINAL_DATASET: je, manualLoading: Ae } = Gl({
56
+ ...Ml(k),
57
+ FINAL_CONFIG: e,
58
+ prepareConfig: at,
59
+ callback: () => {
60
+ Promise.resolve().then(async () => {
61
+ await Ee();
62
+ });
63
+ },
64
+ skeletonDataset: [
65
+ {
66
+ name: "",
67
+ series: [2, 3, 5, 8, 13, 21],
68
+ color: "#BABABA"
69
+ },
70
+ {
71
+ name: "",
72
+ series: [1, 2, 3, 5, 8, 13],
73
+ color: "#CACACA"
74
+ }
75
+ ],
76
+ skeletonConfig: Pl({
77
+ defaultConfig: e.value,
78
+ userConfig: {
79
+ userOptions: { show: !1 },
80
+ useCssAnimation: !1,
81
+ table: { show: !1 },
82
+ tooltip: { show: !1 },
83
+ style: {
84
+ chart: {
85
+ backgroundColor: "#99999930",
86
+ bars: {
87
+ totalValues: { show: !1 },
88
+ dataLabels: { show: !1 }
89
+ },
90
+ grid: {
91
+ scale: {
92
+ scaleMin: 0,
93
+ scaleMax: 40
94
+ },
95
+ x: {
96
+ axisColor: "#6A6A6A",
97
+ linesColor: "#6A6A6A",
98
+ axisName: { show: !1 },
99
+ timeLabels: { show: !1 }
100
+ },
101
+ y: {
102
+ axisColor: "#6A6A6A",
103
+ linesColor: "#6A6A6A",
104
+ axisName: { show: !1 },
105
+ axisLabels: { show: !1 }
106
+ }
107
+ },
108
+ legend: {
109
+ backgroundColor: "transparent"
110
+ },
111
+ padding: {
112
+ left: 24,
113
+ right: 24,
114
+ bottom: 12
115
+ },
116
+ zoom: {
117
+ show: !1,
118
+ startIndex: null,
119
+ endIndex: null
120
+ }
121
+ }
122
+ }
123
+ }
124
+ })
125
+ }), { userOptionsVisible: et, setUserOptionsVisibility: Lt, keepUserOptionState: St } = Kl({ config: e.value }), { svgRef: tt } = jl({ config: e.value.style.chart.title });
126
+ function Ra() {
127
+ Lt(!0);
128
+ }
129
+ function Ia() {
130
+ Lt(!1), ge("selectX", { seriesIndex: null, datapoint: null }), q.value = null;
131
+ }
132
+ function at() {
133
+ const a = va({
134
+ userConfig: k.config,
135
+ defaultConfig: $a
136
+ });
137
+ let l = {};
138
+ return a.theme ? l = {
139
+ ...va({
140
+ userConfig: rr.vue_ui_stackbar[a.theme] || k.config,
141
+ defaultConfig: a
142
+ }),
143
+ customPalette: Nl[a.theme] || He
144
+ } : l = a, k.config && de(k.config, "style.chart.grid.scale.scaleMin") ? l.style.chart.grid.scale.scaleMin = k.config.style.chart.grid.scale.scaleMin : l.style.chart.grid.scale.scaleMin = null, k.config && de(k.config, "style.chart.grid.scale.scaleMax") ? l.style.chart.grid.scale.scaleMax = k.config.style.chart.grid.scale.scaleMax : l.style.chart.grid.scale.scaleMax = null, k.config && de(k.config, "style.chart.zoom.startIndex") ? l.style.chart.zoom.startIndex = k.config.style.chart.zoom.startIndex : l.style.chart.zoom.startIndex = null, k.config && de(k.config, "style.chart.zoom.endIndex") ? l.style.chart.zoom.endIndex = k.config.style.chart.zoom.endIndex : l.style.chart.zoom.endIndex = null, k.config && de(k.config, "style.chart.bars.dataLabels.hideUnderValue") ? l.style.chart.bars.dataLabels.hideUnderValue = k.config.style.chart.bars.dataLabels.hideUnderValue : l.style.chart.bars.dataLabels.hideUnderValue = null, k.config && de(k.config, "style.chart.bars.dataLabels.hideUnderPercentage") ? l.style.chart.bars.dataLabels.hideUnderPercentage = k.config.style.chart.bars.dataLabels.hideUnderPercentage : l.style.chart.bars.dataLabels.hideUnderPercentage = null, l;
145
+ }
146
+ const zt = g(() => e.value.style.chart.bars.dataLabels.hideUnderValue !== null), Ct = g(() => e.value.style.chart.bars.dataLabels.hideUnderPercentage !== null);
147
+ Me(() => k.config, (a) => {
148
+ xe.value || (e.value = at()), et.value = !e.value.userOptions.showOnChartHover, rt(), kt.value += 1, Pa.value += 1, Na.value += 1, $.value.dataLabels.show = e.value.style.chart.bars.dataLabels.show, $.value.showTable = e.value.table.show, $.value.showTooltip = e.value.style.chart.tooltip.show, Oe();
149
+ }, { deep: !0 }), Me(() => k.dataset, (a) => {
150
+ Array.isArray(a) && a.length > 0 && (Ae.value = !1), Rt();
151
+ }, { deep: !0 });
152
+ const $ = d({
153
+ dataLabels: {
154
+ show: e.value.style.chart.bars.dataLabels.show
155
+ },
156
+ showTable: e.value.table.show,
157
+ showTooltip: e.value.style.chart.tooltip.show
158
+ });
159
+ Me(e, () => {
160
+ $.value = {
161
+ dataLabels: {
162
+ show: e.value.style.chart.bars.dataLabels.show
163
+ },
164
+ showTable: e.value.table.show,
165
+ showTooltip: e.value.style.chart.tooltip.show
166
+ };
167
+ }, { immediate: !0 });
168
+ const { isPrinting: Mt, isImaging: _t, generatePdf: Tt, generateImage: $t } = Wl({
169
+ elementId: `stackbar_${U.value}`,
170
+ fileName: e.value.style.chart.title.text || "vue-ui-stackbar",
171
+ options: e.value.userOptions.print
172
+ }), ue = d({
173
+ width: e.value.style.chart.width,
174
+ height: e.value.style.chart.height,
175
+ paddingRatio: {
176
+ top: e.value.style.chart.padding.top / e.value.style.chart.height,
177
+ right: e.value.style.chart.padding.right / e.value.style.chart.width,
178
+ bottom: e.value.style.chart.padding.bottom / e.value.style.chart.height,
179
+ left: e.value.style.chart.padding.left / e.value.style.chart.width
180
+ }
181
+ }), Fa = g(() => Ol(e.value.customPalette)), Q = ia(null), ce = ia(null), At = d(null);
182
+ na(() => {
183
+ rt();
184
+ });
185
+ const lt = g(() => !!e.value.debug);
186
+ function rt() {
187
+ if (da(k.dataset) ? (ya({
188
+ componentName: "VueUiStackbar",
189
+ type: "dataset",
190
+ debug: lt.value
191
+ }), Ae.value = !0) : k.dataset.forEach((a, l) => {
192
+ Rl({
193
+ datasetObject: a,
194
+ requiredAttributes: ["name", "series"]
195
+ }).forEach((t) => {
196
+ fe.value = !1, ya({
197
+ componentName: "VueUiStackbar",
198
+ type: "datasetSerieAttribute",
199
+ property: t,
200
+ index: l,
201
+ debug: lt.value
202
+ }), Ae.value = !0;
203
+ });
204
+ }), da(k.dataset) || (Ae.value = e.value.loading), setTimeout(() => {
205
+ le.value = !0;
206
+ }, 10), e.value.responsive) {
207
+ const a = ft(() => {
208
+ le.value = !1;
209
+ const { width: l, height: t } = Yl({
210
+ chart: J.value,
211
+ title: e.value.style.chart.title.text ? mt.value : null,
212
+ legend: e.value.style.chart.legend.show ? pt.value : null,
213
+ slicer: e.value.style.chart.zoom.show && N.value > 6 ? be.value.$el : null,
214
+ source: xt.value
215
+ });
216
+ requestAnimationFrame(() => {
217
+ ue.value.width = l, ue.value.height = t - 12, clearTimeout(At.value), At.value = setTimeout(() => {
218
+ le.value = !0;
219
+ }, 10);
220
+ });
221
+ });
222
+ Q.value && (ce.value && Q.value.unobserve(ce.value), Q.value.disconnect()), Q.value = new ResizeObserver(a), ce.value = J.value.parentNode, Q.value.observe(ce.value);
223
+ }
224
+ Ee();
225
+ }
226
+ yt(() => {
227
+ Q.value && (ce.value && Q.value.unobserve(ce.value), Q.value.disconnect());
228
+ });
229
+ function Da() {
230
+ let a = 0;
231
+ e.value.orientation === "vertical" && re.value && (a = Array.from(re.value.querySelectorAll("text")).reduce((r, c) => {
232
+ const s = c.getComputedTextLength();
233
+ return s > r ? s : r;
234
+ }, 0)), e.value.orientation === "horizontal" && se.value && (a = Array.from(se.value.querySelectorAll("text")).reduce((r, c) => {
235
+ const s = c.getComputedTextLength();
236
+ return s > r ? s : r;
237
+ }, 0));
238
+ const l = Ze.value ? Ze.value.getBoundingClientRect().width : 0;
239
+ return a + l + (l ? 24 : 0);
240
+ }
241
+ const Pe = d(0), Ne = d(0), Va = ft((a) => {
242
+ Pe.value = a;
243
+ }, 100);
244
+ ua((a) => {
245
+ const l = e.value.orientation === "vertical" ? se.value : re.value;
246
+ if (!l) return;
247
+ const t = new ResizeObserver((r) => {
248
+ Va(r[0].contentRect.height);
249
+ });
250
+ t.observe(l), a(() => t.disconnect());
251
+ });
252
+ const Ea = ft((a) => {
253
+ Ne.value = a + e.value.style.chart.bars.totalValues.fontSize;
254
+ }, 100);
255
+ function Ua() {
256
+ if (e.value.orientation !== "horizontal") return 0;
257
+ const a = Qe.value;
258
+ if (!a) return 0;
259
+ const l = Array.from(a.querySelectorAll("text"));
260
+ if (!l.length) return 0;
261
+ let t = -1 / 0;
262
+ for (const c of l)
263
+ try {
264
+ const s = c.getBBox(), b = s.x + s.width;
265
+ b > t && (t = b);
266
+ } catch {
267
+ }
268
+ return Math.max(0, t - (n.value?.right ?? 0));
269
+ }
270
+ ua((a) => {
271
+ if (e.value.orientation !== "horizontal") return;
272
+ const l = Qe.value;
273
+ if (!l) return;
274
+ const t = () => {
275
+ const s = Ua();
276
+ Ea(s);
277
+ };
278
+ t();
279
+ const r = new ResizeObserver(t);
280
+ r.observe(l);
281
+ const c = new MutationObserver(t);
282
+ c.observe(l, { childList: !0, subtree: !0, characterData: !0 }), a(() => {
283
+ r.disconnect(), c.disconnect();
284
+ });
285
+ }), yt(() => {
286
+ Pe.value = 0, Ne.value = 0;
287
+ });
288
+ const Pt = g(() => {
289
+ let a = 0;
290
+ Je.value && (a = Je.value.getBBox().height);
291
+ let l = 0;
292
+ return e.value.orientation === "vertical" && se.value && (l = Pe.value), e.value.orientation === "horizontal" && re.value && (l = Pe.value), a + l;
293
+ }), n = g(() => {
294
+ const { height: a, width: l } = ue.value, { right: t } = ue.value.paddingRatio;
295
+ let r = e.value.style.chart.bars.totalValues.show && k.dataset && k.dataset.length > 1 ? e.value.style.chart.bars.totalValues.fontSize * 1.3 : 0, c = 0;
296
+ e.value.style.chart.grid.y.axisLabels.show && (c = Da());
297
+ const s = e.value.style.chart.padding.top + r, b = l - l * t - Ne.value, z = a - e.value.style.chart.padding.bottom - Pt.value - r, T = e.value.style.chart.padding.left + c, O = l - T - l * t - Ne.value, A = a - s - e.value.style.chart.padding.bottom - Pt.value - r;
298
+ return {
299
+ chartHeight: a,
300
+ chartWidth: l,
301
+ top: s,
302
+ right: b,
303
+ bottom: z,
304
+ left: T,
305
+ width: Math.max(0, O),
306
+ height: Math.max(0, A)
307
+ };
308
+ }), Ba = g(() => {
309
+ const { left: a, top: l, width: t, height: r } = n.value, c = v.value.start, s = v.value.end, b = Math.max(1, s - c), z = Math.max(0, Math.min(b, (D.value.start ?? c) - c)), T = Math.max(0, Math.min(b, (D.value.end ?? s) - c)), O = Math.max(0, T - z), A = {
310
+ fill: e.value.style.chart.zoom.preview.fill,
311
+ stroke: e.value.style.chart.zoom.preview.stroke,
312
+ "stroke-width": e.value.style.chart.zoom.preview.strokeWidth,
313
+ "stroke-dasharray": e.value.style.chart.zoom.preview.strokeDasharray,
314
+ "stroke-linecap": "round",
315
+ "stroke-linejoin": "round",
316
+ style: {
317
+ pointerEvents: "none",
318
+ transition: "none !important",
319
+ animation: "none !important"
320
+ }
321
+ };
322
+ if (e.value.orientation === "horizontal") {
323
+ const F = r / b;
324
+ return {
325
+ x: a,
326
+ y: l + z * F,
327
+ width: t,
328
+ height: O * F,
329
+ ...A
330
+ };
331
+ } else {
332
+ const F = t / b;
333
+ return {
334
+ x: a + z * F,
335
+ y: l,
336
+ width: O * F,
337
+ height: r,
338
+ ...A
339
+ };
340
+ }
341
+ }), Y = g(() => je.value.map((a, l) => {
342
+ const t = Il(a.color) || Fa.value[l] || He[l] || He[l % He.length];
343
+ return {
344
+ ...a,
345
+ // In distributed mode, all values are converted to positive
346
+ series: JSON.parse(JSON.stringify(a.series)).map((r) => e.value.style.chart.bars.distributed ? Math.abs(r) : r),
347
+ // Store signs to manage display of neg values in distributed mode
348
+ signedSeries: a.series.map((r) => r >= 0 ? 1 : -1),
349
+ absoluteIndex: l,
350
+ id: ha(),
351
+ color: t
352
+ };
353
+ })), N = g(() => Math.max(...Y.value.filter((a) => !P.value.includes(a.id)).map((a) => a.series.length)));
354
+ function Ha(a) {
355
+ Ke.value = a;
356
+ }
357
+ const v = d({
358
+ start: 0,
359
+ end: Math.max(...je.value.map((a) => a.series.length))
360
+ }), D = d({ start: 0, end: Math.max(...je.value.map((a) => a.series.length)) }), Nt = g(() => e.value.style.chart.zoom.preview.enable && (D.value.start !== v.value.start || D.value.end !== v.value.end));
361
+ function Ot(a, l) {
362
+ D.value[a] = l;
363
+ }
364
+ function Oe() {
365
+ const a = N.value;
366
+ let l = Math.max(0, Math.min(v.value.start ?? 0, a - 1)), t = Math.max(l + 1, Math.min(v.value.end ?? a, a));
367
+ (!Number.isFinite(l) || !Number.isFinite(t) || t <= l) && (l = 0, t = a), v.value.start = l, v.value.end = t, D.value.start = l, D.value.end = t, be.value && (be.value.setStartValue(l), be.value.setEndValue(t));
368
+ }
369
+ const ke = d(null);
370
+ function Xa() {
371
+ return new Promise((a) => requestAnimationFrame(
372
+ () => requestAnimationFrame(() => a())
373
+ ));
374
+ }
375
+ yt(() => {
376
+ ke.value && cancelAnimationFrame(ke.value);
377
+ });
378
+ async function Rt() {
379
+ Ee(), await _l(), ke.value && cancelAnimationFrame(ke.value), ke.value = requestAnimationFrame(async () => {
380
+ await Xa(), Ee();
381
+ });
382
+ }
383
+ const p = g(() => {
384
+ let a;
385
+ return e.value.orientation === "vertical" ? a = n.value.width / (v.value.end - v.value.start) : a = n.value.height / (v.value.end - v.value.start), a <= 0 ? 0 : a;
386
+ }), we = g(() => $e(Y.value.filter((a) => !P.value.includes(a.id))).slice(v.value.start, v.value.end)), oe = g(() => e.value.style.chart.zoom.minimap.show ? $e(Y.value.filter((a) => !P.value.includes(a.id))) : []), Ya = g(() => e.value.style.chart.zoom.minimap.show ? [{
387
+ name: "",
388
+ series: oe.value,
389
+ color: "#000000",
390
+ isVisible: !0
391
+ }] : []), Wa = g(() => $e(Y.value.filter((a) => !P.value.includes(a.id)).map((a) => ({
392
+ ...a,
393
+ series: a.series.map((l, t) => a.signedSeries[t] === -1 && l >= 0 ? -l : l)
394
+ }))).slice(v.value.start, v.value.end)), Re = g(() => {
395
+ const a = Y.value.filter((l) => !P.value.includes(l.id));
396
+ return {
397
+ positive: $e(a.map((l) => ({
398
+ ...l,
399
+ series: l.series.slice(v.value.start, v.value.end).map((t) => t >= 0 ? t : 0)
400
+ }))),
401
+ negative: $e(a.map((l) => ({
402
+ ...l,
403
+ series: l.series.slice(v.value.start, v.value.end).map((t) => t < 0 ? t : 0)
404
+ })))
405
+ };
406
+ }), B = g(() => {
407
+ const a = e.value.style.chart.grid.scale.scaleMax !== null && !e.value.style.chart.bars.distributed ? e.value.style.chart.grid.scale.scaleMax : Math.max(...Re.value.positive), l = Math.min(...Re.value.negative), t = e.value.style.chart.grid.scale.scaleMin !== null && !e.value.style.chart.bars.distributed ? e.value.style.chart.grid.scale.scaleMin : [-1 / 0, 1 / 0, NaN, void 0, null].includes(l) ? 0 : l, r = !e.value.style.chart.bars.distributed && (e.value.style.chart.grid.scale.scaleMax !== null || e.value.style.chart.grid.scale.scaleMin !== null) ? ga(t > 0 ? 0 : t, a < 0 ? 0 : a, e.value.style.chart.grid.scale.ticks) : fa(t > 0 ? 0 : t, a < 0 ? 0 : a, e.value.style.chart.grid.scale.ticks);
408
+ return r.ticks.map((c) => ({
409
+ zero: n.value.bottom - n.value.height * (Math.abs(r.min) / (r.max + Math.abs(r.min))),
410
+ y: n.value.bottom - n.value.height * ((c + Math.abs(r.min)) / (r.max + Math.abs(r.min))),
411
+ x: n.value.left - 8,
412
+ horizontal_zero: n.value.left + n.value.width * (Math.abs(r.min) / (r.max + Math.abs(r.min))),
413
+ horizontal_x: n.value.left + n.value.width * ((c + Math.abs(r.min)) / (r.max + Math.abs(r.min))),
414
+ horizontal_y: n.value.bottom - 8,
415
+ value: c
416
+ }));
417
+ }), I = g(() => pa({
418
+ values: e.value.style.chart.grid.x.timeLabels.values,
419
+ maxDatapoints: N.value,
420
+ formatter: e.value.style.chart.grid.x.timeLabels.datetimeFormatter,
421
+ start: v.value.start,
422
+ end: v.value.end
423
+ })), Le = g(() => pa({
424
+ values: e.value.style.chart.grid.x.timeLabels.values,
425
+ maxDatapoints: N.value,
426
+ formatter: e.value.style.chart.grid.x.timeLabels.datetimeFormatter,
427
+ start: 0,
428
+ end: N.value
429
+ })), Ga = g(() => {
430
+ const a = e.value.style.chart.grid.x.timeLabels.modulo;
431
+ return I.value.length ? Math.min(a, [...new Set(I.value.map((l) => l.text))].length) : a;
432
+ }), It = g(() => {
433
+ const a = e.value.style.chart.grid.x.timeLabels, l = I.value || [], t = Le.value || [], r = v.value.start ?? 0, c = q.value, s = N.value, b = l.map((T) => T?.text ?? ""), z = t.map((T) => T?.text ?? "");
434
+ return Fl(
435
+ !!a.showOnlyFirstAndLast,
436
+ !!a.showOnlyAtModulo,
437
+ Math.max(1, Ga.value || 1),
438
+ b,
439
+ z,
440
+ r,
441
+ c,
442
+ s
443
+ );
444
+ }), Ft = g(() => {
445
+ const a = e.value.style.chart.grid.x.timeLabels.datetimeFormatter, l = Jl({
446
+ useUTC: a.useUTC,
447
+ locale: Zl[a.locale] || { months: [], shortMonths: [], days: [], shortDays: [] },
448
+ januaryAsYear: a.januaryAsYear
449
+ });
450
+ return (t, r) => {
451
+ const s = e.value.style.chart.grid.x.timeLabels.values?.[t];
452
+ return s == null ? "" : (l.formatDate(new Date(s), r), l.formatDate(new Date(s), r));
453
+ };
454
+ }), Dt = g(() => (e.value.style.chart.grid.x.timeLabels.values || []).map((l, t) => ({
455
+ text: Ft.value(t, e.value.style.chart.zoom.timeFormat),
456
+ absoluteIndex: t
457
+ }))), st = g(() => (e.value.style.chart.grid.x.timeLabels.values || []).map((l, t) => ({
458
+ text: Ft.value(t, e.value.style.chart.tooltip.timeFormat),
459
+ absoluteIndex: t
460
+ }))), C = g(() => {
461
+ if (!fe.value && !xe.value) return [];
462
+ let a = Array(N.value).fill(0), l = Array(N.value).fill(0), t = Array(N.value).fill(0), r = Array(N.value).fill(0);
463
+ const c = Math.max(...Re.value.positive) || 0, s = Math.min(...Re.value.negative), b = [-1 / 0, 1 / 0, NaN, void 0, null].includes(s) ? 0 : s, z = !e.value.style.chart.bars.distributed && (e.value.style.chart.grid.scale.scaleMax !== null || e.value.style.chart.grid.scale.scaleMin !== null) ? ga(e.value.style.chart.grid.scale.scaleMin !== null ? e.value.style.chart.grid.scale.scaleMin : b > 0 ? 0 : b, e.value.style.chart.grid.scale.scaleMax !== null ? e.value.style.chart.grid.scale.scaleMax : c < 0 ? 0 : c, e.value.style.chart.grid.scale.ticks) : fa(e.value.style.chart.grid.scale.scaleMin !== null ? e.value.style.chart.grid.scale.scaleMin : b > 0 ? 0 : b, e.value.style.chart.grid.scale.scaleMax !== null ? e.value.style.chart.grid.scale.scaleMax : c < 0 ? 0 : c, e.value.style.chart.grid.scale.ticks), { min: T, max: O } = z, A = O + (T >= 0 ? 0 : Math.abs(T)) || 1, F = n.value.height, V = n.value.width, Ce = B.value[0] ? B.value[0].zero : n.value.bottom, W = B.value[0] ? B.value[0].horizontal_zero : n.value.left;
464
+ let aa = Array(oe.value.length).fill(0), la = Array(oe.value.length).fill(0);
465
+ return Y.value.filter((ve) => !P.value.includes(ve.id)).map((ve) => {
466
+ const K = ve.series.slice(), ra = K.map((h, y) => aa[y]), dl = K.map((h, y) => la[y]);
467
+ K.forEach((h, y) => {
468
+ (Number(h) || 0) >= 0 ? aa[y] += Number(h) || 0 : la[y] += Math.abs(Number(h) || 0);
469
+ });
470
+ const Z = ve.series.slice(v.value.start, v.value.end), yl = ve.signedSeries.slice(v.value.start, v.value.end), gl = Z.map((h, y) => n.value.left + p.value * y + p.value * e.value.style.chart.bars.gapRatio / 4), Be = (oe.value || []).filter(Number.isFinite), vt = Be.length ? Math.max(...Be) : 0, ht = Be.length ? Math.min(...Be) : 0;
471
+ function sa({ minimapH: h }) {
472
+ const M = vt > 0, R = ht < 0;
473
+ if (M && R) {
474
+ const G = Math.max(vt, Math.abs(ht)) || 1e-9;
475
+ return {
476
+ pxPerUnit: h / 2 / G,
477
+ zero: h / 2
478
+ };
479
+ }
480
+ if (M) {
481
+ const G = Math.max(1e-9, vt);
482
+ return {
483
+ pxPerUnit: h / G,
484
+ zero: h
485
+ };
486
+ }
487
+ const _ = Math.max(1e-9, Math.abs(ht));
488
+ return {
489
+ pxPerUnit: h / _,
490
+ zero: 0
491
+ };
492
+ }
493
+ const fl = ({ left: h, unitW: y }) => {
494
+ const M = y * (e.value.style.chart.bars.gapRatio / 4);
495
+ return K.map((R, _) => h + y * _ + M);
496
+ }, bl = Z.map((h, y) => n.value.top + p.value * y + p.value * e.value.style.chart.bars.gapRatio / 4), ml = Z.map((h, y) => {
497
+ const M = e.value.style.chart.bars.distributed ? (h || 0) / we.value[y] : (h || 0) / A;
498
+ let R, _;
499
+ return h > 0 ? (_ = F * M, R = Ce - _ - a[y], a[y] += _) : (_ = F * M, R = Ce + t[y], t[y] += Math.abs(_)), R;
500
+ }), pl = ({ minimapH: h }) => {
501
+ if (e.value.style.chart.bars.distributed)
502
+ return K.map((_, G) => {
503
+ const dt = Math.abs(Number(_) || 0), oa = Math.abs(oe.value?.[G] || 0) || 1e-9, zl = (ra[G] + dt) / oa;
504
+ return h - zl * h;
505
+ });
506
+ const { pxPerUnit: y, zero: M } = sa({ minimapH: h });
507
+ return K.map((R, _) => {
508
+ const G = Number(R) || 0;
509
+ return G >= 0 ? M - (ra[_] + G) * y : M + dl[_] * y;
510
+ });
511
+ }, xl = Z.map((h, y) => {
512
+ const M = e.value.style.chart.bars.distributed ? (h || 0) / we.value[y] : (h || 0) / A;
513
+ let R, _;
514
+ return h > 0 ? (_ = V * M, R = W + l[y], l[y] += _) : (_ = V * M, R = W - Math.abs(_) - r[y], r[y] += Math.abs(_)), R;
515
+ }), kl = Z.map((h, y) => {
516
+ const M = e.value.style.chart.bars.distributed ? (h || 0) / we.value[y] : (h || 0) / A;
517
+ return h > 0 ? F * M : F * Math.abs(M);
518
+ }), wl = ({ minimapH: h }) => {
519
+ if (e.value.style.chart.bars.distributed)
520
+ return K.map((R, _) => {
521
+ const G = Math.abs(Number(R) || 0), dt = Math.abs(oe.value?.[_] || 0) || 1e-9;
522
+ return G / dt * h;
523
+ });
524
+ const { pxPerUnit: y } = sa({ minimapH: h });
525
+ return K.map((M) => Math.abs(Number(M) || 0) * y);
526
+ }, Ll = Z.map((h, y) => {
527
+ const M = e.value.style.chart.bars.distributed ? (h || 0) / we.value[y] : (h || 0) / A;
528
+ return h > 0 ? V * M : V * Math.abs(M);
529
+ }), Sl = Z.map((h) => Math.abs(h)).reduce((h, y) => h + y, 0);
530
+ return {
531
+ ...ve,
532
+ proportions: Z.map((h, y) => e.value.style.chart.bars.distributed ? (h || 0) / we.value[y] : (h || 0) / Sl),
533
+ series: Z,
534
+ signedSeries: yl,
535
+ x: gl,
536
+ y: ml,
537
+ height: kl,
538
+ horizontal_width: Ll,
539
+ horizontal_y: bl,
540
+ horizontal_x: xl,
541
+ xMinimap: fl,
542
+ yMinimap: pl,
543
+ heightMinimap: wl
544
+ };
545
+ });
546
+ }), Vt = g(() => Wa.value.map((a, l) => ({
547
+ value: a,
548
+ sign: a >= 0 ? 1 : -1
549
+ })));
550
+ function Ie(a, l, t, r, c) {
551
+ const s = c === -1 && a >= 0 ? -a : a;
552
+ return ye(
553
+ e.value.style.chart.bars.dataLabels.formatter,
554
+ s,
555
+ ae({
556
+ p: e.value.style.chart.bars.dataLabels.prefix,
557
+ v: s,
558
+ s: e.value.style.chart.bars.dataLabels.suffix,
559
+ r: e.value.style.chart.bars.dataLabels.rounding
560
+ }),
561
+ { datapoint: l, seriesIndex: t, datapointIndex: r }
562
+ );
563
+ }
564
+ function Et(a, l, t, r) {
565
+ return ye(
566
+ e.value.style.chart.bars.dataLabels.formatter,
567
+ a,
568
+ ae({
569
+ v: isNaN(a) ? 0 : a,
570
+ s: "%",
571
+ r: e.value.style.chart.bars.dataLabels.rounding
572
+ }),
573
+ { datapoint: l, seriesIndex: t, datapointIndex: r }
574
+ );
575
+ }
576
+ function Ut(a) {
577
+ const l = JSON.parse(JSON.stringify(C.value)).map((t) => ({
578
+ name: t.name,
579
+ value: t.series[a] === 0 ? 0 : t.series[a] || null,
580
+ proportion: t.proportions[a] || null,
581
+ color: t.color,
582
+ id: t.id
583
+ }));
584
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: l, seriesIndex: a + v.value.start }), ge("selectDatapoint", { datapoint: l, period: I.value[a] });
585
+ }
586
+ function ot(a) {
587
+ return JSON.parse(JSON.stringify(C.value)).map((l) => ({
588
+ name: l.name,
589
+ absoluteIndex: l.absoluteIndex,
590
+ value: l.series[a] === 0 ? 0 : (l.signedSeries[a] === -1 && l.series[a] >= 0 ? -l.series[a] : l.series[a]) || null,
591
+ proportion: l.proportions[a] || null,
592
+ color: l.color,
593
+ id: l.id,
594
+ timeLabel: Le.value[a]
595
+ }));
596
+ }
597
+ function Bt(a) {
598
+ if (e.value.events.datapointLeave) {
599
+ const l = ot(a);
600
+ e.value.events.datapointLeave({ datapoint: l, seriesIndex: a + v.value.start });
601
+ }
602
+ Ye.value = null, q.value = null;
603
+ }
604
+ const qa = g(() => Array(N.value).fill(0).map((a, l) => ot(l)));
605
+ Me(() => k.selectedXIndex, (a) => {
606
+ if ([null, void 0].includes(k.selectedXIndex)) {
607
+ q.value = null;
608
+ return;
609
+ }
610
+ const l = a - v.value.start;
611
+ l < 0 || a >= v.value.end ? q.value = null : q.value = l ?? null;
612
+ }, { immediate: !0 });
613
+ function Ht(a) {
614
+ q.value = a, Ye.value = !0;
615
+ const l = e.value.style.chart.tooltip.customFormat, t = ot(a);
616
+ cl({ seriesIndex: a, datapoint: t }), e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: a + v.value.start }), We.value = {
617
+ datapoint: t,
618
+ seriesIndex: a,
619
+ config: e.value,
620
+ series: C.value
621
+ };
622
+ const r = t.map((s) => Math.abs(s.value)).reduce((s, b) => s + b, 0), c = t.map((s) => ie(s.value)).reduce((s, b) => s + b, 0);
623
+ if (ma(l) && Xl(() => l({
624
+ seriesIndex: a,
625
+ datapoint: t,
626
+ series: C.value,
627
+ config: e.value
628
+ })))
629
+ Ge.value = l({
630
+ seriesIndex: a,
631
+ datapoint: t,
632
+ series: C.value,
633
+ config: e.value
634
+ });
635
+ else {
636
+ const {
637
+ showValue: s,
638
+ showTotal: b,
639
+ totalTranslation: z,
640
+ showPercentage: T,
641
+ borderColor: O,
642
+ roundingValue: A,
643
+ roundingPercentage: F
644
+ } = e.value.style.chart.tooltip;
645
+ let V = "";
646
+ (I.value[a] && I.value[a].text || st.value[a] && st.value[a].text && e.value.style.chart.tooltip.showTimeLabel) && (V += `<div style="width:100%;text-align:center;border-bottom:1px solid ${O};padding-bottom:6px;margin-bottom:3px;">${e.value.style.chart.tooltip.useDefaultTimeFormat ? I.value[a]?.text : st.value[a]?.text || Le.value[a]?.text || ""}</div>`), b && (V += `<div class="vue-data-ui-tooltip-total" style="display:flex;flex-direction:row;align-items:center;gap:4px">
647
+ <span>${z}:</span>
648
+ <span>
649
+ ${ye(
650
+ e.value.style.chart.bars.dataLabels.formatter,
651
+ c,
652
+ ae({
653
+ p: e.value.style.chart.bars.dataLabels.prefix,
654
+ v: c,
655
+ s: e.value.style.chart.bars.dataLabels.suffix,
656
+ r: A
657
+ }),
658
+ { datapoint: { name: z, value: c } }
659
+ )}
660
+ </span>
661
+ </div>`);
662
+ const Ce = [
663
+ s && T ? "(" : "",
664
+ s && T ? ")" : ""
665
+ ];
666
+ t.reverse().forEach((W) => {
667
+ V += `
668
+ <div style="display:flex;flex-direction:row;align-items:center;gap:4px">
669
+ <svg viewBox="0 0 60 60" height="14" width="14"><rect rx="5" x="0" y="0" height="60" width="60" stroke="none" fill="${e.value.style.chart.bars.gradient.show ? `url(#gradient_${W.id})` : W.color}"/>${Aa.pattern ? `<rect rx="5" x="0" y="0" height="60" width="60" stroke="none" fill="url(#pattern_${U.value}_${W.absoluteIndex})"/>` : ""}</svg>
670
+ ${W.name}${s || T ? ":" : ""} ${s ? ye(
671
+ e.value.style.chart.bars.dataLabels.formatter,
672
+ W.value,
673
+ ae({
674
+ p: e.value.style.chart.bars.dataLabels.prefix,
675
+ v: W.value,
676
+ s: e.value.style.chart.bars.dataLabels.suffix,
677
+ r: A
678
+ })
679
+ ) : ""} ${Ce[0]}${T ? ae({
680
+ v: isNaN(W.value / r) ? 0 : Math.abs(W.value) / r * 100,
681
+ // Negs are absed to show relative proportion to absolute total. It's opinionated.
682
+ s: "%",
683
+ r: F
684
+ }) : ""}${Ce[1]}
685
+ </div>
686
+ `;
687
+ }), Ge.value = `<div>${V}</div>`;
688
+ }
689
+ }
690
+ const Ja = g(() => ue.value.width), Za = g(() => ue.value.height);
691
+ er({
692
+ timeLabelsEls: e.value.orientation === "vertical" ? se : re,
693
+ timeLabels: I,
694
+ slicer: v,
695
+ configRef: e,
696
+ rotationPath: ["style", "chart", "grid", "x", "timeLabels", "rotation"],
697
+ autoRotatePath: ["style", "chart", "grid", "x", "timeLabels", "autoRotate", "enable"],
698
+ isAutoSize: !1,
699
+ width: Ja,
700
+ height: Za,
701
+ rotation: e.value.style.chart.grid.x.timeLabels.autoRotate.angle
702
+ });
703
+ function Xt(a) {
704
+ me.value = a, bt.value += 1;
705
+ }
706
+ function Yt() {
707
+ $.value.showTable = !$.value.showTable;
708
+ }
709
+ function Wt() {
710
+ $.value.dataLabels.show = !$.value.dataLabels.show;
711
+ }
712
+ function Gt() {
713
+ $.value.showTooltip = !$.value.showTooltip;
714
+ }
715
+ function Qa() {
716
+ return C.value;
717
+ }
718
+ const qt = g(() => {
719
+ if (C.value.length === 0) return { head: [], body: [], config: {}, columnNames: [] };
720
+ const a = C.value.map(({ name: t, color: r }) => ({
721
+ label: t,
722
+ color: r
723
+ })), l = [];
724
+ return I.value.forEach((t) => {
725
+ const r = [e.value.style.chart.grid.x.timeLabels.values[t.absoluteIndex] ? t.text : i + 1];
726
+ Y.value.forEach((c) => {
727
+ r.push(Number((c.series[t.absoluteIndex] || 0).toFixed(e.value.table.td.roundingValue)));
728
+ }), l.push(r);
729
+ }), { head: a, body: l };
730
+ });
731
+ function nt(a = null) {
732
+ const l = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [""]], t = ["", ...qt.value.head.map((b) => b.label)], r = qt.value.body, c = l.concat([t]).concat(r), s = Bl(c);
733
+ a ? a(s) : Hl({ csvContent: s, title: e.value.style.chart.title.text || "vue-ui-stackbar" });
734
+ }
735
+ const Fe = g(() => {
736
+ const a = [""].concat(C.value.map((c) => c.name)).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>');
737
+ let l = [];
738
+ for (let c = 0; c < N.value; c += 1) {
739
+ const s = C.value.map((b) => b.series[c] ?? 0).reduce((b, z) => b + z, 0);
740
+ l.push([e.value.style.chart.grid.x.timeLabels.values.slice(v.value.start, v.value.end)[c] ? I.value[c].text : c + 1].concat(C.value.map((b) => (b.series[c] ?? 0).toFixed(e.value.table.td.roundingValue))).concat((s ?? 0).toFixed(e.value.table.td.roundingValue)));
741
+ }
742
+ const t = {
743
+ th: {
744
+ backgroundColor: e.value.table.th.backgroundColor,
745
+ color: e.value.table.th.color,
746
+ outline: e.value.table.th.outline
747
+ },
748
+ td: {
749
+ backgroundColor: e.value.table.td.backgroundColor,
750
+ color: e.value.table.td.color,
751
+ outline: e.value.table.td.outline
752
+ },
753
+ breakpoint: e.value.table.responsiveBreakpoint
754
+ }, r = [e.value.table.columnNames.period].concat(C.value.map((c) => c.name)).concat(e.value.table.columnNames.total);
755
+ return { head: a, body: l.slice(0, v.value.end - v.value.start), config: t, colNames: r };
756
+ });
757
+ function it(a) {
758
+ if (P.value.includes(a.id))
759
+ P.value = P.value.filter((l) => l !== a.id);
760
+ else {
761
+ if (P.value.length === Y.value.length - 1) return;
762
+ P.value.push(a.id);
763
+ }
764
+ ge("selectLegend", C.value);
765
+ }
766
+ function Jt(a) {
767
+ if (!Y.value.length)
768
+ return e.value.debug && console.warn("VueUiStackbar - There are no series to show."), null;
769
+ const l = Y.value.find((t) => t.name === a);
770
+ return l || (e.value.debug && console.warn(`VueUiStackbar - Series name not found "${a}"`), null);
771
+ }
772
+ function Ka(a) {
773
+ const l = Jt(a);
774
+ l !== null && P.value.includes(l.id) && it({ id: l.id });
775
+ }
776
+ function ja(a) {
777
+ const l = Jt(a);
778
+ l !== null && (P.value.includes(l.id) || it({ id: l.id }));
779
+ }
780
+ const ut = g(() => Y.value.map((a, l) => ({
781
+ ...a,
782
+ shape: "square"
783
+ })).map((a) => ({
784
+ ...a,
785
+ opacity: P.value.includes(a.id) ? 0.5 : 1,
786
+ segregate: () => it(a),
787
+ isSegregated: P.value.includes(a.id)
788
+ }))), el = g(() => ({
789
+ cy: "stackbar-legend",
790
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
791
+ color: e.value.style.chart.legend.color,
792
+ fontSize: e.value.style.chart.legend.fontSize,
793
+ paddingBottom: 12,
794
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
795
+ })), De = d(!1);
796
+ function ct() {
797
+ De.value = !De.value;
798
+ }
799
+ function Ve(a, l) {
800
+ const t = JSON.parse(JSON.stringify(C.value)).map((r) => ({
801
+ name: r.name,
802
+ value: r.series[l] === 0 ? 0 : (r.signedSeries[l] === -1 && r.series[l] >= 0 ? -r.series[l] : r.series[l]) || null,
803
+ proportion: r.proportions[l] || null,
804
+ color: r.color,
805
+ id: r.id
806
+ }));
807
+ ge("selectTimeLabel", {
808
+ datapoint: t,
809
+ absoluteIndex: a.absoluteIndex,
810
+ label: a.text
811
+ });
812
+ }
813
+ const tl = g(() => Math.max(...C.value.flatMap((a) => a.series)));
814
+ function Zt(a, l) {
815
+ return e.value.style.chart.bars.showDistributedPercentage && e.value.style.chart.bars.distributed ? Ct.value ? l * 100 >= e.value.style.chart.bars.dataLabels.hideUnderPercentage : e.value.style.chart.bars.dataLabels.hideEmptyPercentages ? l > 0 : !0 : Ct.value ? (zt.value && lt.value && console.warn("Vue Data UI - VueUiStackbar - You cannot set both dataLabels.hideUnderPercentage and dataLabels.hideUnderValue. Note that dataLabels.hideUnderPercentage takes precedence in this case."), a > tl.value * e.value.style.chart.bars.dataLabels.hideUnderPercentage / 100) : zt.value ? Math.abs(a) >= e.value.style.chart.bars.dataLabels.hideUnderValue : e.value.style.chart.bars.dataLabels.hideEmptyValues ? a !== 0 : !0;
816
+ }
817
+ async function al({ scale: a = 2 } = {}) {
818
+ if (!J.value) return;
819
+ const { width: l, height: t } = J.value.getBoundingClientRect(), r = l / t, { imageUri: c, base64: s } = await tr({ domElement: J.value, base64: !0, img: !0, scale: a });
820
+ return {
821
+ imageUri: c,
822
+ base64: s,
823
+ title: e.value.style.chart.title.text,
824
+ width: l,
825
+ height: t,
826
+ aspectRatio: r
827
+ };
828
+ }
829
+ const Se = g(() => {
830
+ const a = e.value.table.useDialog && !e.value.table.show, l = $.value.showTable;
831
+ return {
832
+ component: a ? Ta : Sa,
833
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
834
+ props: a ? {
835
+ backgroundColor: e.value.table.th.backgroundColor,
836
+ color: e.value.table.th.color,
837
+ headerColor: e.value.table.th.color,
838
+ headerBg: e.value.table.th.backgroundColor,
839
+ isFullscreen: me.value,
840
+ fullscreenParent: J.value,
841
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
842
+ } : {
843
+ hideDetails: !0,
844
+ config: {
845
+ open: l,
846
+ maxHeight: 1e4,
847
+ body: {
848
+ backgroundColor: e.value.style.chart.backgroundColor,
849
+ color: e.value.style.chart.color
850
+ },
851
+ head: {
852
+ backgroundColor: e.value.style.chart.backgroundColor,
853
+ color: e.value.style.chart.color
854
+ }
855
+ }
856
+ }
857
+ };
858
+ });
859
+ Me(() => $.value.showTable, (a) => {
860
+ e.value.table.show || (a && e.value.table.useDialog && pe.value ? pe.value.open() : "close" in pe.value && pe.value.close());
861
+ });
862
+ function Qt() {
863
+ $.value.showTable = !1, qe.value && qe.value.setTableIconState(!1);
864
+ }
865
+ const ll = g(() => e.value.style.chart.backgroundColor), rl = g(() => e.value.style.chart.legend), sl = g(() => e.value.style.chart.title), { exportSvg: ol, getSvg: nl } = Ql({
866
+ svg: tt,
867
+ title: sl,
868
+ legend: rl,
869
+ legendItems: ut,
870
+ backgroundColor: ll
871
+ });
872
+ async function Kt({ isCb: a }) {
873
+ if (a) {
874
+ const { blob: l, url: t, text: r, dataUrl: c } = await nl();
875
+ e.value.userOptions.callbacks.svg({ blob: l, url: t, text: r, dataUrl: c });
876
+ } else
877
+ ol();
878
+ }
879
+ function jt(a) {
880
+ const l = N.value;
881
+ return a > l ? l : a < 0 || a < v.value.start ? e.value.style.chart.zoom.startIndex !== null ? v.value.start + 1 : 1 : a;
882
+ }
883
+ const ze = d(!1), ea = d(!1);
884
+ function Ee() {
885
+ if (!ze.value) {
886
+ ze.value = !0;
887
+ try {
888
+ const { startIndex: a, endIndex: l } = e.value.style.chart.zoom, t = N.value, r = a ?? 0, c = l != null ? Math.min(jt(l + 1), t) : t;
889
+ Ue.value = !0, v.value.start = r, v.value.end = c, D.value.start = r, D.value.end = c, Oe(), ea.value = !0;
890
+ } finally {
891
+ queueMicrotask(() => {
892
+ Ue.value = !1;
893
+ }), ze.value = !1;
894
+ }
895
+ }
896
+ }
897
+ const Ue = d(!1);
898
+ function il(a) {
899
+ ze.value || Ue.value || a !== v.value.start && (v.value.start = a, D.value.start = a, Oe());
900
+ }
901
+ function ul(a) {
902
+ if (ze.value || Ue.value) return;
903
+ const l = jt(a);
904
+ l !== v.value.end && (v.value.end = l, D.value.end = l, Oe());
905
+ }
906
+ function cl({ seriesIndex: a, datapoint: l }) {
907
+ const t = v.value.start + a;
908
+ ge("selectX", {
909
+ dataset: l,
910
+ index: t,
911
+ indexLabel: e.value.style.chart.grid.x.timeLabels.values[t]
912
+ });
913
+ }
914
+ function ta() {
915
+ const a = B.value?.[0]?.zero ?? n.value.bottom, l = B.value?.[0]?.horizontal_zero ?? n.value.left;
916
+ return { y0: a, x0: l };
917
+ }
918
+ function vl(a) {
919
+ const { y0: l } = ta(), t = e.value.style.chart.bars.totalValues, r = Math.max(2, t.fontSize * 0.3 + t.offsetY);
920
+ let c = 1 / 0, s = !1;
921
+ for (const O of C.value || []) {
922
+ const A = O?.series?.[a] ?? 0, F = O?.height?.[a] ?? 0, V = O?.y?.[a];
923
+ A > 0 && F > 0 && Number.isFinite(V) && (s = !0, V < c && (c = V));
924
+ }
925
+ const z = (s && Number.isFinite(c) ? c : l) - r;
926
+ return Math.min(
927
+ Math.max(z, 0),
928
+ n.value.bottom
929
+ );
930
+ }
931
+ function hl(a) {
932
+ const { x0: l } = ta(), t = Math.max(2, e.value.style.chart.bars.totalValues.fontSize * 0.3 + e.value.style.chart.bars.totalValues.offsetX);
933
+ let r = -1 / 0, c = !1;
934
+ for (const b of C.value || []) {
935
+ const z = b?.series?.[a] ?? 0, T = b?.horizontal_x?.[a], O = b?.horizontal_width?.[a], A = Number.isFinite(O) ? Math.max(0, O) : 0;
936
+ Number.isFinite(T) && z > 0 && A > 0 && (c = !0, r = Math.max(r, T + A));
937
+ }
938
+ return (c && Number.isFinite(r) ? r : l) + t;
939
+ }
940
+ return xa({
941
+ getData: Qa,
942
+ getImage: al,
943
+ generatePdf: Tt,
944
+ generateCsv: nt,
945
+ generateImage: $t,
946
+ generateSvg: Kt,
947
+ hideSeries: ja,
948
+ showSeries: Ka,
949
+ toggleTable: Yt,
950
+ toggleLabels: Wt,
951
+ toggleTooltip: Gt,
952
+ toggleAnnotator: ct,
953
+ toggleFullscreen: Xt
954
+ }), (a, l) => (o(), u("div", {
955
+ id: `stackbar_${U.value}`,
956
+ ref_key: "stackbarChart",
957
+ ref: J,
958
+ class: he({ "vue-data-ui-component": !0, "vue-ui-stackbar": !0, "vue-data-ui-wrapper-fullscreen": me.value }),
959
+ style: ne(`background:${e.value.style.chart.backgroundColor};color:${e.value.style.chart.color};font-family:${e.value.style.fontFamily}; position: relative; ${e.value.responsive ? "height: 100%" : ""}`),
960
+ onMouseenter: Ra,
961
+ onMouseleave: Ia
962
+ }, [
963
+ e.value.userOptions.buttons.annotator ? (o(), ee(m(Ca), {
964
+ key: 0,
965
+ svgRef: m(tt),
966
+ backgroundColor: e.value.style.chart.backgroundColor,
967
+ color: e.value.style.chart.color,
968
+ active: De.value,
969
+ onClose: ct
970
+ }, {
971
+ "annotator-action-close": S(() => [
972
+ w(a.$slots, "annotator-action-close", {}, void 0, !0)
973
+ ]),
974
+ "annotator-action-color": S(({ color: t }) => [
975
+ w(a.$slots, "annotator-action-color", H(X({ color: t })), void 0, !0)
976
+ ]),
977
+ "annotator-action-draw": S(({ mode: t }) => [
978
+ w(a.$slots, "annotator-action-draw", H(X({ mode: t })), void 0, !0)
979
+ ]),
980
+ "annotator-action-undo": S(({ disabled: t }) => [
981
+ w(a.$slots, "annotator-action-undo", H(X({ disabled: t })), void 0, !0)
982
+ ]),
983
+ "annotator-action-redo": S(({ disabled: t }) => [
984
+ w(a.$slots, "annotator-action-redo", H(X({ disabled: t })), void 0, !0)
985
+ ]),
986
+ "annotator-action-delete": S(({ disabled: t }) => [
987
+ w(a.$slots, "annotator-action-delete", H(X({ disabled: t })), void 0, !0)
988
+ ]),
989
+ _: 3
990
+ }, 8, ["svgRef", "backgroundColor", "color", "active"])) : f("", !0),
991
+ w(a.$slots, "userConfig", {}, void 0, !0),
992
+ e.value.style.chart.title.text ? (o(), u("div", {
993
+ key: 1,
994
+ ref_key: "chartTitle",
995
+ ref: mt,
996
+ style: "width:100%;background:transparent;padding-bottom:24px"
997
+ }, [
998
+ (o(), ee(ar, {
999
+ key: `title_${kt.value}`,
1000
+ config: {
1001
+ title: {
1002
+ cy: "stackbar-title",
1003
+ ...e.value.style.chart.title
1004
+ },
1005
+ subtitle: {
1006
+ cy: "stackbar-subtitle",
1007
+ ...e.value.style.chart.title.subtitle
1008
+ }
1009
+ }
1010
+ }, null, 8, ["config"]))
1011
+ ], 512)) : f("", !0),
1012
+ te("div", {
1013
+ id: `legend-top-${U.value}`
1014
+ }, null, 8, ur),
1015
+ e.value.userOptions.show && fe.value && (m(St) || m(et)) ? (o(), ee(m(Ma), {
1016
+ ref_key: "userOptionsRef",
1017
+ ref: qe,
1018
+ key: `user_option_${bt.value}`,
1019
+ backgroundColor: e.value.style.chart.backgroundColor,
1020
+ color: e.value.style.chart.color,
1021
+ isPrinting: m(Mt),
1022
+ isImaging: m(_t),
1023
+ uid: U.value,
1024
+ hasTooltip: e.value.style.chart.tooltip.show && e.value.userOptions.buttons.tooltip,
1025
+ hasPdf: e.value.userOptions.buttons.pdf,
1026
+ hasImg: e.value.userOptions.buttons.img,
1027
+ hasSvg: e.value.userOptions.buttons.svg,
1028
+ hasXls: e.value.userOptions.buttons.csv,
1029
+ hasTable: e.value.userOptions.buttons.table,
1030
+ hasLabel: e.value.userOptions.buttons.labels,
1031
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
1032
+ isFullscreen: me.value,
1033
+ chartElement: J.value,
1034
+ position: e.value.userOptions.position,
1035
+ isTooltip: $.value.showTooltip,
1036
+ titles: { ...e.value.userOptions.buttonTitles },
1037
+ hasAnnotator: e.value.userOptions.buttons.annotator,
1038
+ isAnnotation: De.value,
1039
+ callbacks: e.value.userOptions.callbacks,
1040
+ printScale: e.value.userOptions.print.scale,
1041
+ tableDialog: e.value.table.useDialog,
1042
+ onToggleFullscreen: Xt,
1043
+ onGeneratePdf: m(Tt),
1044
+ onGenerateCsv: nt,
1045
+ onGenerateImage: m($t),
1046
+ onGenerateSvg: Kt,
1047
+ onToggleTable: Yt,
1048
+ onToggleLabels: Wt,
1049
+ onToggleTooltip: Gt,
1050
+ onToggleAnnotator: ct,
1051
+ style: ne({
1052
+ visibility: m(St) ? m(et) ? "visible" : "hidden" : "visible"
1053
+ })
1054
+ }, gt({ _: 2 }, [
1055
+ a.$slots.menuIcon ? {
1056
+ name: "menuIcon",
1057
+ fn: S(({ isOpen: t, color: r }) => [
1058
+ w(a.$slots, "menuIcon", H(X({ isOpen: t, color: r })), void 0, !0)
1059
+ ]),
1060
+ key: "0"
1061
+ } : void 0,
1062
+ a.$slots.optionTooltip ? {
1063
+ name: "optionTooltip",
1064
+ fn: S(() => [
1065
+ w(a.$slots, "optionTooltip", {}, void 0, !0)
1066
+ ]),
1067
+ key: "1"
1068
+ } : void 0,
1069
+ a.$slots.optionPdf ? {
1070
+ name: "optionPdf",
1071
+ fn: S(() => [
1072
+ w(a.$slots, "optionPdf", {}, void 0, !0)
1073
+ ]),
1074
+ key: "2"
1075
+ } : void 0,
1076
+ a.$slots.optionCsv ? {
1077
+ name: "optionCsv",
1078
+ fn: S(() => [
1079
+ w(a.$slots, "optionCsv", {}, void 0, !0)
1080
+ ]),
1081
+ key: "3"
1082
+ } : void 0,
1083
+ a.$slots.optionImg ? {
1084
+ name: "optionImg",
1085
+ fn: S(() => [
1086
+ w(a.$slots, "optionImg", {}, void 0, !0)
1087
+ ]),
1088
+ key: "4"
1089
+ } : void 0,
1090
+ a.$slots.optionSvg ? {
1091
+ name: "optionSvg",
1092
+ fn: S(() => [
1093
+ w(a.$slots, "optionSvg", {}, void 0, !0)
1094
+ ]),
1095
+ key: "5"
1096
+ } : void 0,
1097
+ a.$slots.optionTable ? {
1098
+ name: "optionTable",
1099
+ fn: S(() => [
1100
+ w(a.$slots, "optionTable", {}, void 0, !0)
1101
+ ]),
1102
+ key: "6"
1103
+ } : void 0,
1104
+ a.$slots.optionLabels ? {
1105
+ name: "optionLabels",
1106
+ fn: S(() => [
1107
+ w(a.$slots, "optionLabels", {}, void 0, !0)
1108
+ ]),
1109
+ key: "7"
1110
+ } : void 0,
1111
+ a.$slots.optionFullscreen ? {
1112
+ name: "optionFullscreen",
1113
+ fn: S(({ toggleFullscreen: t, isFullscreen: r }) => [
1114
+ w(a.$slots, "optionFullscreen", H(X({ toggleFullscreen: t, isFullscreen: r })), void 0, !0)
1115
+ ]),
1116
+ key: "8"
1117
+ } : void 0,
1118
+ a.$slots.optionAnnotator ? {
1119
+ name: "optionAnnotator",
1120
+ fn: S(({ toggleAnnotator: t, isAnnotator: r }) => [
1121
+ w(a.$slots, "optionAnnotator", H(X({ toggleAnnotator: t, isAnnotator: r })), void 0, !0)
1122
+ ]),
1123
+ key: "9"
1124
+ } : void 0
1125
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasImg", "hasSvg", "hasXls", "hasTable", "hasLabel", "hasFullscreen", "isFullscreen", "chartElement", "position", "isTooltip", "titles", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : f("", !0),
1126
+ (o(), u("svg", {
1127
+ ref_key: "svgRef",
1128
+ ref: tt,
1129
+ xmlns: m(Dl),
1130
+ viewBox: `0 0 ${n.value.chartWidth <= 0 ? 10 : n.value.chartWidth} ${n.value.chartHeight <= 0 ? 10 : n.value.chartHeight}`,
1131
+ class: he({ "vue-data-ui-loading": m(xe) }),
1132
+ style: ne(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
1133
+ }, [
1134
+ _e(m(_a)),
1135
+ a.$slots["chart-background"] ? (o(), u("foreignObject", {
1136
+ key: 0,
1137
+ x: n.value.left,
1138
+ y: n.value.top,
1139
+ width: n.value.width <= 0 ? 10 : n.value.width,
1140
+ height: n.value.height <= 0 ? 10 : n.value.height,
1141
+ style: {
1142
+ pointerEvents: "none"
1143
+ }
1144
+ }, [
1145
+ w(a.$slots, "chart-background", {}, void 0, !0)
1146
+ ], 8, vr)) : f("", !0),
1147
+ e.value.style.chart.bars.gradient.show ? (o(), u("defs", hr, [
1148
+ (o(!0), u(x, null, L(C.value, (t, r) => (o(), u("linearGradient", {
1149
+ id: `gradient_${t.id}`,
1150
+ x1: "0%",
1151
+ y1: "0%",
1152
+ x2: "0%",
1153
+ y2: "100%"
1154
+ }, [
1155
+ te("stop", {
1156
+ offset: "0%",
1157
+ "stop-color": t.color
1158
+ }, null, 8, yr),
1159
+ te("stop", {
1160
+ offset: "61.8%",
1161
+ "stop-color": m(Vl)(t.color, e.value.style.chart.bars.gradient.intensity / 100)
1162
+ }, null, 8, gr),
1163
+ te("stop", {
1164
+ offset: "100%",
1165
+ "stop-color": t.color
1166
+ }, null, 8, fr)
1167
+ ], 8, dr))), 256))
1168
+ ])) : f("", !0),
1169
+ e.value.style.chart.grid.frame.show ? (o(), u("rect", {
1170
+ key: 2,
1171
+ style: { pointerEvents: "none", transition: "none", animation: "none !important" },
1172
+ x: Math.max(0, n.value.left),
1173
+ y: Math.max(0, n.value.top),
1174
+ width: Math.max(0, n.value.width),
1175
+ height: Math.max(0, n.value.height),
1176
+ fill: "transparent",
1177
+ stroke: e.value.style.chart.grid.frame.stroke,
1178
+ "stroke-width": e.value.style.chart.grid.frame.strokeWidth,
1179
+ "stroke-linecap": e.value.style.chart.grid.frame.strokeLinecap,
1180
+ "stroke-linejoin": e.value.style.chart.grid.frame.strokeLinejoin,
1181
+ "stroke-dasharray": e.value.style.chart.grid.frame.strokeDasharray
1182
+ }, null, 8, br)) : f("", !0),
1183
+ e.value.style.chart.grid.x.showHorizontalLines && e.value.orientation === "vertical" ? (o(!0), u(x, { key: 3 }, L(B.value, (t, r) => (o(), u("line", {
1184
+ x1: n.value.left,
1185
+ x2: n.value.right,
1186
+ y1: t.y,
1187
+ y2: t.y,
1188
+ stroke: e.value.style.chart.grid.x.linesColor,
1189
+ "stroke-width": e.value.style.chart.grid.x.linesThickness,
1190
+ "stroke-dasharray": e.value.style.chart.grid.x.linesStrokeDasharray,
1191
+ "stroke-linecap": "round"
1192
+ }, null, 8, mr))), 256)) : f("", !0),
1193
+ e.value.style.chart.grid.x.showHorizontalLines && e.value.orientation === "horizontal" ? (o(!0), u(x, { key: 4 }, L(v.value.end - v.value.start + 1, (t, r) => (o(), u("line", {
1194
+ x1: n.value.left,
1195
+ x2: n.value.right,
1196
+ y1: n.value.top + p.value * r,
1197
+ y2: n.value.top + p.value * r,
1198
+ stroke: e.value.style.chart.grid.x.linesColor,
1199
+ "stroke-width": e.value.style.chart.grid.x.linesThickness,
1200
+ "stroke-dasharray": e.value.style.chart.grid.x.linesStrokeDasharray,
1201
+ "stroke-linecap": "round"
1202
+ }, null, 8, pr))), 256)) : f("", !0),
1203
+ e.value.style.chart.grid.y.showVerticalLines && e.value.orientation === "vertical" ? (o(!0), u(x, { key: 5 }, L(v.value.end - v.value.start + 1, (t, r) => (o(), u("line", {
1204
+ x1: n.value.left + p.value * r,
1205
+ x2: n.value.left + p.value * r,
1206
+ y1: n.value.top,
1207
+ y2: n.value.bottom,
1208
+ stroke: e.value.style.chart.grid.y.linesColor,
1209
+ "stroke-width": e.value.style.chart.grid.y.linesThickness,
1210
+ "stroke-dasharray": e.value.style.chart.grid.y.linesStrokeDasharray,
1211
+ "stroke-linecap": "round"
1212
+ }, null, 8, xr))), 256)) : f("", !0),
1213
+ e.value.style.chart.grid.y.showVerticalLines && e.value.orientation === "horizontal" ? (o(!0), u(x, { key: 6 }, L(B.value, (t, r) => (o(), u("line", {
1214
+ x1: t.horizontal_x,
1215
+ x2: t.horizontal_x,
1216
+ y1: n.value.top,
1217
+ y2: n.value.bottom,
1218
+ stroke: e.value.style.chart.grid.y.linesColor,
1219
+ "stroke-width": e.value.style.chart.grid.y.linesThickness,
1220
+ "stroke-dasharray": e.value.style.chart.grid.y.linesStrokeDasharray,
1221
+ "stroke-linecap": "round"
1222
+ }, null, 8, kr))), 256)) : f("", !0),
1223
+ (o(!0), u(x, null, L(C.value, (t, r) => (o(), u("g", null, [
1224
+ a.$slots.pattern ? (o(), u("defs", wr, [
1225
+ w(a.$slots, "pattern", Te({ ref_for: !0 }, { seriesIndex: t.absoluteIndex, patternId: `pattern_${U.value}_${t.absoluteIndex}` }), void 0, !0)
1226
+ ])) : f("", !0),
1227
+ e.value.orientation === "vertical" ? (o(), u(x, { key: 1 }, [
1228
+ (o(!0), u(x, null, L(t.x, (c, s) => (o(), u("rect", {
1229
+ x: c,
1230
+ y: m(ie)(t.y[s]),
1231
+ height: t.height[s] < 0 ? 1e-4 : t.height[s] || 0,
1232
+ rx: e.value.style.chart.bars.borderRadius > t.height[s] / 2 ? (t.height[s] < 0 ? 0 : t.height[s]) / 2 : e.value.style.chart.bars.borderRadius,
1233
+ width: p.value * (1 - e.value.style.chart.bars.gapRatio / 2),
1234
+ fill: e.value.style.chart.bars.gradient.show ? `url(#gradient_${t.id})` : t.color,
1235
+ stroke: e.value.style.chart.backgroundColor,
1236
+ "stroke-width": e.value.style.chart.bars.strokeWidth,
1237
+ "stroke-linecap": "round",
1238
+ "stroke-linejoin": "round",
1239
+ class: he({ "vue-data-ui-bar-animated": e.value.useCssAnimation, "vue-data-ui-bar-transition": le.value })
1240
+ }, null, 10, Lr))), 256)),
1241
+ a.$slots.pattern ? (o(), u("g", Sr, [
1242
+ (o(!0), u(x, null, L(t.x, (c, s) => (o(), u("rect", {
1243
+ x: c,
1244
+ y: m(ie)(t.y[s]),
1245
+ height: t.height[s] < 0 ? 1e-4 : t.height[s] || 0,
1246
+ rx: e.value.style.chart.bars.borderRadius > t.height[s] / 2 ? (t.height[s] < 0 ? 0 : t.height[s]) / 2 : e.value.style.chart.bars.borderRadius,
1247
+ width: p.value * (1 - e.value.style.chart.bars.gapRatio / 2),
1248
+ fill: `url(#pattern_${U.value}_${t.absoluteIndex})`,
1249
+ stroke: e.value.style.chart.backgroundColor,
1250
+ "stroke-width": e.value.style.chart.bars.strokeWidth,
1251
+ "stroke-linecap": "round",
1252
+ "stroke-linejoin": "round",
1253
+ class: he({ "vue-data-ui-bar-animated": e.value.useCssAnimation, "vue-data-ui-bar-transition": le.value })
1254
+ }, null, 10, zr))), 256))
1255
+ ])) : f("", !0)
1256
+ ], 64)) : (o(), u(x, { key: 2 }, [
1257
+ (o(!0), u(x, null, L(t.horizontal_x, (c, s) => (o(), u("rect", {
1258
+ x: m(ie)(c, n.value.left),
1259
+ y: t.horizontal_y[s] < 0 ? 0 : t.horizontal_y[s],
1260
+ width: m(ie)(t.horizontal_width[s] < 0 ? 1e-4 : t.horizontal_width[s]),
1261
+ rx: e.value.style.chart.bars.borderRadius > t.height[s] / 2 ? (t.height[s] < 0 ? 0 : t.height[s]) / 2 : e.value.style.chart.bars.borderRadius,
1262
+ height: p.value * (1 - e.value.style.chart.bars.gapRatio / 2),
1263
+ fill: e.value.style.chart.bars.gradient.show ? `url(#gradient_${t.id})` : t.color,
1264
+ stroke: e.value.style.chart.backgroundColor,
1265
+ "stroke-width": e.value.style.chart.bars.strokeWidth,
1266
+ "stroke-linecap": "round",
1267
+ "stroke-linejoin": "round",
1268
+ class: he({ "vue-data-ui-bar-animated": e.value.useCssAnimation, "vue-data-ui-bar-transition": le.value })
1269
+ }, null, 10, Cr))), 256)),
1270
+ a.$slots.pattern ? (o(), u("g", Mr, [
1271
+ (o(!0), u(x, null, L(t.horizontal_x, (c, s) => (o(), u("rect", {
1272
+ x: m(ie)(c, n.value.left),
1273
+ y: t.horizontal_y[s] < 0 ? 0 : t.horizontal_y[s],
1274
+ width: m(ie)(t.horizontal_width[s] < 0 ? 1e-4 : t.horizontal_width[s]),
1275
+ rx: e.value.style.chart.bars.borderRadius > t.height[s] / 2 ? (t.height[s] < 0 ? 0 : t.height[s]) / 2 : e.value.style.chart.bars.borderRadius,
1276
+ height: p.value * (1 - e.value.style.chart.bars.gapRatio / 2),
1277
+ fill: `url(#pattern_${U.value}_${t.absoluteIndex})`,
1278
+ stroke: e.value.style.chart.backgroundColor,
1279
+ "stroke-width": e.value.style.chart.bars.strokeWidth,
1280
+ "stroke-linecap": "round",
1281
+ "stroke-linejoin": "round",
1282
+ class: he({ "vue-data-ui-bar-animated": e.value.useCssAnimation, "vue-data-ui-bar-transition": le.value })
1283
+ }, null, 10, _r))), 256))
1284
+ ])) : f("", !0)
1285
+ ], 64))
1286
+ ]))), 256)),
1287
+ e.value.style.chart.grid.x.showAxis ? (o(), u("line", {
1288
+ key: 7,
1289
+ x1: n.value.left,
1290
+ x2: n.value.right,
1291
+ y1: n.value.bottom,
1292
+ y2: n.value.bottom,
1293
+ stroke: e.value.style.chart.grid.x.axisColor,
1294
+ "stroke-width": e.value.style.chart.grid.x.axisThickness,
1295
+ "stroke-linecap": "round",
1296
+ "stroke-linejoin": "round"
1297
+ }, null, 8, Tr)) : f("", !0),
1298
+ e.value.style.chart.grid.y.showAxis && !e.value.style.chart.bars.distributed ? (o(), u("line", {
1299
+ key: 8,
1300
+ x1: n.value.left,
1301
+ x2: n.value.left,
1302
+ y1: n.value.top,
1303
+ y2: n.value.bottom,
1304
+ stroke: e.value.style.chart.grid.y.axisColor,
1305
+ "stroke-width": e.value.style.chart.grid.y.axisThickness,
1306
+ "stroke-linecap": "round",
1307
+ "stroke-linejoin": "round"
1308
+ }, null, 8, $r)) : f("", !0),
1309
+ e.value.style.chart.grid.x.axisName.show && e.value.style.chart.grid.x.axisName.text ? (o(), u("text", {
1310
+ key: 9,
1311
+ ref_key: "xAxisLabel",
1312
+ ref: Je,
1313
+ x: n.value.left + n.value.width / 2,
1314
+ y: n.value.chartHeight - 3,
1315
+ "font-size": e.value.style.chart.grid.x.axisName.fontSize,
1316
+ fill: e.value.style.chart.grid.x.axisName.color,
1317
+ "font-weight": e.value.style.chart.grid.x.axisName.bold ? "bold" : "normal",
1318
+ "text-anchor": "middle"
1319
+ }, E(e.value.style.chart.grid.x.axisName.text), 9, Ar)) : f("", !0),
1320
+ e.value.style.chart.grid.y.axisName.show && e.value.style.chart.grid.y.axisName.text ? (o(), u("text", {
1321
+ key: 10,
1322
+ ref_key: "yAxisLabel",
1323
+ ref: Ze,
1324
+ transform: `translate(${e.value.style.chart.grid.y.axisName.fontSize}, ${n.value.top + n.value.height / 2}) rotate(-90)`,
1325
+ "font-size": e.value.style.chart.grid.y.axisName.fontSize,
1326
+ fill: e.value.style.chart.grid.y.axisName.color,
1327
+ "font-weight": e.value.style.chart.grid.y.axisName.bold ? "bold" : "normal",
1328
+ "text-anchor": "middle"
1329
+ }, E(e.value.style.chart.grid.y.axisName.text), 9, Pr)) : f("", !0),
1330
+ $.value.dataLabels.show && e.value.orientation === "vertical" ? (o(), u(x, { key: 11 }, [
1331
+ (o(!0), u(x, null, L(C.value, (t, r) => (o(), u("g", null, [
1332
+ (o(!0), u(x, null, L(t.x, (c, s) => (o(), u(x, null, [
1333
+ Zt(t.series[s], t.proportions[s]) ? (o(), u("text", {
1334
+ key: 0,
1335
+ x: c + p.value * (1 - e.value.style.chart.bars.gapRatio / 2) / 2,
1336
+ y: t.y[s] + t.height[s] / 2 + e.value.style.chart.bars.dataLabels.fontSize / 3,
1337
+ "font-size": e.value.style.chart.bars.dataLabels.fontSize,
1338
+ fill: e.value.style.chart.bars.dataLabels.adaptColorToBackground ? m(ba)(t.color) : e.value.style.chart.bars.dataLabels.color,
1339
+ "font-weight": e.value.style.chart.bars.dataLabels.bold ? "bold" : "normal",
1340
+ "text-anchor": "middle"
1341
+ }, E(e.value.style.chart.bars.showDistributedPercentage && e.value.style.chart.bars.distributed ? Et(t.proportions[s] * 100, t, r, s) : Ie(t.series[s], t, r, s, t.signedSeries[s])), 9, Nr)) : f("", !0)
1342
+ ], 64))), 256))
1343
+ ]))), 256)),
1344
+ e.value.style.chart.bars.totalValues.show && C.value.length > 1 ? (o(), u("g", {
1345
+ key: 0,
1346
+ ref_key: "sumTop",
1347
+ ref: Oa
1348
+ }, [
1349
+ (o(!0), u(x, null, L(Vt.value, (t, r) => (o(), u(x, null, [
1350
+ !e.value.style.chart.bars.dataLabels.hideEmptyValues || t.value !== 0 ? (o(), u("text", {
1351
+ key: 0,
1352
+ x: n.value.left + p.value * r + p.value / 2,
1353
+ y: vl(r),
1354
+ "text-anchor": "middle",
1355
+ "font-size": e.value.style.chart.bars.totalValues.fontSize,
1356
+ "font-weight": e.value.style.chart.bars.totalValues.bold ? "bold" : "normal",
1357
+ fill: e.value.style.chart.bars.totalValues.color
1358
+ }, E(Ie(t.value, t, r, t.sign)), 9, Or)) : f("", !0)
1359
+ ], 64))), 256))
1360
+ ], 512)) : f("", !0)
1361
+ ], 64)) : f("", !0),
1362
+ $.value.dataLabels.show && e.value.orientation === "horizontal" ? (o(), u(x, { key: 12 }, [
1363
+ (o(!0), u(x, null, L(C.value, (t, r) => (o(), u("g", null, [
1364
+ (o(!0), u(x, null, L(t.horizontal_x, (c, s) => (o(), u(x, null, [
1365
+ Zt(t.series[s], t.proportions[s]) ? (o(), u("text", {
1366
+ key: 0,
1367
+ x: c + (t.horizontal_width[s] < 0 ? 1e-4 : t.horizontal_width[s]) / 2,
1368
+ y: t.horizontal_y[s] + p.value * (1 - e.value.style.chart.bars.gapRatio / 2) / 2 + e.value.style.chart.bars.dataLabels.fontSize / 3,
1369
+ "font-size": e.value.style.chart.bars.dataLabels.fontSize,
1370
+ fill: e.value.style.chart.bars.dataLabels.adaptColorToBackground ? m(ba)(t.color) : e.value.style.chart.bars.dataLabels.color,
1371
+ "font-weight": e.value.style.chart.bars.dataLabels.bold ? "bold" : "normal",
1372
+ "text-anchor": "middle"
1373
+ }, E(e.value.style.chart.bars.showDistributedPercentage && e.value.style.chart.bars.distributed ? Et(t.proportions[s] * 100, t, r, s) : Ie(t.series[s], t, r, s, t.signedSeries[s])), 9, Rr)) : f("", !0)
1374
+ ], 64))), 256))
1375
+ ]))), 256)),
1376
+ e.value.style.chart.bars.totalValues.show && C.value.length > 1 ? (o(), u("g", {
1377
+ key: 0,
1378
+ ref_key: "sumRight",
1379
+ ref: Qe
1380
+ }, [
1381
+ (o(!0), u(x, null, L(Vt.value, (t, r) => (o(), u(x, null, [
1382
+ !e.value.style.chart.bars.dataLabels.hideEmptyValues || t.value !== 0 ? (o(), u("text", {
1383
+ key: 0,
1384
+ x: hl(r),
1385
+ y: n.value.top + p.value * r + p.value / 2 + e.value.style.chart.bars.totalValues.fontSize / 3,
1386
+ "text-anchor": "start",
1387
+ "font-size": e.value.style.chart.bars.totalValues.fontSize,
1388
+ "font-weight": e.value.style.chart.bars.totalValues.bold ? "bold" : "normal",
1389
+ fill: e.value.style.chart.bars.totalValues.color
1390
+ }, E(Ie(t.value, t, r, t.sign)), 9, Ir)) : f("", !0)
1391
+ ], 64))), 256))
1392
+ ], 512)) : f("", !0)
1393
+ ], 64)) : f("", !0),
1394
+ e.value.style.chart.grid.y.axisLabels.show && !e.value.style.chart.bars.distributed && e.value.orientation === "vertical" ? (o(), u("g", {
1395
+ key: 13,
1396
+ ref_key: "scaleLabels",
1397
+ ref: re
1398
+ }, [
1399
+ (o(!0), u(x, null, L(B.value, (t, r) => (o(), u("line", {
1400
+ x1: n.value.left,
1401
+ x2: n.value.left - 6,
1402
+ y1: t.y,
1403
+ y2: t.y,
1404
+ stroke: e.value.style.chart.grid.x.axisColor,
1405
+ "stroke-width": 1
1406
+ }, null, 8, Fr))), 256)),
1407
+ (o(!0), u(x, null, L(B.value, (t, r) => (o(), u("text", {
1408
+ x: t.x,
1409
+ y: t.y + e.value.style.chart.grid.y.axisLabels.fontSize / 3,
1410
+ "font-size": e.value.style.chart.grid.y.axisLabels.fontSize,
1411
+ "font-weight": e.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
1412
+ fill: e.value.style.chart.grid.y.axisLabels.color,
1413
+ "text-anchor": "end"
1414
+ }, E(m(ye)(
1415
+ e.value.style.chart.grid.y.axisLabels.formatter,
1416
+ t.value,
1417
+ m(ae)({
1418
+ p: e.value.style.chart.bars.dataLabels.prefix,
1419
+ v: t.value,
1420
+ s: e.value.style.chart.bars.dataLabels.suffix,
1421
+ r: e.value.style.chart.grid.y.axisLabels.rounding
1422
+ }),
1423
+ { datapoint: t }
1424
+ )), 9, Dr))), 256))
1425
+ ], 512)) : f("", !0),
1426
+ e.value.style.chart.grid.y.axisLabels.show && !e.value.style.chart.bars.distributed && e.value.orientation === "horizontal" ? (o(), u("g", {
1427
+ key: 14,
1428
+ ref_key: "scaleLabels",
1429
+ ref: re
1430
+ }, [
1431
+ (o(!0), u(x, null, L(B.value, (t, r) => (o(), u("line", {
1432
+ x1: t.horizontal_x,
1433
+ x2: t.horizontal_x,
1434
+ y1: n.value.bottom,
1435
+ y2: n.value.bottom + 6,
1436
+ stroke: e.value.style.chart.grid.x.axisColor,
1437
+ "stroke-width": 1,
1438
+ "stroke-linecap": "round"
1439
+ }, null, 8, Vr))), 256)),
1440
+ (o(!0), u(x, null, L(B.value, (t, r) => (o(), u("text", {
1441
+ class: "vue-data-ui-time-label",
1442
+ "font-size": e.value.style.chart.grid.x.timeLabels.fontSize,
1443
+ "font-weight": e.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
1444
+ fill: e.value.style.chart.grid.y.axisLabels.color,
1445
+ "text-anchor": e.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : e.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
1446
+ transform: `translate(${t.horizontal_x}, ${n.value.bottom + e.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + e.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${e.value.style.chart.grid.x.timeLabels.rotation})`
1447
+ }, E(m(ye)(
1448
+ e.value.style.chart.grid.y.axisLabels.formatter,
1449
+ t.value,
1450
+ m(ae)({
1451
+ p: e.value.style.chart.bars.dataLabels.prefix,
1452
+ v: t.value,
1453
+ s: e.value.style.chart.bars.dataLabels.suffix,
1454
+ r: e.value.style.chart.grid.y.axisLabels.rounding
1455
+ }),
1456
+ { datapoint: t }
1457
+ )), 9, Er))), 256))
1458
+ ], 512)) : f("", !0),
1459
+ e.value.style.chart.grid.x.timeLabels.show && e.value.orientation === "vertical" ? (o(), u("g", {
1460
+ key: 15,
1461
+ ref_key: "timeLabelsEls",
1462
+ ref: se
1463
+ }, [
1464
+ a.$slots["time-label"] ? (o(), u("g", Ur, [
1465
+ (o(!0), u(x, null, L(It.value, (t, r) => (o(), u("g", null, [
1466
+ w(a.$slots, "time-label", Te({ ref_for: !0 }, {
1467
+ x: n.value.left + p.value * r + p.value / 2,
1468
+ y: n.value.bottom + e.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + e.value.style.chart.grid.x.timeLabels.offsetY,
1469
+ fontSize: e.value.style.chart.grid.x.timeLabels.fontSize,
1470
+ fill: e.value.style.chart.grid.x.timeLabels.color,
1471
+ transform: `translate(${n.value.left + p.value * r + p.value / 2}, ${n.value.bottom + e.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + e.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${e.value.style.chart.grid.x.timeLabels.rotation})`,
1472
+ absoluteIndex: t.absoluteIndex,
1473
+ content: t.text,
1474
+ textAnchor: e.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : e.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
1475
+ show: !0
1476
+ }), void 0, !0)
1477
+ ]))), 256))
1478
+ ])) : (o(), u("g", Br, [
1479
+ (o(!0), u(x, null, L(It.value, (t, r) => (o(), u("g", null, [
1480
+ String(t.text).includes(`
1481
+ `) ? (o(), u("text", {
1482
+ key: r + "-multi",
1483
+ "text-anchor": e.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : e.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
1484
+ "font-size": e.value.style.chart.grid.x.timeLabels.fontSize,
1485
+ fill: e.value.style.chart.grid.x.timeLabels.color,
1486
+ transform: `
1487
+ translate(
1488
+ ${n.value.left + p.value * r + p.value / 2},
1489
+ ${n.value.bottom + e.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + e.value.style.chart.grid.x.timeLabels.offsetY}
1490
+ ),
1491
+ rotate(${e.value.style.chart.grid.x.timeLabels.rotation})
1492
+ `,
1493
+ style: { cursor: "pointer" },
1494
+ innerHTML: m(El)({
1495
+ content: String(t.text),
1496
+ fontSize: e.value.style.chart.grid.x.timeLabels.fontSize,
1497
+ fill: e.value.style.chart.grid.x.timeLabels.color,
1498
+ x: 0,
1499
+ y: 0
1500
+ }),
1501
+ onClick: () => Ve(t, r)
1502
+ }, null, 8, Xr)) : (o(), u("text", {
1503
+ class: "vue-data-ui-time-label",
1504
+ key: r,
1505
+ "text-anchor": e.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : e.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
1506
+ "font-size": e.value.style.chart.grid.x.timeLabels.fontSize,
1507
+ "font-weight": e.value.style.chart.grid.x.timeLabels.bold ? "bold" : "normal",
1508
+ fill: e.value.style.chart.grid.x.timeLabels.color,
1509
+ transform: `translate(${n.value.left + p.value * r + p.value / 2}, ${n.value.bottom + e.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + e.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${e.value.style.chart.grid.x.timeLabels.rotation})`,
1510
+ style: { cursor: "pointer" },
1511
+ onClick: () => Ve(t, r)
1512
+ }, E(t.text), 9, Hr))
1513
+ ]))), 256))
1514
+ ]))
1515
+ ], 512)) : f("", !0),
1516
+ e.value.style.chart.grid.x.timeLabels.show && e.value.orientation === "horizontal" ? (o(), u("g", {
1517
+ key: 16,
1518
+ ref_key: "timeLabelsEls",
1519
+ ref: se
1520
+ }, [
1521
+ a.$slots["time-label"] ? (o(), u("g", Yr, [
1522
+ (o(!0), u(x, null, L(I.value, (t, r) => (o(), u("g", null, [
1523
+ w(a.$slots, "time-label", Te({ ref_for: !0 }, {
1524
+ x: n.value.left - 8,
1525
+ y: n.value.top + p.value * r + p.value / 2 + e.value.style.chart.grid.y.axisLabels.fontSize / 3,
1526
+ fontSize: e.value.style.chart.grid.x.timeLabels.fontSize,
1527
+ fill: e.value.style.chart.grid.x.timeLabels.color,
1528
+ transform: null,
1529
+ absoluteIndex: t.absoluteIndex,
1530
+ content: t.text,
1531
+ textAnchor: "end",
1532
+ show: !0
1533
+ }), void 0, !0)
1534
+ ]))), 256))
1535
+ ])) : (o(), u("g", Wr, [
1536
+ (o(!0), u(x, null, L(I.value, (t, r) => (o(), u("g", null, [
1537
+ String(t.text).includes(`
1538
+ `) ? (o(), u("text", {
1539
+ key: 1,
1540
+ "text-anchor": "end",
1541
+ "font-size": e.value.style.chart.grid.y.axisLabels.fontSize,
1542
+ "font-weight": e.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
1543
+ fill: e.value.style.chart.grid.y.axisLabels.color,
1544
+ x: n.value.left - 8,
1545
+ y: n.value.top + p.value * r + p.value / 2 + e.value.style.chart.grid.y.axisLabels.fontSize / 3,
1546
+ style: { cursor: "pointer" },
1547
+ onClick: () => Ve(t, r),
1548
+ innerHTML: m(Ul)({
1549
+ content: String(t.text),
1550
+ fontSize: e.value.style.chart.grid.y.axisLabels.fontSize,
1551
+ fill: e.value.style.chart.grid.y.axisLabels.color,
1552
+ x: n.value.left - 8,
1553
+ y: 0
1554
+ })
1555
+ }, null, 8, qr)) : (o(), u("text", {
1556
+ key: 0,
1557
+ "text-anchor": "end",
1558
+ "font-size": e.value.style.chart.grid.y.axisLabels.fontSize,
1559
+ "font-weight": e.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
1560
+ fill: e.value.style.chart.grid.y.axisLabels.color,
1561
+ x: n.value.left - 8,
1562
+ y: n.value.top + p.value * r + p.value / 2 + e.value.style.chart.grid.y.axisLabels.fontSize / 3,
1563
+ style: {
1564
+ cursor: "pointer"
1565
+ },
1566
+ onClick: () => Ve(t, r)
1567
+ }, E(t.text), 9, Gr))
1568
+ ]))), 256))
1569
+ ]))
1570
+ ], 512)) : f("", !0),
1571
+ $.value.showTooltip && e.value.orientation === "vertical" ? (o(!0), u(x, { key: 17 }, L(v.value.end - v.value.start, (t, r) => (o(), u("rect", {
1572
+ x: n.value.left + r * p.value,
1573
+ y: n.value.top,
1574
+ width: p.value,
1575
+ height: n.value.height < 0 ? 0 : n.value.height,
1576
+ onClick: () => Ut(r),
1577
+ onMouseenter: () => Ht(r),
1578
+ onMouseleave: () => Bt(r),
1579
+ fill: r === q.value || r === Ke.value ? e.value.style.chart.highlighter.color : "transparent",
1580
+ style: ne({ opacity: e.value.style.chart.highlighter.opacity / 100 })
1581
+ }, null, 44, Jr))), 256)) : f("", !0),
1582
+ $.value.showTooltip && e.value.orientation === "horizontal" ? (o(!0), u(x, { key: 18 }, L(v.value.end - v.value.start, (t, r) => (o(), u("rect", {
1583
+ x: n.value.left,
1584
+ y: n.value.top + r * p.value,
1585
+ width: n.value.width < 0 ? 0 : n.value.width,
1586
+ height: p.value,
1587
+ onClick: () => Ut(r),
1588
+ onMouseenter: () => Ht(r),
1589
+ onMouseleave: () => Bt(r),
1590
+ fill: r === q.value || r === Ke.value ? e.value.style.chart.highlighter.color : "transparent",
1591
+ style: ne({ opacity: e.value.style.chart.highlighter.opacity / 100 })
1592
+ }, null, 44, Zr))), 256)) : f("", !0),
1593
+ Nt.value ? (o(), u("rect", Te({ key: 19 }, Ba.value, {
1594
+ "data-start": v.value.start,
1595
+ "data-end": v.value.end
1596
+ }), null, 16, Qr)) : f("", !0),
1597
+ w(a.$slots, "svg", {
1598
+ svg: {
1599
+ drawingArea: n.value,
1600
+ data: C.value
1601
+ }
1602
+ }, void 0, !0)
1603
+ ], 14, cr)),
1604
+ a.$slots.watermark ? (o(), u("div", Kr, [
1605
+ w(a.$slots, "watermark", H(X({ isPrinting: m(Mt) || m(_t) })), void 0, !0)
1606
+ ])) : f("", !0),
1607
+ e.value.style.chart.zoom.show && N.value > 6 && fe.value && ea.value ? (o(), ee(or, {
1608
+ key: 4,
1609
+ ref_key: "chartSlicer",
1610
+ ref: be,
1611
+ allMinimaps: Ya.value,
1612
+ background: e.value.style.chart.zoom.color,
1613
+ borderColor: e.value.style.chart.backgroundColor,
1614
+ customFormat: e.value.style.chart.zoom.customFormat,
1615
+ cutNullValues: !1,
1616
+ enableRangeHandles: e.value.style.chart.zoom.enableRangeHandles,
1617
+ enableSelectionDrag: e.value.style.chart.zoom.enableSelectionDrag,
1618
+ end: v.value.end,
1619
+ focusOnDrag: e.value.style.chart.zoom.focusOnDrag,
1620
+ focusRangeRatio: e.value.style.chart.zoom.focusRangeRatio,
1621
+ fontSize: e.value.style.chart.zoom.fontSize,
1622
+ immediate: !e.value.style.chart.zoom.preview.enable,
1623
+ inputColor: e.value.style.chart.zoom.color,
1624
+ isPreview: Nt.value,
1625
+ labelLeft: e.value.style.chart.grid.x.timeLabels.values[v.value.start] ? I.value[0].text : "",
1626
+ labelRight: e.value.style.chart.grid.x.timeLabels.values[v.value.end - 1] ? I.value.at(-1).text : "",
1627
+ max: Math.max(...Xe.dataset.map((t) => t.series.length)),
1628
+ min: 0,
1629
+ minimap: oe.value,
1630
+ minimapCompact: e.value.style.chart.zoom.minimap.compact,
1631
+ minimapFrameColor: e.value.style.chart.zoom.minimap.frameColor,
1632
+ minimapIndicatorColor: e.value.style.chart.zoom.minimap.indicatorColor,
1633
+ minimapMerged: !1,
1634
+ minimapSelectedColor: e.value.style.chart.zoom.minimap.selectedColor,
1635
+ minimapSelectedColorOpacity: e.value.style.chart.zoom.minimap.selectedColorOpacity,
1636
+ minimapSelectedIndex: q.value,
1637
+ minimapSelectionRadius: 1,
1638
+ preciseLabels: Dt.value.length ? Dt.value : Le.value,
1639
+ refreshEndPoint: e.value.style.chart.zoom.endIndex !== null ? e.value.style.chart.zoom.endIndex + 1 : Math.max(...Xe.dataset.map((t) => t.series.length)),
1640
+ refreshStartPoint: e.value.style.chart.zoom.startIndex !== null ? e.value.style.chart.zoom.startIndex : 0,
1641
+ selectColor: e.value.style.chart.zoom.highlightColor,
1642
+ selectedSeries: qa.value,
1643
+ smoothMinimap: !1,
1644
+ start: v.value.start,
1645
+ textColor: e.value.style.chart.color,
1646
+ timeLabels: Le.value,
1647
+ usePreciseLabels: e.value.style.chart.grid.x.timeLabels.datetimeFormatter.enable && !e.value.style.chart.zoom.useDefaultFormat,
1648
+ valueEnd: v.value.end,
1649
+ valueStart: v.value.start,
1650
+ verticalHandles: e.value.style.chart.zoom.minimap.verticalHandles,
1651
+ "onUpdate:end": ul,
1652
+ "onUpdate:start": il,
1653
+ onTrapMouse: Ha,
1654
+ onReset: Rt,
1655
+ onFutureEnd: l[0] || (l[0] = (t) => Ot("end", t)),
1656
+ onFutureStart: l[1] || (l[1] = (t) => Ot("start", t))
1657
+ }, {
1658
+ "reset-action": S(({ reset: t }) => [
1659
+ w(a.$slots, "reset-action", H(X({ reset: t })), void 0, !0)
1660
+ ]),
1661
+ slotMap: S(({ width: t, height: r, unitW: c }) => [
1662
+ (o(!0), u(x, null, L(C.value, (s) => (o(), u("g", {
1663
+ key: s.id
1664
+ }, [
1665
+ (o(!0), u(x, null, L(s.xMinimap({ left: 0, unitW: c }), (b, z) => (o(), u("rect", {
1666
+ key: z,
1667
+ x: z === 0 ? b - c * (e.value.style.chart.bars.gapRatio / 4) : b - c / 2,
1668
+ y: Math.max(0, Math.min(r, s.yMinimap({ minimapH: r })[z])),
1669
+ height: s.heightMinimap({ minimapH: r })[z],
1670
+ width: [0, N.value - 1].includes(z) ? c * (1 - e.value.style.chart.bars.gapRatio / 2) / 2 : c * (1 - e.value.style.chart.bars.gapRatio / 2),
1671
+ fill: e.value.style.chart.bars.gradient.show ? `url(#gradient_${s.id})` : s.color,
1672
+ stroke: e.value.style.chart.backgroundColor,
1673
+ "stroke-width": 0.5,
1674
+ rx: "0",
1675
+ "stroke-linecap": "round",
1676
+ "stroke-linejoin": "round",
1677
+ style: ne({
1678
+ opacity: z >= D.value.start && z <= D.value.end ? 1 : 0.62
1679
+ })
1680
+ }, null, 12, jr))), 128))
1681
+ ]))), 128))
1682
+ ]),
1683
+ _: 3
1684
+ }, 8, ["allMinimaps", "background", "borderColor", "customFormat", "enableRangeHandles", "enableSelectionDrag", "end", "focusOnDrag", "focusRangeRatio", "fontSize", "immediate", "inputColor", "isPreview", "labelLeft", "labelRight", "max", "minimap", "minimapCompact", "minimapFrameColor", "minimapIndicatorColor", "minimapSelectedColor", "minimapSelectedColorOpacity", "minimapSelectedIndex", "preciseLabels", "refreshEndPoint", "refreshStartPoint", "selectColor", "selectedSeries", "start", "textColor", "timeLabels", "usePreciseLabels", "valueEnd", "valueStart", "verticalHandles"])) : f("", !0),
1685
+ _e(m(wa), {
1686
+ show: $.value.showTooltip && Ye.value,
1687
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
1688
+ color: e.value.style.chart.tooltip.color,
1689
+ fontSize: e.value.style.chart.tooltip.fontSize,
1690
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
1691
+ borderColor: e.value.style.chart.tooltip.borderColor,
1692
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
1693
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
1694
+ position: e.value.style.chart.tooltip.position,
1695
+ offsetY: e.value.style.chart.tooltip.offsetY,
1696
+ parent: J.value,
1697
+ content: Ge.value,
1698
+ isFullscreen: me.value,
1699
+ isCustom: m(ma)(e.value.style.chart.tooltip.customFormat),
1700
+ smooth: e.value.style.chart.tooltip.smooth,
1701
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter,
1702
+ smoothForce: e.value.style.chart.tooltip.smoothForce,
1703
+ smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
1704
+ }, {
1705
+ "tooltip-before": S(() => [
1706
+ w(a.$slots, "tooltip-before", H(X({ ...We.value })), void 0, !0)
1707
+ ]),
1708
+ "tooltip-after": S(() => [
1709
+ w(a.$slots, "tooltip-after", H(X({ ...We.value })), void 0, !0)
1710
+ ]),
1711
+ _: 3
1712
+ }, 8, ["show", "backgroundColor", "color", "fontSize", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
1713
+ te("div", {
1714
+ id: `legend-bottom-${U.value}`
1715
+ }, null, 8, es),
1716
+ wt.value ? (o(), ee(Tl, {
1717
+ key: 5,
1718
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${U.value}` : `#legend-bottom-${U.value}`
1719
+ }, [
1720
+ te("div", {
1721
+ ref_key: "chartLegend",
1722
+ ref: pt
1723
+ }, [
1724
+ e.value.style.chart.legend.show ? (o(), ee(sr, {
1725
+ key: 0,
1726
+ legendSet: ut.value,
1727
+ config: el.value,
1728
+ onClickMarker: l[2] || (l[2] = ({ legend: t }) => t.segregate())
1729
+ }, gt({
1730
+ item: S(({ legend: t }) => [
1731
+ m(xe) ? f("", !0) : (o(), u("div", {
1732
+ key: 0,
1733
+ onClick: (r) => t.segregate(),
1734
+ style: ne(`opacity:${P.value.includes(t.id) ? 0.5 : 1}`)
1735
+ }, E(t.name), 13, ts))
1736
+ ]),
1737
+ _: 2
1738
+ }, [
1739
+ a.$slots.pattern ? {
1740
+ name: "legend-pattern",
1741
+ fn: S(({ legend: t, index: r }) => [
1742
+ _e(lr, {
1743
+ shape: t.shape,
1744
+ radius: 30,
1745
+ stroke: "none",
1746
+ plot: { x: 30, y: 30 },
1747
+ fill: `url(#pattern_${U.value}_${r})`
1748
+ }, null, 8, ["shape", "fill"])
1749
+ ]),
1750
+ key: "0"
1751
+ } : void 0
1752
+ ]), 1032, ["legendSet", "config"])) : w(a.$slots, "legend", {
1753
+ key: 1,
1754
+ legend: ut.value
1755
+ }, void 0, !0)
1756
+ ], 512)
1757
+ ], 8, ["to"])) : f("", !0),
1758
+ a.$slots.source ? (o(), u("div", {
1759
+ key: 6,
1760
+ ref_key: "source",
1761
+ ref: xt,
1762
+ dir: "auto"
1763
+ }, [
1764
+ w(a.$slots, "source", {}, void 0, !0)
1765
+ ], 512)) : f("", !0),
1766
+ fe.value && e.value.userOptions.buttons.table ? (o(), ee($l(Se.value.component), Te({ key: 7 }, Se.value.props, {
1767
+ ref_key: "tableUnit",
1768
+ ref: pe,
1769
+ onClose: Qt
1770
+ }), gt({
1771
+ content: S(() => [
1772
+ _e(m(za), {
1773
+ colNames: Fe.value.colNames,
1774
+ head: Fe.value.head,
1775
+ body: Fe.value.body,
1776
+ config: Fe.value.config,
1777
+ title: e.value.table.useDialog ? "" : Se.value.title,
1778
+ withCloseButton: !e.value.table.useDialog,
1779
+ onClose: Qt
1780
+ }, {
1781
+ th: S(({ th: t }) => [
1782
+ te("div", { innerHTML: t }, null, 8, as)
1783
+ ]),
1784
+ td: S(({ td: t }) => [
1785
+ ca(E(isNaN(Number(t)) ? t : m(ae)({
1786
+ p: e.value.style.chart.bars.dataLabels.prefix,
1787
+ v: t,
1788
+ s: e.value.style.chart.bars.dataLabels.suffix,
1789
+ r: e.value.table.td.roundingValue
1790
+ })), 1)
1791
+ ]),
1792
+ _: 1
1793
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"])
1794
+ ]),
1795
+ _: 2
1796
+ }, [
1797
+ e.value.table.useDialog ? {
1798
+ name: "title",
1799
+ fn: S(() => [
1800
+ ca(E(Se.value.title), 1)
1801
+ ]),
1802
+ key: "0"
1803
+ } : void 0,
1804
+ e.value.table.useDialog ? {
1805
+ name: "actions",
1806
+ fn: S(() => [
1807
+ te("button", {
1808
+ tabindex: "0",
1809
+ class: "vue-ui-user-options-button",
1810
+ onClick: l[3] || (l[3] = (t) => nt(e.value.userOptions.callbacks.csv))
1811
+ }, [
1812
+ _e(m(La), {
1813
+ name: "excel",
1814
+ stroke: Se.value.props.color
1815
+ }, null, 8, ["stroke"])
1816
+ ])
1817
+ ]),
1818
+ key: "1"
1819
+ } : void 0
1820
+ ]), 1040)) : f("", !0),
1821
+ m(xe) ? (o(), ee(ql, { key: 8 })) : f("", !0)
1822
+ ], 46, ir));
1823
+ }
1824
+ }, Ls = /* @__PURE__ */ nr(ls, [["__scopeId", "data-v-1e5ecd2a"]]);
1825
+ export {
1826
+ Ls as default
1827
+ };