vue-data-ui 3.22.8 → 3.22.9

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 (169) hide show
  1. package/dist/{BaseDraggableDialog-DcfGlH8A.js → BaseDraggableDialog-Av7Uxq5V.js} +1 -1
  2. package/dist/BaseIcon-UdRAvP2h.js +483 -0
  3. package/dist/{BaseLegendToggle-DtQ8vyfr.js → BaseLegendToggle-DWtet-Hh.js} +1 -1
  4. package/dist/{BaseZoomControls-C6zonwhr.js → BaseZoomControls-BY2KLqs6.js} +1 -1
  5. package/dist/{ColorPicker-CK2-h611.js → ColorPicker-DR_ummtM.js} +1 -1
  6. package/dist/{DataTable-D9NvewTT.js → DataTable-BxpTMgfK.js} +1 -1
  7. package/dist/DefGrad-DVBqDjhO.js +48 -0
  8. package/dist/{NonSvgPenAndPaper-BHHNsVVP.js → NonSvgPenAndPaper-B6EG_Sga.js} +2 -2
  9. package/dist/{PackageVersion-DW7zwRcm.js → PackageVersion-D__dRVRA.js} +1 -1
  10. package/dist/{PenAndPaper-pcgwlYr2.js → PenAndPaper-DsXi7GJ-.js} +2 -2
  11. package/dist/{Slicer-BZ5VnOOS.js → Slicer-CW_XPIKL.js} +359 -354
  12. package/dist/{SlicerPreview-BQFeCw0m.js → SlicerPreview-CTz41lOu.js} +471 -466
  13. package/dist/{UserOptions-16uF1ayB.js → UserOptions-trvJ26nz.js} +1 -1
  14. package/dist/components/vue-ui-3d-bar.js +1 -1
  15. package/dist/components/vue-ui-accordion.js +1 -1
  16. package/dist/components/vue-ui-age-pyramid.js +1 -1
  17. package/dist/components/vue-ui-annotator.js +1 -1
  18. package/dist/components/vue-ui-bullet.js +1 -1
  19. package/dist/components/vue-ui-bump.js +1 -1
  20. package/dist/components/vue-ui-candlestick.js +1 -1
  21. package/dist/components/vue-ui-carousel-table.js +1 -1
  22. package/dist/components/vue-ui-chestnut.js +1 -1
  23. package/dist/components/vue-ui-chord.js +1 -1
  24. package/dist/components/vue-ui-circle-pack.js +1 -1
  25. package/dist/components/vue-ui-cursor.js +1 -1
  26. package/dist/components/vue-ui-dag.js +1 -1
  27. package/dist/components/vue-ui-dashboard.js +1 -1
  28. package/dist/components/vue-ui-digits.js +1 -1
  29. package/dist/components/vue-ui-donut-evolution.js +1 -1
  30. package/dist/components/vue-ui-donut.js +1 -1
  31. package/dist/components/vue-ui-dumbbell.js +1 -1
  32. package/dist/components/vue-ui-flow.js +1 -1
  33. package/dist/components/vue-ui-funnel.js +1 -1
  34. package/dist/components/vue-ui-galaxy.js +1 -1
  35. package/dist/components/vue-ui-gauge.js +1 -1
  36. package/dist/components/vue-ui-geo.js +1 -1
  37. package/dist/components/vue-ui-gizmo.js +1 -1
  38. package/dist/components/vue-ui-heatmap.js +1 -1
  39. package/dist/components/vue-ui-history-plot.js +1 -1
  40. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  41. package/dist/components/vue-ui-icon.js +1 -1
  42. package/dist/components/vue-ui-kpi.js +1 -1
  43. package/dist/components/vue-ui-molecule.js +1 -1
  44. package/dist/components/vue-ui-mood-radar.js +1 -1
  45. package/dist/components/vue-ui-nested-donuts.js +1 -1
  46. package/dist/components/vue-ui-onion.js +1 -1
  47. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  48. package/dist/components/vue-ui-quadrant.js +1 -1
  49. package/dist/components/vue-ui-quick-chart.js +1 -1
  50. package/dist/components/vue-ui-radar.js +1 -1
  51. package/dist/components/vue-ui-rating.js +1 -1
  52. package/dist/components/vue-ui-relation-circle.js +1 -1
  53. package/dist/components/vue-ui-ridgeline.js +1 -1
  54. package/dist/components/vue-ui-rings.js +1 -1
  55. package/dist/components/vue-ui-scatter.js +1 -1
  56. package/dist/components/vue-ui-skeleton.js +1 -1
  57. package/dist/components/vue-ui-smiley.js +1 -1
  58. package/dist/components/vue-ui-spark-trend.js +1 -1
  59. package/dist/components/vue-ui-sparkbar.js +1 -1
  60. package/dist/components/vue-ui-sparkgauge.js +1 -1
  61. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  62. package/dist/components/vue-ui-sparkline.js +1 -1
  63. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  64. package/dist/components/vue-ui-stackbar.js +1 -1
  65. package/dist/components/vue-ui-stackline.js +1 -1
  66. package/dist/components/vue-ui-strip-plot.js +1 -1
  67. package/dist/components/vue-ui-table-heatmap.js +1 -1
  68. package/dist/components/vue-ui-table-sparkline.js +1 -1
  69. package/dist/components/vue-ui-table.js +1 -1
  70. package/dist/components/vue-ui-thermometer.js +1 -1
  71. package/dist/components/vue-ui-timer.js +1 -1
  72. package/dist/components/vue-ui-tiremarks.js +1 -1
  73. package/dist/components/vue-ui-treemap.js +1 -1
  74. package/dist/components/vue-ui-vertical-bar.js +1 -1
  75. package/dist/components/vue-ui-waffle.js +1 -1
  76. package/dist/components/vue-ui-wheel.js +1 -1
  77. package/dist/components/vue-ui-word-cloud.js +1 -1
  78. package/dist/components/vue-ui-world.js +1 -1
  79. package/dist/components/vue-ui-xy-canvas.js +1 -1
  80. package/dist/components/vue-ui-xy.js +1 -1
  81. package/dist/{package-gp9pYCfN.js → package-ByOT60IK.js} +1 -1
  82. package/dist/{render-common-CLn1VXJ9.js → render-common-D18VrP0h.js} +1 -1
  83. package/dist/ssr/vue-ui-donut.js +1 -1
  84. package/dist/ssr/vue-ui-xy.js +1 -1
  85. package/dist/ssr.js +2 -2
  86. package/dist/style.css +1 -1
  87. package/dist/{vue-data-ui-AZZ9Cq-4.js → vue-data-ui-ub3fCh6P.js} +67 -67
  88. package/dist/vue-data-ui.js +67 -67
  89. package/dist/vue-ui-3d-bar-taPI41_I.js +1825 -0
  90. package/dist/{vue-ui-accordion-YyosvEPo.js → vue-ui-accordion-CjAGqEJg.js} +1 -1
  91. package/dist/{vue-ui-age-pyramid-DTAOc7fn.js → vue-ui-age-pyramid-jvQZbF8E.js} +306 -297
  92. package/dist/{vue-ui-annotator-CfJXeAOE.js → vue-ui-annotator-BIucnT0L.js} +3 -3
  93. package/dist/{vue-ui-bullet-CCLnrOLm.js → vue-ui-bullet-CIATzlsk.js} +1 -1
  94. package/dist/{vue-ui-bump-Rq7efdoe.js → vue-ui-bump-D8MxltQE.js} +2 -2
  95. package/dist/{vue-ui-candlestick-D-Z9pEaA.js → vue-ui-candlestick-DULUMU-Q.js} +513 -502
  96. package/dist/{vue-ui-carousel-table-Lx5Zk4dG.js → vue-ui-carousel-table-BSmdexG7.js} +1 -1
  97. package/dist/vue-ui-chestnut-BIh1nQ7q.js +2042 -0
  98. package/dist/{vue-ui-chord-Db1O_diJ.js → vue-ui-chord-DL1M7cgL.js} +1 -1
  99. package/dist/vue-ui-circle-pack-C1Pgq6si.js +1614 -0
  100. package/dist/{vue-ui-cursor-DLP7wxsw.js → vue-ui-cursor-d2uLAKTQ.js} +1 -1
  101. package/dist/{vue-ui-dag-DL3zq0F2.js → vue-ui-dag-CVh9FpZr.js} +2 -2
  102. package/dist/{vue-ui-dashboard-C2ozZ-LI.js → vue-ui-dashboard-BH0N3ebj.js} +65 -65
  103. package/dist/{vue-ui-digits-ThFVNO3l.js → vue-ui-digits-R6wi3J-Y.js} +1 -1
  104. package/dist/{vue-ui-donut-BuTd6dt4.js → vue-ui-donut-BWDeVzLc.js} +1 -1
  105. package/dist/{vue-ui-donut-C3Rt6j-I.js → vue-ui-donut-BoZdciGh.js} +632 -623
  106. package/dist/vue-ui-donut-evolution-CpC9EMro.js +1522 -0
  107. package/dist/{vue-ui-dumbbell-wK7vUB0x.js → vue-ui-dumbbell-DGA5Bfnl.js} +528 -494
  108. package/dist/{vue-ui-flow-BTUNfWb7.js → vue-ui-flow-CNczKwTh.js} +1 -1
  109. package/dist/vue-ui-funnel-CaD2tZCT.js +782 -0
  110. package/dist/{vue-ui-galaxy-DJ2uNYcN.js → vue-ui-galaxy-v3cTbUiM.js} +2 -2
  111. package/dist/vue-ui-gauge-DxvMjfoc.js +926 -0
  112. package/dist/{vue-ui-geo-ovHu_Sc9.js → vue-ui-geo-BgmLkZZ2.js} +2 -2
  113. package/dist/{vue-ui-gizmo-DDxEj-qe.js → vue-ui-gizmo-n1kmcGeE.js} +66 -61
  114. package/dist/{vue-ui-heatmap-Npqnvb1r.js → vue-ui-heatmap-dSTh8ah_.js} +2 -2
  115. package/dist/{vue-ui-history-plot-C3Kjy2tc.js → vue-ui-history-plot-N8BqMFVU.js} +395 -384
  116. package/dist/{vue-ui-horizontal-bar-D1rCsgqt.js → vue-ui-horizontal-bar-CwiQxYzv.js} +360 -354
  117. package/dist/{vue-ui-kpi-BrlfYO-j.js → vue-ui-kpi-BKrUk9o8.js} +1 -1
  118. package/dist/{vue-ui-molecule-CExCqZ08.js → vue-ui-molecule--kK1JfnP.js} +295 -289
  119. package/dist/{vue-ui-mood-radar-DlVh6hwx.js → vue-ui-mood-radar-CpBRHQo_.js} +209 -204
  120. package/dist/{vue-ui-nested-donuts-3TRV8pN-.js → vue-ui-nested-donuts-8Ehwcuns.js} +307 -301
  121. package/dist/{vue-ui-onion-DwKK9DXn.js → vue-ui-onion-Cf6JiYTH.js} +2 -2
  122. package/dist/{vue-ui-parallel-coordinate-plot-DSp_cwU-.js → vue-ui-parallel-coordinate-plot-Blnqp1DB.js} +2 -2
  123. package/dist/{vue-ui-quadrant-ByVg-NBs.js → vue-ui-quadrant-CxU0jiOm.js} +366 -360
  124. package/dist/{vue-ui-quick-chart-WMzSJxGZ.js → vue-ui-quick-chart-BO98uEPl.js} +3 -3
  125. package/dist/{vue-ui-radar-DE-me6OC.js → vue-ui-radar-eH2Qih4_.js} +272 -266
  126. package/dist/{vue-ui-rating-CzD3EQ3G.js → vue-ui-rating-CN-ZiAES.js} +135 -126
  127. package/dist/{vue-ui-relation-circle-L7-dTqet.js → vue-ui-relation-circle-BIcP-aAt.js} +1 -1
  128. package/dist/vue-ui-ridgeline-ChXHzEJw.js +1628 -0
  129. package/dist/{vue-ui-rings-WzWiEo9W.js → vue-ui-rings-J990vNbX.js} +262 -256
  130. package/dist/{vue-ui-scatter-DwrAydha.js → vue-ui-scatter-BeJB0EKg.js} +642 -633
  131. package/dist/{vue-ui-skeleton-CuFm4PtB.js → vue-ui-skeleton-DC2bZ0nk.js} +336 -333
  132. package/dist/{vue-ui-smiley-D4NnZ1mg.js → vue-ui-smiley-Dyyu1je3.js} +111 -98
  133. package/dist/{vue-ui-spark-trend-C38ysZ-c.js → vue-ui-spark-trend-CpDX85H3.js} +158 -153
  134. package/dist/vue-ui-sparkbar-DhIo1qsW.js +398 -0
  135. package/dist/{vue-ui-sparkgauge-DgPc4vPT.js → vue-ui-sparkgauge-D0Fo3Hts.js} +75 -70
  136. package/dist/vue-ui-sparkhistogram-CUjFiuAh.js +576 -0
  137. package/dist/vue-ui-sparkline-ApivEMBP.js +1560 -0
  138. package/dist/{vue-ui-sparkstackbar-DrmiWFlw.js → vue-ui-sparkstackbar-DsKQJx_n.js} +179 -167
  139. package/dist/{vue-ui-stackbar-BVdApDnY.js → vue-ui-stackbar-Ds4hXATH.js} +538 -531
  140. package/dist/vue-ui-stackline-DJbcVvmN.js +2425 -0
  141. package/dist/{vue-ui-strip-plot-C-TFNvgz.js → vue-ui-strip-plot-C3ZHf4bD.js} +368 -361
  142. package/dist/{vue-ui-table-heatmap-D0pZbBOH.js → vue-ui-table-heatmap-CNXNXXBU.js} +1 -1
  143. package/dist/{vue-ui-table-sparkline-Q6BHPKUn.js → vue-ui-table-sparkline-B9JJ4pFF.js} +1 -1
  144. package/dist/{vue-ui-table-Q3brrivC.js → vue-ui-table-uudidrYt.js} +4 -4
  145. package/dist/vue-ui-thermometer-Bvw3oQb3.js +770 -0
  146. package/dist/{vue-ui-timer-BdzKpoRj.js → vue-ui-timer-5NAWw5BN.js} +91 -86
  147. package/dist/{vue-ui-tiremarks-DWb69ofh.js → vue-ui-tiremarks-Caz_g1c5.js} +1 -1
  148. package/dist/{vue-ui-treemap-uUz07Prw.js → vue-ui-treemap-F9upPyOI.js} +458 -453
  149. package/dist/{vue-ui-waffle-Pi9e7Ae7.js → vue-ui-waffle-Bk9AsrPp.js} +296 -290
  150. package/dist/{vue-ui-wheel-DTfvWYA7.js → vue-ui-wheel-DD6Q39BA.js} +1 -1
  151. package/dist/{vue-ui-word-cloud-DqfljAqH.js → vue-ui-word-cloud-BZLT5svo.js} +2 -2
  152. package/dist/{vue-ui-world-BtBrH92Z.js → vue-ui-world-DbEJN5NA.js} +284 -273
  153. package/dist/{vue-ui-xy-Bvgy2do1.js → vue-ui-xy-BYMAITk_.js} +1294 -1268
  154. package/dist/{vue-ui-xy-D5KsuNR2.js → vue-ui-xy-Cn9Q8YPr.js} +1 -1
  155. package/dist/{vue-ui-xy-canvas-BfgeE3TW.js → vue-ui-xy-canvas-Dcm2ftwm.js} +5 -5
  156. package/package.json +1 -1
  157. package/dist/BaseIcon-C2qlyHc7.js +0 -502
  158. package/dist/vue-ui-3d-bar-B3HxJmDI.js +0 -1757
  159. package/dist/vue-ui-chestnut-RfWMGUD-.js +0 -2010
  160. package/dist/vue-ui-circle-pack-B4Ro7UuI.js +0 -1608
  161. package/dist/vue-ui-donut-evolution-DY46UPF_.js +0 -1510
  162. package/dist/vue-ui-funnel-BhoHzyHa.js +0 -777
  163. package/dist/vue-ui-gauge-Cf4NqvrO.js +0 -920
  164. package/dist/vue-ui-ridgeline-Cp3YP0xe.js +0 -1622
  165. package/dist/vue-ui-sparkbar-B03ndcUe.js +0 -393
  166. package/dist/vue-ui-sparkhistogram-D02ff7ZI.js +0 -560
  167. package/dist/vue-ui-sparkline-DlTfNQj8.js +0 -1547
  168. package/dist/vue-ui-stackline-QzQQ7lTy.js +0 -2419
  169. package/dist/vue-ui-thermometer-Bg0RR6m4.js +0 -763
