vue-data-ui 3.5.2 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/README.md +36 -27
  2. package/dist/{Arrow-BGVin3AS.js → Arrow-CWYIBV-7.js} +1 -1
  3. package/dist/{BaseDraggableDialog-ymf2sfB8.js → BaseDraggableDialog-CRF94NJQ.js} +2 -2
  4. package/dist/{BaseIcon-BmMbm4d0.js → BaseIcon-CofSxalQ.js} +6 -5
  5. package/dist/{ColorPicker-ChuwChMo.js → ColorPicker-e1-OSGlQ.js} +10 -10
  6. package/dist/{DataTable-BT7VF2ua.js → DataTable-CHaOCmsE.js} +2 -2
  7. package/dist/{Legend-G6GMcdAc.js → Legend-Web3GjlR.js} +10 -10
  8. package/dist/{NonSvgPenAndPaper-DVgKKLIf.js → NonSvgPenAndPaper-CjYFLlns.js} +3 -3
  9. package/dist/{PackageVersion-Y7t79Jtq.js → PackageVersion-Bq_mtsqr.js} +1 -1
  10. package/dist/{PenAndPaper-SZQIAgkg.js → PenAndPaper-HCZQTkqi.js} +20 -20
  11. package/dist/{Shape-CNXKB8O0.js → Shape-DE6X_t31.js} +3 -3
  12. package/dist/{Slicer-D2wm0coO.js → Slicer-BFBBG6xv.js} +23 -23
  13. package/dist/{SlicerPreview-ij72TAs6.js → SlicerPreview-D76aSViW.js} +2 -2
  14. package/dist/{SparkTooltip-BEewz-_Q.js → SparkTooltip-B2rpVWE1.js} +6 -6
  15. package/dist/{Title-BzH_LEA3.js → Title-DfFUb9hd.js} +1 -1
  16. package/dist/{Tooltip-oWCO1HKy.js → Tooltip-WD0Ros6G.js} +1 -1
  17. package/dist/{UserOptions-CGnQt6Fd.js → UserOptions-B3I-s3Lw.js} +2 -2
  18. package/dist/components/arrow.js +1 -1
  19. package/dist/components/vue-ui-3d-bar.js +3 -3
  20. package/dist/components/vue-ui-accordion.js +1 -1
  21. package/dist/components/vue-ui-age-pyramid.js +3 -3
  22. package/dist/components/vue-ui-annotator.js +1 -1
  23. package/dist/components/vue-ui-bullet.js +3 -3
  24. package/dist/components/vue-ui-candlestick.js +3 -3
  25. package/dist/components/vue-ui-carousel-table.js +1 -1
  26. package/dist/components/vue-ui-chestnut.js +3 -3
  27. package/dist/components/vue-ui-chord.js +3 -3
  28. package/dist/components/vue-ui-circle-pack.js +3 -3
  29. package/dist/components/vue-ui-cursor.js +1 -1
  30. package/dist/components/vue-ui-dashboard.js +1 -1
  31. package/dist/components/vue-ui-digits.js +1 -1
  32. package/dist/components/vue-ui-donut-evolution.js +2 -2
  33. package/dist/components/vue-ui-donut.js +3 -3
  34. package/dist/components/vue-ui-dumbbell.js +3 -3
  35. package/dist/components/vue-ui-flow.js +3 -3
  36. package/dist/components/vue-ui-funnel.js +2 -2
  37. package/dist/components/vue-ui-galaxy.js +1 -1
  38. package/dist/components/vue-ui-gauge.js +1 -1
  39. package/dist/components/vue-ui-gizmo.js +1 -1
  40. package/dist/components/vue-ui-heatmap.js +1 -1
  41. package/dist/components/vue-ui-history-plot.js +3 -3
  42. package/dist/components/vue-ui-horizontal-bar.js +3 -3
  43. package/dist/components/vue-ui-icon.js +1 -1
  44. package/dist/components/vue-ui-kpi.js +1 -1
  45. package/dist/components/vue-ui-mini-loader.js +1 -1
  46. package/dist/components/vue-ui-molecule.js +3 -3
  47. package/dist/components/vue-ui-mood-radar.js +3 -3
  48. package/dist/components/vue-ui-nested-donuts.js +2 -2
  49. package/dist/components/vue-ui-onion.js +3 -3
  50. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  51. package/dist/components/vue-ui-quadrant.js +3 -3
  52. package/dist/components/vue-ui-quick-chart.js +3 -3
  53. package/dist/components/vue-ui-radar.js +3 -3
  54. package/dist/components/vue-ui-rating.js +1 -1
  55. package/dist/components/vue-ui-relation-circle.js +3 -3
  56. package/dist/components/vue-ui-ridgeline.js +3 -3
  57. package/dist/components/vue-ui-rings.js +3 -3
  58. package/dist/components/vue-ui-scatter.js +3 -3
  59. package/dist/components/vue-ui-skeleton.js +1 -1
  60. package/dist/components/vue-ui-smiley.js +1 -1
  61. package/dist/components/vue-ui-spark-trend.js +1 -1
  62. package/dist/components/vue-ui-sparkbar.js +2 -2
  63. package/dist/components/vue-ui-sparkgauge.js +3 -3
  64. package/dist/components/vue-ui-sparkhistogram.js +3 -3
  65. package/dist/components/vue-ui-sparkline.js +3 -3
  66. package/dist/components/vue-ui-sparkstackbar.js +2 -2
  67. package/dist/components/vue-ui-stackbar.js +3 -3
  68. package/dist/components/vue-ui-stackline.js +5 -0
  69. package/dist/components/vue-ui-strip-plot.js +3 -3
  70. package/dist/components/vue-ui-table-heatmap.js +1 -1
  71. package/dist/components/vue-ui-table-sparkline.js +2 -2
  72. package/dist/components/vue-ui-table.js +1 -1
  73. package/dist/components/vue-ui-thermometer.js +3 -3
  74. package/dist/components/vue-ui-timer.js +1 -1
  75. package/dist/components/vue-ui-tiremarks.js +2 -2
  76. package/dist/components/vue-ui-treemap.js +3 -3
  77. package/dist/components/vue-ui-vertical-bar.js +1 -1
  78. package/dist/components/vue-ui-waffle.js +2 -2
  79. package/dist/components/vue-ui-wheel.js +1 -1
  80. package/dist/components/vue-ui-word-cloud.js +3 -3
  81. package/dist/components/vue-ui-world.js +1 -1
  82. package/dist/components/vue-ui-xy-canvas.js +3 -3
  83. package/dist/components/vue-ui-xy.js +3 -3
  84. package/dist/{dom-to-png--BNgrTZV.js → dom-to-png-CH2DfsJe.js} +1 -1
  85. package/dist/{img-BecE5qXd.js → img-DUzJeMlr.js} +1 -1
  86. package/dist/{lib-C_mNZmhD.js → lib-C5BH09_g.js} +111 -110
  87. package/dist/{pdf-DuG5j3Wv.js → pdf-BSWQncok.js} +1 -1
  88. package/dist/style.css +1 -1
  89. package/dist/types/vue-data-ui.d.ts +303 -9
  90. package/dist/types/vue-ui-stackline.d.ts +18 -0
  91. package/dist/{useAutoSizeLabelsInsideViewbox-BhzfwQ_k.js → useAutoSizeLabelsInsideViewbox-DOALwU4q.js} +7 -7
  92. package/dist/{useNestedProp-CReNavA0.js → useNestedProp-CWo6bftQ.js} +535 -329
  93. package/dist/{usePrinter-DTzqpYKF.js → usePrinter-DCJzEiS8.js} +2 -2
  94. package/dist/useThemeCheck-DGJ31Vi5.js +32 -0
  95. package/dist/{useTimeLabels-BGFjWgrv.js → useTimeLabels-C5qMhpbe.js} +50 -49
  96. package/dist/{vue-data-ui-BRaq4hRp.js → vue-data-ui-ByLTJx5V.js} +79 -77
  97. package/dist/vue-data-ui.js +226 -204
  98. package/dist/{vue-ui-3d-bar-BB4ii8Nt.js → vue-ui-3d-bar-Dkds4k5N.js} +546 -517
  99. package/dist/{vue-ui-accordion-BmFTVF1a.js → vue-ui-accordion-DSdZUn2C.js} +3 -3
  100. package/dist/vue-ui-age-pyramid-C-fwZRYE.js +960 -0
  101. package/dist/{vue-ui-annotator-CcpaXBNK.js → vue-ui-annotator-DRaH8hXn.js} +7 -7
  102. package/dist/vue-ui-bullet-BKVJRjGh.js +657 -0
  103. package/dist/{vue-ui-candlestick-CMP7UL6z.js → vue-ui-candlestick-BKFWHU4O.js} +596 -561
  104. package/dist/{vue-ui-carousel-table-CzOcKsDj.js → vue-ui-carousel-table-VmPH6y2g.js} +48 -48
  105. package/dist/{vue-ui-chestnut-S787oASt.js → vue-ui-chestnut-DpMHe-OI.js} +534 -505
  106. package/dist/vue-ui-chord-Djdr0PY_.js +1182 -0
  107. package/dist/vue-ui-circle-pack-CyUqNJQt.js +832 -0
  108. package/dist/{vue-ui-cursor-C3yD_TUr.js → vue-ui-cursor-BMe8ZiV6.js} +2 -2
  109. package/dist/{vue-ui-dashboard-BfEcVRxQ.js → vue-ui-dashboard-eBXj-KCw.js} +140 -140
  110. package/dist/{vue-ui-digits-pRh179Gg.js → vue-ui-digits-D382I0-w.js} +2 -2
  111. package/dist/{vue-ui-donut-B_tEm4dT.js → vue-ui-donut-BLb0kj_P.js} +634 -602
  112. package/dist/vue-ui-donut-evolution-BqrldXpI.js +1243 -0
  113. package/dist/vue-ui-dumbbell-BuZT5a-d.js +1258 -0
  114. package/dist/vue-ui-flow-LLp6ntEP.js +1026 -0
  115. package/dist/vue-ui-funnel-pILUR-OG.js +743 -0
  116. package/dist/vue-ui-galaxy-X6yiw8kx.js +837 -0
  117. package/dist/vue-ui-gauge-DBh-vFb9.js +864 -0
  118. package/dist/{vue-ui-gizmo-BQzQlUJ8.js → vue-ui-gizmo-DtyEukIP.js} +3 -3
  119. package/dist/{vue-ui-heatmap-C9MhHWpp.js → vue-ui-heatmap-mkD6QkXo.js} +501 -466
  120. package/dist/vue-ui-history-plot-CyTaBaxA.js +1239 -0
  121. package/dist/{vue-ui-kpi-jcrPjW4C.js → vue-ui-kpi-CKMZDc3n.js} +3 -3
  122. package/dist/{vue-ui-mini-loader-DTM98mRN.js → vue-ui-mini-loader-BN72OfS0.js} +2 -2
  123. package/dist/vue-ui-molecule-UzQ3o5HW.js +782 -0
  124. package/dist/vue-ui-mood-radar-C2zkRLGy.js +930 -0
  125. package/dist/vue-ui-nested-donuts-B5OpvmJ9.js +1454 -0
  126. package/dist/vue-ui-onion-DbhIOGtF.js +944 -0
  127. package/dist/vue-ui-parallel-coordinate-plot-Dv_T4mWW.js +1080 -0
  128. package/dist/{vue-ui-quadrant-CeM23s0z.js → vue-ui-quadrant-CG6_CWsQ.js} +510 -481
  129. package/dist/{vue-ui-quick-chart-C0RMQzjC.js → vue-ui-quick-chart-DOeRhk7r.js} +795 -758
  130. package/dist/vue-ui-radar-DdHa9Hsh.js +1013 -0
  131. package/dist/{vue-ui-rating-tj97undO.js → vue-ui-rating-DtzmtJwF.js} +26 -26
  132. package/dist/vue-ui-relation-circle-B5lL4l9w.js +670 -0
  133. package/dist/vue-ui-ridgeline-3pk4Mlft.js +1302 -0
  134. package/dist/vue-ui-rings-DhyrjrZi.js +884 -0
  135. package/dist/vue-ui-scatter-DKCD70mi.js +1619 -0
  136. package/dist/{vue-ui-skeleton-87TORm6s.js → vue-ui-skeleton-CzzdmraB.js} +3 -3
  137. package/dist/{vue-ui-smiley-B74geHT3.js → vue-ui-smiley-OYyM-ukP.js} +2 -2
  138. package/dist/vue-ui-spark-trend-BMTcxeCT.js +364 -0
  139. package/dist/vue-ui-sparkbar-DVk1JiPL.js +381 -0
  140. package/dist/vue-ui-sparkgauge-Cq9Nw_xu.js +260 -0
  141. package/dist/vue-ui-sparkhistogram-PFHlCE_k.js +411 -0
  142. package/dist/vue-ui-sparkline-BHHwO_cV.js +549 -0
  143. package/dist/vue-ui-sparkstackbar-BosVkkiC.js +470 -0
  144. package/dist/vue-ui-stackbar-Djk5CPUy.js +1867 -0
  145. package/dist/vue-ui-stackline-mU4CSol9.js +1963 -0
  146. package/dist/{vue-ui-strip-plot-C1N2n39d.js → vue-ui-strip-plot-CZQSL0GK.js} +343 -314
  147. package/dist/{vue-ui-table-CcuoPHgI.js → vue-ui-table-DMM090pe.js} +5 -5
  148. package/dist/vue-ui-table-heatmap-vQEFrjCX.js +307 -0
  149. package/dist/{vue-ui-table-sparkline-BAxmZRff.js → vue-ui-table-sparkline-CQJc0mJY.js} +292 -263
  150. package/dist/vue-ui-thermometer-D1uxoVeZ.js +613 -0
  151. package/dist/{vue-ui-timer-BVsUQJz_.js → vue-ui-timer-jTnS3ES5.js} +25 -25
  152. package/dist/vue-ui-tiremarks-Bv-oIFVV.js +477 -0
  153. package/dist/vue-ui-treemap-B9MVtunp.js +1359 -0
  154. package/dist/{vue-ui-vertical-bar-B3gfBqD_.js → vue-ui-vertical-bar-BSbDj5qZ.js} +520 -485
  155. package/dist/{vue-ui-waffle-Bhlqo4xM.js → vue-ui-waffle-DIALVfvc.js} +376 -347
  156. package/dist/vue-ui-wheel-aUhrFpGk.js +690 -0
  157. package/dist/vue-ui-word-cloud-DZmMWsUu.js +904 -0
  158. package/dist/{vue-ui-world-C8KVyDim.js → vue-ui-world-CVLlgp2f.js} +57 -57
  159. package/dist/vue-ui-xy-Cy7mOurZ.js +3455 -0
  160. package/dist/vue-ui-xy-canvas-Cr13t9M5.js +1599 -0
  161. package/dist/vue_ui_vertical_bar-CELc39b8.js +18 -0
  162. package/package.json +5 -5
  163. package/dist/themes-AUNCOb2G.js +0 -53
  164. package/dist/vue-ui-age-pyramid-8bUepd28.js +0 -933
  165. package/dist/vue-ui-bullet-BvT4scFv.js +0 -630
  166. package/dist/vue-ui-chord-Dl9Y4mcz.js +0 -1153
  167. package/dist/vue-ui-circle-pack-CU09BzOV.js +0 -803
  168. package/dist/vue-ui-donut-evolution-DiGhMwMO.js +0 -1208
  169. package/dist/vue-ui-dumbbell-BlF3CLbN.js +0 -1231
  170. package/dist/vue-ui-flow-BQi5L8mJ.js +0 -991
  171. package/dist/vue-ui-funnel-CM_6Sare.js +0 -716
  172. package/dist/vue-ui-galaxy-BnZA62Li.js +0 -808
  173. package/dist/vue-ui-gauge-DAk72bez.js +0 -835
  174. package/dist/vue-ui-history-plot-BYQh3E8U.js +0 -1204
  175. package/dist/vue-ui-molecule-Bd1OXvl3.js +0 -753
  176. package/dist/vue-ui-mood-radar-DuoiTsYn.js +0 -903
  177. package/dist/vue-ui-nested-donuts-BTswQFjz.js +0 -1419
  178. package/dist/vue-ui-onion-D-1U2Qgl.js +0 -915
  179. package/dist/vue-ui-parallel-coordinate-plot-D-7VFHas.js +0 -1051
  180. package/dist/vue-ui-radar-BSfxyur3.js +0 -984
  181. package/dist/vue-ui-relation-circle-C7uV2mIj.js +0 -641
  182. package/dist/vue-ui-ridgeline-CYMfTlwI.js +0 -1273
  183. package/dist/vue-ui-rings-C96aj57d.js +0 -855
  184. package/dist/vue-ui-scatter-CtvOXUnx.js +0 -1590
  185. package/dist/vue-ui-spark-trend-6_Ibziyv.js +0 -337
  186. package/dist/vue-ui-sparkbar-BDCocMLI.js +0 -352
  187. package/dist/vue-ui-sparkgauge-CQ4Zk9-f.js +0 -233
  188. package/dist/vue-ui-sparkhistogram-BlTV9wfn.js +0 -384
  189. package/dist/vue-ui-sparkline-DWESyiqL.js +0 -514
  190. package/dist/vue-ui-sparkstackbar-DK_7X8mL.js +0 -441
  191. package/dist/vue-ui-stackbar-BWuw8ff4.js +0 -1827
  192. package/dist/vue-ui-table-heatmap-C9EMEM3Z.js +0 -282
  193. package/dist/vue-ui-thermometer-CDrM-WFq.js +0 -584
  194. package/dist/vue-ui-tiremarks-BQH2pNkG.js +0 -450
  195. package/dist/vue-ui-treemap-6WLoCHsH.js +0 -1330
  196. package/dist/vue-ui-wheel-CqHw1WuW.js +0 -663
  197. package/dist/vue-ui-word-cloud-CKuWZGLv.js +0 -875
  198. package/dist/vue-ui-xy-Cz2qIEfi.js +0 -3424
  199. package/dist/vue-ui-xy-canvas-y4h7gEFp.js +0 -1564
