vue-data-ui 3.26.4 → 3.27.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 (200) hide show
  1. package/dist/{Arrow-BW_Fs3gD.js → Arrow-DKO1l8oR.js} +1 -1
  2. package/dist/{BaseDraggableDialog-BniZj4c8.js → BaseDraggableDialog-C50TEJFv.js} +2 -2
  3. package/dist/{BaseIcon-CPBlYfWq.js → BaseIcon-Cx9FD751.js} +1 -1
  4. package/dist/{BaseLegendToggle-CWtURpCj.js → BaseLegendToggle-CP3sddwv.js} +1 -1
  5. package/dist/{BaseZoomControls-jfXIQvEi.js → BaseZoomControls-vNi8YykO.js} +2 -2
  6. package/dist/{ColorPicker-BKndMOAm.js → ColorPicker-hmC2bvwS.js} +2 -2
  7. package/dist/{DataTable-DV4Plrm3.js → DataTable-CjF_An2h.js} +2 -2
  8. package/dist/{HillActions-B45z2DmP.js → HillActions-DqqGB33u.js} +1 -1
  9. package/dist/{Legend-CJzCVAWl.js → Legend-CulFgjUY.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-B3I_UGDm.js → NonSvgPenAndPaper-BK1v_MfW.js} +3 -3
  11. package/dist/{PackageVersion-DEAYvEjl.js → PackageVersion-D7H9nfK0.js} +1 -1
  12. package/dist/{PenAndPaper-Dv8WPVwA.js → PenAndPaper-CNiuGw6k.js} +3 -3
  13. package/dist/{Shape-BIe6C0HJ.js → Shape-DSwamtmO.js} +1 -1
  14. package/dist/{SlicerPreview-8atniw0P.js → SlicerPreview-k5YerMA9.js} +12 -12
  15. package/dist/{SparkTooltip-DsGcGbm2.js → SparkTooltip-D35KVv6N.js} +6 -6
  16. package/dist/{Title-B4UpMerH.js → Title-BMCuINbv.js} +1 -1
  17. package/dist/{Tooltip-BmfGHn1L.js → Tooltip-C4ZTwkLF.js} +1 -1
  18. package/dist/{UserOptions-C92R4ACT.js → UserOptions-CORYQiif.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-hill.js +1 -1
  46. package/dist/components/vue-ui-history-plot.js +1 -1
  47. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  48. package/dist/components/vue-ui-icon.js +1 -1
  49. package/dist/components/vue-ui-kpi.js +1 -1
  50. package/dist/components/vue-ui-label.js +1 -1
  51. package/dist/components/vue-ui-mini-loader.js +1 -1
  52. package/dist/components/vue-ui-molecule.js +1 -1
  53. package/dist/components/vue-ui-mood-radar.js +1 -1
  54. package/dist/components/vue-ui-nested-donuts.js +1 -1
  55. package/dist/components/vue-ui-onion.js +1 -1
  56. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  57. package/dist/components/vue-ui-quadrant.js +1 -1
  58. package/dist/components/vue-ui-quick-chart.js +1 -1
  59. package/dist/components/vue-ui-radar.js +1 -1
  60. package/dist/components/vue-ui-rating.js +1 -1
  61. package/dist/components/vue-ui-relation-circle.js +1 -1
  62. package/dist/components/vue-ui-ridgeline.js +1 -1
  63. package/dist/components/vue-ui-rings.js +1 -1
  64. package/dist/components/vue-ui-scatter.js +1 -1
  65. package/dist/components/vue-ui-skeleton.js +1 -1
  66. package/dist/components/vue-ui-smiley.js +1 -1
  67. package/dist/components/vue-ui-spark-trend.js +1 -1
  68. package/dist/components/vue-ui-sparkbar.js +1 -1
  69. package/dist/components/vue-ui-sparkgauge.js +1 -1
  70. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  71. package/dist/components/vue-ui-sparkline.js +1 -1
  72. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  73. package/dist/components/vue-ui-stackbar.js +1 -1
  74. package/dist/components/vue-ui-stackline.js +1 -1
  75. package/dist/components/vue-ui-strip-plot.js +1 -1
  76. package/dist/components/vue-ui-table-heatmap.js +1 -1
  77. package/dist/components/vue-ui-table-sparkline.js +1 -1
  78. package/dist/components/vue-ui-table.js +1 -1
  79. package/dist/components/vue-ui-thermometer.js +1 -1
  80. package/dist/components/vue-ui-timer.js +1 -1
  81. package/dist/components/vue-ui-tiremarks.js +1 -1
  82. package/dist/components/vue-ui-treemap.js +1 -1
  83. package/dist/components/vue-ui-vertical-bar.js +1 -1
  84. package/dist/components/vue-ui-waffle.js +1 -1
  85. package/dist/components/vue-ui-wheel.js +1 -1
  86. package/dist/components/vue-ui-word-cloud.js +1 -1
  87. package/dist/components/vue-ui-world.js +1 -1
  88. package/dist/components/vue-ui-xy-canvas.js +1 -1
  89. package/dist/components/vue-ui-xy.js +1 -1
  90. package/dist/{dom-to-png-BL08UcHI.js → dom-to-png-CBusMkua.js} +1 -1
  91. package/dist/{exposedLib-CBUiJ5b-.js → exposedLib-UNxZlnAS.js} +10 -10
  92. package/dist/{img--C0otIB0.js → img-Bb5rHcpO.js} +1 -1
  93. package/dist/{labelUtils-CfQIxXGL.js → labelUtils-Ccn9kK7T.js} +1 -1
  94. package/dist/{lib-DTiqmM1G.js → lib-D4wK6ljP.js} +130 -136
  95. package/dist/{package-Dj6ohGVJ.js → package-DmQufM0G.js} +1 -1
  96. package/dist/{pdf-CbSwKZjC.js → pdf-BzIQHx-F.js} +1 -1
  97. package/dist/{render-common-vuBsglf8.js → render-common-BtfjXdkJ.js} +10 -10
  98. package/dist/ssr/vue-ui-donut.js +1 -1
  99. package/dist/ssr/vue-ui-xy.js +1 -1
  100. package/dist/ssr.js +2 -2
  101. package/dist/style.css +1 -1
  102. package/dist/types/vue-data-ui.d.ts +212 -60
  103. package/dist/types/vue-ui-stackbar.d.ts +10 -0
  104. package/dist/{useConfig-DObkR9Aa.js → useConfig-D_6ZrPMD.js} +82 -0
  105. package/dist/{useNestedProp-D8cRQaVo.js → useNestedProp-DR_8JPol.js} +1 -1
  106. package/dist/{useObjectBindings-CPmyIJxB.js → useObjectBindings-DvasYMGu.js} +2 -2
  107. package/dist/{usePrinter-R2nu9g4B.js → usePrinter-DdW2GSm0.js} +2 -2
  108. package/dist/utils.js +10 -10
  109. package/dist/{vue-data-ui-CijFk00w.js → vue-data-ui-Df7WV80w.js} +70 -70
  110. package/dist/vue-data-ui.js +75 -75
  111. package/dist/{vue-ui-3d-bar-BxmndVBz.js → vue-ui-3d-bar-CJjNPwhG.js} +463 -463
  112. package/dist/{vue-ui-accordion-CxMo-mXC.js → vue-ui-accordion-CaoNWreI.js} +4 -4
  113. package/dist/{vue-ui-age-pyramid-ysX_ySuK.js → vue-ui-age-pyramid-BYcM0uIP.js} +22 -22
  114. package/dist/{vue-ui-annotator-IAqTX-5M.js → vue-ui-annotator-BmqjDjRF.js} +10 -10
  115. package/dist/{vue-ui-bullet-rO5_pB7t.js → vue-ui-bullet-DBOAvpBB.js} +18 -18
  116. package/dist/vue-ui-bump-rPYwDJ4o.js +1242 -0
  117. package/dist/{vue-ui-candlestick-BLxP54W4.js → vue-ui-candlestick-WQHIQNv_.js} +625 -625
  118. package/dist/{vue-ui-carousel-table-DHbt40ze.js → vue-ui-carousel-table-Dojcvt49.js} +106 -106
  119. package/dist/{vue-ui-chestnut-CHHZx5ek.js → vue-ui-chestnut-BdhEByUf.js} +65 -65
  120. package/dist/{vue-ui-chord-WmqFMK4A.js → vue-ui-chord-MF4xF5az.js} +46 -46
  121. package/dist/{vue-ui-circle-pack-D2RXFToP.js → vue-ui-circle-pack-BwDim7G8.js} +26 -26
  122. package/dist/{vue-ui-cursor-CDf6s7AZ.js → vue-ui-cursor-w_5cbpSb.js} +61 -61
  123. package/dist/{vue-ui-dag-Ba3Bkxd7.js → vue-ui-dag-D2EUqeDN.js} +65 -65
  124. package/dist/{vue-ui-dashboard-DKCEm56d.js → vue-ui-dashboard-BLnVXosj.js} +70 -70
  125. package/dist/{vue-ui-digits-B6cSEytP.js → vue-ui-digits-zSqwYWHm.js} +4 -4
  126. package/dist/{vue-ui-donut-BfAlXtvS.js → vue-ui-donut-ZYZfqIhi.js} +117 -117
  127. package/dist/{vue-ui-donut-evolution-C2TYUKag.js → vue-ui-donut-evolution-DtLbWi3h.js} +216 -216
  128. package/dist/vue-ui-donut-nLDLZwig.js +2427 -0
  129. package/dist/{vue-ui-dumbbell-GMQ4JZf_.js → vue-ui-dumbbell-Qgn3wRyI.js} +20 -20
  130. package/dist/{vue-ui-flow-B53jXaVQ.js → vue-ui-flow-iSH6dyGw.js} +109 -109
  131. package/dist/vue-ui-funnel-Cc2z2zS5.js +749 -0
  132. package/dist/{vue-ui-galaxy-CE7LYi8M.js → vue-ui-galaxy-GhuBSU0o.js} +267 -267
  133. package/dist/vue-ui-gauge-BAjBO13a.js +934 -0
  134. package/dist/{vue-ui-geo-B4a2hwYf.js → vue-ui-geo-mwTtvIHY.js} +19 -19
  135. package/dist/{vue-ui-gizmo-CY4cLNcJ.js → vue-ui-gizmo-B5vOOrZX.js} +4 -4
  136. package/dist/vue-ui-heatmap-fimkY1nN.js +1613 -0
  137. package/dist/{vue-ui-hill-CTPzgkCs.js → vue-ui-hill-DPfTt3UE.js} +18 -18
  138. package/dist/{vue-ui-history-plot-CGFijdmp.js → vue-ui-history-plot-B1WgzqTb.js} +53 -53
  139. package/dist/vue-ui-horizontal-bar-Bkp5HQdt.js +1723 -0
  140. package/dist/{vue-ui-kpi-Bu2OpF5d.js → vue-ui-kpi-D-p0CSQh.js} +4 -4
  141. package/dist/{vue-ui-label-CWFQzKOy.js → vue-ui-label-r3-QloJL.js} +65 -65
  142. package/dist/{vue-ui-mini-loader-hdh8SSxW.js → vue-ui-mini-loader-CnrBGAtM.js} +3 -3
  143. package/dist/vue-ui-molecule-BhdAYX_H.js +941 -0
  144. package/dist/vue-ui-mood-radar-CdlnPrQf.js +1111 -0
  145. package/dist/{vue-ui-nested-donuts-DN2PgxeK.js → vue-ui-nested-donuts-DceVEyUc.js} +341 -341
  146. package/dist/{vue-ui-onion-lrDciRpg.js → vue-ui-onion-_L0uEATI.js} +209 -209
  147. package/dist/vue-ui-parallel-coordinate-plot-CbXwIM47.js +1444 -0
  148. package/dist/{vue-ui-quadrant-DrcflMPg.js → vue-ui-quadrant-CDDFLRcX.js} +55 -55
  149. package/dist/{vue-ui-quick-chart-D5ZFV0Aj.js → vue-ui-quick-chart-Dom257hl.js} +377 -377
  150. package/dist/vue-ui-radar-BLdri1bA.js +1386 -0
  151. package/dist/{vue-ui-rating-DxBJXbPW.js → vue-ui-rating-C_iTttXB.js} +25 -25
  152. package/dist/vue-ui-relation-circle-BmxTSgjd.js +905 -0
  153. package/dist/vue-ui-ridgeline-CsUrcVmL.js +1630 -0
  154. package/dist/{vue-ui-rings-6OHcBlOC.js → vue-ui-rings-D_GPkgbD.js} +318 -318
  155. package/dist/vue-ui-scatter-D_C-IhnW.js +2418 -0
  156. package/dist/{vue-ui-skeleton--HlS7ySk.js → vue-ui-skeleton-t7e6KEZ2.js} +60 -60
  157. package/dist/{vue-ui-smiley-ZrM6-QCy.js → vue-ui-smiley-Dl95YWVo.js} +14 -14
  158. package/dist/{vue-ui-spark-trend-CIfpocxI.js → vue-ui-spark-trend-pkZA7u5V.js} +20 -20
  159. package/dist/{vue-ui-sparkbar-Db7Ntacd.js → vue-ui-sparkbar-Ds7OJjhG.js} +77 -77
  160. package/dist/{vue-ui-sparkgauge-DEuNFkU_.js → vue-ui-sparkgauge-US1M88qc.js} +6 -6
  161. package/dist/vue-ui-sparkhistogram-FISVpSvv.js +589 -0
  162. package/dist/{vue-ui-sparkline-CSsnkXMJ.js → vue-ui-sparkline-DvE1dHcs.js} +37 -37
  163. package/dist/{vue-ui-sparkstackbar-BnN7KebI.js → vue-ui-sparkstackbar-CWtF9eG-.js} +39 -39
  164. package/dist/vue-ui-stackbar-fMgrHzZe.js +3273 -0
  165. package/dist/{vue-ui-stackline-CqjwxpU1.js → vue-ui-stackline-CSMuUup2.js} +303 -303
  166. package/dist/vue-ui-strip-plot-TGD2UFHS.js +1752 -0
  167. package/dist/{vue-ui-table-CsMozTrM.js → vue-ui-table-BCEIbg8-.js} +14 -14
  168. package/dist/{vue-ui-table-heatmap-DFcESbBy.js → vue-ui-table-heatmap-CvUcFWMf.js} +9 -9
  169. package/dist/vue-ui-table-sparkline-CoVQ1qGY.js +738 -0
  170. package/dist/vue-ui-thermometer-BYFAZCzh.js +758 -0
  171. package/dist/{vue-ui-timer-CFxvU_q1.js → vue-ui-timer-BKr8RVnn.js} +10 -10
  172. package/dist/{vue-ui-tiremarks-DIjsyNwO.js → vue-ui-tiremarks-BYu3cEoy.js} +35 -35
  173. package/dist/{vue-ui-treemap-BuvFUWJm.js → vue-ui-treemap-BR3rX5_L.js} +50 -50
  174. package/dist/{vue-ui-waffle-B8Knvp7m.js → vue-ui-waffle-mP8g5aQk.js} +275 -275
  175. package/dist/{vue-ui-wheel-2_4BOo6P.js → vue-ui-wheel-CZsSO2R6.js} +187 -187
  176. package/dist/{vue-ui-word-cloud-BEgmAfj1.js → vue-ui-word-cloud-CJ30onqy.js} +35 -35
  177. package/dist/{vue-ui-world-D4WMHq7E.js → vue-ui-world-BZ09DOiF.js} +498 -498
  178. package/dist/{vue-ui-xy-DBLJ8Uhc.js → vue-ui-xy-C3h54loZ.js} +405 -405
  179. package/dist/{vue-ui-xy-canvas-Dv0pk4Wd.js → vue-ui-xy-canvas-BwgK8drp.js} +165 -165
  180. package/dist/{vue-ui-xy-DGIz4MDV.js → vue-ui-xy-jemv5dsf.js} +288 -288
  181. package/dist/{vue_ui_stackbar-DdjDL6aq.js → vue_ui_stackbar-yQyvT4Su.js} +46 -0
  182. package/package.json +1 -1
  183. package/dist/vue-ui-bump-BIyTRpqJ.js +0 -1242
  184. package/dist/vue-ui-donut-DMISY-E8.js +0 -2427
  185. package/dist/vue-ui-funnel-eVH871L3.js +0 -749
  186. package/dist/vue-ui-gauge-D_jNBHjA.js +0 -934
  187. package/dist/vue-ui-heatmap-DW7bo_Um.js +0 -1613
  188. package/dist/vue-ui-horizontal-bar-vPeWNfxO.js +0 -1723
  189. package/dist/vue-ui-molecule-ejjPjG63.js +0 -941
  190. package/dist/vue-ui-mood-radar-pqMAcUWm.js +0 -1111
  191. package/dist/vue-ui-parallel-coordinate-plot-McES6sLT.js +0 -1444
  192. package/dist/vue-ui-radar-DZPVV9cU.js +0 -1386
  193. package/dist/vue-ui-relation-circle-BtESVsB0.js +0 -905
  194. package/dist/vue-ui-ridgeline-CSLuDJWq.js +0 -1630
  195. package/dist/vue-ui-scatter-CKJ87fhp.js +0 -2418
  196. package/dist/vue-ui-sparkhistogram-CQTwLaZi.js +0 -589
  197. package/dist/vue-ui-stackbar-CISQXhoK.js +0 -2660
  198. package/dist/vue-ui-strip-plot-CRZDCNc1.js +0 -1752
  199. package/dist/vue-ui-table-sparkline-CwsrD7te.js +0 -738
  200. package/dist/vue-ui-thermometer-_zSQM0Nk.js +0 -758
@@ -0,0 +1,1386 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, D as n, Dt as r, Ht as i, Jt as a, Lt as o, M as s, S as c, X as ee, Yt as te, at as l, b as ne, en as re, et as ie, i as ae, nn as oe, nt as se, pt as ce, t as le, w as ue, yt as de, zt as fe } from "./lib-D4wK6ljP.js";
3
+ import { n as pe } from "./useHints-Dq_w2E8B.js";
4
+ import { t as me } from "./useConfig-D_6ZrPMD.js";
5
+ import { t as he } from "./usePrinter-DdW2GSm0.js";
6
+ import { n as ge, t as _e } from "./BaseScanner-Dzc8VT3j.js";
7
+ import { t as ve } from "./useNestedProp-DR_8JPol.js";
8
+ import { t as ye } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as be } from "./useChartExport-iwOqiIWX.js";
10
+ import { t as xe } from "./img-Bb5rHcpO.js";
11
+ import { n as Se } from "./Title-BMCuINbv.js";
12
+ import { t as Ce } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { l as we, t as Te } from "./useResponsive-ZtArZtUf.js";
14
+ import { t as Ee } from "./DefGrad-DVBqDjhO.js";
15
+ import { t as De } from "./BaseLegendToggle-CP3sddwv.js";
16
+ import { t as Oe } from "./A11yDataTable-DdRsVULz.js";
17
+ import { t as ke } from "./useUserOptionState-DK-_1ddE.js";
18
+ import { t as Ae } from "./useChartAccessibility-DYqac8yF.js";
19
+ import { t as je } from "./Legend-CulFgjUY.js";
20
+ import { t as Me } from "./useAutoSizeLabelsInsideViewbox-DvDwcwi_.js";
21
+ import { t as Ne } from "./vue_ui_radar-jafTED5j.js";
22
+ import { Fragment as u, Teleport as Pe, computed as d, createBlock as f, createCommentVNode as p, createElementBlock as m, createElementVNode as h, createSlots as Fe, createTextVNode as Ie, createVNode as Le, defineAsyncComponent as g, guardReactiveProps as _, mergeProps as Re, nextTick as ze, normalizeClass as Be, normalizeProps as v, normalizeStyle as y, onBeforeUnmount as Ve, onMounted as He, openBlock as b, ref as x, renderList as S, renderSlot as C, resolveDynamicComponent as Ue, shallowRef as We, toDisplayString as w, toRefs as Ge, unref as T, watch as Ke, withCtx as E } from "vue";
23
+ //#region src/components/vue-ui-radar.vue
24
+ var qe = /* @__PURE__ */ e({ default: () => wt }), Je = ["id"], Ye = ["id"], Xe = ["id"], Ze = { style: { position: "relative" } }, Qe = [
25
+ "xmlns",
26
+ "aria-describedby",
27
+ "viewBox"
28
+ ], $e = ["width", "height"], et = { key: 1 }, tt = [
29
+ "x1",
30
+ "y1",
31
+ "x2",
32
+ "y2",
33
+ "stroke",
34
+ "stroke-width"
35
+ ], nt = {
36
+ key: 0,
37
+ style: { "pointer-events": "none" }
38
+ }, rt = [
39
+ "d",
40
+ "stroke",
41
+ "stroke-width"
42
+ ], it = [
43
+ "d",
44
+ "stroke",
45
+ "stroke-width"
46
+ ], at = { key: 2 }, ot = [
47
+ "x",
48
+ "y",
49
+ "text-anchor",
50
+ "font-size",
51
+ "fill",
52
+ "onMouseenter",
53
+ "onMouseleave",
54
+ "onClick"
55
+ ], st = [
56
+ "points",
57
+ "stroke",
58
+ "stroke-width"
59
+ ], ct = [
60
+ "points",
61
+ "stroke",
62
+ "stroke-width",
63
+ "fill"
64
+ ], lt = [
65
+ "d",
66
+ "stroke",
67
+ "stroke-width",
68
+ "stroke-dasharray"
69
+ ], ut = { key: 4 }, dt = [
70
+ "onMouseenter",
71
+ "onMouseleave",
72
+ "onClick"
73
+ ], ft = [
74
+ "cx",
75
+ "cy",
76
+ "r"
77
+ ], pt = [
78
+ "cx",
79
+ "cy",
80
+ "fill",
81
+ "r",
82
+ "stroke"
83
+ ], mt = {
84
+ key: 0,
85
+ style: {
86
+ position: "absolute",
87
+ top: "100%",
88
+ left: "0",
89
+ width: "100%"
90
+ },
91
+ "data-dom-to-png-ignore": "",
92
+ "aria-hidden": "true"
93
+ }, ht = {
94
+ key: 5,
95
+ class: "vue-data-ui-watermark"
96
+ }, gt = ["id"], _t = ["onClick"], vt = { class: "vue-data-ui-legend-item" }, yt = [
97
+ "stroke",
98
+ "stroke-width",
99
+ "stroke-dasharray"
100
+ ], bt = {
101
+ key: 0,
102
+ style: {
103
+ "max-width": "200px",
104
+ margin: "0 auto"
105
+ }
106
+ }, xt = {
107
+ class: "vue-ui-radar-tooltip-datalabel",
108
+ style: { width: "100%" }
109
+ }, St = { class: "vue-ui-radar-tooltip-datalabel-name" }, Ct = { key: 0 }, wt = /*#__PURE__*/ Ce({
110
+ __name: "vue-ui-radar",
111
+ props: {
112
+ config: {
113
+ type: Object,
114
+ default() {
115
+ return {};
116
+ }
117
+ },
118
+ dataset: {
119
+ type: Object,
120
+ default() {
121
+ return {};
122
+ }
123
+ }
124
+ },
125
+ emits: ["selectLegend", "copyAlt"],
126
+ setup(e, { expose: Ce, emit: qe }) {
127
+ let wt = g(() => import("./Tooltip-C4ZTwkLF.js")), Tt = g(() => import("./BaseIcon-Cx9FD751.js").then((e) => e.n)), Et = g(() => import("./vue-ui-sparkbar-Ds7OJjhG.js").then((e) => e.n)), Dt = g(() => import("./vue-ui-accordion-CaoNWreI.js").then((e) => e.n)), Ot = g(() => import("./DataTable-CjF_An2h.js")), kt = g(() => import("./PenAndPaper-CNiuGw6k.js").then((e) => e.t)), At = g(() => import("./UserOptions-CORYQiif.js").then((e) => e.n)), jt = g(() => import("./PackageVersion-D7H9nfK0.js").then((e) => e.t)), Mt = g(() => import("./BaseDraggableDialog-C50TEJFv.js").then((e) => e.n)), { vue_ui_radar: Nt } = me(), { isThemeValid: Pt, warnInvalidTheme: Ft } = ye(), D = e, It = d(() => !!D.dataset && Object.keys(D.dataset).length), O = x(ee()), Lt = x(!1), Rt = x(""), zt = x(0), k = x(null), Bt = x(null), Vt = x(null), Ht = x(null), Ut = x(null), Wt = x(0), Gt = x(0), Kt = x(0), qt = x(!1), Jt = x(null), Yt = x(null), A = x(null), Xt = x({
128
+ x: 0,
129
+ y: 0
130
+ }), Zt = x("pointer"), Qt = x(!1), j = x(on()), M = d(() => j.value.userOptions), N = d(() => j.value.style.chart.layout.labels), P = d(() => j.value.style.chart.layout), F = d(() => j.value.style.chart.tooltip), I = d(() => j.value.style.chart);
131
+ pe({
132
+ config: () => j.value,
133
+ dataset: () => D.dataset,
134
+ component: "VueUiRadar",
135
+ rules: [
136
+ {
137
+ test: (e) => e?.categories && e.categories.length === 0,
138
+ message: [
139
+ "👀 There are no categories in your dataset. Consider:",
140
+ "",
141
+ "▶️ Adding categories..."
142
+ ]
143
+ },
144
+ {
145
+ test: (e) => e?.series && e.series.length === 0,
146
+ message: [
147
+ "👀 There are no series in your dataset. Consider:",
148
+ "",
149
+ "▶️ Adding series..."
150
+ ]
151
+ },
152
+ {
153
+ test: (e) => e?.categories && e.categories.length > 3,
154
+ message: [
155
+ "👀 The number of categories > 3, the chart might become hard to read. Consider:",
156
+ "",
157
+ "▶️ Using several instances of the component to display related categories.",
158
+ "",
159
+ "▶️ Adding filters to allow users to choose a maximum number of categories."
160
+ ]
161
+ },
162
+ {
163
+ test: (e) => e?.series && e.series.length > 12,
164
+ message: [
165
+ "👀 The number of series is > 12. Consider:",
166
+ "",
167
+ "▶️ Using several instances of the component to distribute the series.",
168
+ "",
169
+ "▶️ Using filters to let users choose a maximum number of series to display.",
170
+ ""
171
+ ]
172
+ }
173
+ ]
174
+ });
175
+ let L = d(() => j.value.userOptions.useCursorPointer), $t = d(() => oe({
176
+ defaultConfig: {
177
+ userOptions: { show: !1 },
178
+ table: { show: !1 },
179
+ useCssAnimation: !1,
180
+ style: { chart: {
181
+ backgroundColor: "#99999930",
182
+ layout: {
183
+ grid: { stroke: "#6A6A6A90" },
184
+ labels: { dataLabels: { show: !1 } },
185
+ outerPolygon: { stroke: "#6A6A6A" }
186
+ },
187
+ legend: { backgroundColor: "transparent" }
188
+ } }
189
+ },
190
+ userConfig: j.value.skeletonConfig ?? {}
191
+ })), { loading: en, FINAL_DATASET: R } = ge({
192
+ ...Ge(D),
193
+ FINAL_CONFIG: j,
194
+ prepareConfig: on,
195
+ callback: () => {
196
+ Promise.resolve().then(async () => {
197
+ await ze(), U.value.showTable = j.value.table.show;
198
+ });
199
+ },
200
+ skeletonDataset: D.config?.skeletonDataset ?? {
201
+ categories: [{
202
+ name: "_",
203
+ color: "#6A6A6A"
204
+ }],
205
+ series: [
206
+ {
207
+ name: "_",
208
+ values: [.6],
209
+ target: 1
210
+ },
211
+ {
212
+ name: "_",
213
+ values: [.6],
214
+ target: 1
215
+ },
216
+ {
217
+ name: "_",
218
+ values: [.6],
219
+ target: 1
220
+ },
221
+ {
222
+ name: "_",
223
+ values: [.6],
224
+ target: 1
225
+ },
226
+ {
227
+ name: "_",
228
+ values: [.6],
229
+ target: 1
230
+ },
231
+ {
232
+ name: "_",
233
+ values: [.6],
234
+ target: 1
235
+ }
236
+ ]
237
+ },
238
+ skeletonConfig: oe({
239
+ defaultConfig: j.value,
240
+ userConfig: $t.value
241
+ })
242
+ }), { userOptionsVisible: tn, setUserOptionsVisibility: nn, keepUserOptionState: rn } = ke({ config: j.value }), { svgRef: z } = Ae({ config: I.value.title });
243
+ function an(e) {
244
+ return {
245
+ ...e,
246
+ style: {
247
+ ...e.style,
248
+ chart: {
249
+ ...e.style.chart,
250
+ layout: {
251
+ ...e.style.chart.layout,
252
+ grid: {
253
+ rotate: 0,
254
+ ...e.style.chart.layout.grid
255
+ },
256
+ labels: {
257
+ ...e.style.chart.layout.labels,
258
+ dataLabels: {
259
+ offset: 0,
260
+ ...e.style.chart.layout.labels.dataLabels
261
+ }
262
+ }
263
+ }
264
+ }
265
+ }
266
+ };
267
+ }
268
+ function on() {
269
+ let e = an(ve({
270
+ userConfig: D.config,
271
+ defaultConfig: Nt
272
+ })), t = e.theme;
273
+ if (!t) return e;
274
+ if (!Pt.value(e)) return Ft(e), e;
275
+ let n = ve({
276
+ userConfig: Ne[t] || D.config,
277
+ defaultConfig: e
278
+ }), r = ve({
279
+ userConfig: D.config,
280
+ defaultConfig: n
281
+ });
282
+ return {
283
+ ...r,
284
+ customPalette: r.customPalette.length ? r.customPalette : re[t] || i
285
+ };
286
+ }
287
+ function sn(e) {
288
+ let t = ie(e);
289
+ return t?.style?.chart && delete t.style.chart.tooltip, JSON.stringify(t);
290
+ }
291
+ let cn = sn(D.config);
292
+ Ke(() => D.config, (e, t) => {
293
+ let n = sn(e), r = n !== cn;
294
+ cn = n;
295
+ let i = on();
296
+ if (!r) {
297
+ j.value.style.chart.tooltip = i.style.chart.tooltip, U.value.showTooltip = j.value.style.chart.tooltip.show;
298
+ return;
299
+ }
300
+ j.value = i, tn.value = !j.value.userOptions.showOnChartHover, ln(), Wt.value += 1, Gt.value += 1, Kt.value += 1, U.value.dataLabels.show = N.value.dataLabels.show, U.value.showTable = j.value.table.show, U.value.showTooltip = F.value ? F.value.show : !1;
301
+ }, { deep: !0 });
302
+ let B = We(null), V = We(null), H = d(() => j.value.debug);
303
+ function ln() {
304
+ if (fe(D.dataset) && l({
305
+ componentName: "VueUiRadar",
306
+ type: "dataset",
307
+ debug: H.value
308
+ }), j.value.responsive) {
309
+ let e = we(() => {
310
+ let { width: e, height: t } = Te({
311
+ chart: k.value,
312
+ title: I.value.title.text ? Bt.value : null,
313
+ legend: I.value.legend.show ? Vt.value : null,
314
+ source: Ht.value,
315
+ noTitle: Ut.value
316
+ });
317
+ requestAnimationFrame(() => {
318
+ W.value.width = e, W.value.height = t, Rn();
319
+ });
320
+ });
321
+ B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect()), B.value = new ResizeObserver(e), V.value = k.value.parentNode, B.value.observe(V.value);
322
+ }
323
+ Rn();
324
+ }
325
+ He(() => {
326
+ qt.value = !0, ln();
327
+ }), Ve(() => {
328
+ B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect());
329
+ });
330
+ let { isPrinting: un, isImaging: dn, generatePdf: fn, generateImage: pn } = he({
331
+ elementId: `vue-ui-radar_${O.value}`,
332
+ fileName: I.value.title.text || "vue-ui-radar",
333
+ options: j.value.userOptions.print
334
+ }), mn = d(() => j.value.userOptions.show && !I.value.title.text), hn = d(() => ue(j.value.customPalette)), U = x({
335
+ dataLabels: { show: N.value.dataLabels.show },
336
+ showTable: j.value.table.show,
337
+ showTooltip: F.value.show
338
+ }), gn = d(() => ({ style: {
339
+ backgroundColor: "#FFFFFF00",
340
+ animation: {
341
+ show: F.value.animation.show,
342
+ animationFrames: F.value.animation.animationFrames
343
+ },
344
+ labels: {
345
+ fontSize: F.value.fontSize,
346
+ name: { color: F.value.color }
347
+ },
348
+ gutter: {
349
+ backgroundColor: "#CCCCCC",
350
+ opacity: 30
351
+ }
352
+ } })), W = x({
353
+ height: 312,
354
+ width: 512
355
+ }), _n = qe, G = x([]), vn = x(null), K = x(!1);
356
+ function yn() {
357
+ G.value.length ? G.value = [] : X.value.forEach((e, t) => {
358
+ G.value.push(t);
359
+ }), bn();
360
+ }
361
+ function bn() {
362
+ _n("selectLegend", X.value.filter((e, t) => !G.value.includes(t)).map((e) => ({
363
+ name: e.name,
364
+ color: e.color,
365
+ proportion: e.totalProportion
366
+ })));
367
+ }
368
+ function xn(e) {
369
+ K.value = !0, G.value.includes(e) ? (vn.value = e, G.value = G.value.filter((t) => t !== e), setTimeout(() => {
370
+ K.value = !1, vn.value = null;
371
+ }, 500)) : (G.value.push(e), setTimeout(() => {
372
+ K.value = !1;
373
+ }, 500)), bn();
374
+ }
375
+ function Sn() {
376
+ return X.value.map((e) => ({
377
+ name: e.name,
378
+ color: e.color,
379
+ proportion: e.totalProportion
380
+ }));
381
+ }
382
+ function Cn() {
383
+ let e = R.value;
384
+ if ([null, void 0].includes(e?.categories)) {
385
+ l({
386
+ componentName: "VueUiRadar",
387
+ type: "dataset",
388
+ debug: H.value
389
+ }), l({
390
+ componentName: "VueUiRadar",
391
+ type: "datasetAttribute",
392
+ property: "categories ({ name: string; prefix?: string; suffix?: string}[])",
393
+ debug: H.value
394
+ });
395
+ return;
396
+ }
397
+ e.categories.length === 0 ? l({
398
+ componentName: "VueUiRadar",
399
+ type: "datasetAttributeEmpty",
400
+ property: "categories",
401
+ debug: H.value
402
+ }) : H.value && e.categories.forEach((e, t) => {
403
+ de({
404
+ datasetObject: e,
405
+ requiredAttributes: ["name"]
406
+ }).forEach((e) => {
407
+ l({
408
+ componentName: "VueUiRadar",
409
+ type: "datasetAttribute",
410
+ property: `category.${e} at index ${t}`,
411
+ index: t
412
+ });
413
+ });
414
+ }), [null, void 0].includes(e?.series) ? l({
415
+ componentName: "VueUiRadar",
416
+ type: "datasetAttribute",
417
+ property: "series ({ name: string; values: number[]; color?: string; target: number}[])",
418
+ debug: H.value
419
+ }) : H.value && e.series.forEach((e, t) => {
420
+ de({
421
+ datasetObject: e,
422
+ requiredAttributes: [
423
+ "name",
424
+ "values",
425
+ "target"
426
+ ]
427
+ }).forEach((e) => {
428
+ l({
429
+ componentName: "VueUiRadar",
430
+ type: "datasetSerieAttribute",
431
+ key: "series",
432
+ property: e,
433
+ index: t
434
+ });
435
+ });
436
+ });
437
+ }
438
+ Ke(() => R.value, () => Cn(), {
439
+ deep: !0,
440
+ immediate: !0
441
+ });
442
+ let q = d(() => {
443
+ let e = Array.isArray(R.value?.categories) ? R.value.categories : [], t = hn.value ?? i;
444
+ return e.map((e, n) => ({
445
+ name: e?.name ?? "",
446
+ categoryId: `radar_category_${O.value}_${n}`,
447
+ color: c(e?.color) || t[n] || i[n % i.length],
448
+ prefix: e?.prefix ?? "",
449
+ suffix: e?.suffix ?? ""
450
+ }));
451
+ }), J = d(() => R.value.series.map((e, t) => ({
452
+ ...e,
453
+ color: c(e.color) || hn.value[t] || i[t] || i[t % i.length],
454
+ serieId: `radar_serie_${O.value}_${t}`,
455
+ formatter: e.formatter || null,
456
+ absoluteIndex: t
457
+ })));
458
+ function wn(e) {
459
+ return J.value.length ? X.value.find((t) => t.name === e) || (H.value && console.warn(`VueUiRadar - Series name not found "${e}"`), null) : (H.value && console.warn("VueUiRadar - There are no series to show."), null);
460
+ }
461
+ function Tn(e) {
462
+ let t = wn(e);
463
+ t !== null && G.value.includes(t.absoluteIndex) && xn(t.absoluteIndex);
464
+ }
465
+ function En(e) {
466
+ let t = wn(e);
467
+ t !== null && (G.value.includes(t.absoluteIndex) || xn(t.absoluteIndex));
468
+ }
469
+ let Dn = d(() => Math.max(0, ...J.value.flatMap((e) => e.values)));
470
+ function On(e) {
471
+ return P.value.scaleToAxisMax ? Math.max(1, e.target || 0, ...e.values) : e.target || Dn.value || 1;
472
+ }
473
+ let kn = d(() => J.value.map((e, t) => {
474
+ let n = Pn.value.coordinates[t];
475
+ return zn({
476
+ centerX: W.value.width / 2,
477
+ centerY: W.value.height / 2,
478
+ apexX: n.x,
479
+ apexY: n.y,
480
+ proportion: (e.target || 0) / On(e)
481
+ });
482
+ })), An = d(() => J.value.length), jn = d(() => Math.min(W.value.width, W.value.height) / 3), Mn = d(() => {
483
+ let e = Number(P.value.plots.radius ?? 0);
484
+ return Math.max(Number.isFinite(e) ? e * 2.5 : 0, 10);
485
+ }), Nn = d(() => {
486
+ let e = Number(P.value.grid.rotation ?? 0);
487
+ return Number.isFinite(e) ? e * Math.PI / 180 : 0;
488
+ }), Pn = d(() => s({
489
+ plot: {
490
+ x: W.value.width / 2,
491
+ y: W.value.height / 2
492
+ },
493
+ radius: jn.value,
494
+ sides: An.value,
495
+ rotation: Nn.value
496
+ })), Fn = d(() => {
497
+ let e = [];
498
+ for (let t = 0; t < jn.value; t += jn.value / P.value.grid.graduations) e.push(t);
499
+ return e;
500
+ }), Y = d(() => Pn.value.coordinates.map((e, t) => {
501
+ let n = J.value[t], r = J.value[t].values.map((t) => zn({
502
+ centerX: W.value.width / 2,
503
+ centerY: W.value.height / 2,
504
+ apexX: e.x,
505
+ apexY: e.y,
506
+ proportion: t / On(n)
507
+ }));
508
+ return {
509
+ ...e,
510
+ ...n,
511
+ plots: r
512
+ };
513
+ }).map((e) => ({
514
+ ...e,
515
+ labelX: In(e).x,
516
+ labelY: In(e).y,
517
+ labelAnchor: In(e).anchor
518
+ })));
519
+ function In({ x: e, y: t }) {
520
+ let n = W.value.width / 2, r = W.value.height / 2, i = e - n, a = t - r, o = Math.hypot(i, a), s = Number(N.value.dataLabels.offset ?? 0), c = 20 + (Number.isFinite(s) ? s : 0);
521
+ if (!o) return {
522
+ x: e,
523
+ y: t,
524
+ anchor: "middle"
525
+ };
526
+ let ee = i / o, te = a / o, l = "middle";
527
+ return ee > .01 ? l = "start" : ee < -.01 && (l = "end"), {
528
+ x: e + ee * c,
529
+ y: t + te * c,
530
+ anchor: l
531
+ };
532
+ }
533
+ let Ln = d({
534
+ get: () => N.value.dataLabels.fontSize,
535
+ set: (e) => e
536
+ }), { autoSizeLabels: Rn } = Me({
537
+ svgRef: z,
538
+ fontSize: N.value.dataLabels.fontSize,
539
+ minFontSize: 6,
540
+ sizeRef: Ln,
541
+ labelClass: ".vue-ui-radar-apex-label"
542
+ });
543
+ function zn({ centerX: e, centerY: t, apexX: n, apexY: r, proportion: i }) {
544
+ return {
545
+ x: e + (n - e) * i,
546
+ y: t + (r - t) * i
547
+ };
548
+ }
549
+ let X = d(() => {
550
+ let e = J.value.map((e, t) => e.values.map((t) => t / (e.target || Dn.value)));
551
+ return q.value.map((n, r) => {
552
+ let i = ne(e.map((e) => e[r]).reduce((e, t) => e + t, 0) / J.value.length);
553
+ return {
554
+ ...n,
555
+ absoluteIndex: r,
556
+ totalProportion: i,
557
+ shape: "circle",
558
+ opacity: G.value.includes(r) ? .5 : 1,
559
+ segregate: () => xn(r),
560
+ isSegregated: G.value.includes(r),
561
+ display: `${n.name}: ${t({
562
+ v: (i ?? 0) * 100,
563
+ s: "%",
564
+ r: I.value.legend.roundingPercentage
565
+ })}`
566
+ };
567
+ });
568
+ }), Bn = d(() => ({
569
+ cy: "radar-div-legend",
570
+ backgroundColor: I.value.legend.backgroundColor,
571
+ color: I.value.legend.color,
572
+ fontSize: I.value.legend.fontSize,
573
+ paddingBottom: 12,
574
+ fontWeight: I.value.legend.bold ? "bold" : ""
575
+ })), Z = d(() => {
576
+ let e = [
577
+ {
578
+ name: j.value.translations.datapoint,
579
+ color: ""
580
+ },
581
+ {
582
+ name: j.value.translations.target,
583
+ color: ""
584
+ },
585
+ ...X.value
586
+ ];
587
+ return {
588
+ head: e,
589
+ body: R.value.series.map((e) => [
590
+ e.name,
591
+ ae(e.formatter, e.target, t({
592
+ p: e.prefix,
593
+ v: e.target,
594
+ s: e.suffix,
595
+ r: j.value.table.td.roundingValue
596
+ })),
597
+ ...e.values.map((n, r) => `${ae(e.formatter, n, t({
598
+ p: q.value[r]?.prefix ?? "",
599
+ v: n,
600
+ s: q.value[r]?.suffix ?? "",
601
+ r: j.value.table.td.roundingValue
602
+ }))} (${isNaN(n / e.target) ? "" : t({
603
+ v: n / e.target * 100,
604
+ s: "%",
605
+ r: j.value.table.td.roundingPercentage
606
+ })})`)
607
+ ]),
608
+ config: {
609
+ th: {
610
+ backgroundColor: j.value.table.th.backgroundColor,
611
+ color: j.value.table.th.color,
612
+ outline: j.value.table.th.outline
613
+ },
614
+ td: {
615
+ backgroundColor: j.value.table.td.backgroundColor,
616
+ color: j.value.table.td.color,
617
+ outline: j.value.table.td.outline
618
+ },
619
+ breakpoint: j.value.table.responsiveBreakpoint
620
+ },
621
+ colNames: e
622
+ };
623
+ }), Q = x(null), Vn = x([]), Hn = x(null);
624
+ function Un(e, t) {
625
+ Lt.value = !1, Q.value = null, A.value = null, Zt.value = "pointer", j.value.events.datapointLeave && j.value.events.datapointLeave({
626
+ datapoint: e,
627
+ seriesIndex: t
628
+ });
629
+ }
630
+ function Wn(e, t) {
631
+ j.value.events.datapointClick && j.value.events.datapointClick({
632
+ datapoint: e,
633
+ seriesIndex: t
634
+ });
635
+ }
636
+ function Gn(e, n, i = "pointer") {
637
+ j.value.events.datapointEnter && j.value.events.datapointEnter({
638
+ datapoint: e,
639
+ seriesIndex: n
640
+ }), Zt.value = i, A.value = n;
641
+ let a = q.value.slice();
642
+ Vn.value = [], Q.value = n, Lt.value = !0, Hn.value = {
643
+ datapoint: e,
644
+ seriesIndex: n,
645
+ series: {
646
+ categories: a,
647
+ datapoints: J.value,
648
+ radar: Y.value
649
+ },
650
+ config: j.value
651
+ };
652
+ let o = F.value.customFormat;
653
+ if (r(o) && ce(() => o({
654
+ seriesIndex: n,
655
+ datapoint: e,
656
+ series: {
657
+ categories: a,
658
+ datapoints: J.value,
659
+ radar: Y.value
660
+ },
661
+ config: j.value
662
+ }))) {
663
+ Rt.value = o({
664
+ seriesIndex: n,
665
+ datapoint: e,
666
+ series: {
667
+ categories: a,
668
+ datapoints: J.value,
669
+ radar: Y.value
670
+ },
671
+ config: j.value
672
+ });
673
+ return;
674
+ }
675
+ Rt.value = `<div style="width:100%;text-align:center;border-bottom:1px solid ${F.value.borderColor};padding-bottom:6px;margin-bottom:3px;">${e.name}</div>`;
676
+ for (let n = 0; n < e.values.length; n += 1) if (!G.value.includes(n)) {
677
+ let r = a[n], i = e.values[n], o = isNaN(i / e.target) ? 0 : i / e.target * 100, s = ae(e.formatter, i, t({
678
+ p: q.value[n].prefix,
679
+ v: i,
680
+ s: q.value[n].suffix,
681
+ r: F.value.roundingValue
682
+ }), { datapoint: e }), c = t({
683
+ v: o,
684
+ s: "%",
685
+ r: F.value.roundingPercentage
686
+ }), ee = F.value.showValue && F.value.showPercentage ? `${s} (${c})` : F.value.showValue && !F.value.showPercentage ? s : !F.value.showValue && F.value.showPercentage ? `${c}` : "";
687
+ Vn.value.push({
688
+ name: r?.name ?? `#${n + 1}`,
689
+ value: e.values[n] / e.target * 100,
690
+ color: r?.color,
691
+ suffix: ee,
692
+ prefix: "",
693
+ rounding: F.value.roundingPercentage,
694
+ formatter: e.formatter
695
+ });
696
+ }
697
+ }
698
+ function Kn(e = null) {
699
+ ze(() => {
700
+ let t = [
701
+ [I.value.title.text],
702
+ [I.value.title.subtitle.text],
703
+ [""]
704
+ ], r = [
705
+ [""],
706
+ [j.value.translations.target],
707
+ ...X.value.flatMap((e) => [[e.name], ["%"]])
708
+ ], i = R.value.series.map((e, t) => [
709
+ e.name,
710
+ e.target,
711
+ ...e.values.flatMap((t) => [t, isNaN(t / e.target) ? "" : t / e.target * 100])
712
+ ]), a = t.concat([r]).concat(i), o = n(a);
713
+ e ? e(o) : se({
714
+ csvContent: o,
715
+ title: I.value.title.text || "vue-ui-radar"
716
+ });
717
+ });
718
+ }
719
+ let $ = x(!1);
720
+ function qn(e) {
721
+ $.value = e, zt.value += 1;
722
+ }
723
+ function Jn() {
724
+ U.value.showTable = !U.value.showTable;
725
+ }
726
+ function Yn() {
727
+ U.value.showTooltip = !U.value.showTooltip;
728
+ }
729
+ let Xn = x(!1);
730
+ function Zn() {
731
+ Xn.value = !Xn.value;
732
+ }
733
+ async function Qn({ scale: e = 2 } = {}) {
734
+ if (!k.value) return;
735
+ let { width: t, height: n } = k.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await xe({
736
+ domElement: k.value,
737
+ base64: !0,
738
+ img: !0,
739
+ scale: e
740
+ });
741
+ return {
742
+ imageUri: i,
743
+ base64: a,
744
+ title: I.value.title.text,
745
+ width: t,
746
+ height: n,
747
+ aspectRatio: r
748
+ };
749
+ }
750
+ let $n = d(() => {
751
+ let e = j.value.table.useDialog && !j.value.table.show, t = U.value.showTable;
752
+ return {
753
+ component: e ? Mt : Dt,
754
+ title: `${I.value.title.text}${I.value.title.subtitle.text ? `: ${I.value.title.subtitle.text}` : ""}`,
755
+ props: e ? {
756
+ backgroundColor: j.value.table.th.backgroundColor,
757
+ color: j.value.table.th.color,
758
+ headerColor: j.value.table.th.color,
759
+ headerBg: j.value.table.th.backgroundColor,
760
+ isFullscreen: $.value,
761
+ fullscreenParent: k.value,
762
+ forcedWidth: Math.min(800, window.innerWidth * .8),
763
+ isCursorPointer: L.value
764
+ } : {
765
+ hideDetails: !0,
766
+ config: {
767
+ open: t,
768
+ maxHeight: 1e4,
769
+ body: {
770
+ backgroundColor: I.value.backgroundColor,
771
+ color: I.value.color
772
+ },
773
+ head: {
774
+ backgroundColor: I.value.backgroundColor,
775
+ color: I.value.color
776
+ }
777
+ }
778
+ }
779
+ };
780
+ });
781
+ Ke(() => U.value.showTable, (e) => {
782
+ j.value.table.show || (e && j.value.table.useDialog && Jt.value ? Jt.value.open() : "close" in Jt.value && Jt.value.close());
783
+ });
784
+ function er() {
785
+ U.value.showTable = !1, Yt.value && Yt.value.setTableIconState(!1);
786
+ }
787
+ let tr = d(() => X.value.map((e) => ({
788
+ ...e,
789
+ name: e.display
790
+ }))), nr = d(() => I.value.backgroundColor), rr = d(() => I.value.legend), ir = d(() => I.value.title), { isCallbackImaging: ar, isCallbackSvg: or, generateSvg: sr, onGenerateImage: cr } = be({
791
+ svg: z,
792
+ title: ir,
793
+ legend: rr,
794
+ legendItems: tr,
795
+ backgroundColor: nr,
796
+ getSvgCallback: () => j.value.userOptions.callbacks.svg,
797
+ generateImage: pn
798
+ });
799
+ async function lr() {
800
+ if (_n("copyAlt", {
801
+ config: j.value,
802
+ dataset: Y.value
803
+ }), !j.value.userOptions.callbacks.altCopy) {
804
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
805
+ return;
806
+ }
807
+ await Promise.resolve(j.value.userOptions.callbacks.altCopy({
808
+ config: j.value,
809
+ dataset: Y.value
810
+ }));
811
+ }
812
+ function ur() {
813
+ A.value = null, Qt.value = !0;
814
+ }
815
+ function dr() {
816
+ A.value = null, Zt.value = "pointer", Lt.value = !1, Q.value = null, Qt.value = !1;
817
+ }
818
+ function fr(e) {
819
+ if (!Number.isFinite(e) || !z.value) return;
820
+ let t = Y.value[e];
821
+ if (!t) return;
822
+ let n = z.value.getBoundingClientRect();
823
+ Xt.value = {
824
+ x: n.left + t.labelX / W.value.width * n.width,
825
+ y: n.top + t.labelY / W.value.height * n.height
826
+ };
827
+ }
828
+ function pr(e) {
829
+ if (!z.value || Xn.value || document.activeElement !== z.value || !Y.value.length) return;
830
+ let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
831
+ if (!t && !n && !r && !i) return;
832
+ if (e.preventDefault(), e.stopPropagation(), i) {
833
+ A.value = null, Zt.value = "pointer", Lt.value = !1, Q.value = null;
834
+ return;
835
+ }
836
+ if (r) {
837
+ if (A.value === null) return;
838
+ let e = Y.value[A.value];
839
+ if (!e) return;
840
+ Wn(e, A.value);
841
+ return;
842
+ }
843
+ let a = A.value;
844
+ a === null || a < 0 || a >= Y.value.length ? a = n ? 0 : Y.value.length - 1 : n ? (a += 1, a >= Y.value.length && (a = 0)) : t && (--a, a < 0 && (a = Y.value.length - 1));
845
+ let o = Y.value[a];
846
+ o && (A.value = a, fr(a), Gn(o, a, "keyboard"));
847
+ }
848
+ let mr = d(() => ({
849
+ headers: Z.value?.colNames?.map((e) => e.name ?? e) ?? [],
850
+ rows: Z.value?.body ?? []
851
+ }));
852
+ return Ce({
853
+ getData: Sn,
854
+ getImage: Qn,
855
+ generatePdf: fn,
856
+ generateCsv: Kn,
857
+ generateImage: pn,
858
+ generateSvg: sr,
859
+ hideSeries: En,
860
+ showSeries: Tn,
861
+ toggleTable: Jn,
862
+ toggleTooltip: Yn,
863
+ toggleAnnotator: Zn,
864
+ toggleFullscreen: qn,
865
+ copyAlt: lr
866
+ }), (e, t) => (b(), m("div", {
867
+ class: Be(`vue-data-ui-component vue-ui-radar ${$.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${j.value.useCssAnimation ? "" : "vue-ui-dna"}`),
868
+ ref_key: "radarChart",
869
+ ref: k,
870
+ id: `vue-ui-radar_${O.value}`,
871
+ style: y(`font-family:${j.value.style.fontFamily};width:100%; ${j.value.responsive ? "height: 100%;" : ""} text-align:center;background:${I.value.backgroundColor}`),
872
+ onMouseenter: t[2] ||= () => T(nn)(!0),
873
+ onMouseleave: t[3] ||= () => T(nn)(!1)
874
+ }, [
875
+ h("div", {
876
+ id: `chart-instructions-${O.value}`,
877
+ class: "sr-only"
878
+ }, [h("p", null, w(j.value.a11y.translations.keyboardNavigation), 1)], 8, Ye),
879
+ mr.value?.rows?.length ? (b(), f(Oe, {
880
+ key: 0,
881
+ uid: O.value,
882
+ head: mr.value.headers,
883
+ body: mr.value.rows,
884
+ notice: j.value.a11y.translations.tableAvailable,
885
+ caption: j.value.a11y.translations.tableCaption
886
+ }, null, 8, [
887
+ "uid",
888
+ "head",
889
+ "body",
890
+ "notice",
891
+ "caption"
892
+ ])) : p("", !0),
893
+ M.value.buttons.annotator ? (b(), f(T(kt), {
894
+ key: 1,
895
+ svgRef: T(z),
896
+ backgroundColor: I.value.backgroundColor,
897
+ color: I.value.color,
898
+ active: Xn.value,
899
+ isCursorPointer: L.value,
900
+ palette: M.value.annotatorPalette,
901
+ onClose: Zn
902
+ }, {
903
+ "annotator-action-close": E(() => [C(e.$slots, "annotator-action-close", {}, void 0, !0)]),
904
+ "annotator-action-color": E(({ color: t }) => [C(e.$slots, "annotator-action-color", v(_({ color: t })), void 0, !0)]),
905
+ "annotator-action-draw": E(({ mode: t }) => [C(e.$slots, "annotator-action-draw", v(_({ mode: t })), void 0, !0)]),
906
+ "annotator-action-undo": E(({ disabled: t }) => [C(e.$slots, "annotator-action-undo", v(_({ disabled: t })), void 0, !0)]),
907
+ "annotator-action-redo": E(({ disabled: t }) => [C(e.$slots, "annotator-action-redo", v(_({ disabled: t })), void 0, !0)]),
908
+ "annotator-action-delete": E(({ disabled: t }) => [C(e.$slots, "annotator-action-delete", v(_({ disabled: t })), void 0, !0)]),
909
+ _: 3
910
+ }, 8, [
911
+ "svgRef",
912
+ "backgroundColor",
913
+ "color",
914
+ "active",
915
+ "isCursorPointer",
916
+ "palette"
917
+ ])) : p("", !0),
918
+ mn.value ? (b(), m("div", {
919
+ key: 2,
920
+ ref_key: "noTitle",
921
+ ref: Ut,
922
+ class: "vue-data-ui-no-title-space",
923
+ style: "height:36px; width: 100%;background:transparent"
924
+ }, null, 512)) : p("", !0),
925
+ I.value.title.text ? (b(), m("div", {
926
+ key: 3,
927
+ ref_key: "chartTitle",
928
+ ref: Bt,
929
+ style: "width:100%;background:transparent;padding-bottom:12px"
930
+ }, [(b(), f(Se, {
931
+ key: `title_${Wt.value}`,
932
+ config: {
933
+ title: {
934
+ cy: "radar-div-title",
935
+ ...I.value.title
936
+ },
937
+ subtitle: {
938
+ cy: "radar-div-subtitle",
939
+ ...I.value.title.subtitle
940
+ }
941
+ }
942
+ }, null, 8, ["config"]))], 512)) : p("", !0),
943
+ h("div", { id: `legend-top-${O.value}` }, null, 8, Xe),
944
+ M.value.show && It.value && (T(rn) || T(tn)) ? (b(), f(T(At), {
945
+ ref_key: "userOptionsRef",
946
+ ref: Yt,
947
+ key: `user_options_${zt.value}`,
948
+ backgroundColor: I.value.backgroundColor,
949
+ color: I.value.color,
950
+ isImaging: T(dn),
951
+ isPrinting: T(un),
952
+ uid: O.value,
953
+ hasTooltip: M.value.buttons.tooltip && F.value.show,
954
+ hasPdf: M.value.buttons.pdf,
955
+ hasImg: M.value.buttons.img,
956
+ hasSvg: M.value.buttons.svg,
957
+ hasXls: M.value.buttons.csv,
958
+ hasTable: M.value.buttons.table,
959
+ hasFullscreen: M.value.buttons.fullscreen,
960
+ hasAltCopy: M.value.buttons.altCopy,
961
+ isFullscreen: $.value,
962
+ isTooltip: U.value.showTooltip,
963
+ titles: { ...M.value.buttonTitles },
964
+ chartElement: k.value,
965
+ position: M.value.position,
966
+ hasAnnotator: M.value.buttons.annotator,
967
+ isAnnotation: Xn.value,
968
+ callbacks: M.value.callbacks,
969
+ printScale: M.value.print.scale,
970
+ tableDialog: j.value.table.useDialog,
971
+ isCursorPointer: L.value,
972
+ onToggleFullscreen: qn,
973
+ onGeneratePdf: T(fn),
974
+ onGenerateCsv: Kn,
975
+ onGenerateImage: T(cr),
976
+ onGenerateSvg: T(sr),
977
+ onToggleTable: Jn,
978
+ onToggleTooltip: Yn,
979
+ onToggleAnnotator: Zn,
980
+ onCopyAlt: lr,
981
+ style: y({ visibility: T(rn) ? T(tn) ? "visible" : "hidden" : "visible" })
982
+ }, Fe({ _: 2 }, [
983
+ e.$slots.menuIcon ? {
984
+ name: "menuIcon",
985
+ fn: E(({ isOpen: t, color: n }) => [C(e.$slots, "menuIcon", v(_({
986
+ isOpen: t,
987
+ color: n
988
+ })), void 0, !0)]),
989
+ key: "0"
990
+ } : void 0,
991
+ e.$slots.optionTooltip ? {
992
+ name: "optionTooltip",
993
+ fn: E(() => [C(e.$slots, "optionTooltip", {}, void 0, !0)]),
994
+ key: "1"
995
+ } : void 0,
996
+ e.$slots.optionPdf ? {
997
+ name: "optionPdf",
998
+ fn: E(() => [C(e.$slots, "optionPdf", {}, void 0, !0)]),
999
+ key: "2"
1000
+ } : void 0,
1001
+ e.$slots.optionCsv ? {
1002
+ name: "optionCsv",
1003
+ fn: E(() => [C(e.$slots, "optionCsv", {}, void 0, !0)]),
1004
+ key: "3"
1005
+ } : void 0,
1006
+ e.$slots.optionImg ? {
1007
+ name: "optionImg",
1008
+ fn: E(() => [C(e.$slots, "optionImg", {}, void 0, !0)]),
1009
+ key: "4"
1010
+ } : void 0,
1011
+ e.$slots.optionSvg ? {
1012
+ name: "optionSvg",
1013
+ fn: E(() => [C(e.$slots, "optionSvg", {}, void 0, !0)]),
1014
+ key: "5"
1015
+ } : void 0,
1016
+ e.$slots.optionTable ? {
1017
+ name: "optionTable",
1018
+ fn: E(() => [C(e.$slots, "optionTable", {}, void 0, !0)]),
1019
+ key: "6"
1020
+ } : void 0,
1021
+ e.$slots.optionFullscreen ? {
1022
+ name: "optionFullscreen",
1023
+ fn: E(({ toggleFullscreen: t, isFullscreen: n }) => [C(e.$slots, "optionFullscreen", v(_({
1024
+ toggleFullscreen: t,
1025
+ isFullscreen: n
1026
+ })), void 0, !0)]),
1027
+ key: "7"
1028
+ } : void 0,
1029
+ e.$slots.optionAnnotator ? {
1030
+ name: "optionAnnotator",
1031
+ fn: E(({ toggleAnnotator: t, isAnnotator: n }) => [C(e.$slots, "optionAnnotator", v(_({
1032
+ toggleAnnotator: t,
1033
+ isAnnotator: n
1034
+ })), void 0, !0)]),
1035
+ key: "8"
1036
+ } : void 0,
1037
+ e.$slots.optionAltCopy ? {
1038
+ name: "optionAltCopy",
1039
+ fn: E(({ altCopy: t }) => [C(e.$slots, "optionAltCopy", v(_({ altCopy: t })), void 0, !0)]),
1040
+ key: "9"
1041
+ } : void 0,
1042
+ e.$slots["custom-menu-before"] ? {
1043
+ name: "custom-menu-before",
1044
+ fn: E(() => [C(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1045
+ key: "10"
1046
+ } : void 0,
1047
+ e.$slots["custom-menu-after"] ? {
1048
+ name: "custom-menu-after",
1049
+ fn: E(() => [C(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1050
+ key: "11"
1051
+ } : void 0
1052
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isImaging.isPrinting.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : p("", !0),
1053
+ h("div", Ze, [(b(), m("svg", {
1054
+ ref_key: "svgRef",
1055
+ ref: z,
1056
+ xmlns: T(le),
1057
+ "aria-describedby": `chart-instructions-${O.value}`,
1058
+ class: Be({
1059
+ "vue-data-ui-fullscreen--on": $.value,
1060
+ "vue-data-ui-fulscreen--off": !$.value
1061
+ }),
1062
+ viewBox: `0 0 ${W.value.width <= 0 ? 10 : W.value.width} ${W.value.height <= 0 ? 10 : W.value.height}`,
1063
+ style: y(`max-width:100%;overflow:visible;background:transparent;color:${I.value.color}`),
1064
+ tabindex: "0",
1065
+ onFocus: ur,
1066
+ onBlur: dr,
1067
+ onKeydown: pr
1068
+ }, [
1069
+ Le(T(jt)),
1070
+ e.$slots["chart-background"] ? (b(), m("foreignObject", {
1071
+ key: 0,
1072
+ x: 0,
1073
+ y: 0,
1074
+ width: W.value.width <= 0 ? 10 : W.value.width,
1075
+ height: W.value.height <= 0 ? 10 : W.value.height,
1076
+ style: { pointerEvents: "none" }
1077
+ }, [C(e.$slots, "chart-background", {}, void 0, !0)], 8, $e)) : p("", !0),
1078
+ h("defs", null, [(b(!0), m(u, null, S(q.value, (e, t) => (b(), f(Ee, {
1079
+ t: "radial",
1080
+ cx: "50%",
1081
+ cy: "50%",
1082
+ r: "50%",
1083
+ fx: "50%",
1084
+ fy: "50%",
1085
+ id: `radar_gradient_${O.value}_${t}`,
1086
+ key: `radar_gradient_${O.value}_${t}`,
1087
+ stops: [[
1088
+ "0%",
1089
+ T(a)(T(te)(e.color, .05), P.value.dataPolygon.opacity),
1090
+ 1
1091
+ ], [
1092
+ "100%",
1093
+ T(a)(e.color, P.value.dataPolygon.opacity),
1094
+ 1
1095
+ ]]
1096
+ }, null, 8, ["id", "stops"]))), 128))]),
1097
+ P.value.grid.show ? (b(), m("g", et, [(b(!0), m(u, null, S(Y.value, (e) => (b(), m("line", {
1098
+ x1: W.value.width / 2,
1099
+ y1: W.value.height / 2,
1100
+ x2: e.x,
1101
+ y2: e.y,
1102
+ stroke: P.value.grid.stroke,
1103
+ "stroke-width": P.value.grid.strokeWidth,
1104
+ style: { "pointer-events": "none" }
1105
+ }, null, 8, tt))), 256)), P.value.grid.graduations > 0 ? (b(), m("g", nt, [(b(!0), m(u, null, S(Fn.value, (e) => (b(), m("path", {
1106
+ d: T(s)({
1107
+ plot: {
1108
+ x: W.value.width / 2,
1109
+ y: W.value.height / 2
1110
+ },
1111
+ radius: e,
1112
+ sides: An.value,
1113
+ rotation: Nn.value
1114
+ }).path,
1115
+ fill: "none",
1116
+ stroke: P.value.grid.stroke,
1117
+ "stroke-width": P.value.grid.strokeWidth
1118
+ }, null, 8, rt))), 256))])) : p("", !0)])) : p("", !0),
1119
+ h("path", {
1120
+ d: Pn.value.path,
1121
+ fill: "none",
1122
+ stroke: P.value.outerPolygon.stroke,
1123
+ "stroke-width": P.value.outerPolygon.strokeWidth,
1124
+ "stroke-linejoin": "round",
1125
+ "stroke-linecap": "round",
1126
+ style: { "pointer-events": "none" }
1127
+ }, null, 8, it),
1128
+ N.value.dataLabels.show ? (b(), m("g", at, [(b(!0), m(u, null, S(Y.value, (e, t) => (b(), m("text", {
1129
+ class: "vue-ui-radar-apex-label",
1130
+ x: e.labelX,
1131
+ y: e.labelY,
1132
+ "text-anchor": e.labelAnchor,
1133
+ "dominant-baseline": "middle",
1134
+ "font-size": N.value.dataLabels.fontSize,
1135
+ fill: N.value.dataLabels.color,
1136
+ onMouseenter: (n) => Gn(e, t, "pointer"),
1137
+ onMouseleave: (n) => Un(e, t),
1138
+ onClick: (n) => Wn(e, t)
1139
+ }, w(e.name), 41, ot))), 256))])) : p("", !0),
1140
+ (b(!0), m(u, null, S(q.value, (e, t) => (b(), m("g", null, [h("g", null, [j.value.useCssAnimation || !j.value.useCssAnimation && !G.value.includes(t) ? (b(), m("polygon", {
1141
+ key: 0,
1142
+ points: T(o)(Y.value.map((e) => e.plots[t]), !1, !0),
1143
+ stroke: I.value.backgroundColor,
1144
+ "stroke-width": P.value.dataPolygon.strokeWidth + 1,
1145
+ fill: "none",
1146
+ class: Be({
1147
+ "animated-out": G.value.includes(t) && j.value.useCssAnimation,
1148
+ "animated-in": K.value && vn.value === t && j.value.useCssAnimation
1149
+ }),
1150
+ style: { "pointer-events": "none" }
1151
+ }, null, 10, st)) : p("", !0), j.value.useCssAnimation || !j.value.useCssAnimation && !G.value.includes(t) ? (b(), m("polygon", {
1152
+ key: 1,
1153
+ points: T(o)(Y.value.map((e) => e.plots[t]), !1, !0),
1154
+ stroke: e.color,
1155
+ "stroke-width": P.value.dataPolygon.strokeWidth,
1156
+ fill: P.value.dataPolygon.transparent ? "transparent" : P.value.dataPolygon.useGradient ? `url(#radar_gradient_${O.value}_${t})` : T(a)(e.color, P.value.dataPolygon.opacity),
1157
+ class: Be({
1158
+ "animated-out": G.value.includes(t) && j.value.useCssAnimation,
1159
+ "animated-in": K.value && vn.value === t && j.value.useCssAnimation
1160
+ }),
1161
+ style: { "pointer-events": "none" }
1162
+ }, null, 10, ct)) : p("", !0)])]))), 256)),
1163
+ P.value.targetReference.show ? (b(), m("path", {
1164
+ key: 3,
1165
+ class: "vue-ui-radar-target-polygon",
1166
+ d: `M${T(o)(kn.value, !1, !0)}Z`,
1167
+ fill: "none",
1168
+ stroke: P.value.targetReference.stroke,
1169
+ "stroke-width": P.value.targetReference.strokeWidth,
1170
+ "stroke-linejoin": "round",
1171
+ "stroke-linecap": "round",
1172
+ "stroke-dasharray": P.value.targetReference.strokeDasharray,
1173
+ style: { "pointer-events": "none" }
1174
+ }, null, 8, lt)) : p("", !0),
1175
+ P.value.plots.show ? (b(), m("g", ut, [(b(!0), m(u, null, S(Y.value, (e, t) => (b(), m("g", { key: `radar-category-${t}` }, [(b(!0), m(u, null, S(e.plots, (n, r) => (b(), m("g", {
1176
+ key: `radar-plot-${t}-${r}`,
1177
+ onMouseenter: (n) => !G.value.includes(r) && Gn(e, t, "pointer"),
1178
+ onMouseleave: (n) => !G.value.includes(r) && Un(e, t),
1179
+ onClick: (n) => !G.value.includes(r) && Wn(e, t)
1180
+ }, [h("circle", {
1181
+ cx: n.x,
1182
+ cy: n.y,
1183
+ r: Mn.value,
1184
+ fill: "transparent",
1185
+ stroke: "transparent",
1186
+ style: y({ pointerEvents: G.value.includes(r) ? "none" : "all" })
1187
+ }, null, 12, ft), h("circle", {
1188
+ cx: n.x,
1189
+ cy: n.y,
1190
+ fill: G.value.includes(r) ? "transparent" : q.value[r] ? q.value[r].color : "transparent",
1191
+ r: Q.value !== null && Q.value === t ? P.value.plots.radius * 1.6 : P.value.plots.radius,
1192
+ stroke: G.value.includes(r) ? "transparent" : I.value.backgroundColor,
1193
+ "stroke-width": .5,
1194
+ class: Be({
1195
+ "animated-out": G.value.includes(r) && j.value.useCssAnimation,
1196
+ "animated-in": K.value && vn.value === r && j.value.useCssAnimation
1197
+ }),
1198
+ style: { "pointer-events": "none" }
1199
+ }, null, 10, pt)], 40, dt))), 128))]))), 128))])) : p("", !0),
1200
+ C(e.$slots, "svg", { svg: {
1201
+ ...W.value,
1202
+ outerPolygon: Pn.value,
1203
+ isPrintingImg: T(un) || T(dn) || T(ar),
1204
+ isPrintingSvg: T(or)
1205
+ } }, void 0, !0)
1206
+ ], 46, Qe)), e.$slots.hint ? (b(), m("div", mt, [C(e.$slots, "hint", v(_({
1207
+ hint: j.value.a11y.translations.keyboardNavigation,
1208
+ isVisible: Qt.value
1209
+ })), void 0, !0)])) : p("", !0)]),
1210
+ e.$slots.watermark ? (b(), m("div", ht, [C(e.$slots, "watermark", v(_({ isPrinting: T(un) || T(dn) || T(ar) || T(or) })), void 0, !0)])) : p("", !0),
1211
+ h("div", { id: `legend-bottom-${O.value}` }, null, 8, gt),
1212
+ qt.value && (I.value.legend.show || e.$slots.legend) ? (b(), f(Pe, {
1213
+ key: 6,
1214
+ to: I.value.legend.position === "top" ? `#legend-top-${O.value}` : `#legend-bottom-${O.value}`
1215
+ }, [h("div", {
1216
+ ref_key: "chartLegend",
1217
+ ref: Vt
1218
+ }, [C(e.$slots, "legend", { legend: X.value }, () => [I.value.legend.show ? (b(), f(je, {
1219
+ key: `legend_${Kt.value}`,
1220
+ legendSet: X.value,
1221
+ config: Bn.value,
1222
+ isCursorPointer: L.value,
1223
+ onClickMarker: t[0] ||= ({ i: e }) => xn(e)
1224
+ }, Fe({
1225
+ item: E(({ legend: e, index: t }) => [T(en) ? p("", !0) : (b(), m("div", {
1226
+ key: 0,
1227
+ onClick: (t) => e.segregate(),
1228
+ style: y(`opacity:${G.value.includes(t) ? .5 : 1}`)
1229
+ }, w(e.display), 13, _t))]),
1230
+ legendToggle: E(() => [X.value.length > 2 && I.value.legend.selectAllToggle.show && !T(en) ? (b(), f(De, {
1231
+ key: 0,
1232
+ backgroundColor: I.value.legend.selectAllToggle.backgroundColor,
1233
+ color: I.value.legend.selectAllToggle.color,
1234
+ fontSize: I.value.legend.fontSize,
1235
+ checked: G.value.length > 0,
1236
+ isCursorPointer: L.value,
1237
+ onToggle: yn
1238
+ }, null, 8, [
1239
+ "backgroundColor",
1240
+ "color",
1241
+ "fontSize",
1242
+ "checked",
1243
+ "isCursorPointer"
1244
+ ])) : p("", !0)]),
1245
+ _: 2
1246
+ }, [P.value.targetReference.show && P.value.targetReference.showInLegend ? {
1247
+ name: "after",
1248
+ fn: E(() => [h("div", vt, [h("div", { style: y({
1249
+ display: "flex",
1250
+ height: I.value.legend.fontSize
1251
+ }) }, [(b(), m("svg", {
1252
+ style: y({ width: I.value.legend.fontSize * 2 }),
1253
+ viewBox: "0 0 16 8"
1254
+ }, [h("line", {
1255
+ x1: "0",
1256
+ x2: "16",
1257
+ y1: "4",
1258
+ y2: "4",
1259
+ stroke: P.value.targetReference.stroke,
1260
+ "stroke-width": P.value.targetReference.strokeWidth * .7,
1261
+ "stroke-dasharray": P.value.targetReference.strokeDasharray * .7,
1262
+ "stroke-linecap": "round"
1263
+ }, null, 8, yt)], 4))], 4), h("span", null, w(P.value.targetReference.legendLabel), 1)])]),
1264
+ key: "0"
1265
+ } : void 0]), 1032, [
1266
+ "legendSet",
1267
+ "config",
1268
+ "isCursorPointer"
1269
+ ])) : p("", !0)], !0)], 512)], 8, ["to"])) : p("", !0),
1270
+ e.$slots.source ? (b(), m("div", {
1271
+ key: 7,
1272
+ ref_key: "source",
1273
+ ref: Ht,
1274
+ dir: "auto"
1275
+ }, [C(e.$slots, "source", {}, void 0, !0)], 512)) : p("", !0),
1276
+ Le(T(wt), {
1277
+ teleportTo: F.value.teleportTo,
1278
+ show: U.value.showTooltip && Lt.value,
1279
+ backgroundColor: F.value.backgroundColor,
1280
+ color: F.value.color,
1281
+ borderRadius: F.value.borderRadius,
1282
+ borderColor: F.value.borderColor,
1283
+ borderWidth: F.value.borderWidth,
1284
+ backgroundOpacity: F.value.backgroundOpacity,
1285
+ fontSize: F.value.fontSize,
1286
+ position: F.value.position,
1287
+ offsetX: F.value.offsetX,
1288
+ offsetY: F.value.offsetY,
1289
+ parent: k.value,
1290
+ content: Rt.value,
1291
+ isFullscreen: $.value,
1292
+ isCustom: F.value.customFormat && typeof F.value.customFormat == "function",
1293
+ smooth: F.value.smooth,
1294
+ backdropFilter: F.value.backdropFilter,
1295
+ smoothForce: F.value.smoothForce,
1296
+ smoothSnapThreshold: F.value.smoothSnapThreshold,
1297
+ isA11yMode: Zt.value === "keyboard",
1298
+ a11yPosition: Xt.value
1299
+ }, {
1300
+ "tooltip-before": E(() => [C(e.$slots, "tooltip-before", v(_({ ...Hn.value })), void 0, !0)]),
1301
+ tooltip: E(() => [C(e.$slots, "tooltip", v(_({ ...Hn.value })), void 0, !0)]),
1302
+ "tooltip-after": E(() => [!["function"].includes(typeof F.value.customFormat) && !e.$slots.tooltip ? (b(), m("div", bt, [Le(T(Et), {
1303
+ dataset: Vn.value,
1304
+ config: gn.value,
1305
+ backgroundOpacity: 0
1306
+ }, {
1307
+ "data-label": E(({ bar: e }) => [h("div", xt, [h("span", St, w(e.name + (F.value.showValue || F.value.showPercentage ? ":" : "")), 1), F.value.showValue || F.value.showPercentage ? (b(), m("span", Ct, w(e.suffix), 1)) : p("", !0)])]),
1308
+ _: 1
1309
+ }, 8, ["dataset", "config"])])) : p("", !0), C(e.$slots, "tooltip-after", v(_({ ...Hn.value })), void 0, !0)]),
1310
+ _: 3
1311
+ }, 8, [
1312
+ "teleportTo",
1313
+ "show",
1314
+ "backgroundColor",
1315
+ "color",
1316
+ "borderRadius",
1317
+ "borderColor",
1318
+ "borderWidth",
1319
+ "backgroundOpacity",
1320
+ "fontSize",
1321
+ "position",
1322
+ "offsetX",
1323
+ "offsetY",
1324
+ "parent",
1325
+ "content",
1326
+ "isFullscreen",
1327
+ "isCustom",
1328
+ "smooth",
1329
+ "backdropFilter",
1330
+ "smoothForce",
1331
+ "smoothSnapThreshold",
1332
+ "isA11yMode",
1333
+ "a11yPosition"
1334
+ ]),
1335
+ It.value && M.value.buttons.table ? (b(), f(Ue($n.value.component), Re({ key: 8 }, $n.value.props, {
1336
+ ref_key: "tableUnit",
1337
+ ref: Jt,
1338
+ onClose: er
1339
+ }), Fe({
1340
+ content: E(() => [(b(), f(T(Ot), {
1341
+ key: `table_${Gt.value}`,
1342
+ colNames: Z.value.colNames,
1343
+ head: Z.value.head,
1344
+ body: Z.value.body,
1345
+ config: Z.value.config,
1346
+ title: j.value.table.useDialog ? "" : $n.value.title,
1347
+ withCloseButton: !j.value.table.useDialog,
1348
+ isCursorPointer: L.value,
1349
+ onClose: er
1350
+ }, {
1351
+ th: E(({ th: e }) => [Ie(w(e.name), 1)]),
1352
+ td: E(({ td: e }) => [Ie(w(e), 1)]),
1353
+ _: 1
1354
+ }, 8, [
1355
+ "colNames",
1356
+ "head",
1357
+ "body",
1358
+ "config",
1359
+ "title",
1360
+ "withCloseButton",
1361
+ "isCursorPointer"
1362
+ ]))]),
1363
+ _: 2
1364
+ }, [j.value.table.useDialog ? {
1365
+ name: "title",
1366
+ fn: E(() => [Ie(w($n.value.title), 1)]),
1367
+ key: "0"
1368
+ } : void 0, j.value.table.useDialog ? {
1369
+ name: "actions",
1370
+ fn: E(() => [h("button", {
1371
+ tabindex: "0",
1372
+ class: "vue-ui-user-options-button",
1373
+ onClick: t[1] ||= (e) => Kn(M.value.callbacks.csv),
1374
+ style: y({ cursor: L.value ? "pointer" : "default" })
1375
+ }, [Le(T(Tt), {
1376
+ name: "fileCsv",
1377
+ stroke: $n.value.props.color
1378
+ }, null, 8, ["stroke"])], 4)]),
1379
+ key: "1"
1380
+ } : void 0]), 1040)) : p("", !0),
1381
+ C(e.$slots, "skeleton", {}, () => [T(en) ? (b(), f(_e, { key: 0 })) : p("", !0)], !0)
1382
+ ], 46, Je));
1383
+ }
1384
+ }, [["__scopeId", "data-v-27993883"]]);
1385
+ //#endregion
1386
+ export { qe as n, wt as t };