vue-data-ui 3.23.9 → 3.23.10

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 (178) hide show
  1. package/dist/{Arrow-CF0VFcBH.js → Arrow-bwmME0jw.js} +1 -1
  2. package/dist/{BaseDraggableDialog-LoqqwRtV.js → BaseDraggableDialog-DBVHlhQZ.js} +2 -2
  3. package/dist/{BaseIcon-BfndwIWE.js → BaseIcon-B4n7br_R.js} +1 -1
  4. package/dist/{BaseLegendToggle-DZVucLnv.js → BaseLegendToggle-wRhcG_-q.js} +1 -1
  5. package/dist/{BaseZoomControls-BZvCnZEi.js → BaseZoomControls-BZjzzyQo.js} +2 -2
  6. package/dist/{ColorPicker--ayG2YHf.js → ColorPicker-B9kUMLSz.js} +2 -2
  7. package/dist/{DataTable-BbKgJ5UI.js → DataTable-DMsScfkx.js} +2 -2
  8. package/dist/{HillActions-BD9j_sOU.js → HillActions-IWPfuceW.js} +1 -1
  9. package/dist/{Legend-CQxUgOd-.js → Legend-DWEFXq9E.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-4ypecDg1.js → NonSvgPenAndPaper-Crs4-xWz.js} +3 -3
  11. package/dist/{PackageVersion-B629oKuX.js → PackageVersion-DNTJUKh1.js} +1 -1
  12. package/dist/{PenAndPaper-C0UZ74fa.js → PenAndPaper-DJ607Hx6.js} +3 -3
  13. package/dist/{Shape-C21CMlWS.js → Shape-BAhF1ToV.js} +1 -1
  14. package/dist/{SlicerPreview-wUw1hFwe.js → SlicerPreview-sXtk2ZZ2.js} +2 -2
  15. package/dist/{SparkTooltip-CjsbIhzi.js → SparkTooltip-BE50SZQH.js} +1 -1
  16. package/dist/{Title-BE3qg9xl.js → Title-BGLPsoA9.js} +1 -1
  17. package/dist/{Tooltip-DhjyfHwz.js → Tooltip-DO4-MVhc.js} +1 -1
  18. package/dist/{UserOptions-Dt98of5H.js → UserOptions-HQyukyl2.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-hill.js +1 -1
  46. package/dist/components/vue-ui-history-plot.js +1 -1
  47. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  48. package/dist/components/vue-ui-icon.js +1 -1
  49. package/dist/components/vue-ui-kpi.js +1 -1
  50. package/dist/components/vue-ui-mini-loader.js +1 -1
  51. package/dist/components/vue-ui-molecule.js +1 -1
  52. package/dist/components/vue-ui-mood-radar.js +1 -1
  53. package/dist/components/vue-ui-nested-donuts.js +1 -1
  54. package/dist/components/vue-ui-onion.js +1 -1
  55. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  56. package/dist/components/vue-ui-quadrant.js +1 -1
  57. package/dist/components/vue-ui-quick-chart.js +1 -1
  58. package/dist/components/vue-ui-radar.js +1 -1
  59. package/dist/components/vue-ui-rating.js +1 -1
  60. package/dist/components/vue-ui-relation-circle.js +1 -1
  61. package/dist/components/vue-ui-ridgeline.js +1 -1
  62. package/dist/components/vue-ui-rings.js +1 -1
  63. package/dist/components/vue-ui-scatter.js +1 -1
  64. package/dist/components/vue-ui-skeleton.js +1 -1
  65. package/dist/components/vue-ui-smiley.js +1 -1
  66. package/dist/components/vue-ui-spark-trend.js +1 -1
  67. package/dist/components/vue-ui-sparkbar.js +1 -1
  68. package/dist/components/vue-ui-sparkgauge.js +1 -1
  69. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  70. package/dist/components/vue-ui-sparkline.js +1 -1
  71. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  72. package/dist/components/vue-ui-stackbar.js +1 -1
  73. package/dist/components/vue-ui-stackline.js +1 -1
  74. package/dist/components/vue-ui-strip-plot.js +1 -1
  75. package/dist/components/vue-ui-table-heatmap.js +1 -1
  76. package/dist/components/vue-ui-table-sparkline.js +1 -1
  77. package/dist/components/vue-ui-table.js +1 -1
  78. package/dist/components/vue-ui-thermometer.js +1 -1
  79. package/dist/components/vue-ui-timer.js +1 -1
  80. package/dist/components/vue-ui-tiremarks.js +1 -1
  81. package/dist/components/vue-ui-treemap.js +1 -1
  82. package/dist/components/vue-ui-vertical-bar.js +1 -1
  83. package/dist/components/vue-ui-waffle.js +1 -1
  84. package/dist/components/vue-ui-wheel.js +1 -1
  85. package/dist/components/vue-ui-word-cloud.js +1 -1
  86. package/dist/components/vue-ui-world.js +1 -1
  87. package/dist/components/vue-ui-xy-canvas.js +1 -1
  88. package/dist/components/vue-ui-xy.js +1 -1
  89. package/dist/{dom-to-png-BYIvdTe8.js → dom-to-png-Cg_3vpOo.js} +1 -1
  90. package/dist/{exposedLib-C0DPCgFj.js → exposedLib-vfRiIvq_.js} +1 -1
  91. package/dist/{img-Bnokohej.js → img-tU9mMt9W.js} +1 -1
  92. package/dist/{labelUtils-BeVpDvTJ.js → labelUtils-C_lMnQRs.js} +1 -1
  93. package/dist/{lib-Bttd6u5E.js → lib-AT2PUyyh.js} +1 -1
  94. package/dist/{package-C01DAl-Z.js → package-enC-Nivt.js} +1 -1
  95. package/dist/{pdf-CVIDfCrS.js → pdf-ColHHJFH.js} +1 -1
  96. package/dist/{render-common-Dv5BvuwZ.js → render-common-CqcoYfCA.js} +2 -2
  97. package/dist/ssr/vue-ui-donut.js +1 -1
  98. package/dist/ssr/vue-ui-xy.js +1 -1
  99. package/dist/ssr.js +2 -2
  100. package/dist/style.css +1 -1
  101. package/dist/{useNestedProp-vPNvh7rV.js → useNestedProp-CW0vJS1B.js} +1 -1
  102. package/dist/{usePrinter-DN5bYhTG.js → usePrinter-BFS7d6eb.js} +2 -2
  103. package/dist/utils.js +2 -2
  104. package/dist/{vue-data-ui-DDZLOx_v.js → vue-data-ui-DD7J3yor.js} +69 -69
  105. package/dist/vue-data-ui.js +72 -72
  106. package/dist/vue-ui-3d-bar-DgrcdAgz.js +1829 -0
  107. package/dist/{vue-ui-accordion-CLU_su1P.js → vue-ui-accordion-DJNjilyy.js} +3 -3
  108. package/dist/{vue-ui-age-pyramid-D98P16h3.js → vue-ui-age-pyramid-DI8b5E2H.js} +6 -6
  109. package/dist/{vue-ui-annotator-QjHngrui.js → vue-ui-annotator-7ZVfFskI.js} +6 -6
  110. package/dist/{vue-ui-bullet-GgRg9sbN.js → vue-ui-bullet-Dyd5F1Wa.js} +7 -7
  111. package/dist/{vue-ui-bump-BP7UOMFX.js → vue-ui-bump-DzB3WQnq.js} +166 -166
  112. package/dist/{vue-ui-candlestick-XPQeeduK.js → vue-ui-candlestick--YWEtek_.js} +7 -7
  113. package/dist/{vue-ui-carousel-table-D39rMqRb.js → vue-ui-carousel-table-Dn3RZU0p.js} +4 -4
  114. package/dist/{vue-ui-chestnut-B0xezYHS.js → vue-ui-chestnut-BIsXeXiU.js} +5 -5
  115. package/dist/{vue-ui-chord-eOIKOfDO.js → vue-ui-chord-BimXqVsF.js} +8 -8
  116. package/dist/{vue-ui-circle-pack-kCN1R-pw.js → vue-ui-circle-pack-DKQEhL-L.js} +13 -16
  117. package/dist/{vue-ui-cursor-JXCd2JAw.js → vue-ui-cursor-C-P2D5i6.js} +3 -3
  118. package/dist/{vue-ui-dag-D42c5rJN.js → vue-ui-dag-CThnMMWA.js} +7 -7
  119. package/dist/{vue-ui-dashboard-9-9eUWEy.js → vue-ui-dashboard-D0NNTRO3.js} +69 -69
  120. package/dist/{vue-ui-digits-CCkSVNpz.js → vue-ui-digits-9tGjGzZh.js} +3 -3
  121. package/dist/{vue-ui-donut-BnVCS9Ll.js → vue-ui-donut-DLN9uPOi.js} +2 -2
  122. package/dist/vue-ui-donut-EZu8p7HF.js +2413 -0
  123. package/dist/{vue-ui-donut-evolution-CgjBE6EG.js → vue-ui-donut-evolution-mu-iGTIn.js} +9 -9
  124. package/dist/{vue-ui-dumbbell-CVX2tGDU.js → vue-ui-dumbbell-Dvldi3Oo.js} +13 -16
  125. package/dist/{vue-ui-flow-R-fW_EeT.js → vue-ui-flow-DYZBT5Cb.js} +13 -16
  126. package/dist/{vue-ui-funnel-CT3ixpCM.js → vue-ui-funnel--NaxO0cZ.js} +13 -16
  127. package/dist/{vue-ui-galaxy-CThLjvdQ.js → vue-ui-galaxy-D6eYN8Ut.js} +291 -293
  128. package/dist/{vue-ui-gauge-DRXsVxYq.js → vue-ui-gauge-DTIEl2Xb.js} +6 -6
  129. package/dist/{vue-ui-geo-DwNCnH_W.js → vue-ui-geo-CQqNemR6.js} +7 -7
  130. package/dist/{vue-ui-gizmo-BkQUnPvN.js → vue-ui-gizmo-ClunTUxX.js} +3 -3
  131. package/dist/{vue-ui-heatmap-COX6rafn.js → vue-ui-heatmap-B_pSQNzO.js} +7 -7
  132. package/dist/{vue-ui-hill-7BisXEYH.js → vue-ui-hill-Byp0Tnny.js} +6 -6
  133. package/dist/{vue-ui-history-plot-Bn_M0AFg.js → vue-ui-history-plot-CMu8ST1E.js} +14 -17
  134. package/dist/{vue-ui-horizontal-bar-CkRRidx3.js → vue-ui-horizontal-bar-BQn7WxQ-.js} +10 -10
  135. package/dist/{vue-ui-kpi-R9bl7je_.js → vue-ui-kpi-BKw5t-rX.js} +3 -3
  136. package/dist/{vue-ui-mini-loader-SNMKnmMa.js → vue-ui-mini-loader-BNm0MQDw.js} +2 -2
  137. package/dist/{vue-ui-molecule-CNtY2_yF.js → vue-ui-molecule-DRwQV5hN.js} +232 -238
  138. package/dist/{vue-ui-mood-radar-DUxhOQpR.js → vue-ui-mood-radar-Bj3KTWYj.js} +298 -300
  139. package/dist/{vue-ui-nested-donuts-Bbub_wCe.js → vue-ui-nested-donuts-83Wh2w6z.js} +15 -18
  140. package/dist/{vue-ui-onion-Bix9MN3w.js → vue-ui-onion-C27GpneA.js} +9 -9
  141. package/dist/{vue-ui-parallel-coordinate-plot-6SI2vJOo.js → vue-ui-parallel-coordinate-plot-BklOszr1.js} +212 -212
  142. package/dist/{vue-ui-quadrant-CFvonilu.js → vue-ui-quadrant-_J-Qr7-K.js} +9 -9
  143. package/dist/{vue-ui-quick-chart-iEJt6333.js → vue-ui-quick-chart-DcOUq4ym.js} +7 -7
  144. package/dist/{vue-ui-radar-ClZ_OIr5.js → vue-ui-radar-FlRlsoAd.js} +8 -8
  145. package/dist/{vue-ui-rating-BnXrMeGg.js → vue-ui-rating-eCxEZD8C.js} +2 -2
  146. package/dist/{vue-ui-relation-circle-CZ68uWhc.js → vue-ui-relation-circle-DnsxHv7t.js} +6 -6
  147. package/dist/{vue-ui-ridgeline-BSiPLA08.js → vue-ui-ridgeline-TopTLyaE.js} +485 -485
  148. package/dist/vue-ui-rings-obVfb09j.js +1250 -0
  149. package/dist/{vue-ui-scatter-C0PouRMY.js → vue-ui-scatter-BHSuA506.js} +9 -9
  150. package/dist/{vue-ui-skeleton-Drk48XZi.js → vue-ui-skeleton-CNOam3kC.js} +3 -3
  151. package/dist/{vue-ui-smiley-BQuXRW4o.js → vue-ui-smiley-YdyidjBH.js} +2 -2
  152. package/dist/{vue-ui-spark-trend-CYcS6-FN.js → vue-ui-spark-trend-CS5GLtYL.js} +3 -3
  153. package/dist/{vue-ui-sparkbar-eqLrT50j.js → vue-ui-sparkbar-DDHwgP4k.js} +3 -3
  154. package/dist/{vue-ui-sparkgauge-C_b1h4DY.js → vue-ui-sparkgauge-BcQu9V3h.js} +3 -3
  155. package/dist/{vue-ui-sparkhistogram-BzJr83-i.js → vue-ui-sparkhistogram-CPsA5P6c.js} +4 -4
  156. package/dist/{vue-ui-sparkline-CyJKVGYw.js → vue-ui-sparkline-CnbO-GkM.js} +3 -3
  157. package/dist/{vue-ui-sparkstackbar-O6Ojc2m8.js → vue-ui-sparkstackbar-4tsTxMe2.js} +4 -4
  158. package/dist/{vue-ui-stackbar-J5QzbBaA.js → vue-ui-stackbar-2_SrMFNT.js} +575 -571
  159. package/dist/{vue-ui-stackline-D7d_Yqid.js → vue-ui-stackline-BNCWO_jG.js} +612 -608
  160. package/dist/{vue-ui-strip-plot-AljSBqsw.js → vue-ui-strip-plot-2Y1c02Ek.js} +13 -16
  161. package/dist/{vue-ui-table-CBdCPS2r.js → vue-ui-table-DJZxHo5N.js} +5 -5
  162. package/dist/{vue-ui-table-heatmap-DRABMw2H.js → vue-ui-table-heatmap-BacaEjQy.js} +5 -5
  163. package/dist/{vue-ui-table-sparkline-OScDr7Z5.js → vue-ui-table-sparkline-B8oAU5yr.js} +4 -4
  164. package/dist/{vue-ui-thermometer-DWmM_Hn9.js → vue-ui-thermometer-BGtxNU9T.js} +6 -6
  165. package/dist/{vue-ui-timer--q-f8RPJ.js → vue-ui-timer-CWZgSpP8.js} +5 -5
  166. package/dist/{vue-ui-tiremarks-B2Fji5g0.js → vue-ui-tiremarks-LLVCPyg9.js} +6 -6
  167. package/dist/{vue-ui-treemap-CHqCU3Mt.js → vue-ui-treemap-ehBl9JMC.js} +16 -19
  168. package/dist/{vue-ui-waffle-C1ksX6OD.js → vue-ui-waffle-DpBAXbhh.js} +288 -290
  169. package/dist/{vue-ui-wheel-Dz2QzZcJ.js → vue-ui-wheel-C4OHPrtC.js} +6 -6
  170. package/dist/{vue-ui-word-cloud-DBp8kZ4A.js → vue-ui-word-cloud-CDHn3Kwa.js} +13 -16
  171. package/dist/{vue-ui-world-DbYSOiC4.js → vue-ui-world-ao1xf04I.js} +13 -16
  172. package/dist/{vue-ui-xy-CrHCmWhv.js → vue-ui-xy-DmJDCl3c.js} +2 -2
  173. package/dist/{vue-ui-xy-C23skZ-G.js → vue-ui-xy-_U3wmtCf.js} +1499 -1495
  174. package/dist/{vue-ui-xy-canvas-B-KxaFGF.js → vue-ui-xy-canvas-Bx-9y53V.js} +334 -330
  175. package/package.json +1 -1
  176. package/dist/vue-ui-3d-bar-C9Y9Uklb.js +0 -1831
  177. package/dist/vue-ui-donut-HrEXYDqO.js +0 -2415
  178. package/dist/vue-ui-rings-mGN_bpo1.js +0 -1252
@@ -0,0 +1,1250 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, Bt as n, D as r, G as i, Jt as a, Kt as ee, Pt as o, Rt as te, S as ne, Vt as re, X as s, b as ie, ct as ae, i as oe, jt as se, pt as ce, q as le, t as ue, tt as de, w as fe, xt as pe } from "./lib-AT2PUyyh.js";
3
+ import { n as me, t as he } from "./useHints-Dq_w2E8B.js";
4
+ import { t as ge } from "./useConfig-DwdGsXTx.js";
5
+ import { t as _e } from "./usePrinter-BFS7d6eb.js";
6
+ import { n as ve, t as ye } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as be } from "./useNestedProp-CW0vJS1B.js";
8
+ import { t as xe } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as Se } from "./useChartExport-DNiwdPmb.js";
10
+ import { t as Ce } from "./useTransitions-g_zBREk2.js";
11
+ import { t as we } from "./img-tU9mMt9W.js";
12
+ import { n as Te } from "./Title-BGLPsoA9.js";
13
+ import { t as Ee } from "./Shape-BAhF1ToV.js";
14
+ import { t as De } from "./_plugin-vue_export-helper-B3ysoDQm.js";
15
+ import { l as Oe, t as ke } from "./useResponsive-ZtArZtUf.js";
16
+ import { t as Ae } from "./DefGrad-DVBqDjhO.js";
17
+ import { t as je } from "./BaseLegendToggle-wRhcG_-q.js";
18
+ import { t as Me } from "./A11yDataTable-DdRsVULz.js";
19
+ import { t as Ne } from "./useUserOptionState-DK-_1ddE.js";
20
+ import { t as Pe } from "./useChartAccessibility-DYqac8yF.js";
21
+ import { t as Fe } from "./labelUtils-C_lMnQRs.js";
22
+ import { t as Ie } from "./Legend-DWEFXq9E.js";
23
+ import { t as Le } from "./vue_ui_rings-BVgD2aMn.js";
24
+ import { Fragment as Re, Teleport as ze, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createSlots as Be, createTextVNode as Ve, createVNode as p, defineAsyncComponent as m, guardReactiveProps as h, mergeProps as He, nextTick as Ue, normalizeClass as g, normalizeProps as _, normalizeStyle as v, onBeforeUnmount as We, onMounted as Ge, openBlock as y, ref as b, renderList as Ke, renderSlot as x, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as S, toRefs as Ye, unref as C, useSlots as Xe, watch as Ze, withCtx as w } from "vue";
25
+ //#region src/components/vue-ui-rings.vue
26
+ var Qe = /* @__PURE__ */ e({ default: () => yt }), $e = ["id"], et = ["id"], tt = ["id"], nt = { style: { position: "relative" } }, rt = [
27
+ "xmlns",
28
+ "viewBox",
29
+ "aria-describedby"
30
+ ], it = ["width", "height"], at = { key: 1 }, ot = [
31
+ "stroke",
32
+ "cx",
33
+ "cy",
34
+ "r",
35
+ "fill"
36
+ ], st = [
37
+ "stroke",
38
+ "stroke-width",
39
+ "cx",
40
+ "cy",
41
+ "r",
42
+ "fill"
43
+ ], ct = [
44
+ "stroke",
45
+ "stroke-width",
46
+ "cx",
47
+ "cy",
48
+ "r",
49
+ "fill"
50
+ ], lt = [
51
+ "cx",
52
+ "cy",
53
+ "r",
54
+ "onMouseenter",
55
+ "onMouseleave",
56
+ "onClick"
57
+ ], ut = [
58
+ "x",
59
+ "y",
60
+ "width",
61
+ "height",
62
+ "fill",
63
+ "rx"
64
+ ], dt = [
65
+ "cx",
66
+ "cy",
67
+ "r",
68
+ "fill",
69
+ "stroke"
70
+ ], ft = [
71
+ "text-anchor",
72
+ "font-size",
73
+ "fill",
74
+ "font-weight",
75
+ "transform",
76
+ "onMouseenter",
77
+ "onMouseleave",
78
+ "onClick",
79
+ "innerHTML"
80
+ ], pt = {
81
+ key: 0,
82
+ style: {
83
+ position: "absolute",
84
+ top: "100%",
85
+ left: "0",
86
+ width: "100%"
87
+ },
88
+ "data-dom-to-png-ignore": "",
89
+ "aria-hidden": "true"
90
+ }, mt = {
91
+ key: 5,
92
+ class: "vue-data-ui-watermark"
93
+ }, ht = ["id"], gt = ["onClick"], _t = { key: 0 }, vt = { key: 1 }, yt = /*#__PURE__*/ De({
94
+ __name: "vue-ui-rings",
95
+ props: {
96
+ config: {
97
+ type: Object,
98
+ default() {
99
+ return {};
100
+ }
101
+ },
102
+ dataset: {
103
+ type: Array,
104
+ default() {
105
+ return [];
106
+ }
107
+ }
108
+ },
109
+ emits: ["selectLegend", "copyAlt"],
110
+ setup(e, { expose: De, emit: Qe }) {
111
+ let yt = m(() => import("./Tooltip-DO4-MVhc.js")), bt = m(() => import("./BaseIcon-B4n7br_R.js").then((e) => e.n)), xt = m(() => import("./vue-ui-accordion-DJNjilyy.js").then((e) => e.n)), St = m(() => import("./DataTable-DMsScfkx.js")), Ct = m(() => import("./PenAndPaper-DJ607Hx6.js").then((e) => e.t)), wt = m(() => import("./UserOptions-HQyukyl2.js").then((e) => e.n)), Tt = m(() => import("./PackageVersion-DNTJUKh1.js").then((e) => e.t)), Et = m(() => import("./BaseDraggableDialog-DBVHlhQZ.js").then((e) => e.n)), { vue_ui_rings: Dt } = ge(), { isThemeValid: Ot, warnInvalidTheme: kt } = xe(), At = Xe(), T = e, E = b(!1), jt = c(() => !!T.dataset && T.dataset.length), D = b(le()), O = b(!1), Mt = b(""), k = b(null), Nt = b(0), A = b(null), Pt = b(null), Ft = b(null), It = b(null), Lt = b(null), Rt = b(0), zt = b(0), Bt = b(0), Vt = b(!1), Ht = b(!1), j = b(null), Ut = b(null), M = b(null), Wt = b({
112
+ x: 0,
113
+ y: 0
114
+ }), N = b("pointer"), Gt = b(!1), P = b(Qt());
115
+ me({
116
+ config: () => P.value,
117
+ dataset: () => T.dataset,
118
+ component: "VueUiRings",
119
+ rules: [
120
+ he.singleSeries,
121
+ he.emptyArray,
122
+ {
123
+ test: (e) => e.length > 6,
124
+ message: [
125
+ "👀 The number of series is > 6. Consider:",
126
+ "",
127
+ "▶️ Grouping small values dynamically into a single \"Other\" series.",
128
+ "",
129
+ "▶️ Using filters to let users choose a maximum number of series to display.",
130
+ "",
131
+ "▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read."
132
+ ]
133
+ }
134
+ ]
135
+ });
136
+ let { transitionEnabled: F } = Ce({
137
+ config: () => P.value.transitions,
138
+ dataset: () => T.dataset
139
+ }), I = c(() => P.value.userOptions.useCursorPointer), Kt = c(() => a({
140
+ defaultConfig: {
141
+ userOptions: { show: !1 },
142
+ table: { show: !1 },
143
+ style: { chart: {
144
+ backgroundColor: "#99999930",
145
+ layout: {
146
+ rings: {
147
+ stroke: "#6A6A6A",
148
+ gradient: { underlayerColor: "#FFFFFF" }
149
+ },
150
+ labels: { dataLabels: { show: !1 } }
151
+ },
152
+ legend: { backgroundColor: "transparent" }
153
+ } }
154
+ },
155
+ userConfig: P.value.skeletonConfig ?? {}
156
+ })), { loading: L, FINAL_DATASET: qt, manualLoading: Jt } = ve({
157
+ ...Ye(T),
158
+ FINAL_CONFIG: P,
159
+ prepareConfig: Qt,
160
+ skeletonDataset: T.config?.skeletonDataset ?? [
161
+ {
162
+ name: "_",
163
+ values: [13],
164
+ color: "#808080"
165
+ },
166
+ {
167
+ name: "_",
168
+ values: [8],
169
+ color: "#969696"
170
+ },
171
+ {
172
+ name: "_",
173
+ values: [5],
174
+ color: "#ADADAD"
175
+ },
176
+ {
177
+ name: "_",
178
+ values: [3],
179
+ color: "#C4C4C4"
180
+ },
181
+ {
182
+ name: "_",
183
+ values: [2],
184
+ color: "#DBDBDB"
185
+ }
186
+ ],
187
+ skeletonConfig: a({
188
+ defaultConfig: P.value,
189
+ userConfig: Kt.value
190
+ })
191
+ }), { userOptionsVisible: Yt, setUserOptionsVisibility: Xt, keepUserOptionState: Zt } = Ne({ config: P.value }), { svgRef: R } = Pe({ config: P.value.style.chart.title });
192
+ function Qt() {
193
+ let e = be({
194
+ userConfig: T.config,
195
+ defaultConfig: Dt
196
+ }), t = e.theme;
197
+ if (!t) return e;
198
+ if (!Ot.value(e)) return kt(e), e;
199
+ let n = be({
200
+ userConfig: Le[t] || T.config,
201
+ defaultConfig: e
202
+ });
203
+ return {
204
+ ...be({
205
+ userConfig: T.config,
206
+ defaultConfig: n
207
+ }),
208
+ customPalette: e.customPalette.length ? e.customPalette : ee[e.theme] || o
209
+ };
210
+ }
211
+ Ze(() => T.config, (e) => {
212
+ L.value || (P.value = Qt()), Yt.value = !P.value.userOptions.showOnChartHover, en(), Rt.value += 1, zt.value += 1, Bt.value += 1, U.value.showTable = P.value.table.show, U.value.showTooltip = P.value.style.chart.tooltip.show, U.value.showLabels = P.value.style.chart.layout.labels.dataLabels.show, W.value.width = P.value.style.chart.size, W.value.height = P.value.style.chart.size;
213
+ }, { deep: !0 });
214
+ let $t = c(() => {
215
+ let { markers: e } = P.value.style.chart.layout.labels.dataLabels, t = Y.value / 2, n = U.value.showLabels ? e.position === "left" ? t : -t : 0, r = U.value.showLabels ? W.value.width / 2 - t : 0, i = e.position === "left" ? r : -r;
216
+ return {
217
+ x: P.value.responsive ? i : n / P.value.style.chart.size * W.value.width,
218
+ y: 0 / P.value.style.chart.size * W.value.height
219
+ };
220
+ }), z = c(() => ({
221
+ x: W.value.width / 2 + $t.value.x,
222
+ y: W.value.height / 2 + $t.value.y
223
+ }));
224
+ Ze(() => T.dataset, (e) => {
225
+ Array.isArray(e) && e.length > 0 && (Jt.value = !1);
226
+ }, { deep: !0 });
227
+ let B = Je(null), V = Je(null);
228
+ Ge(() => {
229
+ Ht.value = !0, en();
230
+ });
231
+ let H = c(() => P.value.debug);
232
+ function en() {
233
+ if (se(T.dataset) ? (de({
234
+ componentName: "VueUiRings",
235
+ type: "dataset",
236
+ debug: H.value
237
+ }), Jt.value = !0) : T.dataset.forEach((e, t) => {
238
+ e.values.length || (de({
239
+ componentName: "VueUiRings",
240
+ type: "dataset",
241
+ debug: H.value
242
+ }), Jt.value = !0), ce({
243
+ datasetObject: e,
244
+ requiredAttributes: ["name", "values"]
245
+ }).forEach((e) => {
246
+ de({
247
+ componentName: "VueUiRings",
248
+ type: "datasetSerieAttribute",
249
+ property: e,
250
+ index: t,
251
+ debug: H.value
252
+ });
253
+ });
254
+ }), se(T.dataset) || (Jt.value = P.value.loading), P.value.responsive) {
255
+ let e = Oe(() => {
256
+ Vt.value = !0;
257
+ let { width: e, height: t } = ke({
258
+ chart: A.value,
259
+ title: P.value.style.chart.title.text ? Pt.value : null,
260
+ legend: P.value.style.chart.legend.show ? Ft.value : null,
261
+ source: It.value,
262
+ noTitle: Lt.value
263
+ });
264
+ requestAnimationFrame(() => {
265
+ W.value.width = e, W.value.height = t - 12, Vt.value = !1;
266
+ });
267
+ });
268
+ B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect()), B.value = new ResizeObserver(e), V.value = A.value.parentNode, B.value.observe(V.value);
269
+ }
270
+ setTimeout(() => {
271
+ E.value = !0;
272
+ }, 600);
273
+ }
274
+ We(() => {
275
+ B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect());
276
+ });
277
+ let { isPrinting: tn, isImaging: nn, generatePdf: rn, generateImage: an } = _e({
278
+ elementId: `rings_${D.value}`,
279
+ fileName: P.value.style.chart.title.text || "vue-ui-rings",
280
+ options: P.value.userOptions.print
281
+ }), on = c(() => P.value.userOptions.show && !P.value.style.chart.title.text), sn = c(() => fe(P.value.customPalette)), U = b({
282
+ showTable: P.value.table.show,
283
+ showTooltip: P.value.style.chart.tooltip.show,
284
+ showLabels: P.value.style.chart.layout.labels.dataLabels.show
285
+ });
286
+ Ze(P, () => {
287
+ U.value = {
288
+ showTable: P.value.table.show,
289
+ showTooltip: P.value.style.chart.tooltip.show,
290
+ showLabels: P.value.style.chart.layout.labels.dataLabels.show
291
+ };
292
+ }, { immediate: !0 });
293
+ let W = b({
294
+ height: P.value.style.chart.size,
295
+ width: P.value.style.chart.size
296
+ }), cn = c(() => Math.min(W.value.height, W.value.width)), ln = Qe, G = b([]);
297
+ function un() {
298
+ G.value.length ? G.value = [] : vn.value.forEach((e) => {
299
+ G.value.push(e.uid);
300
+ }), dn();
301
+ }
302
+ function dn() {
303
+ ln("selectLegend", J.value.map((e) => ({
304
+ name: e.name,
305
+ color: e.color,
306
+ value: e.value
307
+ })));
308
+ }
309
+ function fn(e) {
310
+ if (G.value.includes(e)) G.value = G.value.filter((t) => t !== e);
311
+ else {
312
+ if (G.value.length === K.value.length - 1) return;
313
+ G.value.push(e);
314
+ }
315
+ dn();
316
+ }
317
+ function pn(e) {
318
+ return K.value.length ? K.value.find((t) => t.name === e) || (H.value && console.warn(`VueUiRings - Series name not found "${e}"`), null) : (H.value && console.warn("VueUiRings - There are no series to show."), null);
319
+ }
320
+ function mn(e) {
321
+ let t = pn(e);
322
+ t !== null && G.value.includes(t.uid) && fn(t.uid);
323
+ }
324
+ function hn(e) {
325
+ let t = pn(e);
326
+ t !== null && (G.value.includes(t.uid) || fn(t.uid));
327
+ }
328
+ let gn = c(() => Math.max(...K.value.filter((e) => !G.value.includes(e.uid)).map(({ value: e }) => e)));
329
+ function _n(e) {
330
+ return e / gn.value;
331
+ }
332
+ let K = c(() => qt.value.map(({ values: e, name: t, color: n = null }, r) => {
333
+ let i = te(e).reduce((e, t) => e + t, 0);
334
+ return {
335
+ name: t,
336
+ color: n || ne(n) || sn.value[r] || o[r] || o[r % o.length],
337
+ value: i,
338
+ proportion: i / qt.value.map((e) => (e.values || []).reduce((e, t) => e + t, 0)).reduce((e, t) => e + t, 0),
339
+ uid: le(),
340
+ absoluteIndex: r
341
+ };
342
+ })), vn = c(() => K.value.map((e, t) => {
343
+ let n = oe(P.value.style.chart.layout.labels.dataLabels.formatter, e.value, s({
344
+ p: P.value.style.chart.layout.labels.dataLabels.prefix,
345
+ v: e.value,
346
+ s: P.value.style.chart.layout.labels.dataLabels.suffix,
347
+ r: P.value.style.chart.legend.roundingValue
348
+ }), {
349
+ datapoint: e,
350
+ index: t
351
+ }), r = isNaN(e.value / q.value) ? "-" : s({
352
+ v: e.value / q.value * 100,
353
+ s: "%",
354
+ r: P.value.style.chart.legend.roundingPercentage
355
+ }), i = Cn({
356
+ showVal: P.value.style.chart.legend.showValue,
357
+ showPercentage: P.value.style.chart.legend.showPercentage,
358
+ val: n,
359
+ percentage: G.value.includes(e.uid) ? "-%" : r
360
+ });
361
+ return {
362
+ ...e,
363
+ shape: "circle",
364
+ opacity: G.value.includes(e.uid) ? .5 : 1,
365
+ segregate: () => fn(e.uid),
366
+ isSegregated: G.value.includes(e.uid),
367
+ display: `${e.name}${P.value.style.chart.legend.showPercentage || P.value.style.chart.legend.showValue ? ": " : ""}${i}`
368
+ };
369
+ }).toSorted((e, t) => t.value - e.value)), yn = c(() => ({
370
+ cy: "rings-div-legend",
371
+ backgroundColor: P.value.style.chart.legend.backgroundColor,
372
+ color: P.value.style.chart.legend.color,
373
+ fontSize: P.value.style.chart.legend.fontSize,
374
+ paddingBottom: 12,
375
+ fontWeight: P.value.style.chart.legend.bold ? "bold" : ""
376
+ })), q = c(() => K.value.filter((e) => !G.value.includes(e.uid)).map(({ value: e }) => e).reduce((e, t) => e + t, 0)), J = c(() => K.value.filter((e) => !G.value.includes(e.uid)).map(({ name: e, value: t, color: n = null, uid: r, absoluteIndex: i }, a) => ({
377
+ absoluteIndex: i,
378
+ uid: r,
379
+ name: e,
380
+ color: n || ne(n) || sn.value[a] || o[a] || o[a % o.length],
381
+ value: t,
382
+ proportion: _n(t),
383
+ percentage: t / q.value * 100,
384
+ strokeWidth: P.value.style.chart.layout.rings.strokeWidth * _n(t)
385
+ })).toSorted((e, t) => t.value - e.value));
386
+ function bn() {
387
+ return J.value.map(({ name: e, color: t, value: n, absoluteValues: r, percentage: i }) => ({
388
+ name: e,
389
+ color: t,
390
+ value: n,
391
+ absoluteValues: r,
392
+ percentage: i
393
+ }));
394
+ }
395
+ let Y = c(() => cn.value - P.value.style.chart.layout.rings.strokeWidth * 2);
396
+ function xn(e, t) {
397
+ P.value.events.datapointClick && P.value.events.datapointClick({
398
+ datapoint: e,
399
+ seriesIndex: t
400
+ });
401
+ }
402
+ function Sn(e, t) {
403
+ k.value = null, O.value = !1, M.value = null, N.value = "pointer", P.value.events.datapointLeave && P.value.events.datapointLeave({
404
+ datapoint: e,
405
+ seriesIndex: t
406
+ });
407
+ }
408
+ function Cn({ val: e, percentage: t, showVal: n, showPercentage: r }) {
409
+ let i = P.value.style.chart.layout.labels.dataLabels;
410
+ return Fe({
411
+ config: i,
412
+ val: e,
413
+ percentage: t,
414
+ showVal: n,
415
+ showPercentage: r
416
+ });
417
+ }
418
+ function wn(e) {
419
+ let t = P.value.style.chart.layout.labels.dataLabels, n = oe(t.formatter, e.value, s({
420
+ p: t.prefix,
421
+ v: e.value,
422
+ s: t.suffix,
423
+ r: t.roundingValue
424
+ })), r = s({
425
+ v: e.percentage,
426
+ s: "%",
427
+ r: t.roundingPercentage
428
+ });
429
+ return `${e.name}\n${Cn({
430
+ val: n,
431
+ percentage: r,
432
+ showVal: t.showValue,
433
+ showPercentage: t.showPercentage
434
+ })}`;
435
+ }
436
+ function Tn(e) {
437
+ return ie(Y.value * e.proportion / 2 * .9 <= 0 ? 1e-4 : Y.value * e.proportion / 2 * .9);
438
+ }
439
+ function En(e, t) {
440
+ return t === 0 ? z.value.y : z.value.y + Y.value * J.value[0].proportion / 2 - Y.value * e.proportion / 2 - 2 * (t + 1);
441
+ }
442
+ function X(e, t) {
443
+ let n = P.value.style.chart.layout.labels.dataLabels.markers.position === "left" ? -(Y.value / 2) : Y.value / 2;
444
+ return {
445
+ x: z.value.x + n,
446
+ y: En(e, t) - Tn(e)
447
+ };
448
+ }
449
+ let Dn = b(null);
450
+ function On(e, t, n = "pointer") {
451
+ if (P.value.events.datapointEnter && P.value.events.datapointEnter({
452
+ datapoint: e,
453
+ seriesIndex: t
454
+ }), G.value.length === T.dataset.length) return;
455
+ Dn.value = {
456
+ datapoint: e,
457
+ seriesIndex: t,
458
+ series: J.value,
459
+ config: P.value
460
+ }, k.value = t, M.value = t, N.value = n;
461
+ let r = J.value[t], i = P.value.style.chart.tooltip.customFormat;
462
+ if (pe(i) && ae(() => i({
463
+ seriesIndex: t,
464
+ datapoint: e,
465
+ series: J.value,
466
+ config: P.value
467
+ }))) Mt.value = i({
468
+ seriesIndex: t,
469
+ datapoint: e,
470
+ series: J.value,
471
+ config: P.value
472
+ });
473
+ else {
474
+ let n = "";
475
+ n += `<div style="width:100%;text-align:center;border-bottom:1px solid ${P.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${r.name}</div>`, n += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><circle cx="30" cy="30" r="30" stroke="none" fill="${r.color}" />${At.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${D.value}_${e.absoluteIndex})" />` : ""}</svg>`, n += `<b>${Cn({
476
+ showVal: P.value.style.chart.tooltip.showValue,
477
+ showPercentage: P.value.style.chart.tooltip.showPercentage,
478
+ val: `<span>${oe(P.value.style.chart.layout.labels.dataLabels.formatter, r.value, s({
479
+ p: P.value.style.chart.layout.labels.dataLabels.prefix,
480
+ v: r.value,
481
+ s: P.value.style.chart.layout.labels.dataLabels.suffix,
482
+ r: P.value.style.chart.tooltip.roundingValue
483
+ }), {
484
+ datapoint: e,
485
+ seriesIndex: t
486
+ })}</span>`,
487
+ percentage: s({
488
+ v: r.value / q.value * 100,
489
+ s: "%",
490
+ r: P.value.style.chart.tooltip.roundingPercentage
491
+ })
492
+ })}</b></div>`, Mt.value = n;
493
+ }
494
+ O.value = !0;
495
+ }
496
+ let Z = c(() => ({
497
+ head: J.value.map((e) => ({
498
+ name: e.name,
499
+ color: e.color
500
+ })),
501
+ body: J.value.map((e) => e.value)
502
+ })), Q = c(() => {
503
+ let e = [
504
+ "__SUM__",
505
+ s({
506
+ p: P.value.style.chart.layout.labels.dataLabels.prefix,
507
+ v: q.value,
508
+ s: P.value.style.chart.layout.labels.dataLabels.suffix,
509
+ r: P.value.table.td.roundingValue
510
+ }),
511
+ "100%"
512
+ ], t = Z.value.head.map((e, t) => [
513
+ {
514
+ color: e.color,
515
+ name: e.name
516
+ },
517
+ s({
518
+ p: P.value.style.chart.layout.labels.dataLabels.prefix,
519
+ v: Z.value.body[t],
520
+ s: P.value.style.chart.layout.labels.dataLabels.suffix,
521
+ r: P.value.table.td.roundingValue
522
+ }),
523
+ isNaN(Z.value.body[t] / q.value) ? "-" : (Z.value.body[t] / q.value * 100).toFixed(P.value.table.td.roundingPercentage) + "%"
524
+ ]);
525
+ return {
526
+ head: e,
527
+ body: t,
528
+ a11yBody: t.map((e) => e.map((e, t) => t === 0 ? e.name : e)),
529
+ config: {
530
+ th: {
531
+ backgroundColor: P.value.table.th.backgroundColor,
532
+ color: P.value.table.th.color,
533
+ outline: P.value.table.th.outline
534
+ },
535
+ td: {
536
+ backgroundColor: P.value.table.td.backgroundColor,
537
+ color: P.value.table.td.color,
538
+ outline: P.value.table.td.outline
539
+ },
540
+ breakpoint: P.value.table.responsiveBreakpoint
541
+ },
542
+ colNames: [
543
+ P.value.table.columnNames.series,
544
+ P.value.table.columnNames.value,
545
+ P.value.table.columnNames.percentage
546
+ ]
547
+ };
548
+ });
549
+ function kn(e = null) {
550
+ Ue(() => {
551
+ let n = Z.value.head.map((e, t) => [
552
+ [e.name],
553
+ [Z.value.body[t]],
554
+ [isNaN(Z.value.body[t] / q.value) ? "-" : Z.value.body[t] / q.value * 100]
555
+ ]), i = [
556
+ [P.value.style.chart.title.text],
557
+ [P.value.style.chart.title.subtitle.text],
558
+ [
559
+ [""],
560
+ ["val"],
561
+ ["%"]
562
+ ]
563
+ ].concat(n), a = r(i);
564
+ e ? e(a) : t({
565
+ csvContent: a,
566
+ title: P.value.style.chart.title.text || "vue-ui-rings"
567
+ });
568
+ });
569
+ }
570
+ let $ = b(!1);
571
+ function An(e) {
572
+ $.value = e, Nt.value += 1;
573
+ }
574
+ function jn() {
575
+ U.value.showTable = !U.value.showTable;
576
+ }
577
+ function Mn() {
578
+ U.value.showTooltip = !U.value.showTooltip;
579
+ }
580
+ function Nn() {
581
+ U.value.showLabels = !U.value.showLabels;
582
+ }
583
+ let Pn = b(!1);
584
+ function Fn() {
585
+ Pn.value = !Pn.value;
586
+ }
587
+ async function In({ scale: e = 2 } = {}) {
588
+ if (!A.value) return;
589
+ let { width: t, height: n } = A.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await we({
590
+ domElement: A.value,
591
+ base64: !0,
592
+ img: !0,
593
+ scale: e
594
+ });
595
+ return {
596
+ imageUri: i,
597
+ base64: a,
598
+ title: P.value.style.chart.title.text,
599
+ width: t,
600
+ height: n,
601
+ aspectRatio: r
602
+ };
603
+ }
604
+ let Ln = c(() => {
605
+ let e = P.value.table.useDialog && !P.value.table.show, t = U.value.showTable;
606
+ return {
607
+ component: e ? Et : xt,
608
+ title: `${P.value.style.chart.title.text}${P.value.style.chart.title.subtitle.text ? `: ${P.value.style.chart.title.subtitle.text}` : ""}`,
609
+ props: e ? {
610
+ backgroundColor: P.value.table.th.backgroundColor,
611
+ color: P.value.table.th.color,
612
+ headerColor: P.value.table.th.color,
613
+ headerBg: P.value.table.th.backgroundColor,
614
+ isFullscreen: $.value,
615
+ fullscreenParent: A.value,
616
+ forcedWidth: Math.min(800, window.innerWidth * .8),
617
+ isCursorPointer: I.value
618
+ } : {
619
+ hideDetails: !0,
620
+ config: {
621
+ open: t,
622
+ maxHeight: 1e4,
623
+ body: {
624
+ backgroundColor: P.value.style.chart.backgroundColor,
625
+ color: P.value.style.chart.color
626
+ },
627
+ head: {
628
+ backgroundColor: P.value.style.chart.backgroundColor,
629
+ color: P.value.style.chart.color
630
+ }
631
+ }
632
+ }
633
+ };
634
+ });
635
+ Ze(() => U.value.showTable, (e) => {
636
+ P.value.table.show || (e && P.value.table.useDialog && j.value ? j.value.open() : "close" in j.value && j.value.close());
637
+ });
638
+ function Rn() {
639
+ U.value.showTable = !1, Ut.value && Ut.value.setTableIconState(!1);
640
+ }
641
+ let zn = c(() => vn.value.map((e) => ({
642
+ ...e,
643
+ name: e.display
644
+ }))), Bn = c(() => P.value.style.chart.backgroundColor), Vn = c(() => P.value.style.chart.legend), Hn = c(() => P.value.style.chart.title), { isCallbackImaging: Un, isCallbackSvg: Wn, generateSvg: Gn, onGenerateImage: Kn } = Se({
645
+ svg: R,
646
+ title: Hn,
647
+ legend: Vn,
648
+ legendItems: zn,
649
+ backgroundColor: Bn,
650
+ getSvgCallback: () => P.value.userOptions.callbacks.svg,
651
+ generateImage: an
652
+ });
653
+ async function qn() {
654
+ if (ln("copyAlt", {
655
+ config: P.value,
656
+ dataset: J.value
657
+ }), !P.value.userOptions.callbacks.altCopy) {
658
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
659
+ return;
660
+ }
661
+ await Promise.resolve(P.value.userOptions.callbacks.altCopy({
662
+ config: P.value,
663
+ dataset: J.value
664
+ }));
665
+ }
666
+ function Jn() {
667
+ M.value = null, Gt.value = !0;
668
+ }
669
+ function Yn() {
670
+ M.value = null, N.value = "pointer", O.value = !1, k.value = null, Gt.value = !1;
671
+ }
672
+ function Xn(e) {
673
+ if (!R.value || Pn.value || document.activeElement !== R.value || !J.value.length || G.value.length === T.dataset.length) return;
674
+ let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
675
+ if (!t && !n && !r && !i) return;
676
+ if (e.preventDefault(), e.stopPropagation(), i) {
677
+ M.value = null, N.value = "pointer", O.value = !1, k.value = null;
678
+ return;
679
+ }
680
+ if (r) {
681
+ if (M.value === null) return;
682
+ let e = J.value[M.value];
683
+ if (!e) return;
684
+ xn(e, M.value);
685
+ return;
686
+ }
687
+ let a = M.value;
688
+ a === null || a < 0 || a >= J.value.length ? a = n ? 0 : J.value.length - 1 : n ? (a += 1, a >= J.value.length && (a = 0)) : t && (--a, a < 0 && (a = J.value.length - 1));
689
+ let ee = J.value[a];
690
+ ee && (Zn(a), On(ee, a, "keyboard"));
691
+ }
692
+ function Zn(e) {
693
+ if (!Number.isFinite(e) || !R.value) return;
694
+ let t = J.value[e];
695
+ if (!t) return;
696
+ let n = X(t, e), r = R.value.getBoundingClientRect();
697
+ Wt.value = {
698
+ x: r.left + n.x / W.value.width * r.width,
699
+ y: r.top + n.y / W.value.height * r.height
700
+ };
701
+ }
702
+ let Qn = c(() => ({
703
+ headers: Q.value?.colNames ?? [],
704
+ rows: Q.value?.a11yBody ?? []
705
+ }));
706
+ return De({
707
+ getData: bn,
708
+ getImage: In,
709
+ generatePdf: rn,
710
+ generateCsv: kn,
711
+ generateImage: an,
712
+ generateSvg: Gn,
713
+ hideSeries: hn,
714
+ showSeries: mn,
715
+ toggleTable: jn,
716
+ toggleTooltip: Mn,
717
+ toggleAnnotator: Fn,
718
+ toggleFullscreen: An,
719
+ toggleLabels: Nn,
720
+ copyAlt: qn
721
+ }), (e, t) => (y(), d("div", {
722
+ ref_key: "ringsChart",
723
+ ref: A,
724
+ class: g(`vue-data-ui-component vue-ui-rings ${$.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${P.value.useCssAnimation ? "" : "vue-ui-dna"}`),
725
+ style: v(`font-family:${P.value.style.fontFamily};text-align:center;width:100%;background:${P.value.style.chart.backgroundColor};${P.value.responsive ? "height: 100%" : ""}`),
726
+ id: `rings_${D.value}`,
727
+ onMouseleave: t[2] ||= (e) => {
728
+ k.value = null, O.value = !1, C(Xt)(!1);
729
+ },
730
+ onMouseenter: t[3] ||= () => C(Xt)(!0)
731
+ }, [
732
+ f("div", {
733
+ id: `chart-instructions-${D.value}`,
734
+ class: "sr-only"
735
+ }, [f("p", null, S(P.value.a11y.translations.keyboardNavigation), 1)], 8, et),
736
+ Qn.value?.rows?.length ? (y(), l(Me, {
737
+ key: 0,
738
+ uid: D.value,
739
+ head: Qn.value.headers,
740
+ body: Qn.value.rows,
741
+ notice: P.value.a11y.translations.tableAvailable,
742
+ caption: P.value.a11y.translations.tableCaption
743
+ }, null, 8, [
744
+ "uid",
745
+ "head",
746
+ "body",
747
+ "notice",
748
+ "caption"
749
+ ])) : u("", !0),
750
+ P.value.userOptions.buttons.annotator ? (y(), l(C(Ct), {
751
+ key: 1,
752
+ svgRef: C(R),
753
+ backgroundColor: P.value.style.chart.backgroundColor,
754
+ color: P.value.style.chart.color,
755
+ active: Pn.value,
756
+ isCursorPointer: I.value,
757
+ onClose: Fn
758
+ }, {
759
+ "annotator-action-close": w(() => [x(e.$slots, "annotator-action-close", {}, void 0, !0)]),
760
+ "annotator-action-color": w(({ color: t }) => [x(e.$slots, "annotator-action-color", _(h({ color: t })), void 0, !0)]),
761
+ "annotator-action-draw": w(({ mode: t }) => [x(e.$slots, "annotator-action-draw", _(h({ mode: t })), void 0, !0)]),
762
+ "annotator-action-undo": w(({ disabled: t }) => [x(e.$slots, "annotator-action-undo", _(h({ disabled: t })), void 0, !0)]),
763
+ "annotator-action-redo": w(({ disabled: t }) => [x(e.$slots, "annotator-action-redo", _(h({ disabled: t })), void 0, !0)]),
764
+ "annotator-action-delete": w(({ disabled: t }) => [x(e.$slots, "annotator-action-delete", _(h({ disabled: t })), void 0, !0)]),
765
+ _: 3
766
+ }, 8, [
767
+ "svgRef",
768
+ "backgroundColor",
769
+ "color",
770
+ "active",
771
+ "isCursorPointer"
772
+ ])) : u("", !0),
773
+ on.value ? (y(), d("div", {
774
+ key: 2,
775
+ ref_key: "noTitle",
776
+ ref: Lt,
777
+ class: "vue-data-ui-no-title-space",
778
+ style: "height:36px; width: 100%;background:transparent"
779
+ }, null, 512)) : u("", !0),
780
+ P.value.style.chart.title.text ? (y(), d("div", {
781
+ key: 3,
782
+ ref_key: "chartTitle",
783
+ ref: Pt,
784
+ style: "width:100%;background:transparent"
785
+ }, [(y(), l(Te, {
786
+ key: `title_${Rt.value}`,
787
+ config: {
788
+ title: {
789
+ cy: "rings-div-title",
790
+ ...P.value.style.chart.title
791
+ },
792
+ subtitle: {
793
+ cy: "rings-div-subtitle",
794
+ ...P.value.style.chart.title.subtitle
795
+ }
796
+ }
797
+ }, null, 8, ["config"]))], 512)) : u("", !0),
798
+ f("div", { id: `legend-top-${D.value}` }, null, 8, tt),
799
+ P.value.userOptions.show && jt.value && (C(Zt) || C(Yt)) ? (y(), l(C(wt), {
800
+ ref_key: "userOptionsRef",
801
+ ref: Ut,
802
+ key: `user_options_${Nt.value}`,
803
+ backgroundColor: P.value.style.chart.backgroundColor,
804
+ color: P.value.style.chart.color,
805
+ isPrinting: C(tn),
806
+ isImaging: C(nn),
807
+ uid: D.value,
808
+ hasTooltip: P.value.userOptions.buttons.tooltip && P.value.style.chart.tooltip.show,
809
+ hasPdf: P.value.userOptions.buttons.pdf,
810
+ hasXls: P.value.userOptions.buttons.csv,
811
+ hasImg: P.value.userOptions.buttons.img,
812
+ hasSvg: P.value.userOptions.buttons.svg,
813
+ hasTable: P.value.userOptions.buttons.table,
814
+ hasFullscreen: P.value.userOptions.buttons.fullscreen,
815
+ hasAltCopy: P.value.userOptions.buttons.altCopy,
816
+ hasLabel: P.value.userOptions.buttons.labels,
817
+ isTooltip: U.value.showTooltip,
818
+ isFullscreen: $.value,
819
+ titles: { ...P.value.userOptions.buttonTitles },
820
+ chartElement: A.value,
821
+ position: P.value.userOptions.position,
822
+ hasAnnotator: P.value.userOptions.buttons.annotator,
823
+ isAnnotation: Pn.value,
824
+ callbacks: P.value.userOptions.callbacks,
825
+ printScale: P.value.userOptions.print.scale,
826
+ tableDialog: P.value.table.useDialog,
827
+ isCursorPointer: I.value,
828
+ onToggleFullscreen: An,
829
+ onGeneratePdf: C(rn),
830
+ onGenerateCsv: kn,
831
+ onGenerateImage: C(Kn),
832
+ onGenerateSvg: C(Gn),
833
+ onToggleTable: jn,
834
+ onToggleTooltip: Mn,
835
+ onToggleAnnotator: Fn,
836
+ onToggleLabels: Nn,
837
+ onCopyAlt: qn,
838
+ style: v({ visibility: C(Zt) ? C(Yt) ? "visible" : "hidden" : "visible" })
839
+ }, Be({ _: 2 }, [
840
+ e.$slots.menuIcon ? {
841
+ name: "menuIcon",
842
+ fn: w(({ isOpen: t, color: n }) => [x(e.$slots, "menuIcon", _(h({
843
+ isOpen: t,
844
+ color: n
845
+ })), void 0, !0)]),
846
+ key: "0"
847
+ } : void 0,
848
+ e.$slots.optionTooltip ? {
849
+ name: "optionTooltip",
850
+ fn: w(() => [x(e.$slots, "optionTooltip", {}, void 0, !0)]),
851
+ key: "1"
852
+ } : void 0,
853
+ e.$slots.optionPdf ? {
854
+ name: "optionPdf",
855
+ fn: w(() => [x(e.$slots, "optionPdf", {}, void 0, !0)]),
856
+ key: "2"
857
+ } : void 0,
858
+ e.$slots.optionCsv ? {
859
+ name: "optionCsv",
860
+ fn: w(() => [x(e.$slots, "optionCsv", {}, void 0, !0)]),
861
+ key: "3"
862
+ } : void 0,
863
+ e.$slots.optionImg ? {
864
+ name: "optionImg",
865
+ fn: w(() => [x(e.$slots, "optionImg", {}, void 0, !0)]),
866
+ key: "4"
867
+ } : void 0,
868
+ e.$slots.optionSvg ? {
869
+ name: "optionSvg",
870
+ fn: w(() => [x(e.$slots, "optionSvg", {}, void 0, !0)]),
871
+ key: "5"
872
+ } : void 0,
873
+ e.$slots.optionTable ? {
874
+ name: "optionTable",
875
+ fn: w(() => [x(e.$slots, "optionTable", {}, void 0, !0)]),
876
+ key: "6"
877
+ } : void 0,
878
+ e.$slots.optionLabels ? {
879
+ name: "optionLabels",
880
+ fn: w(() => [x(e.$slots, "optionLabels", {}, void 0, !0)]),
881
+ key: "7"
882
+ } : void 0,
883
+ e.$slots.optionFullscreen ? {
884
+ name: "optionFullscreen",
885
+ fn: w(({ toggleFullscreen: t, isFullscreen: n }) => [x(e.$slots, "optionFullscreen", _(h({
886
+ toggleFullscreen: t,
887
+ isFullscreen: n
888
+ })), void 0, !0)]),
889
+ key: "8"
890
+ } : void 0,
891
+ e.$slots.optionAnnotator ? {
892
+ name: "optionAnnotator",
893
+ fn: w(({ toggleAnnotator: t, isAnnotator: n }) => [x(e.$slots, "optionAnnotator", _(h({
894
+ toggleAnnotator: t,
895
+ isAnnotator: n
896
+ })), void 0, !0)]),
897
+ key: "9"
898
+ } : void 0,
899
+ e.$slots.optionAltCopy ? {
900
+ name: "optionAltCopy",
901
+ fn: w(({ altCopy: t }) => [x(e.$slots, "optionAltCopy", _(h({ altCopy: t })), void 0, !0)]),
902
+ key: "10"
903
+ } : void 0,
904
+ e.$slots["custom-menu-before"] ? {
905
+ name: "custom-menu-before",
906
+ fn: w(() => [x(e.$slots, "custom-menu-before", {}, void 0, !0)]),
907
+ key: "11"
908
+ } : void 0,
909
+ e.$slots["custom-menu-after"] ? {
910
+ name: "custom-menu-after",
911
+ fn: w(() => [x(e.$slots, "custom-menu-after", {}, void 0, !0)]),
912
+ key: "12"
913
+ } : void 0
914
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasFullscreen.hasAltCopy.hasLabel.isTooltip.isFullscreen.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : u("", !0),
915
+ f("div", nt, [(y(), d("svg", {
916
+ ref_key: "svgRef",
917
+ ref: R,
918
+ xmlns: C(ue),
919
+ class: g({
920
+ "vue-data-ui-fullscreen--on": $.value,
921
+ "vue-data-ui-fulscreen--off": !$.value,
922
+ resizing: Vt.value || C(L),
923
+ "vue-data-ui-no-transition": !C(F)
924
+ }),
925
+ viewBox: `0 0 ${W.value.width <= 0 ? 10 : W.value.width} ${W.value.height <= 0 ? 10 : W.value.height}`,
926
+ style: v(`max-width:100%;overflow:hidden;background:transparent;color:${P.value.style.chart.color}`),
927
+ "aria-describedby": `chart-instructions-${D.value}`,
928
+ tabindex: "0",
929
+ onFocus: Jn,
930
+ onBlur: Yn,
931
+ onKeydown: Xn
932
+ }, [
933
+ p(C(Tt)),
934
+ e.$slots["chart-background"] ? (y(), d("foreignObject", {
935
+ key: 0,
936
+ x: 0,
937
+ y: 0,
938
+ width: W.value.width <= 0 ? 10 : W.value.width,
939
+ height: W.value.height <= 0 ? 10 : W.value.height,
940
+ style: { pointerEvents: "none" }
941
+ }, [x(e.$slots, "chart-background", {}, void 0, !0)], 8, it)) : u("", !0),
942
+ f("defs", null, [(y(!0), d(Re, null, Ke(J.value, (e, t) => (y(), l(Ae, {
943
+ t: "radial",
944
+ cx: "50%",
945
+ cy: "30%",
946
+ r: "50%",
947
+ fx: "50%",
948
+ fy: "50%",
949
+ id: `gradient_${D.value}_${t}`,
950
+ key: `gradient_${D.value}_${t}`,
951
+ stops: [[
952
+ "0%",
953
+ C(n)(C(re)(e.color, .05), 100 - P.value.style.chart.layout.rings.gradient.intensity),
954
+ 1
955
+ ], [
956
+ "100%",
957
+ e.color,
958
+ 1
959
+ ]]
960
+ }, null, 8, ["id", "stops"]))), 128))]),
961
+ e.$slots.pattern ? (y(), d("g", at, [(y(!0), d(Re, null, Ke(J.value, (t) => (y(), d("defs", null, [x(e.$slots, "pattern", He({ ref_for: !0 }, {
962
+ seriesIndex: t.absoluteIndex,
963
+ patternId: `pattern_${D.value}_${t.absoluteIndex}`
964
+ }), void 0, !0)]))), 256))])) : u("", !0),
965
+ (y(!0), d(Re, null, Ke(J.value, (t, n) => (y(), d("g", { key: `r_${t.uid}` }, [
966
+ f("circle", {
967
+ class: g({
968
+ "vue-data-ui-transition": E.value && C(F),
969
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
970
+ "vue-ui-rings-opacity": k.value !== null && k.value !== n
971
+ }),
972
+ style: v(`animation-delay:${n * 100}ms`),
973
+ stroke: P.value.style.chart.layout.rings.stroke,
974
+ cx: z.value.x,
975
+ cy: En(t, n),
976
+ r: Tn(t),
977
+ fill: P.value.style.chart.layout.rings.gradient.underlayerColor
978
+ }, null, 14, ot),
979
+ f("circle", {
980
+ class: g({
981
+ "vue-data-ui-transition": E.value && C(F),
982
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
983
+ "vue-ui-rings-shadow": P.value.style.chart.layout.rings.useShadow,
984
+ "vue-ui-rings-blur": k.value !== null && k.value !== n
985
+ }),
986
+ style: v(`animation-delay:${n * 100}ms`),
987
+ stroke: P.value.style.chart.layout.rings.stroke,
988
+ "stroke-width": t.strokeWidth < .5 ? .5 : t.strokeWidth,
989
+ cx: z.value.x,
990
+ cy: En(t, n),
991
+ r: Tn(t),
992
+ fill: P.value.style.chart.layout.rings.gradient.show ? `url(#gradient_${D.value}_${n})` : t.color
993
+ }, null, 14, st),
994
+ e.$slots.pattern ? (y(), d("circle", {
995
+ key: 0,
996
+ class: g({
997
+ "vue-data-ui-transition": E.value && C(F),
998
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
999
+ "vue-ui-rings-shadow": P.value.style.chart.layout.rings.useShadow,
1000
+ "vue-ui-rings-blur": k.value !== null && k.value !== n
1001
+ }),
1002
+ style: v(`animation-delay:${n * 100}ms`),
1003
+ stroke: P.value.style.chart.layout.rings.stroke,
1004
+ "stroke-width": t.strokeWidth < .5 ? .5 : t.strokeWidth,
1005
+ cx: z.value.x,
1006
+ cy: En(t, n),
1007
+ r: Tn(t),
1008
+ fill: `url(#pattern_${D.value}_${t.absoluteIndex})`
1009
+ }, null, 14, ct)) : u("", !0),
1010
+ f("circle", {
1011
+ stroke: "none",
1012
+ cx: z.value.x,
1013
+ cy: En(t, n),
1014
+ r: Tn(t),
1015
+ fill: "transparent",
1016
+ onMouseenter: (e) => On(t, n, "pointer"),
1017
+ onMouseleave: (e) => Sn(t, n),
1018
+ onClick: (e) => xn(t, n)
1019
+ }, null, 40, lt),
1020
+ U.value.showLabels ? (y(), d(Re, { key: 1 }, [
1021
+ f("rect", {
1022
+ x: P.value.style.chart.layout.labels.dataLabels.markers.position === "left" ? X(t, n).x : z.value.x,
1023
+ y: X(t, n).y - P.value.style.chart.layout.labels.dataLabels.markers.strokeWidth / 2,
1024
+ width: Math.abs(z.value.x - X(t, n).x),
1025
+ height: P.value.style.chart.layout.labels.dataLabels.markers.strokeWidth,
1026
+ fill: P.value.style.chart.layout.labels.dataLabels.markers.stroke,
1027
+ rx: P.value.style.chart.layout.labels.dataLabels.markers.strokeWidth,
1028
+ class: g({
1029
+ "vue-data-ui-transition": E.value && C(F),
1030
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
1031
+ "vue-ui-rings-shadow": P.value.style.chart.layout.rings.useShadow,
1032
+ "vue-ui-rings-blur": k.value !== null && k.value !== n
1033
+ })
1034
+ }, null, 10, ut),
1035
+ f("circle", {
1036
+ cx: X(t, n).x,
1037
+ cy: X(t, n).y,
1038
+ r: P.value.style.chart.layout.labels.dataLabels.markers.radius,
1039
+ fill: t.color,
1040
+ stroke: P.value.style.chart.backgroundColor,
1041
+ class: g({
1042
+ "vue-data-ui-transition": E.value && C(F),
1043
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
1044
+ "vue-ui-rings-shadow": P.value.style.chart.layout.rings.useShadow,
1045
+ "vue-ui-rings-blur": k.value !== null && k.value !== n
1046
+ })
1047
+ }, null, 10, dt),
1048
+ f("text", {
1049
+ "text-anchor": P.value.style.chart.layout.labels.dataLabels.markers.position === "left" ? "end" : "start",
1050
+ "font-size": P.value.style.chart.layout.labels.dataLabels.fontSize,
1051
+ fill: P.value.style.chart.layout.labels.dataLabels.color,
1052
+ "font-weight": P.value.style.chart.layout.labels.dataLabels.bold ? "bold" : "normal",
1053
+ class: g({
1054
+ "vue-data-ui-transition": E.value && C(F),
1055
+ "vue-rings-item-onload": !E.value && P.value.useCssAnimation && !C(L),
1056
+ "vue-ui-rings-shadow": P.value.style.chart.layout.rings.useShadow,
1057
+ "vue-ui-rings-blur": k.value !== null && k.value !== n
1058
+ }),
1059
+ transform: `translate(${X(t, n).x + (P.value.style.chart.layout.labels.dataLabels.markers.position === "left" ? -P.value.style.chart.layout.labels.dataLabels.offsetX - 6 : P.value.style.chart.layout.labels.dataLabels.offsetX) + 6}, ${X(t, n).y + P.value.style.chart.layout.labels.dataLabels.fontSize / 3})`,
1060
+ onMouseenter: (e) => On(t, n, "pointer"),
1061
+ onMouseleave: (e) => Sn(t, n),
1062
+ onClick: (e) => xn(t, n),
1063
+ innerHTML: C(i)({
1064
+ content: wn(t),
1065
+ fontSize: P.value.style.chart.layout.labels.dataLabels.fontSize,
1066
+ fill: P.value.style.chart.layout.labels.dataLabels.color,
1067
+ x: 0,
1068
+ y: 0,
1069
+ translateY: !0
1070
+ })
1071
+ }, null, 42, ft)
1072
+ ], 64)) : u("", !0)
1073
+ ]))), 128)),
1074
+ x(e.$slots, "svg", { svg: {
1075
+ ...W.value,
1076
+ isPrintingImg: C(tn) || C(nn) || C(Un),
1077
+ isPrintingSvg: C(Wn)
1078
+ } }, void 0, !0)
1079
+ ], 46, rt)), e.$slots.hint ? (y(), d("div", pt, [x(e.$slots, "hint", _(h({
1080
+ hint: P.value.a11y.translations.keyboardNavigation,
1081
+ isVisible: Gt.value
1082
+ })), void 0, !0)])) : u("", !0)]),
1083
+ e.$slots.watermark ? (y(), d("div", mt, [x(e.$slots, "watermark", _(h({ isPrinting: C(tn) || C(nn) || C(Un) || C(Wn) })), void 0, !0)])) : u("", !0),
1084
+ f("div", { id: `legend-bottom-${D.value}` }, null, 8, ht),
1085
+ Ht.value && (P.value.style.chart.legend.show || e.$slots.legend) ? (y(), l(ze, {
1086
+ key: 6,
1087
+ to: P.value.style.chart.legend.position === "top" ? `#legend-top-${D.value}` : `#legend-bottom-${D.value}`
1088
+ }, [f("div", {
1089
+ ref_key: "chartLegend",
1090
+ ref: Ft
1091
+ }, [x(e.$slots, "legend", { legend: vn.value }, () => [P.value.style.chart.legend.show ? (y(), l(Ie, {
1092
+ key: `legend_${Bt.value}`,
1093
+ legendSet: vn.value,
1094
+ config: yn.value,
1095
+ isCursorPointer: I.value,
1096
+ onClickMarker: t[0] ||= ({ legend: e }) => fn(e.uid)
1097
+ }, Be({
1098
+ item: w(({ legend: e, index: t }) => [C(L) ? u("", !0) : (y(), d("div", {
1099
+ key: 0,
1100
+ onClick: (t) => fn(e.uid),
1101
+ style: v(`opacity:${G.value.includes(e.uid) ? .5 : 1}`)
1102
+ }, S(e.display), 13, gt))]),
1103
+ legendToggle: w(() => [vn.value.length > 2 && P.value.style.chart.legend.selectAllToggle.show && !C(L) ? (y(), l(je, {
1104
+ key: 0,
1105
+ backgroundColor: P.value.style.chart.legend.selectAllToggle.backgroundColor,
1106
+ color: P.value.style.chart.legend.selectAllToggle.color,
1107
+ fontSize: P.value.style.chart.legend.fontSize,
1108
+ checked: G.value.length > 0,
1109
+ isCursorPointer: I.value,
1110
+ onToggle: un
1111
+ }, null, 8, [
1112
+ "backgroundColor",
1113
+ "color",
1114
+ "fontSize",
1115
+ "checked",
1116
+ "isCursorPointer"
1117
+ ])) : u("", !0)]),
1118
+ _: 2
1119
+ }, [e.$slots.pattern ? {
1120
+ name: "legend-pattern",
1121
+ fn: w(({ legend: e, index: t }) => [p(Ee, {
1122
+ shape: e.shape,
1123
+ radius: 30,
1124
+ stroke: "none",
1125
+ plot: {
1126
+ x: 30,
1127
+ y: 30
1128
+ },
1129
+ fill: `url(#pattern_${D.value}_${t})`
1130
+ }, null, 8, ["shape", "fill"])]),
1131
+ key: "0"
1132
+ } : void 0]), 1032, [
1133
+ "legendSet",
1134
+ "config",
1135
+ "isCursorPointer"
1136
+ ])) : u("", !0)], !0)], 512)], 8, ["to"])) : u("", !0),
1137
+ e.$slots.source ? (y(), d("div", {
1138
+ key: 7,
1139
+ ref_key: "source",
1140
+ ref: It,
1141
+ dir: "auto"
1142
+ }, [x(e.$slots, "source", {}, void 0, !0)], 512)) : u("", !0),
1143
+ p(C(yt), {
1144
+ teleportTo: P.value.style.chart.tooltip.teleportTo,
1145
+ show: U.value.showTooltip && O.value && G.value.length < T.dataset.length,
1146
+ backgroundColor: P.value.style.chart.tooltip.backgroundColor,
1147
+ color: P.value.style.chart.tooltip.color,
1148
+ borderRadius: P.value.style.chart.tooltip.borderRadius,
1149
+ borderColor: P.value.style.chart.tooltip.borderColor,
1150
+ borderWidth: P.value.style.chart.tooltip.borderWidth,
1151
+ fontSize: P.value.style.chart.tooltip.fontSize,
1152
+ backgroundOpacity: P.value.style.chart.tooltip.backgroundOpacity,
1153
+ position: P.value.style.chart.tooltip.position,
1154
+ offsetX: P.value.style.chart.tooltip.offsetX,
1155
+ offsetY: P.value.style.chart.tooltip.offsetY,
1156
+ parent: A.value,
1157
+ content: Mt.value,
1158
+ isFullscreen: $.value,
1159
+ isCustom: P.value.style.chart.tooltip.customFormat && typeof P.value.style.chart.tooltip.customFormat == "function",
1160
+ smooth: P.value.style.chart.tooltip.smooth,
1161
+ backdropFilter: P.value.style.chart.tooltip.backdropFilter,
1162
+ smoothForce: P.value.style.chart.tooltip.smoothForce,
1163
+ smoothSnapThreshold: P.value.style.chart.tooltip.smoothSnapThreshold,
1164
+ isA11yMode: N.value === "keyboard",
1165
+ a11yPosition: Wt.value
1166
+ }, {
1167
+ "tooltip-before": w(() => [x(e.$slots, "tooltip-before", _(h({ ...Dn.value })), void 0, !0)]),
1168
+ tooltip: w(() => [x(e.$slots, "tooltip", _(h({ ...Dn.value })), void 0, !0)]),
1169
+ "tooltip-after": w(() => [x(e.$slots, "tooltip-after", _(h({ ...Dn.value })), void 0, !0)]),
1170
+ _: 3
1171
+ }, 8, [
1172
+ "teleportTo",
1173
+ "show",
1174
+ "backgroundColor",
1175
+ "color",
1176
+ "borderRadius",
1177
+ "borderColor",
1178
+ "borderWidth",
1179
+ "fontSize",
1180
+ "backgroundOpacity",
1181
+ "position",
1182
+ "offsetX",
1183
+ "offsetY",
1184
+ "parent",
1185
+ "content",
1186
+ "isFullscreen",
1187
+ "isCustom",
1188
+ "smooth",
1189
+ "backdropFilter",
1190
+ "smoothForce",
1191
+ "smoothSnapThreshold",
1192
+ "isA11yMode",
1193
+ "a11yPosition"
1194
+ ]),
1195
+ jt.value && P.value.userOptions.buttons.table ? (y(), l(qe(Ln.value.component), He({ key: 8 }, Ln.value.props, {
1196
+ ref_key: "tableUnit",
1197
+ ref: j,
1198
+ onClose: Rn
1199
+ }), Be({
1200
+ content: w(() => [(y(), l(C(St), {
1201
+ key: `table_${zt.value}`,
1202
+ colNames: Q.value.colNames,
1203
+ head: Q.value.head,
1204
+ body: Q.value.body,
1205
+ config: Q.value.config,
1206
+ title: P.value.table.useDialog ? "" : Ln.value.title,
1207
+ withCloseButton: !P.value.table.useDialog,
1208
+ isCursorPointer: I.value,
1209
+ onClose: Rn
1210
+ }, {
1211
+ th: w(({ th: e }) => [e === "__SUM__" ? (y(), d("div", _t, [p(C(bt), {
1212
+ name: "sigma",
1213
+ stroke: Q.value.config.th.color,
1214
+ size: 16
1215
+ }, null, 8, ["stroke"])])) : (y(), d("div", vt, S(e), 1))]),
1216
+ td: w(({ td: e }) => [Ve(S(e.name || e), 1)]),
1217
+ _: 1
1218
+ }, 8, [
1219
+ "colNames",
1220
+ "head",
1221
+ "body",
1222
+ "config",
1223
+ "title",
1224
+ "withCloseButton",
1225
+ "isCursorPointer"
1226
+ ]))]),
1227
+ _: 2
1228
+ }, [P.value.table.useDialog ? {
1229
+ name: "title",
1230
+ fn: w(() => [Ve(S(Ln.value.title), 1)]),
1231
+ key: "0"
1232
+ } : void 0, P.value.table.useDialog ? {
1233
+ name: "actions",
1234
+ fn: w(() => [f("button", {
1235
+ tabindex: "0",
1236
+ class: "vue-ui-user-options-button",
1237
+ onClick: t[1] ||= (e) => kn(P.value.userOptions.callbacks.csv),
1238
+ style: v({ cursor: I.value ? "pointer" : "default" })
1239
+ }, [p(C(bt), {
1240
+ name: "fileCsv",
1241
+ stroke: Ln.value.props.color
1242
+ }, null, 8, ["stroke"])], 4)]),
1243
+ key: "1"
1244
+ } : void 0]), 1040)) : u("", !0),
1245
+ x(e.$slots, "skeleton", {}, () => [C(L) ? (y(), l(ye, { key: 0 })) : u("", !0)], !0)
1246
+ ], 46, $e));
1247
+ }
1248
+ }, [["__scopeId", "data-v-e181a4c5"]]);
1249
+ //#endregion
1250
+ export { Qe as n, yt as t };