@@ -0,0 +1,1243 @@
1
+ import { defineAsyncComponent as V, ref as i, shallowRef as xt, computed as g, onMounted as xl, toRefs as kl, nextTick as ze, watch as ie, watchEffect as Al, onBeforeUnmount as wl, createElementBlock as n, openBlock as u, unref as c, normalizeStyle as te, normalizeClass as I, createBlock as E, createCommentVNode as d, createElementVNode as m, withCtx as f, renderSlot as C, normalizeProps as O, guardReactiveProps as P, createSlots as kt, createVNode as At, Fragment as $, renderList as D, toDisplayString as A, Teleport as Ll, resolveDynamicComponent as _l, mergeProps as Sl, createTextVNode as Fe } from "vue";
2
+ import { c as wt, o as Lt, g as ce, k as $l, t as Dl, i as zl, p as de, W as _t, j as Fl, l as Ee, a5 as El, F as St, Z as Te, a as Be, d as ve, X as Tl, s as le, a6 as Bl, U as Il, _ as Ol, $ as Pl, a0 as $t, u as Nl, q as Rl, a7 as Dt, a8 as Vl } from "./lib-C5BH09_g.js";
3
+ import { t as zt, u as Ml } from "./useResponsive-DfdjqQps.js";
4
+ import { u as Ul, a as Ie } from "./useNestedProp-CWo6bftQ.js";
5
+ import { u as Hl } from "./usePrinter-DCJzEiS8.js";
6
+ import { u as Xl, B as Wl } from "./BaseScanner-BgWxam9d.js";
7
+ import { u as jl } from "./useSvgExport-DrjCWun4.js";
8
+ import { u as Gl } from "./useTimeLabels-C5qMhpbe.js";
9
+ import { u as Yl } from "./useThemeCheck-DGJ31Vi5.js";
10
+ import { u as ql } from "./useUserOptionState-BIvW1Kz7.js";
11
+ import { u as Zl } from "./useChartAccessibility-9icAAmYg.js";
12
+ import { u as Jl } from "./useTimeLabelCollider-CIsgDrl9.js";
13
+ import Kl from "./img-DUzJeMlr.js";
14
+ import Ql from "./Title-DfFUb9hd.js";
15
+ import ea from "./Legend-Web3GjlR.js";
16
+ import { S as ta } from "./Slicer-BFBBG6xv.js";
17
+ import { _ as la } from "./_plugin-vue_export-helper-CHgC5LLL.js";
18
+ const Ft = { style: { chart: { backgroundColor: "#1A1A1A", color: "#CCCCCC", zoom: { color: "#4A4A4A", highlightColor: "#9A9A9A" }, dialog: { backgroundColor: "#1A1A1A", color: "#CCCCCC", header: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, donutChart: { style: { chart: { backgroundColor: "#1A1A1A", color: "#CCCCCC", layout: { labels: { percentage: { color: "#CCCCCC" }, name: { color: "#CCCCCC" }, hollow: { total: { color: "#CCCCCC", value: { color: "#CCCCCC" } }, average: { color: "#CCCCCC", value: { color: "#CCCCCC" } } } } }, legend: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, title: { color: "#CCCCCC", subtitle: { color: "#757575" } }, tooltip: { backgroundColor: "#1A1A1A", backgroundOpacity: 70, color: "#CCCCCC", borderColor: "#5A5A5A" } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, td: { backgroundColor: "#1A1A1A", color: "#CCCCCC" } } } }, layout: { grid: { stroke: "#5A5A5A", yAxis: { dataLabels: { color: "#CCCCCC" } }, xAxis: { dataLabels: { color: "#CCCCCC" } } }, line: { stroke: "#4A4A4A" }, highlighter: { color: "#CCCCCC" }, dataLabels: { color: "#CCCCCC" } }, legend: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, title: { color: "#CCCCCC", subtitle: { color: "#757575" } } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, td: { backgroundColor: "#1A1A1A", color: "#CCCCCC" } } }, Et = { style: { chart: { backgroundColor: "#FFF8E1", color: "#424242", zoom: { color: "#5D4037", highlightColor: "#FF8A65" }, layout: { grid: { stroke: "#5D4037", showVerticalLines: !1, yAxis: { dataLabels: { color: "#424242" } }, xAxis: { dataLabels: { color: "#424242" } } }, line: { stroke: "#5D4037" }, highlighter: { color: "#424242" }, dataLabels: { color: "#424242" } }, legend: { backgroundColor: "#FFF8E1", color: "#424242" }, title: { color: "#424242", subtitle: { color: "#757575" } } } }, table: { th: { backgroundColor: "#FFF8E1", color: "#424242" }, td: { backgroundColor: "#FFF8E1", color: "#424242" } } }, Tt = { style: { chart: { backgroundColor: "#1E1E1E", color: "#BDBDBD", zoom: { color: "#5D4037", highlightColor: "#FF8A65" }, layout: { grid: { stroke: "#5D4037", showVerticalLines: !1, yAxis: { dataLabels: { color: "#BDBDBD" } }, xAxis: { dataLabels: { color: "#BDBDBD" } } }, line: { stroke: "#5D4037" }, highlighter: { color: "#FFF8E1" }, dataLabels: { color: "#BDBDBD" } }, legend: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, title: { color: "#FFF8E1", subtitle: { color: "#BDBDBD" } } } }, table: { th: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, td: { backgroundColor: "#1E1E1E", color: "#BDBDBD" } } }, Bt = { style: { chart: { backgroundColor: "#1A1A1A", color: "#99AA99", zoom: { color: "#5F6A5F", highlightColor: "#66CC66" }, layout: { grid: { show: !1, stroke: "#5F6A5F", yAxis: { dataLabels: { color: "#AACCAA" } }, xAxis: { dataLabels: { color: "#AACCAA" } } }, line: { stroke: "#5F6A5F" }, highlighter: { color: "#66CC66" }, dataLabels: { color: "#AACCAA" } }, legend: { backgroundColor: "#1A1A1A", color: "#99AA99" }, title: { color: "#66CC66", subtitle: { color: "#99AA99" } } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#99AA99" }, td: { backgroundColor: "#1A1A1A", color: "#AACCAA" } } }, It = { style: { chart: { backgroundColor: "#fbfafa", color: "#8A9892", zoom: { color: "#E0CFC3", highlightColor: "#8F837A" }, layout: { grid: { show: !1, yAxis: { dataLabels: { show: !1 } }, xAxis: { dataLabels: { show: !1 } } }, line: { stroke: "#DCDFE7" }, highlighter: { color: "#8F837A" }, dataLabels: { color: "#A0AC94" } }, legend: { backgroundColor: "#fbfafa", color: "#99AA99" }, title: { color: "#8A9892", subtitle: { color: "#99AA99" } } } }, table: { th: { backgroundColor: "#fbfafa", color: "#8F837A" }, td: { backgroundColor: "#fbfafa", color: "#8F837A" } } }, Ot = { style: { chart: { backgroundColor: "#f6f6fb", color: "#50606C", zoom: { color: "#92B0AB", highlightColor: "#50606C" }, layout: { grid: { stroke: "#BBC4D3", yAxis: { dataLabels: { color: "#61747E" } }, xAxis: { dataLabels: { color: "#61747E" } } }, line: { stroke: "#92B0AB" }, highlighter: { color: "#50606C" }, dataLabels: { color: "#61747E" } }, legend: { backgroundColor: "#f6f6fb", color: "#61747E" }, title: { color: "#50606C", subtitle: { color: "#718890" } } } }, table: { th: { backgroundColor: "#f6f6fb", color: "#50606C" }, td: { backgroundColor: "#f6f6fb", color: "#50606C" } } }, Pt = {
19
+ default: {},
20
+ dark: Ft,
21
+ celebration: Et,
22
+ celebrationNight: Tt,
23
+ hack: Bt,
24
+ zen: It,
25
+ concrete: Ot
26
+ }, go = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
27
+ __proto__: null,
28
+ celebration: Et,
29
+ celebrationNight: Tt,
30
+ concrete: Ot,
31
+ dark: Ft,
32
+ default: Pt,
33
+ hack: Bt,
34
+ zen: It
35
+ }, Symbol.toStringTag, { value: "Module" })), aa = ["id"], oa = ["id"], ua = ["xmlns", "viewBox"], sa = ["x", "y", "width", "height"], na = ["id"], ra = ["stop-color"], ia = ["stop-color"], ca = ["id"], da = ["stop-color"], va = ["stop-color"], ha = ["stop-color"], ga = { key: 1 }, ya = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], fa = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ba = { key: 0 }, ma = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ca = ["font-size", "fill", "transform"], pa = ["x", "y", "font-size", "fill"], xa = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ka = ["x", "y", "font-size", "fill", "font-weight"], Aa = { key: 0 }, wa = ["text-anchor", "font-size", "fill", "transform"], La = ["text-anchor", "font-size", "fill", "transform", "innerHTML"], _a = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], Sa = { key: 1 }, $a = ["cx", "cy", "r", "fill"], Da = { key: 0 }, za = { key: 0 }, Fa = ["d", "stroke"], Ea = ["text-anchor", "x", "y", "fill"], Ta = ["cx", "cy", "r", "fill"], Ba = { key: 0 }, Ia = ["cx", "cy", "fill"], Oa = { key: 1 }, Pa = ["d", "fill", "stroke"], Na = { key: 2 }, Ra = ["d", "fill", "stroke"], Va = ["x", "y", "font-size", "fill"], Ma = ["x", "y", "width", "height", "fill"], Ua = ["x", "y", "width", "height", "onMouseenter", "onMouseleave", "onClick"], Ha = {
36
+ key: 4,
37
+ class: "vue-data-ui-watermark"
38
+ }, Xa = ["id"], Wa = ["onClick"], ja = { key: 0 }, Ga = { key: 1 }, Ya = {
39
+ __name: "vue-ui-donut-evolution",
40
+ props: {
41
+ config: {
42
+ type: Object,
43
+ default() {
44
+ return {};
45
+ }
46
+ },
47
+ dataset: {
48
+ type: Array,
49
+ default() {
50
+ return [];
51
+ }
52
+ }
53
+ },
54
+ emits: ["selectLegend"],
55
+ setup(Nt, { expose: Rt, emit: Vt }) {
56
+ const Mt = V(() => import("./vue-ui-accordion-DSdZUn2C.js")), Ut = V(() => import("./BaseIcon-CofSxalQ.js")), Ht = V(() => import("./DataTable-CHaOCmsE.js")), Xt = V(() => import("./PackageVersion-Bq_mtsqr.js")), Wt = V(() => import("./PenAndPaper-HCZQTkqi.js")), jt = V(() => import("./UserOptions-B3I-s3Lw.js")), Gt = V(() => import("./vue-ui-donut-BLb0kj_P.js").then((t) => t.a)), Oe = V(() => import("./BaseDraggableDialog-CRF94NJQ.js")), { vue_ui_donut_evolution: Yt } = Ul(), { isThemeValid: qt, warnInvalidTheme: Zt } = Yl(), p = Nt, T = i(wt()), k = i([]), b = i(null), ae = i(null), he = i(!1), M = i(null), N = i(null), Jt = i(null), Pe = i(0), Ne = i(0), Re = i(0), Ve = i(0), Me = i(0), ge = i(null), oe = i(null), ye = i(null), fe = i(null), Ue = i(!1), Z = i(null), be = i(null), He = i(null), Xe = i(null), We = i(null), je = i(null), Ge = i(null), me = i(!1), J = xt(null), ue = xt(null), Ye = i(null), qe = Vt, Ze = g(() => !!p.dataset && p.dataset.length);
57
+ xl(() => {
58
+ Ue.value = !0, Je();
59
+ });
60
+ const se = g(() => !!e.value.debug);
61
+ function Je() {
62
+ if (Lt(p.dataset) ? (ce({
63
+ componentName: "VueUiDonutEvolution",
64
+ type: "dataset",
65
+ debug: se.value
66
+ }), ne.value = !0) : p.dataset.length && p.dataset.forEach((t, a) => {
67
+ $l({
68
+ datasetObject: t,
69
+ requiredAttributes: ["name", "values"]
70
+ }).forEach((l) => {
71
+ ce({
72
+ componentName: "VueUiDonutEvolution",
73
+ type: "datasetSerieAttribute",
74
+ property: l,
75
+ index: a,
76
+ debug: se.value
77
+ }), ne.value = !0;
78
+ });
79
+ }), Lt(p.dataset) || (ne.value = e.value.loading), setTimeout(() => {
80
+ me.value = !0;
81
+ }, 10), pe(), e.value.responsive) {
82
+ const t = zt(() => {
83
+ me.value = !1;
84
+ const { width: a, height: l } = Ml({
85
+ chart: N.value,
86
+ title: e.value.style.chart.title.text ? He.value : null,
87
+ legend: e.value.style.chart.legend.show ? Xe.value : null,
88
+ slicer: e.value.style.chart.zoom.show && Qe.value > 1 ? Ge.value : null,
89
+ source: We.value
90
+ });
91
+ requestAnimationFrame(() => {
92
+ j.value.width = a, j.value.height = l - 12, clearTimeout(Ye.value), Ye.value = setTimeout(() => {
93
+ me.value = !0;
94
+ }, 10);
95
+ });
96
+ });
97
+ J.value && (ue.value && J.value.unobserve(ue.value), J.value.disconnect()), J.value = new ResizeObserver(t), ue.value = N.value.parentNode, J.value.observe(ue.value);
98
+ }
99
+ }
100
+ const e = i(Ae()), { loading: Ke, FINAL_DATASET: Ce, manualLoading: ne } = Xl({
101
+ ...kl(p),
102
+ FINAL_CONFIG: e,
103
+ prepareConfig: Ae,
104
+ callback: () => {
105
+ Promise.resolve().then(async () => {
106
+ await pe();
107
+ });
108
+ },
109
+ skeletonDataset: [
110
+ {
111
+ name: "",
112
+ values: [1, 2, 3, 5, 8, 13],
113
+ color: "#AAAAAA"
114
+ },
115
+ {
116
+ name: "",
117
+ values: [1, 2, 3, 5, 8, 13],
118
+ color: "#BABABA"
119
+ },
120
+ {
121
+ name: "",
122
+ values: [1, 2, 3, 5, 8, 13],
123
+ color: "#CACACA"
124
+ }
125
+ ],
126
+ skeletonConfig: Dl({
127
+ defaultConfig: e.value,
128
+ userConfig: {
129
+ useCssAnimation: !1,
130
+ table: { show: !1 },
131
+ userOptions: { show: !1 },
132
+ style: {
133
+ chart: {
134
+ backgroundColor: "#99999930",
135
+ layout: {
136
+ dataLabels: { show: !1 },
137
+ grid: {
138
+ stroke: "#6A6A6A",
139
+ axis: {
140
+ yLabel: "",
141
+ xLabel: ""
142
+ },
143
+ yAxis: {
144
+ dataLabels: { show: !1 }
145
+ },
146
+ xAxis: {
147
+ dataLabels: { show: !1 }
148
+ }
149
+ },
150
+ line: {
151
+ stroke: "#CACACA60"
152
+ }
153
+ },
154
+ legend: {
155
+ backgroundColor: "transparent",
156
+ showValue: !1,
157
+ showPercentage: !1
158
+ },
159
+ zoom: {
160
+ show: !1,
161
+ startIndex: null,
162
+ endIndex: null
163
+ }
164
+ }
165
+ }
166
+ }
167
+ })
168
+ }), j = i({
169
+ width: e.value.style.chart.layout.width,
170
+ height: e.value.style.chart.layout.height
171
+ }), Qe = g(() => Math.max(...Ce.value.map((t) => t.values.length))), h = i({
172
+ start: 0,
173
+ end: Qe.value
174
+ });
175
+ function et() {
176
+ pe();
177
+ }
178
+ async function pe() {
179
+ await ze(), await ze();
180
+ const { startIndex: t, endIndex: a } = e.value.style.chart.zoom, l = je.value;
181
+ h.value = { start: 0, max: z.value }, (t != null || a != null) && l ? (t != null ? l.setStartValue(t) : (h.value.start = 0, l.setStartValue(0)), a != null ? l.setEndValue(Kt(a + 1)) : (h.value.end = z.value, l.setEndValue(z.value))) : (h.value = {
182
+ start: 0,
183
+ end: z.value
184
+ }, Ne.value += 1);
185
+ }
186
+ function Kt(t) {
187
+ const a = z.value;
188
+ return t > a ? a : t < 0 || e.value.style.chart.zoom.startIndex !== null && t < e.value.style.chart.zoom.startIndex ? e.value.style.chart.zoom.startIndex !== null ? e.value.style.chart.zoom.startIndex + 1 : 1 : t;
189
+ }
190
+ const { userOptionsVisible: xe, setUserOptionsVisibility: tt, keepUserOptionState: lt } = ql({ config: e.value }), { svgRef: ke } = Zl({ config: e.value.style.chart.title });
191
+ function Ae() {
192
+ const t = Ie({
193
+ userConfig: p.config,
194
+ defaultConfig: Yt
195
+ });
196
+ let a = {};
197
+ const l = t.theme;
198
+ if (l)
199
+ if (!qt.value(t))
200
+ Zt(t), a = t;
201
+ else {
202
+ const s = Ie({
203
+ userConfig: Pt[l] || p.config,
204
+ defaultConfig: t
205
+ });
206
+ a = {
207
+ ...Ie({
208
+ userConfig: p.config,
209
+ defaultConfig: s
210
+ }),
211
+ customPalette: t.customPalette ? t.customPalette : zl[l] || de
212
+ };
213
+ }
214
+ else
215
+ a = t;
216
+ return p.config && _t(p.config, "style.chart.zoom.startIndex") ? a.style.chart.zoom.startIndex = p.config.style.chart.zoom.startIndex : a.style.chart.zoom.startIndex = null, p.config && _t(p.config, "style.chart.zoom.endIndex") ? a.style.chart.zoom.endIndex = p.config.style.chart.zoom.endIndex : a.style.chart.zoom.endIndex = null, a;
217
+ }
218
+ ie(() => p.config, (t) => {
219
+ Ke.value || (e.value = Ae()), xe.value = !e.value.userOptions.showOnChartHover, Je(), Re.value += 1, Ve.value += 1, Me.value += 1, U.value.showTable = e.value.table.show;
220
+ }, { deep: !0 }), ie(() => p.dataset, (t) => {
221
+ Array.isArray(t) && t.length > 0 && (ne.value = !1), et();
222
+ }, { deep: !0 });
223
+ const { isPrinting: at, isImaging: ot, generatePdf: ut, generateImage: st } = Hl({
224
+ elementId: T.value,
225
+ fileName: e.value.style.chart.title.text || "vue-ui-donut-evolution",
226
+ options: e.value.userOptions.print
227
+ }), Qt = g(() => e.value.userOptions.show && !e.value.style.chart.title.text), el = g(() => Fl(e.value.customPalette)), U = i({
228
+ showTable: e.value.table.show
229
+ });
230
+ ie(e, () => {
231
+ U.value = {
232
+ showTable: e.value.table.show
233
+ };
234
+ }, { immediate: !0 });
235
+ const H = g(() => ({
236
+ top: e.value.style.chart.layout.padding.top,
237
+ right: e.value.style.chart.layout.padding.right,
238
+ bottom: e.value.style.chart.layout.padding.bottom,
239
+ left: e.value.style.chart.layout.padding.left
240
+ }));
241
+ function tl() {
242
+ let t = 0;
243
+ ge.value && (t = Array.from(ge.value.querySelectorAll("text")).reduce((o, y) => {
244
+ const v = y.getComputedTextLength();
245
+ return (v > o ? v : o) + e.value.style.chart.layout.grid.axis.yLabelOffsetX;
246
+ }, 0));
247
+ const a = fe.value ? fe.value.getBoundingClientRect().width + e.value.style.chart.layout.grid.axis.yLabelOffsetX + e.value.style.chart.layout.grid.axis.fontSize : 0;
248
+ return t + a + 5;
249
+ }
250
+ const we = i(0), ll = zt((t) => {
251
+ we.value = t;
252
+ }, 100);
253
+ Al((t) => {
254
+ const a = oe.value;
255
+ if (!a) return;
256
+ const l = new ResizeObserver((s) => {
257
+ ll(s[0].contentRect.height);
258
+ });
259
+ l.observe(a), t(() => l.disconnect());
260
+ }), wl(() => {
261
+ we.value = 0;
262
+ });
263
+ const nt = g(() => {
264
+ let t = 0;
265
+ ye.value && (t = ye.value.getBBox().height);
266
+ let a = 0;
267
+ return oe.value && (a = we.value), t + a + e.value.style.chart.layout.grid.axis.fontSize + e.value.style.chart.layout.grid.xAxis.dataLabels.offsetY;
268
+ }), r = g(() => {
269
+ const t = tl(), a = e.value.style.chart.layout.dataLabels.fontSize * 3, l = j.value.width, s = j.value.height, o = H.value.left + t, y = l - H.value.right, v = l - o - H.value.right, x = s - H.value.top - H.value.bottom - a - nt.value, q = H.value.top + a, R = s - H.value.bottom - nt.value;
270
+ return {
271
+ top: q,
272
+ left: o,
273
+ right: y,
274
+ bottom: R,
275
+ absoluteHeight: s,
276
+ absoluteWidth: l,
277
+ centerX: o + Math.max(10, v) / 2,
278
+ centerY: q + Math.max(10, x) / 2,
279
+ width: Math.max(10, v),
280
+ height: Math.max(10, x)
281
+ };
282
+ }), B = g(() => (Ce.value.forEach((t, a) => {
283
+ [null, void 0].includes(t.name) && ce({
284
+ componentName: "VueUiDonutEvolution",
285
+ type: "datasetSerieAttribute",
286
+ property: "name",
287
+ index: a,
288
+ debug: se.value
289
+ }), [null, void 0].includes(t.values) && ce({
290
+ componentName: "VueUiDonutEvolution",
291
+ type: "datasetSerieAttribute",
292
+ property: "values",
293
+ index: a,
294
+ debug: se.value
295
+ });
296
+ }), Ce.value.map((t, a) => ({
297
+ ...t,
298
+ values: El(t.values),
299
+ color: Ee(t.color) || el.value[a] || de[a] || de[a % de.length],
300
+ length: (t.values || []).length,
301
+ uid: wt()
302
+ })))), X = g(() => B.value.filter((t) => !k.value.includes(t.uid)).map((t) => ({
303
+ ...t,
304
+ values: t.values.filter((a, l) => l >= h.value.start && l <= h.value.end)
305
+ }))), z = g(() => Math.max(...X.value.map((t) => t.length))), L = g(() => Gl({
306
+ values: e.value.style.chart.layout.grid.xAxis.dataLabels.values,
307
+ maxDatapoints: z.value,
308
+ formatter: e.value.style.chart.layout.grid.xAxis.dataLabels.datetimeFormatter,
309
+ start: h.value.start,
310
+ end: h.value.end
311
+ })), w = g(() => r.value.width / (h.value.end - h.value.start)), _ = g(() => {
312
+ const t = [];
313
+ for (let o = 0; o < h.value.end - h.value.start; o += 1) {
314
+ const y = X.value.map((F) => F.values[o] ?? null), v = y.filter((F) => [void 0, null].includes(F)).length === y.length, x = y.reduce((F, S) => F + S, 0), q = y.map((F) => F / x), R = r.value.left + w.value * o + w.value / 2;
315
+ t.push({
316
+ index: o,
317
+ percentages: q,
318
+ subtotal: v || x < 0 ? null : x,
319
+ values: y,
320
+ x: R
321
+ });
322
+ }
323
+ const a = 0, l = Math.max(...t.map((o) => o.subtotal)), s = t.length === 1 ? l * 2 : l;
324
+ return t.map((o, y) => {
325
+ const v = Math.min(r.value.width / 24, w.value / 2 * 0.7), x = v > r.value.width / 16 ? r.value.width / 16 : v, q = b.value === o.index ? r.value.width / 16 : x, R = t.length > 4 ? v * 2 : v * 2 > w.value / 2 * 0.7 ? w.value / 2 * 0.7 : v * 2, F = r.value.bottom - r.value.height * o.subtotal / St(a, s, e.value.style.chart.layout.grid.yAxis.dataLabels.steps).max;
326
+ return {
327
+ ...o,
328
+ y: F,
329
+ radius: x,
330
+ activeRadius: q,
331
+ hoverRadius: R,
332
+ donut: Te({
333
+ series: X.value.map((S, pt) => ({
334
+ color: S.color,
335
+ name: S.name,
336
+ value: S.values[y] ?? 0
337
+ }))
338
+ }, o.x, F, x, x, 1.99999, 2, 1, 360, 105.25, x / 2),
339
+ donutHover: Te({
340
+ series: X.value.map((S, pt) => ({
341
+ color: S.color,
342
+ name: S.name,
343
+ value: S.values[y] ?? 0
344
+ }))
345
+ }, o.x, F, R, R, 1.99999, 2, 1, 360, 105.25, R / 2),
346
+ donutFocus: Te({
347
+ series: X.value.map((S, pt) => ({
348
+ color: S.color,
349
+ name: S.name,
350
+ value: S.values[y] ?? 0
351
+ }))
352
+ }, r.value.centerX, r.value.centerY, r.value.height / 3.6, r.value.height / 3.6, 1.99999, 2, 1, 360, 105.25, r.value.height / 6)
353
+ };
354
+ });
355
+ });
356
+ function rt(t, a, l) {
357
+ return Be(
358
+ e.value.style.chart.layout.dataLabels.formatter,
359
+ t,
360
+ ve({
361
+ p: e.value.style.chart.layout.dataLabels.prefix,
362
+ v: t,
363
+ s: e.value.style.chart.layout.dataLabels.suffix,
364
+ r: e.value.style.chart.layout.dataLabels.rounding
365
+ }),
366
+ { datapoint: a, index: l }
367
+ );
368
+ }
369
+ const Le = g(() => ({
370
+ max: Math.max(..._.value.map((t) => t.subtotal)),
371
+ min: 0
372
+ })), G = g(() => {
373
+ const t = _.value.length === 1 ? Le.value.max * 2 : Le.value.max;
374
+ return St(Le.value.min, t, e.value.style.chart.layout.grid.yAxis.dataLabels.steps);
375
+ });
376
+ function al(t) {
377
+ return t / G.value.max;
378
+ }
379
+ const ol = g(() => G.value.ticks.map((t) => ({
380
+ y: r.value.bottom - r.value.height * al(t),
381
+ value: t
382
+ })));
383
+ function ul(t, a) {
384
+ return isNaN(t.value / Dt(a, "value")) ? 0 : (t.value / Dt(a, "value") * 100).toFixed(0) + "%";
385
+ }
386
+ function it(t) {
387
+ b.value = null, ae.value = null, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: t.seriesIndex + h.value.start });
388
+ }
389
+ function sl(t) {
390
+ e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: t.index + h.value.start }), b.value = t.index, ae.value = t;
391
+ }
392
+ const K = i(null);
393
+ function ct(t, a) {
394
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: t.index + h.value.start }), !(!t.subtotal || !e.value.style.chart.dialog.show) && (ae.value = null, b.value = null, he.value = !0, M.value = t, dl(t), [null, void 0].includes(a) || (K.value = a));
395
+ }
396
+ const _e = g(() => B.value.map((t, a) => ({
397
+ name: t.name,
398
+ value: t.values.slice(h.value.start, h.value.end).reduce((l, s) => l + s, 0),
399
+ shape: "circle",
400
+ uid: t.uid,
401
+ color: t.color
402
+ })).sort((t, a) => a.value - t.value).map((t, a) => ({
403
+ ...t,
404
+ opacity: k.value.includes(t.uid) ? 0.5 : 1,
405
+ segregate: () => Q(t.uid),
406
+ isSegregated: k.value.includes(t.uid),
407
+ display: `${t.name}${e.value.style.chart.legend.showPercentage || e.value.style.chart.legend.showValue ? ": " : ""}${e.value.style.chart.legend.showValue ? Be(
408
+ e.value.style.chart.layout.dataLabels.formatter,
409
+ t.value,
410
+ ve({
411
+ p: e.value.style.chart.layout.dataLabels.prefix,
412
+ v: t.value,
413
+ s: e.value.style.chart.layout.dataLabels.suffix,
414
+ r: e.value.style.chart.legend.roundingValue
415
+ }),
416
+ { datapoint: t, seriesIndex: a }
417
+ ) : ""}${e.value.style.chart.legend.showPercentage ? k.value.includes(t.uid) ? `${e.value.style.chart.legend.showValue ? " (" : ""}- %${e.value.style.chart.legend.showValue ? ")" : ""}` : `${e.value.style.chart.legend.showValue ? " (" : ""}${isNaN(t.value / dt.value) ? "-" : ve({
418
+ v: t.value / dt.value * 100,
419
+ s: "%",
420
+ r: e.value.style.chart.legend.roundingPercentage
421
+ })}${e.value.style.chart.legend.showValue ? ")" : ""}` : ""}`
422
+ }))), dt = g(() => _.value.map((t) => t.subtotal).reduce((t, a) => t + a, 0)), nl = g(() => ({
423
+ cy: "donut-div-legend",
424
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
425
+ color: e.value.style.chart.legend.color,
426
+ fontSize: e.value.style.chart.legend.fontSize,
427
+ paddingBottom: 12,
428
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
429
+ }));
430
+ function Q(t) {
431
+ if (k.value.includes(t))
432
+ k.value = k.value.filter((a) => a !== t), qe("selectLegend", X.value);
433
+ else {
434
+ if (k.value.length === B.value.length - 1) return;
435
+ k.value.push(t), qe("selectLegend", X.value);
436
+ }
437
+ M.value && ct(_.value.find((a, l) => l === K.value));
438
+ }
439
+ function vt(t) {
440
+ if (!B.value.length)
441
+ return e.value.debug && console.warn("VueUiDonutEvolution - There are no series to show."), null;
442
+ const a = B.value.find((l) => l.name === t);
443
+ return a || (e.value.debug && console.warn(`VueUiDonutEvolution - Series name not found "${t}"`), null);
444
+ }
445
+ function rl(t) {
446
+ const a = vt(t);
447
+ a !== null && k.value.includes(a.uid) && Q(a.uid);
448
+ }
449
+ function il(t) {
450
+ const a = vt(t);
451
+ a !== null && (k.value.includes(a.uid) || Q(a.uid));
452
+ }
453
+ const Y = g(() => {
454
+ const t = [""].concat(B.value.filter((o) => !k.value.includes(o.uid)).map((o) => ({
455
+ name: o.name,
456
+ color: o.color
457
+ }))).concat(["Σ"]);
458
+ let a = [];
459
+ for (let o = 0; o < z.value; o += 1) {
460
+ const y = B.value.filter((v) => !k.value.includes(v.uid)).map((v) => v.values[o] ?? 0).reduce((v, x) => v + x, 0);
461
+ a.push([L.value[o] ? L.value[o].text : "-"].concat(B.value.filter((v) => !k.value.includes(v.uid)).map((v) => ({
462
+ value: v.values[o] ?? 0,
463
+ percentage: v.values[o] ? v.values[o] / y * 100 : 0
464
+ }))).concat([`${e.value.style.chart.layout.dataLabels.prefix}${Number(y.toFixed(e.value.table.td.roundingValue))}${e.value.style.chart.layout.dataLabels.suffix}`]));
465
+ }
466
+ const l = {
467
+ th: {
468
+ backgroundColor: e.value.table.th.backgroundColor,
469
+ color: e.value.table.th.color,
470
+ outline: e.value.table.th.outline
471
+ },
472
+ td: {
473
+ backgroundColor: e.value.table.td.backgroundColor,
474
+ color: e.value.table.td.color,
475
+ outline: e.value.table.td.outline
476
+ },
477
+ breakpoint: e.value.table.responsiveBreakpoint
478
+ }, s = [
479
+ e.value.table.columnNames.period
480
+ ].concat(B.value.filter((o) => !k.value.includes(o.uid)).map((o) => o.name)).concat(e.value.table.columnNames.total);
481
+ return { head: t, body: a, config: l, colNames: s };
482
+ });
483
+ function cl() {
484
+ return B.value;
485
+ }
486
+ function Se(t = null) {
487
+ ze(() => {
488
+ const a = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [""]], l = [...Y.value.head.map((v) => v.name ?? v)], s = [...Y.value.body.map((v) => v.map((x) => x.value ?? x))], o = a.concat([l]).concat(s), y = Nl(o);
489
+ t ? t(y) : Rl({ csvContent: y, title: e.value.style.chart.title.text || "vue-ui-donut-evolution" });
490
+ });
491
+ }
492
+ const W = i(!1);
493
+ function ht(t) {
494
+ W.value = t, Pe.value += 1;
495
+ }
496
+ function gt() {
497
+ U.value.showTable = !U.value.showTable;
498
+ }
499
+ const re = i(!1);
500
+ function $e() {
501
+ re.value = !re.value;
502
+ }
503
+ function yt(t) {
504
+ return t.proportion * 100 > e.value.style.chart.donuts.hover.hideLabelsUnderValue;
505
+ }
506
+ const ft = i([]), bt = i({}), De = i(null);
507
+ function dl(t) {
508
+ ft.value = t.donut.map((a) => ({
509
+ name: a.name,
510
+ values: [a.value],
511
+ color: a.color
512
+ })), bt.value = Vl({
513
+ ...e.value.style.chart.dialog.donutChart,
514
+ responsive: !0,
515
+ theme: e.value.theme
516
+ }), De.value && De.value.open();
517
+ }
518
+ async function vl({ scale: t = 2 } = {}) {
519
+ if (!N.value) return;
520
+ const { width: a, height: l } = N.value.getBoundingClientRect(), s = a / l, { imageUri: o, base64: y } = await Kl({ domElement: N.value, base64: !0, img: !0, scale: t });
521
+ return {
522
+ imageUri: o,
523
+ base64: y,
524
+ title: e.value.style.chart.title.text,
525
+ width: a,
526
+ height: l,
527
+ aspectRatio: s
528
+ };
529
+ }
530
+ const hl = g(() => j.value.width), gl = g(() => j.value.height);
531
+ Jl({
532
+ timeLabelsEls: oe,
533
+ timeLabels: L,
534
+ slicer: h,
535
+ configRef: e,
536
+ rotationPath: ["style", "chart", "layout", "grid", "xAxis", "dataLabels", "rotation"],
537
+ autoRotatePath: ["style", "chart", "layout", "grid", "xAxis", "dataLabels", "autoRotate", "enable"],
538
+ isAutoSize: !1,
539
+ width: hl,
540
+ height: gl,
541
+ rotation: e.value.style.chart.layout.grid.xAxis.dataLabels.autoRotate.angle
542
+ });
543
+ const ee = g(() => {
544
+ const t = e.value.table.useDialog && !e.value.table.show, a = U.value.showTable;
545
+ return {
546
+ component: t ? Oe : Mt,
547
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
548
+ props: t ? {
549
+ backgroundColor: e.value.table.th.backgroundColor,
550
+ color: e.value.table.th.color,
551
+ headerColor: e.value.table.th.color,
552
+ headerBg: e.value.table.th.backgroundColor,
553
+ isFullscreen: W.value,
554
+ fullscreenParent: N.value,
555
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
556
+ } : {
557
+ hideDetails: !0,
558
+ config: {
559
+ open: a,
560
+ maxHeight: 1e4,
561
+ body: {
562
+ backgroundColor: e.value.style.chart.backgroundColor,
563
+ color: e.value.style.chart.color
564
+ },
565
+ head: {
566
+ backgroundColor: e.value.style.chart.backgroundColor,
567
+ color: e.value.style.chart.color
568
+ }
569
+ }
570
+ }
571
+ };
572
+ });
573
+ ie(() => U.value.showTable, (t) => {
574
+ e.value.table.show || (t && e.value.table.useDialog && Z.value ? Z.value.open() : "close" in Z.value && Z.value.close());
575
+ });
576
+ function mt() {
577
+ U.value.showTable = !1, be.value && be.value.setTableIconState(!1);
578
+ }
579
+ const yl = g(() => _e.value.map((t) => ({
580
+ ...t,
581
+ name: t.display
582
+ }))), fl = g(() => e.value.style.chart.backgroundColor), bl = g(() => e.value.style.chart.legend), ml = g(() => e.value.style.chart.title), { exportSvg: Cl, getSvg: pl } = jl({
583
+ svg: ke,
584
+ title: ml,
585
+ legend: bl,
586
+ legendItems: yl,
587
+ backgroundColor: fl
588
+ });
589
+ async function Ct({ isCb: t }) {
590
+ if (t) {
591
+ const { blob: a, url: l, text: s, dataUrl: o } = await pl();
592
+ e.value.userOptions.callbacks.svg({ blob: a, url: l, text: s, dataUrl: o });
593
+ } else
594
+ Cl();
595
+ }
596
+ return Rt({
597
+ getData: cl,
598
+ getImage: vl,
599
+ generatePdf: ut,
600
+ generateCsv: Se,
601
+ generateImage: st,
602
+ generateSvg: Ct,
603
+ hideSeries: il,
604
+ showSeries: rl,
605
+ toggleTable: gt,
606
+ toggleAnnotator: $e,
607
+ toggleFullscreen: ht
608
+ }), (t, a) => (u(), n("div", {
609
+ ref_key: "donutEvolutionChart",
610
+ ref: N,
611
+ class: I(`vue-data-ui-component vue-ui-donut-evolution ${W.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
612
+ style: te(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.chart.backgroundColor}`),
613
+ id: T.value,
614
+ onMouseenter: a[5] || (a[5] = () => c(tt)(!0)),
615
+ onMouseleave: a[6] || (a[6] = () => c(tt)(!1))
616
+ }, [
617
+ e.value.userOptions.buttons.annotator ? (u(), E(c(Wt), {
618
+ key: 0,
619
+ svgRef: c(ke),
620
+ backgroundColor: e.value.style.chart.backgroundColor,
621
+ color: e.value.style.chart.color,
622
+ active: re.value,
623
+ onClose: $e
624
+ }, {
625
+ "annotator-action-close": f(() => [
626
+ C(t.$slots, "annotator-action-close", {}, void 0, !0)
627
+ ]),
628
+ "annotator-action-color": f(({ color: l }) => [
629
+ C(t.$slots, "annotator-action-color", O(P({ color: l })), void 0, !0)
630
+ ]),
631
+ "annotator-action-draw": f(({ mode: l }) => [
632
+ C(t.$slots, "annotator-action-draw", O(P({ mode: l })), void 0, !0)
633
+ ]),
634
+ "annotator-action-undo": f(({ disabled: l }) => [
635
+ C(t.$slots, "annotator-action-undo", O(P({ disabled: l })), void 0, !0)
636
+ ]),
637
+ "annotator-action-redo": f(({ disabled: l }) => [
638
+ C(t.$slots, "annotator-action-redo", O(P({ disabled: l })), void 0, !0)
639
+ ]),
640
+ "annotator-action-delete": f(({ disabled: l }) => [
641
+ C(t.$slots, "annotator-action-delete", O(P({ disabled: l })), void 0, !0)
642
+ ]),
643
+ _: 3
644
+ }, 8, ["svgRef", "backgroundColor", "color", "active"])) : d("", !0),
645
+ Qt.value ? (u(), n("div", {
646
+ key: 1,
647
+ ref_key: "noTitle",
648
+ ref: Jt,
649
+ class: "vue-data-ui-no-title-space",
650
+ style: "height:36px; width: 100%;background:transparent"
651
+ }, null, 512)) : d("", !0),
652
+ e.value.style.chart.title.text ? (u(), n("div", {
653
+ key: 2,
654
+ ref_key: "chartTitle",
655
+ ref: He,
656
+ style: "width:100%;background:transparent;padding-bottom:24px",
657
+ onMouseleave: it
658
+ }, [
659
+ (u(), E(Ql, {
660
+ key: `title_${Re.value}`,
661
+ config: {
662
+ title: {
663
+ cy: "donut-evolution-div-title",
664
+ ...e.value.style.chart.title
665
+ },
666
+ subtitle: {
667
+ cy: "donut-evolution-div-subtitle",
668
+ ...e.value.style.chart.title.subtitle
669
+ }
670
+ }
671
+ }, null, 8, ["config"]))
672
+ ], 544)) : d("", !0),
673
+ m("div", {
674
+ id: `legend-top-${T.value}`
675
+ }, null, 8, oa),
676
+ e.value.userOptions.show && Ze.value && (c(lt) || c(xe)) ? (u(), E(c(jt), {
677
+ ref_key: "userOptionsRef",
678
+ ref: be,
679
+ key: `user_options_${Pe.value}`,
680
+ backgroundColor: e.value.style.chart.backgroundColor,
681
+ color: e.value.style.chart.color,
682
+ isPrinting: c(at),
683
+ isImaging: c(ot),
684
+ uid: T.value,
685
+ hasPdf: e.value.userOptions.buttons.pdf,
686
+ hasImg: e.value.userOptions.buttons.img,
687
+ hasSvg: e.value.userOptions.buttons.svg,
688
+ hasXls: e.value.userOptions.buttons.csv,
689
+ hasTable: e.value.userOptions.buttons.table,
690
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
691
+ isFullscreen: W.value,
692
+ titles: { ...e.value.userOptions.buttonTitles },
693
+ chartElement: N.value,
694
+ position: e.value.userOptions.position,
695
+ hasAnnotator: e.value.userOptions.buttons.annotator,
696
+ isAnnotation: re.value,
697
+ callbacks: e.value.userOptions.callbacks,
698
+ printScale: e.value.userOptions.print.scale,
699
+ tableDialog: e.value.table.useDialog,
700
+ onToggleFullscreen: ht,
701
+ onGeneratePdf: c(ut),
702
+ onGenerateCsv: Se,
703
+ onGenerateImage: c(st),
704
+ onGenerateSvg: Ct,
705
+ onToggleTable: gt,
706
+ onToggleAnnotator: $e,
707
+ style: te({
708
+ visibility: c(lt) ? c(xe) ? "visible" : "hidden" : "visible"
709
+ })
710
+ }, kt({ _: 2 }, [
711
+ t.$slots.menuIcon ? {
712
+ name: "menuIcon",
713
+ fn: f(({ isOpen: l, color: s }) => [
714
+ C(t.$slots, "menuIcon", O(P({ isOpen: l, color: s })), void 0, !0)
715
+ ]),
716
+ key: "0"
717
+ } : void 0,
718
+ t.$slots.optionPdf ? {
719
+ name: "optionPdf",
720
+ fn: f(() => [
721
+ C(t.$slots, "optionPdf", {}, void 0, !0)
722
+ ]),
723
+ key: "1"
724
+ } : void 0,
725
+ t.$slots.optionCsv ? {
726
+ name: "optionCsv",
727
+ fn: f(() => [
728
+ C(t.$slots, "optionCsv", {}, void 0, !0)
729
+ ]),
730
+ key: "2"
731
+ } : void 0,
732
+ t.$slots.optionImg ? {
733
+ name: "optionImg",
734
+ fn: f(() => [
735
+ C(t.$slots, "optionImg", {}, void 0, !0)
736
+ ]),
737
+ key: "3"
738
+ } : void 0,
739
+ t.$slots.optionSvg ? {
740
+ name: "optionSvg",
741
+ fn: f(() => [
742
+ C(t.$slots, "optionSvg", {}, void 0, !0)
743
+ ]),
744
+ key: "4"
745
+ } : void 0,
746
+ t.$slots.optionTable ? {
747
+ name: "optionTable",
748
+ fn: f(() => [
749
+ C(t.$slots, "optionTable", {}, void 0, !0)
750
+ ]),
751
+ key: "5"
752
+ } : void 0,
753
+ t.$slots.optionFullscreen ? {
754
+ name: "optionFullscreen",
755
+ fn: f(({ toggleFullscreen: l, isFullscreen: s }) => [
756
+ C(t.$slots, "optionFullscreen", O(P({ toggleFullscreen: l, isFullscreen: s })), void 0, !0)
757
+ ]),
758
+ key: "6"
759
+ } : void 0,
760
+ t.$slots.optionAnnotator ? {
761
+ name: "optionAnnotator",
762
+ fn: f(({ toggleAnnotator: l, isAnnotator: s }) => [
763
+ C(t.$slots, "optionAnnotator", O(P({ toggleAnnotator: l, isAnnotator: s })), void 0, !0)
764
+ ]),
765
+ key: "7"
766
+ } : void 0
767
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasPdf", "hasImg", "hasSvg", "hasXls", "hasTable", "hasFullscreen", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : d("", !0),
768
+ (u(), n("svg", {
769
+ ref_key: "svgRef",
770
+ ref: ke,
771
+ xmlns: c(Tl),
772
+ class: I({ "vue-data-ui-fullscreen--on": W.value, "vue-data-ui-fulscreen--off": !W.value }),
773
+ viewBox: `0 0 ${r.value.absoluteWidth} ${r.value.absoluteHeight}`,
774
+ style: te(`max-width:100%; overflow: visible; background:transparent;color:${e.value.style.chart.color};`)
775
+ }, [
776
+ At(c(Xt)),
777
+ t.$slots["chart-background"] ? (u(), n("foreignObject", {
778
+ key: 0,
779
+ x: r.value.left,
780
+ y: r.value.top,
781
+ width: r.value.width,
782
+ height: r.value.height,
783
+ style: {
784
+ pointerEvents: "none"
785
+ }
786
+ }, [
787
+ C(t.$slots, "chart-background", {}, void 0, !0)
788
+ ], 8, sa)) : d("", !0),
789
+ m("defs", null, [
790
+ m("linearGradient", {
791
+ id: `hover_${T.value}`,
792
+ x1: "0%",
793
+ y1: "0%",
794
+ x2: "0%",
795
+ y2: "100%"
796
+ }, [
797
+ m("stop", {
798
+ offset: "0%",
799
+ "stop-color": c(le)(e.value.style.chart.backgroundColor, e.value.style.chart.layout.highlighter.opacity)
800
+ }, null, 8, ra),
801
+ m("stop", {
802
+ offset: "100%",
803
+ "stop-color": c(le)(e.value.style.chart.layout.highlighter.color, e.value.style.chart.layout.highlighter.opacity)
804
+ }, null, 8, ia)
805
+ ], 8, na),
806
+ m("radialGradient", {
807
+ id: `focus_${T.value}`
808
+ }, [
809
+ m("stop", {
810
+ offset: "0%",
811
+ "stop-color": c(le)(c(Ee)(e.value.style.chart.backgroundColor), 0)
812
+ }, null, 8, da),
813
+ m("stop", {
814
+ offset: "77%",
815
+ "stop-color": c(le)("#FFFFFF", 30)
816
+ }, null, 8, va),
817
+ m("stop", {
818
+ offset: "100%",
819
+ "stop-color": c(le)(c(Ee)(e.value.style.chart.backgroundColor), 0)
820
+ }, null, 8, ha)
821
+ ], 8, ca)
822
+ ]),
823
+ e.value.style.chart.layout.grid.show ? (u(), n("g", ga, [
824
+ m("line", {
825
+ x1: r.value.left,
826
+ x2: r.value.left,
827
+ y1: r.value.top,
828
+ y2: r.value.top + r.value.height,
829
+ stroke: e.value.style.chart.layout.grid.stroke,
830
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
831
+ "stroke-linecap": "round"
832
+ }, null, 8, ya),
833
+ m("line", {
834
+ x1: r.value.left,
835
+ x2: r.value.right,
836
+ y1: r.value.bottom,
837
+ y2: r.value.bottom,
838
+ stroke: e.value.style.chart.layout.grid.stroke,
839
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
840
+ "stroke-linecap": "round"
841
+ }, null, 8, fa),
842
+ e.value.style.chart.layout.grid.showVerticalLines ? (u(), n("g", ba, [
843
+ (u(!0), n($, null, D(h.value.end - h.value.start, (l, s) => (u(), n("line", {
844
+ x1: r.value.left + (s + 1) * w.value,
845
+ x2: r.value.left + (s + 1) * w.value,
846
+ y1: r.value.top,
847
+ y2: r.value.bottom,
848
+ stroke: e.value.style.chart.layout.grid.stroke,
849
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
850
+ "stroke-linecap": "round"
851
+ }, null, 8, ma))), 256))
852
+ ])) : d("", !0)
853
+ ])) : d("", !0),
854
+ m("g", null, [
855
+ e.value.style.chart.layout.grid.axis.yLabel ? (u(), n("text", {
856
+ key: 0,
857
+ ref_key: "yAxisLabel",
858
+ ref: fe,
859
+ "font-size": e.value.style.chart.layout.grid.axis.fontSize,
860
+ fill: e.value.style.chart.layout.grid.axis.color,
861
+ transform: `translate(${e.value.style.chart.layout.grid.axis.fontSize}, ${r.value.top + r.value.height / 2}) rotate(-90)`,
862
+ "text-anchor": "middle",
863
+ style: { transition: "none" }
864
+ }, A(e.value.style.chart.layout.grid.axis.yLabel), 9, Ca)) : d("", !0),
865
+ e.value.style.chart.layout.grid.axis.xLabel ? (u(), n("text", {
866
+ key: 1,
867
+ ref_key: "xAxisLabel",
868
+ ref: ye,
869
+ "text-anchor": "middle",
870
+ x: r.value.absoluteWidth / 2,
871
+ y: r.value.absoluteHeight - 3,
872
+ "font-size": e.value.style.chart.layout.grid.axis.fontSize,
873
+ fill: e.value.style.chart.layout.grid.axis.color
874
+ }, A(e.value.style.chart.layout.grid.axis.xLabel), 9, pa)) : d("", !0)
875
+ ]),
876
+ e.value.style.chart.layout.grid.yAxis.dataLabels.show ? (u(), n("g", {
877
+ key: 2,
878
+ ref_key: "scaleLabels",
879
+ ref: ge,
880
+ class: I({ "donut-opacity": !0, "donut-behind": b.value !== null })
881
+ }, [
882
+ (u(!0), n($, null, D(ol.value, (l, s) => (u(), n("g", null, [
883
+ l.value >= G.value.min && l.value <= G.value.max ? (u(), n("line", {
884
+ key: 0,
885
+ x1: r.value.left,
886
+ x2: r.value.left - 5,
887
+ y1: l.y,
888
+ y2: l.y,
889
+ stroke: e.value.style.chart.layout.grid.stroke,
890
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth
891
+ }, null, 8, xa)) : d("", !0),
892
+ l.value >= G.value.min && l.value <= G.value.max ? (u(), n("text", {
893
+ key: 1,
894
+ x: r.value.left,
895
+ y: l.y + e.value.style.chart.layout.grid.yAxis.dataLabels.fontSize / 3,
896
+ "font-size": e.value.style.chart.layout.grid.yAxis.dataLabels.fontSize,
897
+ "text-anchor": "end",
898
+ fill: e.value.style.chart.layout.grid.yAxis.dataLabels.color,
899
+ "font-weight": e.value.style.chart.layout.grid.yAxis.dataLabels.bold ? "bold" : "normal"
900
+ }, A(c(Bl)(l.value) ? c(Be)(
901
+ e.value.style.chart.layout.dataLabels.formatter,
902
+ l.value,
903
+ c(ve)({
904
+ p: e.value.style.chart.layout.dataLabels.prefix,
905
+ v: l.value,
906
+ s: e.value.style.chart.layout.dataLabels.suffix,
907
+ r: e.value.style.chart.layout.grid.yAxis.dataLabels.roundingValue
908
+ }),
909
+ { datapoint: l, seriesIndex: s }
910
+ ) : ""), 9, ka)) : d("", !0)
911
+ ]))), 256))
912
+ ], 2)) : d("", !0),
913
+ e.value.style.chart.layout.grid.xAxis.dataLabels.show ? (u(), n("g", {
914
+ key: 3,
915
+ ref_key: "timeLabelsEls",
916
+ ref: oe,
917
+ class: I({ "donut-opacity": !0 })
918
+ }, [
919
+ (u(!0), n($, null, D(h.value.end - h.value.start, (l, s) => (u(), n("g", null, [
920
+ (e.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast && (s === 0 || s === z.value - 1) || !e.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast) && L.value[s] && L.value[s].text ? (u(), n("g", Aa, [
921
+ String(L.value[s].text).includes(`
922
+ `) ? (u(), n("text", {
923
+ key: 1,
924
+ class: "vue-data-ui-time-label",
925
+ "text-anchor": e.value.style.chart.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : e.value.style.chart.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
926
+ "font-size": e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
927
+ fill: e.value.style.chart.layout.grid.xAxis.dataLabels.color,
928
+ transform: `translate(${r.value.left + w.value * s + w.value / 2}, ${r.value.bottom + e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize + e.value.style.chart.layout.grid.xAxis.dataLabels.offsetY}), rotate(${e.value.style.chart.layout.grid.xAxis.dataLabels.rotation})`,
929
+ innerHTML: c(Il)({
930
+ content: String(L.value[s].text),
931
+ fontSize: e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
932
+ fill: e.value.style.chart.layout.grid.xAxis.dataLabels.color,
933
+ x: 0,
934
+ y: 0
935
+ })
936
+ }, null, 8, La)) : (u(), n("text", {
937
+ key: 0,
938
+ class: "vue-data-ui-time-label",
939
+ "text-anchor": e.value.style.chart.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : e.value.style.chart.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
940
+ "font-size": e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
941
+ fill: e.value.style.chart.layout.grid.xAxis.dataLabels.color,
942
+ transform: `translate(${r.value.left + w.value * s + w.value / 2}, ${r.value.bottom + e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize + e.value.style.chart.layout.grid.xAxis.dataLabels.offsetY}), rotate(${e.value.style.chart.layout.grid.xAxis.dataLabels.rotation})`
943
+ }, A(L.value[s].text || ""), 9, wa))
944
+ ])) : d("", !0)
945
+ ]))), 256))
946
+ ], 512)) : d("", !0),
947
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("g", null, [
948
+ e.value.style.chart.layout.line.show && s < _.value.length - 1 && ![l.subtotal, _.value[s + 1].subtotal].includes(null) ? (u(), n("line", {
949
+ key: 0,
950
+ class: I({ "donut-opacity": !0, "donut-behind": b.value !== null }),
951
+ x1: l.x,
952
+ y1: l.y,
953
+ x2: _.value[s + 1].x,
954
+ y2: _.value[s + 1].y,
955
+ stroke: e.value.style.chart.layout.line.stroke,
956
+ "stroke-width": e.value.style.chart.layout.line.strokeWidth,
957
+ "stroke-linecap": "round",
958
+ "stroke-linejoin": "round"
959
+ }, null, 10, _a)) : d("", !0),
960
+ l.subtotal !== null ? (u(), n("g", Sa, [
961
+ l.subtotal ? (u(), n("circle", {
962
+ key: 0,
963
+ cx: l.x,
964
+ cy: l.y,
965
+ r: l.activeRadius,
966
+ fill: e.value.style.chart.backgroundColor
967
+ }, null, 8, $a)) : d("", !0)
968
+ ])) : d("", !0)
969
+ ]))), 256)),
970
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("g", {
971
+ class: I({ "donut-opacity": !0, "donut-behind": s !== b.value && b.value !== null })
972
+ }, [
973
+ l.subtotal ? (u(), n("g", Da, [
974
+ b.value !== null && b.value === s ? (u(), n("g", za, [
975
+ (u(!0), n($, null, D(l.donutHover, (o) => (u(), n("g", null, [
976
+ yt(o) ? (u(), n("path", {
977
+ key: 0,
978
+ d: c(Ol)(o, { x: o.center.endX, y: o.center.endY }, 12, 12, { x: l.x, y: l.y }, !1, 20),
979
+ stroke: o.color,
980
+ "stroke-width": "1",
981
+ "stroke-linecap": "round",
982
+ "stroke-linejoin": "round",
983
+ fill: "none"
984
+ }, null, 8, Fa)) : d("", !0)
985
+ ]))), 256)),
986
+ (u(!0), n($, null, D(l.donutHover, (o, y) => (u(), n("g", null, [
987
+ yt(o) ? (u(), n("text", {
988
+ key: 0,
989
+ "data-cy-hover-label": "",
990
+ "text-anchor": c($t)(o, !0, 0).anchor,
991
+ x: c($t)(o, !0, 9).x,
992
+ y: c(Pl)(o, 14, 10),
993
+ fill: e.value.style.chart.layout.grid.yAxis.dataLabels.color,
994
+ "font-size": 8,
995
+ "font-weight": "bold"
996
+ }, A(o.name) + ": " + A(ul(o, l.donut)) + " (" + A(o.value === null ? "-" : rt(o.value, o, y)) + ") ", 9, Ea)) : d("", !0)
997
+ ]))), 256)),
998
+ m("g", null, [
999
+ m("circle", {
1000
+ cx: l.x,
1001
+ cy: l.y,
1002
+ r: l.hoverRadius,
1003
+ fill: e.value.style.chart.backgroundColor
1004
+ }, null, 8, Ta)
1005
+ ])
1006
+ ])) : d("", !0)
1007
+ ])) : d("", !0)
1008
+ ], 2))), 256)),
1009
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("g", {
1010
+ class: I({ "donut-opacity": !0, "donut-behind": s !== b.value && b.value !== null })
1011
+ }, [
1012
+ l.subtotal !== null ? (u(), n("g", Ba, [
1013
+ l.subtotal === 0 ? (u(), n("circle", {
1014
+ key: 0,
1015
+ cx: l.x,
1016
+ cy: l.y,
1017
+ r: 3,
1018
+ fill: e.value.style.chart.color
1019
+ }, null, 8, Ia)) : b.value !== null && b.value === s ? (u(), n("g", Oa, [
1020
+ (u(!0), n($, null, D(l.donutHover, (o, y) => (u(), n("path", {
1021
+ d: o.arcSlice,
1022
+ fill: `${o.color}`,
1023
+ "stroke-width": 1,
1024
+ stroke: e.value.style.chart.backgroundColor
1025
+ }, null, 8, Pa))), 256))
1026
+ ])) : (u(), n("g", Na, [
1027
+ (u(!0), n($, null, D(l.donut, (o, y) => (u(), n("path", {
1028
+ d: o.arcSlice,
1029
+ fill: `${o.color}`,
1030
+ "stroke-width": 0.5,
1031
+ stroke: e.value.style.chart.backgroundColor
1032
+ }, null, 8, Ra))), 256))
1033
+ ]))
1034
+ ])) : d("", !0)
1035
+ ], 2))), 256)),
1036
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("g", {
1037
+ class: I({ "donut-opacity": !0, "donut-behind": s !== b.value && b.value !== null || he.value && s !== M.value.index })
1038
+ }, [
1039
+ l.subtotal !== null && e.value.style.chart.layout.dataLabels.show ? (u(), n("text", {
1040
+ key: 0,
1041
+ "text-anchor": "middle",
1042
+ x: l.x,
1043
+ y: b.value === l.index && l.subtotal ? l.y + e.value.style.chart.layout.dataLabels.fontSize / 3 : l.y - l.radius - e.value.style.chart.layout.dataLabels.fontSize + e.value.style.chart.layout.dataLabels.offsetY,
1044
+ "font-size": e.value.style.chart.layout.dataLabels.fontSize,
1045
+ "font-weight": "bold",
1046
+ fill: e.value.style.chart.layout.dataLabels.color
1047
+ }, A(rt(l.subtotal, l, s)), 9, Va)) : d("", !0)
1048
+ ], 2))), 256)),
1049
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("rect", {
1050
+ x: r.value.left + s * w.value,
1051
+ y: r.value.top,
1052
+ width: w.value,
1053
+ height: r.value.height,
1054
+ fill: [b.value, K.value].includes(l.index) ? `url(#hover_${T.value})` : "transparent",
1055
+ class: I({ "donut-hover": l.subtotal && [b.value, K.value].includes(l.index) }),
1056
+ style: {
1057
+ pointerEvents: "none"
1058
+ }
1059
+ }, null, 10, Ma))), 256)),
1060
+ (u(!0), n($, null, D(_.value, (l, s) => (u(), n("rect", {
1061
+ "data-cy-trap": "",
1062
+ x: r.value.left + s * w.value,
1063
+ y: r.value.top,
1064
+ width: w.value,
1065
+ height: r.value.height,
1066
+ fill: "transparent",
1067
+ onMouseenter: (o) => sl(l),
1068
+ onMouseleave: (o) => it(l),
1069
+ onClick: (o) => ct(l, s),
1070
+ class: I({ "donut-hover": b.value === l.index && l.subtotal })
1071
+ }, null, 42, Ua))), 256)),
1072
+ C(t.$slots, "svg", { svg: r.value }, void 0, !0)
1073
+ ], 14, ua)),
1074
+ t.$slots.watermark ? (u(), n("div", Ha, [
1075
+ C(t.$slots, "watermark", O(P({ isPrinting: c(at) || c(ot) })), void 0, !0)
1076
+ ])) : d("", !0),
1077
+ m("div", {
1078
+ ref_key: "chartSlicer",
1079
+ ref: Ge,
1080
+ style: te(`width:100%;background:${e.value.style.chart.backgroundColor}`),
1081
+ "data-dom-to-png-ignore": ""
1082
+ }, [
1083
+ z.value > 1 && e.value.style.chart.zoom.show ? (u(), E(ta, {
1084
+ ref_key: "slicerComponent",
1085
+ ref: je,
1086
+ key: `slicer_${Ne.value}`,
1087
+ background: e.value.style.chart.zoom.color,
1088
+ borderColor: e.value.style.chart.backgroundColor,
1089
+ fontSize: e.value.style.chart.zoom.fontSize,
1090
+ useResetSlot: e.value.style.chart.zoom.useResetSlot,
1091
+ labelLeft: L.value[0] ? L.value[0].text : "",
1092
+ labelRight: L.value.at(-1) ? L.value.at(-1).text : "",
1093
+ textColor: e.value.style.chart.color,
1094
+ inputColor: e.value.style.chart.zoom.color,
1095
+ selectColor: e.value.style.chart.zoom.highlightColor,
1096
+ max: z.value,
1097
+ min: 0,
1098
+ valueStart: h.value.start,
1099
+ valueEnd: h.value.end,
1100
+ start: h.value.start,
1101
+ "onUpdate:start": a[0] || (a[0] = (l) => h.value.start = l),
1102
+ end: h.value.end,
1103
+ "onUpdate:end": a[1] || (a[1] = (l) => h.value.end = l),
1104
+ refreshStartPoint: e.value.style.chart.zoom.startIndex !== null ? e.value.style.chart.zoom.startIndex : 0,
1105
+ refreshEndPoint: e.value.style.chart.zoom.endIndex !== null ? e.value.style.chart.zoom.endIndex + 1 : z.value,
1106
+ enableRangeHandles: e.value.style.chart.zoom.enableRangeHandles,
1107
+ enableSelectionDrag: e.value.style.chart.zoom.enableSelectionDrag,
1108
+ focusOnDrag: e.value.style.chart.zoom.focusOnDrag,
1109
+ focusRangeRatio: e.value.style.chart.zoom.focusRangeRatio,
1110
+ onReset: et
1111
+ }, {
1112
+ "reset-action": f(({ reset: l }) => [
1113
+ C(t.$slots, "reset-action", O(P({ reset: l })), void 0, !0)
1114
+ ]),
1115
+ _: 3
1116
+ }, 8, ["background", "borderColor", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "max", "valueStart", "valueEnd", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag", "focusOnDrag", "focusRangeRatio"])) : d("", !0)
1117
+ ], 4),
1118
+ m("div", {
1119
+ id: `legend-bottom-${T.value}`
1120
+ }, null, 8, Xa),
1121
+ Ue.value ? (u(), E(Ll, {
1122
+ key: 5,
1123
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${T.value}` : `#legend-bottom-${T.value}`
1124
+ }, [
1125
+ m("div", {
1126
+ ref_key: "chartLegend",
1127
+ ref: Xe
1128
+ }, [
1129
+ e.value.style.chart.legend.show ? (u(), E(ea, {
1130
+ key: `legend_${Me.value}`,
1131
+ legendSet: _e.value,
1132
+ config: nl.value,
1133
+ onClickMarker: a[2] || (a[2] = ({ legend: l }) => Q(l.uid))
1134
+ }, {
1135
+ item: f(({ legend: l, index: s }) => [
1136
+ m("div", {
1137
+ onClick: (o) => Q(l.uid),
1138
+ style: te(`opacity:${k.value.includes(l.uid) ? 0.5 : 1}`)
1139
+ }, A(l.display), 13, Wa)
1140
+ ]),
1141
+ _: 1
1142
+ }, 8, ["legendSet", "config"])) : d("", !0),
1143
+ C(t.$slots, "legend", { legend: _e.value }, void 0, !0)
1144
+ ], 512)
1145
+ ], 8, ["to"])) : d("", !0),
1146
+ t.$slots.source ? (u(), n("div", {
1147
+ key: 6,
1148
+ ref_key: "source",
1149
+ ref: We,
1150
+ dir: "auto"
1151
+ }, [
1152
+ C(t.$slots, "source", {}, void 0, !0)
1153
+ ], 512)) : d("", !0),
1154
+ Ze.value && e.value.userOptions.buttons.table ? (u(), E(_l(ee.value.component), Sl({ key: 7 }, ee.value.props, {
1155
+ ref_key: "tableUnit",
1156
+ ref: Z,
1157
+ onClose: mt
1158
+ }), kt({
1159
+ content: f(() => [
1160
+ (u(), E(c(Ht), {
1161
+ key: `table_${Ve.value}`,
1162
+ colNames: Y.value.colNames,
1163
+ head: Y.value.head,
1164
+ body: Y.value.body,
1165
+ config: Y.value.config,
1166
+ title: e.value.table.useDialog ? "" : ee.value.title,
1167
+ withCloseButton: !e.value.table.useDialog,
1168
+ onClose: mt
1169
+ }, {
1170
+ th: f(({ th: l }) => [
1171
+ Fe(A(l.name ?? l), 1)
1172
+ ]),
1173
+ td: f(({ td: l }) => [
1174
+ l.value === null ? (u(), n("span", ja, "-")) : (u(), n("b", Ga, A(isNaN(l.value) ? "" : e.value.style.chart.layout.dataLabels.prefix) + A(!isNaN(l.value) && l.value !== null ? Number(l.value.toFixed(e.value.table.td.roundingValue)).toLocaleString() : l) + A(isNaN(l.value) ? "" : e.value.style.chart.layout.dataLabels.suffix), 1)),
1175
+ m("span", null, A(l.percentage && !isNaN(l.percentage) ? `(${Number(l.percentage.toFixed(e.value.table.td.roundingPercentage)).toLocaleString()}%)` : ""), 1)
1176
+ ]),
1177
+ _: 1
1178
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
1179
+ ]),
1180
+ _: 2
1181
+ }, [
1182
+ e.value.table.useDialog ? {
1183
+ name: "title",
1184
+ fn: f(() => [
1185
+ Fe(A(ee.value.title), 1)
1186
+ ]),
1187
+ key: "0"
1188
+ } : void 0,
1189
+ e.value.table.useDialog ? {
1190
+ name: "actions",
1191
+ fn: f(() => [
1192
+ m("button", {
1193
+ tabindex: "0",
1194
+ class: "vue-ui-user-options-button",
1195
+ onClick: a[3] || (a[3] = (l) => Se(e.value.userOptions.callbacks.csv))
1196
+ }, [
1197
+ At(c(Ut), {
1198
+ name: "excel",
1199
+ stroke: ee.value.props.color
1200
+ }, null, 8, ["stroke"])
1201
+ ])
1202
+ ]),
1203
+ key: "1"
1204
+ } : void 0
1205
+ ]), 1040)) : d("", !0),
1206
+ e.value.style.chart.dialog.show ? (u(), E(c(Oe), {
1207
+ key: 8,
1208
+ ref_key: "dialog",
1209
+ ref: De,
1210
+ onClose: a[4] || (a[4] = (l) => {
1211
+ M.value = null, he.value = !1, ae.value = null, b.value = null, K.value = null;
1212
+ }),
1213
+ backgroundColor: e.value.style.chart.dialog.backgroundColor,
1214
+ color: e.value.style.chart.dialog.color,
1215
+ headerBg: e.value.style.chart.dialog.header.backgroundColor,
1216
+ headerColor: e.value.style.chart.dialog.header.color,
1217
+ isFullscreen: W.value,
1218
+ fullscreenParent: N.value
1219
+ }, {
1220
+ title: f(() => [
1221
+ Fe(A(L.value[Number(M.value.index)] ? L.value[Number(M.value.index)].text : ""), 1)
1222
+ ]),
1223
+ content: f(() => [
1224
+ M.value ? (u(), E(c(Gt), {
1225
+ key: 0,
1226
+ config: bt.value,
1227
+ dataset: ft.value
1228
+ }, null, 8, ["config", "dataset"])) : d("", !0)
1229
+ ]),
1230
+ _: 1
1231
+ }, 8, ["backgroundColor", "color", "headerBg", "headerColor", "isFullscreen", "fullscreenParent"])) : d("", !0),
1232
+ c(Ke) ? (u(), E(Wl, { key: 9 })) : d("", !0)
1233
+ ], 46, aa));
1234
+ }
1235
+ }, qa = /* @__PURE__ */ la(Ya, [["__scopeId", "data-v-16fd91e0"]]), yo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1236
+ __proto__: null,
1237
+ default: qa
1238
+ }, Symbol.toStringTag, { value: "Module" }));
1239
+ export {
1240
+ go as a,
1241
+ yo as b,
1242
+ qa as v
1243
+ };