@@ -0,0 +1,1522 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, Dt as n, G as r, It as i, J as a, Kt as o, Mt as s, Rt as c, S as l, St as ee, T as te, U as ne, Vt as re, Wt as ie, X as ae, Z as oe, _ as se, b as ce, d as le, dt as ue, h as de, i as fe, kt as pe, p as me, t as he, u as ge } from "./lib-JqW18y5I.js";
3
+ import { t as _e } from "./useTimeLabels-BmBRv27Y.js";
4
+ import { t as ve } from "./useConfig-DYM3f6EI.js";
5
+ import { t as ye } from "./usePrinter-CqqHmnBI.js";
6
+ import { n as be, t as xe } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as Se } from "./useSvgExport-SVIsDot8.js";
8
+ import { t as Ce } from "./useNestedProp-DIuuzG1r.js";
9
+ import { t as we } from "./useThemeCheck-C43Tcqmk.js";
10
+ import { t as Te } from "./useTimeLabelCollider-AEcY4Ioe.js";
11
+ import { t as Ee } from "./img-DnP3eXuv.js";
12
+ import { n as De } from "./Title-CcNiYzEo.js";
13
+ import { t as Oe } from "./_plugin-vue_export-helper-B3ysoDQm.js";
14
+ import { c as ke } from "./canvas-lib-BOP_HS11.js";
15
+ import { t as Ae } from "./useResponsive-BfnK0KxU.js";
16
+ import { t as je } from "./DefGrad-DVBqDjhO.js";
17
+ import { t as Me } from "./BaseLegendToggle-DWtet-Hh.js";
18
+ import { t as Ne } from "./A11yDataTable-DdRsVULz.js";
19
+ import { t as Pe } from "./useUserOptionState-DK-_1ddE.js";
20
+ import { t as Fe } from "./useChartAccessibility-DYqac8yF.js";
21
+ import { t as Ie } from "./Legend-ROt6ugzW.js";
22
+ import { t as Le } from "./vue_ui_donut_evolution-D1yAAIHr.js";
23
+ import { t as Re } from "./Slicer-CW_XPIKL.js";
24
+ import { Fragment as u, Teleport as ze, computed as d, createBlock as f, createCommentVNode as p, createElementBlock as m, createElementVNode as h, createSlots as Be, createTextVNode as Ve, createVNode as He, defineAsyncComponent as g, guardReactiveProps as _, mergeProps as Ue, nextTick as We, normalizeClass as v, normalizeProps as y, normalizeStyle as b, onBeforeUnmount as Ge, onMounted as Ke, openBlock as x, ref as S, renderList as C, renderSlot as w, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as T, toRefs as Ye, unref as E, watch as Xe, watchEffect as Ze, withCtx as D } from "vue";
25
+ //#region src/components/vue-ui-donut-evolution.vue
26
+ var Qe = /* @__PURE__ */ e({ default: () => Bt }), $e = ["id"], et = ["id"], tt = ["id"], nt = { style: { position: "relative" } }, rt = [
27
+ "xmlns",
28
+ "aria-describedby",
29
+ "viewBox"
30
+ ], it = [
31
+ "x",
32
+ "y",
33
+ "width",
34
+ "height"
35
+ ], at = { key: 1 }, ot = [
36
+ "x1",
37
+ "x2",
38
+ "y1",
39
+ "y2",
40
+ "stroke",
41
+ "stroke-width"
42
+ ], st = [
43
+ "x1",
44
+ "x2",
45
+ "y1",
46
+ "y2",
47
+ "stroke",
48
+ "stroke-width"
49
+ ], ct = { key: 0 }, lt = [
50
+ "x1",
51
+ "x2",
52
+ "y1",
53
+ "y2",
54
+ "stroke",
55
+ "stroke-width"
56
+ ], ut = [
57
+ "font-size",
58
+ "fill",
59
+ "transform"
60
+ ], dt = [
61
+ "x",
62
+ "y",
63
+ "font-size",
64
+ "fill"
65
+ ], ft = [
66
+ "x1",
67
+ "x2",
68
+ "y1",
69
+ "y2",
70
+ "stroke",
71
+ "stroke-width"
72
+ ], pt = [
73
+ "x",
74
+ "y",
75
+ "font-size",
76
+ "text-anchor",
77
+ "fill",
78
+ "font-weight"
79
+ ], mt = { key: 0 }, ht = [
80
+ "text-anchor",
81
+ "font-size",
82
+ "fill",
83
+ "transform"
84
+ ], gt = [
85
+ "text-anchor",
86
+ "font-size",
87
+ "fill",
88
+ "transform",
89
+ "innerHTML"
90
+ ], _t = [
91
+ "x1",
92
+ "y1",
93
+ "x2",
94
+ "y2",
95
+ "stroke",
96
+ "stroke-width"
97
+ ], vt = { key: 1 }, yt = [
98
+ "cx",
99
+ "cy",
100
+ "r",
101
+ "fill"
102
+ ], bt = { key: 0 }, xt = { key: 0 }, St = ["d", "stroke"], Ct = [
103
+ "text-anchor",
104
+ "x",
105
+ "y",
106
+ "fill"
107
+ ], wt = [
108
+ "cx",
109
+ "cy",
110
+ "r",
111
+ "fill"
112
+ ], Tt = { key: 0 }, Et = [
113
+ "cx",
114
+ "cy",
115
+ "fill"
116
+ ], Dt = { key: 1 }, Ot = [
117
+ "d",
118
+ "fill",
119
+ "stroke"
120
+ ], kt = { key: 2 }, At = [
121
+ "d",
122
+ "fill",
123
+ "stroke"
124
+ ], jt = [
125
+ "x",
126
+ "y",
127
+ "font-size",
128
+ "fill"
129
+ ], Mt = [
130
+ "x",
131
+ "y",
132
+ "width",
133
+ "height",
134
+ "fill"
135
+ ], Nt = [
136
+ "x",
137
+ "y",
138
+ "width",
139
+ "height",
140
+ "onMouseenter",
141
+ "onMouseleave",
142
+ "onClick"
143
+ ], Pt = {
144
+ key: 0,
145
+ style: {
146
+ position: "absolute",
147
+ top: "100%",
148
+ left: "0",
149
+ width: "100%"
150
+ },
151
+ "data-dom-to-png-ignore": "",
152
+ "aria-hidden": "true"
153
+ }, Ft = {
154
+ key: 5,
155
+ class: "vue-data-ui-watermark"
156
+ }, It = ["id"], Lt = ["onClick"], Rt = { key: 0 }, zt = { key: 1 }, Bt = /*#__PURE__*/ Oe({
157
+ __name: "vue-ui-donut-evolution",
158
+ props: {
159
+ config: {
160
+ type: Object,
161
+ default() {
162
+ return {};
163
+ }
164
+ },
165
+ dataset: {
166
+ type: Array,
167
+ default() {
168
+ return [];
169
+ }
170
+ }
171
+ },
172
+ emits: ["selectLegend", "copyAlt"],
173
+ setup(e, { expose: Oe, emit: Qe }) {
174
+ let Bt = g(() => import("./vue-ui-accordion-CjAGqEJg.js").then((e) => e.n)), Vt = g(() => import("./BaseIcon-UdRAvP2h.js").then((e) => e.n)), Ht = g(() => import("./DataTable-BxpTMgfK.js")), Ut = g(() => import("./PackageVersion-D__dRVRA.js").then((e) => e.t)), Wt = g(() => import("./PenAndPaper-DsXi7GJ-.js").then((e) => e.t)), Gt = g(() => import("./UserOptions-trvJ26nz.js").then((e) => e.n)), Kt = g(() => import("./vue-ui-donut-BoZdciGh.js").then((e) => e.n)), qt = g(() => import("./BaseDraggableDialog-Av7Uxq5V.js").then((e) => e.n)), { vue_ui_donut_evolution: Jt } = ve(), { isThemeValid: Yt, warnInvalidTheme: Xt } = we(), O = e, k = S(r()), A = S([]), j = S(null), M = S(null), Zt = S(!1), N = S(null), P = S(null), Qt = S(null), $t = S(0), en = S(0), tn = S(0), nn = S(0), rn = S(0), an = S(null), on = S(null), sn = S(null), cn = S(null), ln = S(!1), un = S(null), dn = S(null), fn = S(!1), pn = S(!1), mn = S(null), hn = S(null), gn = S(null), _n = S(null), vn = S(null), yn = S(!1), bn = Je(null), xn = Je(null), Sn = S(null), F = S(null), Cn = S(!1), wn = Qe, Tn = d(() => !!O.dataset && O.dataset.length);
175
+ Ke(() => {
176
+ ln.value = !0, Dn();
177
+ });
178
+ let En = d(() => !!I.value.debug);
179
+ function Dn() {
180
+ if (pe(O.dataset) ? (t({
181
+ componentName: "VueUiDonutEvolution",
182
+ type: "dataset",
183
+ debug: En.value
184
+ }), jn.value = !0) : O.dataset.length && O.dataset.forEach((e, n) => {
185
+ ue({
186
+ datasetObject: e,
187
+ requiredAttributes: ["name", "values"]
188
+ }).forEach((e) => {
189
+ t({
190
+ componentName: "VueUiDonutEvolution",
191
+ type: "datasetSerieAttribute",
192
+ property: e,
193
+ index: n,
194
+ debug: En.value
195
+ }), jn.value = !0;
196
+ });
197
+ }), pe(O.dataset) || (jn.value = I.value.loading), setTimeout(() => {
198
+ yn.value = !0;
199
+ }, 10), Pn(), I.value.responsive) {
200
+ let e = ke(() => {
201
+ yn.value = !1;
202
+ let { width: e, height: t } = Ae({
203
+ chart: P.value,
204
+ title: I.value.style.chart.title.text ? mn.value : null,
205
+ legend: I.value.style.chart.legend.show ? hn.value : null,
206
+ slicer: I.value.style.chart.zoom.show && Mn.value > 1 ? vn.value : null,
207
+ source: gn.value
208
+ });
209
+ requestAnimationFrame(() => {
210
+ R.value.width = e, R.value.height = t - 12, clearTimeout(Sn.value), Sn.value = setTimeout(() => {
211
+ yn.value = !0;
212
+ }, 10);
213
+ });
214
+ });
215
+ bn.value && (xn.value && bn.value.unobserve(xn.value), bn.value.disconnect()), bn.value = new ResizeObserver(e), xn.value = P.value.parentNode, bn.value.observe(xn.value);
216
+ }
217
+ }
218
+ let I = S(Bn()), L = d(() => I.value.userOptions.useCursorPointer), On = d(() => o({
219
+ defaultConfig: {
220
+ useCssAnimation: !1,
221
+ table: { show: !1 },
222
+ userOptions: { show: !1 },
223
+ style: { chart: {
224
+ backgroundColor: "#99999930",
225
+ layout: {
226
+ dataLabels: { show: !1 },
227
+ grid: {
228
+ stroke: "#6A6A6A",
229
+ axis: {
230
+ yLabel: "",
231
+ xLabel: ""
232
+ },
233
+ yAxis: {
234
+ scaleMin: null,
235
+ scaleMax: null,
236
+ autoScale: !1,
237
+ dataLabels: { show: !1 }
238
+ },
239
+ xAxis: { dataLabels: { show: !1 } }
240
+ },
241
+ line: { stroke: "#CACACA60" }
242
+ },
243
+ legend: {
244
+ backgroundColor: "transparent",
245
+ showValue: !1,
246
+ showPercentage: !1
247
+ },
248
+ zoom: {
249
+ show: !1,
250
+ startIndex: null,
251
+ endIndex: null
252
+ }
253
+ } }
254
+ },
255
+ userConfig: I.value.skeletonConfig ?? {}
256
+ })), { loading: kn, FINAL_DATASET: An, manualLoading: jn } = be({
257
+ ...Ye(O),
258
+ FINAL_CONFIG: I,
259
+ prepareConfig: Bn,
260
+ callback: () => {
261
+ Promise.resolve().then(async () => {
262
+ await Pn();
263
+ });
264
+ },
265
+ skeletonDataset: O.config?.skeletonDataset ?? [
266
+ {
267
+ name: "",
268
+ values: [
269
+ 1,
270
+ 2,
271
+ 3,
272
+ 5,
273
+ 8,
274
+ 13
275
+ ],
276
+ color: "#AAAAAA"
277
+ },
278
+ {
279
+ name: "",
280
+ values: [
281
+ 1,
282
+ 2,
283
+ 3,
284
+ 5,
285
+ 8,
286
+ 13
287
+ ],
288
+ color: "#BABABA"
289
+ },
290
+ {
291
+ name: "",
292
+ values: [
293
+ 1,
294
+ 2,
295
+ 3,
296
+ 5,
297
+ 8,
298
+ 13
299
+ ],
300
+ color: "#CACACA"
301
+ }
302
+ ],
303
+ skeletonConfig: o({
304
+ defaultConfig: I.value,
305
+ userConfig: On.value
306
+ })
307
+ }), R = S({
308
+ width: I.value.style.chart.layout.width,
309
+ height: I.value.style.chart.layout.height
310
+ }), Mn = d(() => Math.max(...An.value.map((e) => e.values.length))), z = S({
311
+ start: 0,
312
+ end: Mn.value
313
+ });
314
+ function Nn() {
315
+ Pn();
316
+ }
317
+ async function Pn() {
318
+ await We(), await We();
319
+ let { startIndex: e, endIndex: t } = I.value.style.chart.zoom, n = _n.value;
320
+ z.value = {
321
+ start: 0,
322
+ max: G.value
323
+ }, (e != null || t != null) && n ? (e == null ? (z.value.start = 0, n.setStartValue(0)) : n.setStartValue(e), t == null ? (z.value.end = G.value, n.setEndValue(G.value)) : n.setEndValue(Fn(t + 1))) : (z.value = {
324
+ start: 0,
325
+ end: G.value
326
+ }, en.value += 1);
327
+ }
328
+ function Fn(e) {
329
+ let t = G.value;
330
+ return e > t ? t : e < 0 || I.value.style.chart.zoom.startIndex !== null && e < I.value.style.chart.zoom.startIndex ? I.value.style.chart.zoom.startIndex === null ? 1 : I.value.style.chart.zoom.startIndex + 1 : e;
331
+ }
332
+ let { userOptionsVisible: In, setUserOptionsVisibility: Ln, keepUserOptionState: Rn } = Pe({ config: I.value }), { svgRef: zn } = Fe({ config: I.value.style.chart.title });
333
+ function Bn() {
334
+ let e = Ce({
335
+ userConfig: O.config,
336
+ defaultConfig: Jt
337
+ }), t = {}, n = e.theme;
338
+ if (n) if (!Yt.value(e)) Xt(e), t = e;
339
+ else {
340
+ let r = Ce({
341
+ userConfig: Le[n] || O.config,
342
+ defaultConfig: e
343
+ });
344
+ t = {
345
+ ...Ce({
346
+ userConfig: O.config,
347
+ defaultConfig: r
348
+ }),
349
+ customPalette: e.customPalette ? e.customPalette : ie[n] || s
350
+ };
351
+ }
352
+ else t = e;
353
+ return t;
354
+ }
355
+ Xe(() => O.config, (e) => {
356
+ kn.value || (I.value = Bn()), In.value = !I.value.userOptions.showOnChartHover, Dn(), tn.value += 1, nn.value += 1, rn.value += 1, B.value.showTable = I.value.table.show;
357
+ }, { deep: !0 }), Xe(() => O.dataset, (e) => {
358
+ Array.isArray(e) && e.length > 0 && (jn.value = !1), Nn();
359
+ }, { deep: !0 });
360
+ let { isPrinting: Vn, isImaging: Hn, generatePdf: Un, generateImage: Wn } = ye({
361
+ elementId: k.value,
362
+ fileName: I.value.style.chart.title.text || "vue-ui-donut-evolution",
363
+ options: I.value.userOptions.print
364
+ }), Gn = d(() => I.value.userOptions.show && !I.value.style.chart.title.text), Kn = d(() => l(I.value.customPalette)), B = S({ showTable: I.value.table.show });
365
+ Xe(I, () => {
366
+ B.value = { showTable: I.value.table.show };
367
+ }, { immediate: !0 });
368
+ let V = d(() => ({
369
+ top: I.value.style.chart.layout.padding.top,
370
+ right: I.value.style.chart.layout.padding.right,
371
+ bottom: I.value.style.chart.layout.padding.bottom,
372
+ left: I.value.style.chart.layout.padding.left
373
+ })), H = d(() => I.value.style.chart.layout.grid.yAxis.position === "right");
374
+ function qn() {
375
+ let e = 0;
376
+ an.value && (e = Array.from(an.value.querySelectorAll("text")).reduce((e, t) => {
377
+ let n = t.getComputedTextLength();
378
+ return n > e ? n : e;
379
+ }, 0));
380
+ let t = cn.value ? cn.value.getBoundingClientRect().width + I.value.style.chart.layout.grid.axis.yLabelOffsetX + I.value.style.chart.layout.grid.axis.fontSize : 0, n = e + t + 5;
381
+ return {
382
+ left: H.value ? 0 : n,
383
+ right: H.value ? n : 0,
384
+ scaleLabelsWidth: e,
385
+ yAxisLabelWidth: t,
386
+ crosshair: 5
387
+ };
388
+ }
389
+ let Jn = S(0), Yn = ke((e) => {
390
+ Jn.value = e;
391
+ }, 100);
392
+ Ze((e) => {
393
+ let t = on.value;
394
+ if (!t) return;
395
+ let n = new ResizeObserver((e) => {
396
+ Yn(e[0].contentRect.height);
397
+ });
398
+ n.observe(t), e(() => n.disconnect());
399
+ }), Ge(() => {
400
+ Jn.value = 0;
401
+ });
402
+ let Xn = d(() => {
403
+ let e = 0;
404
+ sn.value && (e = sn.value.getBBox().height);
405
+ let t = 0;
406
+ return on.value && (t = Jn.value), e + t + I.value.style.chart.layout.grid.axis.fontSize + I.value.style.chart.layout.grid.xAxis.dataLabels.offsetY;
407
+ }), U = d(() => {
408
+ let e = qn(), t = I.value.style.chart.layout.dataLabels.fontSize * 3, n = R.value.width, r = R.value.height, i = V.value.left + e.left, a = n - V.value.right - e.right, o = n - i - V.value.right - e.right, s = r - V.value.top - V.value.bottom - t - Xn.value, c = V.value.top + t;
409
+ return {
410
+ top: c,
411
+ left: i,
412
+ right: a,
413
+ bottom: r - V.value.bottom - Xn.value,
414
+ absoluteHeight: r,
415
+ absoluteWidth: n,
416
+ centerX: i + Math.max(10, o) / 2,
417
+ centerY: c + Math.max(10, s) / 2,
418
+ width: Math.max(10, o),
419
+ height: Math.max(10, s),
420
+ scaleLabelsWidth: e.scaleLabelsWidth,
421
+ yAxisLabelWidth: e.yAxisLabelWidth,
422
+ crosshair: e.crosshair
423
+ };
424
+ }), W = d(() => (An.value.forEach((e, n) => {
425
+ [null, void 0].includes(e.name) && t({
426
+ componentName: "VueUiDonutEvolution",
427
+ type: "datasetSerieAttribute",
428
+ property: "name",
429
+ index: n,
430
+ debug: En.value
431
+ }), [null, void 0].includes(e.values) && t({
432
+ componentName: "VueUiDonutEvolution",
433
+ type: "datasetSerieAttribute",
434
+ property: "values",
435
+ index: n,
436
+ debug: En.value
437
+ });
438
+ }), An.value.map((e, t) => ({
439
+ ...e,
440
+ values: i(e.values),
441
+ color: ce(e.color) || Kn.value[t] || s[t] || s[t % s.length],
442
+ length: (e.values || []).length,
443
+ uid: r()
444
+ })))), Zn = d(() => W.value.filter((e) => !A.value.includes(e.uid)).map((e) => ({
445
+ ...e,
446
+ values: e.values.filter((e, t) => t >= z.value.start && t <= z.value.end)
447
+ }))), G = d(() => Math.max(...W.value.map((e) => e.length))), K = S([]), Qn = 0;
448
+ Ze(() => {
449
+ let e = ++Qn;
450
+ (async () => {
451
+ let t = await _e({
452
+ values: I.value.style.chart.layout.grid.xAxis.dataLabels.values,
453
+ maxDatapoints: G.value,
454
+ formatter: I.value.style.chart.layout.grid.xAxis.dataLabels.datetimeFormatter,
455
+ start: z.value.start,
456
+ end: z.value.end
457
+ });
458
+ e === Qn && (K.value = t);
459
+ })();
460
+ });
461
+ let q = d(() => U.value.width / (z.value.end - z.value.start)), $n = d(() => {
462
+ let e = [];
463
+ for (let t = 0; t < z.value.end - z.value.start; t += 1) {
464
+ let n = Zn.value.map((e) => e.values[t] ?? null), r = n.filter((e) => [void 0, null].includes(e)).length === n.length, i = n.reduce((e, t) => e + t, 0), a = n.map((e) => e / i), o = U.value.left + q.value * t + q.value / 2;
465
+ e.push({
466
+ index: t,
467
+ percentages: a,
468
+ subtotal: r || i < 0 ? null : i,
469
+ values: n,
470
+ x: o
471
+ });
472
+ }
473
+ return e;
474
+ }), er = d(() => {
475
+ let e = Math.max(...$n.value.map((e) => e.subtotal).filter((e) => ee(e))) ?? 1, t = Math.min(...$n.value.map((e) => e.subtotal).filter((e) => ee(e))) ?? 0, n = Math.max(I.value.style.chart.layout.grid.yAxis.scaleMax ?? 0, e), r;
476
+ return r = I.value.style.chart.layout.grid.yAxis.scaleMin == null ? 0 : Math.min(t, I.value.style.chart.layout.grid.yAxis.scaleMin), I.value.style.chart.layout.grid.yAxis.autoScale && (r = t, n = e), r === n && (r = n / 2, n *= 1.5), {
477
+ max: n,
478
+ min: r
479
+ };
480
+ }), J = d(() => {
481
+ let e = $n.value.length === 1 ? er.value.max * 2 : er.value.max;
482
+ return de(er.value.min, e, I.value.style.chart.layout.grid.yAxis.dataLabels.steps);
483
+ });
484
+ function tr(e) {
485
+ return (e - J.value.min) / (J.value.max - J.value.min);
486
+ }
487
+ let nr = d(() => J.value.ticks.map((e) => ({
488
+ y: U.value.bottom - U.value.height * tr(e),
489
+ value: e
490
+ }))), Y = d(() => {
491
+ let e = $n.value, t = Math.max(...e.map((e) => e.subtotal));
492
+ return e.length === 1 && t * 2, e.map((t, r) => {
493
+ let i = Math.min(U.value.width / 24, q.value / 2 * .7), a = i > U.value.width / 16 ? U.value.width / 16 : i, o = j.value === t.index ? U.value.width / 16 : a, s = e.length > 4 ? i * 2 : i * 2 > q.value / 2 * .7 ? q.value / 2 * .7 : i * 2, c = U.value.bottom - U.value.height * tr(t.subtotal), l = Zn.value.map((e) => ({
494
+ color: e.color,
495
+ name: e.name,
496
+ value: e.values[r] ?? 0
497
+ })).toSorted((e, t) => t.value - e.value);
498
+ return {
499
+ ...t,
500
+ y: c,
501
+ radius: a,
502
+ activeRadius: o,
503
+ hoverRadius: s,
504
+ donut: n({ series: l }, t.x, c, a, a, 1.99999, 2, 1, 360, 105.25, a / 2),
505
+ donutHover: n({ series: l }, t.x, c, s, s, 1.99999, 2, 1, 360, 105.25, s / 2),
506
+ donutFocus: n({ series: l }, U.value.centerX, U.value.centerY, U.value.height / 3.6, U.value.height / 3.6, 1.99999, 2, 1, 360, 105.25, U.value.height / 6)
507
+ };
508
+ });
509
+ });
510
+ function rr(e, t, n) {
511
+ return fe(I.value.style.chart.layout.dataLabels.formatter, e, a({
512
+ p: I.value.style.chart.layout.dataLabels.prefix,
513
+ v: e,
514
+ s: I.value.style.chart.layout.dataLabels.suffix,
515
+ r: I.value.style.chart.layout.dataLabels.rounding
516
+ }), {
517
+ datapoint: t,
518
+ index: n
519
+ });
520
+ }
521
+ function ir(e, t) {
522
+ return isNaN(e.value / re(t, "value")) ? 0 : (e.value / re(t, "value") * 100).toFixed(0) + "%";
523
+ }
524
+ function ar(e) {
525
+ j.value = null, M.value = null, F.value = null, I.value.events.datapointLeave && I.value.events.datapointLeave({
526
+ datapoint: e,
527
+ seriesIndex: e.seriesIndex + z.value.start
528
+ });
529
+ }
530
+ function or(e) {
531
+ I.value.events.datapointEnter && I.value.events.datapointEnter({
532
+ datapoint: e,
533
+ seriesIndex: e.index + z.value.start
534
+ }), j.value = e.index, M.value = e, F.value = e.index;
535
+ }
536
+ let sr = S(null);
537
+ function cr(e, t) {
538
+ I.value.events.datapointClick && I.value.events.datapointClick({
539
+ datapoint: e,
540
+ seriesIndex: e.index + z.value.start
541
+ }), !(!e.subtotal || !I.value.style.chart.dialog.show) && (M.value = null, j.value = null, Zt.value = !0, N.value = e, Er(e), [null, void 0].includes(t) || (sr.value = t));
542
+ }
543
+ let lr = d(() => W.value.map((e, t) => ({
544
+ name: e.name,
545
+ value: e.values.slice(z.value.start, z.value.end).reduce((e, t) => e + t, 0),
546
+ shape: "circle",
547
+ uid: e.uid,
548
+ color: e.color
549
+ })).sort((e, t) => t.value - e.value).map((e, t) => ({
550
+ ...e,
551
+ opacity: A.value.includes(e.uid) ? .5 : 1,
552
+ segregate: () => pr(e.uid),
553
+ isSegregated: A.value.includes(e.uid),
554
+ display: `${e.name}${I.value.style.chart.legend.showPercentage || I.value.style.chart.legend.showValue ? ": " : ""}${I.value.style.chart.legend.showValue ? fe(I.value.style.chart.layout.dataLabels.formatter, e.value, a({
555
+ p: I.value.style.chart.layout.dataLabels.prefix,
556
+ v: e.value,
557
+ s: I.value.style.chart.layout.dataLabels.suffix,
558
+ r: I.value.style.chart.legend.roundingValue
559
+ }), {
560
+ datapoint: e,
561
+ seriesIndex: t
562
+ }) : ""}${I.value.style.chart.legend.showPercentage ? A.value.includes(e.uid) ? `${I.value.style.chart.legend.showValue ? " (" : ""}- %${I.value.style.chart.legend.showValue ? ")" : ""}` : `${I.value.style.chart.legend.showValue ? " (" : ""}${isNaN(e.value / ur.value) ? "-" : a({
563
+ v: e.value / ur.value * 100,
564
+ s: "%",
565
+ r: I.value.style.chart.legend.roundingPercentage
566
+ })}${I.value.style.chart.legend.showValue ? ")" : ""}` : ""}`
567
+ }))), ur = d(() => Y.value.map((e) => e.subtotal).reduce((e, t) => e + t, 0)), dr = d(() => ({
568
+ cy: "donut-div-legend",
569
+ backgroundColor: I.value.style.chart.legend.backgroundColor,
570
+ color: I.value.style.chart.legend.color,
571
+ fontSize: I.value.style.chart.legend.fontSize,
572
+ paddingBottom: 12,
573
+ fontWeight: I.value.style.chart.legend.bold ? "bold" : ""
574
+ }));
575
+ function fr() {
576
+ A.value.length ? A.value = [] : lr.value.forEach((e) => {
577
+ A.value.push(e.uid);
578
+ }), wn("selectLegend", Zn.value);
579
+ }
580
+ function pr(e) {
581
+ if (A.value.includes(e)) A.value = A.value.filter((t) => t !== e), wn("selectLegend", Zn.value);
582
+ else {
583
+ if (A.value.length === W.value.length - 1) return;
584
+ A.value.push(e), wn("selectLegend", Zn.value);
585
+ }
586
+ N.value && cr(Y.value.find((e, t) => t === sr.value));
587
+ }
588
+ function mr(e) {
589
+ return W.value.length ? W.value.find((t) => t.name === e) || (I.value.debug && console.warn(`VueUiDonutEvolution - Series name not found "${e}"`), null) : (I.value.debug && console.warn("VueUiDonutEvolution - There are no series to show."), null);
590
+ }
591
+ function hr(e) {
592
+ let t = mr(e);
593
+ t !== null && A.value.includes(t.uid) && pr(t.uid);
594
+ }
595
+ function gr(e) {
596
+ let t = mr(e);
597
+ t !== null && (A.value.includes(t.uid) || pr(t.uid));
598
+ }
599
+ let X = d(() => {
600
+ let e = [""].concat(W.value.filter((e) => !A.value.includes(e.uid)).map((e) => ({
601
+ name: e.name,
602
+ color: e.color
603
+ })), ["Σ"]), t = [];
604
+ for (let e = 0; e < G.value; e += 1) {
605
+ let n = W.value.filter((e) => !A.value.includes(e.uid)).map((t) => t.values[e] ?? 0).reduce((e, t) => e + t, 0);
606
+ t.push([K.value[e] ? K.value[e].text : "-"].concat(W.value.filter((e) => !A.value.includes(e.uid)).map((t) => ({
607
+ value: t.values[e] ?? 0,
608
+ percentage: t.values[e] ? t.values[e] / n * 100 : 0
609
+ })), [`${I.value.style.chart.layout.dataLabels.prefix}${Number(n.toFixed(I.value.table.td.roundingValue))}${I.value.style.chart.layout.dataLabels.suffix}`]));
610
+ }
611
+ return {
612
+ head: e,
613
+ body: t,
614
+ bodyA11y: t.map((e) => e.map((t, n) => n === 0 || n === e.length - 1 ? t : `${rr(t.value ?? 0, null, n)} (${t.percentage.toFixed(1)}%)`)),
615
+ config: {
616
+ th: {
617
+ backgroundColor: I.value.table.th.backgroundColor,
618
+ color: I.value.table.th.color,
619
+ outline: I.value.table.th.outline
620
+ },
621
+ td: {
622
+ backgroundColor: I.value.table.td.backgroundColor,
623
+ color: I.value.table.td.color,
624
+ outline: I.value.table.td.outline
625
+ },
626
+ breakpoint: I.value.table.responsiveBreakpoint
627
+ },
628
+ colNames: [I.value.table.columnNames.period].concat(W.value.filter((e) => !A.value.includes(e.uid)).map((e) => e.name), I.value.table.columnNames.total)
629
+ };
630
+ });
631
+ function _r() {
632
+ return W.value;
633
+ }
634
+ function vr(e = null) {
635
+ We(() => {
636
+ let t = [
637
+ [I.value.style.chart.title.text],
638
+ [I.value.style.chart.title.subtitle.text],
639
+ [""]
640
+ ], n = [...X.value.head.map((e) => e.name ?? e)], r = [...X.value.body.map((e) => e.map((e) => e.value ?? e))], i = te(t.concat([n]).concat(r));
641
+ e ? e(i) : oe({
642
+ csvContent: i,
643
+ title: I.value.style.chart.title.text || "vue-ui-donut-evolution"
644
+ });
645
+ });
646
+ }
647
+ let Z = S(!1);
648
+ function yr(e) {
649
+ Z.value = e, $t.value += 1;
650
+ }
651
+ function br() {
652
+ B.value.showTable = !B.value.showTable;
653
+ }
654
+ let Q = S(!1);
655
+ function xr() {
656
+ Q.value = !Q.value;
657
+ }
658
+ function Sr(e) {
659
+ return e.proportion * 100 > I.value.style.chart.donuts.hover.hideLabelsUnderValue;
660
+ }
661
+ let Cr = S([]), wr = S({}), Tr = S(null);
662
+ function Er(e) {
663
+ Cr.value = e.donut.map((e) => ({
664
+ name: e.name,
665
+ values: [e.value],
666
+ color: e.color
667
+ })), wr.value = ae({
668
+ ...I.value.style.chart.dialog.donutChart,
669
+ responsive: !0,
670
+ theme: I.value.theme
671
+ }), Tr.value && Tr.value.open();
672
+ }
673
+ async function Dr({ scale: e = 2 } = {}) {
674
+ if (!P.value) return;
675
+ let { width: t, height: n } = P.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await Ee({
676
+ domElement: P.value,
677
+ base64: !0,
678
+ img: !0,
679
+ scale: e
680
+ });
681
+ return {
682
+ imageUri: i,
683
+ base64: a,
684
+ title: I.value.style.chart.title.text,
685
+ width: t,
686
+ height: n,
687
+ aspectRatio: r
688
+ };
689
+ }
690
+ Te({
691
+ timeLabelsEls: on,
692
+ timeLabels: K,
693
+ slicer: z,
694
+ configRef: I,
695
+ rotationPath: [
696
+ "style",
697
+ "chart",
698
+ "layout",
699
+ "grid",
700
+ "xAxis",
701
+ "dataLabels",
702
+ "rotation"
703
+ ],
704
+ autoRotatePath: [
705
+ "style",
706
+ "chart",
707
+ "layout",
708
+ "grid",
709
+ "xAxis",
710
+ "dataLabels",
711
+ "autoRotate",
712
+ "enable"
713
+ ],
714
+ isAutoSize: !1,
715
+ width: d(() => R.value.width),
716
+ height: d(() => R.value.height),
717
+ rotation: I.value.style.chart.layout.grid.xAxis.dataLabels.autoRotate.angle
718
+ });
719
+ let $ = d(() => {
720
+ let e = I.value.table.useDialog && !I.value.table.show, t = B.value.showTable;
721
+ return {
722
+ component: e ? qt : Bt,
723
+ title: `${I.value.style.chart.title.text}${I.value.style.chart.title.subtitle.text ? `: ${I.value.style.chart.title.subtitle.text}` : ""}`,
724
+ props: e ? {
725
+ backgroundColor: I.value.table.th.backgroundColor,
726
+ color: I.value.table.th.color,
727
+ headerColor: I.value.table.th.color,
728
+ headerBg: I.value.table.th.backgroundColor,
729
+ isFullscreen: Z.value,
730
+ fullscreenParent: P.value,
731
+ forcedWidth: Math.min(800, window.innerWidth * .8),
732
+ isCursorPointer: L.value
733
+ } : {
734
+ hideDetails: !0,
735
+ config: {
736
+ open: t,
737
+ maxHeight: 1e4,
738
+ body: {
739
+ backgroundColor: I.value.style.chart.backgroundColor,
740
+ color: I.value.style.chart.color
741
+ },
742
+ head: {
743
+ backgroundColor: I.value.style.chart.backgroundColor,
744
+ color: I.value.style.chart.color
745
+ }
746
+ }
747
+ }
748
+ };
749
+ });
750
+ Xe(() => B.value.showTable, (e) => {
751
+ I.value.table.show || (e && I.value.table.useDialog && un.value ? un.value.open() : "close" in un.value && un.value.close());
752
+ });
753
+ function Or() {
754
+ B.value.showTable = !1, dn.value && dn.value.setTableIconState(!1);
755
+ }
756
+ let kr = d(() => lr.value.map((e) => ({
757
+ ...e,
758
+ name: e.display
759
+ }))), Ar = d(() => I.value.style.chart.backgroundColor), jr = d(() => I.value.style.chart.legend), { exportSvg: Mr, getSvg: Nr } = Se({
760
+ svg: zn,
761
+ title: d(() => I.value.style.chart.title),
762
+ legend: jr,
763
+ legendItems: kr,
764
+ backgroundColor: Ar
765
+ });
766
+ async function Pr({ isCb: e }) {
767
+ pn.value = !0, await We();
768
+ try {
769
+ if (e) {
770
+ let { blob: e, url: t, text: n, dataUrl: r } = await Nr();
771
+ await Promise.resolve(I.value.userOptions.callbacks.svg({
772
+ blob: e,
773
+ url: t,
774
+ text: n,
775
+ dataUrl: r
776
+ }));
777
+ } else await Promise.resolve(Mr());
778
+ } finally {
779
+ pn.value = !1;
780
+ }
781
+ }
782
+ function Fr(e) {
783
+ if (e?.stage === "start") {
784
+ fn.value = !0;
785
+ return;
786
+ }
787
+ if (e?.stage === "end") {
788
+ fn.value = !1;
789
+ return;
790
+ }
791
+ Wn();
792
+ }
793
+ async function Ir() {
794
+ if (wn("copyAlt", {
795
+ config: I.value,
796
+ dataset: Y.value
797
+ }), !I.value.userOptions.callbacks.altCopy) {
798
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
799
+ return;
800
+ }
801
+ await Promise.resolve(I.value.userOptions.callbacks.altCopy({
802
+ config: I.value,
803
+ dataset: Y.value
804
+ }));
805
+ }
806
+ function Lr() {
807
+ F.value = null, Cn.value = !0;
808
+ }
809
+ function Rr() {
810
+ F.value = null, j.value = null, M.value = null, Cn.value = !1;
811
+ }
812
+ function zr(e) {
813
+ if (!zn.value || Q.value || document.activeElement !== zn.value || !Y.value.length) return;
814
+ let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
815
+ if (!t && !n && !r && !i) return;
816
+ if (e.preventDefault(), e.stopPropagation(), i) {
817
+ F.value = null, j.value = null, M.value = null;
818
+ return;
819
+ }
820
+ if (r) {
821
+ if (F.value === null) return;
822
+ let e = Y.value[F.value];
823
+ if (!e) return;
824
+ cr(e, F.value);
825
+ return;
826
+ }
827
+ let a = F.value, o = j.value, s = a !== null && a >= 0 && a < Y.value.length, c = o !== null && o >= 0 && o < Y.value.length;
828
+ s ? n ? (a += 1, a >= Y.value.length && (a = 0)) : t && (--a, a < 0 && (a = Y.value.length - 1)) : c ? (a = n ? o + 1 : o - 1, a >= Y.value.length && (a = 0), a < 0 && (a = Y.value.length - 1)) : a = n ? 0 : Y.value.length - 1;
829
+ let l = Y.value[a];
830
+ l && or(l);
831
+ }
832
+ let Br = d(() => ({
833
+ headers: X.value?.colNames ?? [],
834
+ rows: X.value?.bodyA11y ?? []
835
+ }));
836
+ return Oe({
837
+ getData: _r,
838
+ getImage: Dr,
839
+ generatePdf: Un,
840
+ generateCsv: vr,
841
+ generateImage: Wn,
842
+ generateSvg: Pr,
843
+ hideSeries: gr,
844
+ showSeries: hr,
845
+ toggleTable: br,
846
+ toggleAnnotator: xr,
847
+ toggleFullscreen: yr,
848
+ copyAlt: Ir
849
+ }), (e, t) => (x(), m("div", {
850
+ ref_key: "donutEvolutionChart",
851
+ ref: P,
852
+ class: v(`vue-data-ui-component vue-ui-donut-evolution ${Z.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${I.value.useCssAnimation ? "" : "vue-ui-dna"}`),
853
+ style: b(`font-family:${I.value.style.fontFamily};width:100%; text-align:center;background:${I.value.style.chart.backgroundColor}`),
854
+ id: k.value,
855
+ onMouseenter: t[5] ||= () => E(Ln)(!0),
856
+ onMouseleave: t[6] ||= () => E(Ln)(!1)
857
+ }, [
858
+ h("div", {
859
+ id: `chart-instructions-${k.value}`,
860
+ class: "sr-only"
861
+ }, [h("p", null, T(I.value.a11y.translations.keyboardNavigation), 1)], 8, et),
862
+ Br.value?.rows?.length ? (x(), f(Ne, {
863
+ key: 0,
864
+ uid: k.value,
865
+ head: Br.value.headers,
866
+ body: Br.value.rows,
867
+ notice: I.value.a11y.translations.tableAvailable,
868
+ caption: I.value.a11y.translations.tableCaption
869
+ }, null, 8, [
870
+ "uid",
871
+ "head",
872
+ "body",
873
+ "notice",
874
+ "caption"
875
+ ])) : p("", !0),
876
+ I.value.userOptions.buttons.annotator ? (x(), f(E(Wt), {
877
+ key: 1,
878
+ svgRef: E(zn),
879
+ backgroundColor: I.value.style.chart.backgroundColor,
880
+ color: I.value.style.chart.color,
881
+ active: Q.value,
882
+ isCursorPointer: L.value,
883
+ onClose: xr
884
+ }, {
885
+ "annotator-action-close": D(() => [w(e.$slots, "annotator-action-close", {}, void 0, !0)]),
886
+ "annotator-action-color": D(({ color: t }) => [w(e.$slots, "annotator-action-color", y(_({ color: t })), void 0, !0)]),
887
+ "annotator-action-draw": D(({ mode: t }) => [w(e.$slots, "annotator-action-draw", y(_({ mode: t })), void 0, !0)]),
888
+ "annotator-action-undo": D(({ disabled: t }) => [w(e.$slots, "annotator-action-undo", y(_({ disabled: t })), void 0, !0)]),
889
+ "annotator-action-redo": D(({ disabled: t }) => [w(e.$slots, "annotator-action-redo", y(_({ disabled: t })), void 0, !0)]),
890
+ "annotator-action-delete": D(({ disabled: t }) => [w(e.$slots, "annotator-action-delete", y(_({ disabled: t })), void 0, !0)]),
891
+ _: 3
892
+ }, 8, [
893
+ "svgRef",
894
+ "backgroundColor",
895
+ "color",
896
+ "active",
897
+ "isCursorPointer"
898
+ ])) : p("", !0),
899
+ Gn.value ? (x(), m("div", {
900
+ key: 2,
901
+ ref_key: "noTitle",
902
+ ref: Qt,
903
+ class: "vue-data-ui-no-title-space",
904
+ style: "height:36px; width: 100%;background:transparent"
905
+ }, null, 512)) : p("", !0),
906
+ I.value.style.chart.title.text ? (x(), m("div", {
907
+ key: 3,
908
+ ref_key: "chartTitle",
909
+ ref: mn,
910
+ style: "width:100%;background:transparent;padding-bottom:24px",
911
+ onMouseleave: ar
912
+ }, [(x(), f(De, {
913
+ key: `title_${tn.value}`,
914
+ config: {
915
+ title: {
916
+ cy: "donut-evolution-div-title",
917
+ ...I.value.style.chart.title
918
+ },
919
+ subtitle: {
920
+ cy: "donut-evolution-div-subtitle",
921
+ ...I.value.style.chart.title.subtitle
922
+ }
923
+ }
924
+ }, null, 8, ["config"]))], 544)) : p("", !0),
925
+ h("div", { id: `legend-top-${k.value}` }, null, 8, tt),
926
+ I.value.userOptions.show && Tn.value && (E(Rn) || E(In)) ? (x(), f(E(Gt), {
927
+ ref_key: "userOptionsRef",
928
+ ref: dn,
929
+ key: `user_options_${$t.value}`,
930
+ backgroundColor: I.value.style.chart.backgroundColor,
931
+ color: I.value.style.chart.color,
932
+ isPrinting: E(Vn),
933
+ isImaging: E(Hn),
934
+ uid: k.value,
935
+ hasPdf: I.value.userOptions.buttons.pdf,
936
+ hasImg: I.value.userOptions.buttons.img,
937
+ hasSvg: I.value.userOptions.buttons.svg,
938
+ hasXls: I.value.userOptions.buttons.csv,
939
+ hasTable: I.value.userOptions.buttons.table,
940
+ hasFullscreen: I.value.userOptions.buttons.fullscreen,
941
+ hasAltCopy: I.value.userOptions.buttons.altCopy,
942
+ isFullscreen: Z.value,
943
+ titles: { ...I.value.userOptions.buttonTitles },
944
+ chartElement: P.value,
945
+ position: I.value.userOptions.position,
946
+ hasAnnotator: I.value.userOptions.buttons.annotator,
947
+ isAnnotation: Q.value,
948
+ callbacks: I.value.userOptions.callbacks,
949
+ printScale: I.value.userOptions.print.scale,
950
+ tableDialog: I.value.table.useDialog,
951
+ isCursorPointer: L.value,
952
+ onToggleFullscreen: yr,
953
+ onGeneratePdf: E(Un),
954
+ onGenerateCsv: vr,
955
+ onGenerateImage: Fr,
956
+ onGenerateSvg: Pr,
957
+ onToggleTable: br,
958
+ onToggleAnnotator: xr,
959
+ onCopyAlt: Ir,
960
+ style: b({ visibility: E(Rn) ? E(In) ? "visible" : "hidden" : "visible" })
961
+ }, Be({ _: 2 }, [
962
+ e.$slots.menuIcon ? {
963
+ name: "menuIcon",
964
+ fn: D(({ isOpen: t, color: n }) => [w(e.$slots, "menuIcon", y(_({
965
+ isOpen: t,
966
+ color: n
967
+ })), void 0, !0)]),
968
+ key: "0"
969
+ } : void 0,
970
+ e.$slots.optionPdf ? {
971
+ name: "optionPdf",
972
+ fn: D(() => [w(e.$slots, "optionPdf", {}, void 0, !0)]),
973
+ key: "1"
974
+ } : void 0,
975
+ e.$slots.optionCsv ? {
976
+ name: "optionCsv",
977
+ fn: D(() => [w(e.$slots, "optionCsv", {}, void 0, !0)]),
978
+ key: "2"
979
+ } : void 0,
980
+ e.$slots.optionImg ? {
981
+ name: "optionImg",
982
+ fn: D(() => [w(e.$slots, "optionImg", {}, void 0, !0)]),
983
+ key: "3"
984
+ } : void 0,
985
+ e.$slots.optionSvg ? {
986
+ name: "optionSvg",
987
+ fn: D(() => [w(e.$slots, "optionSvg", {}, void 0, !0)]),
988
+ key: "4"
989
+ } : void 0,
990
+ e.$slots.optionTable ? {
991
+ name: "optionTable",
992
+ fn: D(() => [w(e.$slots, "optionTable", {}, void 0, !0)]),
993
+ key: "5"
994
+ } : void 0,
995
+ e.$slots.optionFullscreen ? {
996
+ name: "optionFullscreen",
997
+ fn: D(({ toggleFullscreen: t, isFullscreen: n }) => [w(e.$slots, "optionFullscreen", y(_({
998
+ toggleFullscreen: t,
999
+ isFullscreen: n
1000
+ })), void 0, !0)]),
1001
+ key: "6"
1002
+ } : void 0,
1003
+ e.$slots.optionAnnotator ? {
1004
+ name: "optionAnnotator",
1005
+ fn: D(({ toggleAnnotator: t, isAnnotator: n }) => [w(e.$slots, "optionAnnotator", y(_({
1006
+ toggleAnnotator: t,
1007
+ isAnnotator: n
1008
+ })), void 0, !0)]),
1009
+ key: "7"
1010
+ } : void 0,
1011
+ e.$slots.optionAltCopy ? {
1012
+ name: "optionAltCopy",
1013
+ fn: D(({ altCopy: t }) => [w(e.$slots, "optionAltCopy", y(_({ altCopy: t })), void 0, !0)]),
1014
+ key: "8"
1015
+ } : void 0,
1016
+ e.$slots["custom-menu-before"] ? {
1017
+ name: "custom-menu-before",
1018
+ fn: D(() => [w(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1019
+ key: "9"
1020
+ } : void 0,
1021
+ e.$slots["custom-menu-after"] ? {
1022
+ name: "custom-menu-after",
1023
+ fn: D(() => [w(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1024
+ key: "10"
1025
+ } : void 0
1026
+ ]), 1032, [
1027
+ "backgroundColor",
1028
+ "color",
1029
+ "isPrinting",
1030
+ "isImaging",
1031
+ "uid",
1032
+ "hasPdf",
1033
+ "hasImg",
1034
+ "hasSvg",
1035
+ "hasXls",
1036
+ "hasTable",
1037
+ "hasFullscreen",
1038
+ "hasAltCopy",
1039
+ "isFullscreen",
1040
+ "titles",
1041
+ "chartElement",
1042
+ "position",
1043
+ "hasAnnotator",
1044
+ "isAnnotation",
1045
+ "callbacks",
1046
+ "printScale",
1047
+ "tableDialog",
1048
+ "isCursorPointer",
1049
+ "onGeneratePdf",
1050
+ "style"
1051
+ ])) : p("", !0),
1052
+ h("div", nt, [(x(), m("svg", {
1053
+ ref_key: "svgRef",
1054
+ ref: zn,
1055
+ xmlns: E(he),
1056
+ "aria-describedby": `chart-instructions-${k.value}`,
1057
+ class: v({
1058
+ "vue-data-ui-fullscreen--on": Z.value,
1059
+ "vue-data-ui-fulscreen--off": !Z.value
1060
+ }),
1061
+ viewBox: `0 0 ${U.value.absoluteWidth} ${U.value.absoluteHeight}`,
1062
+ style: b(`max-width:100%; overflow: visible; background:transparent;color:${I.value.style.chart.color};`),
1063
+ tabindex: "0",
1064
+ onFocus: Lr,
1065
+ onBlur: Rr,
1066
+ onKeydown: zr
1067
+ }, [
1068
+ He(E(Ut)),
1069
+ e.$slots["chart-background"] ? (x(), m("foreignObject", {
1070
+ key: 0,
1071
+ x: U.value.left,
1072
+ y: U.value.top,
1073
+ width: U.value.width,
1074
+ height: U.value.height,
1075
+ style: { pointerEvents: "none" }
1076
+ }, [w(e.$slots, "chart-background", {}, void 0, !0)], 8, it)) : p("", !0),
1077
+ h("defs", null, [He(je, {
1078
+ t: "linear",
1079
+ id: `hover_${k.value}`,
1080
+ x1: "0%",
1081
+ y1: "0%",
1082
+ x2: "0%",
1083
+ y2: "100%",
1084
+ stops: [[
1085
+ "0%",
1086
+ E(c)(I.value.style.chart.backgroundColor, I.value.style.chart.layout.highlighter.opacity),
1087
+ 1
1088
+ ], [
1089
+ "100%",
1090
+ E(c)(I.value.style.chart.layout.highlighter.color, I.value.style.chart.layout.highlighter.opacity),
1091
+ 1
1092
+ ]]
1093
+ }, null, 8, ["id", "stops"]), He(je, {
1094
+ t: "radial",
1095
+ id: `focus_${k.value}`,
1096
+ stops: [
1097
+ [
1098
+ "0%",
1099
+ E(c)(E(ce)(I.value.style.chart.backgroundColor), 0),
1100
+ 1
1101
+ ],
1102
+ [
1103
+ "77%",
1104
+ E(c)("#FFFFFF", 30),
1105
+ 1
1106
+ ],
1107
+ [
1108
+ "100%",
1109
+ E(c)(E(ce)(I.value.style.chart.backgroundColor), 0),
1110
+ 1
1111
+ ]
1112
+ ]
1113
+ }, null, 8, ["id", "stops"])]),
1114
+ I.value.style.chart.layout.grid.show ? (x(), m("g", at, [
1115
+ h("line", {
1116
+ x1: H.value ? U.value.right : U.value.left,
1117
+ x2: H.value ? U.value.right : U.value.left,
1118
+ y1: U.value.top,
1119
+ y2: U.value.top + U.value.height,
1120
+ stroke: I.value.style.chart.layout.grid.stroke,
1121
+ "stroke-width": I.value.style.chart.layout.grid.strokeWidth,
1122
+ "stroke-linecap": "round"
1123
+ }, null, 8, ot),
1124
+ h("line", {
1125
+ x1: U.value.left,
1126
+ x2: U.value.right,
1127
+ y1: U.value.bottom,
1128
+ y2: U.value.bottom,
1129
+ stroke: I.value.style.chart.layout.grid.stroke,
1130
+ "stroke-width": I.value.style.chart.layout.grid.strokeWidth,
1131
+ "stroke-linecap": "round"
1132
+ }, null, 8, st),
1133
+ I.value.style.chart.layout.grid.showVerticalLines ? (x(), m("g", ct, [(x(!0), m(u, null, C(z.value.end - z.value.start, (e, t) => (x(), m("line", {
1134
+ x1: U.value.left + (t + 1) * q.value,
1135
+ x2: U.value.left + (t + 1) * q.value,
1136
+ y1: U.value.top,
1137
+ y2: U.value.bottom,
1138
+ stroke: I.value.style.chart.layout.grid.stroke,
1139
+ "stroke-width": I.value.style.chart.layout.grid.strokeWidth,
1140
+ "stroke-linecap": "round"
1141
+ }, null, 8, lt))), 256))])) : p("", !0)
1142
+ ])) : p("", !0),
1143
+ h("g", null, [I.value.style.chart.layout.grid.axis.yLabel ? (x(), m("text", {
1144
+ key: 0,
1145
+ ref_key: "yAxisLabel",
1146
+ ref: cn,
1147
+ "font-size": I.value.style.chart.layout.grid.axis.fontSize,
1148
+ fill: I.value.style.chart.layout.grid.axis.color,
1149
+ transform: `translate(${H.value ? U.value.absoluteWidth - I.value.style.chart.layout.grid.axis.fontSize / 2 - I.value.style.chart.layout.grid.axis.yLabelOffsetX : I.value.style.chart.layout.grid.axis.fontSize}, ${U.value.top + U.value.height / 2}) rotate(-90)`,
1150
+ "text-anchor": "middle",
1151
+ style: { transition: "none" }
1152
+ }, T(I.value.style.chart.layout.grid.axis.yLabel), 9, ut)) : p("", !0), I.value.style.chart.layout.grid.axis.xLabel ? (x(), m("text", {
1153
+ key: 1,
1154
+ ref_key: "xAxisLabel",
1155
+ ref: sn,
1156
+ "text-anchor": "middle",
1157
+ x: U.value.absoluteWidth / 2,
1158
+ y: U.value.absoluteHeight - 3,
1159
+ "font-size": I.value.style.chart.layout.grid.axis.fontSize,
1160
+ fill: I.value.style.chart.layout.grid.axis.color
1161
+ }, T(I.value.style.chart.layout.grid.axis.xLabel), 9, dt)) : p("", !0)]),
1162
+ I.value.style.chart.layout.grid.yAxis.dataLabels.show ? (x(), m("g", {
1163
+ key: 2,
1164
+ ref_key: "scaleLabels",
1165
+ ref: an,
1166
+ class: v({
1167
+ "donut-opacity": !0,
1168
+ "donut-behind": j.value !== null
1169
+ })
1170
+ }, [(x(!0), m(u, null, C(nr.value, (e, t) => (x(), m("g", null, [e.value >= J.value.min && e.value <= J.value.max ? (x(), m("line", {
1171
+ key: 0,
1172
+ x1: H.value ? U.value.right : U.value.left,
1173
+ x2: H.value ? U.value.right + 5 : U.value.left - 5,
1174
+ y1: e.y,
1175
+ y2: e.y,
1176
+ stroke: I.value.style.chart.layout.grid.stroke,
1177
+ "stroke-width": I.value.style.chart.layout.grid.strokeWidth
1178
+ }, null, 8, ft)) : p("", !0), e.value >= J.value.min && e.value <= J.value.max ? (x(), m("text", {
1179
+ key: 1,
1180
+ x: H.value ? U.value.right - I.value.style.chart.layout.grid.yAxis.dataLabels.offsetX + 7 : U.value.left + I.value.style.chart.layout.grid.yAxis.dataLabels.offsetX - 7,
1181
+ y: e.y + I.value.style.chart.layout.grid.yAxis.dataLabels.fontSize / 3,
1182
+ "font-size": I.value.style.chart.layout.grid.yAxis.dataLabels.fontSize,
1183
+ "text-anchor": H.value ? "start" : "end",
1184
+ fill: I.value.style.chart.layout.grid.yAxis.dataLabels.color,
1185
+ "font-weight": I.value.style.chart.layout.grid.yAxis.dataLabels.bold ? "bold" : "normal"
1186
+ }, T(E(se)(e.value) ? E(fe)(I.value.style.chart.layout.dataLabels.formatter, e.value, E(a)({
1187
+ p: I.value.style.chart.layout.dataLabels.prefix,
1188
+ v: e.value,
1189
+ s: I.value.style.chart.layout.dataLabels.suffix,
1190
+ r: I.value.style.chart.layout.grid.yAxis.dataLabels.roundingValue
1191
+ }), {
1192
+ datapoint: e,
1193
+ seriesIndex: t
1194
+ }) : ""), 9, pt)) : p("", !0)]))), 256))], 2)) : p("", !0),
1195
+ I.value.style.chart.layout.grid.xAxis.dataLabels.show ? (x(), m("g", {
1196
+ key: 3,
1197
+ ref_key: "timeLabelsEls",
1198
+ ref: on,
1199
+ class: v({ "donut-opacity": !0 })
1200
+ }, [(x(!0), m(u, null, C(z.value.end - z.value.start, (e, t) => (x(), m("g", null, [(I.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast && (t === 0 || t === G.value - 1) || !I.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast) && K.value[t] && K.value[t].text ? (x(), m("g", mt, [String(K.value[t].text).includes("\n") ? (x(), m("text", {
1201
+ key: 1,
1202
+ class: "vue-data-ui-time-label",
1203
+ "text-anchor": I.value.style.chart.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : I.value.style.chart.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1204
+ "font-size": I.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
1205
+ fill: I.value.style.chart.layout.grid.xAxis.dataLabels.color,
1206
+ transform: `translate(${U.value.left + q.value * t + q.value / 2}, ${U.value.bottom + I.value.style.chart.layout.grid.xAxis.dataLabels.fontSize + I.value.style.chart.layout.grid.xAxis.dataLabels.offsetY}), rotate(${I.value.style.chart.layout.grid.xAxis.dataLabels.rotation})`,
1207
+ innerHTML: E(ne)({
1208
+ content: String(K.value[t].text),
1209
+ fontSize: I.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
1210
+ fill: I.value.style.chart.layout.grid.xAxis.dataLabels.color,
1211
+ x: 0,
1212
+ y: 0
1213
+ })
1214
+ }, null, 8, gt)) : (x(), m("text", {
1215
+ key: 0,
1216
+ class: "vue-data-ui-time-label",
1217
+ "text-anchor": I.value.style.chart.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : I.value.style.chart.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
1218
+ "font-size": I.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
1219
+ fill: I.value.style.chart.layout.grid.xAxis.dataLabels.color,
1220
+ transform: `translate(${U.value.left + q.value * t + q.value / 2}, ${U.value.bottom + I.value.style.chart.layout.grid.xAxis.dataLabels.fontSize + I.value.style.chart.layout.grid.xAxis.dataLabels.offsetY}), rotate(${I.value.style.chart.layout.grid.xAxis.dataLabels.rotation})`
1221
+ }, T(K.value[t].text || ""), 9, ht))])) : p("", !0)]))), 256))], 512)) : p("", !0),
1222
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("g", null, [I.value.style.chart.layout.line.show && t < Y.value.length - 1 && ![e.subtotal, Y.value[t + 1].subtotal].includes(null) ? (x(), m("line", {
1223
+ key: 0,
1224
+ class: v({
1225
+ "donut-opacity": !0,
1226
+ "donut-behind": j.value !== null
1227
+ }),
1228
+ x1: e.x,
1229
+ y1: e.y,
1230
+ x2: Y.value[t + 1].x,
1231
+ y2: Y.value[t + 1].y,
1232
+ stroke: I.value.style.chart.layout.line.stroke,
1233
+ "stroke-width": I.value.style.chart.layout.line.strokeWidth,
1234
+ "stroke-linecap": "round",
1235
+ "stroke-linejoin": "round"
1236
+ }, null, 10, _t)) : p("", !0), e.subtotal === null ? p("", !0) : (x(), m("g", vt, [e.subtotal ? (x(), m("circle", {
1237
+ key: 0,
1238
+ cx: e.x,
1239
+ cy: e.y,
1240
+ r: e.activeRadius,
1241
+ fill: I.value.style.chart.backgroundColor
1242
+ }, null, 8, yt)) : p("", !0)]))]))), 256)),
1243
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("g", { class: v({
1244
+ "donut-opacity": !0,
1245
+ "donut-behind": t !== j.value && j.value !== null
1246
+ }) }, [e.subtotal ? (x(), m("g", bt, [j.value !== null && j.value === t ? (x(), m("g", xt, [
1247
+ (x(!0), m(u, null, C(e.donutHover, (t) => (x(), m("g", null, [Sr(t) ? (x(), m("path", {
1248
+ key: 0,
1249
+ d: E(me)(t, {
1250
+ x: t.center.endX,
1251
+ y: t.center.endY
1252
+ }, 12, 12, {
1253
+ x: e.x,
1254
+ y: e.y
1255
+ }, !1, 20),
1256
+ stroke: t.color,
1257
+ "stroke-width": "1",
1258
+ "stroke-linecap": "round",
1259
+ "stroke-linejoin": "round",
1260
+ fill: "none"
1261
+ }, null, 8, St)) : p("", !0)]))), 256)),
1262
+ (x(!0), m(u, null, C(e.donutHover, (t, n) => (x(), m("g", null, [Sr(t) ? (x(), m("text", {
1263
+ key: 0,
1264
+ "data-cy-hover-label": "",
1265
+ "text-anchor": E(ge)(t, !0, 0).anchor,
1266
+ x: E(ge)(t, !0, 9).x,
1267
+ y: E(le)(t, 14, 10),
1268
+ fill: I.value.style.chart.layout.grid.yAxis.dataLabels.color,
1269
+ "font-size": 8,
1270
+ "font-weight": "bold"
1271
+ }, T(t.name) + ": " + T(ir(t, e.donut)) + " (" + T(t.value === null ? "-" : rr(t.value, t, n)) + ") ", 9, Ct)) : p("", !0)]))), 256)),
1272
+ h("g", null, [h("circle", {
1273
+ cx: e.x,
1274
+ cy: e.y,
1275
+ r: e.hoverRadius,
1276
+ fill: I.value.style.chart.backgroundColor
1277
+ }, null, 8, wt)])
1278
+ ])) : p("", !0)])) : p("", !0)], 2))), 256)),
1279
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("g", { class: v({
1280
+ "donut-opacity": !0,
1281
+ "donut-behind": t !== j.value && j.value !== null
1282
+ }) }, [e.subtotal === null ? p("", !0) : (x(), m("g", Tt, [e.subtotal === 0 ? (x(), m("circle", {
1283
+ key: 0,
1284
+ cx: e.x,
1285
+ cy: e.y,
1286
+ r: 3,
1287
+ fill: I.value.style.chart.color
1288
+ }, null, 8, Et)) : j.value !== null && j.value === t ? (x(), m("g", Dt, [(x(!0), m(u, null, C(e.donutHover, (e, t) => (x(), m("path", {
1289
+ d: e.arcSlice,
1290
+ fill: `${e.color}`,
1291
+ "stroke-width": 1,
1292
+ stroke: I.value.style.chart.backgroundColor
1293
+ }, null, 8, Ot))), 256))])) : (x(), m("g", kt, [(x(!0), m(u, null, C(e.donut, (e, t) => (x(), m("path", {
1294
+ d: e.arcSlice,
1295
+ fill: `${e.color}`,
1296
+ "stroke-width": .5,
1297
+ stroke: I.value.style.chart.backgroundColor
1298
+ }, null, 8, At))), 256))]))]))], 2))), 256)),
1299
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("g", { class: v({
1300
+ "donut-opacity": !0,
1301
+ "donut-behind": t !== j.value && j.value !== null || Zt.value && t !== N.value.index
1302
+ }) }, [e.subtotal !== null && I.value.style.chart.layout.dataLabels.show ? (x(), m("text", {
1303
+ key: 0,
1304
+ "text-anchor": "middle",
1305
+ x: e.x,
1306
+ y: j.value === e.index && e.subtotal ? e.y + I.value.style.chart.layout.dataLabels.fontSize / 3 : e.y - e.radius - I.value.style.chart.layout.dataLabels.fontSize + I.value.style.chart.layout.dataLabels.offsetY,
1307
+ "font-size": I.value.style.chart.layout.dataLabels.fontSize,
1308
+ "font-weight": "bold",
1309
+ fill: I.value.style.chart.layout.dataLabels.color
1310
+ }, T(rr(e.subtotal, e, t)), 9, jt)) : p("", !0)], 2))), 256)),
1311
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("rect", {
1312
+ x: U.value.left + t * q.value,
1313
+ y: U.value.top,
1314
+ width: q.value,
1315
+ height: U.value.height,
1316
+ fill: [j.value, sr.value].includes(e.index) ? `url(#hover_${k.value})` : "transparent",
1317
+ class: v({ "donut-hover": L.value && e.subtotal && [j.value, sr.value].includes(e.index) }),
1318
+ style: { pointerEvents: "none" }
1319
+ }, null, 10, Mt))), 256)),
1320
+ (x(!0), m(u, null, C(Y.value, (e, t) => (x(), m("rect", {
1321
+ "data-cy-trap": "",
1322
+ x: U.value.left + t * q.value,
1323
+ y: U.value.top,
1324
+ width: q.value,
1325
+ height: U.value.height,
1326
+ fill: "transparent",
1327
+ onMouseenter: (t) => or(e),
1328
+ onMouseleave: (t) => ar(e),
1329
+ onClick: (n) => cr(e, t),
1330
+ class: v({ "donut-hover": L.value && j.value === e.index && e.subtotal })
1331
+ }, null, 42, Nt))), 256)),
1332
+ w(e.$slots, "svg", { svg: {
1333
+ ...U.value,
1334
+ isPrintingImg: E(Vn) || E(Hn) || fn.value,
1335
+ isPrintingSvg: pn.value
1336
+ } }, void 0, !0)
1337
+ ], 46, rt)), e.$slots.hint ? (x(), m("div", Pt, [w(e.$slots, "hint", y(_({
1338
+ hint: I.value.a11y.translations.keyboardNavigation,
1339
+ isVisible: Cn.value
1340
+ })), void 0, !0)])) : p("", !0)]),
1341
+ e.$slots.watermark ? (x(), m("div", Ft, [w(e.$slots, "watermark", y(_({ isPrinting: E(Vn) || E(Hn) || fn.value || pn.value })), void 0, !0)])) : p("", !0),
1342
+ h("div", {
1343
+ ref_key: "chartSlicer",
1344
+ ref: vn,
1345
+ style: b(`width:100%;background:${I.value.style.chart.backgroundColor}`),
1346
+ "data-dom-to-png-ignore": ""
1347
+ }, [G.value > 1 && I.value.style.chart.zoom.show ? (x(), f(Re, {
1348
+ ref_key: "slicerComponent",
1349
+ ref: _n,
1350
+ key: `slicer_${en.value}`,
1351
+ background: I.value.style.chart.zoom.color,
1352
+ borderColor: I.value.style.chart.backgroundColor,
1353
+ fontSize: I.value.style.chart.zoom.fontSize,
1354
+ useResetSlot: I.value.style.chart.zoom.useResetSlot,
1355
+ labelLeft: K.value[0] ? K.value[0].text : "",
1356
+ labelRight: K.value.at(-1) ? K.value.at(-1).text : "",
1357
+ textColor: I.value.style.chart.color,
1358
+ inputColor: I.value.style.chart.zoom.color,
1359
+ selectColor: I.value.style.chart.zoom.highlightColor,
1360
+ max: G.value,
1361
+ min: 0,
1362
+ valueStart: z.value.start,
1363
+ valueEnd: z.value.end,
1364
+ start: z.value.start,
1365
+ "onUpdate:start": t[0] ||= (e) => z.value.start = e,
1366
+ end: z.value.end,
1367
+ "onUpdate:end": t[1] ||= (e) => z.value.end = e,
1368
+ refreshStartPoint: I.value.style.chart.zoom.startIndex === null ? 0 : I.value.style.chart.zoom.startIndex,
1369
+ refreshEndPoint: I.value.style.chart.zoom.endIndex === null ? G.value : I.value.style.chart.zoom.endIndex + 1,
1370
+ enableRangeHandles: I.value.style.chart.zoom.enableRangeHandles,
1371
+ enableSelectionDrag: I.value.style.chart.zoom.enableSelectionDrag,
1372
+ focusOnDrag: I.value.style.chart.zoom.focusOnDrag,
1373
+ focusRangeRatio: I.value.style.chart.zoom.focusRangeRatio,
1374
+ isCursorPointer: L.value,
1375
+ maxWidth: I.value.style.chart.zoom.maxWidth,
1376
+ onReset: Nn
1377
+ }, {
1378
+ "reset-action": D(({ reset: t }) => [w(e.$slots, "reset-action", y(_({ reset: t })), void 0, !0)]),
1379
+ _: 3
1380
+ }, 8, [
1381
+ "background",
1382
+ "borderColor",
1383
+ "fontSize",
1384
+ "useResetSlot",
1385
+ "labelLeft",
1386
+ "labelRight",
1387
+ "textColor",
1388
+ "inputColor",
1389
+ "selectColor",
1390
+ "max",
1391
+ "valueStart",
1392
+ "valueEnd",
1393
+ "start",
1394
+ "end",
1395
+ "refreshStartPoint",
1396
+ "refreshEndPoint",
1397
+ "enableRangeHandles",
1398
+ "enableSelectionDrag",
1399
+ "focusOnDrag",
1400
+ "focusRangeRatio",
1401
+ "isCursorPointer",
1402
+ "maxWidth"
1403
+ ])) : p("", !0)], 4),
1404
+ h("div", { id: `legend-bottom-${k.value}` }, null, 8, It),
1405
+ ln.value && (I.value.style.chart.legend.show || e.$slots.legend) ? (x(), f(ze, {
1406
+ key: 6,
1407
+ to: I.value.style.chart.legend.position === "top" ? `#legend-top-${k.value}` : `#legend-bottom-${k.value}`
1408
+ }, [h("div", {
1409
+ ref_key: "chartLegend",
1410
+ ref: hn
1411
+ }, [w(e.$slots, "legend", { legend: lr.value }, () => [I.value.style.chart.legend.show ? (x(), f(Ie, {
1412
+ key: `legend_${rn.value}`,
1413
+ legendSet: lr.value,
1414
+ config: dr.value,
1415
+ onClickMarker: t[2] ||= ({ legend: e }) => pr(e.uid)
1416
+ }, {
1417
+ item: D(({ legend: e, index: t }) => [h("div", {
1418
+ onClick: (t) => pr(e.uid),
1419
+ style: b(`opacity:${A.value.includes(e.uid) ? .5 : 1}`)
1420
+ }, T(e.display), 13, Lt)]),
1421
+ legendToggle: D(() => [lr.value.length > 2 && I.value.style.chart.legend.selectAllToggle.show && !E(kn) ? (x(), f(Me, {
1422
+ key: 0,
1423
+ backgroundColor: I.value.style.chart.legend.selectAllToggle.backgroundColor,
1424
+ color: I.value.style.chart.legend.selectAllToggle.color,
1425
+ fontSize: I.value.style.chart.legend.fontSize,
1426
+ checked: A.value.length > 0,
1427
+ onToggle: fr
1428
+ }, null, 8, [
1429
+ "backgroundColor",
1430
+ "color",
1431
+ "fontSize",
1432
+ "checked"
1433
+ ])) : p("", !0)]),
1434
+ _: 1
1435
+ }, 8, ["legendSet", "config"])) : p("", !0)], !0)], 512)], 8, ["to"])) : p("", !0),
1436
+ e.$slots.source ? (x(), m("div", {
1437
+ key: 7,
1438
+ ref_key: "source",
1439
+ ref: gn,
1440
+ dir: "auto"
1441
+ }, [w(e.$slots, "source", {}, void 0, !0)], 512)) : p("", !0),
1442
+ Tn.value && I.value.userOptions.buttons.table ? (x(), f(qe($.value.component), Ue({ key: 8 }, $.value.props, {
1443
+ ref_key: "tableUnit",
1444
+ ref: un,
1445
+ onClose: Or
1446
+ }), Be({
1447
+ content: D(() => [(x(), f(E(Ht), {
1448
+ key: `table_${nn.value}`,
1449
+ colNames: X.value.colNames,
1450
+ head: X.value.head,
1451
+ body: X.value.body,
1452
+ config: X.value.config,
1453
+ title: I.value.table.useDialog ? "" : $.value.title,
1454
+ withCloseButton: !I.value.table.useDialog,
1455
+ isCursorPointer: L.value,
1456
+ onClose: Or
1457
+ }, {
1458
+ th: D(({ th: e }) => [Ve(T(e.name ?? e), 1)]),
1459
+ td: D(({ td: e }) => [e.value === null ? (x(), m("span", Rt, "-")) : (x(), m("b", zt, T(isNaN(e.value) ? "" : I.value.style.chart.layout.dataLabels.prefix) + T(!isNaN(e.value) && e.value !== null ? Number(e.value.toFixed(I.value.table.td.roundingValue)).toLocaleString() : e) + T(isNaN(e.value) ? "" : I.value.style.chart.layout.dataLabels.suffix), 1)), h("span", null, T(e.percentage && !isNaN(e.percentage) ? `(${Number(e.percentage.toFixed(I.value.table.td.roundingPercentage)).toLocaleString()}%)` : ""), 1)]),
1460
+ _: 1
1461
+ }, 8, [
1462
+ "colNames",
1463
+ "head",
1464
+ "body",
1465
+ "config",
1466
+ "title",
1467
+ "withCloseButton",
1468
+ "isCursorPointer"
1469
+ ]))]),
1470
+ _: 2
1471
+ }, [I.value.table.useDialog ? {
1472
+ name: "title",
1473
+ fn: D(() => [Ve(T($.value.title), 1)]),
1474
+ key: "0"
1475
+ } : void 0, I.value.table.useDialog ? {
1476
+ name: "actions",
1477
+ fn: D(() => [h("button", {
1478
+ tabindex: "0",
1479
+ class: "vue-ui-user-options-button",
1480
+ onClick: t[3] ||= (e) => vr(I.value.userOptions.callbacks.csv),
1481
+ style: b({ cursor: L.value ? "cursor" : "default" })
1482
+ }, [He(E(Vt), {
1483
+ name: "fileCsv",
1484
+ stroke: $.value.props.color
1485
+ }, null, 8, ["stroke"])], 4)]),
1486
+ key: "1"
1487
+ } : void 0]), 1040)) : p("", !0),
1488
+ I.value.style.chart.dialog.show ? (x(), f(E(qt), {
1489
+ key: 9,
1490
+ ref_key: "dialog",
1491
+ ref: Tr,
1492
+ onClose: t[4] ||= (e) => {
1493
+ N.value = null, Zt.value = !1, M.value = null, j.value = null, sr.value = null;
1494
+ },
1495
+ backgroundColor: I.value.style.chart.dialog.backgroundColor,
1496
+ color: I.value.style.chart.dialog.color,
1497
+ headerBg: I.value.style.chart.dialog.header.backgroundColor,
1498
+ headerColor: I.value.style.chart.dialog.header.color,
1499
+ isFullscreen: Z.value,
1500
+ fullscreenParent: P.value
1501
+ }, {
1502
+ title: D(() => [Ve(T(K.value[Number(N.value.index)] ? K.value[Number(N.value.index)].text : ""), 1)]),
1503
+ content: D(() => [N.value ? (x(), f(E(Kt), {
1504
+ key: 0,
1505
+ config: wr.value,
1506
+ dataset: Cr.value
1507
+ }, null, 8, ["config", "dataset"])) : p("", !0)]),
1508
+ _: 1
1509
+ }, 8, [
1510
+ "backgroundColor",
1511
+ "color",
1512
+ "headerBg",
1513
+ "headerColor",
1514
+ "isFullscreen",
1515
+ "fullscreenParent"
1516
+ ])) : p("", !0),
1517
+ E(kn) ? (x(), f(xe, { key: 10 })) : p("", !0)
1518
+ ], 46, $e));
1519
+ }
1520
+ }, [["__scopeId", "data-v-5ddd11b9"]]);
1521
+ //#endregion
1522
+ export { Qe as n, Bt as t };