vue-data-ui 3.3.3 → 3.4.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 (160) hide show
  1. package/dist/{Arrow-ayTeSvpe.js → Arrow-CRe_nKB4.js} +1 -1
  2. package/dist/{BaseDraggableDialog-Cysanw8-.js → BaseDraggableDialog-CbuLbfrc.js} +2 -2
  3. package/dist/{BaseIcon-DG6cvf2h.js → BaseIcon-B5KaGWWC.js} +1 -1
  4. package/dist/{ColorPicker-CA8kKZjZ.js → ColorPicker-BMztHpBp.js} +10 -10
  5. package/dist/{DataTable-DUpZ_s2c.js → DataTable-DOx3zgih.js} +2 -2
  6. package/dist/{Legend-CCBZ2x8T.js → Legend-C8u37J42.js} +2 -2
  7. package/dist/{NonSvgPenAndPaper-D2IMGwaN.js → NonSvgPenAndPaper-BcxfJ-r2.js} +3 -3
  8. package/dist/{PackageVersion-CQvYRebC.js → PackageVersion-VpPtLYhK.js} +1 -1
  9. package/dist/{PenAndPaper-D9LruJaM.js → PenAndPaper-Dj2diYr0.js} +3 -3
  10. package/dist/{Shape-BS9UGhNq.js → Shape-BhNvlGIN.js} +1 -1
  11. package/dist/{Slicer-BOki89CB.js → Slicer-BHgEsIBU.js} +111 -111
  12. package/dist/SlicerPreview-Cobmb_1S.js +1148 -0
  13. package/dist/{SparkTooltip-svd8Hb6c.js → SparkTooltip-CL3cNRQ_.js} +1 -1
  14. package/dist/{Title-B6rAo9Oz.js → Title-CFmv95In.js} +1 -1
  15. package/dist/{Tooltip-DaInVNiV.js → Tooltip-Cs4v8OnI.js} +1 -1
  16. package/dist/{UserOptions-CJXSEhan.js → UserOptions-C0YT60JN.js} +2 -2
  17. package/dist/components/arrow.js +1 -1
  18. package/dist/components/vue-ui-3d-bar.js +1 -1
  19. package/dist/components/vue-ui-accordion.js +1 -1
  20. package/dist/components/vue-ui-age-pyramid.js +1 -1
  21. package/dist/components/vue-ui-annotator.js +1 -1
  22. package/dist/components/vue-ui-bullet.js +1 -1
  23. package/dist/components/vue-ui-candlestick.js +1 -1
  24. package/dist/components/vue-ui-carousel-table.js +1 -1
  25. package/dist/components/vue-ui-chestnut.js +1 -1
  26. package/dist/components/vue-ui-chord.js +1 -1
  27. package/dist/components/vue-ui-circle-pack.js +1 -1
  28. package/dist/components/vue-ui-cursor.js +1 -1
  29. package/dist/components/vue-ui-dashboard.js +1 -1
  30. package/dist/components/vue-ui-digits.js +1 -1
  31. package/dist/components/vue-ui-donut-evolution.js +1 -1
  32. package/dist/components/vue-ui-donut.js +1 -1
  33. package/dist/components/vue-ui-dumbbell.js +1 -1
  34. package/dist/components/vue-ui-flow.js +1 -1
  35. package/dist/components/vue-ui-funnel.js +1 -1
  36. package/dist/components/vue-ui-galaxy.js +1 -1
  37. package/dist/components/vue-ui-gauge.js +1 -1
  38. package/dist/components/vue-ui-gizmo.js +1 -1
  39. package/dist/components/vue-ui-heatmap.js +1 -1
  40. package/dist/components/vue-ui-history-plot.js +1 -1
  41. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  42. package/dist/components/vue-ui-icon.js +1 -1
  43. package/dist/components/vue-ui-kpi.js +1 -1
  44. package/dist/components/vue-ui-mini-loader.js +1 -1
  45. package/dist/components/vue-ui-molecule.js +1 -1
  46. package/dist/components/vue-ui-mood-radar.js +1 -1
  47. package/dist/components/vue-ui-nested-donuts.js +1 -1
  48. package/dist/components/vue-ui-onion.js +1 -1
  49. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  50. package/dist/components/vue-ui-quadrant.js +1 -1
  51. package/dist/components/vue-ui-quick-chart.js +1 -1
  52. package/dist/components/vue-ui-radar.js +1 -1
  53. package/dist/components/vue-ui-rating.js +1 -1
  54. package/dist/components/vue-ui-relation-circle.js +1 -1
  55. package/dist/components/vue-ui-ridgeline.js +1 -1
  56. package/dist/components/vue-ui-rings.js +1 -1
  57. package/dist/components/vue-ui-scatter.js +1 -1
  58. package/dist/components/vue-ui-skeleton.js +1 -1
  59. package/dist/components/vue-ui-smiley.js +1 -1
  60. package/dist/components/vue-ui-spark-trend.js +1 -1
  61. package/dist/components/vue-ui-sparkbar.js +1 -1
  62. package/dist/components/vue-ui-sparkgauge.js +1 -1
  63. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  64. package/dist/components/vue-ui-sparkline.js +1 -1
  65. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  66. package/dist/components/vue-ui-stackbar.js +1 -1
  67. package/dist/components/vue-ui-strip-plot.js +1 -1
  68. package/dist/components/vue-ui-table-heatmap.js +1 -1
  69. package/dist/components/vue-ui-table-sparkline.js +1 -1
  70. package/dist/components/vue-ui-table.js +1 -1
  71. package/dist/components/vue-ui-thermometer.js +1 -1
  72. package/dist/components/vue-ui-timer.js +1 -1
  73. package/dist/components/vue-ui-tiremarks.js +1 -1
  74. package/dist/components/vue-ui-treemap.js +1 -1
  75. package/dist/components/vue-ui-vertical-bar.js +1 -1
  76. package/dist/components/vue-ui-waffle.js +1 -1
  77. package/dist/components/vue-ui-wheel.js +1 -1
  78. package/dist/components/vue-ui-word-cloud.js +1 -1
  79. package/dist/components/vue-ui-world.js +1 -1
  80. package/dist/components/vue-ui-xy-canvas.js +1 -1
  81. package/dist/components/vue-ui-xy.js +1 -1
  82. package/dist/{dom-to-png-Tq92GZKA.js → dom-to-png-xQ7LXrxp.js} +1 -1
  83. package/dist/{img-DI-W68vp.js → img-CFY3JivG.js} +1 -1
  84. package/dist/{lib-CSDxt1Zh.js → lib-BcBZIm6u.js} +439 -395
  85. package/dist/{pdf-BzVpWnNO.js → pdf-O34i6EQX.js} +1 -1
  86. package/dist/style.css +1 -1
  87. package/dist/types/vue-data-ui.d.ts +82 -8
  88. package/dist/{useAutoSizeLabelsInsideViewbox-CtQ7pJ8G.js → useAutoSizeLabelsInsideViewbox-BHq4FD8x.js} +1 -1
  89. package/dist/{useNestedProp-Dh-ldrr5.js → useNestedProp-B7CiTRDS.js} +327 -240
  90. package/dist/{usePrinter-Cq8Pt6Lh.js → usePrinter-C1GiglOH.js} +2 -2
  91. package/dist/{vue-data-ui-CDY7snWF.js → vue-data-ui-oDJui39L.js} +64 -64
  92. package/dist/vue-data-ui.js +100 -100
  93. package/dist/{vue-ui-3d-bar-DbpiTjGu.js → vue-ui-3d-bar-wycTM073.js} +56 -56
  94. package/dist/{vue-ui-accordion-CaClZrCp.js → vue-ui-accordion-BKkTS12x.js} +3 -3
  95. package/dist/{vue-ui-age-pyramid-DuIxXz5p.js → vue-ui-age-pyramid-C5NUZ_Y7.js} +39 -39
  96. package/dist/{vue-ui-annotator-C2efSKQK.js → vue-ui-annotator-DkSYrnwb.js} +7 -7
  97. package/dist/{vue-ui-bullet-qpcqLKmp.js → vue-ui-bullet-CIsX5UJw.js} +7 -7
  98. package/dist/vue-ui-candlestick-BRFx3_KK.js +1334 -0
  99. package/dist/{vue-ui-carousel-table-CCTtArFX.js → vue-ui-carousel-table-hJySHJTu.js} +29 -29
  100. package/dist/{vue-ui-chestnut-CbvxJ8hy.js → vue-ui-chestnut-D4GjvQh0.js} +70 -70
  101. package/dist/{vue-ui-chord-Cp9nyIdv.js → vue-ui-chord-By2NOs0N.js} +35 -35
  102. package/dist/{vue-ui-circle-pack-kHzd0UYO.js → vue-ui-circle-pack-OCmAkTNs.js} +59 -59
  103. package/dist/{vue-ui-cursor-DEvkJRCz.js → vue-ui-cursor-iuati4v1.js} +2 -2
  104. package/dist/{vue-ui-dashboard-k_mz9iwy.js → vue-ui-dashboard-C7fwU9xb.js} +67 -67
  105. package/dist/{vue-ui-digits-CqWCkEu2.js → vue-ui-digits-eYxf3UFN.js} +2 -2
  106. package/dist/{vue-ui-donut-CDKS6sVu.js → vue-ui-donut-dVVBUQJz.js} +189 -189
  107. package/dist/{vue-ui-donut-evolution-C6cGI_P3.js → vue-ui-donut-evolution-BoWGaQP0.js} +82 -82
  108. package/dist/{vue-ui-dumbbell-ZjJst3xs.js → vue-ui-dumbbell-YMPZ3CVA.js} +66 -66
  109. package/dist/{vue-ui-flow-sX1PYIkr.js → vue-ui-flow-BE62rVS3.js} +75 -75
  110. package/dist/{vue-ui-funnel--VViM9gH.js → vue-ui-funnel-kNpDFAWo.js} +63 -63
  111. package/dist/{vue-ui-galaxy-Du0V9GF8.js → vue-ui-galaxy-BBBiXXyk.js} +62 -62
  112. package/dist/{vue-ui-gauge-BAe4p2g-.js → vue-ui-gauge-PQNTTl3Y.js} +58 -58
  113. package/dist/{vue-ui-gizmo-CfjwAt38.js → vue-ui-gizmo-D3gQxQz3.js} +3 -3
  114. package/dist/{vue-ui-heatmap-Q0jrPM5h.js → vue-ui-heatmap-CKWQButF.js} +104 -104
  115. package/dist/{vue-ui-history-plot-CLSN3mPy.js → vue-ui-history-plot-DYFzdR4Z.js} +91 -91
  116. package/dist/{vue-ui-kpi-CBRgXD1s.js → vue-ui-kpi-N8s0i48S.js} +3 -3
  117. package/dist/{vue-ui-mini-loader-3yCeDEPK.js → vue-ui-mini-loader-Db-9iQcC.js} +2 -2
  118. package/dist/{vue-ui-molecule-Ddh4hbX0.js → vue-ui-molecule-Cklyb74B.js} +102 -102
  119. package/dist/{vue-ui-mood-radar-CK8UF-ka.js → vue-ui-mood-radar-Cvq4ZuLe.js} +28 -28
  120. package/dist/{vue-ui-nested-donuts-DO0FV0tU.js → vue-ui-nested-donuts-Bm78P1ES.js} +60 -60
  121. package/dist/{vue-ui-onion-DXLqoj-4.js → vue-ui-onion-Bh5jTb31.js} +46 -46
  122. package/dist/{vue-ui-parallel-coordinate-plot-BlffHAHB.js → vue-ui-parallel-coordinate-plot-BKdN2OsW.js} +64 -64
  123. package/dist/{vue-ui-quadrant-pw2ALj7p.js → vue-ui-quadrant-BPhJzots.js} +8 -8
  124. package/dist/{vue-ui-quick-chart-9oGbV593.js → vue-ui-quick-chart-DbJR9CN3.js} +86 -86
  125. package/dist/vue-ui-radar-CrenQprr.js +938 -0
  126. package/dist/{vue-ui-rating-C4yZY1sb.js → vue-ui-rating-fR2WRHYO.js} +2 -2
  127. package/dist/{vue-ui-relation-circle-Duxv-A4H.js → vue-ui-relation-circle-BJ5RuZ0j.js} +31 -31
  128. package/dist/{vue-ui-ridgeline-B-q7J-C0.js → vue-ui-ridgeline-CKuom5Bu.js} +97 -97
  129. package/dist/{vue-ui-rings-PRAcmP1H.js → vue-ui-rings-B84GAEf4.js} +50 -50
  130. package/dist/{vue-ui-scatter-BLW4MJtJ.js → vue-ui-scatter-CBX-g9w3.js} +100 -100
  131. package/dist/{vue-ui-skeleton-D0PF0jxa.js → vue-ui-skeleton-CZ8xxpEU.js} +3 -3
  132. package/dist/{vue-ui-smiley-Be44gMTh.js → vue-ui-smiley-BKXuAviQ.js} +2 -2
  133. package/dist/{vue-ui-spark-trend-B2XY2dRa.js → vue-ui-spark-trend-DOf7-cIf.js} +18 -18
  134. package/dist/{vue-ui-sparkbar-DWQN4gvR.js → vue-ui-sparkbar-D-MPA2zf.js} +3 -3
  135. package/dist/{vue-ui-sparkgauge-fDhQGQ12.js → vue-ui-sparkgauge-B9xRiVSU.js} +6 -6
  136. package/dist/{vue-ui-sparkhistogram-f7Acvipt.js → vue-ui-sparkhistogram-BWb0lqQP.js} +4 -4
  137. package/dist/{vue-ui-sparkline-Ys3JW7Ap.js → vue-ui-sparkline-BF-qr8Ti.js} +23 -23
  138. package/dist/{vue-ui-sparkstackbar-Dv0HeSna.js → vue-ui-sparkstackbar-DnCUpk50.js} +17 -17
  139. package/dist/vue-ui-stackbar-DvJ8Hahn.js +1695 -0
  140. package/dist/{vue-ui-strip-plot-DN13ntF-.js → vue-ui-strip-plot-SAh1gIs5.js} +52 -52
  141. package/dist/{vue-ui-table-Qb5tDX1n.js → vue-ui-table-BJdDfMYD.js} +18 -18
  142. package/dist/{vue-ui-table-heatmap-hMrgJ25a.js → vue-ui-table-heatmap-DU6GKPVy.js} +32 -32
  143. package/dist/{vue-ui-table-sparkline-CdkFyJjv.js → vue-ui-table-sparkline-BBFEJ8c6.js} +28 -28
  144. package/dist/{vue-ui-thermometer-D7U2C7kJ.js → vue-ui-thermometer-D8DH6QSN.js} +22 -22
  145. package/dist/{vue-ui-timer-KtA4M2mV.js → vue-ui-timer-CaUdAHBE.js} +29 -29
  146. package/dist/{vue-ui-tiremarks-C6GTGszq.js → vue-ui-tiremarks-_sUH1d3J.js} +14 -14
  147. package/dist/{vue-ui-treemap-rhnl1TW9.js → vue-ui-treemap-DXduzuW4.js} +78 -78
  148. package/dist/{vue-ui-vertical-bar-n_Lvbd_X.js → vue-ui-vertical-bar-JdjmgwQj.js} +94 -94
  149. package/dist/{vue-ui-waffle-D-4whGLN.js → vue-ui-waffle-h8zoi4Rc.js} +68 -68
  150. package/dist/{vue-ui-wheel-D92HLjfr.js → vue-ui-wheel-Ck1Mx37j.js} +21 -21
  151. package/dist/{vue-ui-word-cloud-Df9AMw6v.js → vue-ui-word-cloud-CjWvuukM.js} +47 -47
  152. package/dist/{vue-ui-world-Bg9S35ug.js → vue-ui-world-Dw71_Mu2.js} +6 -6
  153. package/dist/vue-ui-xy-canvas-Dct7tf8w.js +1548 -0
  154. package/dist/vue-ui-xy-tSMgXqqb.js +3375 -0
  155. package/package.json +2 -2
  156. package/dist/vue-ui-candlestick-DTWbbdGH.js +0 -1073
  157. package/dist/vue-ui-radar-Csznqw19.js +0 -891
  158. package/dist/vue-ui-stackbar-DUlN5QiM.js +0 -1457
  159. package/dist/vue-ui-xy-Da6oy2rm.js +0 -4527
  160. package/dist/vue-ui-xy-canvas-0CLSIKpO.js +0 -1305
