vue-data-ui 3.25.5 → 3.25.6

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 (210) hide show
  1. package/dist/{BaseDraggableDialog-BM_R41j8.js → BaseDraggableDialog-Gm4Q30j0.js} +1 -1
  2. package/dist/{BaseIcon-t83PDe9k.js → BaseIcon-D8R6_sKH.js} +5 -5
  3. package/dist/{BaseLegendToggle-__JnV08B.js → BaseLegendToggle-CXQrLjd-.js} +1 -1
  4. package/dist/{BaseZoomControls-Xo16vFa4.js → BaseZoomControls-BTzjVDPM.js} +1 -1
  5. package/dist/{ColorPicker-Bn3MY7eL.js → ColorPicker-CUy15T72.js} +1 -1
  6. package/dist/{DataTable-COIO9gi4.js → DataTable-oiM9uWrQ.js} +1 -1
  7. package/dist/{HillActions-Cl-dNBZR.js → HillActions-Dn8aKOVJ.js} +1 -1
  8. package/dist/{NonSvgPenAndPaper-KXRhcsxM.js → NonSvgPenAndPaper-DFXjpRyl.js} +2 -2
  9. package/dist/{PackageVersion-M2Ws-VwJ.js → PackageVersion-ur6jKRL5.js} +1 -1
  10. package/dist/{PenAndPaper-BgH3m_LP.js → PenAndPaper-KFzKlvbi.js} +2 -2
  11. package/dist/{SlicerPreview-GvsdvE-h.js → SlicerPreview-B6iHOC9L.js} +1 -1
  12. package/dist/{UserOptions-f3Q0nqrj.js → UserOptions-2x4VklMW.js} +1 -1
  13. package/dist/components/vue-ui-3d-bar.js +1 -1
  14. package/dist/components/vue-ui-accordion.js +1 -1
  15. package/dist/components/vue-ui-age-pyramid.js +1 -1
  16. package/dist/components/vue-ui-annotator.js +1 -1
  17. package/dist/components/vue-ui-bullet.js +1 -1
  18. package/dist/components/vue-ui-bump.js +1 -1
  19. package/dist/components/vue-ui-candlestick.js +1 -1
  20. package/dist/components/vue-ui-carousel-table.js +1 -1
  21. package/dist/components/vue-ui-chestnut.js +1 -1
  22. package/dist/components/vue-ui-chord.js +1 -1
  23. package/dist/components/vue-ui-circle-pack.js +1 -1
  24. package/dist/components/vue-ui-cursor.js +1 -1
  25. package/dist/components/vue-ui-dag.js +1 -1
  26. package/dist/components/vue-ui-dashboard.js +1 -1
  27. package/dist/components/vue-ui-digits.js +1 -1
  28. package/dist/components/vue-ui-donut-evolution.js +1 -1
  29. package/dist/components/vue-ui-donut.js +1 -1
  30. package/dist/components/vue-ui-dumbbell.js +1 -1
  31. package/dist/components/vue-ui-flow.js +1 -1
  32. package/dist/components/vue-ui-funnel.js +1 -1
  33. package/dist/components/vue-ui-galaxy.js +1 -1
  34. package/dist/components/vue-ui-gauge.js +1 -1
  35. package/dist/components/vue-ui-geo.js +1 -1
  36. package/dist/components/vue-ui-gizmo.js +1 -1
  37. package/dist/components/vue-ui-heatmap.js +1 -1
  38. package/dist/components/vue-ui-hill.js +1 -1
  39. package/dist/components/vue-ui-history-plot.js +1 -1
  40. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  41. package/dist/components/vue-ui-icon.js +1 -1
  42. package/dist/components/vue-ui-kpi.js +1 -1
  43. package/dist/components/vue-ui-label.js +1 -1
  44. package/dist/components/vue-ui-mini-loader.js +1 -1
  45. package/dist/components/vue-ui-molecule.js +1 -1
  46. package/dist/components/vue-ui-mood-radar.js +1 -1
  47. package/dist/components/vue-ui-nested-donuts.js +1 -1
  48. package/dist/components/vue-ui-onion.js +1 -1
  49. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  50. package/dist/components/vue-ui-quadrant.js +1 -1
  51. package/dist/components/vue-ui-quick-chart.js +1 -1
  52. package/dist/components/vue-ui-radar.js +1 -1
  53. package/dist/components/vue-ui-rating.js +1 -1
  54. package/dist/components/vue-ui-relation-circle.js +1 -1
  55. package/dist/components/vue-ui-ridgeline.js +1 -1
  56. package/dist/components/vue-ui-rings.js +1 -1
  57. package/dist/components/vue-ui-scatter.js +1 -1
  58. package/dist/components/vue-ui-skeleton.js +1 -1
  59. package/dist/components/vue-ui-smiley.js +1 -1
  60. package/dist/components/vue-ui-spark-trend.js +1 -1
  61. package/dist/components/vue-ui-sparkbar.js +1 -1
  62. package/dist/components/vue-ui-sparkgauge.js +1 -1
  63. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  64. package/dist/components/vue-ui-sparkline.js +1 -1
  65. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  66. package/dist/components/vue-ui-stackbar.js +1 -1
  67. package/dist/components/vue-ui-stackline.js +1 -1
  68. package/dist/components/vue-ui-strip-plot.js +1 -1
  69. package/dist/components/vue-ui-table-heatmap.js +1 -1
  70. package/dist/components/vue-ui-table-sparkline.js +1 -1
  71. package/dist/components/vue-ui-table.js +1 -1
  72. package/dist/components/vue-ui-thermometer.js +1 -1
  73. package/dist/components/vue-ui-timer.js +1 -1
  74. package/dist/components/vue-ui-tiremarks.js +1 -1
  75. package/dist/components/vue-ui-treemap.js +1 -1
  76. package/dist/components/vue-ui-vertical-bar.js +1 -1
  77. package/dist/components/vue-ui-waffle.js +1 -1
  78. package/dist/components/vue-ui-wheel.js +1 -1
  79. package/dist/components/vue-ui-word-cloud.js +1 -1
  80. package/dist/components/vue-ui-world.js +1 -1
  81. package/dist/components/vue-ui-xy-canvas.js +1 -1
  82. package/dist/components/vue-ui-xy.js +1 -1
  83. package/dist/{package-ta2JoIjx.js → package-Dx7M6sYy.js} +1 -1
  84. package/dist/{render-common-bvOuxfN3.js → render-common-DETHvNhl.js} +1 -1
  85. package/dist/ssr/vue-ui-donut.js +1 -1
  86. package/dist/ssr/vue-ui-xy.js +1 -1
  87. package/dist/ssr.js +2 -2
  88. package/dist/style.css +1 -1
  89. package/dist/types/vue-data-ui.d.ts +10 -0
  90. package/dist/{useConfig-C_mX5pOZ.js → useConfig-CIQZ6_r7.js} +11 -1
  91. package/dist/{useObjectBindings-uXpBcVyo.js → useObjectBindings---mHNfbS.js} +2 -2
  92. package/dist/utils.js +1 -1
  93. package/dist/{vue-data-ui-BjdCpsRV.js → vue-data-ui-Dh3_EsHb.js} +70 -70
  94. package/dist/vue-data-ui.js +71 -71
  95. package/dist/vue-ui-3d-bar-i1REAKnM.js +1831 -0
  96. package/dist/{vue-ui-accordion-DRf3NQyH.js → vue-ui-accordion-BSmBUjwZ.js} +2 -2
  97. package/dist/vue-ui-age-pyramid-DuHblCNO.js +1293 -0
  98. package/dist/{vue-ui-annotator-DZ0O8Xa5.js → vue-ui-annotator-CTQHAPho.js} +676 -676
  99. package/dist/vue-ui-bullet-CYLnKrmM.js +702 -0
  100. package/dist/{vue-ui-bump-DoHnD1Xy.js → vue-ui-bump-DhwySwgn.js} +380 -380
  101. package/dist/vue-ui-candlestick-BpiECaDj.js +1859 -0
  102. package/dist/{vue-ui-carousel-table-k1cBJ1i1.js → vue-ui-carousel-table-D-T2yA7-.js} +2 -2
  103. package/dist/vue-ui-chestnut-1MsZ9Q3r.js +2016 -0
  104. package/dist/vue-ui-chord-QBQUSe7r.js +1347 -0
  105. package/dist/vue-ui-circle-pack-ZWEwtesD.js +1635 -0
  106. package/dist/{vue-ui-cursor-CQWLyEx0.js → vue-ui-cursor-CHQcHAHQ.js} +2 -2
  107. package/dist/{vue-ui-dag-BqlsutMj.js → vue-ui-dag-C_inEafb.js} +792 -792
  108. package/dist/{vue-ui-dashboard-Be3MmkgS.js → vue-ui-dashboard-Bs2mBur5.js} +67 -67
  109. package/dist/{vue-ui-digits-BqdfbcKX.js → vue-ui-digits-DwE4MoXI.js} +2 -2
  110. package/dist/vue-ui-donut-BM9dMHXj.js +2415 -0
  111. package/dist/{vue-ui-donut-gzGZ42uH.js → vue-ui-donut-CbOSJmRu.js} +2 -2
  112. package/dist/vue-ui-donut-evolution-C97_RHus.js +1552 -0
  113. package/dist/vue-ui-dumbbell-DwKa5EL5.js +1533 -0
  114. package/dist/vue-ui-flow-DTTr3YL9.js +1217 -0
  115. package/dist/vue-ui-funnel-C4pkBk3D.js +749 -0
  116. package/dist/vue-ui-galaxy-CuAPLOvX.js +1085 -0
  117. package/dist/vue-ui-gauge-DLDULH26.js +934 -0
  118. package/dist/{vue-ui-geo-Ca8kPYr-.js → vue-ui-geo-DXIHhp-G.js} +429 -429
  119. package/dist/{vue-ui-gizmo-wUqHJICb.js → vue-ui-gizmo-PuURiePo.js} +2 -2
  120. package/dist/vue-ui-heatmap-mvWLKB99.js +1555 -0
  121. package/dist/{vue-ui-hill-D6Y9Xy2K.js → vue-ui-hill-DqsVJkmO.js} +470 -470
  122. package/dist/vue-ui-history-plot-BBVLgt9_.js +1698 -0
  123. package/dist/{vue-ui-horizontal-bar-3on3-H3B.js → vue-ui-horizontal-bar-y8Q8PZwT.js} +511 -511
  124. package/dist/{vue-ui-kpi-CUpRRIUf.js → vue-ui-kpi-B2hf3kpp.js} +2 -2
  125. package/dist/{vue-ui-label-DR2qUZOG.js → vue-ui-label-ClMQ5Gez.js} +1 -1
  126. package/dist/{vue-ui-mini-loader-D8W-fERs.js → vue-ui-mini-loader-DtPOVIkK.js} +1 -1
  127. package/dist/vue-ui-molecule-eeW1Pmg8.js +929 -0
  128. package/dist/{vue-ui-mood-radar-TW251icr.js → vue-ui-mood-radar-Dd1qfUiu.js} +376 -376
  129. package/dist/vue-ui-nested-donuts-CUARCr6O.js +1503 -0
  130. package/dist/vue-ui-onion-NoxHP0cG.js +1235 -0
  131. package/dist/{vue-ui-parallel-coordinate-plot-RM25bxtf.js → vue-ui-parallel-coordinate-plot-Cp3pCyxK.js} +407 -407
  132. package/dist/vue-ui-quadrant-C3kQtaeX.js +1967 -0
  133. package/dist/{vue-ui-quick-chart-Cswm3_eI.js → vue-ui-quick-chart-BZq517pL.js} +4 -4
  134. package/dist/vue-ui-radar-DvNrl4uD.js +1374 -0
  135. package/dist/vue-ui-rating-CWFMoYpE.js +359 -0
  136. package/dist/vue-ui-relation-circle-1iS6C0xx.js +905 -0
  137. package/dist/vue-ui-ridgeline-B-EZiPCF.js +1630 -0
  138. package/dist/vue-ui-rings-BXuwrHos.js +1252 -0
  139. package/dist/vue-ui-scatter-ByL-ZZ3B.js +2405 -0
  140. package/dist/{vue-ui-skeleton-D_u8EWeW.js → vue-ui-skeleton-BcU1onF6.js} +698 -698
  141. package/dist/vue-ui-smiley-DJVusLnp.js +376 -0
  142. package/dist/vue-ui-spark-trend-DjS31avb.js +457 -0
  143. package/dist/vue-ui-sparkbar-1Al_TLw1.js +401 -0
  144. package/dist/vue-ui-sparkgauge-CwLo53Y8.js +268 -0
  145. package/dist/vue-ui-sparkhistogram-CGw6SThG.js +589 -0
  146. package/dist/{vue-ui-sparkline-9qkNNZG6.js → vue-ui-sparkline-CSZGBFfI.js} +511 -511
  147. package/dist/vue-ui-sparkstackbar-B8dloLMp.js +738 -0
  148. package/dist/vue-ui-stackbar-FvNd77t1.js +2355 -0
  149. package/dist/vue-ui-stackline-CP7PkqiG.js +2469 -0
  150. package/dist/vue-ui-strip-plot-DSMlDkv1.js +1740 -0
  151. package/dist/{vue-ui-table-heatmap-XmDK1aHJ.js → vue-ui-table-heatmap-DnP3pzh2.js} +2 -2
  152. package/dist/vue-ui-table-rwKtnJKt.js +1352 -0
  153. package/dist/vue-ui-table-sparkline-B6wyEAyC.js +738 -0
  154. package/dist/{vue-ui-thermometer-CLx3SPRv.js → vue-ui-thermometer-D0_KsB-y.js} +192 -192
  155. package/dist/{vue-ui-timer-BDWUNb6t.js → vue-ui-timer-1Z2zginj.js} +153 -153
  156. package/dist/vue-ui-tiremarks-zbl7aooy.js +540 -0
  157. package/dist/vue-ui-treemap-Drs4gK6L.js +1733 -0
  158. package/dist/vue-ui-waffle-DqUVsVNE.js +1621 -0
  159. package/dist/vue-ui-wheel-DLCBPW9t.js +873 -0
  160. package/dist/vue-ui-word-cloud-8Agk9h6c.js +1710 -0
  161. package/dist/{vue-ui-world-C2atz4Xm.js → vue-ui-world-BOBHo7-L.js} +524 -524
  162. package/dist/vue-ui-xy-CSTJzRkk.js +5283 -0
  163. package/dist/{vue-ui-xy-CpA0W6zM.js → vue-ui-xy-Dmk1gQkI.js} +2 -2
  164. package/dist/vue-ui-xy-canvas-DANPuyf4.js +1824 -0
  165. package/dist/{vue_ui_age_pyramid-BY6c-oX_.js → vue_ui_age_pyramid-B2R66DgQ.js} +15 -6
  166. package/package.json +1 -1
  167. package/dist/vue-ui-3d-bar-C0aLR6lw.js +0 -1831
  168. package/dist/vue-ui-age-pyramid-DUcB3lYs.js +0 -1243
  169. package/dist/vue-ui-bullet-DIOCMF2H.js +0 -702
  170. package/dist/vue-ui-candlestick-Cf8TYPl5.js +0 -1859
  171. package/dist/vue-ui-chestnut-BMAuaeif.js +0 -2016
  172. package/dist/vue-ui-chord-DCe2iPjk.js +0 -1347
  173. package/dist/vue-ui-circle-pack-Eb5hS_z3.js +0 -1635
  174. package/dist/vue-ui-donut-CuQVKuZa.js +0 -2415
  175. package/dist/vue-ui-donut-evolution-DckruxZ9.js +0 -1552
  176. package/dist/vue-ui-dumbbell-BYU-hh2E.js +0 -1531
  177. package/dist/vue-ui-flow-DLRcNDLc.js +0 -1217
  178. package/dist/vue-ui-funnel-DjoqNN1U.js +0 -749
  179. package/dist/vue-ui-galaxy-BhR4IOra.js +0 -1085
  180. package/dist/vue-ui-gauge-Cq161Kwp.js +0 -934
  181. package/dist/vue-ui-heatmap-Bl5ymvi9.js +0 -1555
  182. package/dist/vue-ui-history-plot-CvVjsdCL.js +0 -1698
  183. package/dist/vue-ui-molecule-BExVLLgE.js +0 -929
  184. package/dist/vue-ui-nested-donuts-CWzJKr3S.js +0 -1503
  185. package/dist/vue-ui-onion-VaYZQK5i.js +0 -1235
  186. package/dist/vue-ui-quadrant-Dmtwow7n.js +0 -1967
  187. package/dist/vue-ui-radar-C3GYthqu.js +0 -1374
  188. package/dist/vue-ui-rating-CBdDXL80.js +0 -359
  189. package/dist/vue-ui-relation-circle-BA0qy0kp.js +0 -905
  190. package/dist/vue-ui-ridgeline-C5skjBTe.js +0 -1630
  191. package/dist/vue-ui-rings-BJ8yEQMw.js +0 -1252
  192. package/dist/vue-ui-scatter-DXg8ESgr.js +0 -2405
  193. package/dist/vue-ui-smiley-DQOp87rr.js +0 -376
  194. package/dist/vue-ui-spark-trend-CjCufXof.js +0 -457
  195. package/dist/vue-ui-sparkbar-BniEM15a.js +0 -401
  196. package/dist/vue-ui-sparkgauge-BtyCrqTQ.js +0 -268
  197. package/dist/vue-ui-sparkhistogram-DQdn3PW1.js +0 -589
  198. package/dist/vue-ui-sparkstackbar-BXQlOdOk.js +0 -738
  199. package/dist/vue-ui-stackbar-CkjicNDv.js +0 -2355
  200. package/dist/vue-ui-stackline-BB1IZta8.js +0 -2469
  201. package/dist/vue-ui-strip-plot-DGLGuH6e.js +0 -1740
  202. package/dist/vue-ui-table-BXz_HY2g.js +0 -1352
  203. package/dist/vue-ui-table-sparkline-MTEw3imE.js +0 -738
  204. package/dist/vue-ui-tiremarks-DoaypTC-.js +0 -540
  205. package/dist/vue-ui-treemap-Bv7PgpiC.js +0 -1733
  206. package/dist/vue-ui-waffle-z2DhvSAx.js +0 -1621
  207. package/dist/vue-ui-wheel-DYLBJuFb.js +0 -873
  208. package/dist/vue-ui-word-cloud-CbpEhSdL.js +0 -1710
  209. package/dist/vue-ui-xy-B3DQ6t46.js +0 -5283
  210. package/dist/vue-ui-xy-canvas-CJefORWc.js +0 -1824
