vue-data-ui 2.12.6 → 2.12.7-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/{Arrow-Bd9ZVBnX.js → Arrow-CmqjRRUl.js} +1 -1
  2. package/dist/BaseDraggableDialog-BMlyvt7E.js +180 -0
  3. package/dist/{BaseIcon-CNbwMh_-.js → BaseIcon-CZdMutjs.js} +1 -1
  4. package/dist/{ColorPicker-B_FoQwtO.js → ColorPicker-DvVKgyAl.js} +23 -24
  5. package/dist/{DataTable-Rajdtaf6.js → DataTable-Cv9CIz-a.js} +11 -11
  6. package/dist/{Legend-BxtDQCIv.js → Legend-DFunFf8i.js} +8 -8
  7. package/dist/NonSvgPenAndPaper-pVuHj6_A.js +467 -0
  8. package/dist/PackageVersion-CLY-udAA.js +10 -0
  9. package/dist/{PenAndPaper-BkP3J-Ft.js → PenAndPaper-B9na2mbr.js} +8 -10
  10. package/dist/RecursiveCircles-Dn3TGoL6.js +96 -0
  11. package/dist/RecursiveLabels-NTMB9w5C.js +49 -0
  12. package/dist/RecursiveLinks-ld_gDZH4.js +64 -0
  13. package/dist/{Shape-C69a0f29.js → Shape-D3w9qas1.js} +2 -2
  14. package/dist/{Slicer-7qFdY-bT.js → Slicer-ncY8krrM.js} +2 -2
  15. package/dist/SparkTooltip-CwThutH2.js +68 -0
  16. package/dist/{Title-CzaCeCOm.js → Title-B5qqUI3M.js} +2 -2
  17. package/dist/Tooltip-C9rxJ-Ru.js +149 -0
  18. package/dist/{usePrinter-C5bLp34h.js → UserOptions-Ddy6CuLC.js} +172 -231
  19. package/dist/{dom-to-png-Bm0D0yPL.js → dom-to-png-DDlooC9r.js} +1 -1
  20. package/dist/{img-BN9AzqUr.js → img-m9g7lR5d.js} +1 -1
  21. package/dist/{index-BFzQMJda.js → index-BiHmNd1-.js} +21 -21
  22. package/dist/{pdf-uTbs813M.js → pdf-BqM953uL.js} +1 -1
  23. package/dist/style.css +1 -1
  24. package/dist/useChartAccessibility-9icAAmYg.js +12 -0
  25. package/dist/useMouse-AicQS8Vf.js +13 -0
  26. package/dist/{useNestedProp-v7KPpwuP.js → useNestedProp-tRqS0ZAM.js} +1 -1
  27. package/dist/{usePanZoom-CUkkqW81.js → usePanZoom-BQMvRXEQ.js} +16 -17
  28. package/dist/usePrinter-CRCbl1WG.js +53 -0
  29. package/dist/vClickOutside-C6WiFswA.js +13 -0
  30. package/dist/{vue-data-ui-D1k8FeRp.js → vue-data-ui-D9uTDt73.js} +63 -63
  31. package/dist/vue-data-ui.js +19 -19
  32. package/dist/{vue-ui-3d-bar-DoklA4DT.js → vue-ui-3d-bar-rtuSc8FS.js} +397 -402
  33. package/dist/{vue-ui-accordion-BUz4JIIX.js → vue-ui-accordion-CmCs2yR2.js} +3 -3
  34. package/dist/{vue-ui-age-pyramid-4kyBq-Dy.js → vue-ui-age-pyramid-BrzMSiyu.js} +215 -218
  35. package/dist/{vue-ui-annotator-Bq1ZeFfb.js → vue-ui-annotator-CYxmTpf6.js} +2 -2
  36. package/dist/{vue-ui-bullet-DU10avvA.js → vue-ui-bullet-D25qNQfb.js} +137 -140
  37. package/dist/{vue-ui-candlestick-BI1t3flz.js → vue-ui-candlestick-BuerNa-r.js} +265 -271
  38. package/dist/{vue-ui-carousel-table-VowLf_oc.js → vue-ui-carousel-table-aN0HLsOO.js} +137 -137
  39. package/dist/{vue-ui-chestnut-BHjV3d94.js → vue-ui-chestnut-oUj2ocsZ.js} +397 -400
  40. package/dist/{vue-ui-chord-CPr7r-2_.js → vue-ui-chord-C4evlXYB.js} +356 -365
  41. package/dist/vue-ui-circle-pack-CWrNiKTY.js +656 -0
  42. package/dist/{vue-ui-cursor-C9teAbVI.js → vue-ui-cursor-DgpSttlt.js} +2 -2
  43. package/dist/{vue-ui-dashboard-CwDYB8tP.js → vue-ui-dashboard-BN2ha1Eh.js} +62 -62
  44. package/dist/{vue-ui-digits-CHmkL0hn.js → vue-ui-digits-BhjAxXgm.js} +2 -2
  45. package/dist/vue-ui-donut-D3_z61HI.js +1291 -0
  46. package/dist/vue-ui-donut-evolution-oKtmZPx4.js +864 -0
  47. package/dist/{vue-ui-dumbbell-DTKLLd1N.js → vue-ui-dumbbell-C8Lokx-F.js} +265 -270
  48. package/dist/{vue-ui-flow-BLBhsU2n.js → vue-ui-flow-BVRkH0PS.js} +291 -300
  49. package/dist/{vue-ui-funnel-CIrWdeBk.js → vue-ui-funnel-DFxcmAB5.js} +216 -219
  50. package/dist/{vue-ui-galaxy-ByhKyIV4.js → vue-ui-galaxy-CGE0hlBC.js} +227 -235
  51. package/dist/{vue-ui-gauge-BbfBMpng.js → vue-ui-gauge-B48eMvOR.js} +240 -243
  52. package/dist/{vue-ui-gizmo-BM-_QfHM.js → vue-ui-gizmo-zTKNpjvv.js} +57 -58
  53. package/dist/{vue-ui-heatmap-BA4z4hsw.js → vue-ui-heatmap-UNfTt8SM.js} +239 -242
  54. package/dist/{vue-ui-history-plot-8vM_IUy8.js → vue-ui-history-plot-CbCWmvtg.js} +257 -262
  55. package/dist/{vue-ui-kpi-D57QLK6A.js → vue-ui-kpi-Drf_lrlh.js} +29 -30
  56. package/dist/{vue-ui-mini-loader-CR4c-xJQ.js → vue-ui-mini-loader-DU3G6BVs.js} +2 -2
  57. package/dist/vue-ui-molecule-B5MOXYEA.js +580 -0
  58. package/dist/{vue-ui-mood-radar-Brc9cxoD.js → vue-ui-mood-radar-CC_CVLvn.js} +180 -186
  59. package/dist/{vue-ui-nested-donuts-W3Z5F--L.js → vue-ui-nested-donuts-D_H962kk.js} +366 -374
  60. package/dist/{vue-ui-onion-BNBlGNlF.js → vue-ui-onion-P8k6T724.js} +252 -258
  61. package/dist/{vue-ui-parallel-coordinate-plot-B5G3jyvg.js → vue-ui-parallel-coordinate-plot-B5Los0vX.js} +296 -303
  62. package/dist/{vue-ui-quadrant-CUy9mVIA.js → vue-ui-quadrant-B3wzCTxK.js} +402 -409
  63. package/dist/{vue-ui-quick-chart-D4_8mRXU.js → vue-ui-quick-chart-oucj6hXk.js} +611 -616
  64. package/dist/{vue-ui-radar-BUk56jGL.js → vue-ui-radar-Cjqlyu6d.js} +270 -277
  65. package/dist/{vue-ui-rating-B9TQl5KP.js → vue-ui-rating-gryk_h_6.js} +2 -2
  66. package/dist/vue-ui-relation-circle-ielvWC-1.js +525 -0
  67. package/dist/{vue-ui-ridgeline-Cl06bGom.js → vue-ui-ridgeline-Dydqo68b.js} +321 -326
  68. package/dist/{vue-ui-rings-B6bpFlFp.js → vue-ui-rings-BRBXektJ.js} +262 -269
  69. package/dist/{vue-ui-scatter--WUuVw5G.js → vue-ui-scatter-Df-BM7Ts.js} +372 -379
  70. package/dist/{vue-ui-skeleton-B_YI7Yuc.js → vue-ui-skeleton-CbYQYRvD.js} +19 -19
  71. package/dist/{vue-ui-smiley-Bbam2fDz.js → vue-ui-smiley-BfHaQMaW.js} +2 -2
  72. package/dist/{vue-ui-spark-trend-DavXuwGt.js → vue-ui-spark-trend-z3fUChs_.js} +114 -117
  73. package/dist/{vue-ui-sparkbar-9N1FU9-J.js → vue-ui-sparkbar-ChtFIugH.js} +104 -106
  74. package/dist/{vue-ui-sparkgauge-_9ntq4EK.js → vue-ui-sparkgauge-DtpODCww.js} +72 -74
  75. package/dist/{vue-ui-sparkhistogram-BEzOV4HV.js → vue-ui-sparkhistogram-C3XnYiXI.js} +83 -86
  76. package/dist/vue-ui-sparkline-CoL8jiX8.js +459 -0
  77. package/dist/{vue-ui-sparkstackbar-BSWcs3v0.js → vue-ui-sparkstackbar-CYk3mZJH.js} +102 -105
  78. package/dist/{vue-ui-stackbar-gG5BLlAr.js → vue-ui-stackbar-D9LGbuG5.js} +433 -437
  79. package/dist/{vue-ui-strip-plot-BJouRmxh.js → vue-ui-strip-plot-C5r1Ee2R.js} +245 -252
  80. package/dist/{vue-ui-table-D9Ry8s4N.js → vue-ui-table-DBaT_TfA.js} +3 -3
  81. package/dist/{vue-ui-table-heatmap-Bizzpi31.js → vue-ui-table-heatmap-CYW4YfKN.js} +93 -94
  82. package/dist/{vue-ui-table-sparkline-Dg54Ovs2.js → vue-ui-table-sparkline-Di0MYR4p.js} +212 -212
  83. package/dist/{vue-ui-thermometer-6MSdF_Gm.js → vue-ui-thermometer-BF1btHY2.js} +154 -157
  84. package/dist/{vue-ui-timer-ByaKokk8.js → vue-ui-timer-D9FfRWN5.js} +180 -181
  85. package/dist/vue-ui-tiremarks-CQ0lk8fJ.js +341 -0
  86. package/dist/vue-ui-treemap-1Lx7YRtc.js +947 -0
  87. package/dist/{vue-ui-vertical-bar-CE4oBwBv.js → vue-ui-vertical-bar-DdVVQ1ED.js} +397 -403
  88. package/dist/{vue-ui-waffle-DNEEnY_G.js → vue-ui-waffle-BhnuPiRD.js} +317 -324
  89. package/dist/vue-ui-wheel-BIjJ0fg8.js +335 -0
  90. package/dist/vue-ui-word-cloud-3-r8HwO_.js +642 -0
  91. package/dist/{vue-ui-world-Brhq17TE.js → vue-ui-world-CPIGEswq.js} +430 -442
  92. package/dist/{vue-ui-xy-K2G7QQxG.js → vue-ui-xy-9e_epIN4.js} +845 -846
  93. package/dist/vue-ui-xy-canvas-DcGgQ7s4.js +1206 -0
  94. package/package.json +6 -6
  95. package/dist/BaseDraggableDialog-Bzwlfmy1.js +0 -186
  96. package/dist/PackageVersion-BjrblLPQ.js +0 -10
  97. package/dist/Tooltip-CWmRmhJr.js +0 -158
  98. package/dist/useChartAccessibility-BWojgys7.js +0 -13
  99. package/dist/vue-ui-circle-pack-D_jYpsuD.js +0 -659
  100. package/dist/vue-ui-donut-WRUDvvZa.js +0 -1292
  101. package/dist/vue-ui-donut-evolution-BQxV5D_L.js +0 -871
  102. package/dist/vue-ui-molecule-Bq69N7rC.js +0 -782
  103. package/dist/vue-ui-relation-circle-T6aTibIU.js +0 -528
  104. package/dist/vue-ui-sparkline-D__GCUAz.js +0 -519
  105. package/dist/vue-ui-tiremarks-Z8pjUT1g.js +0 -344
  106. package/dist/vue-ui-treemap-pRJ3be5l.js +0 -956
  107. package/dist/vue-ui-wheel-DWPYZxdT.js +0 -338
  108. package/dist/vue-ui-word-cloud-DAR7R8F8.js +0 -648
  109. package/dist/vue-ui-xy-canvas-ml44sPHS.js +0 -1673