@@ -0,0 +1,938 @@
1
+ import { defineAsyncComponent as $, computed as v, ref as c, toRefs as Lt, watch as ve, shallowRef as Ye, onMounted as Nt, onBeforeUnmount as Rt, createElementBlock as r, openBlock as s, unref as u, normalizeStyle as K, normalizeClass as H, createBlock as P, createCommentVNode as p, createElementVNode as k, createVNode as Z, createSlots as He, withCtx as h, renderSlot as f, normalizeProps as E, guardReactiveProps as M, Fragment as L, renderList as N, toDisplayString as R, Teleport as Dt, resolveDynamicComponent as zt, mergeProps as Vt, createTextVNode as de, nextTick as je } from "vue";
2
+ import { c as Bt, t as Ut, b as Et, p as D, o as Mt, f as z, e as Gt, h as qe, k as Qe, x as Wt, d as G, a as pe, X as Xt, s as he, i as Yt, a8 as Je, g as Ke, P as Ht, Q as jt, G as qt, H as Qt } from "./lib-BcBZIm6u.js";
3
+ import { t as Jt, u as Kt } from "./useResponsive-DfdjqQps.js";
4
+ import { u as Zt, a as Ze } from "./useNestedProp-B7CiTRDS.js";
5
+ import { u as ea, B as ta } from "./BaseScanner-BgWxam9d.js";
6
+ import { u as aa } from "./usePrinter-C1GiglOH.js";
7
+ import { u as oa } from "./useUserOptionState-BIvW1Kz7.js";
8
+ import { u as la } from "./useChartAccessibility-9icAAmYg.js";
9
+ import { u as sa } from "./useAutoSizeLabelsInsideViewbox-BHq4FD8x.js";
10
+ import na from "./img-CFY3JivG.js";
11
+ import ra from "./Title-CFmv95In.js";
12
+ import ua from "./Legend-C8u37J42.js";
13
+ import { t as ia } from "./themes-Dw-dDudK.js";
14
+ import { u as ca } from "./useSvgExport-DrjCWun4.js";
15
+ import { _ as va } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
+ const da = ["id"], pa = ["id"], ha = ["xmlns", "viewBox"], ga = ["width", "height"], fa = ["id"], ya = ["stop-color"], ma = ["stop-color"], ba = { key: 1 }, ka = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], Ca = { key: 0 }, wa = ["d", "stroke", "stroke-width"], _a = ["d", "stroke", "stroke-width"], $a = { key: 2 }, Ta = ["x", "y", "text-anchor", "font-size", "fill", "onMouseenter", "onMouseleave", "onClick"], Aa = ["points", "stroke", "stroke-width"], Pa = ["points", "stroke", "stroke-width", "fill"], Sa = { key: 3 }, xa = ["cx", "cy", "fill", "r", "stroke"], Oa = {
17
+ key: 4,
18
+ class: "vue-data-ui-watermark"
19
+ }, Fa = ["id"], Ia = ["onClick"], La = {
20
+ key: 0,
21
+ style: { "max-width": "200px", margin: "0 auto" }
22
+ }, Na = {
23
+ class: "vue-ui-radar-tooltip-datalabel",
24
+ style: { width: "100%" }
25
+ }, Ra = { class: "vue-ui-radar-tooltip-datalabel-name" }, Da = { key: 0 }, za = {
26
+ __name: "vue-ui-radar",
27
+ props: {
28
+ config: {
29
+ type: Object,
30
+ default() {
31
+ return {};
32
+ }
33
+ },
34
+ dataset: {
35
+ type: Object,
36
+ default() {
37
+ return {};
38
+ }
39
+ }
40
+ },
41
+ emits: ["selectLegend"],
42
+ setup(et, { expose: tt, emit: at }) {
43
+ const ot = $(() => import("./Tooltip-Cs4v8OnI.js")), lt = $(() => import("./BaseIcon-B5KaGWWC.js")), st = $(() => import("./vue-ui-sparkbar-D-MPA2zf.js")), nt = $(() => import("./vue-ui-accordion-BKkTS12x.js")), rt = $(() => import("./DataTable-DOx3zgih.js")), ut = $(() => import("./PenAndPaper-Dj2diYr0.js")), it = $(() => import("./UserOptions-C0YT60JN.js")), ct = $(() => import("./PackageVersion-VpPtLYhK.js")), vt = $(() => import("./BaseDraggableDialog-CbuLbfrc.js")), { vue_ui_radar: dt } = Zt(), S = et, ge = v(() => !!S.dataset && Object.keys(S.dataset).length), b = c(Bt()), ee = c(!1), te = c(""), fe = c(0), _ = c(null), ye = c(null), me = c(null), be = c(null), ke = c(null), Ce = c(0), we = c(0), _e = c(0), $e = c(!1), W = c(null), ae = c(null), e = c(le()), { loading: Te, FINAL_DATASET: x } = ea({
44
+ ...Lt(S),
45
+ FINAL_CONFIG: e,
46
+ prepareConfig: le,
47
+ callback: () => {
48
+ Promise.resolve().then(async () => {
49
+ await je(), y.value.showTable = e.value.table.show;
50
+ });
51
+ },
52
+ skeletonDataset: {
53
+ categories: [{ name: "_", color: "#6A6A6A" }],
54
+ series: [
55
+ { name: "_", values: [0.6], target: 1 },
56
+ { name: "_", values: [0.6], target: 1 },
57
+ { name: "_", values: [0.6], target: 1 },
58
+ { name: "_", values: [0.6], target: 1 },
59
+ { name: "_", values: [0.6], target: 1 },
60
+ { name: "_", values: [0.6], target: 1 }
61
+ ]
62
+ },
63
+ skeletonConfig: Ut({
64
+ defaultConfig: e.value,
65
+ userConfig: {
66
+ userOptions: { show: !1 },
67
+ table: { show: !1 },
68
+ useCssAnimation: !1,
69
+ style: {
70
+ chart: {
71
+ backgroundColor: "#99999930",
72
+ layout: {
73
+ grid: {
74
+ stroke: "#6A6A6A90"
75
+ },
76
+ labels: {
77
+ dataLabels: { show: !1 }
78
+ },
79
+ outerPolygon: {
80
+ stroke: "#6A6A6A"
81
+ }
82
+ },
83
+ legend: {
84
+ backgroundColor: "transparent"
85
+ }
86
+ }
87
+ }
88
+ }
89
+ })
90
+ }), { userOptionsVisible: oe, setUserOptionsVisibility: Ae, keepUserOptionState: Pe } = oa({ config: e.value }), { svgRef: j } = la({ config: e.value.style.chart.title });
91
+ function le() {
92
+ const t = Ze({
93
+ userConfig: S.config,
94
+ defaultConfig: dt
95
+ });
96
+ return t.theme ? {
97
+ ...Ze({
98
+ userConfig: ia.vue_ui_radar[t.theme] || S.config,
99
+ defaultConfig: t
100
+ }),
101
+ customPalette: Et[t.theme] || D
102
+ } : t;
103
+ }
104
+ ve(() => S.config, (t) => {
105
+ e.value = le(), oe.value = !e.value.userOptions.showOnChartHover, Se(), Ce.value += 1, we.value += 1, _e.value += 1, y.value.dataLabels.show = e.value.style.chart.layout.labels.dataLabels.show, y.value.showTable = e.value.table.show, y.value.showTooltip = e.value.style.chart.tooltip ? e.value.style.chart.tooltip.show : !1;
106
+ }, { deep: !0 });
107
+ const T = Ye(null), V = Ye(null), O = v(() => e.value.debug);
108
+ function Se() {
109
+ if (Mt(S.dataset) && z({
110
+ componentName: "VueUiRadar",
111
+ type: "dataset",
112
+ debug: O.value
113
+ }), e.value.responsive) {
114
+ const t = Jt(() => {
115
+ const { width: o, height: a } = Kt({
116
+ chart: _.value,
117
+ title: e.value.style.chart.title.text ? ye.value : null,
118
+ legend: e.value.style.chart.legend.show ? me.value : null,
119
+ source: be.value,
120
+ noTitle: ke.value
121
+ });
122
+ requestAnimationFrame(() => {
123
+ i.value.width = o, i.value.height = a, Ve();
124
+ });
125
+ });
126
+ T.value && (V.value && T.value.unobserve(V.value), T.value.disconnect()), T.value = new ResizeObserver(t), V.value = _.value.parentNode, T.value.observe(V.value);
127
+ }
128
+ Ve();
129
+ }
130
+ Nt(() => {
131
+ $e.value = !0, Se();
132
+ }), Rt(() => {
133
+ T.value && (V.value && T.value.unobserve(V.value), T.value.disconnect());
134
+ });
135
+ const { isPrinting: xe, isImaging: Oe, generatePdf: Fe, generateImage: Ie } = aa({
136
+ elementId: `vue-ui-radar_${b.value}`,
137
+ fileName: e.value.style.chart.title.text || "vue-ui-radar",
138
+ options: e.value.userOptions.print
139
+ }), pt = v(() => e.value.userOptions.show && !e.value.style.chart.title.text), Le = v(() => Gt(e.value.customPalette)), y = c({
140
+ dataLabels: {
141
+ show: e.value.style.chart.layout.labels.dataLabels.show
142
+ },
143
+ showTable: e.value.table.show,
144
+ showTooltip: e.value.style.chart.tooltip.show
145
+ }), ht = v(() => ({
146
+ style: {
147
+ backgroundColor: "#FFFFFF00",
148
+ animation: {
149
+ show: e.value.style.chart.tooltip.animation.show,
150
+ animationFrames: e.value.style.chart.tooltip.animation.animationFrames
151
+ },
152
+ labels: {
153
+ fontSize: e.value.style.chart.tooltip.fontSize,
154
+ name: {
155
+ color: e.value.style.chart.tooltip.color
156
+ }
157
+ },
158
+ gutter: {
159
+ backgroundColor: "#CCCCCC",
160
+ opacity: 30
161
+ }
162
+ }
163
+ })), i = c({
164
+ height: 312,
165
+ width: 512
166
+ }), gt = at, g = c([]), X = c(null), B = c(!1);
167
+ function Ne(t) {
168
+ B.value = !0, g.value.includes(t) ? (X.value = t, g.value = g.value.filter((o) => o !== t), setTimeout(() => {
169
+ B.value = !1, X.value = null;
170
+ }, 500)) : (g.value.push(t), setTimeout(() => {
171
+ B.value = !1;
172
+ }, 500)), gt("selectLegend", F.value.filter((o, a) => !g.value.includes(a)).map((o) => ({
173
+ name: o.name,
174
+ color: o.color,
175
+ proportion: o.totalProportion
176
+ })));
177
+ }
178
+ function ft() {
179
+ return F.value.map((t) => ({
180
+ name: t.name,
181
+ color: t.color,
182
+ proportion: t.totalProportion
183
+ }));
184
+ }
185
+ function yt() {
186
+ const t = x.value;
187
+ if ([null, void 0].includes(t?.categories)) {
188
+ z({
189
+ componentName: "VueUiRadar",
190
+ type: "dataset",
191
+ debug: O.value
192
+ }), z({
193
+ componentName: "VueUiRadar",
194
+ type: "datasetAttribute",
195
+ property: "categories ({ name: string; prefix?: string; suffix?: string}[])",
196
+ debug: O.value
197
+ });
198
+ return;
199
+ }
200
+ t.categories.length === 0 ? z({
201
+ componentName: "VueUiRadar",
202
+ type: "datasetAttributeEmpty",
203
+ property: "categories",
204
+ debug: O.value
205
+ }) : t.categories.forEach((o, a) => {
206
+ Ke({
207
+ datasetObject: o,
208
+ requiredAttributes: ["name"]
209
+ }).forEach((l) => {
210
+ z({
211
+ componentName: "VueUiRadar",
212
+ type: "datasetAttribute",
213
+ property: `category.${l} at index ${a}`,
214
+ index: a,
215
+ debug: O.value
216
+ });
217
+ });
218
+ }), [null, void 0].includes(t?.series) ? z({
219
+ componentName: "VueUiRadar",
220
+ type: "datasetAttribute",
221
+ property: "series ({ name: string; values: number[]; color?: string; target: number}[])",
222
+ debug: O.value
223
+ }) : t.series.forEach((o, a) => {
224
+ Ke({
225
+ datasetObject: o,
226
+ requiredAttributes: ["name", "values", "target"]
227
+ }).forEach((l) => {
228
+ z({
229
+ componentName: "VueUiRadar",
230
+ type: "datasetSerieAttribute",
231
+ key: "series",
232
+ property: l,
233
+ index: a,
234
+ debug: O.value
235
+ });
236
+ });
237
+ });
238
+ }
239
+ ve(
240
+ () => x.value,
241
+ () => yt(),
242
+ { deep: !0, immediate: !0 }
243
+ );
244
+ const C = v(() => {
245
+ const t = Array.isArray(x.value?.categories) ? x.value.categories : [], o = Le.value ?? D;
246
+ return t.map((a, l) => ({
247
+ name: a?.name ?? "",
248
+ categoryId: `radar_category_${b.value}_${l}`,
249
+ color: qe(a?.color) || o[l] || D[l % D.length],
250
+ prefix: a?.prefix ?? "",
251
+ suffix: a?.suffix ?? ""
252
+ }));
253
+ }), w = v(() => x.value.series.map((t, o) => ({
254
+ ...t,
255
+ color: qe(t.color) || Le.value[o] || D[o] || D[o % D.length],
256
+ serieId: `radar_serie_${b.value}_${o}`,
257
+ formatter: t.formatter || null
258
+ }))), Re = v(() => Math.max(...w.value.flatMap((t) => t.values))), De = v(() => w.value.length), se = v(() => Math.min(i.value.width, i.value.height) / 3), ze = v(() => Qe({
259
+ plot: { x: i.value.width / 2, y: i.value.height / 2 },
260
+ radius: se.value,
261
+ sides: De.value,
262
+ rotation: 0
263
+ })), mt = v(() => {
264
+ const t = [];
265
+ for (let o = 0; o < se.value; o += se.value / e.value.style.chart.layout.grid.graduations)
266
+ t.push(o);
267
+ return t;
268
+ }), A = v(() => ze.value.coordinates.map((t, o) => {
269
+ const a = w.value[o].values.map((l) => kt({
270
+ centerX: i.value.width / 2,
271
+ centerY: i.value.height / 2,
272
+ apexX: t.x,
273
+ apexY: t.y,
274
+ proportion: l / (w.value[o].target || Re.value)
275
+ }));
276
+ return {
277
+ ...t,
278
+ ...w.value[o],
279
+ plots: a
280
+ };
281
+ }).map((t) => ({
282
+ ...t,
283
+ labelX: ne(t).x,
284
+ labelY: ne(t).y,
285
+ labelAnchor: ne(t).anchor
286
+ })));
287
+ function ne({ x: t, y: o }) {
288
+ let a = "middle";
289
+ return t = Math.round(t), o = Math.round(o), t > i.value.width / 2 && (t += 12, a = "start"), t < i.value.width / 2 && (t -= 12, a = "end"), o > i.value.height / 2 + 1 && (o += 20), o < i.value.height / 2 - 1 && (o -= 12), o === i.value.height / 2 && (o += 4), { x: t, y: o, anchor: a };
290
+ }
291
+ const bt = v({
292
+ get: () => e.value.style.chart.layout.labels.dataLabels.fontSize,
293
+ set: (t) => t
294
+ }), { autoSizeLabels: Ve } = sa({
295
+ svgRef: j,
296
+ fontSize: e.value.style.chart.layout.labels.dataLabels.fontSize,
297
+ minFontSize: 6,
298
+ sizeRef: bt,
299
+ labelClass: ".vue-ui-radar-apex-label"
300
+ });
301
+ function kt({ centerX: t, centerY: o, apexX: a, apexY: l, proportion: n }) {
302
+ return {
303
+ x: t + (a - t) * n,
304
+ y: o + (l - o) * n
305
+ };
306
+ }
307
+ const F = v(() => {
308
+ const t = w.value.map((o, a) => o.values.map((l) => l / (o.target || Re.value)));
309
+ return C.value.map((o, a) => {
310
+ const l = Wt(t.map((n) => n[a]).reduce((n, d) => n + d, 0) / w.value.length);
311
+ return {
312
+ ...o,
313
+ totalProportion: l,
314
+ shape: "circle",
315
+ opacity: g.value.includes(a) ? 0.5 : 1,
316
+ segregate: () => Ne(a),
317
+ isSegregated: g.value.includes(a),
318
+ display: `${o.name}: ${G({
319
+ v: (l ?? 0) * 100,
320
+ s: "%",
321
+ r: e.value.style.chart.legend.roundingPercentage
322
+ })}`
323
+ };
324
+ });
325
+ }), Ct = v(() => ({
326
+ cy: "radar-div-legend",
327
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
328
+ color: e.value.style.chart.legend.color,
329
+ fontSize: e.value.style.chart.legend.fontSize,
330
+ paddingBottom: 12,
331
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
332
+ })), q = v(() => {
333
+ const t = [
334
+ { name: e.value.translations.datapoint, color: "" },
335
+ { name: e.value.translations.target, color: "" },
336
+ ...F.value
337
+ ], o = x.value.series.map((l) => [
338
+ l.name,
339
+ pe(
340
+ l.formatter,
341
+ l.target,
342
+ G({
343
+ p: l.prefix,
344
+ v: l.target,
345
+ s: l.suffix,
346
+ r: e.value.table.td.roundingValue
347
+ })
348
+ ),
349
+ ...l.values.map((n, d) => `${pe(
350
+ l.formatter,
351
+ n,
352
+ G({ p: C.value[d]?.prefix ?? "", v: n, s: C.value[d]?.suffix ?? "", r: e.value.table.td.roundingValue })
353
+ )} (${isNaN(n / l.target) ? "" : G({
354
+ v: n / l.target * 100,
355
+ s: "%",
356
+ r: e.value.table.td.roundingPercentage
357
+ })})`)
358
+ ]), a = {
359
+ th: {
360
+ backgroundColor: e.value.table.th.backgroundColor,
361
+ color: e.value.table.th.color,
362
+ outline: e.value.table.th.outline
363
+ },
364
+ td: {
365
+ backgroundColor: e.value.table.td.backgroundColor,
366
+ color: e.value.table.td.color,
367
+ outline: e.value.table.td.outline
368
+ },
369
+ breakpoint: e.value.table.responsiveBreakpoint
370
+ };
371
+ return { head: t, body: o, config: a, colNames: t };
372
+ }), Q = c(null), re = c([]), ue = c(null);
373
+ function wt(t, o) {
374
+ ee.value = !1, Q.value = null, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: o });
375
+ }
376
+ function _t(t, o) {
377
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: o });
378
+ }
379
+ function $t(t, o) {
380
+ e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: o });
381
+ const a = C.value.slice();
382
+ re.value = [], Q.value = o, ee.value = !0, ue.value = {
383
+ datapoint: t,
384
+ seriesIndex: o,
385
+ series: {
386
+ categories: a,
387
+ datapoints: w.value,
388
+ radar: A.value
389
+ },
390
+ config: e.value
391
+ };
392
+ const l = e.value.style.chart.tooltip.customFormat;
393
+ if (qt(l) && Qt(() => l({
394
+ seriesIndex: o,
395
+ datapoint: t,
396
+ series: { categories: a, datapoints: w.value, radar: A.value },
397
+ config: e.value
398
+ }))) {
399
+ te.value = l({
400
+ seriesIndex: o,
401
+ datapoint: t,
402
+ series: { categories: a, datapoints: w.value, radar: A.value },
403
+ config: e.value
404
+ });
405
+ return;
406
+ }
407
+ te.value = `<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>`;
408
+ for (let n = 0; n < t.values.length; n += 1)
409
+ if (!g.value.includes(n)) {
410
+ const d = a[n], m = t.values[n], We = isNaN(m / t.target) ? 0 : m / t.target * 100, U = pe(
411
+ t.formatter,
412
+ m,
413
+ G({
414
+ p: C.value[n].prefix,
415
+ v: m,
416
+ s: C.value[n].suffix,
417
+ r: e.value.style.chart.tooltip.roundingValue
418
+ }),
419
+ { datapoint: t }
420
+ ), Xe = G({
421
+ v: We,
422
+ s: "%",
423
+ r: e.value.style.chart.tooltip.roundingPercentage
424
+ }), It = e.value.style.chart.tooltip.showValue && e.value.style.chart.tooltip.showPercentage ? `${U} (${Xe})` : e.value.style.chart.tooltip.showValue && !e.value.style.chart.tooltip.showPercentage ? U : !e.value.style.chart.tooltip.showValue && e.value.style.chart.tooltip.showPercentage ? `${Xe}` : "";
425
+ re.value.push({
426
+ name: d?.name ?? `#${n + 1}`,
427
+ value: m,
428
+ color: d?.color,
429
+ suffix: It,
430
+ prefix: "",
431
+ rounding: e.value.style.chart.tooltip.roundingPercentage,
432
+ formatter: t.formatter
433
+ });
434
+ }
435
+ }
436
+ function ie(t = null) {
437
+ je(() => {
438
+ const o = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [""]], a = [[""], [e.value.translations.target], ...F.value.flatMap((m) => [[m.name], ["%"]])], l = x.value.series.map((m, We) => [m.name, m.target, ...m.values.flatMap((U) => [
439
+ U,
440
+ isNaN(U / m.target) ? "" : U / m.target * 100
441
+ ])]), n = o.concat([a]).concat(l), d = Ht(n);
442
+ t ? t(d) : jt({ csvContent: d, title: e.value.style.chart.title.text || "vue-ui-radar" });
443
+ });
444
+ }
445
+ const I = c(!1);
446
+ function Be(t) {
447
+ I.value = t, fe.value += 1;
448
+ }
449
+ function Ue() {
450
+ y.value.showTable = !y.value.showTable;
451
+ }
452
+ function Ee() {
453
+ y.value.showTooltip = !y.value.showTooltip;
454
+ }
455
+ const J = c(!1);
456
+ function ce() {
457
+ J.value = !J.value;
458
+ }
459
+ async function Tt({ scale: t = 2 } = {}) {
460
+ if (!_.value) return;
461
+ const { width: o, height: a } = _.value.getBoundingClientRect(), l = o / a, { imageUri: n, base64: d } = await na({ domElement: _.value, base64: !0, img: !0, scale: t });
462
+ return {
463
+ imageUri: n,
464
+ base64: d,
465
+ title: e.value.style.chart.title.text,
466
+ width: o,
467
+ height: a,
468
+ aspectRatio: l
469
+ };
470
+ }
471
+ const Y = v(() => {
472
+ const t = e.value.table.useDialog && !e.value.table.show, o = y.value.showTable;
473
+ return {
474
+ component: t ? vt : nt,
475
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
476
+ props: t ? {
477
+ backgroundColor: e.value.table.th.backgroundColor,
478
+ color: e.value.table.th.color,
479
+ headerColor: e.value.table.th.color,
480
+ headerBg: e.value.table.th.backgroundColor,
481
+ isFullscreen: I.value,
482
+ fullscreenParent: _.value,
483
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
484
+ } : {
485
+ hideDetails: !0,
486
+ config: {
487
+ open: o,
488
+ maxHeight: 1e4,
489
+ body: {
490
+ backgroundColor: e.value.style.chart.backgroundColor,
491
+ color: e.value.style.chart.color
492
+ },
493
+ head: {
494
+ backgroundColor: e.value.style.chart.backgroundColor,
495
+ color: e.value.style.chart.color
496
+ }
497
+ }
498
+ }
499
+ };
500
+ });
501
+ ve(() => y.value.showTable, (t) => {
502
+ e.value.table.show || (t && e.value.table.useDialog && W.value ? W.value.open() : "close" in W.value && W.value.close());
503
+ });
504
+ function Me() {
505
+ y.value.showTable = !1, ae.value && ae.value.setTableIconState(!1);
506
+ }
507
+ const At = v(() => F.value.map((t) => ({
508
+ ...t,
509
+ name: t.display
510
+ }))), Pt = v(() => e.value.style.chart.backgroundColor), St = v(() => e.value.style.chart.legend), xt = v(() => e.value.style.chart.title), { exportSvg: Ot, getSvg: Ft } = ca({
511
+ svg: j,
512
+ title: xt,
513
+ legend: St,
514
+ legendItems: At,
515
+ backgroundColor: Pt
516
+ });
517
+ async function Ge({ isCb: t }) {
518
+ if (t) {
519
+ const { blob: o, url: a, text: l, dataUrl: n } = await Ft();
520
+ e.value.userOptions.callbacks.svg({ blob: o, url: a, text: l, dataUrl: n });
521
+ } else
522
+ Ot();
523
+ }
524
+ return tt({
525
+ getData: ft,
526
+ getImage: Tt,
527
+ generatePdf: Fe,
528
+ generateCsv: ie,
529
+ generateImage: Ie,
530
+ generateSvg: Ge,
531
+ toggleTable: Ue,
532
+ toggleTooltip: Ee,
533
+ toggleAnnotator: ce,
534
+ toggleFullscreen: Be
535
+ }), (t, o) => (s(), r("div", {
536
+ class: H(`vue-data-ui-component vue-ui-radar ${I.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
537
+ ref_key: "radarChart",
538
+ ref: _,
539
+ id: `vue-ui-radar_${b.value}`,
540
+ style: K(`font-family:${e.value.style.fontFamily};width:100%; ${e.value.responsive ? "height: 100%;" : ""} text-align:center;background:${e.value.style.chart.backgroundColor}`),
541
+ onMouseenter: o[2] || (o[2] = () => u(Ae)(!0)),
542
+ onMouseleave: o[3] || (o[3] = () => u(Ae)(!1))
543
+ }, [
544
+ e.value.userOptions.buttons.annotator ? (s(), P(u(ut), {
545
+ key: 0,
546
+ svgRef: u(j),
547
+ backgroundColor: e.value.style.chart.backgroundColor,
548
+ color: e.value.style.chart.color,
549
+ active: J.value,
550
+ onClose: ce
551
+ }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : p("", !0),
552
+ pt.value ? (s(), r("div", {
553
+ key: 1,
554
+ ref_key: "noTitle",
555
+ ref: ke,
556
+ class: "vue-data-ui-no-title-space",
557
+ style: "height:36px; width: 100%;background:transparent"
558
+ }, null, 512)) : p("", !0),
559
+ e.value.style.chart.title.text ? (s(), r("div", {
560
+ key: 2,
561
+ ref_key: "chartTitle",
562
+ ref: ye,
563
+ style: "width:100%;background:transparent;padding-bottom:12px"
564
+ }, [
565
+ (s(), P(ra, {
566
+ key: `title_${Ce.value}`,
567
+ config: {
568
+ title: {
569
+ cy: "radar-div-title",
570
+ ...e.value.style.chart.title
571
+ },
572
+ subtitle: {
573
+ cy: "radar-div-subtitle",
574
+ ...e.value.style.chart.title.subtitle
575
+ }
576
+ }
577
+ }, null, 8, ["config"]))
578
+ ], 512)) : p("", !0),
579
+ k("div", {
580
+ id: `legend-top-${b.value}`
581
+ }, null, 8, pa),
582
+ e.value.userOptions.show && ge.value && (u(Pe) || u(oe)) ? (s(), P(u(it), {
583
+ ref_key: "userOptionsRef",
584
+ ref: ae,
585
+ key: `user_options_${fe.value}`,
586
+ backgroundColor: e.value.style.chart.backgroundColor,
587
+ color: e.value.style.chart.color,
588
+ isImaging: u(Oe),
589
+ isPrinting: u(xe),
590
+ uid: b.value,
591
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
592
+ hasPdf: e.value.userOptions.buttons.pdf,
593
+ hasImg: e.value.userOptions.buttons.img,
594
+ hasSvg: e.value.userOptions.buttons.svg,
595
+ hasXls: e.value.userOptions.buttons.csv,
596
+ hasTable: e.value.userOptions.buttons.table,
597
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
598
+ isFullscreen: I.value,
599
+ isTooltip: y.value.showTooltip,
600
+ titles: { ...e.value.userOptions.buttonTitles },
601
+ chartElement: _.value,
602
+ position: e.value.userOptions.position,
603
+ hasAnnotator: e.value.userOptions.buttons.annotator,
604
+ isAnnotation: J.value,
605
+ callbacks: e.value.userOptions.callbacks,
606
+ printScale: e.value.userOptions.print.scale,
607
+ tableDialog: e.value.table.useDialog,
608
+ onToggleFullscreen: Be,
609
+ onGeneratePdf: u(Fe),
610
+ onGenerateCsv: ie,
611
+ onGenerateImage: u(Ie),
612
+ onGenerateSvg: Ge,
613
+ onToggleTable: Ue,
614
+ onToggleTooltip: Ee,
615
+ onToggleAnnotator: ce,
616
+ style: K({
617
+ visibility: u(Pe) ? u(oe) ? "visible" : "hidden" : "visible"
618
+ })
619
+ }, He({ _: 2 }, [
620
+ t.$slots.menuIcon ? {
621
+ name: "menuIcon",
622
+ fn: h(({ isOpen: a, color: l }) => [
623
+ f(t.$slots, "menuIcon", E(M({ isOpen: a, color: l })), void 0, !0)
624
+ ]),
625
+ key: "0"
626
+ } : void 0,
627
+ t.$slots.optionTooltip ? {
628
+ name: "optionTooltip",
629
+ fn: h(() => [
630
+ f(t.$slots, "optionTooltip", {}, void 0, !0)
631
+ ]),
632
+ key: "1"
633
+ } : void 0,
634
+ t.$slots.optionPdf ? {
635
+ name: "optionPdf",
636
+ fn: h(() => [
637
+ f(t.$slots, "optionPdf", {}, void 0, !0)
638
+ ]),
639
+ key: "2"
640
+ } : void 0,
641
+ t.$slots.optionCsv ? {
642
+ name: "optionCsv",
643
+ fn: h(() => [
644
+ f(t.$slots, "optionCsv", {}, void 0, !0)
645
+ ]),
646
+ key: "3"
647
+ } : void 0,
648
+ t.$slots.optionImg ? {
649
+ name: "optionImg",
650
+ fn: h(() => [
651
+ f(t.$slots, "optionImg", {}, void 0, !0)
652
+ ]),
653
+ key: "4"
654
+ } : void 0,
655
+ t.$slots.optionTable ? {
656
+ name: "optionTable",
657
+ fn: h(() => [
658
+ f(t.$slots, "optionTable", {}, void 0, !0)
659
+ ]),
660
+ key: "5"
661
+ } : void 0,
662
+ t.$slots.optionFullscreen ? {
663
+ name: "optionFullscreen",
664
+ fn: h(({ toggleFullscreen: a, isFullscreen: l }) => [
665
+ f(t.$slots, "optionFullscreen", E(M({ toggleFullscreen: a, isFullscreen: l })), void 0, !0)
666
+ ]),
667
+ key: "6"
668
+ } : void 0,
669
+ t.$slots.optionAnnotator ? {
670
+ name: "optionAnnotator",
671
+ fn: h(({ toggleAnnotator: a, isAnnotator: l }) => [
672
+ f(t.$slots, "optionAnnotator", E(M({ toggleAnnotator: a, isAnnotator: l })), void 0, !0)
673
+ ]),
674
+ key: "7"
675
+ } : void 0
676
+ ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasImg", "hasSvg", "hasXls", "hasTable", "hasFullscreen", "isFullscreen", "isTooltip", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : p("", !0),
677
+ (s(), r("svg", {
678
+ ref_key: "svgRef",
679
+ ref: j,
680
+ xmlns: u(Xt),
681
+ class: H({ "vue-data-ui-fullscreen--on": I.value, "vue-data-ui-fulscreen--off": !I.value }),
682
+ viewBox: `0 0 ${i.value.width <= 0 ? 10 : i.value.width} ${i.value.height <= 0 ? 10 : i.value.height}`,
683
+ style: K(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
684
+ }, [
685
+ Z(u(ct)),
686
+ t.$slots["chart-background"] ? (s(), r("foreignObject", {
687
+ key: 0,
688
+ x: 0,
689
+ y: 0,
690
+ width: i.value.width <= 0 ? 10 : i.value.width,
691
+ height: i.value.height <= 0 ? 10 : i.value.height,
692
+ style: {
693
+ pointerEvents: "none"
694
+ }
695
+ }, [
696
+ f(t.$slots, "chart-background", {}, void 0, !0)
697
+ ], 8, ga)) : p("", !0),
698
+ k("defs", null, [
699
+ (s(!0), r(L, null, N(C.value, (a, l) => (s(), r("radialGradient", {
700
+ cx: "50%",
701
+ cy: "50%",
702
+ r: "50%",
703
+ fx: "50%",
704
+ fy: "50%",
705
+ id: `radar_gradient_${b.value}_${l}`
706
+ }, [
707
+ k("stop", {
708
+ offset: "0%",
709
+ "stop-color": u(he)(u(Yt)(a.color, 0.05), e.value.style.chart.layout.dataPolygon.opacity)
710
+ }, null, 8, ya),
711
+ k("stop", {
712
+ offset: "100%",
713
+ "stop-color": u(he)(a.color, e.value.style.chart.layout.dataPolygon.opacity)
714
+ }, null, 8, ma)
715
+ ], 8, fa))), 256))
716
+ ]),
717
+ e.value.style.chart.layout.grid.show ? (s(), r("g", ba, [
718
+ (s(!0), r(L, null, N(A.value, (a) => (s(), r("line", {
719
+ x1: i.value.width / 2,
720
+ y1: i.value.height / 2,
721
+ x2: a.x,
722
+ y2: a.y,
723
+ stroke: e.value.style.chart.layout.grid.stroke,
724
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth
725
+ }, null, 8, ka))), 256)),
726
+ e.value.style.chart.layout.grid.graduations > 0 ? (s(), r("g", Ca, [
727
+ (s(!0), r(L, null, N(mt.value, (a) => (s(), r("path", {
728
+ d: u(Qe)({
729
+ plot: { x: i.value.width / 2, y: i.value.height / 2 },
730
+ radius: a,
731
+ sides: De.value,
732
+ rotation: 0
733
+ }).path,
734
+ fill: "none",
735
+ stroke: e.value.style.chart.layout.grid.stroke,
736
+ "stroke-width": e.value.style.chart.layout.grid.strokeWidth
737
+ }, null, 8, wa))), 256))
738
+ ])) : p("", !0)
739
+ ])) : p("", !0),
740
+ k("path", {
741
+ d: ze.value.path,
742
+ fill: "none",
743
+ stroke: e.value.style.chart.layout.outerPolygon.stroke,
744
+ "stroke-width": e.value.style.chart.layout.outerPolygon.strokeWidth,
745
+ "stroke-linejoin": "round",
746
+ "stroke-linecap": "round"
747
+ }, null, 8, _a),
748
+ e.value.style.chart.layout.labels.dataLabels.show ? (s(), r("g", $a, [
749
+ (s(!0), r(L, null, N(A.value, (a, l) => (s(), r("text", {
750
+ class: "vue-ui-radar-apex-label",
751
+ x: a.labelX,
752
+ y: a.labelY,
753
+ "text-anchor": a.labelAnchor,
754
+ "font-size": e.value.style.chart.layout.labels.dataLabels.fontSize,
755
+ fill: e.value.style.chart.layout.labels.dataLabels.color,
756
+ onMouseenter: (n) => $t(a, l),
757
+ onMouseleave: (n) => wt(a, l),
758
+ onClick: (n) => _t(a, l)
759
+ }, R(a.name), 41, Ta))), 256))
760
+ ])) : p("", !0),
761
+ (s(!0), r(L, null, N(C.value, (a, l) => (s(), r("g", null, [
762
+ k("g", null, [
763
+ e.value.useCssAnimation || !e.value.useCssAnimation && !g.value.includes(l) ? (s(), r("polygon", {
764
+ key: 0,
765
+ points: u(Je)(A.value.map((n) => n.plots[l]), !1, !0),
766
+ stroke: e.value.style.chart.backgroundColor,
767
+ "stroke-width": e.value.style.chart.layout.dataPolygon.strokeWidth + 1,
768
+ fill: "none",
769
+ class: H({ "animated-out": g.value.includes(l) && e.value.useCssAnimation, "animated-in": B.value && X.value === l && e.value.useCssAnimation })
770
+ }, null, 10, Aa)) : p("", !0),
771
+ e.value.useCssAnimation || !e.value.useCssAnimation && !g.value.includes(l) ? (s(), r("polygon", {
772
+ key: 1,
773
+ points: u(Je)(A.value.map((n) => n.plots[l]), !1, !0),
774
+ stroke: a.color,
775
+ "stroke-width": e.value.style.chart.layout.dataPolygon.strokeWidth,
776
+ fill: e.value.style.chart.layout.dataPolygon.transparent ? "transparent" : e.value.style.chart.layout.dataPolygon.useGradient ? `url(#radar_gradient_${b.value}_${l})` : u(he)(a.color, e.value.style.chart.layout.dataPolygon.opacity),
777
+ class: H({ "animated-out": g.value.includes(l) && e.value.useCssAnimation, "animated-in": B.value && X.value === l && e.value.useCssAnimation })
778
+ }, null, 10, Pa)) : p("", !0)
779
+ ])
780
+ ]))), 256)),
781
+ e.value.style.chart.layout.plots.show ? (s(), r("g", Sa, [
782
+ (s(!0), r(L, null, N(A.value, (a, l) => (s(), r("g", null, [
783
+ (s(!0), r(L, null, N(a.plots, (n, d) => (s(), r("circle", {
784
+ cx: n.x,
785
+ cy: n.y,
786
+ fill: g.value.includes(d) ? "transparent" : C.value[d] ? C.value[d].color : "transparent",
787
+ r: Q.value !== null && Q.value === l ? e.value.style.chart.layout.plots.radius * 1.6 : e.value.style.chart.layout.plots.radius,
788
+ stroke: g.value.includes(d) ? "transparent" : e.value.style.chart.backgroundColor,
789
+ "stroke-width": 0.5,
790
+ class: H({ "animated-out": g.value.includes(d) && e.value.useCssAnimation, "animated-in": B.value && X.value === d && e.value.useCssAnimation })
791
+ }, null, 10, xa))), 256))
792
+ ]))), 256))
793
+ ])) : p("", !0),
794
+ f(t.$slots, "svg", { svg: i.value }, void 0, !0)
795
+ ], 14, ha)),
796
+ t.$slots.watermark ? (s(), r("div", Oa, [
797
+ f(t.$slots, "watermark", E(M({ isPrinting: u(xe) || u(Oe) })), void 0, !0)
798
+ ])) : p("", !0),
799
+ k("div", {
800
+ id: `legend-bottom-${b.value}`
801
+ }, null, 8, Fa),
802
+ $e.value ? (s(), P(Dt, {
803
+ key: 5,
804
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${b.value}` : `#legend-bottom-${b.value}`
805
+ }, [
806
+ k("div", {
807
+ ref_key: "chartLegend",
808
+ ref: me
809
+ }, [
810
+ e.value.style.chart.legend.show ? (s(), P(ua, {
811
+ key: `legend_${_e.value}`,
812
+ legendSet: F.value,
813
+ config: Ct.value,
814
+ onClickMarker: o[0] || (o[0] = ({ i: a }) => Ne(a))
815
+ }, {
816
+ item: h(({ legend: a, index: l }) => [
817
+ u(Te) ? p("", !0) : (s(), r("div", {
818
+ key: 0,
819
+ onClick: (n) => a.segregate(),
820
+ style: K(`opacity:${g.value.includes(l) ? 0.5 : 1}`)
821
+ }, R(a.display), 13, Ia))
822
+ ]),
823
+ _: 1
824
+ }, 8, ["legendSet", "config"])) : f(t.$slots, "legend", {
825
+ key: 1,
826
+ legend: F.value
827
+ }, void 0, !0)
828
+ ], 512)
829
+ ], 8, ["to"])) : p("", !0),
830
+ t.$slots.source ? (s(), r("div", {
831
+ key: 6,
832
+ ref_key: "source",
833
+ ref: be,
834
+ dir: "auto"
835
+ }, [
836
+ f(t.$slots, "source", {}, void 0, !0)
837
+ ], 512)) : p("", !0),
838
+ Z(u(ot), {
839
+ show: y.value.showTooltip && ee.value,
840
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
841
+ color: e.value.style.chart.tooltip.color,
842
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
843
+ borderColor: e.value.style.chart.tooltip.borderColor,
844
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
845
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
846
+ fontSize: e.value.style.chart.tooltip.fontSize,
847
+ position: e.value.style.chart.tooltip.position,
848
+ offsetY: e.value.style.chart.tooltip.offsetY,
849
+ parent: _.value,
850
+ content: te.value,
851
+ isFullscreen: I.value,
852
+ isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function",
853
+ smooth: e.value.style.chart.tooltip.smooth,
854
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter,
855
+ smoothForce: e.value.style.chart.tooltip.smoothForce,
856
+ smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
857
+ }, {
858
+ "tooltip-before": h(() => [
859
+ f(t.$slots, "tooltip-before", E(M({ ...ue.value })), void 0, !0)
860
+ ]),
861
+ "tooltip-after": h(() => [
862
+ ["function"].includes(typeof e.value.style.chart.tooltip.customFormat) ? p("", !0) : (s(), r("div", La, [
863
+ Z(u(st), {
864
+ dataset: re.value,
865
+ config: ht.value,
866
+ backgroundOpacity: 0
867
+ }, {
868
+ "data-label": h(({ bar: a }) => [
869
+ k("div", Na, [
870
+ k("span", Ra, R(a.name + (e.value.style.chart.tooltip.showValue || e.value.style.chart.tooltip.showPercentage ? ":" : "")), 1),
871
+ e.value.style.chart.tooltip.showValue || e.value.style.chart.tooltip.showPercentage ? (s(), r("span", Da, R(a.suffix), 1)) : p("", !0)
872
+ ])
873
+ ]),
874
+ _: 1
875
+ }, 8, ["dataset", "config"])
876
+ ])),
877
+ f(t.$slots, "tooltip-after", E(M({ ...ue.value })), void 0, !0)
878
+ ]),
879
+ _: 3
880
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "fontSize", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
881
+ ge.value && e.value.userOptions.buttons.table ? (s(), P(zt(Y.value.component), Vt({ key: 7 }, Y.value.props, {
882
+ ref_key: "tableUnit",
883
+ ref: W,
884
+ onClose: Me
885
+ }), He({
886
+ content: h(() => [
887
+ (s(), P(u(rt), {
888
+ key: `table_${we.value}`,
889
+ colNames: q.value.colNames,
890
+ head: q.value.head,
891
+ body: q.value.body,
892
+ config: q.value.config,
893
+ title: e.value.table.useDialog ? "" : Y.value.title,
894
+ withCloseButton: !e.value.table.useDialog,
895
+ onClose: Me
896
+ }, {
897
+ th: h(({ th: a }) => [
898
+ de(R(a.name), 1)
899
+ ]),
900
+ td: h(({ td: a }) => [
901
+ de(R(a), 1)
902
+ ]),
903
+ _: 1
904
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
905
+ ]),
906
+ _: 2
907
+ }, [
908
+ e.value.table.useDialog ? {
909
+ name: "title",
910
+ fn: h(() => [
911
+ de(R(Y.value.title), 1)
912
+ ]),
913
+ key: "0"
914
+ } : void 0,
915
+ e.value.table.useDialog ? {
916
+ name: "actions",
917
+ fn: h(() => [
918
+ k("button", {
919
+ tabindex: "0",
920
+ class: "vue-ui-user-options-button",
921
+ onClick: o[1] || (o[1] = (a) => ie(e.value.userOptions.callbacks.csv))
922
+ }, [
923
+ Z(u(lt), {
924
+ name: "excel",
925
+ stroke: Y.value.props.color
926
+ }, null, 8, ["stroke"])
927
+ ])
928
+ ]),
929
+ key: "1"
930
+ } : void 0
931
+ ]), 1040)) : p("", !0),
932
+ u(Te) ? (s(), P(ta, { key: 8 })) : p("", !0)
933
+ ], 46, da));
934
+ }
935
+ }, Za = /* @__PURE__ */ va(za, [["__scopeId", "data-v-b5dcc8ba"]]);
936
+ export {
937
+ Za as default
938
+ };