vue-data-ui 3.0.23 → 3.1.1

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 (108) hide show
  1. package/dist/{Arrow-B1Op9F3x.js → Arrow-xQM7mBzd.js} +1 -1
  2. package/dist/{BaseDraggableDialog-B4OaMIom.js → BaseDraggableDialog-B2BQC0-h.js} +72 -59
  3. package/dist/{BaseIcon-CgUOIGjr.js → BaseIcon-DLesaZpW.js} +1 -1
  4. package/dist/{useLoading-D7YHNtLX.js → BaseScanner-BgWxam9d.js} +11 -11
  5. package/dist/{ColorPicker-C0nf8VH0.js → ColorPicker-BKvJvFtX.js} +2 -2
  6. package/dist/DataTable-BAf4Obr9.js +140 -0
  7. package/dist/{Legend-CyYXMSsW.js → Legend-8_V5egWW.js} +2 -2
  8. package/dist/{NonSvgPenAndPaper-D63qeScu.js → NonSvgPenAndPaper-Cq4fHmA0.js} +3 -3
  9. package/dist/{PackageVersion-B6M-3jRt.js → PackageVersion-Cv_ypT0N.js} +1 -1
  10. package/dist/{PenAndPaper-zym5uEeN.js → PenAndPaper-B6OvfyHH.js} +3 -3
  11. package/dist/{Shape-CYVs2kYz.js → Shape-Cjca5zta.js} +1 -1
  12. package/dist/{Slicer-BTIFUO4x.js → Slicer-6w3K8gAc.js} +2 -2
  13. package/dist/{SparkTooltip-CNz7AYUL.js → SparkTooltip-BV4Z-NMp.js} +1 -1
  14. package/dist/{Title-D_e0SFWS.js → Title-Dz-j6ERs.js} +1 -1
  15. package/dist/{Tooltip-DjVoFYj1.js → Tooltip-BTGOEC7w.js} +1 -1
  16. package/dist/{UserOptions-z0NWZ7aQ.js → UserOptions-CsDlFB0L.js} +2 -2
  17. package/dist/{dom-to-png-DD0au3Qz.js → dom-to-png-BOu5-Ohz.js} +1 -1
  18. package/dist/{img-z5p1gGfY.js → img-gBDz7xQQ.js} +1 -1
  19. package/dist/{index-BEuUtONc.js → index-BKQqb9lF.js} +37 -2
  20. package/dist/{pdf-BmUjVBni.js → pdf-Cjsn5GEE.js} +1 -1
  21. package/dist/style.css +1 -1
  22. package/dist/types/vue-data-ui.d.cts +35 -0
  23. package/dist/types/vue-data-ui.d.ts +35 -0
  24. package/dist/{useAutoSizeLabelsInsideViewbox-CchB8S-o.js → useAutoSizeLabelsInsideViewbox-IO2dh0Uq.js} +1 -1
  25. package/dist/{useNestedProp-DhLFhguL.js → useNestedProp-aBOhgs4U.js} +1 -1
  26. package/dist/{usePrinter-DiB0_UNt.js → usePrinter-BzuXiubT.js} +2 -2
  27. package/dist/useTableResponsive-Cbx-ACcP.js +22 -0
  28. package/dist/{vue-data-ui-DJIAas-7.js → vue-data-ui-B6eM6hF3.js} +64 -64
  29. package/dist/vue-data-ui.js +1 -1
  30. package/dist/vue-ui-3d-bar-DBeWmnvH.js +1369 -0
  31. package/dist/{vue-ui-accordion-B4YfUjZ5.js → vue-ui-accordion-B5QeV3BK.js} +3 -3
  32. package/dist/{vue-ui-age-pyramid-CkXXNN79.js → vue-ui-age-pyramid-rZFdUsgz.js} +333 -286
  33. package/dist/{vue-ui-annotator-DnSsIkvU.js → vue-ui-annotator-CCCuslrT.js} +2 -2
  34. package/dist/{vue-ui-bullet-kZkBsWPY.js → vue-ui-bullet-DhJf9mvK.js} +8 -8
  35. package/dist/{vue-ui-candlestick-CIn0xZm0.js → vue-ui-candlestick-CGVtDKqZ.js} +453 -406
  36. package/dist/{vue-ui-carousel-table-f1FDOAqH.js → vue-ui-carousel-table-DLAR3WY8.js} +4 -4
  37. package/dist/{vue-ui-chestnut-B-jSj7FT.js → vue-ui-chestnut-BXnSxoXB.js} +563 -520
  38. package/dist/vue-ui-chord-DH_MwAKX.js +1100 -0
  39. package/dist/vue-ui-circle-pack-Cx_E1R63.js +755 -0
  40. package/dist/{vue-ui-cursor-DdBrui6i.js → vue-ui-cursor-CEvH1qDS.js} +2 -2
  41. package/dist/{vue-ui-dashboard-DSUfW7mI.js → vue-ui-dashboard-CvduVgEy.js} +62 -62
  42. package/dist/{vue-ui-digits-Cb3Wq5WR.js → vue-ui-digits-PTozKs3l.js} +2 -2
  43. package/dist/{vue-ui-donut-BCZqlAO3.js → vue-ui-donut-CsEtKJJD.js} +477 -431
  44. package/dist/{vue-ui-donut-evolution-HmQBq9VP.js → vue-ui-donut-evolution-DD7o-CxF.js} +482 -435
  45. package/dist/{vue-ui-dumbbell-B5w2oqNO.js → vue-ui-dumbbell-DfPYl3fu.js} +443 -398
  46. package/dist/vue-ui-flow-CSTTZHwg.js +900 -0
  47. package/dist/vue-ui-funnel-C-NUZqIo.js +666 -0
  48. package/dist/vue-ui-galaxy-BwsZnU6T.js +744 -0
  49. package/dist/{vue-ui-gauge-C_KLPWk2.js → vue-ui-gauge-D9MUneq0.js} +8 -8
  50. package/dist/{vue-ui-gizmo-CsPX25Ti.js → vue-ui-gizmo-Dnzs9wSf.js} +4 -4
  51. package/dist/{vue-ui-heatmap-BHq6hBaL.js → vue-ui-heatmap-CYaQIhy8.js} +501 -461
  52. package/dist/{vue-ui-history-plot-DgpYiaUD.js → vue-ui-history-plot-DMTFzl-_.js} +408 -361
  53. package/dist/{vue-ui-kpi-DOgibU7W.js → vue-ui-kpi-CkPotdff.js} +3 -3
  54. package/dist/{vue-ui-mini-loader-BjsQAxDx.js → vue-ui-mini-loader-CCE-bDOJ.js} +2 -2
  55. package/dist/vue-ui-molecule-DaN5lroq.js +702 -0
  56. package/dist/{vue-ui-mood-radar-DMwVl3wz.js → vue-ui-mood-radar-tM0mmZh8.js} +342 -291
  57. package/dist/{vue-ui-nested-donuts-H0GzIAF0.js → vue-ui-nested-donuts-RB4r6beI.js} +548 -502
  58. package/dist/{vue-ui-onion-A6nKcus1.js → vue-ui-onion-CxDozHg3.js} +363 -317
  59. package/dist/vue-ui-parallel-coordinate-plot-CK9nNExU.js +979 -0
  60. package/dist/vue-ui-quadrant-C7tLJYn7.js +1483 -0
  61. package/dist/{vue-ui-quick-chart-mwXE3w_o.js → vue-ui-quick-chart-MUBAkrHb.js} +7 -7
  62. package/dist/vue-ui-radar-Br4K80I9.js +858 -0
  63. package/dist/{vue-ui-rating-CleNHFo5.js → vue-ui-rating-NtvT9r_M.js} +2 -2
  64. package/dist/{vue-ui-relation-circle-CMCH7Ia6.js → vue-ui-relation-circle-CPQjAy1g.js} +8 -8
  65. package/dist/vue-ui-ridgeline-C2M_Cjlh.js +1204 -0
  66. package/dist/vue-ui-rings-DEru-cWN.js +785 -0
  67. package/dist/{vue-ui-scatter-kv28dsT3.js → vue-ui-scatter-CJKkiKle.js} +594 -548
  68. package/dist/{vue-ui-skeleton-DCNOYh9x.js → vue-ui-skeleton--twnjS2t.js} +3 -3
  69. package/dist/{vue-ui-smiley-DcS0CM-z.js → vue-ui-smiley-CNccdPZ7.js} +2 -2
  70. package/dist/{vue-ui-spark-trend-LHgReXth.js → vue-ui-spark-trend-9BFkkC0u.js} +4 -4
  71. package/dist/{vue-ui-sparkbar-Da315uRq.js → vue-ui-sparkbar-RYAThoA4.js} +4 -4
  72. package/dist/{vue-ui-sparkgauge-BeAkjGap.js → vue-ui-sparkgauge-DkPlmgMF.js} +4 -4
  73. package/dist/{vue-ui-sparkhistogram-Cy19W3y1.js → vue-ui-sparkhistogram-6EkCyYRF.js} +5 -5
  74. package/dist/{vue-ui-sparkline-IjlQWgs3.js → vue-ui-sparkline-Bl3nj8zd.js} +4 -4
  75. package/dist/{vue-ui-sparkstackbar-CoFgOa3r.js → vue-ui-sparkstackbar-B88lA7iy.js} +4 -4
  76. package/dist/{vue-ui-stackbar-fbCs4sHF.js → vue-ui-stackbar-Csj7NhT6.js} +525 -479
  77. package/dist/{vue-ui-strip-plot-Cm8Zr6RE.js → vue-ui-strip-plot-yY9NsUUI.js} +390 -343
  78. package/dist/{vue-ui-table-q7jWgS26.js → vue-ui-table-Dg6U31ex.js} +3 -3
  79. package/dist/{vue-ui-table-heatmap-CsK9gR1G.js → vue-ui-table-heatmap-BWU7CAWP.js} +5 -5
  80. package/dist/{vue-ui-table-sparkline-CXTPucPr.js → vue-ui-table-sparkline-DV4Y9aRL.js} +4 -4
  81. package/dist/{vue-ui-thermometer-BFxdNgrd.js → vue-ui-thermometer-C3fKamV-.js} +8 -8
  82. package/dist/{vue-ui-timer-BsoeDFjK.js → vue-ui-timer-6VAK9XyF.js} +5 -5
  83. package/dist/{vue-ui-tiremarks-BW_jSayT.js → vue-ui-tiremarks-BB-KAkF7.js} +7 -7
  84. package/dist/vue-ui-treemap-GrXkD_3Z.js +1092 -0
  85. package/dist/{vue-ui-vertical-bar-OrLV4CxH.js → vue-ui-vertical-bar-Mmz6u4aX.js} +504 -461
  86. package/dist/{vue-ui-waffle-BA6rNfVs.js → vue-ui-waffle-DzPVRUOA.js} +416 -370
  87. package/dist/{vue-ui-wheel-B_BkI-5f.js → vue-ui-wheel-idRCvS5t.js} +7 -7
  88. package/dist/vue-ui-word-cloud-B2641uNP.js +811 -0
  89. package/dist/{vue-ui-world-B4mKuSSn.js → vue-ui-world-D6s5Eph8.js} +512 -466
  90. package/dist/{vue-ui-xy-m1SWJk77.js → vue-ui-xy-BKTGSvfU.js} +1551 -1500
  91. package/dist/vue-ui-xy-canvas-BOQyxVRl.js +1291 -0
  92. package/package.json +1 -1
  93. package/dist/DataTable-nO6ydJO2.js +0 -133
  94. package/dist/vue-ui-3d-bar-B56WqLJ-.js +0 -1323
  95. package/dist/vue-ui-chord-Ck4yV3Tb.js +0 -1049
  96. package/dist/vue-ui-circle-pack-BAfRk_Hd.js +0 -709
  97. package/dist/vue-ui-flow-BXkxtUoF.js +0 -852
  98. package/dist/vue-ui-funnel-DFvDO--q.js +0 -620
  99. package/dist/vue-ui-galaxy-BXNLLc3U.js +0 -691
  100. package/dist/vue-ui-molecule-BtyMTwEn.js +0 -656
  101. package/dist/vue-ui-parallel-coordinate-plot-DZ9_0F5c.js +0 -927
  102. package/dist/vue-ui-quadrant-CUggSeUN.js +0 -1432
  103. package/dist/vue-ui-radar-BRKZ8e_X.js +0 -807
  104. package/dist/vue-ui-ridgeline-xW7UrSfR.js +0 -1157
  105. package/dist/vue-ui-rings-D3NfFMaO.js +0 -739
  106. package/dist/vue-ui-treemap-DhAYSVB9.js +0 -1046
  107. package/dist/vue-ui-word-cloud-CrSLGFOK.js +0 -765
  108. package/dist/vue-ui-xy-canvas-CX2JT6T3.js +0 -1243