@@ -0,0 +1,1291 @@
1
+ import { defineAsyncComponent as q, useSlots as Nt, computed as f, shallowRef as W, ref as _, onMounted as tt, onBeforeUnmount as Yt, watch as lt, createElementBlock as r, openBlock as o, normalizeStyle as b, normalizeClass as _e, createBlock as Q, createCommentVNode as i, renderSlot as p, createElementVNode as y, createVNode as xe, unref as u, createSlots as at, withCtx as C, normalizeProps as oe, guardReactiveProps as se, Fragment as g, renderList as F, mergeProps as ot, toDisplayString as P, createTextVNode as st, nextTick as Xt } from "vue";
2
+ import { u as It, o as Dt, e as ut, g as Vt, c as Bt, b as Gt, d as nt, p as Z, m as Rt, _ as Wt, f as N, X as Et, s as ve, w as Ut, j as jt, M as L, i as D, k as ce, n as w, t as Ht, a as qt, q as Jt, r as Kt, x as Qt, S as rt } from "./index-BiHmNd1-.js";
3
+ import { t as Zt, u as el } from "./useResponsive-JZ9xq-JV.js";
4
+ import { u as it } from "./useNestedProp-tRqS0ZAM.js";
5
+ import { u as tl } from "./usePrinter-CRCbl1WG.js";
6
+ import { u as ll } from "./useUserOptionState-BIvW1Kz7.js";
7
+ import { u as al } from "./useChartAccessibility-9icAAmYg.js";
8
+ import ol from "./Legend-DFunFf8i.js";
9
+ import sl from "./Title-B5qqUI3M.js";
10
+ import { _ as ul } from "./_plugin-vue_export-helper-CHgC5LLL.js";
11
+ const nl = ["id"], rl = ["xmlns", "viewBox"], il = ["width", "height"], vl = { key: 1 }, cl = ["id"], dl = ["stop-color"], hl = ["offset", "stop-color"], yl = ["offset", "stop-color"], fl = ["stop-color"], pl = { key: 2 }, gl = ["id", "cx", "cy"], ml = ["stop-color", "stop-opacity"], bl = ["stop-color"], wl = ["id"], kl = ["id"], _l = ["id"], xl = ["flood-color"], $l = ["id"], Cl = ["flood-color"], Tl = ["d", "stroke", "filter"], Pl = ["d", "stroke", "filter"], Al = ["cx", "cy", "r", "fill", "filter"], Sl = { key: 6 }, Fl = ["stroke", "d"], Ll = { key: 0 }, zl = ["d", "fill", "stroke", "stroke-width", "filter"], Ol = ["d", "fill", "stroke", "stroke-width", "filter"], Ml = { key: 0 }, Nl = ["stroke", "d"], Yl = { key: 0 }, Xl = ["d", "stroke", "stroke-width", "filter"], Il = { key: 1 }, Dl = ["d", "fill", "stroke", "stroke-width", "filter"], Vl = ["d", "fill", "stroke", "stroke-width", "filter"], Bl = { key: 1 }, Gl = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], Rl = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], Wl = ["cx", "cy", "r", "stroke"], El = ["cx", "cy", "r", "fill"], Ul = { key: 0 }, jl = ["d", "fill", "onMouseenter", "onClick"], Hl = { key: 1 }, ql = ["cx", "cy", "r"], Jl = ["x", "y", "fill", "font-size"], Kl = ["x", "y", "fill", "font-size"], Ql = ["x", "y", "fill", "font-size"], Zl = ["x", "y", "fill", "font-size"], ea = ["filter"], ta = { key: 0 }, la = ["x", "y"], aa = { key: 1 }, oa = ["cx", "cy", "fill", "stroke", "filter", "onClick"], sa = ["cx", "cy", "fill", "stroke", "filter", "onClick"], ua = ["text-anchor", "x", "y", "fill", "font-size", "onClick"], na = ["text-anchor", "x", "y", "fill", "font-size", "onClick"], ra = ["text-anchor", "x", "y", "fill", "font-size", "onClick"], ia = ["text-anchor", "x", "y", "fill", "font-size", "onClick"], va = { key: 2 }, ca = ["x", "y", "width"], da = ["x", "y", "width"], ha = {
12
+ key: 5,
13
+ class: "vue-data-ui-watermark"
14
+ }, ya = ["onClick"], fa = {
15
+ key: 0,
16
+ style: { "font-variant-numeric": "tabular-nums" }
17
+ }, pa = { key: 1 }, ga = ["innerHTML"], ma = {
18
+ __name: "vue-ui-donut",
19
+ props: {
20
+ config: {
21
+ type: Object,
22
+ default() {
23
+ return {};
24
+ }
25
+ },
26
+ dataset: {
27
+ type: Array,
28
+ default() {
29
+ return [];
30
+ }
31
+ }
32
+ },
33
+ emits: ["selectLegend", "selectDatapoint"],
34
+ setup($e, { expose: vt, emit: ct }) {
35
+ const dt = q(() => import("./vue-ui-accordion-CmCs2yR2.js")), ht = q(() => import("./DataTable-Cv9CIz-a.js")), yt = q(() => import("./PackageVersion-CLY-udAA.js")), ft = q(() => import("./PenAndPaper-B9na2mbr.js")), pt = q(() => import("./Shape-D3w9qas1.js")), gt = q(() => import("./vue-ui-skeleton-CbYQYRvD.js")), mt = q(() => import("./Tooltip-C9rxJ-Ru.js")), bt = q(() => import("./UserOptions-Ddy6CuLC.js")), { vue_ui_donut: wt } = It(), kt = Nt(), z = $e, ue = f({
36
+ get() {
37
+ return !!z.dataset && z.dataset.length;
38
+ },
39
+ set(l) {
40
+ return l;
41
+ }
42
+ }), ne = W(null), Ce = W(null), Te = W(null), E = W(null), ee = W(null), Pe = W(null), Ae = W(null), Se = _(0), Fe = _(0), Le = _(0);
43
+ tt(() => {
44
+ ze();
45
+ }), Yt(() => {
46
+ E.value && (ee.value && E.value.unobserve(ee.value), E.value.disconnect());
47
+ });
48
+ function ze() {
49
+ if (Dt(z.dataset) ? ut({
50
+ componentName: "VueUiDonut",
51
+ type: "dataset"
52
+ }) : z.dataset.forEach((l, s) => {
53
+ Vt({
54
+ datasetObject: l,
55
+ requiredAttributes: ["name", "values"]
56
+ }).forEach((t) => {
57
+ ue.value = !1, ut({
58
+ componentName: "VueUiDonut",
59
+ type: "datasetSerieAttribute",
60
+ property: t,
61
+ index: s
62
+ });
63
+ });
64
+ }), e.value.responsive) {
65
+ const l = Zt(() => {
66
+ const { width: s, height: t } = el({
67
+ chart: ne.value,
68
+ title: e.value.style.chart.title.text ? Ce.value : null,
69
+ legend: e.value.style.chart.legend.show ? Te.value : null,
70
+ source: Pe.value,
71
+ noTitle: Ae.value,
72
+ padding: Xe.value
73
+ });
74
+ requestAnimationFrame(() => {
75
+ n.value.width = s, n.value.height = t;
76
+ });
77
+ });
78
+ E.value && (ee.value && E.value.unobserve(ee.value), E.value.disconnect()), E.value = new ResizeObserver(l), ee.value = ne.value.parentNode, E.value.observe(ee.value);
79
+ }
80
+ }
81
+ const h = _(Bt()), _t = _(null), de = _(!1), pe = _(""), O = _(null), Oe = _(0);
82
+ function Me() {
83
+ const l = it({
84
+ userConfig: z.config,
85
+ defaultConfig: wt
86
+ });
87
+ return l.theme ? {
88
+ ...it({
89
+ userConfig: qt.vue_ui_donut[l.theme] || z.config,
90
+ defaultConfig: l
91
+ }),
92
+ customPalette: Ht[l.theme] || Z
93
+ } : l;
94
+ }
95
+ const e = f({
96
+ get: () => Me(),
97
+ set: (l) => l
98
+ }), T = _(!0), B = W([]);
99
+ function xt(l, s = 1e3, t = 50) {
100
+ return new Promise((a) => {
101
+ const v = l.length;
102
+ B.value = Array(v).fill(0);
103
+ let m = 0;
104
+ l.forEach((k, $) => {
105
+ setTimeout(() => {
106
+ const R = performance.now();
107
+ function I(ie) {
108
+ const fe = Math.min((ie - R) / s, 1), Mt = rt(fe);
109
+ B.value[$] = k * Mt, B.value = [...B.value], fe < 1 ? requestAnimationFrame(I) : (B.value[$] = k, B.value = [...B.value], m += 1, m === v && a());
110
+ }
111
+ requestAnimationFrame(I);
112
+ }, $ * t);
113
+ });
114
+ });
115
+ }
116
+ tt(async () => {
117
+ const l = z.dataset.map((s) => s.values.reduce((t, a) => t + a, 0));
118
+ e.value.startAnimation.show && await xt(
119
+ l,
120
+ e.value.startAnimation.durationMs,
121
+ e.value.startAnimation.staggerMs
122
+ ), T.value = !1;
123
+ });
124
+ const { userOptionsVisible: ge, setUserOptionsVisibility: Ne, keepUserOptionState: Ye } = ll({ config: e.value }), { svgRef: me } = al({ config: e.value.style.chart.title });
125
+ function $t() {
126
+ Ne(!0);
127
+ }
128
+ function Ct() {
129
+ Ne(!1);
130
+ }
131
+ lt(() => z.config, (l) => {
132
+ e.value = Me(), ge.value = !e.value.userOptions.showOnChartHover, ze(), Se.value += 1, Fe.value += 1, Le.value += 1, d.value.dataLabels.show = e.value.style.chart.layout.labels.dataLabels.show, d.value.showTable = e.value.table.show, d.value.showTooltip = e.value.style.chart.tooltip.show;
133
+ }, { deep: !0 });
134
+ const Xe = f(() => {
135
+ const { top: l, right: s, bottom: t, left: a } = e.value.style.chart.padding;
136
+ return {
137
+ css: `padding:${l}px ${s}px ${t}px ${a}px`,
138
+ top: l,
139
+ right: s,
140
+ bottom: t,
141
+ left: a
142
+ };
143
+ }), { isPrinting: Ie, isImaging: De, generatePdf: Ve, generateImage: Be } = tl({
144
+ elementId: `donut__${h.value}`,
145
+ fileName: e.value.style.chart.title.text || "vue-ui-donut",
146
+ options: e.value.userOptions.print
147
+ }), Tt = f(() => e.value.userOptions.show && !e.value.style.chart.title.text), Ge = f(() => Gt(e.value.customPalette)), d = _({
148
+ dataLabels: {
149
+ show: e.value.style.chart.layout.labels.dataLabels.show
150
+ },
151
+ showTable: e.value.table.show,
152
+ showTooltip: e.value.style.chart.tooltip.show
153
+ }), n = _({
154
+ height: 360,
155
+ width: 512
156
+ }), te = f(() => {
157
+ const l = e.value.style.chart.layout.donut.strokeWidth / 512, s = Math.min(n.value.width, n.value.height) * l, t = s > x.value ? x.value : s;
158
+ return Math.max(t, 3);
159
+ }), Re = ct, G = f(() => z.dataset.map((l, s) => ({
160
+ name: l.name,
161
+ color: nt(l.color) || Ge.value[s] || Z[s] || Z[s % Z.length],
162
+ value: l.values.reduce((t, a) => t + a, 0),
163
+ absoluteValues: l.values,
164
+ comment: l.comment || "",
165
+ patternIndex: s,
166
+ seriesIndex: s,
167
+ ghost: !1,
168
+ pattern: `pattern_${h.value}_${s}`
169
+ }))), M = W(G.value);
170
+ lt(() => G.value, (l) => M.value = l);
171
+ function Pt() {
172
+ return G.value.map((l) => ({
173
+ name: l.name,
174
+ color: l.color,
175
+ value: l.value
176
+ }));
177
+ }
178
+ const V = _([]), J = _(!1);
179
+ function We({ from: l, to: s, duration: t, onUpdate: a, onDone: v, easing: m = rt }) {
180
+ const k = performance.now();
181
+ function $(R) {
182
+ const I = Math.min((R - k) / t, 1), ie = m(I), fe = l + (s - l) * ie;
183
+ a(fe, I), I < 1 ? requestAnimationFrame($) : (a(s, 1), v && v());
184
+ }
185
+ requestAnimationFrame($);
186
+ }
187
+ function Ee(l) {
188
+ const s = G.value.find((v, m) => m === l);
189
+ let a = M.value.find((v, m) => m === l).value;
190
+ if (V.value.includes(l)) {
191
+ let m = function() {
192
+ M.value = M.value.map(
193
+ ($, R) => l === R ? { ...$, value: v } : $
194
+ );
195
+ }, k = function() {
196
+ J.value = !0, We({
197
+ from: a,
198
+ to: v,
199
+ duration: e.value.serieToggleAnimation.durationMs,
200
+ onUpdate: ($, R) => {
201
+ M.value = M.value.map(
202
+ (I, ie) => l === ie ? { ...I, value: $ } : I
203
+ );
204
+ },
205
+ onDone: () => {
206
+ m(), J.value = !1;
207
+ }
208
+ });
209
+ };
210
+ V.value = V.value.filter(($) => $ !== l);
211
+ const v = s.value;
212
+ e.value.serieToggleAnimation.show && e.value.type === "classic" ? k() : m();
213
+ } else if (V.value.length < G.value.length - 1) {
214
+ let v = function() {
215
+ V.value.push(l), M.value = M.value.map(
216
+ (k, $) => l === $ ? { ...k, value: 0 } : k
217
+ );
218
+ }, m = function() {
219
+ J.value = !0, We({
220
+ from: a,
221
+ to: 0,
222
+ duration: e.value.serieToggleAnimation.durationMs,
223
+ onUpdate: (k, $) => {
224
+ M.value = M.value.map(
225
+ (R, I) => l === I ? { ...R, value: k } : R
226
+ );
227
+ },
228
+ onDone: () => {
229
+ v(), J.value = !1;
230
+ }
231
+ });
232
+ };
233
+ e.value.serieToggleAnimation.show && e.value.type === "classic" ? m() : v();
234
+ }
235
+ Re("selectLegend", U.value.map((v) => ({
236
+ name: v.name,
237
+ color: v.color,
238
+ value: v.value
239
+ })));
240
+ }
241
+ const At = f(() => z.dataset.reduce((l, s) => l + s.values.reduce((t, a) => t + a, 0), 0)), U = f(() => {
242
+ if (T.value) {
243
+ const l = B.value.map((t, a) => ({
244
+ ...G.value[a],
245
+ value: t,
246
+ color: G.value[a].color,
247
+ ghost: !1
248
+ })), s = At.value - B.value.reduce((t, a) => t + a, 0);
249
+ return s > 0 && l.push({
250
+ name: "__ghost__",
251
+ value: s,
252
+ color: "transparent",
253
+ ghost: !0
254
+ }), l;
255
+ } else
256
+ return M.value.forEach((l, s) => {
257
+ if ([null, void 0].includes(l.values))
258
+ return {
259
+ ...l,
260
+ values: []
261
+ };
262
+ }), M.value.map((l, s) => ({
263
+ ...l,
264
+ seriesIndex: s
265
+ })).filter((l, s) => !V.value.includes(s));
266
+ }), Ue = f(() => z.dataset.map((l, s) => ({
267
+ name: l.name,
268
+ color: nt(l.color) || Ge.value[s] || Z[s] || Z[s % Z.length],
269
+ value: (l.values || []).reduce((t, a) => t + a, 0),
270
+ shape: "circle",
271
+ patternIndex: s
272
+ })).map((l, s) => ({
273
+ ...l,
274
+ proportion: l.value / z.dataset.map((t) => (t.values || []).reduce((a, v) => a + v, 0)).reduce((t, a) => t + a, 0),
275
+ opacity: V.value.includes(s) ? 0.5 : 1,
276
+ segregate: () => !J.value && Ee(s),
277
+ isSegregated: V.value.includes(s)
278
+ }))), St = f(() => ({
279
+ cy: "donut-div-legend",
280
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
281
+ color: e.value.style.chart.legend.color,
282
+ fontSize: e.value.style.chart.legend.fontSize,
283
+ paddingBottom: 12,
284
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
285
+ })), x = f(() => {
286
+ const l = Math.min(n.value.width / 3, n.value.height / 3);
287
+ return l < 55 ? 55 : l;
288
+ }), A = f(() => Rt({ series: U.value }, n.value.width / 2, n.value.height / 2, x.value, x.value, 1.99999, 2, 1, 360, 105.25, te.value)), Y = f(() => A.value.filter((l) => !l.ghost)), c = f(() => {
289
+ const l = Math.max(...U.value.map((t) => t.value)), s = U.value.map((t) => t.value / l);
290
+ return Wt({
291
+ series: s,
292
+ center: {
293
+ x: n.value.width / 2,
294
+ y: n.value.height / 2
295
+ },
296
+ maxRadius: Math.min(n.value.width, n.value.height) / 3,
297
+ hasGhost: T.value
298
+ });
299
+ });
300
+ function le(l) {
301
+ return l.x > n.value.width / 2 + 6 ? "start" : l.x < n.value.width / 2 - 6 ? "end" : "middle";
302
+ }
303
+ function Ft(l) {
304
+ return l.middlePoint.y > n.value.height / 2 ? L({ initX: l.middlePoint.x, initY: l.middlePoint.y, offset: 100, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y : L({ initX: l.middlePoint.x, initY: l.middlePoint.y, offset: 0, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y - 100;
305
+ }
306
+ function X(l) {
307
+ return l.proportion * 100 > e.value.style.chart.layout.labels.dataLabels.hideUnderValue;
308
+ }
309
+ function be(l, s) {
310
+ const t = l.value / Lt(s);
311
+ return isNaN(t) ? 0 : D(
312
+ e.value.style.chart.layout.labels.percentage.formatter,
313
+ t * 100,
314
+ N({
315
+ v: t * 100,
316
+ s: "%",
317
+ r: e.value.style.chart.layout.labels.percentage.rounding
318
+ }),
319
+ { datapoint: l }
320
+ );
321
+ }
322
+ function Lt(l) {
323
+ return [...l].map((s) => s.value).reduce((s, t) => s + t, 0);
324
+ }
325
+ const S = f(() => U.value.map((l) => l.value).reduce((l, s) => l + s, 0)), je = f(() => S.value / U.value.length), He = f(() => (l) => J.value ? l.proportion * 100 : l.value / S.value * 100), we = _(null), re = _(!1);
326
+ function qe({ datapoint: l, relativeIndex: s, seriesIndex: t, show: a = !1 }) {
327
+ we.value = { datapoint: l, seriesIndex: t, config: e.value, series: G.value }, de.value = a, O.value = s;
328
+ let v = "";
329
+ const m = e.value.style.chart.tooltip.customFormat;
330
+ if (re.value = !1, Qt(m))
331
+ try {
332
+ const k = m({
333
+ seriesIndex: t,
334
+ datapoint: l,
335
+ series: G.value,
336
+ config: e.value
337
+ });
338
+ typeof k == "string" && (pe.value = k, re.value = !0);
339
+ } catch {
340
+ console.warn("Custom format cannot be applied."), re.value = !1;
341
+ }
342
+ if (!re.value) {
343
+ if (v += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${l.name}</div>`, v += `<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="${l.color}"/>${kt.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${h.value}_${t})"/>` : ""}</svg>`, e.value.style.chart.tooltip.showValue && (v += `<b>${D(
344
+ e.value.style.chart.layout.labels.value.formatter,
345
+ l.value,
346
+ N({
347
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
348
+ v: l.value,
349
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
350
+ r: e.value.style.chart.tooltip.roundingValue
351
+ }),
352
+ {
353
+ datapoint: l,
354
+ relativeIndex: s,
355
+ seriesIndex: t
356
+ }
357
+ )}</b>`), e.value.style.chart.tooltip.showPercentage) {
358
+ const k = D(
359
+ e.value.style.chart.layout.labels.percentage.formatter,
360
+ l.proportion * 100,
361
+ N({
362
+ v: l.proportion * 100,
363
+ s: "%",
364
+ r: e.value.style.chart.tooltip.roundingPercentage
365
+ }),
366
+ {
367
+ datapoint: l,
368
+ relativeIndex: s,
369
+ seriesIndex: t
370
+ }
371
+ );
372
+ e.value.style.chart.tooltip.showValue ? v += `<span>(${k})</span></div>` : v += `<b>${k}</b></div>`;
373
+ }
374
+ e.value.style.chart.comments.showInTooltip && l.comment && (v += `<div class="vue-data-ui-tooltip-comment" style="background:${l.color}20; padding: 6px; margin-bottom: 6px; margin-top:6px; border-left: 1px solid ${l.color}">${l.comment}</div>`), pe.value = `<div>${v}</div>`;
375
+ }
376
+ }
377
+ function K(l) {
378
+ return e.value.useBlurOnHover && ![null, void 0].includes(O.value) && O.value !== l ? `url(#blur_${h.value})` : "";
379
+ }
380
+ const j = f(() => {
381
+ const l = U.value.map((t) => ({
382
+ name: t.name,
383
+ color: t.color
384
+ })), s = U.value.map((t) => t.value);
385
+ return { head: l, body: s };
386
+ });
387
+ function Je() {
388
+ Xt(() => {
389
+ const l = j.value.head.map((a, v) => [[
390
+ a.name
391
+ ], [j.value.body[v]], [isNaN(j.value.body[v] / S.value) ? "-" : j.value.body[v] / S.value * 100]]), s = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(l), t = Jt(s);
392
+ Kt({ csvContent: t, title: e.value.style.chart.title.text || "vue-ui-donut" });
393
+ });
394
+ }
395
+ const he = f(() => {
396
+ const l = [
397
+ ' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>',
398
+ N({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: S.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
399
+ "100%"
400
+ ], s = j.value.head.map((v, m) => [
401
+ {
402
+ color: v.color,
403
+ name: v.name
404
+ },
405
+ j.value.body[m],
406
+ isNaN(j.value.body[m] / S.value) ? "-" : (j.value.body[m] / S.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
407
+ ]), t = {
408
+ th: {
409
+ backgroundColor: e.value.table.th.backgroundColor,
410
+ color: e.value.table.th.color,
411
+ outline: e.value.table.th.outline
412
+ },
413
+ td: {
414
+ backgroundColor: e.value.table.td.backgroundColor,
415
+ color: e.value.table.td.color,
416
+ outline: e.value.table.td.outline
417
+ },
418
+ breakpoint: e.value.table.responsiveBreakpoint
419
+ };
420
+ return {
421
+ colNames: [
422
+ e.value.table.columnNames.series,
423
+ e.value.table.columnNames.value,
424
+ e.value.table.columnNames.percentage
425
+ ],
426
+ head: l,
427
+ body: s,
428
+ config: t
429
+ };
430
+ }), ae = _(!1);
431
+ function zt(l) {
432
+ ae.value = l, Oe.value += 1;
433
+ }
434
+ const Ke = f(() => /^((?!chrome|android).)*safari/i.test(navigator.userAgent));
435
+ function Ot(l) {
436
+ return l.toFixed(e.value.style.chart.legend.roundingPercentage).split("").map((s) => "-").join("");
437
+ }
438
+ function H(l, s) {
439
+ Re("selectDatapoint", { datapoint: l, index: s });
440
+ }
441
+ function Qe() {
442
+ d.value.showTable = !d.value.showTable;
443
+ }
444
+ function Ze() {
445
+ d.value.dataLabels.show = !d.value.dataLabels.show;
446
+ }
447
+ function et() {
448
+ d.value.showTooltip = !d.value.showTooltip;
449
+ }
450
+ const ye = _(!1);
451
+ function ke() {
452
+ ye.value = !ye.value;
453
+ }
454
+ return vt({
455
+ getData: Pt,
456
+ generatePdf: Ve,
457
+ generateCsv: Je,
458
+ generateImage: Be,
459
+ toggleTable: Qe,
460
+ toggleLabels: Ze,
461
+ toggleTooltip: et,
462
+ toggleAnnotator: ke
463
+ }), (l, s) => (o(), r("div", {
464
+ ref_key: "donutChart",
465
+ ref: ne,
466
+ class: _e(`vue-ui-donut ${ae.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
467
+ style: b(`font-family:${e.value.style.fontFamily};width:100%; ${e.value.responsive ? "height:100%;" : ""} text-align:center;background:${e.value.style.chart.backgroundColor}`),
468
+ id: `donut__${h.value}`,
469
+ onMouseenter: $t,
470
+ onMouseleave: Ct
471
+ }, [
472
+ e.value.userOptions.buttons.annotator && u(me) ? (o(), Q(u(ft), {
473
+ key: 0,
474
+ color: e.value.style.chart.color,
475
+ backgroundColor: e.value.style.chart.backgroundColor,
476
+ active: ye.value,
477
+ svgRef: u(me),
478
+ onClose: ke
479
+ }, null, 8, ["color", "backgroundColor", "active", "svgRef"])) : i("", !0),
480
+ p(l.$slots, "userConfig", {}, void 0, !0),
481
+ Tt.value ? (o(), r("div", {
482
+ key: 1,
483
+ ref_key: "noTitle",
484
+ ref: Ae,
485
+ class: "vue-data-ui-no-title-space",
486
+ style: "height:36px; width: 100%;background:transparent"
487
+ }, null, 512)) : i("", !0),
488
+ e.value.style.chart.title.text ? (o(), r("div", {
489
+ key: 2,
490
+ ref_key: "chartTitle",
491
+ ref: Ce,
492
+ style: "width:100%;background:transparent;padding-bottom:24px"
493
+ }, [
494
+ (o(), Q(sl, {
495
+ key: `title_${Se.value}`,
496
+ config: {
497
+ title: {
498
+ cy: "donut-div-title",
499
+ ...e.value.style.chart.title
500
+ },
501
+ subtitle: {
502
+ cy: "donut-div-subtitle",
503
+ ...e.value.style.chart.title.subtitle
504
+ }
505
+ }
506
+ }, null, 8, ["config"]))
507
+ ], 512)) : i("", !0),
508
+ e.value.userOptions.show && ue.value && (u(Ye) || u(ge)) ? (o(), Q(u(bt), {
509
+ ref_key: "details",
510
+ ref: _t,
511
+ key: `user_option_${Oe.value}`,
512
+ backgroundColor: e.value.style.chart.backgroundColor,
513
+ color: e.value.style.chart.color,
514
+ isPrinting: u(Ie),
515
+ isImaging: u(De),
516
+ uid: h.value,
517
+ hasTooltip: e.value.style.chart.tooltip.show && e.value.userOptions.buttons.tooltip,
518
+ hasPdf: e.value.userOptions.buttons.pdf,
519
+ hasImg: e.value.userOptions.buttons.img,
520
+ hasXls: e.value.userOptions.buttons.csv,
521
+ hasTable: e.value.userOptions.buttons.table,
522
+ hasLabel: e.value.userOptions.buttons.labels,
523
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
524
+ isFullscreen: ae.value,
525
+ chartElement: ne.value,
526
+ position: e.value.userOptions.position,
527
+ isTooltip: d.value.showTooltip,
528
+ titles: { ...e.value.userOptions.buttonTitles },
529
+ hasAnnotator: e.value.userOptions.buttons.annotator,
530
+ isAnnotation: ye.value,
531
+ onToggleFullscreen: zt,
532
+ onGeneratePdf: u(Ve),
533
+ onGenerateCsv: Je,
534
+ onGenerateImage: u(Be),
535
+ onToggleTable: Qe,
536
+ onToggleLabels: Ze,
537
+ onToggleTooltip: et,
538
+ onToggleAnnotator: ke,
539
+ style: b({
540
+ visibility: u(Ye) ? u(ge) ? "visible" : "hidden" : "visible"
541
+ })
542
+ }, at({ _: 2 }, [
543
+ l.$slots.menuIcon ? {
544
+ name: "menuIcon",
545
+ fn: C(({ isOpen: t, color: a }) => [
546
+ p(l.$slots, "menuIcon", oe(se({ isOpen: t, color: a })), void 0, !0)
547
+ ]),
548
+ key: "0"
549
+ } : void 0,
550
+ l.$slots.optionTooltip ? {
551
+ name: "optionTooltip",
552
+ fn: C(() => [
553
+ p(l.$slots, "optionTooltip", {}, void 0, !0)
554
+ ]),
555
+ key: "1"
556
+ } : void 0,
557
+ l.$slots.optionPdf ? {
558
+ name: "optionPdf",
559
+ fn: C(() => [
560
+ p(l.$slots, "optionPdf", {}, void 0, !0)
561
+ ]),
562
+ key: "2"
563
+ } : void 0,
564
+ l.$slots.optionCsv ? {
565
+ name: "optionCsv",
566
+ fn: C(() => [
567
+ p(l.$slots, "optionCsv", {}, void 0, !0)
568
+ ]),
569
+ key: "3"
570
+ } : void 0,
571
+ l.$slots.optionImg ? {
572
+ name: "optionImg",
573
+ fn: C(() => [
574
+ p(l.$slots, "optionImg", {}, void 0, !0)
575
+ ]),
576
+ key: "4"
577
+ } : void 0,
578
+ l.$slots.optionTable ? {
579
+ name: "optionTable",
580
+ fn: C(() => [
581
+ p(l.$slots, "optionTable", {}, void 0, !0)
582
+ ]),
583
+ key: "5"
584
+ } : void 0,
585
+ l.$slots.optionLabels ? {
586
+ name: "optionLabels",
587
+ fn: C(() => [
588
+ p(l.$slots, "optionLabels", {}, void 0, !0)
589
+ ]),
590
+ key: "6"
591
+ } : void 0,
592
+ l.$slots.optionFullscreen ? {
593
+ name: "optionFullscreen",
594
+ fn: C(({ toggleFullscreen: t, isFullscreen: a }) => [
595
+ p(l.$slots, "optionFullscreen", oe(se({ toggleFullscreen: t, isFullscreen: a })), void 0, !0)
596
+ ]),
597
+ key: "7"
598
+ } : void 0,
599
+ l.$slots.optionAnnotator ? {
600
+ name: "optionAnnotator",
601
+ fn: C(({ toggleAnnotator: t, isAnnotator: a }) => [
602
+ p(l.$slots, "optionAnnotator", oe(se({ toggleAnnotator: t, isAnnotator: a })), void 0, !0)
603
+ ]),
604
+ key: "8"
605
+ } : void 0
606
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasImg", "hasXls", "hasTable", "hasLabel", "hasFullscreen", "isFullscreen", "chartElement", "position", "isTooltip", "titles", "hasAnnotator", "isAnnotation", "onGeneratePdf", "onGenerateImage", "style"])) : i("", !0),
607
+ ue.value ? (o(), r("svg", {
608
+ key: 4,
609
+ ref_key: "svgRef",
610
+ ref: me,
611
+ xmlns: u(Et),
612
+ class: _e({ "vue-data-ui-fullscreen--on": ae.value, "vue-data-ui-fulscreen--off": !ae.value }),
613
+ viewBox: `0 0 ${n.value.width <= 0 ? 10 : n.value.width} ${n.value.height <= 0 ? 10 : n.value.height}`,
614
+ style: b(`max-width:100%; overflow: visible; background:transparent;color:${e.value.style.chart.color};${Xe.value.css}`)
615
+ }, [
616
+ xe(u(yt)),
617
+ l.$slots["chart-background"] ? (o(), r("foreignObject", {
618
+ key: 0,
619
+ x: 0,
620
+ y: 0,
621
+ width: n.value.width <= 0 ? 10 : n.value.width,
622
+ height: n.value.height <= 0 ? 10 : n.value.height,
623
+ style: {
624
+ pointerEvents: "none"
625
+ }
626
+ }, [
627
+ p(l.$slots, "chart-background", {}, void 0, !0)
628
+ ], 8, il)) : i("", !0),
629
+ e.value.type === "classic" && !isNaN(te.value / x.value) ? (o(), r("defs", vl, [
630
+ e.value.style.chart.useGradient ? (o(), r("radialGradient", {
631
+ key: 0,
632
+ id: `gradient_${h.value}`
633
+ }, [
634
+ y("stop", {
635
+ offset: "0%",
636
+ "stop-color": u(ve)(e.value.style.chart.backgroundColor, 0),
637
+ "stop-opacity": "0"
638
+ }, null, 8, dl),
639
+ y("stop", {
640
+ offset: `${(1 - te.value / x.value) * 100}%`,
641
+ "stop-color": u(ve)("#FFFFFF", 0),
642
+ "stop-opacity": "0"
643
+ }, null, 8, hl),
644
+ y("stop", {
645
+ offset: `${(1 - te.value / x.value / 2) * 100}%`,
646
+ "stop-color": u(ve)("#FFFFFF", e.value.style.chart.gradientIntensity)
647
+ }, null, 8, yl),
648
+ y("stop", {
649
+ offset: "100%",
650
+ "stop-color": u(ve)(e.value.style.chart.backgroundColor, 0),
651
+ "stop-opacity": "0"
652
+ }, null, 8, fl)
653
+ ], 8, cl)) : i("", !0)
654
+ ])) : i("", !0),
655
+ e.value.type === "polar" ? (o(), r("defs", pl, [
656
+ (o(!0), r(g, null, F(c.value, (t, a) => (o(), r("radialGradient", {
657
+ id: `polar_gradient_${a}_${h.value}`,
658
+ cx: (isNaN(t.middlePoint.x / n.value.width * 100) ? 0 : t.middlePoint.x / n.value.width * 100) + "%",
659
+ cy: (isNaN(t.middlePoint.y / n.value.height * 100) ? 0 : t.middlePoint.y / n.value.height * 100) + "%",
660
+ r: "62%"
661
+ }, [
662
+ y("stop", {
663
+ offset: "0%",
664
+ "stop-color": u(Ut)(A.value[a].color, 0.05),
665
+ "stop-opacity": e.value.style.chart.gradientIntensity / 100
666
+ }, null, 8, ml),
667
+ y("stop", {
668
+ offset: "100%",
669
+ "stop-color": A.value[a].color
670
+ }, null, 8, bl)
671
+ ], 8, gl))), 256))
672
+ ])) : i("", !0),
673
+ y("defs", null, [
674
+ y("filter", {
675
+ id: `blur_${h.value}`,
676
+ x: "-50%",
677
+ y: "-50%",
678
+ width: "200%",
679
+ height: "200%"
680
+ }, [
681
+ y("feGaussianBlur", {
682
+ in: "SourceGraphic",
683
+ stdDeviation: 2,
684
+ id: `blur_std_${h.value}`
685
+ }, null, 8, kl),
686
+ s[6] || (s[6] = y("feColorMatrix", {
687
+ type: "saturate",
688
+ values: "0"
689
+ }, null, -1))
690
+ ], 8, wl),
691
+ y("filter", {
692
+ id: `shadow_${h.value}`,
693
+ "color-interpolation-filters": "sRGB"
694
+ }, [
695
+ y("feDropShadow", {
696
+ dx: "0",
697
+ dy: "0",
698
+ stdDeviation: "10",
699
+ "flood-opacity": "0.5",
700
+ "flood-color": e.value.style.chart.layout.donut.shadowColor
701
+ }, null, 8, xl)
702
+ ], 8, _l),
703
+ y("filter", {
704
+ id: `drop_shadow_${h.value}`,
705
+ "color-interpolation-filters": "sRGB",
706
+ x: "-50%",
707
+ y: "-50%",
708
+ width: "200%",
709
+ height: "200%"
710
+ }, [
711
+ y("feDropShadow", {
712
+ dx: "0",
713
+ dy: "0",
714
+ stdDeviation: "3",
715
+ "flood-opacity": "1",
716
+ "flood-color": e.value.style.chart.layout.donut.shadowColor
717
+ }, null, 8, Cl)
718
+ ], 8, $l)
719
+ ]),
720
+ e.value.type === "classic" ? (o(!0), r(g, { key: 3 }, F(A.value.filter((t) => !t.ghost), (t, a) => (o(), r("g", null, [
721
+ X(t) && d.value.dataLabels.show ? (o(), r("path", {
722
+ key: 0,
723
+ d: u(jt)(t, { x: n.value.width / 2, y: n.value.height / 2 }, 16, 16, !1, !1, te.value, 12, e.value.style.chart.layout.curvedMarkers),
724
+ stroke: t.color,
725
+ "stroke-width": "1",
726
+ "stroke-linecap": "round",
727
+ "stroke-linejoin": "round",
728
+ fill: "none",
729
+ filter: K(a)
730
+ }, null, 8, Tl)) : i("", !0)
731
+ ]))), 256)) : i("", !0),
732
+ e.value.type === "polar" ? (o(!0), r(g, { key: 4 }, F(A.value.filter((t) => !t.ghost), (t, a) => (o(), r("g", null, [
733
+ X(t) && d.value.dataLabels.show ? (o(), r("path", {
734
+ key: 0,
735
+ d: `M ${u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 24, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x},${u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 24, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y} ${c.value[a].middlePoint.x},${c.value[a].middlePoint.y}`,
736
+ stroke: t.color,
737
+ "stroke-width": "1",
738
+ "stroke-linecap": "round",
739
+ "stroke-linejoin": "round",
740
+ fill: "none",
741
+ filter: K(a),
742
+ style: b({
743
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
744
+ })
745
+ }, null, 12, Pl)) : i("", !0)
746
+ ]))), 256)) : i("", !0),
747
+ e.value.type === "classic" && e.value.style.chart.layout.donut.useShadow ? (o(), r("circle", {
748
+ key: 5,
749
+ cx: n.value.width / 2,
750
+ cy: n.value.height / 2,
751
+ r: x.value <= 0 ? 10 : x.value,
752
+ fill: e.value.style.chart.backgroundColor,
753
+ filter: `url(#shadow_${h.value})`
754
+ }, null, 8, Al)) : i("", !0),
755
+ l.$slots.pattern ? (o(), r("g", Sl, [
756
+ (o(!0), r(g, null, F($e.dataset, (t, a) => (o(), r("defs", {
757
+ key: `pattern-${t.patternIndex}`
758
+ }, [
759
+ p(l.$slots, "pattern", ot({ ref_for: !0 }, { seriesIndex: a, patternId: `pattern_${h.value}_${a}` }), void 0, !0)
760
+ ]))), 128))
761
+ ])) : i("", !0),
762
+ S.value && e.value.type === "classic" ? (o(), r(g, { key: 7 }, [
763
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
764
+ stroke: e.value.style.chart.backgroundColor,
765
+ d: t.arcSlice,
766
+ fill: "#FFFFFF"
767
+ }, null, 8, Fl))), 256)),
768
+ l.$slots.pattern ? (o(), r("g", Ll, [
769
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
770
+ class: "vue-ui-donut-arc-path",
771
+ d: t.arcSlice,
772
+ fill: `url(#${t.pattern})`,
773
+ stroke: e.value.style.chart.backgroundColor,
774
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
775
+ filter: K(a)
776
+ }, null, 8, zl))), 256))
777
+ ])) : i("", !0),
778
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
779
+ class: "vue-ui-donut-arc-path",
780
+ d: t.arcSlice,
781
+ fill: u(ve)(t.color, 80),
782
+ stroke: e.value.style.chart.backgroundColor,
783
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
784
+ filter: K(a)
785
+ }, null, 8, Ol))), 256))
786
+ ], 64)) : i("", !0),
787
+ S.value && e.value.type === "polar" ? (o(), r(g, { key: 8 }, [
788
+ A.value.length > 1 ? (o(), r("g", Ml, [
789
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
790
+ stroke: e.value.style.chart.backgroundColor,
791
+ d: c.value[a].path,
792
+ fill: "#FFFFFF",
793
+ style: b({
794
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
795
+ })
796
+ }, null, 12, Nl))), 256)),
797
+ e.value.style.chart.layout.donut.useShadow ? (o(), r("g", Yl, [
798
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
799
+ class: "vue-ui-donut-arc-path",
800
+ d: c.value[a].path,
801
+ fill: "transparent",
802
+ stroke: e.value.style.chart.backgroundColor,
803
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
804
+ filter: `url(#drop_shadow_${h.value})`,
805
+ style: b({
806
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
807
+ })
808
+ }, null, 12, Xl))), 256))
809
+ ])) : i("", !0),
810
+ l.$slots.pattern ? (o(), r("g", Il, [
811
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
812
+ class: "vue-ui-donut-arc-path",
813
+ d: c.value[a].path,
814
+ fill: `url(#${t.pattern})`,
815
+ stroke: e.value.style.chart.backgroundColor,
816
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
817
+ filter: K(a),
818
+ style: b({
819
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
820
+ })
821
+ }, null, 12, Dl))), 256))
822
+ ])) : i("", !0),
823
+ (o(!0), r(g, null, F(Y.value, (t, a) => (o(), r("path", {
824
+ class: "vue-ui-donut-arc-path",
825
+ d: c.value[a].path,
826
+ fill: e.value.style.chart.useGradient ? `url(#polar_gradient_${a}_${h.value})` : t.color,
827
+ stroke: e.value.style.chart.backgroundColor,
828
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth,
829
+ filter: K(a),
830
+ style: b({
831
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
832
+ })
833
+ }, null, 12, Vl))), 256))
834
+ ])) : (o(), r("g", Bl, [
835
+ l.$slots.pattern ? (o(), r("circle", {
836
+ key: 0,
837
+ cx: n.value.width / 2,
838
+ cy: n.value.height / 2,
839
+ r: x.value,
840
+ fill: `url(#pattern_${h.value}_${A.value[0].patternIndex})`,
841
+ stroke: e.value.style.chart.backgroundColor,
842
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth
843
+ }, null, 8, Gl)) : i("", !0),
844
+ y("circle", {
845
+ cx: n.value.width / 2,
846
+ cy: n.value.height / 2,
847
+ r: x.value,
848
+ fill: e.value.style.chart.useGradient ? `url(#polar_gradient_0_${h.value})` : A.value[0].color,
849
+ stroke: e.value.style.chart.backgroundColor,
850
+ "stroke-width": e.value.style.chart.layout.donut.borderWidth
851
+ }, null, 8, Rl)
852
+ ]))
853
+ ], 64)) : (o(), r("circle", {
854
+ key: 9,
855
+ cx: n.value.width / 2,
856
+ cy: n.value.height / 2,
857
+ r: x.value <= 0 ? 10 : x.value,
858
+ fill: "transparent",
859
+ stroke: e.value.style.chart.backgroundColor
860
+ }, null, 8, Wl)),
861
+ e.value.style.chart.useGradient && e.value.type === "classic" ? (o(), r("circle", {
862
+ key: 10,
863
+ cx: n.value.width / 2,
864
+ cy: n.value.height / 2,
865
+ r: (
866
+ /* This might require adjustments */
867
+ x.value <= 0 ? 10 : x.value
868
+ ),
869
+ fill: `url(#gradient_${h.value})`
870
+ }, null, 8, El)) : i("", !0),
871
+ S.value ? (o(), r(g, { key: 11 }, [
872
+ A.value.length > 1 || e.value.type === "classic" ? (o(), r("g", Ul, [
873
+ (o(!0), r(g, null, F(A.value.filter((t) => !t.ghost), (t, a) => (o(), r("path", {
874
+ d: e.value.type === "classic" ? t.arcSlice : c.value[a].path,
875
+ fill: O.value === a ? "rgba(0,0,0,0.1)" : "transparent",
876
+ onMouseenter: (v) => qe({
877
+ datapoint: t,
878
+ relativeIndex: a,
879
+ seriesIndex: t.seriesIndex,
880
+ show: !0
881
+ }),
882
+ onMouseleave: s[0] || (s[0] = (v) => {
883
+ de.value = !1, O.value = null;
884
+ }),
885
+ onClick: (v) => H(t, a)
886
+ }, null, 40, jl))), 256))
887
+ ])) : (o(), r("g", Hl, [
888
+ y("circle", {
889
+ cx: n.value.width / 2,
890
+ cy: n.value.height / 2,
891
+ r: x.value,
892
+ fill: "transparent",
893
+ onMouseenter: s[1] || (s[1] = (t) => qe({
894
+ datapoint: A.value[0],
895
+ relativeIndex: 0,
896
+ seriesIndex: A.value[0].seriesIndex,
897
+ show: !0
898
+ })),
899
+ onMouseleave: s[2] || (s[2] = (t) => {
900
+ de.value = !1, O.value = null;
901
+ }),
902
+ onClick: s[3] || (s[3] = (t) => H(A.value[0], l.i))
903
+ }, null, 40, ql)
904
+ ]))
905
+ ], 64)) : i("", !0),
906
+ e.value.type === "classic" ? (o(), r(g, { key: 12 }, [
907
+ e.value.style.chart.layout.labels.hollow.total.show ? (o(), r("text", {
908
+ key: 0,
909
+ "text-anchor": "middle",
910
+ x: n.value.width / 2,
911
+ y: n.value.height / 2 - (e.value.style.chart.layout.labels.hollow.average.show ? e.value.style.chart.layout.labels.hollow.total.fontSize : 0) + e.value.style.chart.layout.labels.hollow.total.offsetY,
912
+ fill: e.value.style.chart.layout.labels.hollow.total.color,
913
+ "font-size": e.value.style.chart.layout.labels.hollow.total.fontSize,
914
+ style: b(`font-weight:${e.value.style.chart.layout.labels.hollow.total.bold ? "bold" : ""}`)
915
+ }, P(e.value.style.chart.layout.labels.hollow.total.text), 13, Jl)) : i("", !0),
916
+ e.value.style.chart.layout.labels.hollow.total.show ? (o(), r("text", {
917
+ key: 1,
918
+ "text-anchor": "middle",
919
+ x: n.value.width / 2,
920
+ y: n.value.height / 2 + e.value.style.chart.layout.labels.hollow.total.fontSize - (e.value.style.chart.layout.labels.hollow.average.show ? e.value.style.chart.layout.labels.hollow.total.fontSize : 0) + e.value.style.chart.layout.labels.hollow.total.value.offsetY,
921
+ fill: e.value.style.chart.layout.labels.hollow.total.value.color,
922
+ "font-size": e.value.style.chart.layout.labels.hollow.total.value.fontSize,
923
+ style: b(`font-weight:${e.value.style.chart.layout.labels.hollow.total.value.bold ? "bold" : ""}`)
924
+ }, P(u(D)(
925
+ e.value.style.chart.layout.labels.hollow.total.value.formatter,
926
+ S.value,
927
+ u(N)({
928
+ p: e.value.style.chart.layout.labels.hollow.total.value.prefix,
929
+ v: S.value,
930
+ s: e.value.style.chart.layout.labels.hollow.total.value.suffix
931
+ })
932
+ )), 13, Kl)) : i("", !0),
933
+ e.value.style.chart.layout.labels.hollow.average.show ? (o(), r("text", {
934
+ key: 2,
935
+ "text-anchor": "middle",
936
+ x: n.value.width / 2,
937
+ y: n.value.height / 2 + (e.value.style.chart.layout.labels.hollow.total.show ? e.value.style.chart.layout.labels.hollow.average.fontSize : 0) + e.value.style.chart.layout.labels.hollow.average.offsetY,
938
+ fill: e.value.style.chart.layout.labels.hollow.average.color,
939
+ "font-size": e.value.style.chart.layout.labels.hollow.average.fontSize,
940
+ style: b(`font-weight:${e.value.style.chart.layout.labels.hollow.average.bold ? "bold" : ""}`)
941
+ }, P(e.value.style.chart.layout.labels.hollow.average.text), 13, Ql)) : i("", !0),
942
+ e.value.style.chart.layout.labels.hollow.average.show ? (o(), r("text", {
943
+ key: 3,
944
+ "text-anchor": "middle",
945
+ x: n.value.width / 2,
946
+ y: n.value.height / 2 + (e.value.style.chart.layout.labels.hollow.total.show ? e.value.style.chart.layout.labels.hollow.average.fontSize : 0) + e.value.style.chart.layout.labels.hollow.average.fontSize + e.value.style.chart.layout.labels.hollow.average.value.offsetY,
947
+ fill: e.value.style.chart.layout.labels.hollow.average.value.color,
948
+ "font-size": e.value.style.chart.layout.labels.hollow.average.value.fontSize,
949
+ style: b(`font-weight:${e.value.style.chart.layout.labels.hollow.average.value.bold ? "bold" : ""}`)
950
+ }, P(J.value || T.value ? "--" : u(D)(
951
+ e.value.style.chart.layout.labels.hollow.average.value.formatter,
952
+ je.value,
953
+ u(N)({
954
+ p: e.value.style.chart.layout.labels.hollow.average.value.prefix,
955
+ v: je.value,
956
+ s: e.value.style.chart.layout.labels.hollow.average.value.suffix,
957
+ r: e.value.style.chart.layout.labels.hollow.average.value.rounding
958
+ })
959
+ )), 13, Zl)) : i("", !0)
960
+ ], 64)) : i("", !0),
961
+ (o(!0), r(g, null, F(Y.value.filter((t) => !t.ghost), (t, a) => (o(), r("g", {
962
+ filter: K(a),
963
+ class: _e({ animated: e.value.useCssAnimation })
964
+ }, [
965
+ e.value.style.chart.layout.labels.dataLabels.useLabelSlots ? (o(), r("g", ta, [
966
+ (o(), r("foreignObject", {
967
+ x: u(w)(t, !0).anchor === "end" ? u(w)(t).x - 120 : u(w)(t, !0).anchor === "middle" ? u(w)(t).x - 60 : u(w)(t).x,
968
+ y: u(ce)(t) - (Ke.value ? 20 : 0),
969
+ width: "120",
970
+ height: "60",
971
+ style: { overflow: "visible" }
972
+ }, [
973
+ y("div", null, [
974
+ p(l.$slots, "dataLabel", ot({ ref_for: !0 }, {
975
+ datapoint: t,
976
+ isBlur: !e.value.useBlurOnHover || [null, void 0].includes(O.value) || O.value === a,
977
+ isSafari: Ke.value,
978
+ isVisible: X(t) && d.value.dataLabels.show,
979
+ textAlign: u(w)(t, !0, 16, !0).anchor,
980
+ flexAlign: u(w)(t, !0, 16).anchor,
981
+ percentage: be(t, Y.value)
982
+ }), void 0, !0)
983
+ ])
984
+ ], 8, la))
985
+ ])) : (o(), r("g", aa, [
986
+ e.value.type === "classic" ? (o(), r(g, { key: 0 }, [
987
+ X(t) && d.value.dataLabels.show ? (o(), r("circle", {
988
+ key: 0,
989
+ cx: u(w)(t).x,
990
+ cy: u(ce)(t) - 3.5,
991
+ fill: t.color,
992
+ stroke: e.value.style.chart.backgroundColor,
993
+ "stroke-width": 1,
994
+ r: 3,
995
+ filter: !e.value.useBlurOnHover || [null, void 0].includes(O.value) || O.value === a ? "" : `url(#blur_${h.value})`,
996
+ onClick: (v) => H(t, a)
997
+ }, null, 8, oa)) : i("", !0)
998
+ ], 64)) : i("", !0),
999
+ e.value.type === "polar" ? (o(), r(g, { key: 1 }, [
1000
+ X(t) && d.value.dataLabels.show ? (o(), r("circle", {
1001
+ key: 0,
1002
+ cx: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 24, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x,
1003
+ cy: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 24, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y,
1004
+ fill: t.color,
1005
+ stroke: e.value.style.chart.backgroundColor,
1006
+ "stroke-width": 1,
1007
+ r: 3,
1008
+ filter: !e.value.useBlurOnHover || [null, void 0].includes(O.value) || O.value === a ? "" : `url(#blur_${h.value})`,
1009
+ onClick: (v) => H(t, a),
1010
+ style: b({
1011
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`
1012
+ })
1013
+ }, null, 12, sa)) : i("", !0)
1014
+ ], 64)) : i("", !0),
1015
+ e.value.type === "classic" ? (o(), r(g, { key: 2 }, [
1016
+ X(t) && d.value.dataLabels.show ? (o(), r("text", {
1017
+ key: 0,
1018
+ "text-anchor": u(w)(t, !0, 12).anchor,
1019
+ x: u(w)(t, !0, 12).x,
1020
+ y: u(ce)(t),
1021
+ fill: e.value.style.chart.layout.labels.percentage.color,
1022
+ "font-size": e.value.style.chart.layout.labels.percentage.fontSize,
1023
+ style: b(`font-weight:${e.value.style.chart.layout.labels.percentage.bold ? "bold" : ""}`),
1024
+ onClick: (v) => H(t, a)
1025
+ }, P(be(t, Y.value)) + " " + P(e.value.style.chart.layout.labels.value.show ? `(${u(D)(
1026
+ e.value.style.chart.layout.labels.value.formatter,
1027
+ t.value,
1028
+ u(N)({
1029
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1030
+ v: t.value,
1031
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1032
+ r: e.value.style.chart.layout.labels.value.rounding
1033
+ }),
1034
+ { datapoint: t }
1035
+ )})` : ""), 13, ua)) : i("", !0),
1036
+ X(t) && d.value.dataLabels.show ? (o(), r("text", {
1037
+ key: 1,
1038
+ "text-anchor": u(w)(t).anchor,
1039
+ x: u(w)(t, !0, 12).x,
1040
+ y: u(ce)(t) + e.value.style.chart.layout.labels.percentage.fontSize,
1041
+ fill: e.value.style.chart.layout.labels.name.color,
1042
+ "font-size": e.value.style.chart.layout.labels.name.fontSize,
1043
+ style: b(`font-weight:${e.value.style.chart.layout.labels.name.bold ? "bold" : ""}`),
1044
+ onClick: (v) => H(t, a)
1045
+ }, P(t.name), 13, na)) : i("", !0)
1046
+ ], 64)) : i("", !0),
1047
+ e.value.type === "polar" ? (o(), r(g, { key: 3 }, [
1048
+ X(t) && d.value.dataLabels.show ? (o(), r("text", {
1049
+ key: 0,
1050
+ "text-anchor": le(c.value[a].middlePoint),
1051
+ x: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x,
1052
+ y: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y,
1053
+ fill: e.value.style.chart.layout.labels.percentage.color,
1054
+ "font-size": e.value.style.chart.layout.labels.percentage.fontSize,
1055
+ style: b({
1056
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`,
1057
+ fontWeight: e.value.style.chart.layout.labels.percentage.bold ? "bold" : "normal"
1058
+ }),
1059
+ onClick: (v) => H(t, a)
1060
+ }, P(be(t, Y.value)) + " " + P(e.value.style.chart.layout.labels.value.show ? `(${u(D)(
1061
+ e.value.style.chart.layout.labels.value.formatter,
1062
+ t.value,
1063
+ u(N)({
1064
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1065
+ v: t.value,
1066
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1067
+ r: e.value.style.chart.layout.labels.value.rounding
1068
+ }),
1069
+ { datapoint: t }
1070
+ )})` : ""), 13, ra)) : i("", !0),
1071
+ X(t) && d.value.dataLabels.show ? (o(), r("text", {
1072
+ key: 1,
1073
+ "text-anchor": le(c.value[a].middlePoint),
1074
+ x: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x,
1075
+ y: u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).y + e.value.style.chart.layout.labels.percentage.fontSize,
1076
+ fill: e.value.style.chart.layout.labels.name.color,
1077
+ "font-size": e.value.style.chart.layout.labels.name.fontSize,
1078
+ style: b({
1079
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`,
1080
+ fontWeight: e.value.style.chart.layout.labels.name.bold ? "bold" : "normal"
1081
+ }),
1082
+ onClick: (v) => H(t, a)
1083
+ }, P(t.name), 13, ia)) : i("", !0)
1084
+ ], 64)) : i("", !0)
1085
+ ])),
1086
+ d.value.dataLabels.show && e.value.style.chart.comments.show && t.comment ? (o(), r("g", va, [
1087
+ X(t) && e.value.type === "classic" ? (o(), r("foreignObject", {
1088
+ key: 0,
1089
+ x: e.value.style.chart.comments.offsetX + (u(w)(t, !0).anchor === "end" ? u(w)(t).x - e.value.style.chart.comments.width : u(w)(t, !0).anchor === "middle" ? u(w)(t).x - e.value.style.chart.comments.width / 2 : u(w)(t).x),
1090
+ y: u(ce)(t) + 24 + e.value.style.chart.comments.offsetY,
1091
+ width: e.value.style.chart.comments.width,
1092
+ height: "200",
1093
+ style: { overflow: "visible", "pointer-events": "none" }
1094
+ }, [
1095
+ y("div", null, [
1096
+ p(l.$slots, "plot-comment", {
1097
+ plot: { ...t, textAlign: u(w)(t, !0, 16, !0).anchor, flexAlign: u(w)(t, !0, 16).anchor, isFirstLoad: T.value }
1098
+ }, void 0, !0)
1099
+ ])
1100
+ ], 8, ca)) : i("", !0),
1101
+ X(t) && e.value.type === "polar" ? (o(), r("foreignObject", {
1102
+ key: 1,
1103
+ x: e.value.style.chart.comments.offsetX + (le(c.value[a].middlePoint) === "end" ? u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x - e.value.style.chart.comments.width : le(c.value[a].middlePoint) === "middle" ? u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x - e.value.style.chart.comments.width / 2 : u(L)({ initX: c.value[a].middlePoint.x, initY: c.value[a].middlePoint.y, offset: 42, centerX: n.value.width / 2, centerY: n.value.height / 2 }).x),
1104
+ y: Ft(c.value[a]) + e.value.style.chart.comments.offsetY,
1105
+ width: e.value.style.chart.comments.width,
1106
+ height: "200",
1107
+ style: b({
1108
+ transition: T.value || !e.value.serieToggleAnimation.show ? "none" : `all ${e.value.serieToggleAnimation.durationMs}ms ease-in-out`,
1109
+ overflow: "visible",
1110
+ pointerEvents: "none"
1111
+ })
1112
+ }, [
1113
+ y("div", null, [
1114
+ p(l.$slots, "plot-comment", {
1115
+ plot: { ...t, textAlign: le(c.value[a].middlePoint), flexAlign: le(c.value[a].middlePoint), isFirstLoad: T.value }
1116
+ }, void 0, !0)
1117
+ ])
1118
+ ], 12, da)) : i("", !0)
1119
+ ])) : i("", !0)
1120
+ ], 10, ea))), 256)),
1121
+ p(l.$slots, "svg", { svg: n.value }, void 0, !0)
1122
+ ], 14, rl)) : i("", !0),
1123
+ l.$slots.watermark ? (o(), r("div", ha, [
1124
+ p(l.$slots, "watermark", oe(se({ isPrinting: u(Ie) || u(De) })), void 0, !0)
1125
+ ])) : i("", !0),
1126
+ ue.value ? i("", !0) : (o(), Q(u(gt), {
1127
+ key: 6,
1128
+ config: {
1129
+ type: "donut",
1130
+ style: {
1131
+ backgroundColor: e.value.style.chart.backgroundColor,
1132
+ donut: {
1133
+ color: "#CCCCCC",
1134
+ strokeWidth: te.value * 0.8
1135
+ }
1136
+ }
1137
+ }
1138
+ }, null, 8, ["config"])),
1139
+ y("div", {
1140
+ ref_key: "chartLegend",
1141
+ ref: Te
1142
+ }, [
1143
+ e.value.style.chart.legend.show ? (o(), Q(ol, {
1144
+ key: `legend_${Le.value}`,
1145
+ legendSet: Ue.value,
1146
+ config: St.value,
1147
+ onClickMarker: s[4] || (s[4] = ({ i: t }) => Ee(t))
1148
+ }, at({
1149
+ item: C(({ legend: t, index: a }) => [
1150
+ y("div", {
1151
+ style: b(`opacity:${V.value.includes(a) ? 0.5 : 1}`),
1152
+ onClick: (v) => t.segregate()
1153
+ }, [
1154
+ st(P(t.name) + ": " + P(u(D)(
1155
+ e.value.style.chart.layout.labels.value.formatter,
1156
+ t.value,
1157
+ u(N)({
1158
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1159
+ v: t.value,
1160
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1161
+ r: e.value.style.chart.legend.roundingValue
1162
+ }),
1163
+ {
1164
+ datapoint: t,
1165
+ index: a
1166
+ }
1167
+ )) + " ", 1),
1168
+ V.value.includes(a) ? (o(), r("span", pa, " ( " + P(Ot(t.proportion * 100)) + " % ) ", 1)) : (o(), r("span", fa, " (" + P(isNaN(t.value / S.value) ? "-" : u(D)(
1169
+ e.value.style.chart.layout.labels.percentage.formatter,
1170
+ He.value(t),
1171
+ u(N)({
1172
+ v: He.value(t),
1173
+ s: "%",
1174
+ r: e.value.style.chart.legend.roundingPercentage
1175
+ })
1176
+ )) + ") ", 1))
1177
+ ], 12, ya)
1178
+ ]),
1179
+ _: 2
1180
+ }, [
1181
+ l.$slots.pattern ? {
1182
+ name: "legend-pattern",
1183
+ fn: C(({ legend: t, index: a }) => [
1184
+ xe(u(pt), {
1185
+ shape: t.shape,
1186
+ radius: 30,
1187
+ stroke: "none",
1188
+ plot: { x: 30, y: 30 },
1189
+ fill: `url(#pattern_${h.value}_${a})`
1190
+ }, null, 8, ["shape", "fill"])
1191
+ ]),
1192
+ key: "0"
1193
+ } : void 0
1194
+ ]), 1032, ["legendSet", "config"])) : i("", !0),
1195
+ p(l.$slots, "legend", { legend: Ue.value }, void 0, !0)
1196
+ ], 512),
1197
+ l.$slots.source ? (o(), r("div", {
1198
+ key: 7,
1199
+ ref_key: "source",
1200
+ ref: Pe,
1201
+ dir: "auto"
1202
+ }, [
1203
+ p(l.$slots, "source", {}, void 0, !0)
1204
+ ], 512)) : i("", !0),
1205
+ xe(u(mt), {
1206
+ show: d.value.showTooltip && de.value,
1207
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
1208
+ color: e.value.style.chart.tooltip.color,
1209
+ fontSize: e.value.style.chart.tooltip.fontSize,
1210
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
1211
+ borderColor: e.value.style.chart.tooltip.borderColor,
1212
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
1213
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
1214
+ position: e.value.style.chart.tooltip.position,
1215
+ offsetY: e.value.style.chart.tooltip.offsetY,
1216
+ parent: ne.value,
1217
+ content: pe.value,
1218
+ isCustom: re.value,
1219
+ isFullscreen: ae.value
1220
+ }, {
1221
+ "tooltip-before": C(() => [
1222
+ p(l.$slots, "tooltip-before", oe(se({ ...we.value })), void 0, !0)
1223
+ ]),
1224
+ "tooltip-after": C(() => [
1225
+ p(l.$slots, "tooltip-after", oe(se({ ...we.value })), void 0, !0)
1226
+ ]),
1227
+ _: 3
1228
+ }, 8, ["show", "backgroundColor", "color", "fontSize", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "position", "offsetY", "parent", "content", "isCustom", "isFullscreen"]),
1229
+ ue.value ? (o(), Q(u(dt), {
1230
+ key: 8,
1231
+ hideDetails: "",
1232
+ config: {
1233
+ open: d.value.showTable,
1234
+ maxHeight: 1e4,
1235
+ body: {
1236
+ backgroundColor: e.value.style.chart.backgroundColor,
1237
+ color: e.value.style.chart.color
1238
+ },
1239
+ head: {
1240
+ backgroundColor: e.value.style.chart.backgroundColor,
1241
+ color: e.value.style.chart.color
1242
+ }
1243
+ }
1244
+ }, {
1245
+ content: C(() => [
1246
+ (o(), Q(u(ht), {
1247
+ key: `table_${Fe.value}`,
1248
+ colNames: he.value.colNames,
1249
+ head: he.value.head,
1250
+ body: he.value.body,
1251
+ config: he.value.config,
1252
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? ` : ${e.value.style.chart.title.subtitle.text}` : ""}`,
1253
+ onClose: s[5] || (s[5] = (t) => d.value.showTable = !1)
1254
+ }, {
1255
+ th: C(({ th: t }) => [
1256
+ y("div", {
1257
+ innerHTML: t,
1258
+ style: { display: "flex", "align-items": "center" }
1259
+ }, null, 8, ga)
1260
+ ]),
1261
+ td: C(({ td: t }) => [
1262
+ st(P(t.name ? t.name : isNaN(Number(t)) ? t.includes("%") ? t : u(D)(
1263
+ e.value.style.chart.layout.labels.percentage.formatter,
1264
+ t,
1265
+ u(N)({
1266
+ v: t,
1267
+ s: "%",
1268
+ r: e.value.style.chart.layout.labels.percentage.rounding
1269
+ })
1270
+ ) : u(D)(
1271
+ e.value.style.chart.layout.labels.value.formatter,
1272
+ t,
1273
+ u(N)({
1274
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
1275
+ v: t,
1276
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
1277
+ r: e.value.style.chart.layout.labels.value.rounding
1278
+ })
1279
+ )), 1)
1280
+ ]),
1281
+ _: 1
1282
+ }, 8, ["colNames", "head", "body", "config", "title"]))
1283
+ ]),
1284
+ _: 1
1285
+ }, 8, ["config"])) : i("", !0)
1286
+ ], 46, nl));
1287
+ }
1288
+ }, Sa = /* @__PURE__ */ ul(ma, [["__scopeId", "data-v-bced576d"]]);
1289
+ export {
1290
+ Sa as default
1291
+ };