vue-data-ui 3.6.0 → 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 +26 -26
  2. package/dist/{Arrow-BGVin3AS.js → Arrow-CWYIBV-7.js} +1 -1
  3. package/dist/{BaseDraggableDialog-DhKIof09.js → BaseDraggableDialog-CRF94NJQ.js} +2 -2
  4. package/dist/{BaseIcon-DLFL0M4-.js → BaseIcon-CofSxalQ.js} +1 -1
  5. package/dist/{ColorPicker-CjIJvLdc.js → ColorPicker-e1-OSGlQ.js} +10 -10
  6. package/dist/{DataTable-UCyd_BQI.js → DataTable-CHaOCmsE.js} +2 -2
  7. package/dist/{Legend-D9ZTJKjh.js → Legend-Web3GjlR.js} +2 -2
  8. package/dist/{NonSvgPenAndPaper-a2UzZL0y.js → NonSvgPenAndPaper-CjYFLlns.js} +3 -3
  9. package/dist/{PackageVersion-D_4Hr4S4.js → PackageVersion-Bq_mtsqr.js} +1 -1
  10. package/dist/{PenAndPaper-BJSMejV9.js → PenAndPaper-HCZQTkqi.js} +20 -20
  11. package/dist/{Shape-CNXKB8O0.js → Shape-DE6X_t31.js} +3 -3
  12. package/dist/{Slicer-CJfhtoVn.js → Slicer-BFBBG6xv.js} +23 -23
  13. package/dist/{SlicerPreview-wXjV4LWO.js → SlicerPreview-D76aSViW.js} +2 -2
  14. package/dist/{SparkTooltip-BEewz-_Q.js → SparkTooltip-B2rpVWE1.js} +6 -6
  15. package/dist/{Title-Bb1VWCtR.js → Title-DfFUb9hd.js} +1 -1
  16. package/dist/{Tooltip-oWCO1HKy.js → Tooltip-WD0Ros6G.js} +1 -1
  17. package/dist/{UserOptions-BqmUW9Kp.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 +1 -1
  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 +1 -0
  90. package/dist/{useAutoSizeLabelsInsideViewbox-BhzfwQ_k.js → useAutoSizeLabelsInsideViewbox-DOALwU4q.js} +7 -7
  91. package/dist/{useNestedProp-CIoDlpHu.js → useNestedProp-CWo6bftQ.js} +1 -1
  92. package/dist/{usePrinter-DTzqpYKF.js → usePrinter-DCJzEiS8.js} +2 -2
  93. package/dist/useThemeCheck-DGJ31Vi5.js +32 -0
  94. package/dist/{useTimeLabels-BGFjWgrv.js → useTimeLabels-C5qMhpbe.js} +50 -49
  95. package/dist/{vue-data-ui-BWuOXu_s.js → vue-data-ui-ByLTJx5V.js} +78 -78
  96. package/dist/vue-data-ui.js +225 -205
  97. package/dist/{vue-ui-3d-bar-BNQAuLqF.js → vue-ui-3d-bar-Dkds4k5N.js} +546 -517
  98. package/dist/{vue-ui-accordion-SSLXLlNz.js → vue-ui-accordion-DSdZUn2C.js} +3 -3
  99. package/dist/vue-ui-age-pyramid-C-fwZRYE.js +960 -0
  100. package/dist/{vue-ui-annotator-34Ld0u5M.js → vue-ui-annotator-DRaH8hXn.js} +7 -7
  101. package/dist/vue-ui-bullet-BKVJRjGh.js +657 -0
  102. package/dist/{vue-ui-candlestick-BcChw-8c.js → vue-ui-candlestick-BKFWHU4O.js} +596 -561
  103. package/dist/{vue-ui-carousel-table-Cp_od0lI.js → vue-ui-carousel-table-VmPH6y2g.js} +48 -48
  104. package/dist/{vue-ui-chestnut-DTaIsP72.js → vue-ui-chestnut-DpMHe-OI.js} +534 -505
  105. package/dist/vue-ui-chord-Djdr0PY_.js +1182 -0
  106. package/dist/vue-ui-circle-pack-CyUqNJQt.js +832 -0
  107. package/dist/{vue-ui-cursor-lW-dVs_k.js → vue-ui-cursor-BMe8ZiV6.js} +2 -2
  108. package/dist/{vue-ui-dashboard-DIymn9Cx.js → vue-ui-dashboard-eBXj-KCw.js} +140 -140
  109. package/dist/{vue-ui-digits-YHA3fA0j.js → vue-ui-digits-D382I0-w.js} +2 -2
  110. package/dist/{vue-ui-donut-BaDmbWLh.js → vue-ui-donut-BLb0kj_P.js} +634 -602
  111. package/dist/vue-ui-donut-evolution-BqrldXpI.js +1243 -0
  112. package/dist/vue-ui-dumbbell-BuZT5a-d.js +1258 -0
  113. package/dist/vue-ui-flow-LLp6ntEP.js +1026 -0
  114. package/dist/vue-ui-funnel-pILUR-OG.js +743 -0
  115. package/dist/vue-ui-galaxy-X6yiw8kx.js +837 -0
  116. package/dist/vue-ui-gauge-DBh-vFb9.js +864 -0
  117. package/dist/{vue-ui-gizmo-E33_xZte.js → vue-ui-gizmo-DtyEukIP.js} +3 -3
  118. package/dist/{vue-ui-heatmap-DJXMvFPp.js → vue-ui-heatmap-mkD6QkXo.js} +501 -466
  119. package/dist/vue-ui-history-plot-CyTaBaxA.js +1239 -0
  120. package/dist/{vue-ui-kpi-C-XuLBVQ.js → vue-ui-kpi-CKMZDc3n.js} +3 -3
  121. package/dist/{vue-ui-mini-loader-DawncJvl.js → vue-ui-mini-loader-BN72OfS0.js} +2 -2
  122. package/dist/vue-ui-molecule-UzQ3o5HW.js +782 -0
  123. package/dist/vue-ui-mood-radar-C2zkRLGy.js +930 -0
  124. package/dist/vue-ui-nested-donuts-B5OpvmJ9.js +1454 -0
  125. package/dist/vue-ui-onion-DbhIOGtF.js +944 -0
  126. package/dist/vue-ui-parallel-coordinate-plot-Dv_T4mWW.js +1080 -0
  127. package/dist/{vue-ui-quadrant-B2bLWyCm.js → vue-ui-quadrant-CG6_CWsQ.js} +510 -481
  128. package/dist/{vue-ui-quick-chart-J_RmCwI_.js → vue-ui-quick-chart-DOeRhk7r.js} +795 -758
  129. package/dist/vue-ui-radar-DdHa9Hsh.js +1013 -0
  130. package/dist/{vue-ui-rating-CBS8zaQd.js → vue-ui-rating-DtzmtJwF.js} +26 -26
  131. package/dist/vue-ui-relation-circle-B5lL4l9w.js +670 -0
  132. package/dist/vue-ui-ridgeline-3pk4Mlft.js +1302 -0
  133. package/dist/vue-ui-rings-DhyrjrZi.js +884 -0
  134. package/dist/vue-ui-scatter-DKCD70mi.js +1619 -0
  135. package/dist/{vue-ui-skeleton-DsrlMELy.js → vue-ui-skeleton-CzzdmraB.js} +3 -3
  136. package/dist/{vue-ui-smiley-P_8WIBDD.js → vue-ui-smiley-OYyM-ukP.js} +2 -2
  137. package/dist/vue-ui-spark-trend-BMTcxeCT.js +364 -0
  138. package/dist/vue-ui-sparkbar-DVk1JiPL.js +381 -0
  139. package/dist/vue-ui-sparkgauge-Cq9Nw_xu.js +260 -0
  140. package/dist/vue-ui-sparkhistogram-PFHlCE_k.js +411 -0
  141. package/dist/vue-ui-sparkline-BHHwO_cV.js +549 -0
  142. package/dist/vue-ui-sparkstackbar-BosVkkiC.js +470 -0
  143. package/dist/vue-ui-stackbar-Djk5CPUy.js +1867 -0
  144. package/dist/vue-ui-stackline-mU4CSol9.js +1963 -0
  145. package/dist/{vue-ui-strip-plot-CTtivaxm.js → vue-ui-strip-plot-CZQSL0GK.js} +343 -314
  146. package/dist/{vue-ui-table-CHt3AQiq.js → vue-ui-table-DMM090pe.js} +5 -5
  147. package/dist/vue-ui-table-heatmap-vQEFrjCX.js +307 -0
  148. package/dist/{vue-ui-table-sparkline-D5MckwMl.js → vue-ui-table-sparkline-CQJc0mJY.js} +292 -263
  149. package/dist/vue-ui-thermometer-D1uxoVeZ.js +613 -0
  150. package/dist/{vue-ui-timer-B-Xa6ALH.js → vue-ui-timer-jTnS3ES5.js} +25 -25
  151. package/dist/vue-ui-tiremarks-Bv-oIFVV.js +477 -0
  152. package/dist/vue-ui-treemap-B9MVtunp.js +1359 -0
  153. package/dist/{vue-ui-vertical-bar-D9XQe_ud.js → vue-ui-vertical-bar-BSbDj5qZ.js} +520 -485
  154. package/dist/{vue-ui-waffle-Bk98w86A.js → vue-ui-waffle-DIALVfvc.js} +376 -347
  155. package/dist/vue-ui-wheel-aUhrFpGk.js +690 -0
  156. package/dist/vue-ui-word-cloud-DZmMWsUu.js +904 -0
  157. package/dist/{vue-ui-world-xOY__pp8.js → vue-ui-world-CVLlgp2f.js} +57 -57
  158. package/dist/vue-ui-xy-Cy7mOurZ.js +3455 -0
  159. package/dist/vue-ui-xy-canvas-Cr13t9M5.js +1599 -0
  160. package/dist/vue_ui_vertical_bar-CELc39b8.js +18 -0
  161. package/package.json +5 -5
  162. package/dist/themes-DH-N_ePR.js +0 -54
  163. package/dist/vue-ui-age-pyramid-DsOlpJBh.js +0 -933
  164. package/dist/vue-ui-bullet-Ci4lO4_W.js +0 -630
  165. package/dist/vue-ui-chord-BKC--Nbq.js +0 -1153
  166. package/dist/vue-ui-circle-pack-B3sfU0Vo.js +0 -803
  167. package/dist/vue-ui-donut-evolution-BqUzmyW2.js +0 -1208
  168. package/dist/vue-ui-dumbbell-CWKTrzsm.js +0 -1231
  169. package/dist/vue-ui-flow-SMbuDPdL.js +0 -991
  170. package/dist/vue-ui-funnel-3fRlMBzq.js +0 -716
  171. package/dist/vue-ui-galaxy-CFZ1xYD5.js +0 -808
  172. package/dist/vue-ui-gauge-DJpbjfpL.js +0 -835
  173. package/dist/vue-ui-history-plot-CvPMx5Lg.js +0 -1204
  174. package/dist/vue-ui-molecule-CasngKZI.js +0 -753
  175. package/dist/vue-ui-mood-radar-DGz2TQi4.js +0 -903
  176. package/dist/vue-ui-nested-donuts-Bjjz2sWG.js +0 -1419
  177. package/dist/vue-ui-onion-DwTIY6i1.js +0 -915
  178. package/dist/vue-ui-parallel-coordinate-plot-DedxvtPN.js +0 -1051
  179. package/dist/vue-ui-radar-D1rz2RnH.js +0 -984
  180. package/dist/vue-ui-relation-circle-DUfRwwo1.js +0 -641
  181. package/dist/vue-ui-ridgeline-DKPWMWRc.js +0 -1273
  182. package/dist/vue-ui-rings-BY0EQGLb.js +0 -855
  183. package/dist/vue-ui-scatter-ky9p5Pgh.js +0 -1590
  184. package/dist/vue-ui-spark-trend-DkJn_3FI.js +0 -337
  185. package/dist/vue-ui-sparkbar-qB1fmgej.js +0 -352
  186. package/dist/vue-ui-sparkgauge-BezFN_Rc.js +0 -233
  187. package/dist/vue-ui-sparkhistogram-DGt5b8FR.js +0 -384
  188. package/dist/vue-ui-sparkline-D7Wx1ejg.js +0 -514
  189. package/dist/vue-ui-sparkstackbar-DtO7-yim.js +0 -441
  190. package/dist/vue-ui-stackbar-Dr48I48D.js +0 -1832
  191. package/dist/vue-ui-stackline-Juns5Yh4.js +0 -1928
  192. package/dist/vue-ui-table-heatmap-Cn-56b5F.js +0 -282
  193. package/dist/vue-ui-thermometer-BOidpwAZ.js +0 -584
  194. package/dist/vue-ui-tiremarks-BsTyVS2P.js +0 -450
  195. package/dist/vue-ui-treemap-BWTaY91B.js +0 -1330
  196. package/dist/vue-ui-wheel-nj73b_Dc.js +0 -663
  197. package/dist/vue-ui-word-cloud-Dcaogr-D.js +0 -875
  198. package/dist/vue-ui-xy-BT67faLv.js +0 -3424
  199. package/dist/vue-ui-xy-canvas-BoB7-4QK.js +0 -1564
@@ -0,0 +1,1454 @@
1
+ import { defineAsyncComponent as z, computed as k, ref as v, toRefs as Cl, watch as ae, onMounted as kl, shallowRef as kt, onBeforeUnmount as wl, createElementBlock as r, openBlock as n, unref as i, normalizeStyle as he, normalizeClass as M, createBlock as U, createCommentVNode as L, createElementVNode as g, createVNode as Pe, withCtx as p, renderSlot as y, normalizeProps as O, guardReactiveProps as N, createSlots as wt, Fragment as x, renderList as F, toDisplayString as P, withDirectives as At, vShow as $t, Teleport as Al, resolveDynamicComponent as $l, mergeProps as Ll, createTextVNode as Lt, nextTick as _t } from "vue";
2
+ import { c as _l, t as xl, i as Fl, p as Ve, W as Be, o as Sl, g as J, j as Tl, a5 as R, l as Dl, Z as ze, a as oe, d as D, X as Ol, s as Nl, S as xt, $ as Me, a0 as K, x as Ft, u as Il, q as El, R as Pl, a4 as St, M as Ue } from "./lib-C5BH09_g.js";
3
+ import { t as Vl, u as Bl } from "./useResponsive-DfdjqQps.js";
4
+ import { u as zl, a as Re } from "./useNestedProp-CWo6bftQ.js";
5
+ import { u as Ml, B as Ul } from "./BaseScanner-BgWxam9d.js";
6
+ import { u as Rl } from "./usePrinter-DCJzEiS8.js";
7
+ import { u as Gl } from "./useSvgExport-DrjCWun4.js";
8
+ import { u as Yl } from "./useThemeCheck-DGJ31Vi5.js";
9
+ import { u as Wl } from "./useUserOptionState-BIvW1Kz7.js";
10
+ import { u as Xl } from "./useChartAccessibility-9icAAmYg.js";
11
+ import ql from "./img-DUzJeMlr.js";
12
+ import Hl from "./Title-DfFUb9hd.js";
13
+ import jl from "./Legend-Web3GjlR.js";
14
+ import { _ as Zl } from "./_plugin-vue_export-helper-CHgC5LLL.js";
15
+ const Tt = { style: { chart: { backgroundColor: "#1A1A1A", color: "#CCCCCC", layout: { donut: { emptyFill: "#3A3A3A" }, labels: { dataLabels: { 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" } } }, Dt = { style: { chart: { backgroundColor: "#FFF8E1", color: "#424242", layout: { labels: { dataLabels: { color: "#424242" } } }, legend: { backgroundColor: "#FFF8E1", color: "#424242" }, title: { color: "#424242", subtitle: { color: "#757575" } }, tooltip: { backgroundColor: "#FFECB3", backgroundOpacity: 30, color: "#424242", borderColor: "#FF8A65" } } }, table: { th: { backgroundColor: "#FFF8E1", color: "#424242" }, td: { backgroundColor: "#FFF8E1", color: "#424242" } } }, Ot = { style: { chart: { backgroundColor: "#1E1E1E", color: "#BDBDBD", layout: { labels: { dataLabels: { color: "#BDBDBD" } } }, legend: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, title: { color: "#FFF8E1", subtitle: { color: "#BDBDBD" } }, tooltip: { backgroundColor: "#1E1E1E", backgroundOpacity: 30, color: "#FFF8E1", borderColor: "#FF8A65" } } }, table: { th: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, td: { backgroundColor: "#1E1E1E", color: "#BDBDBD" } } }, Nt = { style: { chart: { backgroundColor: "#1A1A1A", color: "#99AA99", layout: { labels: { dataLabels: { color: "#AACCAA" } } }, legend: { backgroundColor: "#1A1A1A", color: "#99AA99" }, title: { color: "#66CC66", subtitle: { color: "#99AA99" } }, tooltip: { backgroundColor: "#2A2F2A", color: "#AACCAA", borderColor: "#66CC66" } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#99AA99" }, td: { backgroundColor: "#1A1A1A", color: "#AACCAA" } } }, It = { style: { chart: { backgroundColor: "#fbfafa", color: "#8A9892", layout: { labels: { dataLabels: { color: "#A0AC94" } } }, legend: { backgroundColor: "#fbfafa", color: "#99AA99" }, title: { color: "#8A9892", subtitle: { color: "#99AA99" } }, tooltip: { backgroundColor: "#fbfafa", color: "#8A9892" } } }, table: { th: { backgroundColor: "#fbfafa", color: "#8F837A" }, td: { backgroundColor: "#fbfafa", color: "#8F837A" } } }, Et = { style: { chart: { backgroundColor: "#f6f6fb", color: "#50606C", layout: { labels: { dataLabels: { color: "#61747E" } } }, legend: { backgroundColor: "#f6f6fb", color: "#61747E" }, title: { color: "#50606C", subtitle: { color: "#718890" } }, tooltip: { backgroundColor: "#f6f6fb", color: "#50606C" } } }, table: { th: { backgroundColor: "#f6f6fb", color: "#50606C" }, td: { backgroundColor: "#f6f6fb", color: "#50606C" } } }, Pt = {
16
+ default: {},
17
+ dark: Tt,
18
+ celebration: Dt,
19
+ celebrationNight: Ot,
20
+ hack: Nt,
21
+ zen: It,
22
+ concrete: Et
23
+ }, Ya = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
24
+ __proto__: null,
25
+ celebration: Dt,
26
+ celebrationNight: Ot,
27
+ concrete: Et,
28
+ dark: Tt,
29
+ default: Pt,
30
+ hack: Nt,
31
+ zen: It
32
+ }, Symbol.toStringTag, { value: "Module" })), Jl = ["id"], Kl = ["id"], Ql = ["xmlns", "viewBox"], ea = ["width", "height"], ta = ["id"], la = ["offset", "stop-color"], aa = ["offset", "stop-opacity"], oa = ["id"], sa = ["id"], na = ["id"], ua = ["flood-color"], ra = ["id", "d"], ia = ["d", "fill", "stroke", "stroke-width", "filter"], da = ["d", "fill", "stroke", "stroke-width"], ca = { key: 1 }, va = ["d", "fill"], ha = { key: 2 }, fa = ["font-size", "font-weight", "fill", "dy"], ba = ["href"], ga = ["x", "y", "font-size", "font-weight", "fill"], pa = { key: 3 }, ya = ["filter"], ma = ["opacity", "text-anchor", "x", "y", "fill", "font-size", "font-weight"], Ca = ["opacity", "text-anchor", "x", "y", "fill", "font-size", "font-weight"], ka = ["text-anchor", "x", "y", "fill", "font-size", "font-weight"], wa = ["d", "fill", "onMouseenter", "onClick", "onMouseleave"], Aa = {
33
+ key: 4,
34
+ class: "vue-data-ui-watermark"
35
+ }, $a = ["id"], La = {
36
+ key: 0,
37
+ class: "vue-ui-nested-donuts-legend-title"
38
+ }, _a = ["onClick"], xa = ["innerHTML"], Fa = {
39
+ __name: "vue-ui-nested-donuts",
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", "selectDatapoint"],
55
+ setup(Vt, { expose: Bt, emit: zt }) {
56
+ const Mt = z(() => import("./Tooltip-WD0Ros6G.js")), Ut = z(() => import("./BaseIcon-CofSxalQ.js")), Rt = z(() => import("./vue-ui-accordion-DSdZUn2C.js")), Gt = z(() => import("./DataTable-CHaOCmsE.js")), Yt = z(() => import("./UserOptions-B3I-s3Lw.js")), Wt = z(() => import("./PenAndPaper-HCZQTkqi.js")), Xt = z(() => import("./PackageVersion-Bq_mtsqr.js")), qt = z(() => import("./BaseDraggableDialog-CRF94NJQ.js")), { vue_ui_nested_donuts: Ht } = zl(), { isThemeValid: jt, warnInvalidTheme: Zt } = Yl(), w = Vt, fe = k({
57
+ get() {
58
+ return !!w.dataset && w.dataset.length;
59
+ },
60
+ set(t) {
61
+ return t;
62
+ }
63
+ }), b = v(_l()), be = v(!1), ge = v(""), pe = v(null), Ge = v(0), I = v(null), Ye = v(null), ye = v(null), We = v(null), Xe = v(null), qe = v(0), He = v(0), je = v(0), G = v(!0), Y = v([]), Q = v([]), Ze = v(!1), ee = v(null), me = v(null), W = v(!1);
64
+ function Je(t) {
65
+ W.value = t, Ge.value += 1;
66
+ }
67
+ const e = v(Ae()), Ke = {
68
+ name: "",
69
+ series: [
70
+ {
71
+ name: "",
72
+ values: [3],
73
+ color: "#BABABA"
74
+ },
75
+ {
76
+ name: "",
77
+ values: [2],
78
+ color: "#AAAAAA"
79
+ },
80
+ {
81
+ name: "",
82
+ values: [1],
83
+ color: "#CACACA"
84
+ }
85
+ ]
86
+ }, { loading: Ce, FINAL_DATASET: X, manualLoading: ke } = Ml({
87
+ ...Cl(w),
88
+ FINAL_CONFIG: e,
89
+ prepareConfig: Ae,
90
+ callback: () => {
91
+ Promise.resolve().then(async () => {
92
+ await lt();
93
+ });
94
+ },
95
+ skeletonDataset: [Ke, Ke],
96
+ skeletonConfig: xl({
97
+ defaultConfig: e.value,
98
+ userConfig: {
99
+ useCssAnimation: !1,
100
+ table: { show: !1 },
101
+ startAnimation: { show: !1 },
102
+ userOptions: { show: !1 },
103
+ style: {
104
+ chart: {
105
+ backgroundColor: "#99999930",
106
+ layout: {
107
+ labels: {
108
+ dataLabels: { show: !1 }
109
+ }
110
+ },
111
+ legend: { backgroundColor: "transparent", showValue: !1, showPercentage: !1 },
112
+ title: {
113
+ color: "#1A1A1A",
114
+ subtitle: {
115
+ color: "#5A5A5A"
116
+ }
117
+ }
118
+ }
119
+ }
120
+ }
121
+ })
122
+ }), { userOptionsVisible: we, setUserOptionsVisibility: Qe, keepUserOptionState: et } = Wl({ config: e.value }), { svgRef: te } = Xl({
123
+ config: e.value.style.chart.title
124
+ });
125
+ function Ae() {
126
+ const t = Re({
127
+ userConfig: w.config,
128
+ defaultConfig: Ht
129
+ });
130
+ let s = {};
131
+ const a = t.theme;
132
+ if (a)
133
+ if (!jt.value(t))
134
+ Zt(t), s = t;
135
+ else {
136
+ const o = Re({
137
+ userConfig: Pt[a] || w.config,
138
+ defaultConfig: t
139
+ });
140
+ s = {
141
+ ...Re({
142
+ userConfig: w.config,
143
+ defaultConfig: o
144
+ }),
145
+ customPalette: t.customPalette.length ? t.customPalette : Fl[a] || Ve
146
+ };
147
+ }
148
+ else
149
+ s = t;
150
+ return w.config && Be(w.config, "events.datapointEnter") ? s.events.datapointEnter = w.config.events.datapointEnter : s.events.datapointEnter = null, w.config && Be(w.config, "events.datapointLeave") ? s.events.datapointLeave = w.config.events.datapointLeave : s.events.datapointLeave = null, w.config && Be(w.config, "events.datapointClick") ? s.events.datapointClick = w.config.events.datapointClick : s.events.datapointClick = null, s;
151
+ }
152
+ ae(
153
+ () => w.config,
154
+ (t) => {
155
+ Ce.value || (e.value = Ae()), we.value = !e.value.userOptions.showOnChartHover, at(), qe.value += 1, He.value += 1, je.value += 1, _.value.dataLabels.show = e.value.style.chart.layout.labels.dataLabels.show, _.value.showTable = e.value.table.show, _.value.showTooltip = e.value.style.chart.tooltip.show, h.value.width = e.value.style.chart.width, h.value.height = e.value.style.chart.height;
156
+ },
157
+ { deep: !0 }
158
+ );
159
+ const tt = k(() => {
160
+ const { top: t, right: s, bottom: a, left: o } = e.value.style.chart.padding;
161
+ return {
162
+ css: `padding:${t}px ${s}px ${a}px ${o}px`,
163
+ top: t,
164
+ right: s,
165
+ bottom: a,
166
+ left: o
167
+ };
168
+ });
169
+ function Jt(t, s = 1e3, a = 50) {
170
+ return new Promise((o) => {
171
+ const l = t.length;
172
+ Y.value = Array(l).fill(0), Q.value = [];
173
+ let u = 0;
174
+ t.forEach((c, f) => {
175
+ setTimeout(() => {
176
+ const A = performance.now();
177
+ function d(m) {
178
+ const S = Math.min((m - A) / s, 1), Se = St(S), Te = c * Se;
179
+ Y.value[f] = Te, Y.value = [...Y.value];
180
+ const ce = [];
181
+ let De = 0;
182
+ w.dataset.forEach((ve, Oe) => {
183
+ const gl = Ue(ve.series.reduce(
184
+ (Ie, Ee) => Ie + Ue(R(Ee.values).reduce((yl, ml) => yl + ml, 0)),
185
+ 0
186
+ )), pl = Ue(Y.value.slice(De, De + ve.series.length).reduce((Ie, Ee) => Ie + Ee, 0)), Ne = gl - pl;
187
+ Ne > Number.MIN_VALUE && ce.push({
188
+ name: "__ghost__",
189
+ arcOf: ve.name,
190
+ arcOfId: `${b.value}_${Oe}`,
191
+ id: `ghost_${b.value}_${Oe}`,
192
+ seriesIndex: -1,
193
+ datasetIndex: Oe,
194
+ color: "transparent",
195
+ value: Ne,
196
+ fullValue: Ne,
197
+ absoluteValues: [],
198
+ ghost: !0
199
+ }), De += ve.series.length;
200
+ }), Q.value = ce, S < 1 ? requestAnimationFrame(d) : (u += 1, u === l && o());
201
+ }
202
+ requestAnimationFrame(d);
203
+ }, f * a);
204
+ });
205
+ });
206
+ }
207
+ async function lt() {
208
+ if (e.value.startAnimation?.show) {
209
+ const s = X.value.flatMap((a) => a.series).map(
210
+ (a) => R(a.values).reduce((o, l) => o + l, 0)
211
+ );
212
+ Y.value = s.map(() => 0), G.value = !0, Q.value = X.value.map((a, o) => {
213
+ const l = a.series.reduce(
214
+ (u, c) => u + R(c.values).reduce((f, A) => f + A, 0),
215
+ 0
216
+ );
217
+ return {
218
+ name: "__ghost__",
219
+ arcOf: a.name,
220
+ arcOfId: `${b.value}_${o}`,
221
+ id: `ghost_${b.value}_${o}`,
222
+ seriesIndex: -1,
223
+ datasetIndex: o,
224
+ color: "transparent",
225
+ value: l,
226
+ fullValue: l,
227
+ absoluteValues: [],
228
+ ghost: !0
229
+ };
230
+ }), await _t(), Jt(
231
+ s,
232
+ e.value.startAnimation.durationMs,
233
+ e.value.startAnimation.staggerMs
234
+ ).then(() => {
235
+ G.value = !1, Q.value = [];
236
+ });
237
+ } else
238
+ G.value = !1;
239
+ }
240
+ kl(async () => {
241
+ Ze.value = !0, at(), await lt();
242
+ });
243
+ const V = kt(null), H = kt(null), j = k(() => !!e.value.debug);
244
+ function at() {
245
+ if (Sl(w.dataset) ? (J({
246
+ componentName: "VueUiNestedDonuts",
247
+ type: "dataset",
248
+ debug: j.value
249
+ }), fe.value = !1, ke.value = !0) : ke.value = e.value.loading, e.value.responsive) {
250
+ const t = Vl(() => {
251
+ const { width: s, height: a } = Bl({
252
+ chart: I.value,
253
+ title: e.value.style.chart.title.text ? Ye.value : null,
254
+ legend: e.value.style.chart.legend.show ? ye.value : null,
255
+ source: We.value,
256
+ noTitle: Xe.value,
257
+ padding: tt.value
258
+ });
259
+ requestAnimationFrame(() => {
260
+ h.value.width = s, h.value.height = a;
261
+ });
262
+ });
263
+ V.value && (H.value && V.value.unobserve(H.value), V.value.disconnect()), V.value = new ResizeObserver(t), H.value = I.value.parentNode, V.value.observe(H.value);
264
+ }
265
+ }
266
+ wl(() => {
267
+ V.value && (H.value && V.value.unobserve(H.value), V.value.disconnect());
268
+ });
269
+ const { isPrinting: ot, isImaging: st, generatePdf: nt, generateImage: ut } = Rl({
270
+ elementId: `nested_donuts_${b.value}`,
271
+ fileName: e.value.style.chart.title.text || "vue-ui-nested-donuts",
272
+ options: e.value.userOptions.print
273
+ }), Kt = k(() => e.value.userOptions.show && !e.value.style.chart.title.text), Qt = k(() => Tl(e.value.customPalette)), _ = v({
274
+ dataLabels: {
275
+ show: e.value.style.chart.layout.labels.dataLabels.show
276
+ },
277
+ showTable: e.value.table.show,
278
+ showTooltip: e.value.style.chart.tooltip.show
279
+ });
280
+ ae(e, () => {
281
+ _.value = {
282
+ dataLabels: {
283
+ show: e.value.style.chart.layout.labels.dataLabels.show
284
+ },
285
+ showTable: e.value.table.show,
286
+ showTooltip: e.value.style.chart.tooltip.show
287
+ };
288
+ }, { immediate: !0 });
289
+ const h = v({
290
+ width: e.value.style.chart.width,
291
+ height: e.value.style.chart.height
292
+ }), rt = zt;
293
+ function el({ datapoint: t, index: s, seriesIndex: a }) {
294
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: a }), rt("selectDatapoint", { datapoint: t, index: s });
295
+ }
296
+ function it({
297
+ from: t,
298
+ to: s,
299
+ duration: a,
300
+ onUpdate: o,
301
+ onDone: l,
302
+ easing: u = St
303
+ }) {
304
+ const c = performance.now();
305
+ function f(A) {
306
+ const d = Math.min((A - c) / a, 1), m = u(d), S = t + (s - t) * m;
307
+ o(S, d), d < 1 ? requestAnimationFrame(f) : (o(s, 1), l && l());
308
+ }
309
+ requestAnimationFrame(f);
310
+ }
311
+ const C = v([]), T = k(() => {
312
+ Ce.value, X.value.forEach((s, a) => {
313
+ [null, void 0].includes(s.name) && J({
314
+ componentName: "VueUiNestedDonuts",
315
+ type: "datasetSerieAttribute",
316
+ property: "name",
317
+ index: a,
318
+ debug: j.value
319
+ }), [null, void 0].includes(s.series) ? J({
320
+ componentName: "VueUiNestedDonuts",
321
+ type: "datasetSerieAttribute",
322
+ property: "series",
323
+ index: a,
324
+ debug: j.value
325
+ }) : s.series.length === 0 ? J({
326
+ componentName: "VueUiNestedDonuts",
327
+ type: "datasetAttributeEmpty",
328
+ property: `series at index ${a}`,
329
+ debug: j.value
330
+ }) : s.series.forEach((o, l) => {
331
+ [null, void 0].includes(o.name) && J({
332
+ componentName: "VueUiNestedDonuts",
333
+ type: "datasetSerieAttribute",
334
+ property: "name",
335
+ index: l,
336
+ key: "serie",
337
+ debug: j.value
338
+ }), [null, void 0].includes(o.values) && J({
339
+ componentName: "VueUiNestedDonuts",
340
+ type: "datasetSerieAttribute",
341
+ property: "values",
342
+ index: l,
343
+ key: "serie",
344
+ debug: j.value
345
+ });
346
+ });
347
+ });
348
+ let t = 0;
349
+ return X.value.map((s, a) => ({
350
+ ...s,
351
+ total: s.series.filter((o) => !C.value.includes(o.id)).map((o) => R(o.values).reduce((l, u) => l + u, 0)).reduce((o, l) => o + l, 0),
352
+ datasetIndex: a,
353
+ id: `${b.value}_${a}`,
354
+ series: s.series.map((o, l) => {
355
+ const u = R(o.values).reduce((c, f) => c + f, 0);
356
+ return {
357
+ name: o.name,
358
+ arcOf: s.name,
359
+ arcOfId: `${b.value}_${a}`,
360
+ id: `${b.value}_${a}_${l}`,
361
+ seriesIndex: l,
362
+ datasetIndex: a,
363
+ color: Dl(o.color) || Qt.value[l] || Ve[l % Ve.length],
364
+ value: G.value ? Y.value[t++] ?? 0 : u,
365
+ absoluteValues: o.values || []
366
+ };
367
+ })
368
+ }));
369
+ });
370
+ ae(() => w.dataset, (t) => {
371
+ Array.isArray(t) && t.length > 0 && (ke.value = !1);
372
+ }, { immediate: !0 });
373
+ const E = k(() => Math.min(h.value.height, h.value.width) * (e.value.style.chart.layout.donut.strokeWidth / 512)), dt = k(() => [...T.value].map((t, s) => {
374
+ const a = t.series.filter((o) => !C.value.includes(o.id)).map((o) => o.value).reduce((o, l) => o + l, 0);
375
+ return {
376
+ ...t,
377
+ total: a,
378
+ series: t.series.filter((o) => !C.value.includes(o.id)).map((o) => ({
379
+ ...o,
380
+ proportion: o.value / a
381
+ }))
382
+ };
383
+ }));
384
+ function tl(t, s, a) {
385
+ let o = 0;
386
+ for (let l = 0; l < t.length; l += 1)
387
+ a.includes(t[l]) && (o += 1);
388
+ return o < s;
389
+ }
390
+ const $ = v(dt.value);
391
+ ae(
392
+ () => dt.value,
393
+ (t) => $.value = t
394
+ );
395
+ function q(t) {
396
+ rt("selectLegend", t);
397
+ const s = w.dataset.flatMap(
398
+ (d, m) => d.series.map((S, Se) => ({
399
+ value: R(S.values).reduce((Te, ce) => Te + ce, 0),
400
+ id: `${b.value}_${m}_${Se}`,
401
+ arcOfId: `${b.value}_${m}`
402
+ }))
403
+ ).find((d) => d.id === t.id);
404
+ if (!s) return;
405
+ const a = T.value.flatMap((d) => d.series).find((d) => d.id === t.id)?.value ?? 0, o = $.value.flatMap((d) => d.series).find((d) => d.id === t.id);
406
+ let u = o ? o.value : 0;
407
+ const c = T.value.find(
408
+ (d) => d.id === s.arcOfId
409
+ );
410
+ if (!c) return;
411
+ const f = c.series.map((d) => d.id), A = tl(
412
+ f,
413
+ f.length - 1,
414
+ C.value
415
+ );
416
+ C.value.includes(t.id) ? (C.value = C.value.filter((d) => d !== t.id), e.value.serieToggleAnimation.show ? it({
417
+ from: u,
418
+ to: a,
419
+ duration: e.value.serieToggleAnimation.durationMs,
420
+ onUpdate: (d) => {
421
+ $.value = $.value.map((m) => ({
422
+ ...m,
423
+ series: m.series.map((S) => S.id === t.id ? { ...S, value: d } : S)
424
+ }));
425
+ }
426
+ }) : $.value = $.value.map((d) => ({
427
+ ...d,
428
+ series: d.series.map((m) => m.id === t.id ? { ...m, value: a } : m)
429
+ }))) : A && (e.value.serieToggleAnimation.show ? it({
430
+ from: u,
431
+ to: 0,
432
+ duration: e.value.serieToggleAnimation.durationMs,
433
+ onUpdate: (d) => {
434
+ $.value = $.value.map((m) => ({
435
+ ...m,
436
+ series: m.series.map((S) => S.id === t.id ? { ...S, value: d } : S)
437
+ }));
438
+ },
439
+ onDone: () => {
440
+ C.value.push(t.id);
441
+ }
442
+ }) : ($.value = $.value.map((d) => ({
443
+ ...d,
444
+ series: d.series.map((m) => m.id === t.id ? { ...m, value: 0 } : m)
445
+ })), C.value.push(t.id)));
446
+ }
447
+ function ct(t) {
448
+ if (!T.value.length)
449
+ return e.value.debug && console.warn("VueUiNestedDonuts - There are no series to show."), null;
450
+ const s = T.value.flatMap((a) => a.series).filter((a) => a.name === t);
451
+ return s || (e.value.debug && console.warn(`VueUiNestedDonuts - Series name not found "${t}"`), null);
452
+ }
453
+ function ll(t) {
454
+ const s = ct(t);
455
+ s !== null && (Array.isArray(s) ? s.forEach((a) => {
456
+ C.value.includes(a.id) && q({ id: a.id });
457
+ }) : C.value.includes(s.id) && q({ id: s.id }));
458
+ }
459
+ function al(t) {
460
+ const s = ct(t);
461
+ s !== null && (Array.isArray(s) ? s.forEach((a) => {
462
+ C.value.includes(a.id) || q({ id: a.id });
463
+ }) : C.value.includes(s.id) || q({ id: s.id }));
464
+ }
465
+ const se = k(() => E.value / T.value.length * e.value.style.chart.layout.donut.spacingRatio), vt = k(() => $.value.map((t, s) => E.value - s * E.value / T.value.length)), Z = k(() => $.value.map((t, s) => {
466
+ const a = Math.abs(t.series.map((A) => A.value).reduce((A, d) => A + d, 0)) > 0, o = E.value - s * E.value / $.value.length, l = G.value ? Q.value.find((A) => A.datasetIndex === s) : null, u = [...t.series, ...l ? [l] : []].map((A) => ({
467
+ ...A,
468
+ value: A.value < 1e-11 ? Number.MIN_VALUE : A.value
469
+ })), c = ze(
470
+ { series: [
471
+ { name: "_", color: e.value.style.chart.layout.donut.emptyFill, value: 1 }
472
+ ] },
473
+ h.value.width / 2,
474
+ h.value.height / 2,
475
+ o,
476
+ o,
477
+ 1.99999,
478
+ 2,
479
+ 1,
480
+ 360,
481
+ 105.25,
482
+ se.value
483
+ ), f = `M ${h.value.width / 2},${h.value.height / 2 + o}
484
+ a ${o},${o} 0 1,1 0,${-2 * o}
485
+ a ${o},${o} 0 1,1 0,${2 * o}`;
486
+ return {
487
+ ...t,
488
+ hasData: a,
489
+ radius: o,
490
+ skeleton: c,
491
+ fullCirclePath: f,
492
+ donut: ze(
493
+ { series: u },
494
+ h.value.width / 2,
495
+ h.value.height / 2,
496
+ o,
497
+ o,
498
+ 1.99999,
499
+ 2,
500
+ 1,
501
+ 360,
502
+ 105.25,
503
+ se.value
504
+ )
505
+ };
506
+ })), ht = k(() => [...T.value].map((t, s) => {
507
+ const a = s * E.value / T.value.length;
508
+ return {
509
+ sizeRatio: a,
510
+ donut: ze(
511
+ { series: [{ value: 1 }] },
512
+ h.value.width / 2,
513
+ h.value.height / 2,
514
+ E.value - a,
515
+ E.value - a,
516
+ 1.99999,
517
+ 2,
518
+ 1,
519
+ 360,
520
+ 105.25,
521
+ E.value / T.value.length * e.value.style.chart.layout.donut.spacingRatio
522
+ )[0]
523
+ };
524
+ })), ft = v(null), ne = v(null), ue = v(null), $e = v(null);
525
+ function ol({ datapoint: t, seriesIndex: s }) {
526
+ e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: s }), be.value = !1, ft.value = null, pe.value = null, ne.value = null, ue.value = null;
527
+ }
528
+ function sl({ datapoint: t, _relativeIndex: s, seriesIndex: a }) {
529
+ e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: a }), ft.value = t.arcOfId, ne.value = t.id, ue.value = a, pe.value = t.id, $e.value = {
530
+ datapoint: t,
531
+ seriesIndex: a,
532
+ series: $.value,
533
+ config: e.value
534
+ };
535
+ const o = e.value.style.chart.tooltip.customFormat;
536
+ if (Ft(o) && Pl(
537
+ () => o({
538
+ seriesIndex: a,
539
+ datapoint: t,
540
+ series: $.value,
541
+ config: e.value
542
+ })
543
+ ))
544
+ ge.value = o({
545
+ seriesIndex: a,
546
+ datapoint: t,
547
+ series: $.value,
548
+ config: e.value
549
+ });
550
+ else {
551
+ let l = "";
552
+ if (e.value.style.chart.tooltip.showAllItemsAtIndex && C.value.length === 0) {
553
+ const u = $.value.map((c) => c.series.find((f) => f.seriesIndex === a));
554
+ u.forEach((c, f) => {
555
+ if (!c) return "";
556
+ l += `
557
+ <div style="display:flex; flex-direction: column; justify-content:flex-start; align-items:flex-start;padding:6px 0; ${f < u.length - 1 ? `border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor}` : ""}">
558
+ <div style="display:flex; flex-direction: row; gap: 3px; justify-content:flex-start; align-items:center;">
559
+ <svg viewBox="0 0 20 20" height="${e.value.style.chart.tooltip.fontSize}" width="${e.value.style.chart.tooltip.fontSize}">
560
+ <circle cx="10" cy="10" r="10" fill="${c.color}"/>
561
+ </svg>
562
+ <span>
563
+ ${c.arcOf ?? ""} - ${c.name}
564
+ </span>
565
+ </div>
566
+ <span>
567
+ ${e.value.style.chart.tooltip.showValue ? `<b>${oe(
568
+ e.value.style.chart.layout.labels.dataLabels.formatter,
569
+ t.value,
570
+ D({
571
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
572
+ v: t.value,
573
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
574
+ r: e.value.style.chart.tooltip.roundingValue
575
+ }),
576
+ { datapoint: t, seriesIndex: a }
577
+ )}
578
+ </b>` : ""}
579
+ ${e.value.style.chart.tooltip.showPercentage ? `(${D({
580
+ v: c.proportion * 100,
581
+ s: "%",
582
+ r: e.value.style.chart.tooltip.roundingPercentage
583
+ })})` : ""}
584
+ </span>
585
+ </div>
586
+ `;
587
+ });
588
+ } else
589
+ l += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${t.arcOf ?? ""} - ${t.name}</div>`, l += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${t.color}"/></svg>`, e.value.style.chart.tooltip.showValue && (l += `<b>${oe(
590
+ e.value.style.chart.layout.labels.dataLabels.formatter,
591
+ t.value,
592
+ D({
593
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
594
+ v: t.value,
595
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
596
+ r: e.value.style.chart.tooltip.roundingValue
597
+ }),
598
+ { datapoint: t, seriesIndex: a }
599
+ )}</b>`), e.value.style.chart.tooltip.showPercentage && (e.value.style.chart.tooltip.showValue ? l += `<span>(${D({
600
+ v: t.proportion * 100,
601
+ s: "%",
602
+ r: e.value.style.chart.tooltip.roundingPercentage
603
+ })})</span></div>` : l += `<b>${D({
604
+ v: t.proportion * 100,
605
+ s: "%",
606
+ r: e.value.style.chart.tooltip.roundingPercentage
607
+ })}</b></div>`);
608
+ ge.value = `<div style="font-size:${e.value.style.chart.tooltip.fontSize}px">${l}</div>`;
609
+ }
610
+ be.value = !0;
611
+ }
612
+ function Le(t) {
613
+ return t.proportion * 100 > e.value.style.chart.layout.labels.dataLabels.hideUnderValue;
614
+ }
615
+ function bt(t, s) {
616
+ if (!e.value.useBlurOnHover)
617
+ return "";
618
+ if (e.value.style.chart.tooltip.showAllItemsAtIndex && C.value.length === 0)
619
+ return [null, void 0].includes(ue.value) || ue.value === s ? "" : `url(#blur_${b.value})`;
620
+ if (!e.value.style.chart.tooltip.showAllItemsAtIndex || C.value.length)
621
+ return [null, void 0].includes(ne.value) || ne.value === t.id ? "" : `url(#blur_${b.value})`;
622
+ }
623
+ const re = k(() => T.value.map((t, s) => {
624
+ const a = t.series.filter(
625
+ (l) => !C.value.includes(l.id)
626
+ ), o = G.value ? a.map((l) => {
627
+ const u = X.value[s].series.findIndex(
628
+ (c) => c.name === l.name
629
+ );
630
+ return R(
631
+ X.value[s].series[u].values
632
+ ).reduce((c, f) => c + f, 0);
633
+ }).reduce((l, u) => l + u, 0) : a.map((l) => l.value).reduce((l, u) => l + u, 0);
634
+ return t.series.map((l, u) => {
635
+ const c = R(X.value[s].series[u].values).reduce(
636
+ (d, m) => d + m,
637
+ 0
638
+ ), f = G.value ? c : l.value, A = `${l.name}${e.value.style.chart.legend.showPercentage || e.value.style.chart.legend.showValue ? ": " : ""}${e.value.style.chart.legend.showValue ? oe(
639
+ e.value.style.chart.layout.labels.dataLabels.formatter,
640
+ f,
641
+ D({
642
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
643
+ v: f,
644
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
645
+ r: e.value.style.chart.legend.roundingValue
646
+ }),
647
+ { datapoint: l, seriesIndex: u }
648
+ ) : ""}${e.value.style.chart.legend.showPercentage ? C.value.includes(l.id) ? `${e.value.style.chart.legend.showValue ? "(" : ""}- %${e.value.style.chart.legend.showValue ? ")" : ""}` : `${e.value.style.chart.legend.showValue ? "(" : ""}${isNaN(f / o) ? "-" : D({
649
+ v: f / o * 100,
650
+ s: "%",
651
+ r: e.value.style.chart.legend.roundingPercentage
652
+ })}${e.value.style.chart.legend.showValue ? ")" : ""}` : ""}`;
653
+ return {
654
+ name: l.name,
655
+ color: l.color,
656
+ value: f,
657
+ display: A,
658
+ svgDisplay: `${l.arcOf ? `${l.arcOf} - ` : ""}${A}`,
659
+ shape: "circle",
660
+ arcOf: l.arcOf,
661
+ id: l.id,
662
+ seriesIndex: u,
663
+ datasetIndex: s,
664
+ total: o,
665
+ opacity: C.value.includes(l.id) ? 0.5 : 1,
666
+ segregate: () => q(l),
667
+ isSegregated: C.value.includes(l.id)
668
+ };
669
+ });
670
+ })), nl = k(() => ({
671
+ cy: "nested-donuts-legend",
672
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
673
+ color: e.value.style.chart.legend.color,
674
+ fontSize: e.value.style.chart.legend.fontSize,
675
+ paddingBottom: 12,
676
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
677
+ })), B = k(() => {
678
+ const t = $.value.flatMap((a) => a.series.map((o) => ({
679
+ name: `${a.name} - ${o.name}`,
680
+ color: o.color,
681
+ total: a.total
682
+ }))), s = $.value.flatMap((a) => a.series.map((o) => o.value));
683
+ return { head: t, body: s };
684
+ });
685
+ function _e(t = null) {
686
+ _t(() => {
687
+ const s = B.value.head.map((l, u) => [
688
+ [l.name],
689
+ [B.value.body[u]],
690
+ [
691
+ isNaN(B.value.body[u] / l.total) ? "-" : B.value.body[u] / l.total * 100
692
+ ]
693
+ ]), a = [
694
+ [e.value.style.chart.title.text],
695
+ [e.value.style.chart.title.subtitle.text],
696
+ [[""], ["val"], ["%"]]
697
+ ].concat(s), o = Il(a);
698
+ t ? t(o) : El({
699
+ csvContent: o,
700
+ title: e.value.style.chart.title.text || "vue-ui-nested-donuts"
701
+ });
702
+ });
703
+ }
704
+ const ie = k(() => {
705
+ const t = [
706
+ e.value.table.columnNames.series,
707
+ e.value.table.columnNames.value,
708
+ e.value.table.columnNames.percentage
709
+ ], s = B.value.head.map((l, u) => {
710
+ const c = D({
711
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
712
+ v: B.value.body[u],
713
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
714
+ r: e.value.table.td.roundingValue
715
+ });
716
+ return [
717
+ {
718
+ color: l.color,
719
+ name: l.name
720
+ },
721
+ c,
722
+ isNaN(B.value.body[u] / l.total) ? "-" : D({
723
+ v: B.value.body[u] / l.total * 100,
724
+ s: "%",
725
+ r: e.value.table.td.roundingPercentage
726
+ })
727
+ ];
728
+ }), a = {
729
+ th: {
730
+ backgroundColor: e.value.table.th.backgroundColor,
731
+ color: e.value.table.th.color,
732
+ outline: e.value.table.th.outline
733
+ },
734
+ td: {
735
+ backgroundColor: e.value.table.td.backgroundColor,
736
+ color: e.value.table.td.color,
737
+ outline: e.value.table.td.outline
738
+ },
739
+ breakpoint: e.value.table.responsiveBreakpoint
740
+ };
741
+ return {
742
+ colNames: [
743
+ e.value.table.columnNames.series,
744
+ e.value.table.columnNames.value,
745
+ e.value.table.columnNames.percentage
746
+ ],
747
+ head: t,
748
+ body: s,
749
+ config: a
750
+ };
751
+ });
752
+ function ul() {
753
+ return T.value;
754
+ }
755
+ function gt() {
756
+ _.value.showTable = !_.value.showTable;
757
+ }
758
+ function pt() {
759
+ _.value.dataLabels.show = !_.value.dataLabels.show;
760
+ }
761
+ function yt() {
762
+ _.value.showTooltip = !_.value.showTooltip;
763
+ }
764
+ const de = v(!1);
765
+ function xe() {
766
+ de.value = !de.value;
767
+ }
768
+ async function rl({ scale: t = 2 } = {}) {
769
+ if (!I.value) return;
770
+ const { width: s, height: a } = I.value.getBoundingClientRect(), o = s / a, { imageUri: l, base64: u } = await ql({ domElement: I.value, base64: !0, img: !0, scale: t });
771
+ return {
772
+ imageUri: l,
773
+ base64: u,
774
+ title: e.value.style.chart.title.text,
775
+ width: s,
776
+ height: a,
777
+ aspectRatio: o
778
+ };
779
+ }
780
+ const Fe = v(null);
781
+ function il() {
782
+ if (!Fe.value) return;
783
+ const { x: t, y: s, width: a, height: o } = Fe.value.getBBox();
784
+ te.value && te.value.setAttribute("viewBox", `${t} ${s} ${a + Math.min(0, t)} ${o + Math.min(0, s)}`);
785
+ }
786
+ const le = k(() => {
787
+ const t = e.value.table.useDialog && !e.value.table.show, s = _.value.showTable;
788
+ return {
789
+ component: t ? qt : Rt,
790
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
791
+ props: t ? {
792
+ backgroundColor: e.value.table.th.backgroundColor,
793
+ color: e.value.table.th.color,
794
+ headerColor: e.value.table.th.color,
795
+ headerBg: e.value.table.th.backgroundColor,
796
+ isFullscreen: W.value,
797
+ fullscreenParent: I.value,
798
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
799
+ } : {
800
+ hideDetails: !0,
801
+ config: {
802
+ open: s,
803
+ maxHeight: 1e4,
804
+ body: {
805
+ backgroundColor: e.value.style.chart.backgroundColor,
806
+ color: e.value.style.chart.color
807
+ },
808
+ head: {
809
+ backgroundColor: e.value.style.chart.backgroundColor,
810
+ color: e.value.style.chart.color
811
+ }
812
+ }
813
+ }
814
+ };
815
+ });
816
+ ae(() => _.value.showTable, (t) => {
817
+ e.value.table.show || (t && e.value.table.useDialog && ee.value ? ee.value.open() : "close" in ee.value && ee.value.close());
818
+ });
819
+ function mt() {
820
+ _.value.showTable = !1, me.value && me.value.setTableIconState(!1);
821
+ }
822
+ const dl = k(() => e.value.style.chart.backgroundColor), cl = k(() => e.value.style.chart.legend), vl = k(() => e.value.style.chart.title), hl = k(() => re.value.flat().map((t) => ({
823
+ ...t,
824
+ name: t.svgDisplay
825
+ }))), { exportSvg: fl, getSvg: bl } = Gl({
826
+ svg: te,
827
+ title: vl,
828
+ legend: cl,
829
+ legendItems: hl,
830
+ backgroundColor: dl
831
+ });
832
+ async function Ct({ isCb: t }) {
833
+ if (t) {
834
+ const { blob: s, url: a, text: o, dataUrl: l } = await bl();
835
+ e.value.userOptions.callbacks.svg({ blob: s, url: a, text: o, dataUrl: l });
836
+ } else
837
+ fl();
838
+ }
839
+ return Bt({
840
+ autoSize: il,
841
+ getData: ul,
842
+ getImage: rl,
843
+ generatePdf: nt,
844
+ generateCsv: _e,
845
+ generateImage: ut,
846
+ generateSvg: Ct,
847
+ hideSeries: al,
848
+ showSeries: ll,
849
+ toggleTable: gt,
850
+ toggleLabels: pt,
851
+ toggleTooltip: yt,
852
+ toggleAnnotator: xe,
853
+ toggleFullscreen: Je
854
+ }), (t, s) => (n(), r("div", {
855
+ ref_key: "nestedDonutsChart",
856
+ ref: I,
857
+ class: M(`vue-data-ui-component vue-ui-nested-donuts ${W.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
858
+ style: he(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.chart.backgroundColor}`),
859
+ id: `nested_donuts_${b.value}`,
860
+ onMouseenter: s[2] || (s[2] = () => i(Qe)(!0)),
861
+ onMouseleave: s[3] || (s[3] = () => i(Qe)(!1))
862
+ }, [
863
+ e.value.userOptions.buttons.annotator ? (n(), U(i(Wt), {
864
+ key: 0,
865
+ svgRef: i(te),
866
+ backgroundColor: e.value.style.chart.backgroundColor,
867
+ color: e.value.style.chart.color,
868
+ active: de.value,
869
+ onClose: xe
870
+ }, {
871
+ "annotator-action-close": p(() => [
872
+ y(t.$slots, "annotator-action-close", {}, void 0, !0)
873
+ ]),
874
+ "annotator-action-color": p(({ color: a }) => [
875
+ y(t.$slots, "annotator-action-color", O(N({ color: a })), void 0, !0)
876
+ ]),
877
+ "annotator-action-draw": p(({ mode: a }) => [
878
+ y(t.$slots, "annotator-action-draw", O(N({ mode: a })), void 0, !0)
879
+ ]),
880
+ "annotator-action-undo": p(({ disabled: a }) => [
881
+ y(t.$slots, "annotator-action-undo", O(N({ disabled: a })), void 0, !0)
882
+ ]),
883
+ "annotator-action-redo": p(({ disabled: a }) => [
884
+ y(t.$slots, "annotator-action-redo", O(N({ disabled: a })), void 0, !0)
885
+ ]),
886
+ "annotator-action-delete": p(({ disabled: a }) => [
887
+ y(t.$slots, "annotator-action-delete", O(N({ disabled: a })), void 0, !0)
888
+ ]),
889
+ _: 3
890
+ }, 8, ["svgRef", "backgroundColor", "color", "active"])) : L("", !0),
891
+ Kt.value ? (n(), r("div", {
892
+ key: 1,
893
+ ref_key: "noTitle",
894
+ ref: Xe,
895
+ class: "vue-data-ui-no-title-space",
896
+ style: "height:36px; width: 100%;background:transparent"
897
+ }, null, 512)) : L("", !0),
898
+ e.value.style.chart.title.text ? (n(), r("div", {
899
+ key: 2,
900
+ ref_key: "chartTitle",
901
+ ref: Ye
902
+ }, [
903
+ (n(), U(Hl, {
904
+ key: `title_${qe.value}`,
905
+ config: {
906
+ title: {
907
+ cy: "donut-div-title",
908
+ ...e.value.style.chart.title
909
+ },
910
+ subtitle: {
911
+ cy: "donut-div-subtitle",
912
+ ...e.value.style.chart.title.subtitle
913
+ }
914
+ }
915
+ }, null, 8, ["config"]))
916
+ ], 512)) : L("", !0),
917
+ g("div", {
918
+ id: `legend-top-${b.value}`
919
+ }, null, 8, Kl),
920
+ e.value.userOptions.show && fe.value && (i(et) || i(we)) ? (n(), U(i(Yt), {
921
+ ref_key: "userOptionsRef",
922
+ ref: me,
923
+ key: `user_option_${Ge.value}`,
924
+ backgroundColor: e.value.style.chart.backgroundColor,
925
+ color: e.value.style.chart.color,
926
+ isPrinting: i(ot),
927
+ isImaging: i(st),
928
+ uid: b.value,
929
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
930
+ hasPdf: e.value.userOptions.buttons.pdf,
931
+ hasXls: e.value.userOptions.buttons.csv,
932
+ hasImg: e.value.userOptions.buttons.img,
933
+ hasSvg: e.value.userOptions.buttons.svg,
934
+ hasTable: e.value.userOptions.buttons.table,
935
+ hasLabel: e.value.userOptions.buttons.labels,
936
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
937
+ isFullscreen: W.value,
938
+ isTooltip: _.value.showTooltip,
939
+ titles: { ...e.value.userOptions.buttonTitles },
940
+ chartElement: I.value,
941
+ position: e.value.userOptions.position,
942
+ hasAnnotator: e.value.userOptions.buttons.annotator,
943
+ isAnnotation: de.value,
944
+ callbacks: e.value.userOptions.callbacks,
945
+ printScale: e.value.userOptions.print.scale,
946
+ tableDialog: e.value.table.useDialog,
947
+ onToggleFullscreen: Je,
948
+ onGeneratePdf: i(nt),
949
+ onGenerateCsv: _e,
950
+ onGenerateImage: i(ut),
951
+ onGenerateSvg: Ct,
952
+ onToggleTable: gt,
953
+ onToggleLabels: pt,
954
+ onToggleTooltip: yt,
955
+ onToggleAnnotator: xe,
956
+ style: he({
957
+ visibility: i(et) ? i(we) ? "visible" : "hidden" : "visible"
958
+ })
959
+ }, wt({ _: 2 }, [
960
+ t.$slots.menuIcon ? {
961
+ name: "menuIcon",
962
+ fn: p(({ isOpen: a, color: o }) => [
963
+ y(t.$slots, "menuIcon", O(N({ isOpen: a, color: o })), void 0, !0)
964
+ ]),
965
+ key: "0"
966
+ } : void 0,
967
+ t.$slots.optionTooltip ? {
968
+ name: "optionTooltip",
969
+ fn: p(() => [
970
+ y(t.$slots, "optionTooltip", {}, void 0, !0)
971
+ ]),
972
+ key: "1"
973
+ } : void 0,
974
+ t.$slots.optionPdf ? {
975
+ name: "optionPdf",
976
+ fn: p(() => [
977
+ y(t.$slots, "optionPdf", {}, void 0, !0)
978
+ ]),
979
+ key: "2"
980
+ } : void 0,
981
+ t.$slots.optionCsv ? {
982
+ name: "optionCsv",
983
+ fn: p(() => [
984
+ y(t.$slots, "optionCsv", {}, void 0, !0)
985
+ ]),
986
+ key: "3"
987
+ } : void 0,
988
+ t.$slots.optionImg ? {
989
+ name: "optionImg",
990
+ fn: p(() => [
991
+ y(t.$slots, "optionImg", {}, void 0, !0)
992
+ ]),
993
+ key: "4"
994
+ } : void 0,
995
+ t.$slots.optionSvg ? {
996
+ name: "optionSvg",
997
+ fn: p(() => [
998
+ y(t.$slots, "optionSvg", {}, void 0, !0)
999
+ ]),
1000
+ key: "5"
1001
+ } : void 0,
1002
+ t.$slots.optionTable ? {
1003
+ name: "optionTable",
1004
+ fn: p(() => [
1005
+ y(t.$slots, "optionTable", {}, void 0, !0)
1006
+ ]),
1007
+ key: "6"
1008
+ } : void 0,
1009
+ t.$slots.optionLabels ? {
1010
+ name: "optionLabels",
1011
+ fn: p(() => [
1012
+ y(t.$slots, "optionLabels", {}, void 0, !0)
1013
+ ]),
1014
+ key: "7"
1015
+ } : void 0,
1016
+ t.$slots.optionFullscreen ? {
1017
+ name: "optionFullscreen",
1018
+ fn: p(({ toggleFullscreen: a, isFullscreen: o }) => [
1019
+ y(t.$slots, "optionFullscreen", O(N({ toggleFullscreen: a, isFullscreen: o })), void 0, !0)
1020
+ ]),
1021
+ key: "8"
1022
+ } : void 0,
1023
+ t.$slots.optionAnnotator ? {
1024
+ name: "optionAnnotator",
1025
+ fn: p(({ toggleAnnotator: a, isAnnotator: o }) => [
1026
+ y(t.$slots, "optionAnnotator", O(N({ toggleAnnotator: a, isAnnotator: o })), void 0, !0)
1027
+ ]),
1028
+ key: "9"
1029
+ } : void 0
1030
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasSvg", "hasTable", "hasLabel", "hasFullscreen", "isFullscreen", "isTooltip", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : L("", !0),
1031
+ (n(), r("svg", {
1032
+ ref_key: "svgRef",
1033
+ ref: te,
1034
+ xmlns: i(Ol),
1035
+ class: M({
1036
+ "vue-data-ui-fullscreen--on": W.value,
1037
+ "vue-data-ui-fulscreen--off": !W.value,
1038
+ "vue-data-ui-svg": !0
1039
+ }),
1040
+ viewBox: `0 0 ${h.value.width <= 0 ? 1e-3 : h.value.width} ${h.value.height < 0 ? 1e-3 : h.value.height}`,
1041
+ style: he(`max-width:100%; overflow: visible; background:transparent;color:${e.value.style.chart.color};${tt.value.css}`)
1042
+ }, [
1043
+ g("g", {
1044
+ ref_key: "G",
1045
+ ref: Fe,
1046
+ class: "vue-data-ui-g"
1047
+ }, [
1048
+ Pe(i(Xt)),
1049
+ t.$slots["chart-background"] ? (n(), r("foreignObject", {
1050
+ key: 0,
1051
+ x: 0,
1052
+ y: 0,
1053
+ width: h.value.width <= 0 ? 1e-3 : h.value.width,
1054
+ height: h.value.height < 0 ? 1e-3 : h.value.height,
1055
+ style: {
1056
+ pointerEvents: "none"
1057
+ }
1058
+ }, [
1059
+ y(t.$slots, "chart-background", {}, void 0, !0)
1060
+ ], 8, ea)) : L("", !0),
1061
+ g("defs", null, [
1062
+ (n(!0), r(x, null, F(ht.value, (a, o) => (n(), r("radialGradient", {
1063
+ id: `radial_${b.value}_${o}`
1064
+ }, [
1065
+ s[4] || (s[4] = g("stop", {
1066
+ offset: "0%",
1067
+ "stop-color": "#FFFFFF",
1068
+ "stop-opacity": "0"
1069
+ }, null, -1)),
1070
+ g("stop", {
1071
+ offset: `${(1 - se.value / vt.value[o]) * 100}%`,
1072
+ "stop-color": i(Nl)("#FFFFFF", 0),
1073
+ "stop-opacity": "0"
1074
+ }, null, 8, la),
1075
+ g("stop", {
1076
+ offset: `${(1 - se.value / vt.value[o] / 2) * 100}%`,
1077
+ "stop-color": "#FFFFFF",
1078
+ "stop-opacity": e.value.style.chart.gradientIntensity / 100
1079
+ }, null, 8, aa),
1080
+ s[5] || (s[5] = g("stop", {
1081
+ offset: "100%",
1082
+ "stop-color": "#FFFFFF",
1083
+ "stop-opacity": "0"
1084
+ }, null, -1))
1085
+ ], 8, ta))), 256))
1086
+ ]),
1087
+ g("defs", null, [
1088
+ g("filter", {
1089
+ id: `blur_${b.value}`,
1090
+ x: "-50%",
1091
+ y: "-50%",
1092
+ width: "200%",
1093
+ height: "200%"
1094
+ }, [
1095
+ g("feGaussianBlur", {
1096
+ in: "SourceGraphic",
1097
+ stdDeviation: 2,
1098
+ id: `blur_std_${b.value}`
1099
+ }, null, 8, sa),
1100
+ s[6] || (s[6] = g("feColorMatrix", {
1101
+ type: "saturate",
1102
+ values: "0"
1103
+ }, null, -1))
1104
+ ], 8, oa),
1105
+ g("filter", {
1106
+ id: `shadow_${b.value}`,
1107
+ "color-interpolation-filters": "sRGB"
1108
+ }, [
1109
+ g("feDropShadow", {
1110
+ dx: "0",
1111
+ dy: "0",
1112
+ stdDeviation: "10",
1113
+ "flood-opacity": "0.5",
1114
+ "flood-color": e.value.style.chart.layout.donut.shadowColor
1115
+ }, null, 8, ua)
1116
+ ], 8, na)
1117
+ ]),
1118
+ g("defs", null, [
1119
+ (n(!0), r(x, null, F(Z.value, (a, o) => (n(), r("path", {
1120
+ key: `path-full-${o}`,
1121
+ id: `path-full-${o}-${b.value}`,
1122
+ d: a.fullCirclePath,
1123
+ fill: "none"
1124
+ }, null, 8, ra))), 128))
1125
+ ]),
1126
+ (n(!0), r(x, null, F(Z.value, (a, o) => (n(), r("g", null, [
1127
+ a.hasData ? (n(!0), r(x, { key: 0 }, F(a.donut.filter((l) => !l.ghost), (l, u) => (n(), r("g", null, [
1128
+ g("path", {
1129
+ class: "vue-ui-donut-arc-path",
1130
+ d: l.arcSlice,
1131
+ fill: l.color,
1132
+ stroke: e.value.style.chart.layout.donut.borderColorAuto ? e.value.style.chart.backgroundColor : e.value.style.chart.layout.donut.borderColor,
1133
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
1134
+ filter: bt(l, u)
1135
+ }, null, 8, ia)
1136
+ ]))), 256)) : (n(!0), r(x, { key: 1 }, F(a.skeleton, (l, u) => (n(), r("g", null, [
1137
+ g("path", {
1138
+ class: "vue-ui-donut-arc-path",
1139
+ d: l.arcSlice,
1140
+ fill: l.color,
1141
+ stroke: e.value.style.chart.layout.donut.borderColorAuto ? e.value.style.chart.backgroundColor : e.value.style.chart.layout.donut.borderColor,
1142
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth
1143
+ }, null, 8, da)
1144
+ ]))), 256))
1145
+ ]))), 256)),
1146
+ e.value.style.chart.useGradient ? (n(), r("g", ca, [
1147
+ (n(!0), r(x, null, F(ht.value, (a, o) => (n(), r("g", null, [
1148
+ g("path", {
1149
+ d: a.donut.arcSlice,
1150
+ fill: `url(#radial_${b.value}_${o})`,
1151
+ stroke: "transparent",
1152
+ "stroke-width": "0"
1153
+ }, null, 8, va)
1154
+ ]))), 256))
1155
+ ])) : L("", !0),
1156
+ e.value.style.chart.layout.labels.dataLabels.showDonutName ? (n(), r("g", ha, [
1157
+ e.value.style.chart.layout.labels.dataLabels.curvedDonutName ? (n(!0), r(x, { key: 0 }, F(Z.value, (a, o) => (n(), r("g", null, [
1158
+ (n(!0), r(x, null, F(a.donut, (l, u) => (n(), r("g", null, [
1159
+ u === 0 && h.value.width && h.value.height ? (n(), r("text", {
1160
+ key: 0,
1161
+ class: M({ animated: e.value.useCssAnimation }),
1162
+ "text-anchor": "middle",
1163
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
1164
+ "font-weight": e.value.style.chart.layout.labels.dataLabels.boldDonutName ? "bold" : "normal",
1165
+ fill: e.value.style.chart.layout.labels.dataLabels.color,
1166
+ dy: e.value.style.chart.layout.labels.dataLabels.donutNameOffsetY
1167
+ }, [
1168
+ g("textPath", {
1169
+ href: `#path-full-${o}-${b.value}`,
1170
+ startOffset: "50%",
1171
+ "text-anchor": "middle",
1172
+ method: "align",
1173
+ spacing: "auto"
1174
+ }, P(e.value.style.chart.layout.labels.dataLabels.donutNameAbbreviation ? i(xt)({
1175
+ source: a.name,
1176
+ length: e.value.style.chart.layout.labels.dataLabels.donutNameMaxAbbreviationSize
1177
+ }) : a.name), 9, ba)
1178
+ ], 10, fa)) : L("", !0)
1179
+ ]))), 256))
1180
+ ]))), 256)) : (n(!0), r(x, { key: 1 }, F(Z.value, (a, o) => (n(), r("g", null, [
1181
+ (n(!0), r(x, null, F(a.donut, (l, u) => (n(), r("g", null, [
1182
+ u === 0 && h.value.width && h.value.height ? (n(), r("text", {
1183
+ key: 0,
1184
+ class: M({ animated: e.value.useCssAnimation }),
1185
+ x: h.value.width / 2,
1186
+ y: l.startY - e.value.style.chart.layout.labels.dataLabels.fontSize + e.value.style.chart.layout.labels.dataLabels.donutNameOffsetY,
1187
+ "text-anchor": "middle",
1188
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
1189
+ "font-weight": e.value.style.chart.layout.labels.dataLabels.boldDonutName ? "bold" : "normal",
1190
+ fill: e.value.style.chart.layout.labels.dataLabels.color
1191
+ }, P(e.value.style.chart.layout.labels.dataLabels.donutNameAbbreviation ? i(xt)({
1192
+ source: a.name,
1193
+ length: e.value.style.chart.layout.labels.dataLabels.donutNameMaxAbbreviationSize
1194
+ }) : a.name), 11, ga)) : L("", !0)
1195
+ ]))), 256))
1196
+ ]))), 256))
1197
+ ])) : L("", !0),
1198
+ e.value.style.chart.layout.labels.dataLabels.show ? (n(), r("g", pa, [
1199
+ (n(!0), r(x, null, F(Z.value, (a, o) => (n(), r("g", null, [
1200
+ (n(!0), r(x, null, F(a.donut.filter((l) => !l.ghost), (l, u) => (n(), r("g", {
1201
+ filter: bt(l, u)
1202
+ }, [
1203
+ At(g("text", {
1204
+ class: M({ animated: e.value.useCssAnimation }),
1205
+ opacity: Le(l) ? 1 : 0,
1206
+ "text-anchor": i(K)(l, !0).anchor,
1207
+ x: i(K)(
1208
+ l,
1209
+ !1,
1210
+ e.value.style.chart.layout.labels.dataLabels.offsetX
1211
+ ).x || 0,
1212
+ y: i(Me)(
1213
+ l,
1214
+ e.value.style.chart.layout.labels.dataLabels.offsetY,
1215
+ e.value.style.chart.layout.labels.dataLabels.offsetY
1216
+ ),
1217
+ fill: e.value.style.chart.layout.labels.dataLabels.useSerieColor ? l.color : e.value.style.chart.layout.labels.dataLabels.color,
1218
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
1219
+ "font-weight": e.value.style.chart.layout.labels.dataLabels.boldPercentage ? "bold" : "normal"
1220
+ }, P(i(D)({
1221
+ v: l.proportion * 100,
1222
+ s: "%",
1223
+ r: e.value.style.chart.layout.labels.dataLabels.roundingPercentage
1224
+ })), 11, ma), [
1225
+ [
1226
+ $t,
1227
+ _.value.dataLabels.show && e.value.style.chart.layout.labels.dataLabels.showPercentage
1228
+ ]
1229
+ ]),
1230
+ At(g("text", {
1231
+ class: M({ animated: e.value.useCssAnimation }),
1232
+ opacity: Le(l) ? 1 : 0,
1233
+ "text-anchor": i(K)(l, !0).anchor,
1234
+ x: i(K)(
1235
+ l,
1236
+ !1,
1237
+ e.value.style.chart.layout.labels.dataLabels.offsetX
1238
+ ).x || 0,
1239
+ y: i(Me)(
1240
+ l,
1241
+ e.value.style.chart.layout.labels.dataLabels.offsetY,
1242
+ e.value.style.chart.layout.labels.dataLabels.offsetY
1243
+ ) + e.value.style.chart.layout.labels.dataLabels.fontSize,
1244
+ fill: e.value.style.chart.layout.labels.dataLabels.useSerieColor ? l.color : e.value.style.chart.layout.labels.dataLabels.color,
1245
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
1246
+ "font-weight": e.value.style.chart.layout.labels.dataLabels.boldValue ? "bold" : "normal"
1247
+ }, " (" + P(i(oe)(
1248
+ e.value.style.chart.layout.labels.dataLabels.formatter,
1249
+ l.value,
1250
+ i(D)({
1251
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1252
+ v: l.value,
1253
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1254
+ r: e.value.style.chart.layout.labels.dataLabels.roundingValue
1255
+ }),
1256
+ { datapoint: l, seriesIndex: o, datapointIndex: u }
1257
+ )) + ") ", 11, Ca), [
1258
+ [
1259
+ $t,
1260
+ _.value.dataLabels.show && e.value.style.chart.layout.labels.dataLabels.showPercentage && e.value.style.chart.layout.labels.dataLabels.showValue
1261
+ ]
1262
+ ]),
1263
+ Le(l) && _.value.dataLabels.show && !e.value.style.chart.layout.labels.dataLabels.showPercentage && e.value.style.chart.layout.labels.dataLabels.showValue ? (n(), r("text", {
1264
+ key: 0,
1265
+ class: M({ animated: e.value.useCssAnimation }),
1266
+ "text-anchor": i(K)(l, !0).anchor,
1267
+ x: i(K)(
1268
+ l,
1269
+ !1,
1270
+ e.value.style.chart.layout.labels.dataLabels.offsetX
1271
+ ).x || 0,
1272
+ y: i(Me)(
1273
+ l,
1274
+ e.value.style.chart.layout.labels.dataLabels.offsetY,
1275
+ e.value.style.chart.layout.labels.dataLabels.offsetY
1276
+ ),
1277
+ fill: e.value.style.chart.layout.labels.dataLabels.useSerieColor ? l.color : e.value.style.chart.layout.labels.dataLabels.color,
1278
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
1279
+ "font-weight": e.value.style.chart.layout.labels.dataLabels.boldValue ? "bold" : "normal"
1280
+ }, P(i(oe)(
1281
+ e.value.style.chart.layout.labels.dataLabels.formatter,
1282
+ l.value,
1283
+ i(D)({
1284
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1285
+ v: l.value,
1286
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1287
+ r: e.value.style.chart.layout.labels.dataLabels.roundingValue
1288
+ }),
1289
+ { datapoint: l, seriesIndex: o, datapointIndex: u }
1290
+ )), 11, ka)) : L("", !0)
1291
+ ], 8, ya))), 256))
1292
+ ]))), 256))
1293
+ ])) : L("", !0),
1294
+ (n(!0), r(x, null, F(Z.value, (a, o) => (n(), r("g", null, [
1295
+ (n(!0), r(x, null, F(a.donut, (l, u) => (n(), r("g", null, [
1296
+ g("path", {
1297
+ d: l.arcSlice,
1298
+ fill: pe.value === l.id ? e.value.style.chart.layout.donut.selectedColor : "transparent",
1299
+ onMouseenter: (c) => sl({
1300
+ datapoint: l,
1301
+ seriesIndex: l.seriesIndex
1302
+ }),
1303
+ onClick: (c) => el({ datapoint: l, index: u, seriesIndex: l.seriesIndex }),
1304
+ onMouseleave: (c) => ol({ datapoint: l, seriesIndex: l.seriesIndex })
1305
+ }, null, 40, wa)
1306
+ ]))), 256))
1307
+ ]))), 256)),
1308
+ y(t.$slots, "svg", { svg: h.value }, void 0, !0)
1309
+ ], 512)
1310
+ ], 14, Ql)),
1311
+ t.$slots.watermark ? (n(), r("div", Aa, [
1312
+ y(t.$slots, "watermark", O(N({ isPrinting: i(ot) || i(st) })), void 0, !0)
1313
+ ])) : L("", !0),
1314
+ Pe(i(Mt), {
1315
+ show: _.value.showTooltip && be.value,
1316
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
1317
+ color: e.value.style.chart.tooltip.color,
1318
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
1319
+ borderColor: e.value.style.chart.tooltip.borderColor,
1320
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
1321
+ fontSize: e.value.style.chart.tooltip.fontSize,
1322
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
1323
+ position: e.value.style.chart.tooltip.position,
1324
+ offsetY: e.value.style.chart.tooltip.offsetY,
1325
+ parent: I.value,
1326
+ content: ge.value,
1327
+ isFullscreen: W.value,
1328
+ isCustom: i(Ft)(e.value.style.chart.tooltip.customFormat),
1329
+ smooth: e.value.style.chart.tooltip.smooth,
1330
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter,
1331
+ smoothForce: e.value.style.chart.tooltip.smoothForce,
1332
+ smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
1333
+ }, {
1334
+ "tooltip-before": p(() => [
1335
+ y(t.$slots, "tooltip-before", O(N({ ...$e.value })), void 0, !0)
1336
+ ]),
1337
+ "tooltip-after": p(() => [
1338
+ y(t.$slots, "tooltip-after", O(N({ ...$e.value })), void 0, !0)
1339
+ ]),
1340
+ _: 3
1341
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
1342
+ g("div", {
1343
+ id: `legend-bottom-${b.value}`
1344
+ }, null, 8, $a),
1345
+ Ze.value ? (n(), U(Al, {
1346
+ key: 5,
1347
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${b.value}` : `#legend-bottom-${b.value}`
1348
+ }, [
1349
+ e.value.style.chart.legend.show ? (n(), r("div", {
1350
+ key: 0,
1351
+ ref_key: "chartLegend",
1352
+ ref: ye,
1353
+ class: M({ "vue-ui-nested-donuts-legend": re.value.length > 1 })
1354
+ }, [
1355
+ (n(!0), r(x, null, F(re.value, (a, o) => (n(), U(jl, {
1356
+ key: `legend_${o}_${je.value}`,
1357
+ legendSet: a,
1358
+ config: nl.value,
1359
+ onClickMarker: s[0] || (s[0] = ({ legend: l }) => q(l))
1360
+ }, {
1361
+ legendTitle: p(({ titleSet: l }) => [
1362
+ l[0] && l[0].arcOf ? (n(), r("div", La, P(l[0].arcOf), 1)) : L("", !0)
1363
+ ]),
1364
+ item: p(({ legend: l, index: u }) => [
1365
+ g("div", {
1366
+ onClick: (c) => q(l),
1367
+ style: he(`opacity:${C.value.includes(l.id) ? 0.5 : 1}`)
1368
+ }, P(l.display), 13, _a)
1369
+ ]),
1370
+ _: 1
1371
+ }, 8, ["legendSet", "config"]))), 128))
1372
+ ], 2)) : L("", !0)
1373
+ ], 8, ["to"])) : L("", !0),
1374
+ e.value.style.chart.legend.show ? L("", !0) : (n(), r("div", {
1375
+ key: 6,
1376
+ ref_key: "chartLegend",
1377
+ ref: ye
1378
+ }, [
1379
+ y(t.$slots, "legend", { legend: re.value }, void 0, !0)
1380
+ ], 512)),
1381
+ t.$slots.source ? (n(), r("div", {
1382
+ key: 7,
1383
+ ref_key: "source",
1384
+ ref: We,
1385
+ dir: "auto"
1386
+ }, [
1387
+ y(t.$slots, "source", {}, void 0, !0)
1388
+ ], 512)) : L("", !0),
1389
+ fe.value && e.value.userOptions.buttons.table ? (n(), U($l(le.value.component), Ll({ key: 8 }, le.value.props, {
1390
+ ref_key: "tableUnit",
1391
+ ref: ee,
1392
+ onClose: mt
1393
+ }), wt({
1394
+ content: p(() => [
1395
+ (n(), U(i(Gt), {
1396
+ key: `table_${He.value}`,
1397
+ colNames: ie.value.colNames,
1398
+ head: ie.value.head,
1399
+ body: ie.value.body,
1400
+ config: ie.value.config,
1401
+ title: e.value.table.useDialog ? "" : le.value.title,
1402
+ withCloseButton: !e.value.table.useDialog,
1403
+ onClose: mt
1404
+ }, {
1405
+ th: p(({ th: a }) => [
1406
+ g("div", {
1407
+ innerHTML: a,
1408
+ style: { display: "flex", "align-items": "center" }
1409
+ }, null, 8, xa)
1410
+ ]),
1411
+ td: p(({ td: a }) => [
1412
+ Lt(P(a.name || a), 1)
1413
+ ]),
1414
+ _: 1
1415
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
1416
+ ]),
1417
+ _: 2
1418
+ }, [
1419
+ e.value.table.useDialog ? {
1420
+ name: "title",
1421
+ fn: p(() => [
1422
+ Lt(P(le.value.title), 1)
1423
+ ]),
1424
+ key: "0"
1425
+ } : void 0,
1426
+ e.value.table.useDialog ? {
1427
+ name: "actions",
1428
+ fn: p(() => [
1429
+ g("button", {
1430
+ tabindex: "0",
1431
+ class: "vue-ui-user-options-button",
1432
+ onClick: s[1] || (s[1] = (a) => _e(e.value.userOptions.callbacks.csv))
1433
+ }, [
1434
+ Pe(i(Ut), {
1435
+ name: "excel",
1436
+ stroke: le.value.props.color
1437
+ }, null, 8, ["stroke"])
1438
+ ])
1439
+ ]),
1440
+ key: "1"
1441
+ } : void 0
1442
+ ]), 1040)) : L("", !0),
1443
+ i(Ce) ? (n(), U(Ul, { key: 9 })) : L("", !0)
1444
+ ], 46, Jl));
1445
+ }
1446
+ }, Sa = /* @__PURE__ */ Zl(Fa, [["__scopeId", "data-v-1468fc43"]]), Wa = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1447
+ __proto__: null,
1448
+ default: Sa
1449
+ }, Symbol.toStringTag, { value: "Module" }));
1450
+ export {
1451
+ Ya as a,
1452
+ Wa as b,
1453
+ Sa as v
1454
+ };