@@ -0,0 +1,858 @@
1
+ import { defineAsyncComponent as $, computed as v, ref as c, toRefs as Ct, watch as Me, shallowRef as Ee, onMounted as wt, onBeforeUnmount as $t, createElementBlock as u, openBlock as n, unref as r, normalizeStyle as J, normalizeClass as X, createBlock as P, createCommentVNode as d, createElementVNode as _, createVNode as K, createSlots as Ue, withCtx as h, renderSlot as g, normalizeProps as B, guardReactiveProps as M, Fragment as S, renderList as I, toDisplayString as E, Teleport as _t, resolveDynamicComponent as Tt, mergeProps as At, createTextVNode as ce, nextTick as Ve } from "vue";
2
+ import { u as Pt, c as xt, t as Ft, a as Ot, p as N, b as St, o as It, f as U, d as Nt, g as We, e as Ge, R as Xe, h as Lt, k as Ye, i as Y, X as Rt, s as ve, x as zt, S as He, v as Dt, w as Bt, y as Mt, z as Et } from "./index-BKQqb9lF.js";
3
+ import { t as Ut, u as Vt } from "./useResponsive-DfdjqQps.js";
4
+ import { u as Wt, B as Gt } from "./BaseScanner-BgWxam9d.js";
5
+ import { u as Xt } from "./usePrinter-BzuXiubT.js";
6
+ import { u as je } from "./useNestedProp-aBOhgs4U.js";
7
+ import { u as Yt } from "./useUserOptionState-BIvW1Kz7.js";
8
+ import { u as Ht } from "./useChartAccessibility-9icAAmYg.js";
9
+ import { u as jt } from "./useAutoSizeLabelsInsideViewbox-IO2dh0Uq.js";
10
+ import qt from "./img-gBDz7xQQ.js";
11
+ import Jt from "./Title-Dz-j6ERs.js";
12
+ import Kt from "./Legend-8_V5egWW.js";
13
+ import { _ as Qt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
14
+ const Zt = ["id"], ea = ["id"], ta = ["xmlns", "viewBox"], aa = ["width", "height"], oa = ["id"], la = ["stop-color"], na = ["stop-color"], sa = { key: 1 }, ra = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], ua = { key: 0 }, ia = ["d", "stroke", "stroke-width"], ca = ["d", "stroke", "stroke-width"], va = { key: 2 }, da = ["x", "y", "text-anchor", "font-size", "fill", "onMouseenter", "onMouseleave", "onClick"], pa = ["points", "stroke", "stroke-width"], ha = ["points", "stroke", "stroke-width", "fill"], ga = { key: 3 }, fa = ["cx", "cy", "fill", "r", "stroke"], ya = {
15
+ key: 4,
16
+ class: "vue-data-ui-watermark"
17
+ }, ma = ["id"], ba = ["onClick"], ka = {
18
+ key: 0,
19
+ style: { "max-width": "200px", margin: "0 auto" }
20
+ }, Ca = {
21
+ __name: "vue-ui-radar",
22
+ props: {
23
+ config: {
24
+ type: Object,
25
+ default() {
26
+ return {};
27
+ }
28
+ },
29
+ dataset: {
30
+ type: Object,
31
+ default() {
32
+ return {};
33
+ }
34
+ }
35
+ },
36
+ emits: ["selectLegend"],
37
+ setup(qe, { expose: Je, emit: Ke }) {
38
+ const Qe = $(() => import("./Tooltip-BTGOEC7w.js")), Ze = $(() => import("./BaseIcon-DLesaZpW.js")), et = $(() => import("./vue-ui-sparkbar-RYAThoA4.js")), tt = $(() => import("./vue-ui-accordion-B5QeV3BK.js")), at = $(() => import("./DataTable-BAf4Obr9.js")), ot = $(() => import("./PenAndPaper-B6OvfyHH.js")), lt = $(() => import("./UserOptions-CsDlFB0L.js")), nt = $(() => import("./PackageVersion-Cv_ypT0N.js")), st = $(() => import("./BaseDraggableDialog-B2BQC0-h.js")), { vue_ui_radar: rt } = Pt(), x = qe, de = v(() => !!x.dataset && Object.keys(x.dataset).length), b = c(xt()), ut = c(null), Q = c(!1), Z = c(""), pe = c(0), C = c(null), he = c(null), ge = c(null), fe = c(null), ye = c(null), me = c(0), be = c(0), ke = c(0), Ce = c(!1), V = c(null), e = c(ae()), { loading: we, FINAL_DATASET: w } = Wt({
39
+ ...Ct(x),
40
+ FINAL_CONFIG: e,
41
+ prepareConfig: ae,
42
+ callback: () => {
43
+ Promise.resolve().then(async () => {
44
+ await Ve(), f.value.showTable = e.value.table.show;
45
+ });
46
+ },
47
+ skeletonDataset: {
48
+ categories: [{ name: "_", color: "#6A6A6A" }],
49
+ series: [
50
+ { name: "_", values: [0.6], target: 1 },
51
+ { name: "_", values: [0.6], target: 1 },
52
+ { name: "_", values: [0.6], target: 1 },
53
+ { name: "_", values: [0.6], target: 1 },
54
+ { name: "_", values: [0.6], target: 1 },
55
+ { name: "_", values: [0.6], target: 1 }
56
+ ]
57
+ },
58
+ skeletonConfig: Ft({
59
+ defaultConfig: e.value,
60
+ userConfig: {
61
+ userOptions: { show: !1 },
62
+ table: { show: !1 },
63
+ useCssAnimation: !1,
64
+ style: {
65
+ chart: {
66
+ backgroundColor: "#99999930",
67
+ layout: {
68
+ grid: {
69
+ stroke: "#6A6A6A90"
70
+ },
71
+ labels: {
72
+ dataLabels: { show: !1 }
73
+ },
74
+ outerPolygon: {
75
+ stroke: "#6A6A6A"
76
+ }
77
+ },
78
+ legend: {
79
+ backgroundColor: "transparent"
80
+ }
81
+ }
82
+ }
83
+ }
84
+ })
85
+ }), { userOptionsVisible: ee, setUserOptionsVisibility: $e, keepUserOptionState: _e } = Yt({ config: e.value }), { svgRef: te } = Ht({ config: e.value.style.chart.title });
86
+ function ae() {
87
+ const t = je({
88
+ userConfig: x.config,
89
+ defaultConfig: rt
90
+ });
91
+ return t.theme ? {
92
+ ...je({
93
+ userConfig: St.vue_ui_radar[t.theme] || x.config,
94
+ defaultConfig: t
95
+ }),
96
+ customPalette: Ot[t.theme] || N
97
+ } : t;
98
+ }
99
+ Me(() => x.config, (t) => {
100
+ e.value = ae(), ee.value = !e.value.userOptions.showOnChartHover, Te(), me.value += 1, be.value += 1, ke.value += 1, f.value.dataLabels.show = e.value.style.chart.layout.labels.dataLabels.show, f.value.showTable = e.value.table.show, f.value.showTooltip = e.value.style.chart.tooltip ? e.value.style.chart.tooltip.show : !1;
101
+ }, { deep: !0 });
102
+ const T = Ee(null), L = Ee(null), R = v(() => e.value.debug);
103
+ function Te() {
104
+ if (It(x.dataset) && U({
105
+ componentName: "VueUiRadar",
106
+ type: "dataset",
107
+ debug: R.value
108
+ }), e.value.responsive) {
109
+ const t = Ut(() => {
110
+ const { width: a, height: o } = Vt({
111
+ chart: C.value,
112
+ title: e.value.style.chart.title.text ? he.value : null,
113
+ legend: e.value.style.chart.legend.show ? ge.value : null,
114
+ source: fe.value,
115
+ noTitle: ye.value
116
+ });
117
+ requestAnimationFrame(() => {
118
+ i.value.width = a, i.value.height = o, Re();
119
+ });
120
+ });
121
+ T.value && (L.value && T.value.unobserve(L.value), T.value.disconnect()), T.value = new ResizeObserver(t), L.value = C.value.parentNode, T.value.observe(L.value);
122
+ }
123
+ Re();
124
+ }
125
+ wt(() => {
126
+ Ce.value = !0, Te();
127
+ }), $t(() => {
128
+ T.value && (L.value && T.value.unobserve(L.value), T.value.disconnect());
129
+ });
130
+ const { isPrinting: Ae, isImaging: Pe, generatePdf: xe, generateImage: Fe } = Xt({
131
+ elementId: `vue-ui-radar_${b.value}`,
132
+ fileName: e.value.style.chart.title.text || "vue-ui-radar",
133
+ options: e.value.userOptions.print
134
+ }), it = v(() => e.value.userOptions.show && !e.value.style.chart.title.text), Oe = v(() => Nt(e.value.customPalette)), f = c({
135
+ dataLabels: {
136
+ show: e.value.style.chart.layout.labels.dataLabels.show
137
+ },
138
+ showTable: e.value.table.show,
139
+ showTooltip: e.value.style.chart.tooltip.show
140
+ }), ct = v(() => ({
141
+ style: {
142
+ backgroundColor: "#FFFFFF00",
143
+ animation: {
144
+ show: e.value.style.chart.tooltip.animation.show,
145
+ animationFrames: e.value.style.chart.tooltip.animation.animationFrames
146
+ },
147
+ labels: {
148
+ fontSize: e.value.style.chart.tooltip.fontSize,
149
+ name: {
150
+ color: e.value.style.chart.tooltip.color
151
+ }
152
+ },
153
+ gutter: {
154
+ backgroundColor: "#CCCCCC",
155
+ opacity: 30
156
+ }
157
+ }
158
+ })), i = c({
159
+ height: 312,
160
+ width: 512
161
+ }), vt = Ke, p = c([]), W = c(null), z = c(!1);
162
+ function Se(t) {
163
+ z.value = !0, p.value.includes(t) ? (W.value = t, p.value = p.value.filter((a) => a !== t), setTimeout(() => {
164
+ z.value = !1, W.value = null;
165
+ }, 500)) : (p.value.push(t), setTimeout(() => {
166
+ z.value = !1;
167
+ }, 500)), vt("selectLegend", D.value.filter((a, o) => !p.value.includes(o)).map((a) => ({
168
+ name: a.name,
169
+ color: a.color,
170
+ proportion: a.totalProportion
171
+ })));
172
+ }
173
+ function dt() {
174
+ return D.value.map((t) => ({
175
+ name: t.name,
176
+ color: t.color,
177
+ proportion: t.totalProportion
178
+ }));
179
+ }
180
+ const y = v(() => [null, void 0].includes(w.value.categories) ? (U({
181
+ componentName: "VueUiRadar",
182
+ type: "datasetAttribute",
183
+ property: "categories ({ name: string; prefix?: string; suffix?: string}[])",
184
+ debug: R.value
185
+ }), []) : (w.value.categories.length === 0 ? U({
186
+ componentName: "VueUiRadar",
187
+ type: "datasetAttributeEmpty",
188
+ property: "categories",
189
+ debug: R.value
190
+ }) : w.value.categories.forEach((t, a) => {
191
+ We({
192
+ datasetObject: t,
193
+ requiredAttributes: ["name"]
194
+ }).forEach((o) => {
195
+ U({
196
+ componentName: "VueUiRadar",
197
+ type: "datasetAttribute",
198
+ property: `category.${o} at index ${a}`,
199
+ index: a,
200
+ debug: R.value
201
+ });
202
+ });
203
+ }), [null, void 0].includes(w.value.series) ? U({
204
+ componentName: "VueUiRadar",
205
+ type: "datasetAttribute",
206
+ property: "series ({ name: string; values: number[]; color?: string; target: number}[])",
207
+ debug: R.value
208
+ }) : w.value.series.forEach((t, a) => {
209
+ We({
210
+ datasetObject: t,
211
+ requiredAttributes: ["name", "values", "target"]
212
+ }).forEach((o) => {
213
+ U({
214
+ componentName: "VueUiRadar",
215
+ type: "datasetSerieAttribute",
216
+ key: "series",
217
+ property: o,
218
+ index: a,
219
+ debug: R.value
220
+ });
221
+ });
222
+ }), w.value.categories.map((t, a) => ({
223
+ name: t.name,
224
+ categoryId: `radar_category_${b.value}_${a}`,
225
+ color: Ge(t.color) || Oe.value[a] || N[a] || N[a % N.length],
226
+ prefix: t.prefix ?? "",
227
+ suffix: t.suffix ?? ""
228
+ })))), k = v(() => w.value.series.map((t, a) => ({
229
+ ...t,
230
+ color: Ge(t.color) || Oe.value[a] || N[a] || N[a % N.length],
231
+ serieId: `radar_serie_${b.value}_${a}`,
232
+ formatter: t.formatter || null
233
+ }))), Ie = v(() => Math.max(...k.value.flatMap((t) => t.values))), Ne = v(() => k.value.length), oe = v(() => Math.min(i.value.width, i.value.height) / 3), Le = v(() => Xe({
234
+ plot: { x: i.value.width / 2, y: i.value.height / 2 },
235
+ radius: oe.value,
236
+ sides: Ne.value,
237
+ rotation: 0
238
+ })), pt = v(() => {
239
+ const t = [];
240
+ for (let a = 0; a < oe.value; a += oe.value / e.value.style.chart.layout.grid.graduations)
241
+ t.push(a);
242
+ return t;
243
+ }), A = v(() => Le.value.coordinates.map((t, a) => {
244
+ const o = k.value[a].values.map((l) => gt({
245
+ centerX: i.value.width / 2,
246
+ centerY: i.value.height / 2,
247
+ apexX: t.x,
248
+ apexY: t.y,
249
+ proportion: l / (k.value[a].target || Ie.value)
250
+ }));
251
+ return {
252
+ ...t,
253
+ ...k.value[a],
254
+ plots: o
255
+ };
256
+ }).map((t) => ({
257
+ ...t,
258
+ labelX: le(t).x,
259
+ labelY: le(t).y,
260
+ labelAnchor: le(t).anchor
261
+ })));
262
+ function le({ x: t, y: a }) {
263
+ let o = "middle";
264
+ return t = Math.round(t), a = Math.round(a), t > i.value.width / 2 && (t += 12, o = "start"), t < i.value.width / 2 && (t -= 12, o = "end"), a > i.value.height / 2 + 1 && (a += 20), a < i.value.height / 2 - 1 && (a -= 12), a === i.value.height / 2 && (a += 4), { x: t, y: a, anchor: o };
265
+ }
266
+ const ht = v({
267
+ get: () => e.value.style.chart.layout.labels.dataLabels.fontSize,
268
+ set: (t) => t
269
+ }), { autoSizeLabels: Re } = jt({
270
+ svgRef: te,
271
+ fontSize: e.value.style.chart.layout.labels.dataLabels.fontSize,
272
+ minFontSize: 6,
273
+ sizeRef: ht,
274
+ labelClass: ".vue-ui-radar-apex-label"
275
+ });
276
+ function gt({ centerX: t, centerY: a, apexX: o, apexY: l, proportion: s }) {
277
+ return {
278
+ x: t + (o - t) * s,
279
+ y: a + (l - a) * s
280
+ };
281
+ }
282
+ const D = v(() => {
283
+ const t = k.value.map((a, o) => a.values.map((l) => l / (a.target || Ie.value)));
284
+ return y.value.map((a, o) => ({
285
+ ...a,
286
+ totalProportion: Lt(t.map((l) => l[o]).reduce((l, s) => l + s, 0) / k.value.length),
287
+ shape: "circle",
288
+ opacity: p.value.includes(o) ? 0.5 : 1,
289
+ segregate: () => Se(o),
290
+ isSegregated: p.value.includes(o)
291
+ }));
292
+ }), ft = v(() => ({
293
+ cy: "radar-div-legend",
294
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
295
+ color: e.value.style.chart.legend.color,
296
+ fontSize: e.value.style.chart.legend.fontSize,
297
+ paddingBottom: 12,
298
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
299
+ })), H = v(() => {
300
+ const t = [
301
+ { name: e.value.translations.datapoint, color: "" },
302
+ { name: e.value.translations.target, color: "" },
303
+ ...D.value
304
+ ], a = w.value.series.map((l) => [
305
+ l.name,
306
+ Ye(
307
+ l.formatter,
308
+ l.target,
309
+ Y({
310
+ p: l.prefix,
311
+ v: l.target,
312
+ s: l.suffix,
313
+ r: e.value.table.td.roundingValue
314
+ })
315
+ ),
316
+ ...l.values.map((s, m) => `${Ye(
317
+ l.formatter,
318
+ s,
319
+ Y({ p: y.value[m].prefix, v: s, s: y.value[m].suffix, r: e.value.table.td.roundingValue })
320
+ )} (${isNaN(s / l.target) ? "" : Y({
321
+ v: s / l.target * 100,
322
+ s: "%",
323
+ r: e.value.table.td.roundingPercentage
324
+ })})`)
325
+ ]), o = {
326
+ th: {
327
+ backgroundColor: e.value.table.th.backgroundColor,
328
+ color: e.value.table.th.color,
329
+ outline: e.value.table.th.outline
330
+ },
331
+ td: {
332
+ backgroundColor: e.value.table.td.backgroundColor,
333
+ color: e.value.table.td.color,
334
+ outline: e.value.table.td.outline
335
+ },
336
+ breakpoint: e.value.table.responsiveBreakpoint
337
+ };
338
+ return { head: t, body: a, config: o, colNames: t };
339
+ }), j = c(null), ne = c([]), se = c(null);
340
+ function yt(t, a) {
341
+ Q.value = !1, j.value = null, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: a });
342
+ }
343
+ function mt(t, a) {
344
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: a });
345
+ }
346
+ function bt(t, a) {
347
+ e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: a }), ne.value = [], j.value = a, Q.value = !0;
348
+ let o = "";
349
+ se.value = {
350
+ datapoint: t,
351
+ seriesIndex: a,
352
+ series: {
353
+ categories: y.value,
354
+ datapoints: k.value,
355
+ radar: A.value
356
+ },
357
+ config: e.value
358
+ };
359
+ const l = e.value.style.chart.tooltip.customFormat;
360
+ if (Mt(l) && Et(() => l({
361
+ seriesIndex: a,
362
+ datapoint: t,
363
+ series: { categories: y.value, datapoints: k.value, radar: A.value },
364
+ config: e.value
365
+ })))
366
+ Z.value = l({
367
+ seriesIndex: a,
368
+ datapoint: t,
369
+ series: { categories: y.value, datapoints: k.value, radar: A.value },
370
+ config: e.value
371
+ });
372
+ else {
373
+ o += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${t.name}</div>`;
374
+ for (let s = 0; s < t.values.length; s += 1)
375
+ p.value.includes(s) || ne.value.push({
376
+ name: y.value[s].name,
377
+ value: t.values[s] / t.target * 100,
378
+ color: y.value[s].color,
379
+ suffix: "%)",
380
+ prefix: `${Y({ p: y.value[s].prefix ?? "", v: t.values[s], s: y.value[s].suffix ?? "", r: e.value.style.chart.tooltip.roundingValue })} (`,
381
+ rounding: e.value.style.chart.tooltip.roundingPercentage,
382
+ formatter: t.formatter
383
+ });
384
+ Z.value = o;
385
+ }
386
+ }
387
+ function re(t = null) {
388
+ Ve(() => {
389
+ const a = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [""]], o = [[""], [e.value.translations.target], ...D.value.flatMap((O) => [[O.name], ["%"]])], l = w.value.series.map((O, wa) => [O.name, O.target, ...O.values.flatMap((ie) => [
390
+ ie,
391
+ isNaN(ie / O.target) ? "" : ie / O.target * 100
392
+ ])]), s = a.concat([o]).concat(l), m = Dt(s);
393
+ t ? t(m) : Bt({ csvContent: m, title: e.value.style.chart.title.text || "vue-ui-radar" });
394
+ });
395
+ }
396
+ const F = c(!1);
397
+ function ze(t) {
398
+ F.value = t, pe.value += 1;
399
+ }
400
+ function De() {
401
+ f.value.showTable = !f.value.showTable;
402
+ }
403
+ function Be() {
404
+ f.value.showTooltip = !f.value.showTooltip;
405
+ }
406
+ const q = c(!1);
407
+ function ue() {
408
+ q.value = !q.value;
409
+ }
410
+ async function kt({ scale: t = 2 } = {}) {
411
+ if (!C.value) return;
412
+ const { width: a, height: o } = C.value.getBoundingClientRect(), l = a / o, { imageUri: s, base64: m } = await qt({ domElement: C.value, base64: !0, img: !0, scale: t });
413
+ return {
414
+ imageUri: s,
415
+ base64: m,
416
+ title: e.value.style.chart.title.text,
417
+ width: a,
418
+ height: o,
419
+ aspectRatio: l
420
+ };
421
+ }
422
+ const G = v(() => {
423
+ const t = e.value.table.useDialog && !e.value.table.show, a = f.value.showTable;
424
+ return {
425
+ component: t ? st : tt,
426
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
427
+ props: t ? {
428
+ backgroundColor: e.value.table.th.backgroundColor,
429
+ color: e.value.table.th.color,
430
+ headerColor: e.value.table.th.color,
431
+ headerBg: e.value.table.th.backgroundColor,
432
+ isFullscreen: F.value,
433
+ fullscreenParent: C.value,
434
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
435
+ } : {
436
+ hideDetails: !0,
437
+ config: {
438
+ open: a,
439
+ maxHeight: 1e4,
440
+ body: {
441
+ backgroundColor: e.value.style.chart.backgroundColor,
442
+ color: e.value.style.chart.color
443
+ },
444
+ head: {
445
+ backgroundColor: e.value.style.chart.backgroundColor,
446
+ color: e.value.style.chart.color
447
+ }
448
+ }
449
+ }
450
+ };
451
+ });
452
+ return Me(() => f.value.showTable, (t) => {
453
+ e.value.table.show || (t && e.value.table.useDialog && V.value ? V.value.open() : "close" in V.value && V.value.close());
454
+ }), Je({
455
+ getData: dt,
456
+ getImage: kt,
457
+ generatePdf: xe,
458
+ generateCsv: re,
459
+ generateImage: Fe,
460
+ toggleTable: De,
461
+ toggleTooltip: Be,
462
+ toggleAnnotator: ue,
463
+ toggleFullscreen: ze
464
+ }), (t, a) => (n(), u("div", {
465
+ class: X(`vue-ui-radar ${F.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
466
+ ref_key: "radarChart",
467
+ ref: C,
468
+ id: `vue-ui-radar_${b.value}`,
469
+ style: J(`font-family:${e.value.style.fontFamily};width:100%; ${e.value.responsive ? "height: 100%;" : ""} text-align:center;background:${e.value.style.chart.backgroundColor}`),
470
+ onMouseenter: a[4] || (a[4] = () => r($e)(!0)),
471
+ onMouseleave: a[5] || (a[5] = () => r($e)(!1))
472
+ }, [
473
+ e.value.userOptions.buttons.annotator ? (n(), P(r(ot), {
474
+ key: 0,
475
+ svgRef: r(te),
476
+ backgroundColor: e.value.style.chart.backgroundColor,
477
+ color: e.value.style.chart.color,
478
+ active: q.value,
479
+ onClose: ue
480
+ }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : d("", !0),
481
+ it.value ? (n(), u("div", {
482
+ key: 1,
483
+ ref_key: "noTitle",
484
+ ref: ye,
485
+ class: "vue-data-ui-no-title-space",
486
+ style: "height:36px; width: 100%;background:transparent"
487
+ }, null, 512)) : d("", !0),
488
+ e.value.style.chart.title.text ? (n(), u("div", {
489
+ key: 2,
490
+ ref_key: "chartTitle",
491
+ ref: he,
492
+ style: "width:100%;background:transparent;padding-bottom:12px"
493
+ }, [
494
+ (n(), P(Jt, {
495
+ key: `title_${me.value}`,
496
+ config: {
497
+ title: {
498
+ cy: "radar-div-title",
499
+ ...e.value.style.chart.title
500
+ },
501
+ subtitle: {
502
+ cy: "radar-div-subtitle",
503
+ ...e.value.style.chart.title.subtitle
504
+ }
505
+ }
506
+ }, null, 8, ["config"]))
507
+ ], 512)) : d("", !0),
508
+ _("div", {
509
+ id: `legend-top-${b.value}`
510
+ }, null, 8, ea),
511
+ e.value.userOptions.show && de.value && (r(_e) || r(ee)) ? (n(), P(r(lt), {
512
+ ref_key: "details",
513
+ ref: ut,
514
+ key: `user_options_${pe.value}`,
515
+ backgroundColor: e.value.style.chart.backgroundColor,
516
+ color: e.value.style.chart.color,
517
+ isImaging: r(Pe),
518
+ isPrinting: r(Ae),
519
+ uid: b.value,
520
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
521
+ hasPdf: e.value.userOptions.buttons.pdf,
522
+ hasImg: e.value.userOptions.buttons.img,
523
+ hasXls: e.value.userOptions.buttons.csv,
524
+ hasTable: e.value.userOptions.buttons.table,
525
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
526
+ isFullscreen: F.value,
527
+ isTooltip: f.value.showTooltip,
528
+ titles: { ...e.value.userOptions.buttonTitles },
529
+ chartElement: C.value,
530
+ position: e.value.userOptions.position,
531
+ hasAnnotator: e.value.userOptions.buttons.annotator,
532
+ isAnnotation: q.value,
533
+ callbacks: e.value.userOptions.callbacks,
534
+ printScale: e.value.userOptions.print.scale,
535
+ onToggleFullscreen: ze,
536
+ onGeneratePdf: r(xe),
537
+ onGenerateCsv: re,
538
+ onGenerateImage: r(Fe),
539
+ onToggleTable: De,
540
+ onToggleTooltip: Be,
541
+ onToggleAnnotator: ue,
542
+ style: J({
543
+ visibility: r(_e) ? r(ee) ? "visible" : "hidden" : "visible"
544
+ })
545
+ }, Ue({ _: 2 }, [
546
+ t.$slots.menuIcon ? {
547
+ name: "menuIcon",
548
+ fn: h(({ isOpen: o, color: l }) => [
549
+ g(t.$slots, "menuIcon", B(M({ isOpen: o, color: l })), void 0, !0)
550
+ ]),
551
+ key: "0"
552
+ } : void 0,
553
+ t.$slots.optionTooltip ? {
554
+ name: "optionTooltip",
555
+ fn: h(() => [
556
+ g(t.$slots, "optionTooltip", {}, void 0, !0)
557
+ ]),
558
+ key: "1"
559
+ } : void 0,
560
+ t.$slots.optionPdf ? {
561
+ name: "optionPdf",
562
+ fn: h(() => [
563
+ g(t.$slots, "optionPdf", {}, void 0, !0)
564
+ ]),
565
+ key: "2"
566
+ } : void 0,
567
+ t.$slots.optionCsv ? {
568
+ name: "optionCsv",
569
+ fn: h(() => [
570
+ g(t.$slots, "optionCsv", {}, void 0, !0)
571
+ ]),
572
+ key: "3"
573
+ } : void 0,
574
+ t.$slots.optionImg ? {
575
+ name: "optionImg",
576
+ fn: h(() => [
577
+ g(t.$slots, "optionImg", {}, void 0, !0)
578
+ ]),
579
+ key: "4"
580
+ } : void 0,
581
+ t.$slots.optionTable ? {
582
+ name: "optionTable",
583
+ fn: h(() => [
584
+ g(t.$slots, "optionTable", {}, void 0, !0)
585
+ ]),
586
+ key: "5"
587
+ } : void 0,
588
+ t.$slots.optionFullscreen ? {
589
+ name: "optionFullscreen",
590
+ fn: h(({ toggleFullscreen: o, isFullscreen: l }) => [
591
+ g(t.$slots, "optionFullscreen", B(M({ toggleFullscreen: o, isFullscreen: l })), void 0, !0)
592
+ ]),
593
+ key: "6"
594
+ } : void 0,
595
+ t.$slots.optionAnnotator ? {
596
+ name: "optionAnnotator",
597
+ fn: h(({ toggleAnnotator: o, isAnnotator: l }) => [
598
+ g(t.$slots, "optionAnnotator", B(M({ toggleAnnotator: o, isAnnotator: l })), void 0, !0)
599
+ ]),
600
+ key: "7"
601
+ } : void 0
602
+ ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasImg", "hasXls", "hasTable", "hasFullscreen", "isFullscreen", "isTooltip", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : d("", !0),
603
+ (n(), u("svg", {
604
+ ref_key: "svgRef",
605
+ ref: te,
606
+ xmlns: r(Rt),
607
+ class: X({ "vue-data-ui-fullscreen--on": F.value, "vue-data-ui-fulscreen--off": !F.value }),
608
+ viewBox: `0 0 ${i.value.width <= 0 ? 10 : i.value.width} ${i.value.height <= 0 ? 10 : i.value.height}`,
609
+ style: J(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
610
+ }, [
611
+ K(r(nt)),
612
+ t.$slots["chart-background"] ? (n(), u("foreignObject", {
613
+ key: 0,
614
+ x: 0,
615
+ y: 0,
616
+ width: i.value.width <= 0 ? 10 : i.value.width,
617
+ height: i.value.height <= 0 ? 10 : i.value.height,
618
+ style: {
619
+ pointerEvents: "none"
620
+ }
621
+ }, [
622
+ g(t.$slots, "chart-background", {}, void 0, !0)
623
+ ], 8, aa)) : d("", !0),
624
+ _("defs", null, [
625
+ (n(!0), u(S, null, I(y.value, (o, l) => (n(), u("radialGradient", {
626
+ cx: "50%",
627
+ cy: "50%",
628
+ r: "50%",
629
+ fx: "50%",
630
+ fy: "50%",
631
+ id: `radar_gradient_${b.value}_${l}`
632
+ }, [
633
+ _("stop", {
634
+ offset: "0%",
635
+ "stop-color": r(ve)(r(zt)(o.color, 0.05), e.value.style.chart.layout.dataPolygon.opacity)
636
+ }, null, 8, la),
637
+ _("stop", {
638
+ offset: "100%",
639
+ "stop-color": r(ve)(o.color, e.value.style.chart.layout.dataPolygon.opacity)
640
+ }, null, 8, na)
641
+ ], 8, oa))), 256))
642
+ ]),
643
+ e.value.style.chart.layout.grid.show ? (n(), u("g", sa, [
644
+ (n(!0), u(S, null, I(A.value, (o) => (n(), u("line", {
645
+ x1: i.value.width / 2,
646
+ y1: i.value.height / 2,
647
+ x2: o.x,
648
+ y2: o.y,
649
+ stroke: e.value.style.chart.layout.grid.stroke,
650
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth
651
+ }, null, 8, ra))), 256)),
652
+ e.value.style.chart.layout.grid.graduations > 0 ? (n(), u("g", ua, [
653
+ (n(!0), u(S, null, I(pt.value, (o) => (n(), u("path", {
654
+ d: r(Xe)({
655
+ plot: { x: i.value.width / 2, y: i.value.height / 2 },
656
+ radius: o,
657
+ sides: Ne.value,
658
+ rotation: 0
659
+ }).path,
660
+ fill: "none",
661
+ stroke: e.value.style.chart.layout.grid.stroke,
662
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth
663
+ }, null, 8, ia))), 256))
664
+ ])) : d("", !0)
665
+ ])) : d("", !0),
666
+ _("path", {
667
+ d: Le.value.path,
668
+ fill: "none",
669
+ stroke: e.value.style.chart.layout.outerPolygon.stroke,
670
+ "stroke-width": e.value.style.chart.layout.outerPolygon.strokeWidth,
671
+ "stroke-linejoin": "round",
672
+ "stroke-linecap": "round"
673
+ }, null, 8, ca),
674
+ e.value.style.chart.layout.labels.dataLabels.show ? (n(), u("g", va, [
675
+ (n(!0), u(S, null, I(A.value, (o, l) => (n(), u("text", {
676
+ class: "vue-ui-radar-apex-label",
677
+ x: o.labelX,
678
+ y: o.labelY,
679
+ "text-anchor": o.labelAnchor,
680
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
681
+ fill: e.value.style.chart.layout.labels.dataLabels.color,
682
+ onMouseenter: (s) => bt(o, l),
683
+ onMouseleave: (s) => yt(o, l),
684
+ onClick: (s) => mt(o, l)
685
+ }, E(o.name), 41, da))), 256))
686
+ ])) : d("", !0),
687
+ (n(!0), u(S, null, I(y.value, (o, l) => (n(), u("g", null, [
688
+ _("g", null, [
689
+ e.value.useCssAnimation || !e.value.useCssAnimation && !p.value.includes(l) ? (n(), u("polygon", {
690
+ key: 0,
691
+ points: r(He)(A.value.map((s) => s.plots[l]), !1, !0),
692
+ stroke: e.value.style.chart.backgroundColor,
693
+ "stroke-width": e.value.style.chart.layout.dataPolygon.strokeWidth + 1,
694
+ fill: "none",
695
+ class: X({ "animated-out": p.value.includes(l) && e.value.useCssAnimation, "animated-in": z.value && W.value === l && e.value.useCssAnimation })
696
+ }, null, 10, pa)) : d("", !0),
697
+ e.value.useCssAnimation || !e.value.useCssAnimation && !p.value.includes(l) ? (n(), u("polygon", {
698
+ key: 1,
699
+ points: r(He)(A.value.map((s) => s.plots[l]), !1, !0),
700
+ stroke: o.color,
701
+ "stroke-width": e.value.style.chart.layout.dataPolygon.strokeWidth,
702
+ fill: e.value.style.chart.layout.dataPolygon.transparent ? "transparent" : e.value.style.chart.layout.dataPolygon.useGradient ? `url(#radar_gradient_${b.value}_${l})` : r(ve)(o.color, e.value.style.chart.layout.dataPolygon.opacity),
703
+ class: X({ "animated-out": p.value.includes(l) && e.value.useCssAnimation, "animated-in": z.value && W.value === l && e.value.useCssAnimation })
704
+ }, null, 10, ha)) : d("", !0)
705
+ ])
706
+ ]))), 256)),
707
+ e.value.style.chart.layout.plots.show ? (n(), u("g", ga, [
708
+ (n(!0), u(S, null, I(A.value, (o, l) => (n(), u("g", null, [
709
+ (n(!0), u(S, null, I(o.plots, (s, m) => (n(), u("circle", {
710
+ cx: s.x,
711
+ cy: s.y,
712
+ fill: p.value.includes(m) ? "transparent" : y.value[m] ? y.value[m].color : "transparent",
713
+ r: j.value !== null && j.value === l ? e.value.style.chart.layout.plots.radius * 1.6 : e.value.style.chart.layout.plots.radius,
714
+ stroke: p.value.includes(m) ? "transparent" : e.value.style.chart.backgroundColor,
715
+ "stroke-width": 0.5,
716
+ class: X({ "animated-out": p.value.includes(m) && e.value.useCssAnimation, "animated-in": z.value && W.value === m && e.value.useCssAnimation })
717
+ }, null, 10, fa))), 256))
718
+ ]))), 256))
719
+ ])) : d("", !0),
720
+ g(t.$slots, "svg", { svg: i.value }, void 0, !0)
721
+ ], 14, ta)),
722
+ t.$slots.watermark ? (n(), u("div", ya, [
723
+ g(t.$slots, "watermark", B(M({ isPrinting: r(Ae) || r(Pe) })), void 0, !0)
724
+ ])) : d("", !0),
725
+ _("div", {
726
+ id: `legend-bottom-${b.value}`
727
+ }, null, 8, ma),
728
+ Ce.value ? (n(), P(_t, {
729
+ key: 5,
730
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${b.value}` : `#legend-bottom-${b.value}`
731
+ }, [
732
+ _("div", {
733
+ ref_key: "chartLegend",
734
+ ref: ge
735
+ }, [
736
+ e.value.style.chart.legend.show ? (n(), P(Kt, {
737
+ key: `legend_${ke.value}`,
738
+ legendSet: D.value,
739
+ config: ft.value,
740
+ onClickMarker: a[0] || (a[0] = ({ i: o }) => Se(o))
741
+ }, {
742
+ item: h(({ legend: o, index: l }) => [
743
+ r(we) ? d("", !0) : (n(), u("div", {
744
+ key: 0,
745
+ onClick: (s) => o.segregate(),
746
+ style: J(`opacity:${p.value.includes(l) ? 0.5 : 1}`)
747
+ }, E(o.name) + ": " + E(r(Y)({
748
+ v: o.totalProportion * 100,
749
+ s: "%",
750
+ r: e.value.style.chart.legend.roundingPercentage
751
+ })), 13, ba))
752
+ ]),
753
+ _: 1
754
+ }, 8, ["legendSet", "config"])) : g(t.$slots, "legend", {
755
+ key: 1,
756
+ legend: D.value
757
+ }, void 0, !0)
758
+ ], 512)
759
+ ], 8, ["to"])) : d("", !0),
760
+ t.$slots.source ? (n(), u("div", {
761
+ key: 6,
762
+ ref_key: "source",
763
+ ref: fe,
764
+ dir: "auto"
765
+ }, [
766
+ g(t.$slots, "source", {}, void 0, !0)
767
+ ], 512)) : d("", !0),
768
+ K(r(Qe), {
769
+ show: f.value.showTooltip && Q.value,
770
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
771
+ color: e.value.style.chart.tooltip.color,
772
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
773
+ borderColor: e.value.style.chart.tooltip.borderColor,
774
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
775
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
776
+ fontSize: e.value.style.chart.tooltip.fontSize,
777
+ position: e.value.style.chart.tooltip.position,
778
+ offsetY: e.value.style.chart.tooltip.offsetY,
779
+ parent: C.value,
780
+ content: Z.value,
781
+ isFullscreen: F.value,
782
+ isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function",
783
+ smooth: e.value.style.chart.tooltip.smooth,
784
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter
785
+ }, {
786
+ "tooltip-before": h(() => [
787
+ g(t.$slots, "tooltip-before", B(M({ ...se.value })), void 0, !0)
788
+ ]),
789
+ "tooltip-after": h(() => [
790
+ ["function"].includes(typeof e.value.style.chart.tooltip.customFormat) ? d("", !0) : (n(), u("div", ka, [
791
+ K(r(et), {
792
+ dataset: ne.value,
793
+ config: ct.value,
794
+ backgroundOpacity: 0
795
+ }, null, 8, ["dataset", "config"])
796
+ ])),
797
+ g(t.$slots, "tooltip-after", B(M({ ...se.value })), void 0, !0)
798
+ ]),
799
+ _: 3
800
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "fontSize", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter"]),
801
+ de.value ? (n(), P(Tt(G.value.component), At({ key: 7 }, G.value.props, {
802
+ ref_key: "tableUnit",
803
+ ref: V,
804
+ onClose: a[3] || (a[3] = (o) => f.value.showTable = !1)
805
+ }), Ue({
806
+ content: h(() => [
807
+ (n(), P(r(at), {
808
+ key: `table_${be.value}`,
809
+ colNames: H.value.colNames,
810
+ head: H.value.head,
811
+ body: H.value.body,
812
+ config: H.value.config,
813
+ title: e.value.table.useDialog ? "" : G.value.title,
814
+ withCloseButton: !e.value.table.useDialog,
815
+ onClose: a[2] || (a[2] = (o) => f.value.showTable = !1)
816
+ }, {
817
+ th: h(({ th: o }) => [
818
+ ce(E(o.name), 1)
819
+ ]),
820
+ td: h(({ td: o }) => [
821
+ ce(E(o), 1)
822
+ ]),
823
+ _: 1
824
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
825
+ ]),
826
+ _: 2
827
+ }, [
828
+ e.value.table.useDialog ? {
829
+ name: "title",
830
+ fn: h(() => [
831
+ ce(E(G.value.title), 1)
832
+ ]),
833
+ key: "0"
834
+ } : void 0,
835
+ e.value.table.useDialog ? {
836
+ name: "actions",
837
+ fn: h(() => [
838
+ _("button", {
839
+ tabindex: "0",
840
+ class: "vue-ui-user-options-button",
841
+ onClick: a[1] || (a[1] = (o) => re(e.value.userOptions.callbacks.csv))
842
+ }, [
843
+ K(r(Ze), {
844
+ name: "excel",
845
+ stroke: G.value.props.color
846
+ }, null, 8, ["stroke"])
847
+ ])
848
+ ]),
849
+ key: "1"
850
+ } : void 0
851
+ ]), 1040)) : d("", !0),
852
+ r(we) ? (n(), P(Gt, { key: 8 })) : d("", !0)
853
+ ], 46, Zt));
854
+ }
855
+ }, za = /* @__PURE__ */ Qt(Ca, [["__scopeId", "data-v-97b97b94"]]);
856
+ export {
857
+ za as default
858
+ };