@@ -1,1503 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { $ as t, Ct as n, D as r, Lt as i, Mt as a, Pt as o, Rt as s, S as ee, Ut as c, Vt as l, X as u, Yt as te, Zt as ne, b as re, f as ie, i as ae, lt as oe, n as se, nt as d, p as ce, q as le, t as ue, tt as de, w as fe } from "./lib-Dql7cqyA.js";
3
- import { n as pe, t as me } from "./useHints-Dq_w2E8B.js";
4
- import { t as he } from "./useConfig-C_mX5pOZ.js";
5
- import { t as ge } from "./usePrinter-DISD7q5m.js";
6
- import { n as _e, t as ve } from "./BaseScanner-DZvpgOjM.js";
7
- import { t as ye } from "./useNestedProp-Chvyfpl-.js";
8
- import { t as be } from "./useThemeCheck-C43Tcqmk.js";
9
- import { t as xe } from "./useChartExport-iwOqiIWX.js";
10
- import { t as Se } from "./img-DhGApYG0.js";
11
- import { n as Ce } from "./Title-CPHi-evi.js";
12
- import { t as we } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
- import { l as Te, t as Ee } from "./useResponsive-ZtArZtUf.js";
14
- import { t as De } from "./DefGrad-DVBqDjhO.js";
15
- import { t as Oe } from "./BaseLegendToggle-__JnV08B.js";
16
- import { t as ke } from "./A11yDataTable-DdRsVULz.js";
17
- import { t as Ae } from "./useUserOptionState-DK-_1ddE.js";
18
- import { t as je } from "./useChartAccessibility-DYqac8yF.js";
19
- import { t as Me } from "./labelUtils-BXX2NzRe.js";
20
- import { t as Ne } from "./Legend-X4kF4PvW.js";
21
- import { t as Pe } from "./vue_ui_nested_donuts-B8csIoVO.js";
22
- import { Fragment as f, Teleport as Fe, computed as p, createBlock as m, createCommentVNode as h, createElementBlock as g, createElementVNode as _, createSlots as Ie, createTextVNode as Le, createVNode as Re, defineAsyncComponent as v, guardReactiveProps as y, mergeProps as ze, nextTick as Be, normalizeClass as Ve, normalizeProps as b, normalizeStyle as He, onBeforeUnmount as Ue, onMounted as We, openBlock as x, ref as S, renderList as C, renderSlot as w, resolveDynamicComponent as Ge, shallowRef as Ke, toDisplayString as T, toRefs as qe, unref as E, vShow as Je, watch as Ye, withCtx as D, withDirectives as Xe } from "vue";
23
- //#region src/components/vue-ui-nested-donuts.vue
24
- var Ze = /* @__PURE__ */ e({ default: () => Ot }), Qe = ["id"], $e = ["id"], et = ["id"], tt = { style: { position: "relative" } }, nt = [
25
- "xmlns",
26
- "aria-describedby",
27
- "viewBox"
28
- ], rt = ["width", "height"], it = ["id"], at = ["id"], ot = ["id"], st = ["flood-color"], ct = ["id", "d"], lt = [
29
- "d",
30
- "fill",
31
- "stroke",
32
- "stroke-width",
33
- "filter"
34
- ], ut = [
35
- "d",
36
- "fill",
37
- "stroke",
38
- "stroke-width"
39
- ], dt = { key: 1 }, ft = ["d", "fill"], pt = { key: 2 }, mt = [
40
- "font-size",
41
- "font-weight",
42
- "fill",
43
- "dy"
44
- ], ht = ["href"], gt = [
45
- "x",
46
- "y",
47
- "font-size",
48
- "font-weight",
49
- "fill"
50
- ], _t = { key: 3 }, vt = ["filter"], yt = [
51
- "opacity",
52
- "text-anchor",
53
- "x",
54
- "y",
55
- "fill",
56
- "font-size",
57
- "font-weight"
58
- ], bt = [
59
- "opacity",
60
- "text-anchor",
61
- "x",
62
- "y",
63
- "fill",
64
- "font-size",
65
- "font-weight"
66
- ], xt = [
67
- "d",
68
- "fill",
69
- "onMouseenter",
70
- "onClick",
71
- "onMouseleave"
72
- ], St = {
73
- key: 0,
74
- style: {
75
- position: "absolute",
76
- top: "100%",
77
- left: "0",
78
- width: "100%"
79
- },
80
- "data-dom-to-png-ignore": "",
81
- "aria-hidden": "true"
82
- }, Ct = {
83
- key: 5,
84
- class: "vue-data-ui-watermark"
85
- }, wt = ["id"], Tt = {
86
- key: 0,
87
- class: "vue-ui-nested-donuts-legend-title"
88
- }, Et = ["onClick"], Dt = { style: {
89
- display: "flex",
90
- "align-items": "center"
91
- } }, Ot = /*#__PURE__*/ we({
92
- __name: "vue-ui-nested-donuts",
93
- props: {
94
- config: {
95
- type: Object,
96
- default() {
97
- return {};
98
- }
99
- },
100
- dataset: {
101
- type: Array,
102
- default() {
103
- return [];
104
- }
105
- }
106
- },
107
- emits: [
108
- "selectLegend",
109
- "selectDatapoint",
110
- "copyAlt"
111
- ],
112
- setup(e, { expose: we, emit: Ze }) {
113
- let Ot = v(() => import("./Tooltip-hhrkQ3Lk.js")), kt = v(() => import("./BaseIcon-t83PDe9k.js").then((e) => e.n)), At = v(() => import("./vue-ui-accordion-DRf3NQyH.js").then((e) => e.n)), jt = v(() => import("./DataTable-COIO9gi4.js")), Mt = v(() => import("./UserOptions-f3Q0nqrj.js").then((e) => e.n)), Nt = v(() => import("./PenAndPaper-BgH3m_LP.js").then((e) => e.t)), Pt = v(() => import("./PackageVersion-M2Ws-VwJ.js").then((e) => e.t)), Ft = v(() => import("./BaseDraggableDialog-BM_R41j8.js").then((e) => e.n)), { vue_ui_nested_donuts: It } = he(), { isThemeValid: Lt, warnInvalidTheme: Rt } = be(), O = e, zt = p({
114
- get() {
115
- return !!O.dataset && O.dataset.length;
116
- },
117
- set(e) {
118
- return e;
119
- }
120
- }), k = S(le()), Bt = S(!1), Vt = S(""), Ht = S(null), Ut = S(0), A = S(null), Wt = S(null), Gt = S(null), Kt = S(null), qt = S(null), Jt = S(0), Yt = S(0), Xt = S(0), j = S(!0), M = S([]), Zt = S([]), Qt = S(!1), $t = S(null), en = S(null), N = S(null), tn = S({
121
- x: 0,
122
- y: 0
123
- }), nn = S("pointer"), rn = S(!1), P = S(!1);
124
- function an(e) {
125
- P.value = e, Ut.value += 1;
126
- }
127
- let F = S(pn());
128
- pe({
129
- config: () => F.value,
130
- dataset: () => O.dataset,
131
- component: "VueUiNestedDonuts",
132
- rules: [
133
- me.emptyArray,
134
- {
135
- test: (e) => e.some((e) => e.series.length > 6),
136
- message: [
137
- "👀 Some series have > 6 data points. Consider:",
138
- "",
139
- "▶️ Grouping small values dynamically into a single \"Other\" data point.",
140
- "",
141
- "▶️ Using filters to let users choose a maximum number of data points to display.",
142
- "",
143
- "▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read."
144
- ]
145
- },
146
- {
147
- test: (e) => e.length === 1,
148
- message: [
149
- "👀 There is only one series in your dataset. Consider:",
150
- "",
151
- "▶️ Using VueUiDonut instead."
152
- ]
153
- },
154
- {
155
- test: (e) => e.length > 6,
156
- message: [
157
- "👀 The number of series in your dataset > 6. Consider:",
158
- "",
159
- "▶️ Using filters to let users choose a maximum number of series to display",
160
- "",
161
- "▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read."
162
- ]
163
- }
164
- ]
165
- });
166
- let I = p(() => F.value.userOptions.useCursorPointer), on = {
167
- name: "",
168
- series: [
169
- {
170
- name: "",
171
- values: [3],
172
- color: "#BABABA"
173
- },
174
- {
175
- name: "",
176
- values: [2],
177
- color: "#AAAAAA"
178
- },
179
- {
180
- name: "",
181
- values: [1],
182
- color: "#CACACA"
183
- }
184
- ]
185
- }, sn = p(() => ne({
186
- defaultConfig: {
187
- useCssAnimation: !1,
188
- table: { show: !1 },
189
- startAnimation: { show: !1 },
190
- userOptions: { show: !1 },
191
- style: { chart: {
192
- backgroundColor: "#99999930",
193
- layout: { labels: { dataLabels: { show: !1 } } },
194
- legend: {
195
- backgroundColor: "transparent",
196
- showValue: !1,
197
- showPercentage: !1
198
- },
199
- title: {
200
- color: "#1A1A1A",
201
- subtitle: { color: "#5A5A5A" }
202
- }
203
- } }
204
- },
205
- userConfig: F.value.skeletonConfig ?? {}
206
- })), { loading: cn, FINAL_DATASET: L, manualLoading: ln } = _e({
207
- ...qe(O),
208
- FINAL_CONFIG: F,
209
- prepareConfig: pn,
210
- callback: () => {
211
- Promise.resolve().then(async () => {
212
- await gn();
213
- });
214
- },
215
- skeletonDataset: O.config?.skeletonDataset ?? [on, on],
216
- skeletonConfig: ne({
217
- defaultConfig: F.value,
218
- userConfig: sn.value
219
- })
220
- }), { userOptionsVisible: un, setUserOptionsVisibility: dn, keepUserOptionState: fn } = Ae({ config: F.value }), { svgRef: R } = je({ config: F.value.style.chart.title });
221
- function pn() {
222
- let e = ye({
223
- userConfig: O.config,
224
- defaultConfig: It
225
- }), t = {}, n = e.theme;
226
- if (n) {
227
- if (!Lt.value(e)) Rt(e), t = e;
228
- else {
229
- let r = ye({
230
- userConfig: Pe[n] || O.config,
231
- defaultConfig: e
232
- });
233
- t = {
234
- ...ye({
235
- userConfig: O.config,
236
- defaultConfig: r
237
- }),
238
- customPalette: e.customPalette.length ? e.customPalette : te[n] || i
239
- };
240
- }
241
- } else t = e;
242
- return t;
243
- }
244
- Ye(() => O.config, (e) => {
245
- cn.value || (F.value = pn()), un.value = !F.value.userOptions.showOnChartHover, vn(), Jt.value += 1, Yt.value += 1, Xt.value += 1, V.value.dataLabels.show = F.value.style.chart.layout.labels.dataLabels.show, V.value.showTable = F.value.table.show, V.value.showTooltip = F.value.style.chart.tooltip.show, H.value.width = F.value.style.chart.width, H.value.height = F.value.style.chart.height;
246
- }, { deep: !0 });
247
- let mn = p(() => {
248
- let { top: e, right: t, bottom: n, left: r } = F.value.style.chart.padding;
249
- return {
250
- css: `padding:${e}px ${t}px ${n}px ${r}px`,
251
- top: e,
252
- right: t,
253
- bottom: n,
254
- left: r
255
- };
256
- });
257
- function hn(e, t = 1e3, n = 50) {
258
- return new Promise((r) => {
259
- let i = e.length;
260
- M.value = Array(i).fill(0), Zt.value = [];
261
- let a = 0;
262
- e.forEach((e, o) => {
263
- setTimeout(() => {
264
- let n = performance.now();
265
- function s(ee) {
266
- let c = Math.min((ee - n) / t, 1), u = e * de(c);
267
- M.value[o] = u, M.value = [...M.value];
268
- let te = [], ne = 0;
269
- O.dataset.forEach((e, t) => {
270
- let n = re(e.series.reduce((e, t) => e + re(l(t.values).reduce((e, t) => e + t, 0)), 0)) - re(M.value.slice(ne, ne + e.series.length).reduce((e, t) => e + t, 0));
271
- n > Number.MIN_VALUE && te.push({
272
- name: "__ghost__",
273
- arcOf: e.name,
274
- arcOfId: `${k.value}_${t}`,
275
- id: `ghost_${k.value}_${t}`,
276
- seriesIndex: -1,
277
- datasetIndex: t,
278
- color: "transparent",
279
- value: n,
280
- fullValue: n,
281
- absoluteValues: [],
282
- ghost: !0
283
- }), ne += e.series.length;
284
- }), Zt.value = te, c < 1 ? requestAnimationFrame(s) : (a += 1, a === i && r());
285
- }
286
- requestAnimationFrame(s);
287
- }, o * n);
288
- });
289
- });
290
- }
291
- async function gn() {
292
- if (F.value.startAnimation?.show) {
293
- let e = L.value.flatMap((e) => e.series).map((e) => l(e.values).reduce((e, t) => e + t, 0));
294
- M.value = e.map(() => 0), j.value = !0, Zt.value = L.value.map((e, t) => {
295
- let n = e.series.reduce((e, t) => e + l(t.values).reduce((e, t) => e + t, 0), 0);
296
- return {
297
- name: "__ghost__",
298
- arcOf: e.name,
299
- arcOfId: `${k.value}_${t}`,
300
- id: `ghost_${k.value}_${t}`,
301
- seriesIndex: -1,
302
- datasetIndex: t,
303
- color: "transparent",
304
- value: n,
305
- fullValue: n,
306
- absoluteValues: [],
307
- ghost: !0
308
- };
309
- }), await Be(), hn(e, F.value.startAnimation.durationMs, F.value.startAnimation.staggerMs).then(() => {
310
- j.value = !1, Zt.value = [];
311
- });
312
- } else j.value = !1;
313
- }
314
- We(async () => {
315
- Qt.value = !0, vn(), await gn();
316
- });
317
- let z = Ke(null), _n = Ke(null), B = p(() => F.value.debug);
318
- function vn() {
319
- if (o(O.dataset) ? (d({
320
- componentName: "VueUiNestedDonuts",
321
- type: "dataset",
322
- debug: B.value
323
- }), zt.value = !1, ln.value = !0) : ln.value = F.value.loading, F.value.responsive) {
324
- let e = Te(() => {
325
- let { width: e, height: t } = Ee({
326
- chart: A.value,
327
- title: F.value.style.chart.title.text ? Wt.value : null,
328
- legend: F.value.style.chart.legend.show ? Gt.value : null,
329
- source: Kt.value,
330
- noTitle: qt.value,
331
- padding: mn.value
332
- });
333
- requestAnimationFrame(() => {
334
- H.value.width = e, H.value.height = t;
335
- });
336
- });
337
- z.value && (_n.value && z.value.unobserve(_n.value), z.value.disconnect()), z.value = new ResizeObserver(e), _n.value = A.value.parentNode, z.value.observe(_n.value);
338
- }
339
- }
340
- Ue(() => {
341
- z.value && (_n.value && z.value.unobserve(_n.value), z.value.disconnect());
342
- });
343
- let { isPrinting: yn, isImaging: bn, generatePdf: xn, generateImage: Sn } = ge({
344
- elementId: `nested_donuts_${k.value}`,
345
- fileName: F.value.style.chart.title.text || "vue-ui-nested-donuts",
346
- options: F.value.userOptions.print
347
- }), Cn = p(() => F.value.userOptions.show && !F.value.style.chart.title.text), wn = p(() => fe(F.value.customPalette)), V = S({
348
- dataLabels: { show: F.value.style.chart.layout.labels.dataLabels.show },
349
- showTable: F.value.table.show,
350
- showTooltip: F.value.style.chart.tooltip.show
351
- });
352
- Ye(F, () => {
353
- V.value = {
354
- dataLabels: { show: F.value.style.chart.layout.labels.dataLabels.show },
355
- showTable: F.value.table.show,
356
- showTooltip: F.value.style.chart.tooltip.show
357
- };
358
- }, { immediate: !0 });
359
- let H = S({
360
- width: F.value.style.chart.width,
361
- height: F.value.style.chart.height
362
- }), U = Ze;
363
- function Tn({ datapoint: e, index: t, seriesIndex: n }) {
364
- F.value.events.datapointClick && F.value.events.datapointClick({
365
- datapoint: e,
366
- seriesIndex: n
367
- }), U("selectDatapoint", {
368
- datapoint: e,
369
- index: t
370
- });
371
- }
372
- function En({ from: e, to: t, duration: n, onUpdate: r, onDone: i, easing: a = de }) {
373
- let o = performance.now();
374
- function s(ee) {
375
- let c = Math.min((ee - o) / n, 1), l = a(c);
376
- r(e + (t - e) * l, c), c < 1 ? requestAnimationFrame(s) : (r(t, 1), i && i());
377
- }
378
- requestAnimationFrame(s);
379
- }
380
- let W = S([]), G = p(() => {
381
- cn.value, L.value.forEach((e, t) => {
382
- [null, void 0].includes(e.name) && d({
383
- componentName: "VueUiNestedDonuts",
384
- type: "datasetSerieAttribute",
385
- property: "name",
386
- index: t,
387
- debug: B.value
388
- }), [null, void 0].includes(e.series) ? d({
389
- componentName: "VueUiNestedDonuts",
390
- type: "datasetSerieAttribute",
391
- property: "series",
392
- index: t,
393
- debug: B.value
394
- }) : e.series.length === 0 ? d({
395
- componentName: "VueUiNestedDonuts",
396
- type: "datasetAttributeEmpty",
397
- property: `series at index ${t}`,
398
- debug: B.value
399
- }) : e.series.forEach((e, t) => {
400
- [null, void 0].includes(e.name) && d({
401
- componentName: "VueUiNestedDonuts",
402
- type: "datasetSerieAttribute",
403
- property: "name",
404
- index: t,
405
- key: "serie",
406
- debug: B.value
407
- }), [null, void 0].includes(e.values) && d({
408
- componentName: "VueUiNestedDonuts",
409
- type: "datasetSerieAttribute",
410
- property: "values",
411
- index: t,
412
- key: "serie",
413
- debug: B.value
414
- });
415
- });
416
- });
417
- let e = 0;
418
- return L.value.map((t, n) => ({
419
- ...t,
420
- total: t.series.filter((e) => !W.value.includes(e.id)).map((e) => l(e.values).reduce((e, t) => e + t, 0)).reduce((e, t) => e + t, 0),
421
- datasetIndex: n,
422
- id: `${k.value}_${n}`,
423
- series: t.series.map((r, a) => {
424
- let o = l(r.values).reduce((e, t) => e + t, 0);
425
- return {
426
- name: r.name,
427
- arcOf: t.name,
428
- arcOfId: `${k.value}_${n}`,
429
- id: `${k.value}_${n}_${a}`,
430
- seriesIndex: a,
431
- datasetIndex: n,
432
- color: ee(r.color) || wn.value[a] || i[a % i.length],
433
- value: j.value ? M.value[e++] ?? 0 : o,
434
- absoluteValues: r.values || []
435
- };
436
- })
437
- }));
438
- });
439
- Ye(() => O.dataset, (e) => {
440
- Array.isArray(e) && e.length > 0 && (ln.value = !1);
441
- }, { immediate: !0 });
442
- let K = p(() => Math.min(H.value.height, H.value.width) * (F.value.style.chart.layout.donut.strokeWidth / 512)), q = p(() => [...G.value].map((e, t) => {
443
- let n = e.series.filter((e) => !W.value.includes(e.id)).map((e) => e.value).reduce((e, t) => e + t, 0);
444
- return {
445
- ...e,
446
- total: n,
447
- series: e.series.filter((e) => !W.value.includes(e.id)).map((e) => ({
448
- ...e,
449
- proportion: e.value / n
450
- }))
451
- };
452
- }));
453
- function Dn(e, t, n) {
454
- let r = 0;
455
- for (let t = 0; t < e.length; t += 1) n.includes(e[t]) && (r += 1);
456
- return r < t;
457
- }
458
- let J = S(q.value);
459
- Ye(() => q.value, (e) => J.value = e);
460
- function On(e) {
461
- let t = e.map((e) => e.id);
462
- if (e.some((e) => W.value.includes(e.id))) {
463
- let e = new Set(t);
464
- W.value = W.value.filter((t) => !e.has(t));
465
- } else W.value.push(...t);
466
- U("selectLegend", q.value);
467
- }
468
- function Y(e) {
469
- let t = O.dataset.flatMap((e, t) => e.series.map((e, n) => ({
470
- value: l(e.values).reduce((e, t) => e + t, 0),
471
- id: `${k.value}_${t}_${n}`,
472
- arcOfId: `${k.value}_${t}`
473
- }))).find((t) => t.id === e.id);
474
- if (!t) return;
475
- let n = G.value.flatMap((e) => e.series).find((t) => t.id === e.id)?.value ?? 0, r = J.value.flatMap((e) => e.series).find((t) => t.id === e.id), i = r ? r.value : 0, a = G.value.find((e) => e.id === t.arcOfId);
476
- if (!a) return;
477
- let o = a.series.map((e) => e.id), s = Dn(o, o.length - 1, W.value);
478
- W.value.includes(e.id) ? (W.value = W.value.filter((t) => t !== e.id), F.value.serieToggleAnimation.show ? En({
479
- from: i,
480
- to: n,
481
- duration: F.value.serieToggleAnimation.durationMs,
482
- onUpdate: (t) => {
483
- J.value = J.value.map((n) => ({
484
- ...n,
485
- series: n.series.map((n) => n.id === e.id ? {
486
- ...n,
487
- value: t
488
- } : n)
489
- }));
490
- },
491
- onDone: () => {
492
- U("selectLegend", q.value);
493
- }
494
- }) : (J.value = J.value.map((t) => ({
495
- ...t,
496
- series: t.series.map((t) => t.id === e.id ? {
497
- ...t,
498
- value: n
499
- } : t)
500
- })), U("selectLegend", q.value))) : s && (F.value.serieToggleAnimation.show ? En({
501
- from: i,
502
- to: 0,
503
- duration: F.value.serieToggleAnimation.durationMs,
504
- onUpdate: (t) => {
505
- J.value = J.value.map((n) => ({
506
- ...n,
507
- series: n.series.map((n) => n.id === e.id ? {
508
- ...n,
509
- value: t
510
- } : n)
511
- }));
512
- },
513
- onDone: () => {
514
- W.value.push(e.id), U("selectLegend", q.value);
515
- }
516
- }) : (J.value = J.value.map((t) => ({
517
- ...t,
518
- series: t.series.map((t) => t.id === e.id ? {
519
- ...t,
520
- value: 0
521
- } : t)
522
- })), W.value.push(e.id), U("selectLegend", q.value)));
523
- }
524
- function kn(e) {
525
- return G.value.length ? G.value.flatMap((e) => e.series).filter((t) => t.name === e) || (B.value && console.warn(`VueUiNestedDonuts - Series name not found "${e}"`), null) : (B.value && console.warn("VueUiNestedDonuts - There are no series to show."), null);
526
- }
527
- function An(e) {
528
- let t = kn(e);
529
- t !== null && (Array.isArray(t) ? t.forEach((e) => {
530
- W.value.includes(e.id) && Y({ id: e.id });
531
- }) : W.value.includes(t.id) && Y({ id: t.id }));
532
- }
533
- function jn(e) {
534
- let t = kn(e);
535
- t !== null && (Array.isArray(t) ? t.forEach((e) => {
536
- W.value.includes(e.id) || Y({ id: e.id });
537
- }) : W.value.includes(t.id) || Y({ id: t.id }));
538
- }
539
- let Mn = p(() => K.value / G.value.length * F.value.style.chart.layout.donut.spacingRatio), Nn = p(() => J.value.map((e, t) => K.value - t * K.value / G.value.length)), X = p(() => J.value.map((e, t) => {
540
- let n = Math.abs(e.series.map((e) => e.value).reduce((e, t) => e + t, 0)) > 0, r = K.value - t * K.value / J.value.length, i = j.value ? Zt.value.find((e) => e.datasetIndex === t) : null, o = [...e.series, ...i ? [i] : []].map((e) => ({
541
- ...e,
542
- value: e.value < 1e-11 ? Number.MIN_VALUE : e.value
543
- })), s = a({ series: [{
544
- name: "_",
545
- color: F.value.style.chart.layout.donut.emptyFill,
546
- value: 1
547
- }] }, H.value.width / 2, H.value.height / 2, r, r, 1.99999, 2, 1, 360, 105.25, Mn.value), ee = `M ${H.value.width / 2},${H.value.height / 2 + r}
548
- a ${r},${r} 0 1,1 0,${-2 * r}
549
- a ${r},${r} 0 1,1 0,${2 * r}`;
550
- return {
551
- ...e,
552
- hasData: n,
553
- radius: r,
554
- skeleton: s,
555
- fullCirclePath: ee,
556
- donut: a({ series: o }, H.value.width / 2, H.value.height / 2, r, r, 1.99999, 2, 1, 360, 105.25, Mn.value)
557
- };
558
- })), Pn = p(() => [...G.value].map((e, t) => {
559
- let n = t * K.value / G.value.length;
560
- return {
561
- sizeRatio: n,
562
- donut: a({ series: [{ value: 1 }] }, H.value.width / 2, H.value.height / 2, K.value - n, K.value - n, 1.99999, 2, 1, 360, 105.25, K.value / G.value.length * F.value.style.chart.layout.donut.spacingRatio)[0]
563
- };
564
- })), Fn = S(null), In = S(null), Z = S(null), Ln = S(null);
565
- function Rn({ datapoint: e, seriesIndex: t }) {
566
- F.value.events.datapointLeave && F.value.events.datapointLeave({
567
- datapoint: e,
568
- seriesIndex: t
569
- }), Bt.value = !1, Fn.value = null, Ht.value = null, In.value = null, Z.value = null, N.value = null, nn.value = "pointer";
570
- }
571
- function zn({ val: e, percentage: t, showVal: n, showPercentage: r, config: i }) {
572
- return Me({
573
- config: i,
574
- val: e,
575
- percentage: t,
576
- showVal: n,
577
- showPercentage: r
578
- });
579
- }
580
- function Bn({ datapoint: e, _relativeIndex: t, seriesIndex: r, triggerMode: i = "pointer" }) {
581
- F.value.events.datapointEnter && F.value.events.datapointEnter({
582
- datapoint: e,
583
- seriesIndex: r
584
- }), nn.value = i, N.value = r, Fn.value = e.arcOfId, In.value = e.id, Z.value = r, Ht.value = e.id, Ln.value = {
585
- datapoint: e,
586
- seriesIndex: r,
587
- series: J.value,
588
- config: F.value
589
- };
590
- let a = F.value.style.chart.tooltip.customFormat;
591
- if (n(a) && oe(() => a({
592
- seriesIndex: r,
593
- datapoint: e,
594
- series: J.value,
595
- config: F.value
596
- }))) Vt.value = a({
597
- seriesIndex: r,
598
- datapoint: e,
599
- series: J.value,
600
- config: F.value
601
- });
602
- else {
603
- let t = "";
604
- if (F.value.style.chart.tooltip.showAllItemsAtIndex && W.value.length === 0) {
605
- let n = J.value.map((e) => e.series.find((e) => e.seriesIndex === r));
606
- n.forEach((i, a) => {
607
- if (!i) return "";
608
- t += `
609
- <div style="display:flex; flex-direction: column; justify-content:flex-start; align-items:flex-start;padding:6px 0; ${a < n.length - 1 ? `border-bottom:1px solid ${F.value.style.chart.tooltip.borderColor}` : ""}">
610
- <div style="display:flex; flex-direction: row; gap: 3px; justify-content:flex-start; align-items:center;">
611
- <svg viewBox="0 0 20 20" height="${F.value.style.chart.tooltip.fontSize}" width="${F.value.style.chart.tooltip.fontSize}">
612
- <circle cx="10" cy="10" r="10" fill="${i.color}"/>
613
- </svg>
614
- <span>
615
- ${i.arcOf ?? ""} - ${i.name}
616
- </span>
617
- </div>
618
- <span>
619
- <b>
620
- ${zn({
621
- config: F.value.style.chart.tooltip,
622
- showVal: F.value.style.chart.tooltip.showValue,
623
- showPercentage: F.value.style.chart.tooltip.showPercentage,
624
- val: ae(F.value.style.chart.layout.labels.dataLabels.formatter, e.value, u({
625
- p: F.value.style.chart.layout.labels.dataLabels.prefix,
626
- v: e.value,
627
- s: F.value.style.chart.layout.labels.dataLabels.suffix,
628
- r: F.value.style.chart.tooltip.roundingValue
629
- }), {
630
- datapoint: e,
631
- seriesIndex: r
632
- }),
633
- percentage: u({
634
- v: i.proportion * 100,
635
- s: "%",
636
- r: F.value.style.chart.tooltip.roundingPercentage
637
- })
638
- })}
639
- </b>
640
- </span>
641
- </div>
642
- `;
643
- });
644
- } else t += `<div style="width:100%;text-align:center;border-bottom:1px solid ${F.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${e.arcOf ?? ""} - ${e.name}</div>`, t += `<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="${e.color}"/></svg>`, F.value.style.chart.tooltip.showValue && (t += `<b>${ae(F.value.style.chart.layout.labels.dataLabels.formatter, e.value, u({
645
- p: F.value.style.chart.layout.labels.dataLabels.prefix,
646
- v: e.value,
647
- s: F.value.style.chart.layout.labels.dataLabels.suffix,
648
- r: F.value.style.chart.tooltip.roundingValue
649
- }), {
650
- datapoint: e,
651
- seriesIndex: r
652
- })}</b>`), F.value.style.chart.tooltip.showPercentage && (F.value.style.chart.tooltip.showValue ? t += `<span>(${u({
653
- v: e.proportion * 100,
654
- s: "%",
655
- r: F.value.style.chart.tooltip.roundingPercentage
656
- })})</span></div>` : t += `<b>${u({
657
- v: e.proportion * 100,
658
- s: "%",
659
- r: F.value.style.chart.tooltip.roundingPercentage
660
- })}</b></div>`);
661
- Vt.value = `<div style="font-size:${F.value.style.chart.tooltip.fontSize}px">${t}</div>`;
662
- }
663
- Bt.value = !0;
664
- }
665
- function Vn(e) {
666
- return e.proportion * 100 > F.value.style.chart.layout.labels.dataLabels.hideUnderValue;
667
- }
668
- function Hn(e, t) {
669
- if (!F.value.useBlurOnHover) return "";
670
- if (F.value.style.chart.tooltip.showAllItemsAtIndex && W.value.length === 0) return [null, void 0].includes(Z.value) || Z.value === t ? "" : `url(#blur_${k.value})`;
671
- if (!F.value.style.chart.tooltip.showAllItemsAtIndex || W.value.length) return [null, void 0].includes(In.value) || In.value === e.id ? "" : `url(#blur_${k.value})`;
672
- }
673
- let Un = p(() => G.value.map((e, t) => {
674
- let n = e.series.filter((e) => !W.value.includes(e.id)), r = j.value ? n.map((e) => {
675
- let n = L.value[t].series.findIndex((t) => t.name === e.name);
676
- return l(L.value[t].series[n].values).reduce((e, t) => e + t, 0);
677
- }).reduce((e, t) => e + t, 0) : n.map((e) => e.value).reduce((e, t) => e + t, 0);
678
- return e.series.map((e, n) => {
679
- let i = l(L.value[t].series[n].values).reduce((e, t) => e + t, 0), a = j.value ? i : e.value, o = zn({
680
- val: ae(F.value.style.chart.layout.labels.dataLabels.formatter, a, u({
681
- p: F.value.style.chart.layout.labels.dataLabels.prefix,
682
- v: a,
683
- s: F.value.style.chart.layout.labels.dataLabels.suffix,
684
- r: F.value.style.chart.legend.roundingValue
685
- }), {
686
- datapoint: e,
687
- seriesIndex: n
688
- }),
689
- percentage: isNaN(a / r) || W.value.includes(e.id) ? "-" : u({
690
- v: a / r * 100,
691
- s: "%",
692
- r: F.value.style.chart.legend.roundingPercentage
693
- }),
694
- showVal: F.value.style.chart.legend.showValue,
695
- showPercentage: F.value.style.chart.legend.showPercentage,
696
- config: F.value.style.chart.legend
697
- }), s = `${e.name}${F.value.style.chart.legend.showPercentage || F.value.style.chart.legend.showValue ? ": " : ""}${o}`;
698
- return {
699
- name: e.name,
700
- color: e.color,
701
- value: a,
702
- display: s,
703
- svgDisplay: `${e.arcOf ? `${e.arcOf} - ` : ""}${s}`,
704
- shape: "circle",
705
- arcOf: e.arcOf,
706
- id: e.id,
707
- seriesIndex: n,
708
- datasetIndex: t,
709
- total: r,
710
- opacity: W.value.includes(e.id) ? .5 : 1,
711
- segregate: () => Y(e),
712
- isSegregated: W.value.includes(e.id)
713
- };
714
- });
715
- })), Wn = p(() => ({
716
- cy: "nested-donuts-legend",
717
- backgroundColor: F.value.style.chart.legend.backgroundColor,
718
- color: F.value.style.chart.legend.color,
719
- fontSize: F.value.style.chart.legend.fontSize,
720
- paddingBottom: 12,
721
- fontWeight: F.value.style.chart.legend.bold ? "bold" : ""
722
- })), Q = p(() => ({
723
- head: J.value.flatMap((e) => e.series.map((t) => ({
724
- name: `${e.name} - ${t.name}`,
725
- color: t.color,
726
- total: e.total
727
- }))),
728
- body: J.value.flatMap((e) => e.series.map((e) => e.value))
729
- }));
730
- function Gn(e = null) {
731
- Be(() => {
732
- let n = Q.value.head.map((e, t) => [
733
- [e.name],
734
- [Q.value.body[t]],
735
- [isNaN(Q.value.body[t] / e.total) ? "-" : Q.value.body[t] / e.total * 100]
736
- ]), i = [
737
- [F.value.style.chart.title.text],
738
- [F.value.style.chart.title.subtitle.text],
739
- [
740
- [""],
741
- ["val"],
742
- ["%"]
743
- ]
744
- ].concat(n), a = r(i);
745
- e ? e(a) : t({
746
- csvContent: a,
747
- title: F.value.style.chart.title.text || "vue-ui-nested-donuts"
748
- });
749
- });
750
- }
751
- let Kn = p(() => {
752
- let e = [
753
- F.value.table.columnNames.series,
754
- F.value.table.columnNames.value,
755
- F.value.table.columnNames.percentage
756
- ], t = Q.value.head.map((e, t) => {
757
- let n = u({
758
- p: F.value.style.chart.layout.labels.dataLabels.prefix,
759
- v: Q.value.body[t],
760
- s: F.value.style.chart.layout.labels.dataLabels.suffix,
761
- r: F.value.table.td.roundingValue
762
- });
763
- return [
764
- {
765
- color: e.color,
766
- name: e.name
767
- },
768
- n,
769
- isNaN(Q.value.body[t] / e.total) ? "-" : u({
770
- v: Q.value.body[t] / e.total * 100,
771
- s: "%",
772
- r: F.value.table.td.roundingPercentage
773
- })
774
- ];
775
- }), n = t.map((e) => e.map((e, t) => t === 0 ? e.name : e)), r = {
776
- th: {
777
- backgroundColor: F.value.table.th.backgroundColor,
778
- color: F.value.table.th.color,
779
- outline: F.value.table.th.outline
780
- },
781
- td: {
782
- backgroundColor: F.value.table.td.backgroundColor,
783
- color: F.value.table.td.color,
784
- outline: F.value.table.td.outline
785
- },
786
- breakpoint: F.value.table.responsiveBreakpoint
787
- };
788
- return {
789
- colNames: [
790
- F.value.table.columnNames.series,
791
- F.value.table.columnNames.value,
792
- F.value.table.columnNames.percentage
793
- ],
794
- head: e,
795
- body: t,
796
- a11yBody: n,
797
- config: r
798
- };
799
- });
800
- function qn() {
801
- return G.value;
802
- }
803
- function Jn() {
804
- V.value.showTable = !V.value.showTable;
805
- }
806
- function Yn() {
807
- V.value.dataLabels.show = !V.value.dataLabels.show;
808
- }
809
- function Xn() {
810
- V.value.showTooltip = !V.value.showTooltip;
811
- }
812
- let Zn = S(!1);
813
- function Qn() {
814
- Zn.value = !Zn.value;
815
- }
816
- async function $n({ scale: e = 2 } = {}) {
817
- if (!A.value) return;
818
- let { width: t, height: n } = A.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await Se({
819
- domElement: A.value,
820
- base64: !0,
821
- img: !0,
822
- scale: e
823
- });
824
- return {
825
- imageUri: i,
826
- base64: a,
827
- title: F.value.style.chart.title.text,
828
- width: t,
829
- height: n,
830
- aspectRatio: r
831
- };
832
- }
833
- let er = S(null);
834
- function tr() {
835
- if (!er.value) return;
836
- let { x: e, y: t, width: n, height: r } = er.value.getBBox();
837
- R.value && R.value.setAttribute("viewBox", `${e} ${t} ${n + Math.min(0, e)} ${r + Math.min(0, t)}`);
838
- }
839
- let nr = p(() => {
840
- let e = F.value.table.useDialog && !F.value.table.show, t = V.value.showTable;
841
- return {
842
- component: e ? Ft : At,
843
- title: `${F.value.style.chart.title.text}${F.value.style.chart.title.subtitle.text ? `: ${F.value.style.chart.title.subtitle.text}` : ""}`,
844
- props: e ? {
845
- backgroundColor: F.value.table.th.backgroundColor,
846
- color: F.value.table.th.color,
847
- headerColor: F.value.table.th.color,
848
- headerBg: F.value.table.th.backgroundColor,
849
- isFullscreen: P.value,
850
- fullscreenParent: A.value,
851
- forcedWidth: Math.min(800, window.innerWidth * .8),
852
- isCursorPointer: I.value
853
- } : {
854
- hideDetails: !0,
855
- config: {
856
- open: t,
857
- maxHeight: 1e4,
858
- body: {
859
- backgroundColor: F.value.style.chart.backgroundColor,
860
- color: F.value.style.chart.color
861
- },
862
- head: {
863
- backgroundColor: F.value.style.chart.backgroundColor,
864
- color: F.value.style.chart.color
865
- }
866
- }
867
- }
868
- };
869
- });
870
- Ye(() => V.value.showTable, (e) => {
871
- F.value.table.show || (e && F.value.table.useDialog && $t.value ? $t.value.open() : "close" in $t.value && $t.value.close());
872
- });
873
- function rr() {
874
- V.value.showTable = !1, en.value && en.value.setTableIconState(!1);
875
- }
876
- let ir = p(() => F.value.style.chart.backgroundColor), ar = p(() => F.value.style.chart.legend), or = p(() => F.value.style.chart.title), sr = p(() => Un.value.flat().map((e) => ({
877
- ...e,
878
- name: e.svgDisplay
879
- }))), { isCallbackImaging: cr, isCallbackSvg: lr, generateSvg: ur, onGenerateImage: dr } = xe({
880
- svg: R,
881
- title: or,
882
- legend: ar,
883
- legendItems: sr,
884
- backgroundColor: ir,
885
- getSvgCallback: () => F.value.userOptions.callbacks.svg,
886
- generateImage: Sn
887
- });
888
- async function fr() {
889
- if (U("copyAlt", {
890
- config: F.value,
891
- dataset: J.value
892
- }), !F.value.userOptions.callbacks.altCopy) {
893
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
894
- return;
895
- }
896
- await Promise.resolve(F.value.userOptions.callbacks.altCopy({
897
- config: F.value,
898
- dataset: J.value
899
- }));
900
- }
901
- let $ = p(() => X.value.flatMap((e) => e.donut.filter((e) => !e.ghost)));
902
- function pr() {
903
- N.value = null, rn.value = !0;
904
- }
905
- function mr() {
906
- N.value = null, nn.value = "pointer", Bt.value = !1, Fn.value = null, Ht.value = null, In.value = null, Z.value = null, rn.value = !1;
907
- }
908
- function hr(e) {
909
- if (!R.value || Zn.value || document.activeElement !== R.value || !$.value.length) return;
910
- let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
911
- if (!t && !n && !r && !i) return;
912
- if (e.preventDefault(), e.stopPropagation(), i) {
913
- N.value = null, nn.value = "pointer", Bt.value = !1, Fn.value = null, Ht.value = null, In.value = null, Z.value = null;
914
- return;
915
- }
916
- if (r) {
917
- if (N.value === null) return;
918
- let e = $.value[N.value];
919
- if (!e) return;
920
- Tn({
921
- datapoint: e,
922
- index: N.value,
923
- seriesIndex: e.seriesIndex
924
- });
925
- return;
926
- }
927
- let a = N.value, o = Z.value, s = a !== null && a >= 0 && a < $.value.length, ee = o !== null && o >= 0 && o < $.value.length;
928
- s ? n ? (a += 1, a >= $.value.length && (a = 0)) : t && (--a, a < 0 && (a = $.value.length - 1)) : ee ? (a = n ? o + 1 : o - 1, a >= $.value.length && (a = 0), a < 0 && (a = $.value.length - 1)) : a = n ? 0 : $.value.length - 1;
929
- let c = $.value[a];
930
- c && (N.value = a, gr(), Bn({
931
- datapoint: c,
932
- relativeIndex: a,
933
- seriesIndex: c.seriesIndex,
934
- show: !0,
935
- triggerMode: "keyboard"
936
- }));
937
- }
938
- function gr() {
939
- if (!R.value) return;
940
- let e = R.value.getBoundingClientRect();
941
- tn.value = {
942
- x: e.left + e.width / 2,
943
- y: e.top + e.height / 2
944
- };
945
- }
946
- let _r = p(() => ({
947
- headers: Kn.value?.colNames ?? [],
948
- rows: Kn.value?.a11yBody ?? []
949
- }));
950
- return we({
951
- autoSize: tr,
952
- getData: qn,
953
- getImage: $n,
954
- generatePdf: xn,
955
- generateCsv: Gn,
956
- generateImage: Sn,
957
- generateSvg: ur,
958
- hideSeries: jn,
959
- showSeries: An,
960
- toggleTable: Jn,
961
- toggleLabels: Yn,
962
- toggleTooltip: Xn,
963
- toggleAnnotator: Qn,
964
- toggleFullscreen: an,
965
- copyAlt: fr
966
- }), (e, t) => (x(), g("div", {
967
- ref_key: "nestedDonutsChart",
968
- ref: A,
969
- class: Ve(`vue-data-ui-component vue-ui-nested-donuts ${P.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${F.value.useCssAnimation ? "" : "vue-ui-dna"}`),
970
- style: He(`font-family:${F.value.style.fontFamily};width:100%; text-align:center;background:${F.value.style.chart.backgroundColor}`),
971
- id: `nested_donuts_${k.value}`,
972
- onMouseenter: t[2] ||= () => E(dn)(!0),
973
- onMouseleave: t[3] ||= () => E(dn)(!1)
974
- }, [
975
- _("div", {
976
- id: `chart-instructions-${k.value}`,
977
- class: "sr-only"
978
- }, [_("p", null, T(F.value.a11y.translations.keyboardNavigation), 1)], 8, $e),
979
- _r.value?.rows?.length ? (x(), m(ke, {
980
- key: 0,
981
- uid: k.value,
982
- head: _r.value.headers,
983
- body: _r.value.rows,
984
- notice: F.value.a11y.translations.tableAvailable,
985
- caption: F.value.a11y.translations.tableCaption
986
- }, null, 8, [
987
- "uid",
988
- "head",
989
- "body",
990
- "notice",
991
- "caption"
992
- ])) : h("", !0),
993
- F.value.userOptions.buttons.annotator ? (x(), m(E(Nt), {
994
- key: 1,
995
- svgRef: E(R),
996
- backgroundColor: F.value.style.chart.backgroundColor,
997
- color: F.value.style.chart.color,
998
- active: Zn.value,
999
- isCursorPointer: I.value,
1000
- palette: F.value.userOptions.annotatorPalette,
1001
- onClose: Qn
1002
- }, {
1003
- "annotator-action-close": D(() => [w(e.$slots, "annotator-action-close", {}, void 0, !0)]),
1004
- "annotator-action-color": D(({ color: t }) => [w(e.$slots, "annotator-action-color", b(y({ color: t })), void 0, !0)]),
1005
- "annotator-action-draw": D(({ mode: t }) => [w(e.$slots, "annotator-action-draw", b(y({ mode: t })), void 0, !0)]),
1006
- "annotator-action-undo": D(({ disabled: t }) => [w(e.$slots, "annotator-action-undo", b(y({ disabled: t })), void 0, !0)]),
1007
- "annotator-action-redo": D(({ disabled: t }) => [w(e.$slots, "annotator-action-redo", b(y({ disabled: t })), void 0, !0)]),
1008
- "annotator-action-delete": D(({ disabled: t }) => [w(e.$slots, "annotator-action-delete", b(y({ disabled: t })), void 0, !0)]),
1009
- _: 3
1010
- }, 8, [
1011
- "svgRef",
1012
- "backgroundColor",
1013
- "color",
1014
- "active",
1015
- "isCursorPointer",
1016
- "palette"
1017
- ])) : h("", !0),
1018
- Cn.value ? (x(), g("div", {
1019
- key: 2,
1020
- ref_key: "noTitle",
1021
- ref: qt,
1022
- class: "vue-data-ui-no-title-space",
1023
- style: "height:36px; width: 100%;background:transparent"
1024
- }, null, 512)) : h("", !0),
1025
- F.value.style.chart.title.text ? (x(), g("div", {
1026
- key: 3,
1027
- ref_key: "chartTitle",
1028
- ref: Wt
1029
- }, [(x(), m(Ce, {
1030
- key: `title_${Jt.value}`,
1031
- config: {
1032
- title: {
1033
- cy: "donut-div-title",
1034
- ...F.value.style.chart.title
1035
- },
1036
- subtitle: {
1037
- cy: "donut-div-subtitle",
1038
- ...F.value.style.chart.title.subtitle
1039
- }
1040
- }
1041
- }, null, 8, ["config"]))], 512)) : h("", !0),
1042
- _("div", { id: `legend-top-${k.value}` }, null, 8, et),
1043
- F.value.userOptions.show && zt.value && (E(fn) || E(un)) ? (x(), m(E(Mt), {
1044
- ref_key: "userOptionsRef",
1045
- ref: en,
1046
- key: `user_option_${Ut.value}`,
1047
- backgroundColor: F.value.style.chart.backgroundColor,
1048
- color: F.value.style.chart.color,
1049
- isPrinting: E(yn),
1050
- isImaging: E(bn),
1051
- uid: k.value,
1052
- hasTooltip: F.value.userOptions.buttons.tooltip && F.value.style.chart.tooltip.show,
1053
- hasPdf: F.value.userOptions.buttons.pdf,
1054
- hasXls: F.value.userOptions.buttons.csv,
1055
- hasImg: F.value.userOptions.buttons.img,
1056
- hasSvg: F.value.userOptions.buttons.svg,
1057
- hasTable: F.value.userOptions.buttons.table,
1058
- hasLabel: F.value.userOptions.buttons.labels,
1059
- hasFullscreen: F.value.userOptions.buttons.fullscreen,
1060
- hasAltCopy: F.value.userOptions.buttons.altCopy,
1061
- isFullscreen: P.value,
1062
- isTooltip: V.value.showTooltip,
1063
- titles: { ...F.value.userOptions.buttonTitles },
1064
- chartElement: A.value,
1065
- position: F.value.userOptions.position,
1066
- hasAnnotator: F.value.userOptions.buttons.annotator,
1067
- isAnnotation: Zn.value,
1068
- callbacks: F.value.userOptions.callbacks,
1069
- printScale: F.value.userOptions.print.scale,
1070
- tableDialog: F.value.table.useDialog,
1071
- isCursorPointer: I.value,
1072
- onToggleFullscreen: an,
1073
- onGeneratePdf: E(xn),
1074
- onGenerateCsv: Gn,
1075
- onGenerateImage: E(dr),
1076
- onGenerateSvg: E(ur),
1077
- onToggleTable: Jn,
1078
- onToggleLabels: Yn,
1079
- onToggleTooltip: Xn,
1080
- onToggleAnnotator: Qn,
1081
- onCopyAlt: fr,
1082
- style: He({ visibility: E(fn) ? E(un) ? "visible" : "hidden" : "visible" })
1083
- }, Ie({ _: 2 }, [
1084
- e.$slots.menuIcon ? {
1085
- name: "menuIcon",
1086
- fn: D(({ isOpen: t, color: n }) => [w(e.$slots, "menuIcon", b(y({
1087
- isOpen: t,
1088
- color: n
1089
- })), void 0, !0)]),
1090
- key: "0"
1091
- } : void 0,
1092
- e.$slots.optionTooltip ? {
1093
- name: "optionTooltip",
1094
- fn: D(() => [w(e.$slots, "optionTooltip", {}, void 0, !0)]),
1095
- key: "1"
1096
- } : void 0,
1097
- e.$slots.optionPdf ? {
1098
- name: "optionPdf",
1099
- fn: D(() => [w(e.$slots, "optionPdf", {}, void 0, !0)]),
1100
- key: "2"
1101
- } : void 0,
1102
- e.$slots.optionCsv ? {
1103
- name: "optionCsv",
1104
- fn: D(() => [w(e.$slots, "optionCsv", {}, void 0, !0)]),
1105
- key: "3"
1106
- } : void 0,
1107
- e.$slots.optionImg ? {
1108
- name: "optionImg",
1109
- fn: D(() => [w(e.$slots, "optionImg", {}, void 0, !0)]),
1110
- key: "4"
1111
- } : void 0,
1112
- e.$slots.optionSvg ? {
1113
- name: "optionSvg",
1114
- fn: D(() => [w(e.$slots, "optionSvg", {}, void 0, !0)]),
1115
- key: "5"
1116
- } : void 0,
1117
- e.$slots.optionTable ? {
1118
- name: "optionTable",
1119
- fn: D(() => [w(e.$slots, "optionTable", {}, void 0, !0)]),
1120
- key: "6"
1121
- } : void 0,
1122
- e.$slots.optionLabels ? {
1123
- name: "optionLabels",
1124
- fn: D(() => [w(e.$slots, "optionLabels", {}, void 0, !0)]),
1125
- key: "7"
1126
- } : void 0,
1127
- e.$slots.optionFullscreen ? {
1128
- name: "optionFullscreen",
1129
- fn: D(({ toggleFullscreen: t, isFullscreen: n }) => [w(e.$slots, "optionFullscreen", b(y({
1130
- toggleFullscreen: t,
1131
- isFullscreen: n
1132
- })), void 0, !0)]),
1133
- key: "8"
1134
- } : void 0,
1135
- e.$slots.optionAnnotator ? {
1136
- name: "optionAnnotator",
1137
- fn: D(({ toggleAnnotator: t, isAnnotator: n }) => [w(e.$slots, "optionAnnotator", b(y({
1138
- toggleAnnotator: t,
1139
- isAnnotator: n
1140
- })), void 0, !0)]),
1141
- key: "9"
1142
- } : void 0,
1143
- e.$slots.optionAltCopy ? {
1144
- name: "optionAltCopy",
1145
- fn: D(({ altCopy: t }) => [w(e.$slots, "optionAltCopy", b(y({ altCopy: t })), void 0, !0)]),
1146
- key: "10"
1147
- } : void 0,
1148
- e.$slots["custom-menu-before"] ? {
1149
- name: "custom-menu-before",
1150
- fn: D(() => [w(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1151
- key: "11"
1152
- } : void 0,
1153
- e.$slots["custom-menu-after"] ? {
1154
- name: "custom-menu-after",
1155
- fn: D(() => [w(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1156
- key: "12"
1157
- } : void 0
1158
- ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasLabel.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : h("", !0),
1159
- _("div", tt, [(x(), g("svg", {
1160
- ref_key: "svgRef",
1161
- ref: R,
1162
- xmlns: E(ue),
1163
- "aria-describedby": `chart-instructions-${k.value}`,
1164
- class: Ve({
1165
- "vue-data-ui-fullscreen--on": P.value,
1166
- "vue-data-ui-fulscreen--off": !P.value,
1167
- "vue-data-ui-svg": !0
1168
- }),
1169
- viewBox: `0 0 ${H.value.width <= 0 ? .001 : H.value.width} ${H.value.height < 0 ? .001 : H.value.height}`,
1170
- style: He(`max-width:100%; overflow: visible; background:transparent;color:${F.value.style.chart.color};${mn.value.css}`),
1171
- tabindex: "0",
1172
- onFocus: pr,
1173
- onBlur: mr,
1174
- onKeydown: hr
1175
- }, [_("g", {
1176
- ref_key: "G",
1177
- ref: er,
1178
- class: "vue-data-ui-g"
1179
- }, [
1180
- Re(E(Pt)),
1181
- e.$slots["chart-background"] ? (x(), g("foreignObject", {
1182
- key: 0,
1183
- x: 0,
1184
- y: 0,
1185
- width: H.value.width <= 0 ? .001 : H.value.width,
1186
- height: H.value.height < 0 ? .001 : H.value.height,
1187
- style: { pointerEvents: "none" }
1188
- }, [w(e.$slots, "chart-background", {}, void 0, !0)], 8, rt)) : h("", !0),
1189
- _("defs", null, [(x(!0), g(f, null, C(Pn.value, (e, t) => (x(), m(De, {
1190
- t: "radial",
1191
- id: `radial_${k.value}_${t}`,
1192
- key: `radial_${k.value}_${t}`,
1193
- stops: [
1194
- [
1195
- "0%",
1196
- "#FFFFFF",
1197
- 0
1198
- ],
1199
- [
1200
- `${(1 - Mn.value / Nn.value[t]) * 100}%`,
1201
- E(c)("#FFFFFF", 0),
1202
- 0
1203
- ],
1204
- [
1205
- `${(1 - Mn.value / Nn.value[t] / 2) * 100}%`,
1206
- "#FFFFFF",
1207
- F.value.style.chart.gradientIntensity / 100
1208
- ],
1209
- [
1210
- "100%",
1211
- "#FFFFFF",
1212
- 0
1213
- ]
1214
- ]
1215
- }, null, 8, ["id", "stops"]))), 128))]),
1216
- _("defs", null, [_("filter", {
1217
- id: `blur_${k.value}`,
1218
- x: "-50%",
1219
- y: "-50%",
1220
- width: "200%",
1221
- height: "200%"
1222
- }, [_("feGaussianBlur", {
1223
- in: "SourceGraphic",
1224
- stdDeviation: 2,
1225
- id: `blur_std_${k.value}`
1226
- }, null, 8, at), t[4] ||= _("feColorMatrix", {
1227
- type: "saturate",
1228
- values: "0"
1229
- }, null, -1)], 8, it), _("filter", {
1230
- id: `shadow_${k.value}`,
1231
- "color-interpolation-filters": "sRGB"
1232
- }, [_("feDropShadow", {
1233
- dx: "0",
1234
- dy: "0",
1235
- stdDeviation: "10",
1236
- "flood-opacity": "0.5",
1237
- "flood-color": F.value.style.chart.layout.donut.shadowColor
1238
- }, null, 8, st)], 8, ot)]),
1239
- _("defs", null, [(x(!0), g(f, null, C(X.value, (e, t) => (x(), g("path", {
1240
- key: `path-full-${t}`,
1241
- id: `path-full-${t}-${k.value}`,
1242
- d: e.fullCirclePath,
1243
- fill: "none"
1244
- }, null, 8, ct))), 128))]),
1245
- (x(!0), g(f, null, C(X.value, (e, t) => (x(), g("g", null, [e.hasData ? (x(!0), g(f, { key: 0 }, C(e.donut.filter((e) => !e.ghost), (e, t) => (x(), g("g", null, [_("path", {
1246
- class: "vue-ui-donut-arc-path",
1247
- d: e.arcSlice,
1248
- fill: e.color,
1249
- stroke: F.value.style.chart.layout.donut.borderColorAuto ? F.value.style.chart.backgroundColor : F.value.style.chart.layout.donut.borderColor,
1250
- "stroke-width": F.value.style.chart.layout.donut.borderWidth,
1251
- filter: Hn(e, t)
1252
- }, null, 8, lt)]))), 256)) : (x(!0), g(f, { key: 1 }, C(e.skeleton, (e, t) => (x(), g("g", null, [_("path", {
1253
- class: "vue-ui-donut-arc-path",
1254
- d: e.arcSlice,
1255
- fill: e.color,
1256
- stroke: F.value.style.chart.layout.donut.borderColorAuto ? F.value.style.chart.backgroundColor : F.value.style.chart.layout.donut.borderColor,
1257
- "stroke-width": F.value.style.chart.layout.donut.borderWidth
1258
- }, null, 8, ut)]))), 256))]))), 256)),
1259
- F.value.style.chart.useGradient ? (x(), g("g", dt, [(x(!0), g(f, null, C(Pn.value, (e, t) => (x(), g("g", null, [_("path", {
1260
- d: e.donut.arcSlice,
1261
- fill: `url(#radial_${k.value}_${t})`,
1262
- stroke: "transparent",
1263
- "stroke-width": "0"
1264
- }, null, 8, ft)]))), 256))])) : h("", !0),
1265
- F.value.style.chart.layout.labels.dataLabels.showDonutName ? (x(), g("g", pt, [F.value.style.chart.layout.labels.dataLabels.curvedDonutName ? (x(!0), g(f, { key: 0 }, C(X.value, (e, t) => (x(), g("g", null, [(x(!0), g(f, null, C(e.donut, (n, r) => (x(), g("g", null, [r === 0 && H.value.width && H.value.height ? (x(), g("text", {
1266
- key: 0,
1267
- "text-anchor": "middle",
1268
- "font-size": F.value.style.chart.layout.labels.dataLabels.fontSize,
1269
- "font-weight": F.value.style.chart.layout.labels.dataLabels.boldDonutName ? "bold" : "normal",
1270
- fill: F.value.style.chart.layout.labels.dataLabels.color,
1271
- dy: F.value.style.chart.layout.labels.dataLabels.donutNameOffsetY
1272
- }, [_("textPath", {
1273
- href: `#path-full-${t}-${k.value}`,
1274
- startOffset: "50%",
1275
- "text-anchor": "middle",
1276
- method: "align",
1277
- spacing: "auto"
1278
- }, T(F.value.style.chart.layout.labels.dataLabels.donutNameAbbreviation ? E(se)({
1279
- source: e.name,
1280
- length: F.value.style.chart.layout.labels.dataLabels.donutNameMaxAbbreviationSize
1281
- }) : e.name), 9, ht)], 8, mt)) : h("", !0)]))), 256))]))), 256)) : (x(!0), g(f, { key: 1 }, C(X.value, (e, t) => (x(), g("g", null, [(x(!0), g(f, null, C(e.donut, (t, n) => (x(), g("g", null, [n === 0 && H.value.width && H.value.height ? (x(), g("text", {
1282
- key: 0,
1283
- x: H.value.width / 2,
1284
- y: t.startY - F.value.style.chart.layout.labels.dataLabels.fontSize + F.value.style.chart.layout.labels.dataLabels.donutNameOffsetY,
1285
- "text-anchor": "middle",
1286
- "font-size": F.value.style.chart.layout.labels.dataLabels.fontSize,
1287
- "font-weight": F.value.style.chart.layout.labels.dataLabels.boldDonutName ? "bold" : "normal",
1288
- fill: F.value.style.chart.layout.labels.dataLabels.color
1289
- }, T(F.value.style.chart.layout.labels.dataLabels.donutNameAbbreviation ? E(se)({
1290
- source: e.name,
1291
- length: F.value.style.chart.layout.labels.dataLabels.donutNameMaxAbbreviationSize
1292
- }) : e.name), 9, gt)) : h("", !0)]))), 256))]))), 256))])) : h("", !0),
1293
- F.value.style.chart.layout.labels.dataLabels.show ? (x(), g("g", _t, [(x(!0), g(f, null, C(X.value, (e, t) => (x(), g("g", null, [(x(!0), g(f, null, C(e.donut.filter((e) => !e.ghost), (e, n) => (x(), g("g", { filter: Hn(e, n) }, [Xe(_("text", {
1294
- opacity: +!!Vn(e),
1295
- "text-anchor": E(ie)(e, !0).anchor,
1296
- x: E(ie)(e, !1, F.value.style.chart.layout.labels.dataLabels.offsetX).x || 0,
1297
- y: E(ce)(e, F.value.style.chart.layout.labels.dataLabels.offsetY, F.value.style.chart.layout.labels.dataLabels.offsetY) + (F.value.style.chart.layout.labels.dataLabels.showValueFirst && F.value.style.chart.layout.labels.dataLabels.showValue ? F.value.style.chart.layout.labels.dataLabels.fontSize : 0),
1298
- fill: F.value.style.chart.layout.labels.dataLabels.useSerieColor ? e.color : F.value.style.chart.layout.labels.dataLabels.color,
1299
- "font-size": F.value.style.chart.layout.labels.dataLabels.fontSize,
1300
- "font-weight": F.value.style.chart.layout.labels.dataLabels.boldPercentage ? "bold" : "normal"
1301
- }, T(E(s)(E(u)({
1302
- v: e.proportion * 100,
1303
- s: "%",
1304
- r: F.value.style.chart.layout.labels.dataLabels.roundingPercentage
1305
- }), F.value.style.chart.layout.labels.dataLabels.usePercentageParens ? "(" : "", F.value.style.chart.layout.labels.dataLabels.usePercentageParens ? ")" : "")), 9, yt), [[Je, V.value.dataLabels.show && F.value.style.chart.layout.labels.dataLabels.showPercentage]]), Xe(_("text", {
1306
- opacity: +!!Vn(e),
1307
- "text-anchor": E(ie)(e, !0).anchor,
1308
- x: E(ie)(e, !1, F.value.style.chart.layout.labels.dataLabels.offsetX).x || 0,
1309
- y: E(ce)(e, F.value.style.chart.layout.labels.dataLabels.offsetY, F.value.style.chart.layout.labels.dataLabels.offsetY) + (F.value.style.chart.layout.labels.dataLabels.showValueFirst || !F.value.style.chart.layout.labels.dataLabels.showPercentage ? 0 : F.value.style.chart.layout.labels.dataLabels.fontSize),
1310
- fill: F.value.style.chart.layout.labels.dataLabels.useSerieColor ? e.color : F.value.style.chart.layout.labels.dataLabels.color,
1311
- "font-size": F.value.style.chart.layout.labels.dataLabels.fontSize,
1312
- "font-weight": F.value.style.chart.layout.labels.dataLabels.boldValue ? "bold" : "normal"
1313
- }, T(E(s)(E(ae)(F.value.style.chart.layout.labels.dataLabels.formatter, e.value, E(u)({
1314
- p: F.value.style.chart.layout.labels.dataLabels.prefix,
1315
- v: e.value,
1316
- s: F.value.style.chart.layout.labels.dataLabels.suffix,
1317
- r: F.value.style.chart.layout.labels.dataLabels.roundingValue
1318
- }), {
1319
- datapoint: e,
1320
- seriesIndex: t,
1321
- datapointIndex: n
1322
- }), F.value.style.chart.layout.labels.dataLabels.useValueParens ? "(" : "", F.value.style.chart.layout.labels.dataLabels.useValueParens ? ")" : "")), 9, bt), [[Je, V.value.dataLabels.show && F.value.style.chart.layout.labels.dataLabels.showValue]])], 8, vt))), 256))]))), 256))])) : h("", !0),
1323
- (x(!0), g(f, null, C(X.value, (e, t) => (x(), g("g", null, [(x(!0), g(f, null, C(e.donut, (e, t) => (x(), g("g", null, [_("path", {
1324
- d: e.arcSlice,
1325
- fill: Ht.value === e.id ? F.value.style.chart.layout.donut.selectedColor : "transparent",
1326
- onMouseenter: (t) => Bn({
1327
- datapoint: e,
1328
- relativeIndex: $.value.findIndex((t) => t.id === e.id),
1329
- seriesIndex: e.seriesIndex
1330
- }),
1331
- onClick: (n) => Tn({
1332
- datapoint: e,
1333
- index: t,
1334
- seriesIndex: e.seriesIndex
1335
- }),
1336
- onMouseleave: (t) => Rn({
1337
- datapoint: e,
1338
- seriesIndex: e.seriesIndex
1339
- })
1340
- }, null, 40, xt)]))), 256))]))), 256)),
1341
- w(e.$slots, "svg", { svg: {
1342
- ...H.value,
1343
- isPrintingImg: E(yn) || E(bn) || E(cr),
1344
- isPrintingSvg: E(lr)
1345
- } }, void 0, !0)
1346
- ], 512)], 46, nt)), e.$slots.hint ? (x(), g("div", St, [w(e.$slots, "hint", b(y({
1347
- hint: F.value.a11y.translations.keyboardNavigation,
1348
- isVisible: rn.value
1349
- })), void 0, !0)])) : h("", !0)]),
1350
- e.$slots.watermark ? (x(), g("div", Ct, [w(e.$slots, "watermark", b(y({ isPrinting: E(yn) || E(bn) || E(cr) || E(lr) })), void 0, !0)])) : h("", !0),
1351
- Re(E(Ot), {
1352
- teleportTo: F.value.style.chart.tooltip.teleportTo,
1353
- show: V.value.showTooltip && Bt.value,
1354
- backgroundColor: F.value.style.chart.tooltip.backgroundColor,
1355
- color: F.value.style.chart.tooltip.color,
1356
- borderRadius: F.value.style.chart.tooltip.borderRadius,
1357
- borderColor: F.value.style.chart.tooltip.borderColor,
1358
- borderWidth: F.value.style.chart.tooltip.borderWidth,
1359
- fontSize: F.value.style.chart.tooltip.fontSize,
1360
- backgroundOpacity: F.value.style.chart.tooltip.backgroundOpacity,
1361
- position: F.value.style.chart.tooltip.position,
1362
- offsetX: F.value.style.chart.tooltip.offsetX,
1363
- offsetY: F.value.style.chart.tooltip.offsetY,
1364
- parent: A.value,
1365
- content: Vt.value,
1366
- isFullscreen: P.value,
1367
- isCustom: E(n)(F.value.style.chart.tooltip.customFormat),
1368
- smooth: F.value.style.chart.tooltip.smooth,
1369
- backdropFilter: F.value.style.chart.tooltip.backdropFilter,
1370
- smoothForce: F.value.style.chart.tooltip.smoothForce,
1371
- smoothSnapThreshold: F.value.style.chart.tooltip.smoothSnapThreshold,
1372
- isA11yMode: nn.value === "keyboard",
1373
- a11yPosition: tn.value
1374
- }, {
1375
- "tooltip-before": D(() => [w(e.$slots, "tooltip-before", b(y({ ...Ln.value })), void 0, !0)]),
1376
- tooltip: D(() => [w(e.$slots, "tooltip", b(y({ ...Ln.value })), void 0, !0)]),
1377
- "tooltip-after": D(() => [w(e.$slots, "tooltip-after", b(y({ ...Ln.value })), void 0, !0)]),
1378
- _: 3
1379
- }, 8, [
1380
- "teleportTo",
1381
- "show",
1382
- "backgroundColor",
1383
- "color",
1384
- "borderRadius",
1385
- "borderColor",
1386
- "borderWidth",
1387
- "fontSize",
1388
- "backgroundOpacity",
1389
- "position",
1390
- "offsetX",
1391
- "offsetY",
1392
- "parent",
1393
- "content",
1394
- "isFullscreen",
1395
- "isCustom",
1396
- "smooth",
1397
- "backdropFilter",
1398
- "smoothForce",
1399
- "smoothSnapThreshold",
1400
- "isA11yMode",
1401
- "a11yPosition"
1402
- ]),
1403
- _("div", { id: `legend-bottom-${k.value}` }, null, 8, wt),
1404
- Qt.value && (F.value.style.chart.legend.show || e.$slots.legend) ? (x(), m(Fe, {
1405
- key: 6,
1406
- to: F.value.style.chart.legend.position === "top" ? `#legend-top-${k.value}` : `#legend-bottom-${k.value}`
1407
- }, [F.value.style.chart.legend.show ? (x(), g("div", {
1408
- key: 0,
1409
- ref_key: "chartLegend",
1410
- ref: Gt,
1411
- class: Ve({ "vue-ui-nested-donuts-legend": Un.value.length > 1 })
1412
- }, [w(e.$slots, "legend", { legend: Un.value }, () => [(x(!0), g(f, null, C(Un.value, (e, n) => (x(), m(Ne, {
1413
- key: `legend_${n}_${Xt.value}`,
1414
- legendSet: e,
1415
- config: Wn.value,
1416
- isCursorPointer: I.value,
1417
- onClickMarker: t[0] ||= ({ legend: e }) => Y(e)
1418
- }, {
1419
- legendTitle: D(({ titleSet: e }) => [e[0] && e[0].arcOf ? (x(), g("div", Tt, T(e[0].arcOf), 1)) : h("", !0)]),
1420
- item: D(({ legend: e, index: t }) => [_("div", {
1421
- onClick: (t) => Y(e),
1422
- style: He(`opacity:${W.value.includes(e.id) ? .5 : 1}`)
1423
- }, T(e.display), 13, Et)]),
1424
- legendToggle: D(() => [e.length > 2 && F.value.style.chart.legend.selectAllToggle.show && !E(cn) ? (x(), m(Oe, {
1425
- key: `toggle-${n}`,
1426
- backgroundColor: F.value.style.chart.legend.selectAllToggle.backgroundColor,
1427
- color: F.value.style.chart.legend.selectAllToggle.color,
1428
- fontSize: F.value.style.chart.legend.fontSize,
1429
- checked: e.some((e) => W.value.includes(e.id)),
1430
- isCursorPointer: I.value,
1431
- onToggle: (t) => On(e)
1432
- }, null, 8, [
1433
- "backgroundColor",
1434
- "color",
1435
- "fontSize",
1436
- "checked",
1437
- "isCursorPointer",
1438
- "onToggle"
1439
- ])) : h("", !0)]),
1440
- _: 2
1441
- }, 1032, [
1442
- "legendSet",
1443
- "config",
1444
- "isCursorPointer"
1445
- ]))), 128))], !0)], 2)) : h("", !0)], 8, ["to"])) : h("", !0),
1446
- e.$slots.source ? (x(), g("div", {
1447
- key: 7,
1448
- ref_key: "source",
1449
- ref: Kt,
1450
- dir: "auto"
1451
- }, [w(e.$slots, "source", {}, void 0, !0)], 512)) : h("", !0),
1452
- zt.value && F.value.userOptions.buttons.table ? (x(), m(Ge(nr.value.component), ze({ key: 8 }, nr.value.props, {
1453
- ref_key: "tableUnit",
1454
- ref: $t,
1455
- onClose: rr
1456
- }), Ie({
1457
- content: D(() => [(x(), m(E(jt), {
1458
- key: `table_${Yt.value}`,
1459
- colNames: Kn.value.colNames,
1460
- head: Kn.value.head,
1461
- body: Kn.value.body,
1462
- config: Kn.value.config,
1463
- title: F.value.table.useDialog ? "" : nr.value.title,
1464
- withCloseButton: !F.value.table.useDialog,
1465
- isCursorPointer: I.value,
1466
- onClose: rr
1467
- }, {
1468
- th: D(({ th: e }) => [_("div", Dt, T(e), 1)]),
1469
- td: D(({ td: e }) => [Le(T(e.name || e), 1)]),
1470
- _: 1
1471
- }, 8, [
1472
- "colNames",
1473
- "head",
1474
- "body",
1475
- "config",
1476
- "title",
1477
- "withCloseButton",
1478
- "isCursorPointer"
1479
- ]))]),
1480
- _: 2
1481
- }, [F.value.table.useDialog ? {
1482
- name: "title",
1483
- fn: D(() => [Le(T(nr.value.title), 1)]),
1484
- key: "0"
1485
- } : void 0, F.value.table.useDialog ? {
1486
- name: "actions",
1487
- fn: D(() => [_("button", {
1488
- tabindex: "0",
1489
- class: "vue-ui-user-options-button",
1490
- onClick: t[1] ||= (e) => Gn(F.value.userOptions.callbacks.csv),
1491
- style: He({ cursor: I.value ? "pointer" : "default" })
1492
- }, [Re(E(kt), {
1493
- name: "fileCsv",
1494
- stroke: nr.value.props.color
1495
- }, null, 8, ["stroke"])], 4)]),
1496
- key: "1"
1497
- } : void 0]), 1040)) : h("", !0),
1498
- w(e.$slots, "skeleton", {}, () => [E(cn) ? (x(), m(ve, { key: 0 })) : h("", !0)], !0)
1499
- ], 46, Qe));
1500
- }
1501
- }, [["__scopeId", "data-v-cbec12a9"]]);
1502
- //#endregion
1503
- export { Ze as n, Ot as t };