vue-data-ui 3.17.13 → 3.18.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 (493) hide show
  1. package/README.md +1 -1
  2. package/dist/A11yDataTable-q2-8fSlJ.js +45 -0
  3. package/dist/Arrow-Cj6W6Xbi.js +116 -0
  4. package/dist/BaseDraggableDialog-BQcmQAK5.js +272 -0
  5. package/dist/BaseIcon-CEmt3Ifx.js +499 -0
  6. package/dist/BaseLegendToggle-DUIqQmwM.js +56 -0
  7. package/dist/BaseScanner-C7dmAref.js +27 -0
  8. package/dist/BaseZoomControls-Ce1yqas1.js +111 -0
  9. package/dist/ColorPicker-DS_QkH3W.js +255 -0
  10. package/dist/DataTable-BvDJEAma.js +150 -0
  11. package/dist/Legend-Gg5Q4Clb.js +114 -0
  12. package/dist/NonSvgPenAndPaper-D4Gh7O43.js +577 -0
  13. package/dist/PackageVersion-DhDKg-ez.js +11 -0
  14. package/dist/PenAndPaper-DwpL8Z0l.js +461 -0
  15. package/dist/RecursiveCircles-DPpLel6f.js +117 -0
  16. package/dist/RecursiveLabels-DBMJf_to.js +56 -0
  17. package/dist/RecursiveLinks-D06dBL4a.js +78 -0
  18. package/dist/Shape-DEGOZ6GG.js +141 -0
  19. package/dist/Slicer-BlfyiHHD.js +1144 -0
  20. package/dist/SlicerPreview-BPS8mYO2.js +1523 -0
  21. package/dist/SparkTooltip-c2DL7gqD.js +93 -0
  22. package/dist/Title-__gWq2g6.js +87 -0
  23. package/dist/Tooltip-B7lmdbac.js +307 -0
  24. package/dist/UserOptions-DMw8EZEo.js +1407 -0
  25. package/dist/_plugin-vue_export-helper-Dq1MygBL.js +8 -0
  26. package/dist/canvas-lib-DTaADQOK.js +79 -0
  27. package/dist/components/arrow.js +2 -5
  28. package/dist/components/vue-ui-3d-bar.js +2 -5
  29. package/dist/components/vue-ui-accordion.js +2 -5
  30. package/dist/components/vue-ui-age-pyramid.js +2 -5
  31. package/dist/components/vue-ui-annotator.js +2 -5
  32. package/dist/components/vue-ui-bullet.js +2 -5
  33. package/dist/components/vue-ui-bump.js +2 -5
  34. package/dist/components/vue-ui-candlestick.js +2 -5
  35. package/dist/components/vue-ui-carousel-table.js +2 -5
  36. package/dist/components/vue-ui-chestnut.js +2 -5
  37. package/dist/components/vue-ui-chord.js +2 -5
  38. package/dist/components/vue-ui-circle-pack.js +2 -5
  39. package/dist/components/vue-ui-cursor.js +2 -5
  40. package/dist/components/vue-ui-dag.js +2 -5
  41. package/dist/components/vue-ui-dashboard.js +2 -5
  42. package/dist/components/vue-ui-digits.js +2 -5
  43. package/dist/components/vue-ui-donut-evolution.js +2 -5
  44. package/dist/components/vue-ui-donut.js +2 -5
  45. package/dist/components/vue-ui-dumbbell.js +2 -5
  46. package/dist/components/vue-ui-flow.js +2 -5
  47. package/dist/components/vue-ui-funnel.js +2 -5
  48. package/dist/components/vue-ui-galaxy.js +2 -5
  49. package/dist/components/vue-ui-gauge.js +2 -5
  50. package/dist/components/vue-ui-geo.js +2 -5
  51. package/dist/components/vue-ui-gizmo.js +2 -5
  52. package/dist/components/vue-ui-heatmap.js +2 -5
  53. package/dist/components/vue-ui-history-plot.js +2 -5
  54. package/dist/components/vue-ui-horizontal-bar.js +2 -5
  55. package/dist/components/vue-ui-icon.js +2 -5
  56. package/dist/components/vue-ui-kpi.js +2 -5
  57. package/dist/components/vue-ui-mini-loader.js +2 -5
  58. package/dist/components/vue-ui-molecule.js +2 -5
  59. package/dist/components/vue-ui-mood-radar.js +2 -5
  60. package/dist/components/vue-ui-nested-donuts.js +2 -5
  61. package/dist/components/vue-ui-onion.js +2 -5
  62. package/dist/components/vue-ui-parallel-coordinate-plot.js +2 -5
  63. package/dist/components/vue-ui-pattern-seed.js +2 -5
  64. package/dist/components/vue-ui-pattern.js +2 -5
  65. package/dist/components/vue-ui-quadrant.js +2 -5
  66. package/dist/components/vue-ui-quick-chart.js +2 -5
  67. package/dist/components/vue-ui-radar.js +2 -5
  68. package/dist/components/vue-ui-rating.js +2 -5
  69. package/dist/components/vue-ui-relation-circle.js +2 -5
  70. package/dist/components/vue-ui-ridgeline.js +2 -5
  71. package/dist/components/vue-ui-rings.js +2 -5
  72. package/dist/components/vue-ui-scatter.js +2 -5
  73. package/dist/components/vue-ui-skeleton.js +2 -5
  74. package/dist/components/vue-ui-smiley.js +2 -5
  75. package/dist/components/vue-ui-spark-trend.js +2 -5
  76. package/dist/components/vue-ui-sparkbar.js +2 -5
  77. package/dist/components/vue-ui-sparkgauge.js +2 -5
  78. package/dist/components/vue-ui-sparkhistogram.js +2 -5
  79. package/dist/components/vue-ui-sparkline.js +2 -5
  80. package/dist/components/vue-ui-sparkstackbar.js +2 -5
  81. package/dist/components/vue-ui-stackbar.js +2 -5
  82. package/dist/components/vue-ui-stackline.js +2 -5
  83. package/dist/components/vue-ui-strip-plot.js +2 -5
  84. package/dist/components/vue-ui-table-heatmap.js +2 -5
  85. package/dist/components/vue-ui-table-sparkline.js +2 -5
  86. package/dist/components/vue-ui-table.js +2 -5
  87. package/dist/components/vue-ui-thermometer.js +2 -5
  88. package/dist/components/vue-ui-timer.js +2 -5
  89. package/dist/components/vue-ui-tiremarks.js +2 -5
  90. package/dist/components/vue-ui-treemap.js +2 -5
  91. package/dist/components/vue-ui-vertical-bar.js +2 -5
  92. package/dist/components/vue-ui-waffle.js +2 -5
  93. package/dist/components/vue-ui-wheel.js +2 -5
  94. package/dist/components/vue-ui-word-cloud.js +2 -5
  95. package/dist/components/vue-ui-world.js +2 -5
  96. package/dist/components/vue-ui-xy-canvas.js +2 -5
  97. package/dist/components/vue-ui-xy.js +2 -5
  98. package/dist/dom-to-png-9WSt6hXe.js +237 -0
  99. package/dist/exposedLib-CwWU4zv-.js +19 -0
  100. package/dist/geoProjections-CQIkC70z.js +146 -0
  101. package/dist/img-BjOr008R.js +74 -0
  102. package/dist/labelUtils-Cr97N8E1.js +19 -0
  103. package/dist/lib-BkiwukKO.js +1879 -0
  104. package/dist/patternUtils-B7BWu5bV.js +258 -0
  105. package/dist/pdf-DSXSFUnK.js +90 -0
  106. package/dist/rolldown-runtime-CAFD8bLK.js +11 -0
  107. package/dist/style.css +2 -1
  108. package/dist/types/arrow.d.ts +1 -1
  109. package/dist/types/utils.d.ts +23 -0
  110. package/dist/types/vue-data-ui.d.ts +4775 -627
  111. package/dist/types/vue-ui-3d-bar.d.ts +64 -9
  112. package/dist/types/vue-ui-accordion.d.ts +4 -3
  113. package/dist/types/vue-ui-age-pyramid.d.ts +79 -9
  114. package/dist/types/vue-ui-annotator.d.ts +3 -5
  115. package/dist/types/vue-ui-bullet.d.ts +60 -9
  116. package/dist/types/vue-ui-bump.d.ts +65 -9
  117. package/dist/types/vue-ui-candlestick.d.ts +83 -9
  118. package/dist/types/vue-ui-carousel-table.d.ts +36 -6
  119. package/dist/types/vue-ui-chestnut.d.ts +66 -9
  120. package/dist/types/vue-ui-chord.d.ts +78 -9
  121. package/dist/types/vue-ui-circle-pack.d.ts +86 -9
  122. package/dist/types/vue-ui-cursor.d.ts +4 -2
  123. package/dist/types/vue-ui-dag.d.ts +92 -9
  124. package/dist/types/vue-ui-dashboard.d.ts +43 -6
  125. package/dist/types/vue-ui-digits.d.ts +4 -2
  126. package/dist/types/vue-ui-donut-evolution.d.ts +70 -9
  127. package/dist/types/vue-ui-donut.d.ts +92 -9
  128. package/dist/types/vue-ui-dumbbell.d.ts +65 -9
  129. package/dist/types/vue-ui-flow.d.ts +79 -9
  130. package/dist/types/vue-ui-funnel.d.ts +55 -9
  131. package/dist/types/vue-ui-galaxy.d.ts +83 -9
  132. package/dist/types/vue-ui-gauge.d.ts +64 -9
  133. package/dist/types/vue-ui-geo.d.ts +71 -9
  134. package/dist/types/vue-ui-gizmo.d.ts +17 -6
  135. package/dist/types/vue-ui-heatmap.d.ts +73 -9
  136. package/dist/types/vue-ui-history-plot.d.ts +82 -9
  137. package/dist/types/vue-ui-horizontal-bar.d.ts +84 -9
  138. package/dist/types/vue-ui-icon.d.ts +2 -2
  139. package/dist/types/vue-ui-kpi.d.ts +21 -7
  140. package/dist/types/vue-ui-mini-loader.d.ts +5 -3
  141. package/dist/types/vue-ui-molecule.d.ts +86 -9
  142. package/dist/types/vue-ui-mood-radar.d.ts +66 -9
  143. package/dist/types/vue-ui-nested-donuts.d.ts +80 -9
  144. package/dist/types/vue-ui-onion.d.ts +77 -9
  145. package/dist/types/vue-ui-parallel-coordinate-plot.d.ts +92 -9
  146. package/dist/types/vue-ui-pattern-seed.d.ts +1 -1
  147. package/dist/types/vue-ui-pattern.d.ts +2 -2
  148. package/dist/types/vue-ui-quadrant.d.ts +86 -9
  149. package/dist/types/vue-ui-quick-chart.d.ts +79 -9
  150. package/dist/types/vue-ui-radar.d.ts +83 -9
  151. package/dist/types/vue-ui-rating.d.ts +22 -6
  152. package/dist/types/vue-ui-relation-circle.d.ts +66 -9
  153. package/dist/types/vue-ui-ridgeline.d.ts +69 -9
  154. package/dist/types/vue-ui-rings.d.ts +70 -9
  155. package/dist/types/vue-ui-scatter.d.ts +67 -9
  156. package/dist/types/vue-ui-skeleton.d.ts +3 -2
  157. package/dist/types/vue-ui-smiley.d.ts +3 -2
  158. package/dist/types/vue-ui-spark-trend.d.ts +14 -6
  159. package/dist/types/vue-ui-sparkbar.d.ts +27 -6
  160. package/dist/types/vue-ui-sparkgauge.d.ts +20 -6
  161. package/dist/types/vue-ui-sparkhistogram.d.ts +24 -6
  162. package/dist/types/vue-ui-sparkline.d.ts +35 -6
  163. package/dist/types/vue-ui-sparkstackbar.d.ts +35 -6
  164. package/dist/types/vue-ui-stackbar.d.ts +85 -9
  165. package/dist/types/vue-ui-stackline.d.ts +81 -9
  166. package/dist/types/vue-ui-strip-plot.d.ts +66 -9
  167. package/dist/types/vue-ui-table-heatmap.d.ts +52 -6
  168. package/dist/types/vue-ui-table-sparkline.d.ts +30 -6
  169. package/dist/types/vue-ui-table.d.ts +10 -2
  170. package/dist/types/vue-ui-thermometer.d.ts +46 -9
  171. package/dist/types/vue-ui-timer.d.ts +31 -5
  172. package/dist/types/vue-ui-tiremarks.d.ts +46 -9
  173. package/dist/types/vue-ui-treemap.d.ts +73 -9
  174. package/dist/types/vue-ui-vertical-bar.d.ts +2 -2
  175. package/dist/types/vue-ui-waffle.d.ts +72 -9
  176. package/dist/types/vue-ui-wheel.d.ts +46 -9
  177. package/dist/types/vue-ui-word-cloud.d.ts +73 -9
  178. package/dist/types/vue-ui-world.d.ts +68 -9
  179. package/dist/types/vue-ui-xy-canvas.d.ts +75 -9
  180. package/dist/types/vue-ui-xy.d.ts +108 -10
  181. package/dist/useAutoSizeLabelsInsideViewbox-dp-3Gg97.js +50 -0
  182. package/dist/useChartAccessibility-Do37qcw2.js +12 -0
  183. package/dist/useConfig-BV0kTCnO.js +7431 -0
  184. package/dist/useFitSvgText-C-MEdAfe.js +63 -0
  185. package/dist/useNestedProp-Ck4hsrpu.js +10 -0
  186. package/dist/useObjectBindings-Ce_ZZk-f.js +189 -0
  187. package/dist/usePanZoom-B-4M_gmY.js +157 -0
  188. package/dist/usePrefersMotion-BywLbIko.js +15 -0
  189. package/dist/usePrinter-X0yWOynH.js +49 -0
  190. package/dist/useResponsive-CrAInupd.js +19 -0
  191. package/dist/useStableElementSize-0I1IpHPl.js +77 -0
  192. package/dist/useSvgExport-Dtu973wa.js +755 -0
  193. package/dist/useTableResponsive-DrM1xqII.js +24 -0
  194. package/dist/useThemeCheck-rFK9Zlb_.js +24 -0
  195. package/dist/useTimeLabelCollider-Dm55Emzg.js +57 -0
  196. package/dist/useTimeLabels-C0x7zUXP.js +272 -0
  197. package/dist/useUserOptionState-CjPJPTg2.js +15 -0
  198. package/dist/utils.js +27 -44
  199. package/dist/vClickOutside-CbX_bC9A.js +13 -0
  200. package/dist/vue-data-ui-DIh8ayZc.js +274 -0
  201. package/dist/vue-data-ui.js +76 -167
  202. package/dist/vue-ui-3d-bar-BZ8_6ylo.js +1747 -0
  203. package/dist/vue-ui-accordion-cVv18nTV.js +81 -0
  204. package/dist/vue-ui-age-pyramid-BR3i-CgS.js +1226 -0
  205. package/dist/vue-ui-annotator-B9mA_PlF.js +2899 -0
  206. package/dist/vue-ui-bullet-ByJdNLVf.js +700 -0
  207. package/dist/vue-ui-bump-Ps1gkA-F.js +1239 -0
  208. package/dist/vue-ui-candlestick-0C1QFoV4.js +1802 -0
  209. package/dist/vue-ui-carousel-table-1P28pCRK.js +445 -0
  210. package/dist/vue-ui-chestnut-CJOCGWwX.js +2000 -0
  211. package/dist/vue-ui-chord-BpiVJCCm.js +1381 -0
  212. package/dist/vue-ui-circle-pack-C3wvXz1f.js +1183 -0
  213. package/dist/vue-ui-cursor-CNn_3b24.js +283 -0
  214. package/dist/vue-ui-dag-DRVXVCJV.js +2899 -0
  215. package/dist/vue-ui-dashboard-gOXyms0o.js +503 -0
  216. package/dist/vue-ui-digits-DIKyN3z6.js +209 -0
  217. package/dist/vue-ui-donut-RogzKj0G.js +2396 -0
  218. package/dist/vue-ui-donut-evolution-Bxz06Qqf.js +1490 -0
  219. package/dist/vue-ui-dumbbell-D10T4gmB.js +1517 -0
  220. package/dist/vue-ui-flow-OK563Z46.js +1223 -0
  221. package/dist/vue-ui-funnel-nWmbiJu5.js +767 -0
  222. package/dist/vue-ui-galaxy-CtaTlHWZ.js +1062 -0
  223. package/dist/vue-ui-gauge-DWTEHJqX.js +910 -0
  224. package/dist/vue-ui-geo-DUpWvv5m.js +1504 -0
  225. package/dist/vue-ui-gizmo-vddzP4dM.js +225 -0
  226. package/dist/vue-ui-heatmap-CUE_zJQa.js +1556 -0
  227. package/dist/vue-ui-history-plot-CcRg_NgJ.js +1551 -0
  228. package/dist/vue-ui-horizontal-bar-DX5aZOEn.js +1669 -0
  229. package/dist/vue-ui-kpi-B74v84Hu.js +96 -0
  230. package/dist/vue-ui-mini-loader-BcCG6Yqb.js +125 -0
  231. package/dist/vue-ui-molecule-CVdB8rxf.js +912 -0
  232. package/dist/vue-ui-mood-radar-CWDVBOck.js +1138 -0
  233. package/dist/vue-ui-nested-donuts-Be8b5d81.js +1472 -0
  234. package/dist/vue-ui-onion-Cs90yQQZ.js +1188 -0
  235. package/dist/vue-ui-parallel-coordinate-plot-D-mZdTop.js +1413 -0
  236. package/dist/vue-ui-pattern-Bj-IPFr2.js +154 -0
  237. package/dist/vue-ui-pattern-seed-abRweCDE.js +61 -0
  238. package/dist/vue-ui-quadrant-DLD_ZR9M.js +1966 -0
  239. package/dist/vue-ui-quick-chart-UWjZdmzt.js +2459 -0
  240. package/dist/vue-ui-radar-Bxu07MOG.js +1214 -0
  241. package/dist/vue-ui-rating-DA9Bmfyb.js +343 -0
  242. package/dist/vue-ui-relation-circle-O5s1UJtt.js +914 -0
  243. package/dist/vue-ui-ridgeline-C3siN0d_.js +1612 -0
  244. package/dist/vue-ui-rings-DVVDtwhB.js +1231 -0
  245. package/dist/vue-ui-scatter-Cfvh06OC.js +2380 -0
  246. package/dist/vue-ui-skeleton-CxTmGCQp.js +2556 -0
  247. package/dist/vue-ui-smiley-B6nc7b71.js +356 -0
  248. package/dist/vue-ui-spark-trend--39vutfQ.js +438 -0
  249. package/dist/vue-ui-sparkbar-DhCRNOu4.js +393 -0
  250. package/dist/vue-ui-sparkgauge-6Igkqlqs.js +255 -0
  251. package/dist/vue-ui-sparkhistogram-BLEzZSZi.js +560 -0
  252. package/dist/vue-ui-sparkline-ppwKM4aO.js +1503 -0
  253. package/dist/vue-ui-sparkstackbar-uIzSq9Wh.js +660 -0
  254. package/dist/vue-ui-stackbar-CdOkMCbI.js +2235 -0
  255. package/dist/vue-ui-stackline-DifD9OXC.js +2362 -0
  256. package/dist/vue-ui-strip-plot-D1LjIVqK.js +1328 -0
  257. package/dist/vue-ui-table-WDkEyyQ0.js +1338 -0
  258. package/dist/vue-ui-table-heatmap-CfGJVzI3.js +334 -0
  259. package/dist/vue-ui-table-sparkline-BEWWP4Rq.js +697 -0
  260. package/dist/vue-ui-thermometer-CFWOAB8K.js +753 -0
  261. package/dist/vue-ui-timer-D1DQyf9i.js +439 -0
  262. package/dist/vue-ui-tiremarks-IeM3BlPW.js +542 -0
  263. package/dist/vue-ui-treemap-BGZM7ibv.js +1575 -0
  264. package/dist/vue-ui-waffle-a3dFVBk4.js +1350 -0
  265. package/dist/vue-ui-wheel-OnIRQJ8a.js +875 -0
  266. package/dist/vue-ui-word-cloud-C9SkyutR.js +1644 -0
  267. package/dist/vue-ui-world-CEevuFbk.js +14252 -0
  268. package/dist/vue-ui-xy-1hee-IEM.js +4114 -0
  269. package/dist/vue-ui-xy-canvas-D2f0d45c.js +1774 -0
  270. package/dist/vue_ui_3d_bar-CXKqO5Ej.js +185 -0
  271. package/dist/vue_ui_age_pyramid-BON8QI6X.js +301 -0
  272. package/dist/vue_ui_bullet-CE5sFT7u.js +186 -0
  273. package/dist/vue_ui_bump-frnXaXul.js +201 -0
  274. package/dist/vue_ui_candlestick-sY6UtOop.js +374 -0
  275. package/dist/vue_ui_chestnut-BiUZFv40.js +305 -0
  276. package/dist/vue_ui_chord-DpyR_b9A.js +275 -0
  277. package/dist/vue_ui_circle_pack-DBKz_Fi_.js +130 -0
  278. package/dist/vue_ui_dag-Ci_MOnvd.js +258 -0
  279. package/dist/vue_ui_donut-Cx2_BGcQ.js +358 -0
  280. package/dist/vue_ui_donut_evolution-CAJefrHs.js +717 -0
  281. package/dist/vue_ui_dumbbell-CClzAZTN.js +304 -0
  282. package/dist/vue_ui_flow-CCHO1Lo9.js +238 -0
  283. package/dist/vue_ui_funnel-h8q2mRpC.js +234 -0
  284. package/dist/vue_ui_galaxy-70vtkEBw.js +265 -0
  285. package/dist/vue_ui_gauge-C17CgfzN.js +178 -0
  286. package/dist/vue_ui_geo-C0UbQ0Lc.js +248 -0
  287. package/dist/vue_ui_heatmap-BqPP3J4M.js +319 -0
  288. package/dist/vue_ui_history_plot-C5nytDHh.js +413 -0
  289. package/dist/vue_ui_horizontal_bar-Bqxorkc_.js +341 -0
  290. package/dist/vue_ui_molecule-Dka4JBOp.js +231 -0
  291. package/dist/vue_ui_mood_radar-Dg4ijm53.js +281 -0
  292. package/dist/vue_ui_nested_donuts-BY9cOoHF.js +273 -0
  293. package/dist/vue_ui_onion-DTV9cup-.js +293 -0
  294. package/dist/vue_ui_parallel_coordinate_plot-CNWrDh96.js +278 -0
  295. package/dist/vue_ui_quadrant-3kjYvxpj.js +428 -0
  296. package/dist/vue_ui_quick_chart--VaYQuM4.js +139 -0
  297. package/dist/vue_ui_radar-Dxx9GJmj.js +306 -0
  298. package/dist/vue_ui_relation_circle-Cr0I2SoU.js +98 -0
  299. package/dist/vue_ui_ridgeline-CAtYca4b.js +767 -0
  300. package/dist/vue_ui_rings-DXC1VeX5.js +320 -0
  301. package/dist/vue_ui_scatter-D2S2j0ap.js +479 -0
  302. package/dist/vue_ui_spark_trend-BHMQ6_1p.js +82 -0
  303. package/dist/vue_ui_sparkbar-BR6hbuDE.js +64 -0
  304. package/dist/vue_ui_sparkgauge-xfPRHnMv.js +90 -0
  305. package/dist/vue_ui_sparkhistogram-CJRENZ1C.js +123 -0
  306. package/dist/vue_ui_sparkline-wgk7yO7E.js +151 -0
  307. package/dist/vue_ui_sparkstackbar-C5qZMmAl.js +175 -0
  308. package/dist/vue_ui_stackbar-BW_C3MXw.js +412 -0
  309. package/dist/vue_ui_stackline-DpI2LnjO.js +426 -0
  310. package/dist/vue_ui_strip_plot-8ZelqC5b.js +301 -0
  311. package/dist/vue_ui_table_heatmap-BGUjA0WA.js +80 -0
  312. package/dist/vue_ui_table_sparkline-i0Q-N_we.js +124 -0
  313. package/dist/vue_ui_thermometer-CuN7Gpez.js +123 -0
  314. package/dist/vue_ui_tiremarks-A6UHC0c3.js +122 -0
  315. package/dist/vue_ui_treemap-BQp06q-g.js +328 -0
  316. package/dist/vue_ui_vertical_bar-CJSD1FZS.js +247 -0
  317. package/dist/vue_ui_waffle-C_Ev4l7B.js +292 -0
  318. package/dist/vue_ui_wheel-DdkTPXJU.js +133 -0
  319. package/dist/vue_ui_word_cloud-B1PbsYPc.js +254 -0
  320. package/dist/vue_ui_xy-BYPqfYyx.js +482 -0
  321. package/dist/vue_ui_xy_canvas-CMHGNrLf.js +408 -0
  322. package/package.json +7 -7
  323. package/dist/A11yDataTable-BpmuNomI.js +0 -54
  324. package/dist/Arrow-dSvLFssU.js +0 -101
  325. package/dist/BaseDraggableDialog-Di8Hlru3.js +0 -249
  326. package/dist/BaseIcon-DX0hTWa-.js +0 -476
  327. package/dist/BaseLegendToggle-cMP8M2u0.js +0 -47
  328. package/dist/BaseScanner-C2j3TsSY.js +0 -36
  329. package/dist/BaseZoomControls-CVSC1-SU.js +0 -123
  330. package/dist/ColorPicker-bAxGcXK0.js +0 -271
  331. package/dist/DataTable-cMnb68Ik.js +0 -145
  332. package/dist/Legend-DGN5lY60.js +0 -104
  333. package/dist/NonSvgPenAndPaper-B6E0zEYe.js +0 -573
  334. package/dist/PackageVersion-BfrCAH6_.js +0 -10
  335. package/dist/PenAndPaper-CJDoB5H9.js +0 -527
  336. package/dist/RecursiveCircles-BE6GoMmo.js +0 -101
  337. package/dist/RecursiveLabels-BhQMS9Sm.js +0 -55
  338. package/dist/RecursiveLinks-BDwyYfP-.js +0 -83
  339. package/dist/Shape-CxJ5_Rre.js +0 -116
  340. package/dist/Slicer-D7UcO8sN.js +0 -1145
  341. package/dist/SlicerPreview-D_CgrN_7.js +0 -1580
  342. package/dist/SparkTooltip-D4bM-kfz.js +0 -68
  343. package/dist/Title-BbKoiBk2.js +0 -88
  344. package/dist/Tooltip-Cvt7Fi0Q.js +0 -299
  345. package/dist/UserOptions-DVduN6X7.js +0 -1474
  346. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +0 -9
  347. package/dist/dom-to-png-DGvx6i5V.js +0 -262
  348. package/dist/exposedLib-sJvY1pST.js +0 -22
  349. package/dist/geoProjections-BFq2sOBY.js +0 -162
  350. package/dist/img-CjTQXS0U.js +0 -57
  351. package/dist/labelUtils-DX9oyq3C.js +0 -26
  352. package/dist/lib-DMzrGQHK.js +0 -2477
  353. package/dist/patternUtils-BINhU4Ky.js +0 -615
  354. package/dist/pdf-C4H4o1Cj.js +0 -88
  355. package/dist/useAutoSizeLabelsInsideViewbox-izlGDfwu.js +0 -55
  356. package/dist/useChartAccessibility-cp6XQtqi.js +0 -15
  357. package/dist/useConfig-CG4HT3wS.js +0 -7901
  358. package/dist/useFitSvgText-2crs6Fv5.js +0 -69
  359. package/dist/useNestedProp-DH0BEVVS.js +0 -13
  360. package/dist/useObjectBindings-Dixg-RIe.js +0 -228
  361. package/dist/usePanZoom-BbDhcKWf.js +0 -141
  362. package/dist/usePrefersMotion-Co0nj1eS.js +0 -17
  363. package/dist/usePrinter-C4t8DdQ-.js +0 -51
  364. package/dist/useResponsive-DfdjqQps.js +0 -195
  365. package/dist/useStableElementSize-C48ZVcZQ.js +0 -77
  366. package/dist/useSvgExport-BTG4hVPO.js +0 -870
  367. package/dist/useTableResponsive-BpfiEtzR.js +0 -26
  368. package/dist/useThemeCheck-C9Ccl7U9.js +0 -36
  369. package/dist/useTimeLabelCollider-D3JeJ6Ye.js +0 -86
  370. package/dist/useTimeLabels-Cv0tD9In.js +0 -307
  371. package/dist/useUserOptionState-B7Ej974k.js +0 -19
  372. package/dist/vClickOutside-C6WiFswA.js +0 -13
  373. package/dist/vue-data-ui-D1ZI7Y4l.js +0 -433
  374. package/dist/vue-ui-3d-bar-DEjKYzI5.js +0 -1824
  375. package/dist/vue-ui-accordion-DFtpH_16.js +0 -92
  376. package/dist/vue-ui-age-pyramid-LiC9hTjP.js +0 -1179
  377. package/dist/vue-ui-annotator-DrKnQoHf.js +0 -2991
  378. package/dist/vue-ui-bullet-DdxEINdq.js +0 -769
  379. package/dist/vue-ui-bump-CdgO1V7z.js +0 -1250
  380. package/dist/vue-ui-candlestick-DxJnPwto.js +0 -1775
  381. package/dist/vue-ui-carousel-table-CMefu5TI.js +0 -487
  382. package/dist/vue-ui-chestnut-BnGN72PO.js +0 -2001
  383. package/dist/vue-ui-chord-DWyar45U.js +0 -1457
  384. package/dist/vue-ui-circle-pack-CQ8vF2XH.js +0 -1076
  385. package/dist/vue-ui-cursor-HHOdkmyB.js +0 -260
  386. package/dist/vue-ui-dag-BDWPBElq.js +0 -3209
  387. package/dist/vue-ui-dashboard-Dg_I3X2a.js +0 -627
  388. package/dist/vue-ui-digits-CZmdir8V.js +0 -211
  389. package/dist/vue-ui-donut-BKegKHxj.js +0 -2608
  390. package/dist/vue-ui-donut-evolution-047dE4Lu.js +0 -1578
  391. package/dist/vue-ui-dumbbell-BL4ZMChj.js +0 -1552
  392. package/dist/vue-ui-flow-BAqtyunQ.js +0 -1279
  393. package/dist/vue-ui-funnel-Pl2sEOZs.js +0 -823
  394. package/dist/vue-ui-galaxy-CBF5Wsax.js +0 -1108
  395. package/dist/vue-ui-gauge-COV_S0Vp.js +0 -955
  396. package/dist/vue-ui-geo-CaPXElPf.js +0 -1510
  397. package/dist/vue-ui-gizmo-Csn7up96.js +0 -238
  398. package/dist/vue-ui-heatmap-Cpb0BYLa.js +0 -1694
  399. package/dist/vue-ui-history-plot-ZZEdzFCE.js +0 -1564
  400. package/dist/vue-ui-horizontal-bar-BonPYUZf.js +0 -1735
  401. package/dist/vue-ui-kpi-DoHhSsDK.js +0 -130
  402. package/dist/vue-ui-mini-loader-DOTBVCLE.js +0 -138
  403. package/dist/vue-ui-molecule-mVYnXouV.js +0 -945
  404. package/dist/vue-ui-mood-radar-DPvwnc3z.js +0 -1197
  405. package/dist/vue-ui-nested-donuts-C7E6TXrZ.js +0 -1702
  406. package/dist/vue-ui-onion-BGIlFhGB.js +0 -1207
  407. package/dist/vue-ui-parallel-coordinate-plot-C6G_A9ua.js +0 -1432
  408. package/dist/vue-ui-pattern-mXZW_pvA.js +0 -146
  409. package/dist/vue-ui-pattern-seed-BcNlxb2i.js +0 -36
  410. package/dist/vue-ui-quadrant-CVpIeYOB.js +0 -1918
  411. package/dist/vue-ui-quick-chart-CcV8qn9-.js +0 -2514
  412. package/dist/vue-ui-radar-G4AV1rBo.js +0 -1259
  413. package/dist/vue-ui-rating-CqPlP88P.js +0 -370
  414. package/dist/vue-ui-relation-circle-CkZ8oFVV.js +0 -856
  415. package/dist/vue-ui-ridgeline-CBTyYn6Q.js +0 -1737
  416. package/dist/vue-ui-rings-CSIOqFiP.js +0 -1256
  417. package/dist/vue-ui-scatter-AuC46ufT.js +0 -2345
  418. package/dist/vue-ui-skeleton-YD6rZjY_.js +0 -2475
  419. package/dist/vue-ui-smiley-CY0WFv2j.js +0 -391
  420. package/dist/vue-ui-spark-trend-D8KGIt-R.js +0 -423
  421. package/dist/vue-ui-sparkbar-BjWGJjzN.js +0 -424
  422. package/dist/vue-ui-sparkgauge-Dab5mss7.js +0 -285
  423. package/dist/vue-ui-sparkhistogram-D0rsmiPh.js +0 -559
  424. package/dist/vue-ui-sparkline-BCaauQuX.js +0 -1550
  425. package/dist/vue-ui-sparkstackbar-NT5yD6xA.js +0 -672
  426. package/dist/vue-ui-stackbar-ChBk_A1c.js +0 -2393
  427. package/dist/vue-ui-stackline-Cujamlze.js +0 -2490
  428. package/dist/vue-ui-strip-plot-CGBumG6I.js +0 -1293
  429. package/dist/vue-ui-table-BX2iMku4.js +0 -1726
  430. package/dist/vue-ui-table-heatmap-KXgXYVXm.js +0 -353
  431. package/dist/vue-ui-table-sparkline-C3NWnry0.js +0 -803
  432. package/dist/vue-ui-thermometer-DvdceZB1.js +0 -743
  433. package/dist/vue-ui-timer-XWAbvuAY.js +0 -504
  434. package/dist/vue-ui-tiremarks-B-YI1RlT.js +0 -578
  435. package/dist/vue-ui-treemap-AzorGfmd.js +0 -1757
  436. package/dist/vue-ui-waffle-CKtUvdTE.js +0 -1442
  437. package/dist/vue-ui-wheel-CnsLEArZ.js +0 -908
  438. package/dist/vue-ui-word-cloud-iAme2ihe.js +0 -1644
  439. package/dist/vue-ui-world-D5rrC9rw.js +0 -14452
  440. package/dist/vue-ui-xy-C_Q9chQe.js +0 -4468
  441. package/dist/vue-ui-xy-canvas-DG0299qE.js +0 -2107
  442. package/dist/vue_ui_3d_bar-CL0iX8Qi.js +0 -22
  443. package/dist/vue_ui_age_pyramid-8H8WSL7J.js +0 -22
  444. package/dist/vue_ui_bullet-Ckqieba5.js +0 -22
  445. package/dist/vue_ui_bump-CIht647H.js +0 -22
  446. package/dist/vue_ui_candlestick-BAMn-VGw.js +0 -22
  447. package/dist/vue_ui_chestnut-BloFvDuV.js +0 -22
  448. package/dist/vue_ui_chord-Bc1_ocwK.js +0 -22
  449. package/dist/vue_ui_circle_pack-CLmw8nHe.js +0 -22
  450. package/dist/vue_ui_dag-ZOwuDBZ8.js +0 -22
  451. package/dist/vue_ui_donut-CA4dgV8J.js +0 -22
  452. package/dist/vue_ui_donut_evolution-DFQU-rqE.js +0 -22
  453. package/dist/vue_ui_dumbbell-BCOHDiPk.js +0 -22
  454. package/dist/vue_ui_flow-BErINgox.js +0 -22
  455. package/dist/vue_ui_funnel-yuaMZ-yb.js +0 -22
  456. package/dist/vue_ui_galaxy-D95AN4FT.js +0 -22
  457. package/dist/vue_ui_gauge-BMEuRC4J.js +0 -22
  458. package/dist/vue_ui_geo--kg4VoVX.js +0 -22
  459. package/dist/vue_ui_heatmap-C9u993qE.js +0 -22
  460. package/dist/vue_ui_history_plot-BCKk1CrQ.js +0 -22
  461. package/dist/vue_ui_horizontal_bar-BEagrV0T.js +0 -22
  462. package/dist/vue_ui_molecule-BtvlINUh.js +0 -22
  463. package/dist/vue_ui_mood_radar-BUs6Fdn8.js +0 -22
  464. package/dist/vue_ui_nested_donuts-DvTrWT_C.js +0 -22
  465. package/dist/vue_ui_onion-CxWH9_OZ.js +0 -22
  466. package/dist/vue_ui_parallel_coordinate_plot-DH3cFJ3n.js +0 -22
  467. package/dist/vue_ui_quadrant-DjRs--Uz.js +0 -22
  468. package/dist/vue_ui_quick_chart-DMCjEjPe.js +0 -22
  469. package/dist/vue_ui_radar-DryGBOrz.js +0 -22
  470. package/dist/vue_ui_relation_circle-CCroen7h.js +0 -22
  471. package/dist/vue_ui_ridgeline-j4rVmpEp.js +0 -22
  472. package/dist/vue_ui_rings-CxOrekqA.js +0 -22
  473. package/dist/vue_ui_scatter-Bu1EAy9H.js +0 -22
  474. package/dist/vue_ui_spark_trend-3BjrSprO.js +0 -22
  475. package/dist/vue_ui_sparkbar-BsMzz5Um.js +0 -22
  476. package/dist/vue_ui_sparkgauge-KnjASOZs.js +0 -22
  477. package/dist/vue_ui_sparkhistogram-GBdzIVvS.js +0 -22
  478. package/dist/vue_ui_sparkline-CQ8DJVJx.js +0 -22
  479. package/dist/vue_ui_sparkstackbar-BSexvOuM.js +0 -22
  480. package/dist/vue_ui_stackbar-CuDC4O4b.js +0 -22
  481. package/dist/vue_ui_stackline-QTh-nuxE.js +0 -22
  482. package/dist/vue_ui_strip_plot-B9ypi_F3.js +0 -22
  483. package/dist/vue_ui_table_heatmap-CkvipPVy.js +0 -16
  484. package/dist/vue_ui_table_sparkline-yQdijcyJ.js +0 -22
  485. package/dist/vue_ui_thermometer-BTmjRBH8.js +0 -22
  486. package/dist/vue_ui_tiremarks-DBotWfi8.js +0 -22
  487. package/dist/vue_ui_treemap-D9-AIkT-.js +0 -22
  488. package/dist/vue_ui_vertical_bar-CELc39b8.js +0 -18
  489. package/dist/vue_ui_waffle-M2h-uJQ_.js +0 -22
  490. package/dist/vue_ui_wheel-LqBz3lv4.js +0 -22
  491. package/dist/vue_ui_word_cloud-mKAtBxHR.js +0 -22
  492. package/dist/vue_ui_xy-esktmpg-.js +0 -22
  493. package/dist/vue_ui_xy_canvas-6BBDSowT.js +0 -22
@@ -0,0 +1,2396 @@
1
+ import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
2
+ import { $ as t, Ct as n, E as r, G as i, H as a, J as o, Lt as s, Mt as c, S as l, St as u, Tt as d, V as ee, X as te, Y as f, bt as ne, d as p, et as m, i as h, jt as re, o as ie, ot as ae, p as oe, pt as se, t as ce, u as g, v as le, x as ue, y as de, zt as fe } from "./lib-BkiwukKO.js";
3
+ import { t as pe } from "./useConfig-BV0kTCnO.js";
4
+ import { t as me } from "./usePrinter-X0yWOynH.js";
5
+ import { n as he, t as _ } from "./BaseScanner-C7dmAref.js";
6
+ import { t as ge } from "./useSvgExport-Dtu973wa.js";
7
+ import { t as _e } from "./useNestedProp-Ck4hsrpu.js";
8
+ import { t as ve } from "./useThemeCheck-rFK9Zlb_.js";
9
+ import { t as ye } from "./img-BjOr008R.js";
10
+ import { n as be } from "./Title-__gWq2g6.js";
11
+ import { t as xe } from "./Shape-DEGOZ6GG.js";
12
+ import { t as Se } from "./_plugin-vue_export-helper-Dq1MygBL.js";
13
+ import { c as Ce } from "./canvas-lib-DTaADQOK.js";
14
+ import { t as we } from "./useResponsive-CrAInupd.js";
15
+ import { t as Te } from "./BaseLegendToggle-DUIqQmwM.js";
16
+ import { t as Ee } from "./A11yDataTable-q2-8fSlJ.js";
17
+ import { t as De } from "./useUserOptionState-CjPJPTg2.js";
18
+ import { t as Oe } from "./useChartAccessibility-Do37qcw2.js";
19
+ import { n as ke, t as Ae } from "./labelUtils-Cr97N8E1.js";
20
+ import { t as je } from "./vue_ui_donut-Cx2_BGcQ.js";
21
+ import { t as Me } from "./Legend-Gg5Q4Clb.js";
22
+ import { Fragment as v, Teleport as Ne, computed as y, createBlock as Pe, createCommentVNode as b, createElementBlock as x, createElementVNode as S, createSlots as Fe, createTextVNode as Ie, createVNode as Le, defineAsyncComponent as Re, guardReactiveProps as C, mergeProps as ze, nextTick as Be, normalizeClass as Ve, normalizeProps as w, normalizeStyle as T, onBeforeUnmount as He, onMounted as Ue, openBlock as E, ref as D, renderList as O, renderSlot as k, resolveDynamicComponent as We, shallowRef as Ge, toDisplayString as Ke, toRefs as qe, unref as A, useSlots as Je, vShow as Ye, watch as Xe, withCtx as j, withDirectives as Ze } from "vue";
23
+ //#region src/useSmallArcLayouts.js
24
+ function Qe(e) {
25
+ let { FINAL_CONFIG: t, noGhostDonut: n, svg: r, padding: i, labels_inline_fontSize: a, minSize: o, findArcMidpoint: s, calcMarkerOffsetX: c, calcMarkerOffsetY: l, animatingIndex: u, segregated: d, isSmallArc: ee } = e;
26
+ return { smallArcLayoutsClassic: y(() => {
27
+ if (t.value.type !== "classic") return {};
28
+ let e = {}, te = n.value || [];
29
+ if (!te.length) return e;
30
+ let f = r.value.width / 2, ne = r.value.height / 2, p = i.value.top + 16, m = r.value.height - i.value.bottom - 16, h = a.value, re = h / 3, ie = h * 1.5, ae = f - (o.value + 6), oe = f + (o.value + 6), se = !!t.value.style.chart.layout.curvedMarkers;
31
+ function ce({ midX: e, midY: t, bandX: n, bandY: r }) {
32
+ if (!se) return `M ${e} ${t} L ${e} ${r} L ${n} ${r}`;
33
+ let i = n < f ? -1 : 1, a = n - e, o = r - t, s = Math.sqrt(a * a + o * o) || 1, c = e - f, l = t - ne, u = Math.sqrt(c * c + l * l) || 1, d = c / u, ee = l / u, te = u + 9;
34
+ function p({ x: e, y: t }) {
35
+ let n = e - f, r = t - ne, i = Math.sqrt(n * n + r * r) || 1;
36
+ if (i >= te) return {
37
+ x: e,
38
+ y: t
39
+ };
40
+ let a = te / i;
41
+ return {
42
+ x: f + n * a,
43
+ y: ne + r * a
44
+ };
45
+ }
46
+ if (s < 56) {
47
+ let i = a / s, c = -(o / s), l = i, u = (e + n) * .5, te = (t + r) * .5, m = u + c, h = te + l, re = (m - f) * (m - f) + (h - ne) * (h - ne), ie = u - c, ae = te - l;
48
+ (ie - f) * (ie - f) + (ae - ne) * (ae - ne) > re && (c = -c, l = -l);
49
+ let oe = .78, se = e + a * oe, ce = t + o * oe, g = Math.max(0, Math.min(1, (s - 18) / 44)), le = g * g * (3 - 2 * g), ue = 2.5 + le * 4, de = 1 + le * 2.5;
50
+ ue *= .9;
51
+ let fe = p({
52
+ x: se + c * ue + d * de,
53
+ y: ce + l * ue + ee * de
54
+ });
55
+ return `M ${e} ${t} Q ${fe.x} ${fe.y} ${n} ${r}`;
56
+ }
57
+ let m = s * .34;
58
+ m < 20 && (m = 20), m > 46 && (m = 46);
59
+ let h = s * .46;
60
+ h < 22 && (h = 22), h > 70 && (h = 70);
61
+ let re = {
62
+ x: e + d * m,
63
+ y: t + ee * m
64
+ }, ie = f + i * Math.max(Math.abs(n - f), te), ae = {
65
+ x: n - i * Math.min(h, Math.abs(ie - n) * .75),
66
+ y: r
67
+ }, oe = p(re), ce = p(ae);
68
+ return `M ${e} ${t} C ${oe.x} ${oe.y} ${ce.x} ${ce.y} ${n} ${r}`;
69
+ }
70
+ function g(e) {
71
+ let t = String(e ?? "").split(/\n/g);
72
+ return ie + Math.max(0, t.length - 1) * (h * 1.2);
73
+ }
74
+ function le({ arc: e, index: t }) {
75
+ let { x: n, y: r } = s(e.path);
76
+ return {
77
+ arc: e,
78
+ index: t,
79
+ midX: n,
80
+ midY: r,
81
+ inlineMarkerX: c(e).x,
82
+ inlineMarkerY: l(e) - 3.5,
83
+ labelHeight: g(e.name)
84
+ };
85
+ }
86
+ function ue(e) {
87
+ let { arc: t } = e, n = t.seriesIndex ?? 0;
88
+ return u.value === n || d.value.includes(n) ? !1 : ee(t, n);
89
+ }
90
+ function de(e) {
91
+ let t = e.inlineMarkerY < ne, n = e.inlineMarkerX < f;
92
+ return t && n ? "TL" : t && !n ? "TR" : !t && n ? "BL" : "BR";
93
+ }
94
+ function fe(e, t) {
95
+ if (t.startsWith("T")) {
96
+ e.sort((e, t) => e.inlineMarkerY - t.inlineMarkerY || e.index - t.index);
97
+ return;
98
+ }
99
+ e.sort((e, t) => t.inlineMarkerY - e.inlineMarkerY || e.index - t.index);
100
+ }
101
+ function pe({ side: e, markerX: t, markerY: n, labelY: r, connectorPath: i }) {
102
+ return {
103
+ side: e,
104
+ labelX: e === "left" ? t - 8 : t + 8,
105
+ labelY: r + re,
106
+ textAnchor: e === "left" ? "end" : "start",
107
+ markerX: t,
108
+ markerY: n,
109
+ connectorPath: i
110
+ };
111
+ }
112
+ function me({ candidateList: t, side: n, bandMarkerX: r, startY: i, direction: a }) {
113
+ let o = i;
114
+ t.forEach((t) => {
115
+ let { index: i, midX: s, midY: c, labelHeight: l } = t, u;
116
+ a === "down" ? (u = o, o += l) : (o -= l, u = o);
117
+ let d = u, ee = ce({
118
+ midX: s,
119
+ midY: c,
120
+ bandX: r,
121
+ bandY: d
122
+ });
123
+ e[i] = pe({
124
+ side: n,
125
+ markerX: r,
126
+ markerY: d,
127
+ labelY: u,
128
+ connectorPath: ee
129
+ });
130
+ });
131
+ }
132
+ let he = te.map((e, t) => le({
133
+ arc: e,
134
+ index: t
135
+ })).filter(ue), _ = {
136
+ TL: [],
137
+ TR: [],
138
+ BL: [],
139
+ BR: []
140
+ };
141
+ return he.forEach((e) => {
142
+ _[de(e)].push(e);
143
+ }), Object.keys(_).forEach((e) => {
144
+ fe(_[e], e);
145
+ }), me({
146
+ candidateList: _.TL,
147
+ side: "left",
148
+ bandMarkerX: ae,
149
+ startY: p,
150
+ direction: "down"
151
+ }), me({
152
+ candidateList: _.TR,
153
+ side: "right",
154
+ bandMarkerX: oe,
155
+ startY: p,
156
+ direction: "down"
157
+ }), _.BL.length > 1 && me({
158
+ candidateList: _.BL,
159
+ side: "left",
160
+ bandMarkerX: ae,
161
+ startY: m,
162
+ direction: "up"
163
+ }), _.BR.length > 1 && me({
164
+ candidateList: _.BR,
165
+ side: "right",
166
+ bandMarkerX: oe,
167
+ startY: m,
168
+ direction: "up"
169
+ }), e;
170
+ }) };
171
+ }
172
+ //#endregion
173
+ //#region src/components/vue-ui-donut.vue
174
+ var $e = /* @__PURE__ */ e({ default: () => xn }), et = ["id"], tt = ["id"], nt = ["id"], rt = { style: { position: "relative" } }, it = [
175
+ "xmlns",
176
+ "aria-describedby",
177
+ "viewBox"
178
+ ], at = ["width", "height"], ot = { key: 1 }, st = ["id"], ct = ["stop-color"], lt = ["offset", "stop-color"], ut = ["offset", "stop-color"], dt = ["stop-color"], ft = { key: 2 }, pt = [
179
+ "id",
180
+ "cx",
181
+ "cy"
182
+ ], mt = ["stop-color", "stop-opacity"], ht = ["stop-color"], gt = ["id"], _t = ["id"], vt = ["id"], yt = ["flood-color"], bt = ["id"], xt = ["flood-color"], St = [
183
+ "d",
184
+ "stroke",
185
+ "filter"
186
+ ], Ct = [
187
+ "d",
188
+ "stroke",
189
+ "filter"
190
+ ], wt = [
191
+ "cx",
192
+ "cy",
193
+ "r",
194
+ "fill",
195
+ "filter"
196
+ ], Tt = { key: 6 }, Et = ["stroke", "d"], Dt = [
197
+ "d",
198
+ "fill",
199
+ "stroke",
200
+ "stroke-width",
201
+ "filter"
202
+ ], Ot = { key: 0 }, kt = [
203
+ "d",
204
+ "fill",
205
+ "stroke",
206
+ "stroke-width",
207
+ "filter"
208
+ ], At = { key: 0 }, jt = ["stroke", "d"], Mt = { key: 0 }, Nt = [
209
+ "d",
210
+ "stroke",
211
+ "stroke-width",
212
+ "filter"
213
+ ], Pt = { key: 1 }, Ft = [
214
+ "d",
215
+ "fill",
216
+ "stroke",
217
+ "stroke-width",
218
+ "filter"
219
+ ], It = [
220
+ "d",
221
+ "fill",
222
+ "stroke",
223
+ "stroke-width",
224
+ "filter"
225
+ ], Lt = { key: 1 }, Rt = [
226
+ "cx",
227
+ "cy",
228
+ "r",
229
+ "fill",
230
+ "stroke",
231
+ "stroke-width"
232
+ ], zt = [
233
+ "cx",
234
+ "cy",
235
+ "r",
236
+ "fill",
237
+ "stroke",
238
+ "stroke-width"
239
+ ], Bt = { key: 0 }, Vt = [
240
+ "d",
241
+ "fill",
242
+ "stroke",
243
+ "stroke-width"
244
+ ], Ht = [
245
+ "cx",
246
+ "cy",
247
+ "r",
248
+ "stroke"
249
+ ], Ut = [
250
+ "cx",
251
+ "cy",
252
+ "r",
253
+ "fill"
254
+ ], Wt = [
255
+ "cx",
256
+ "cy",
257
+ "r"
258
+ ], Gt = { key: 0 }, Kt = [
259
+ "d",
260
+ "stroke",
261
+ "fill",
262
+ "onMouseenter",
263
+ "onMouseleave",
264
+ "onClick"
265
+ ], qt = { key: 1 }, Jt = [
266
+ "cx",
267
+ "cy",
268
+ "r"
269
+ ], Yt = [
270
+ "x",
271
+ "y",
272
+ "fill",
273
+ "font-size"
274
+ ], Xt = [
275
+ "x",
276
+ "y",
277
+ "fill",
278
+ "font-size"
279
+ ], Zt = [
280
+ "x",
281
+ "y",
282
+ "fill",
283
+ "font-size"
284
+ ], Qt = [
285
+ "x",
286
+ "y",
287
+ "fill",
288
+ "font-size"
289
+ ], $t = ["filter", "opacity"], en = { key: 0 }, tn = ["x", "y"], nn = { key: 1 }, rn = [
290
+ "cx",
291
+ "cy",
292
+ "fill",
293
+ "stroke",
294
+ "filter",
295
+ "onClick",
296
+ "onMouseenter",
297
+ "onMouseleave"
298
+ ], an = [
299
+ "text-anchor",
300
+ "x",
301
+ "y",
302
+ "onClick",
303
+ "onMouseenter",
304
+ "onMouseleave",
305
+ "innerHTML"
306
+ ], on = [
307
+ "text-anchor",
308
+ "x",
309
+ "y",
310
+ "fill",
311
+ "font-size",
312
+ "onClick",
313
+ "onMouseenter",
314
+ "onMouseleave"
315
+ ], sn = [
316
+ "text-anchor",
317
+ "x",
318
+ "y",
319
+ "fill",
320
+ "font-size",
321
+ "onClick",
322
+ "onMouseenter",
323
+ "onMouseleave",
324
+ "innerHTML"
325
+ ], cn = [
326
+ "cx",
327
+ "cy",
328
+ "fill",
329
+ "stroke",
330
+ "filter",
331
+ "onClick",
332
+ "onMouseenter",
333
+ "onMouseleave"
334
+ ], ln = [
335
+ "text-anchor",
336
+ "x",
337
+ "y",
338
+ "onClick",
339
+ "onMouseenter",
340
+ "onMouseleave",
341
+ "innerHTML"
342
+ ], un = [
343
+ "text-anchor",
344
+ "x",
345
+ "y",
346
+ "fill",
347
+ "font-size",
348
+ "onClick",
349
+ "onMouseenter",
350
+ "onMouseleave"
351
+ ], dn = [
352
+ "text-anchor",
353
+ "x",
354
+ "y",
355
+ "fill",
356
+ "font-size",
357
+ "onClick",
358
+ "onMouseenter",
359
+ "onMouseleave",
360
+ "innerHTML"
361
+ ], fn = { key: 2 }, pn = [
362
+ "x",
363
+ "y",
364
+ "width"
365
+ ], mn = [
366
+ "x",
367
+ "y",
368
+ "width"
369
+ ], hn = {
370
+ key: 0,
371
+ style: {
372
+ position: "absolute",
373
+ top: "100%",
374
+ left: "0",
375
+ width: "100%"
376
+ },
377
+ "data-dom-to-png-ignore": "",
378
+ "aria-hidden": "true"
379
+ }, gn = {
380
+ key: 5,
381
+ class: "vue-data-ui-watermark"
382
+ }, _n = ["id"], vn = ["onClick"], yn = {
383
+ key: 8,
384
+ class: "vue-ui-donut-hollow"
385
+ }, bn = ["innerHTML"], xn = /* @__PURE__ */ Se({
386
+ __name: "vue-ui-donut",
387
+ props: {
388
+ config: {
389
+ type: Object,
390
+ default() {
391
+ return {};
392
+ }
393
+ },
394
+ dataset: {
395
+ type: Array,
396
+ default() {
397
+ return [];
398
+ }
399
+ }
400
+ },
401
+ emits: [
402
+ "selectLegend",
403
+ "selectDatapoint",
404
+ "copyAlt"
405
+ ],
406
+ setup(e, { expose: Se, emit: $e }) {
407
+ let xn = Re(() => import("./Tooltip-B7lmdbac.js")), Sn = Re(() => import("./BaseIcon-CEmt3Ifx.js").then((e) => e.n)), Cn = Re(() => import("./vue-ui-accordion-cVv18nTV.js").then((e) => e.n)), wn = Re(() => import("./DataTable-BvDJEAma.js")), Tn = Re(() => import("./PenAndPaper-DwpL8Z0l.js").then((e) => e.t)), En = Re(() => import("./UserOptions-DMw8EZEo.js").then((e) => e.n)), Dn = Re(() => import("./PackageVersion-DhDKg-ez.js").then((e) => e.t)), On = Re(() => import("./BaseDraggableDialog-BQcmQAK5.js").then((e) => e.n)), { vue_ui_donut: kn } = pe(), { isThemeValid: An, warnInvalidTheme: jn } = ve(), Mn = Je(), M = e, Nn = y({
408
+ get() {
409
+ return !!M.dataset && M.dataset.length;
410
+ },
411
+ set(e) {
412
+ return e;
413
+ }
414
+ }), N = Ge(null), Pn = D(null), Fn = D(null), In = D(null), Ln = Ge(null), Rn = Ge(null), zn = Ge(null), Bn = Ge(null), Vn = Ge(null), Hn = Ge(null), Un = D(0), Wn = D(0), Gn = D(0), Kn = D(!1), qn = D(null), Jn = D(null), Yn = D(!1), Xn = D(!1), Zn = D(null), Qn = D({
415
+ x: 0,
416
+ y: 0
417
+ }), $n = D("pointer"), er = D(!1), tr = y({
418
+ get: () => L.value.style.chart.layout.labels.percentage.fontSize,
419
+ set: (e) => e
420
+ }), P = y({
421
+ get: () => L.value.style.chart.layout.labels.name.fontSize,
422
+ set: (e) => e
423
+ }), nr = y({
424
+ get: () => L.value.style.chart.layout.labels.dataLabels.smallArcClusterFontSize,
425
+ set: (e) => e
426
+ }), rr = !1, ir = () => {
427
+ !L.value.autoSize || rr || (rr = !0, requestAnimationFrame(() => {
428
+ rr = !1;
429
+ let e = L.value, t = Pn.value, n = z.value;
430
+ if (!e.autoSize || !t || !n) return;
431
+ let [r, i, a, o] = n.getAttribute("viewBox").split(" ").map(Number), s = {
432
+ x: r,
433
+ y: i,
434
+ width: a,
435
+ height: o
436
+ }, c = [
437
+ {
438
+ selector: ".vue-data-ui-datalabel-value",
439
+ baseSize: e.style.chart.layout.labels.percentage.fontSize,
440
+ minSize: e.style.chart.layout.labels.percentage.minFontSize,
441
+ sizeRef: tr
442
+ },
443
+ {
444
+ selector: ".vue-data-ui-datalabel-name",
445
+ baseSize: e.style.chart.layout.labels.name.fontSize,
446
+ minSize: e.style.chart.layout.labels.name.minFontSize,
447
+ sizeRef: P
448
+ },
449
+ {
450
+ selector: ".vue-data-ui-datalabel-inline",
451
+ baseSize: e.style.chart.layout.labels.dataLabels.smallArcClusterFontSize,
452
+ minSize: e.style.chart.layout.labels.name.minFontSize,
453
+ sizeRef: nr
454
+ }
455
+ ];
456
+ c.map((e) => t.querySelectorAll(e.selector).length).reduce((e, t) => e + t, 0) !== 0 && c.forEach(({ selector: e, baseSize: n, minSize: r, sizeRef: i }) => {
457
+ t.querySelectorAll(e).forEach((e) => {
458
+ i.value = ie({
459
+ el: e,
460
+ bounds: s,
461
+ currentFontSize: n,
462
+ minFontSize: r,
463
+ attempts: 200,
464
+ padding: 1
465
+ });
466
+ });
467
+ });
468
+ }));
469
+ };
470
+ Ue(async () => {
471
+ Kn.value = !0, sr(), requestAnimationFrame(ir);
472
+ });
473
+ let ar;
474
+ Ue(() => {
475
+ N.value && (ar = new ResizeObserver((e) => {
476
+ for (let t of e) {
477
+ let { width: e, height: n } = t.contentRect;
478
+ if (e > 0 && n > 0) {
479
+ ir();
480
+ break;
481
+ }
482
+ }
483
+ }), ar.observe(N.value.parentElement));
484
+ }), He(() => {
485
+ ar?.disconnect();
486
+ }), He(() => {
487
+ zn.value && (Bn.value && zn.value.unobserve(Bn.value), zn.value.disconnect());
488
+ });
489
+ let or = y(() => !!L.value.debug);
490
+ function sr() {
491
+ if (u(M.dataset) ? (te({
492
+ componentName: "VueUiDonut",
493
+ type: "dataset",
494
+ debug: or.value
495
+ }), Nn.value = !1, gr.value = !0) : (M.dataset.forEach((e, t) => {
496
+ ae({
497
+ datasetObject: e,
498
+ requiredAttributes: ["name", "values"]
499
+ }).forEach((e) => {
500
+ te({
501
+ componentName: "VueUiDonut",
502
+ type: "datasetSerieAttribute",
503
+ property: e,
504
+ index: t,
505
+ debug: or.value
506
+ }), Nn.value = !1, gr.value = !0;
507
+ });
508
+ }), M.dataset.forEach((e, t) => {
509
+ (!e.name || e.name === "") && te({
510
+ componentName: "VueUiDonut",
511
+ type: "datasetAttributeEmpty",
512
+ property: "name",
513
+ index: t,
514
+ debug: or.value
515
+ });
516
+ })), u(M.dataset) || (gr.value = L.value.loading), L.value.responsive) {
517
+ let e = Ce(() => {
518
+ let { width: e, height: t } = we({
519
+ chart: N.value,
520
+ title: L.value.style.chart.title.text ? Ln.value : null,
521
+ legend: L.value.style.chart.legend.show ? Rn.value : null,
522
+ source: Vn.value,
523
+ noTitle: Hn.value,
524
+ padding: L.value.autoSize ? void 0 : Dr.value
525
+ });
526
+ requestAnimationFrame(() => {
527
+ V.value.width = e, V.value.height = t, ir();
528
+ });
529
+ });
530
+ zn.value && (Bn.value && zn.value.unobserve(Bn.value), zn.value.disconnect()), zn.value = new ResizeObserver(e), Bn.value = N.value.parentNode, zn.value.observe(Bn.value);
531
+ }
532
+ }
533
+ let F = D(a()), cr = D(!1), lr = D(""), I = D(null), ur = D(0);
534
+ function dr() {
535
+ let e = _e({
536
+ userConfig: M.config,
537
+ defaultConfig: kn
538
+ }), t = {}, n = e.theme;
539
+ if (!n) t = e;
540
+ else if (!An.value(e)) jn(e), t = e;
541
+ else {
542
+ let r = _e({
543
+ userConfig: je[n] || M.config,
544
+ defaultConfig: e
545
+ });
546
+ t = {
547
+ ..._e({
548
+ userConfig: M.config,
549
+ defaultConfig: r
550
+ }),
551
+ customPalette: e.customPalette.length ? e.customPalette : s[n] || d
552
+ };
553
+ }
554
+ return t;
555
+ }
556
+ let L = D(dr()), fr = y(() => L.value.userOptions.useCursorPointer), pr = y(() => fe({
557
+ defaultConfig: {
558
+ useCssAnimation: !1,
559
+ table: { show: !1 },
560
+ startAnimation: { show: !1 },
561
+ userOptions: { show: !1 },
562
+ style: { chart: {
563
+ backgroundColor: "#99999930",
564
+ layout: { labels: {
565
+ dataLabels: { show: !1 },
566
+ hollow: {
567
+ average: { show: !1 },
568
+ total: { show: !1 }
569
+ },
570
+ value: { show: !1 }
571
+ } },
572
+ legend: {
573
+ backgroundColor: "transparent",
574
+ showValue: !1,
575
+ showPercentage: !1
576
+ },
577
+ title: {
578
+ color: "#1A1A1A",
579
+ subtitle: { color: "#5A5A5A" }
580
+ }
581
+ } }
582
+ },
583
+ userConfig: L.value.skeletonConfig ?? {}
584
+ })), { loading: mr, FINAL_DATASET: hr, manualLoading: gr, skeletonDataset: _r } = he({
585
+ ...qe(M),
586
+ FINAL_CONFIG: L,
587
+ prepareConfig: dr,
588
+ skeletonDataset: M.config?.skeletonDataset ?? [
589
+ {
590
+ name: "",
591
+ values: [3],
592
+ color: "#BABABA"
593
+ },
594
+ {
595
+ name: "",
596
+ values: [2],
597
+ color: "#AAAAAA"
598
+ },
599
+ {
600
+ name: "",
601
+ values: [1],
602
+ color: "#CACACA"
603
+ }
604
+ ],
605
+ skeletonConfig: fe({
606
+ defaultConfig: L.value,
607
+ userConfig: pr.value
608
+ })
609
+ }), R = D(!0), vr = D(0), yr = D(!1), br = null;
610
+ function xr(e = 1e3) {
611
+ return new Promise((t) => {
612
+ let n = performance.now();
613
+ function r(i) {
614
+ let a = i - n, o = Math.min(a / e, 1);
615
+ vr.value = f(o), o < 1 ? br = requestAnimationFrame(r) : (vr.value = 1, br = null, t());
616
+ }
617
+ br !== null && cancelAnimationFrame(br), vr.value = 0, br = requestAnimationFrame(r);
618
+ });
619
+ }
620
+ Xe(() => mr.value, async (e) => {
621
+ if (e || yr.value) return;
622
+ let t = hr.value === _r, n = L.value.startAnimation?.show;
623
+ !t && n ? (yr.value = !0, await xr(L.value.startAnimation.durationMs || 1e3)) : vr.value = 1, R.value = !1;
624
+ }, { immediate: !0 });
625
+ let { userOptionsVisible: Sr, setUserOptionsVisibility: Cr, keepUserOptionState: wr } = De({ config: L.value }), { svgRef: z } = Oe({ config: L.value.style.chart.title });
626
+ function Tr() {
627
+ Cr(!0);
628
+ }
629
+ function Er() {
630
+ Cr(!1);
631
+ }
632
+ Xe(() => M.config, (e) => {
633
+ mr.value || (L.value = dr()), Sr.value = !L.value.userOptions.showOnChartHover, sr(), Un.value += 1, Wn.value += 1, Gn.value += 1, B.value.dataLabels.show = L.value.style.chart.layout.labels.dataLabels.show, B.value.showTable = L.value.table.show, B.value.showTooltip = L.value.style.chart.tooltip.show, V.value.height = L.value.style.chart.height, V.value.width = L.value.style.chart.width;
634
+ }, { deep: !0 });
635
+ let Dr = y(() => {
636
+ let { top: e, right: t, bottom: n, left: r } = L.value.style.chart.padding;
637
+ return {
638
+ css: `padding:${e}px ${t}px ${n}px ${r}px`,
639
+ top: e,
640
+ right: t,
641
+ bottom: n,
642
+ left: r
643
+ };
644
+ }), { isPrinting: Or, isImaging: kr, generatePdf: Ar, generateImage: jr } = me({
645
+ elementId: `donut__${F.value}`,
646
+ fileName: L.value.style.chart.title.text || "vue-ui-donut",
647
+ options: L.value.userOptions.print
648
+ }), Mr = y(() => L.value.userOptions.show && !L.value.style.chart.title.text), Nr = y(() => ue(L.value.customPalette)), B = D({
649
+ dataLabels: { show: L.value.style.chart.layout.labels.dataLabels.show },
650
+ showTable: L.value.table.show,
651
+ showTooltip: L.value.style.chart.tooltip.show
652
+ });
653
+ Xe(L, () => {
654
+ B.value = {
655
+ dataLabels: { show: L.value.style.chart.layout.labels.dataLabels.show },
656
+ showTable: L.value.table.show,
657
+ showTooltip: L.value.style.chart.tooltip.show
658
+ };
659
+ }, { immediate: !0 });
660
+ let V = D({
661
+ height: L.value.style.chart.height,
662
+ width: L.value.style.chart.width
663
+ }), Pr = y(() => {
664
+ if (L.value.pie) return G.value;
665
+ let e = L.value.style.chart.layout.donut.strokeWidth / 512, t = Math.min(V.value.width, V.value.height) * e, n = t > G.value ? G.value : t;
666
+ return Math.max(n, 12 * (1 + e));
667
+ }), Fr = $e, H = y(() => hr.value.sort((e, t) => {
668
+ let n = Array.isArray(e.values) ? e.values.reduce((e, t) => e + t, 0) : e.value ?? 0, r = Array.isArray(t.values) ? t.values.reduce((e, t) => e + t, 0) : t.value ?? 0;
669
+ return e.ghost && !t.ghost ? 1 : t.ghost && !e.ghost ? -1 : r - n;
670
+ }).map((e, t) => ({
671
+ name: e.name,
672
+ color: de(e.color) || Nr.value[t] || d[t] || d[t % d.length],
673
+ value: le(e.values.reduce((e, t) => e + t, 0)),
674
+ absoluteValues: e.values,
675
+ comment: e.comment || "",
676
+ patternIndex: t,
677
+ seriesIndex: t,
678
+ ghost: !1,
679
+ pattern: `pattern_${F.value}_${t}`
680
+ })));
681
+ Xe(() => M.dataset, (e) => {
682
+ Array.isArray(e) && e.length > 0 && (gr.value = !1);
683
+ }, { immediate: !0 });
684
+ let U = Ge(H.value);
685
+ Xe(() => H.value, (e) => {
686
+ U.value = e, requestAnimationFrame(ir);
687
+ });
688
+ function Ir() {
689
+ return H.value.map((e) => ({
690
+ name: e.name,
691
+ color: e.color,
692
+ value: e.value
693
+ }));
694
+ }
695
+ let W = D([]), Lr = D(!1), Rr = D(null);
696
+ function zr({ from: e, to: t, duration: n, onUpdate: r, onDone: i, easing: a = f }) {
697
+ let o = performance.now();
698
+ function s(c) {
699
+ let l = Math.min((c - o) / n, 1), u = a(l);
700
+ r(e + (t - e) * u, l), l < 1 ? requestAnimationFrame(s) : (r(t, 1), i && i());
701
+ }
702
+ requestAnimationFrame(s);
703
+ }
704
+ function Br() {
705
+ W.value.length ? W.value = [] : qr.value.forEach((e, t) => {
706
+ W.value.push(t);
707
+ });
708
+ }
709
+ function Vr(e) {
710
+ let t = H.value.find((t, n) => n === e), n = U.value.find((t, n) => n === e).value;
711
+ if (W.value.includes(e)) {
712
+ W.value = W.value.filter((t) => t !== e);
713
+ let r = t.value;
714
+ function i() {
715
+ U.value = U.value.map((t, n) => e === n ? {
716
+ ...t,
717
+ value: r
718
+ } : t);
719
+ }
720
+ function a() {
721
+ Lr.value = !0, Rr.value = e, zr({
722
+ from: n,
723
+ to: r,
724
+ duration: L.value.serieToggleAnimation.durationMs,
725
+ onUpdate: (t, n) => {
726
+ U.value = U.value.map((n, r) => e === r ? {
727
+ ...n,
728
+ value: t
729
+ } : n), requestAnimationFrame(ir);
730
+ },
731
+ onDone: () => {
732
+ i(), Lr.value = !1, Rr.value = null;
733
+ }
734
+ });
735
+ }
736
+ L.value.serieToggleAnimation.show && L.value.type === "classic" ? a() : (i(), requestAnimationFrame(ir));
737
+ } else if (W.value.length < H.value.length - 1) {
738
+ function t() {
739
+ W.value.push(e), U.value = U.value.map((t, n) => e === n ? {
740
+ ...t,
741
+ value: 0
742
+ } : t);
743
+ }
744
+ function r() {
745
+ Lr.value = !0, Rr.value = e, zr({
746
+ from: n,
747
+ to: 0,
748
+ duration: L.value.serieToggleAnimation.durationMs,
749
+ onUpdate: (t, n) => {
750
+ U.value = U.value.map((n, r) => e === r ? {
751
+ ...n,
752
+ value: t
753
+ } : n), requestAnimationFrame(ir);
754
+ },
755
+ onDone: () => {
756
+ t(), requestAnimationFrame(ir), Lr.value = !1, Rr.value = null;
757
+ }
758
+ });
759
+ }
760
+ L.value.serieToggleAnimation.show && L.value.type === "classic" ? r() : t();
761
+ }
762
+ Fr("selectLegend", Kr.value.map((e) => ({
763
+ name: e.name,
764
+ color: e.color,
765
+ value: e.value
766
+ })));
767
+ }
768
+ function Hr(e) {
769
+ return H.value.length ? H.value.find((t) => t.name === e) || (L.value.debug && console.warn(`VueUiDonut - Series name not found "${e}"`), null) : (L.value.debug && console.warn("VueUiDonut - There are no series to show."), null);
770
+ }
771
+ function Ur(e) {
772
+ let t = Hr(e);
773
+ t !== null && W.value.includes(t.seriesIndex) && Vr(t.seriesIndex);
774
+ }
775
+ function Wr(e) {
776
+ let t = Hr(e);
777
+ t !== null && (W.value.includes(t.seriesIndex) || Vr(t.seriesIndex));
778
+ }
779
+ let Gr = y(() => hr.value.reduce((e, t) => e + t.values.reduce((e, t) => e + t, 0), 0)), Kr = y(() => {
780
+ if (R.value && !mr.value) {
781
+ let e = vr.value, t = H.value.map((t) => ({
782
+ ...t,
783
+ value: t.value * e,
784
+ color: t.color,
785
+ ghost: !1
786
+ })), n = Gr.value * (1 - e);
787
+ return n > 0 && t.push({
788
+ name: "__ghost__",
789
+ value: n,
790
+ color: "transparent",
791
+ ghost: !0
792
+ }), t;
793
+ } else return U.value.forEach((e) => {
794
+ if ([null, void 0].includes(e.values)) return {
795
+ ...e,
796
+ values: []
797
+ };
798
+ }), U.value.map((e, t) => ({
799
+ ...e,
800
+ seriesIndex: t
801
+ })).filter((e, t) => !W.value.includes(t));
802
+ }), qr = y(() => hr.value.map((e, t) => {
803
+ let n = (e.values || []).reduce((e, t) => e + t, 0), r = n / hr.value.map((e) => (e.values || []).reduce((e, t) => e + t, 0)).reduce((e, t) => e + t, 0);
804
+ return {
805
+ name: e.name,
806
+ color: de(e.color) || Nr.value[t] || d[t] || d[t % d.length],
807
+ value: n,
808
+ shape: "circle",
809
+ patternIndex: t,
810
+ proportion: r
811
+ };
812
+ }).map((e, t) => {
813
+ let n = h(L.value.style.chart.layout.labels.value.formatter, e.value, i({
814
+ p: L.value.style.chart.layout.labels.dataLabels.prefix,
815
+ v: e.value,
816
+ s: L.value.style.chart.layout.labels.dataLabels.suffix,
817
+ r: L.value.style.chart.legend.roundingValue
818
+ }), {
819
+ datapoint: e,
820
+ index: t
821
+ }), r = h(L.value.style.chart.layout.labels.percentage.formatter, ii(e), i({
822
+ v: ii(e),
823
+ s: "%",
824
+ r: L.value.style.chart.legend.roundingPercentage
825
+ })), a = bi({
826
+ val: n,
827
+ percentage: W.value.includes(t) ? `${yi(e.proportion * 100)}%` : r,
828
+ showVal: L.value.style.chart.legend.showValue,
829
+ showPercentage: L.value.style.chart.legend.showPercentage,
830
+ config: L.value.style.chart.legend
831
+ });
832
+ return {
833
+ ...e,
834
+ opacity: W.value.includes(t) ? .5 : 1,
835
+ segregate: () => !Lr.value && Vr(t),
836
+ isSegregated: W.value.includes(t),
837
+ display: `${e.name}${L.value.style.chart.legend.showPercentage || L.value.style.chart.legend.showValue ? ": " : ""}${a}`
838
+ };
839
+ })), Jr = y(() => ({
840
+ cy: "donut-div-legend",
841
+ backgroundColor: L.value.style.chart.legend.backgroundColor,
842
+ color: L.value.style.chart.legend.color,
843
+ fontSize: L.value.style.chart.legend.fontSize,
844
+ paddingBottom: 12,
845
+ fontWeight: L.value.style.chart.legend.bold ? "bold" : ""
846
+ })), G = y(() => {
847
+ let e = L.value.style.chart.layout.donut.radiusRatio, t = Math.max(.1, Math.min(.50001, e)), n = Math.min(V.value.width * t, V.value.height * t);
848
+ return Math.max(12, n);
849
+ }), K = y(() => ne({ series: Kr.value }, V.value.width / 2, V.value.height / 2, G.value, G.value, 1.99999, 2, 1, 360, 105.25, Pr.value)), Yr = y(() => Math.abs(Kr.value.map((e) => e.value).reduce((e, t) => e + t, 0)) > 0), Xr = y(() => ne({ series: [{
850
+ value: 1,
851
+ color: L.value.style.chart.layout.donut.emptyFill,
852
+ name: "_",
853
+ seriesIndex: 0,
854
+ patternIndex: -1,
855
+ ghost: !1,
856
+ absoluteValues: [1]
857
+ }] }, V.value.width / 2, V.value.height / 2, G.value, G.value, 1.99999, 2, 1, 360, 105.25, Pr.value)), q = y(() => K.value.filter((e) => !e.ghost)), J = y(() => {
858
+ let e = Math.max(...Kr.value.map((e) => e.value));
859
+ return r({
860
+ series: Kr.value.map((t) => t.value / e),
861
+ center: {
862
+ x: V.value.width / 2,
863
+ y: V.value.height / 2
864
+ },
865
+ maxRadius: Math.min(V.value.width, V.value.height) / 3,
866
+ hasGhost: R.value
867
+ });
868
+ });
869
+ function Zr(e) {
870
+ return e.x > V.value.width / 2 + 6 ? "start" : e.x < V.value.width / 2 - 6 ? "end" : "middle";
871
+ }
872
+ function Qr(e) {
873
+ return e.middlePoint.y > V.value.height / 2 ? n({
874
+ initX: e.middlePoint.x,
875
+ initY: e.middlePoint.y,
876
+ offset: 100,
877
+ centerX: V.value.width / 2,
878
+ centerY: V.value.height / 2
879
+ }).y : n({
880
+ initX: e.middlePoint.x,
881
+ initY: e.middlePoint.y,
882
+ offset: 0,
883
+ centerX: V.value.width / 2,
884
+ centerY: V.value.height / 2
885
+ }).y - 100;
886
+ }
887
+ function Y(e) {
888
+ return e.proportion * 100 > L.value.style.chart.layout.labels.dataLabels.hideUnderValue;
889
+ }
890
+ function $r(e, t) {
891
+ let n = L.value.style.chart.layout.labels.dataLabels.hideUnderValue, r = L.value.style.chart.layout.labels.dataLabels.smallArcClusterThreshold, i = (ni.value[t] ?? e.proportion ?? 0) * 100;
892
+ return i > n && i <= r;
893
+ }
894
+ let { smallArcLayoutsClassic: X } = Qe({
895
+ FINAL_CONFIG: L,
896
+ noGhostDonut: q,
897
+ svg: V,
898
+ padding: Dr,
899
+ labels_inline_fontSize: nr,
900
+ minSize: G,
901
+ findArcMidpoint: t,
902
+ calcMarkerOffsetX: g,
903
+ calcMarkerOffsetY: p,
904
+ animatingIndex: Rr,
905
+ segregated: W,
906
+ isSmallArc: $r
907
+ });
908
+ function ei(e, t) {
909
+ let n = e.value / ti(t);
910
+ return isNaN(n) ? 0 : h(L.value.style.chart.layout.labels.percentage.formatter, n * 100, i({
911
+ v: n * 100,
912
+ s: "%",
913
+ r: L.value.style.chart.layout.labels.percentage.rounding
914
+ }), { datapoint: e });
915
+ }
916
+ function ti(e) {
917
+ return [...e].map((e) => e.value).reduce((e, t) => e + t, 0);
918
+ }
919
+ let Z = y(() => Kr.value.map((e) => e.value).reduce((e, t) => e + t, 0)), ni = y(() => {
920
+ let e = H.value.reduce((e, t) => e + t.value, 0);
921
+ return e <= 0 ? [] : H.value.map((t) => t.value / e);
922
+ }), ri = y(() => Z.value / Kr.value.length);
923
+ function ii(e) {
924
+ return Lr.value ? e.proportion * 100 : e.value / Z.value * 100;
925
+ }
926
+ let ai = D(null), oi = D(!1);
927
+ function si({ datapoint: e, seriesIndex: t }) {
928
+ L.value.events.datapointLeave && L.value.events.datapointLeave({
929
+ datapoint: e,
930
+ seriesIndex: t
931
+ }), cr.value = !1, I.value = null, Zn.value = null, $n.value = "pointer";
932
+ }
933
+ function Q({ datapoint: e, relativeIndex: t, seriesIndex: n, show: r = !1, triggerMode: a = "pointer" }) {
934
+ L.value.events.datapointEnter && L.value.events.datapointEnter({
935
+ datapoint: e,
936
+ seriesIndex: n
937
+ }), $n.value = a, Zn.value = t, ai.value = {
938
+ datapoint: e,
939
+ seriesIndex: n,
940
+ config: L.value,
941
+ series: H.value
942
+ }, cr.value = r, I.value = t;
943
+ let o = "", s = L.value.style.chart.tooltip.customFormat;
944
+ if (oi.value = !1, se(s)) try {
945
+ let t = s({
946
+ seriesIndex: n,
947
+ datapoint: e,
948
+ series: H.value,
949
+ config: L.value
950
+ });
951
+ typeof t == "string" && (lr.value = t, oi.value = !0);
952
+ } catch {
953
+ console.warn("Custom format cannot be applied."), oi.value = !1;
954
+ }
955
+ oi.value || (o += `<div style="width:100%;text-align:center;border-bottom:1px solid ${L.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${e.name}</div>`, o += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><circle cx="30" cy="30" r="30" stroke="none" fill="${e.color}"/>${Mn.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${F.value}_${n})"/>` : ""}</svg>`, o += `<b>${bi({
956
+ showVal: L.value.style.chart.tooltip.showValue,
957
+ showPercentage: L.value.style.chart.tooltip.showPercentage,
958
+ val: `<span>${h(L.value.style.chart.layout.labels.value.formatter, e.value, i({
959
+ p: L.value.style.chart.layout.labels.dataLabels.prefix,
960
+ v: e.value,
961
+ s: L.value.style.chart.layout.labels.dataLabels.suffix,
962
+ r: L.value.style.chart.tooltip.roundingValue
963
+ }), {
964
+ datapoint: e,
965
+ relativeIndex: t,
966
+ seriesIndex: n
967
+ })}</span>`,
968
+ percentage: h(L.value.style.chart.layout.labels.percentage.formatter, e.proportion * 100, i({
969
+ v: e.proportion * 100,
970
+ s: "%",
971
+ r: L.value.style.chart.tooltip.roundingPercentage
972
+ }), {
973
+ datapoint: e,
974
+ relativeIndex: t,
975
+ seriesIndex: n
976
+ }),
977
+ config: L.value.style.chart.tooltip
978
+ })}</b></div>`, L.value.style.chart.comments.showInTooltip && e.comment && (o += `<div class="vue-data-ui-tooltip-comment" style="background:${e.color}20; padding: 6px; margin-bottom: 6px; margin-top:6px; border-left: 1px solid ${e.color}">${e.comment}</div>`), lr.value = `<div>${o}</div>`);
979
+ }
980
+ function ci(e, t) {
981
+ let n = X.value[t];
982
+ if (n) return {
983
+ textAnchor: n.textAnchor,
984
+ x: n.labelX,
985
+ y: n.labelY
986
+ };
987
+ let r = g(e, !0, 12);
988
+ return {
989
+ textAnchor: r.anchor,
990
+ x: r.x,
991
+ y: p(e)
992
+ };
993
+ }
994
+ function li(e, t, n) {
995
+ let { textAnchor: r, x: i } = ci(e, t), a = xi(e), o = `
996
+ <tspan
997
+ class="vue-data-ui-datalabel-inline"
998
+ fill="${L.value.style.chart.layout.labels.percentage.color}"
999
+ font-size="${n ? nr.value : tr.value}px"
1000
+ style="font-weight:${L.value.style.chart.layout.labels.percentage.bold ? "bold" : ""}"
1001
+ >${a}</tspan>
1002
+ `, s = String(e.name ?? "").split(/\n/g), c = "";
1003
+ return s.forEach((e, t) => {
1004
+ t === 0 ? c += `
1005
+ <tspan
1006
+ class="${n ? "vue-data-ui-datalabel-inline" : "vue-data-ui-datalabel-name"}"
1007
+ fill="${L.value.style.chart.layout.labels.name.color}"
1008
+ font-size="${n ? nr.value : P.value}px"
1009
+ style="font-weight:${L.value.style.chart.layout.labels.name.bold ? "bold" : ""}"
1010
+ >${e}</tspan>
1011
+ ` : c += `
1012
+ <tspan
1013
+ class="${n ? "vue-data-ui-datalabel-inline" : "vue-data-ui-datalabel-name"}"
1014
+ x="${i}"
1015
+ dy="${(n ? nr.value : P.value) * 1.2}"
1016
+ fill="${L.value.style.chart.layout.labels.name.color}"
1017
+ font-size="${n ? nr.value : P.value}px"
1018
+ style="font-weight:${L.value.style.chart.layout.labels.name.bold ? "bold" : ""}"
1019
+ >${e}</tspan>
1020
+ `;
1021
+ }), r === "end" ? `${L.value.style.chart.layout.labels.name.show ? c : ""}${o}` : `${o}${L.value.style.chart.layout.labels.name.show ? c : ""}`;
1022
+ }
1023
+ function ui(e, t) {
1024
+ let r = J.value[t].middlePoint, i = Zr(r), a = n({
1025
+ initX: r.x,
1026
+ initY: r.y,
1027
+ offset: 42,
1028
+ centerX: V.value.width / 2,
1029
+ centerY: V.value.height / 2
1030
+ }), o = a.x;
1031
+ a.y;
1032
+ let s = xi(e), c = `
1033
+ <tspan
1034
+ class="vue-data-ui-datalabel-value"
1035
+ fill="${L.value.style.chart.layout.labels.percentage.color}"
1036
+ font-size="${tr.value}px"
1037
+ style="font-weight:${L.value.style.chart.layout.labels.percentage.bold ? "bold" : "normal"}"
1038
+ >${s}</tspan>
1039
+ `, l = String(e.name ?? "").split(/\n/g), u = "";
1040
+ return l.forEach((e, t) => {
1041
+ t === 0 ? u += `
1042
+ <tspan
1043
+ class="vue-data-ui-datalabel-name"
1044
+ fill="${L.value.style.chart.layout.labels.name.color}"
1045
+ font-size="${P.value}px"
1046
+ style="font-weight:${L.value.style.chart.layout.labels.name.bold ? "bold" : "normal"}"
1047
+ >${e}</tspan>
1048
+ ` : u += `
1049
+ <tspan
1050
+ class="vue-data-ui-datalabel-name"
1051
+ x="${o}"
1052
+ dy="${P.value * 1.2}"
1053
+ fill="${L.value.style.chart.layout.labels.name.color}"
1054
+ font-size="${P.value}px"
1055
+ style="font-weight:${L.value.style.chart.layout.labels.name.bold ? "bold" : "normal"}"
1056
+ >${e}</tspan>
1057
+ `;
1058
+ }), i === "end" ? `${L.value.style.chart.layout.labels.name.show ? u : ""}${c}` : `${c}${L.value.style.chart.layout.labels.name.show ? u : ""}`;
1059
+ }
1060
+ function di(e) {
1061
+ return L.value.useBlurOnHover && ![null, void 0].includes(I.value) && I.value !== e ? `url(#blur_${F.value})` : "";
1062
+ }
1063
+ function fi(e) {
1064
+ if (!Lr.value || Rr.value === null || e.seriesIndex !== Rr.value) return 1;
1065
+ let t = (e.proportion ?? 0) * 100, n = L.value.style.chart.layout.labels.dataLabels.hideUnderValue, r = L.value.style.chart.layout.labels.dataLabels.smallArcClusterThreshold + 2, i = n;
1066
+ return t >= r ? 1 : t <= i ? 0 : (t - i) / (r - i);
1067
+ }
1068
+ let pi = y(() => ({
1069
+ head: Kr.value.map((e) => ({
1070
+ name: e.name,
1071
+ color: e.color
1072
+ })),
1073
+ body: Kr.value.map((e) => e.value)
1074
+ }));
1075
+ function mi(e = null) {
1076
+ Be(() => {
1077
+ let t = pi.value.head.map((e, t) => [
1078
+ [e.name],
1079
+ [pi.value.body[t]],
1080
+ [isNaN(pi.value.body[t] / Z.value) ? "-" : pi.value.body[t] / Z.value * 100]
1081
+ ]), n = l([
1082
+ [L.value.style.chart.title.text],
1083
+ [L.value.style.chart.title.subtitle.text],
1084
+ [
1085
+ [""],
1086
+ ["val"],
1087
+ ["%"]
1088
+ ]
1089
+ ].concat(t));
1090
+ e ? e(n) : o({
1091
+ csvContent: n,
1092
+ title: L.value.style.chart.title.text || "vue-ui-donut"
1093
+ });
1094
+ });
1095
+ }
1096
+ let hi = y(() => {
1097
+ let e = [
1098
+ " <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2\" /></svg>",
1099
+ i({
1100
+ p: L.value.style.chart.layout.labels.dataLabels.prefix,
1101
+ v: Z.value,
1102
+ s: L.value.style.chart.layout.labels.dataLabels.suffix,
1103
+ r: L.value.table.td.roundingValue
1104
+ }),
1105
+ "100%"
1106
+ ], t = pi.value.head.map((e, t) => [
1107
+ {
1108
+ color: e.color,
1109
+ name: e.name || "-"
1110
+ },
1111
+ pi.value.body[t],
1112
+ isNaN(pi.value.body[t] / Z.value) ? "-" : (pi.value.body[t] / Z.value * 100).toFixed(L.value.table.td.roundingPercentage) + "%"
1113
+ ]), n = t.map((e) => e.map((e, t) => t === 0 ? e.name : e)), r = {
1114
+ th: {
1115
+ backgroundColor: L.value.table.th.backgroundColor,
1116
+ color: L.value.table.th.color,
1117
+ outline: L.value.table.th.outline
1118
+ },
1119
+ td: {
1120
+ backgroundColor: L.value.table.td.backgroundColor,
1121
+ color: L.value.table.td.color,
1122
+ outline: L.value.table.td.outline
1123
+ },
1124
+ breakpoint: L.value.table.responsiveBreakpoint
1125
+ };
1126
+ return {
1127
+ colNames: [
1128
+ L.value.table.columnNames.series,
1129
+ L.value.table.columnNames.value,
1130
+ L.value.table.columnNames.percentage
1131
+ ],
1132
+ head: e,
1133
+ body: t,
1134
+ a11yBody: n,
1135
+ config: r
1136
+ };
1137
+ }), gi = D(!1);
1138
+ function _i(e) {
1139
+ gi.value = e, ur.value += 1;
1140
+ }
1141
+ let vi = y(() => /^((?!chrome|android).)*safari/i.test(navigator.userAgent));
1142
+ function yi(e) {
1143
+ return ke({
1144
+ num: e,
1145
+ rounding: L.value.style.chart.legend.roundingPercentage
1146
+ });
1147
+ }
1148
+ function bi({ val: e, percentage: t, showVal: n, showPercentage: r, config: i }) {
1149
+ return Ae({
1150
+ config: i,
1151
+ val: e,
1152
+ percentage: t,
1153
+ showVal: n,
1154
+ showPercentage: r
1155
+ });
1156
+ }
1157
+ function xi(e) {
1158
+ return bi({
1159
+ val: h(L.value.style.chart.layout.labels.value.formatter, e.value, i({
1160
+ p: L.value.style.chart.layout.labels.dataLabels.prefix,
1161
+ v: e.value,
1162
+ s: L.value.style.chart.layout.labels.dataLabels.suffix,
1163
+ r: L.value.style.chart.layout.labels.value.rounding
1164
+ }), { datapoint: e }),
1165
+ percentage: ei(e, q.value),
1166
+ showVal: L.value.style.chart.layout.labels.value.show,
1167
+ showPercentage: L.value.style.chart.layout.labels.percentage.show,
1168
+ config: L.value.style.chart.layout.labels.dataLabels
1169
+ });
1170
+ }
1171
+ function $(e, t) {
1172
+ L.value.events.datapointClick && L.value.events.datapointClick({
1173
+ datapoint: e,
1174
+ seriesIndex: e.seriesIndex
1175
+ }), Fr("selectDatapoint", {
1176
+ datapoint: e,
1177
+ index: t
1178
+ });
1179
+ }
1180
+ function Si() {
1181
+ B.value.showTable = !B.value.showTable;
1182
+ }
1183
+ function Ci() {
1184
+ B.value.dataLabels.show = !B.value.dataLabels.show;
1185
+ }
1186
+ function wi() {
1187
+ B.value.showTooltip = !B.value.showTooltip;
1188
+ }
1189
+ let Ti = D(!1);
1190
+ function Ei() {
1191
+ Ti.value = !Ti.value;
1192
+ }
1193
+ async function Di({ scale: e = 2 } = {}) {
1194
+ if (!N.value) return;
1195
+ let { width: t, height: n } = N.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await ye({
1196
+ domElement: N.value,
1197
+ base64: !0,
1198
+ img: !0,
1199
+ scale: e
1200
+ });
1201
+ return {
1202
+ imageUri: i,
1203
+ base64: a,
1204
+ title: L.value.style.chart.title.text,
1205
+ width: t,
1206
+ height: n,
1207
+ aspectRatio: r
1208
+ };
1209
+ }
1210
+ function Oi() {
1211
+ if (!Pn.value) return;
1212
+ let { x: e, y: t, width: n, height: r } = Pn.value.getBBox();
1213
+ z.value && z.value.setAttribute("viewBox", `${e} ${t} ${n + Math.min(0, e)} ${r + Math.min(0, t)}`);
1214
+ }
1215
+ let ki = y(() => {
1216
+ let e = L.value.table.useDialog && !L.value.table.show, t = B.value.showTable;
1217
+ return {
1218
+ component: e ? On : Cn,
1219
+ title: `${L.value.style.chart.title.text}${L.value.style.chart.title.subtitle.text ? `: ${L.value.style.chart.title.subtitle.text}` : ""}`,
1220
+ props: e ? {
1221
+ backgroundColor: L.value.table.th.backgroundColor,
1222
+ color: L.value.table.th.color,
1223
+ headerColor: L.value.table.th.color,
1224
+ headerBg: L.value.table.th.backgroundColor,
1225
+ isFullscreen: gi.value,
1226
+ fullscreenParent: N.value,
1227
+ forcedWidth: Math.min(500, window.innerWidth * .8),
1228
+ isCursorPointer: fr.value
1229
+ } : {
1230
+ hideDetails: !0,
1231
+ config: {
1232
+ open: t,
1233
+ maxHeight: 1e4,
1234
+ body: {
1235
+ backgroundColor: L.value.style.chart.backgroundColor,
1236
+ color: L.value.style.chart.color
1237
+ },
1238
+ head: {
1239
+ backgroundColor: L.value.style.chart.backgroundColor,
1240
+ color: L.value.style.chart.color
1241
+ }
1242
+ }
1243
+ }
1244
+ };
1245
+ });
1246
+ Xe(() => B.value.showTable, (e) => {
1247
+ L.value.table.show || (e && L.value.table.useDialog && qn.value ? qn.value.open() : "close" in qn.value && qn.value.close());
1248
+ });
1249
+ function Ai() {
1250
+ B.value.showTable = !1, Jn.value && Jn.value.setTableIconState(!1);
1251
+ }
1252
+ let ji = y(() => qr.value.map((e) => ({
1253
+ ...e,
1254
+ name: e.display
1255
+ }))), Mi = y(() => L.value.style.chart.backgroundColor), Ni = y(() => L.value.style.chart.legend), { exportSvg: Pi, getSvg: Fi } = ge({
1256
+ svg: z,
1257
+ title: y(() => L.value.style.chart.title),
1258
+ legend: Ni,
1259
+ legendItems: ji,
1260
+ backgroundColor: Mi
1261
+ });
1262
+ async function Ii({ isCb: e }) {
1263
+ Xn.value = !0, await Be();
1264
+ try {
1265
+ if (e) {
1266
+ let { blob: e, url: t, text: n, dataUrl: r } = await Fi();
1267
+ await Promise.resolve(L.value.userOptions.callbacks.svg({
1268
+ blob: e,
1269
+ url: t,
1270
+ text: n,
1271
+ dataUrl: r
1272
+ }));
1273
+ } else await Promise.resolve(Pi());
1274
+ } finally {
1275
+ Xn.value = !1;
1276
+ }
1277
+ }
1278
+ function Li(e) {
1279
+ if (e?.stage === "start") {
1280
+ Yn.value = !0;
1281
+ return;
1282
+ }
1283
+ if (e?.stage === "end") {
1284
+ Yn.value = !1;
1285
+ return;
1286
+ }
1287
+ jr();
1288
+ }
1289
+ async function Ri() {
1290
+ if (Fr("copyAlt", {
1291
+ config: L.value,
1292
+ dataset: U.value
1293
+ }), !L.value.userOptions.callbacks.altCopy) {
1294
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1295
+ return;
1296
+ }
1297
+ await Promise.resolve(L.value.userOptions.callbacks.altCopy({
1298
+ config: L.value,
1299
+ dataset: U.value
1300
+ }));
1301
+ }
1302
+ function zi() {
1303
+ Zn.value = null, er.value = !0;
1304
+ }
1305
+ function Bi() {
1306
+ Zn.value = null, $n.value = "pointer", cr.value = !1, I.value = null, er.value = !1;
1307
+ }
1308
+ function Vi(e) {
1309
+ if (!z.value || Ti.value || document.activeElement !== z.value || !q.value.length) return;
1310
+ let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1311
+ if (!t && !n && !r && !i) return;
1312
+ if (e.preventDefault(), e.stopPropagation(), i) {
1313
+ Zn.value = null, $n.value = "pointer", cr.value = !1, I.value = null;
1314
+ return;
1315
+ }
1316
+ if (r) {
1317
+ if (Zn.value === null) return;
1318
+ let e = q.value[Zn.value];
1319
+ if (!e) return;
1320
+ $(e, Zn.value);
1321
+ return;
1322
+ }
1323
+ let a = Zn.value, o = I.value, s = a !== null && a >= 0 && a < q.value.length, c = o !== null && o >= 0 && o < q.value.length;
1324
+ s ? n ? (a += 1, a >= q.value.length && (a = 0)) : t && (--a, a < 0 && (a = q.value.length - 1)) : c ? (a = n ? o + 1 : o - 1, a >= q.value.length && (a = 0), a < 0 && (a = q.value.length - 1)) : a = n ? 0 : q.value.length - 1;
1325
+ let l = q.value[a];
1326
+ l && (Zn.value = a, Hi(a), Q({
1327
+ datapoint: l,
1328
+ relativeIndex: a,
1329
+ seriesIndex: l.seriesIndex,
1330
+ show: !0,
1331
+ triggerMode: "keyboard"
1332
+ }));
1333
+ }
1334
+ function Hi(e) {
1335
+ if (!Number.isFinite(e) || !z.value) return;
1336
+ let n = V.value.width / 2, r = V.value.height / 2;
1337
+ if (L.value.type === "classic") {
1338
+ let i = q.value[e];
1339
+ if (!i?.arcSlice) return;
1340
+ let a = t(i.arcSlice);
1341
+ if (!a) return;
1342
+ n = a.x, r = a.y;
1343
+ } else {
1344
+ let t = J.value[e]?.middlePoint;
1345
+ if (!t) return;
1346
+ n = t.x, r = t.y;
1347
+ }
1348
+ let i = z.value.getBoundingClientRect();
1349
+ Qn.value = {
1350
+ x: i.left + n / V.value.width * i.width,
1351
+ y: i.top + r / V.value.height * i.height
1352
+ };
1353
+ }
1354
+ let Ui = y(() => ({
1355
+ headers: hi.value?.colNames ?? [],
1356
+ rows: hi.value?.a11yBody ?? []
1357
+ }));
1358
+ return Se({
1359
+ autoSize: Oi,
1360
+ getData: Ir,
1361
+ getImage: Di,
1362
+ generatePdf: Ar,
1363
+ generateCsv: mi,
1364
+ generateImage: jr,
1365
+ generateSvg: Ii,
1366
+ hideSeries: Wr,
1367
+ showSeries: Ur,
1368
+ toggleTable: Si,
1369
+ toggleLabels: Ci,
1370
+ toggleTooltip: wi,
1371
+ toggleAnnotator: Ei,
1372
+ toggleFullscreen: _i,
1373
+ copyAlt: Ri
1374
+ }), (t, r) => (E(), x("div", {
1375
+ ref_key: "donutChart",
1376
+ ref: N,
1377
+ class: Ve(`vue-data-ui-component vue-ui-donut ${gi.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${L.value.useCssAnimation ? "" : "vue-ui-dna"}`),
1378
+ style: T(`font-family:${L.value.style.fontFamily};width:100%; ${L.value.responsive ? "height:100%;" : ""} text-align:center;background:${L.value.style.chart.backgroundColor}`),
1379
+ id: `donut__${F.value}`,
1380
+ onMouseenter: Tr,
1381
+ onMouseleave: Er
1382
+ }, [
1383
+ S("div", {
1384
+ id: `chart-instructions-${F.value}`,
1385
+ class: "sr-only"
1386
+ }, [S("p", null, Ke(L.value.a11y.translations.keyboardNavigation), 1)], 8, tt),
1387
+ Ui.value?.rows?.length ? (E(), Pe(Ee, {
1388
+ key: 0,
1389
+ uid: F.value,
1390
+ head: Ui.value.headers,
1391
+ body: Ui.value.rows,
1392
+ notice: L.value.a11y.translations.tableAvailable,
1393
+ caption: L.value.a11y.translations.tableCaption
1394
+ }, null, 8, [
1395
+ "uid",
1396
+ "head",
1397
+ "body",
1398
+ "notice",
1399
+ "caption"
1400
+ ])) : b("", !0),
1401
+ L.value.userOptions.buttons.annotator && A(z) ? (E(), Pe(A(Tn), {
1402
+ key: 1,
1403
+ color: L.value.style.chart.color,
1404
+ backgroundColor: L.value.style.chart.backgroundColor,
1405
+ active: Ti.value,
1406
+ svgRef: A(z),
1407
+ isCursorPointer: fr.value,
1408
+ onClose: Ei
1409
+ }, {
1410
+ "annotator-action-close": j(() => [k(t.$slots, "annotator-action-close", {}, void 0, !0)]),
1411
+ "annotator-action-color": j(({ color: e }) => [k(t.$slots, "annotator-action-color", w(C({ color: e })), void 0, !0)]),
1412
+ "annotator-action-draw": j(({ mode: e }) => [k(t.$slots, "annotator-action-draw", w(C({ mode: e })), void 0, !0)]),
1413
+ "annotator-action-undo": j(({ disabled: e }) => [k(t.$slots, "annotator-action-undo", w(C({ disabled: e })), void 0, !0)]),
1414
+ "annotator-action-redo": j(({ disabled: e }) => [k(t.$slots, "annotator-action-redo", w(C({ disabled: e })), void 0, !0)]),
1415
+ "annotator-action-delete": j(({ disabled: e }) => [k(t.$slots, "annotator-action-delete", w(C({ disabled: e })), void 0, !0)]),
1416
+ _: 3
1417
+ }, 8, [
1418
+ "color",
1419
+ "backgroundColor",
1420
+ "active",
1421
+ "svgRef",
1422
+ "isCursorPointer"
1423
+ ])) : b("", !0),
1424
+ k(t.$slots, "userConfig", {}, void 0, !0),
1425
+ Mr.value ? (E(), x("div", {
1426
+ key: 2,
1427
+ ref_key: "noTitle",
1428
+ ref: Hn,
1429
+ class: "vue-data-ui-no-title-space",
1430
+ style: "height:36px; width: 100%;background:transparent"
1431
+ }, null, 512)) : b("", !0),
1432
+ L.value.style.chart.title.text ? (E(), x("div", {
1433
+ key: 3,
1434
+ ref_key: "chartTitle",
1435
+ ref: Ln,
1436
+ style: "width:100%;background:transparent;padding-bottom:24px"
1437
+ }, [(E(), Pe(be, {
1438
+ key: `title_${Un.value}`,
1439
+ config: {
1440
+ title: {
1441
+ cy: "donut-div-title",
1442
+ ...L.value.style.chart.title
1443
+ },
1444
+ subtitle: {
1445
+ cy: "donut-div-subtitle",
1446
+ ...L.value.style.chart.title.subtitle
1447
+ }
1448
+ }
1449
+ }, null, 8, ["config"]))], 512)) : b("", !0),
1450
+ S("div", { id: `legend-top-${F.value}` }, null, 8, nt),
1451
+ L.value.userOptions.show && Nn.value && (A(wr) || A(Sr)) ? (E(), Pe(A(En), {
1452
+ ref_key: "userOptionsRef",
1453
+ ref: Jn,
1454
+ key: `user_option_${ur.value}`,
1455
+ backgroundColor: L.value.style.chart.backgroundColor,
1456
+ color: L.value.style.chart.color,
1457
+ isPrinting: A(Or),
1458
+ isImaging: A(kr),
1459
+ uid: F.value,
1460
+ hasTooltip: L.value.style.chart.tooltip.show && L.value.userOptions.buttons.tooltip,
1461
+ hasPdf: L.value.userOptions.buttons.pdf,
1462
+ hasImg: L.value.userOptions.buttons.img,
1463
+ hasSvg: L.value.userOptions.buttons.svg,
1464
+ hasXls: L.value.userOptions.buttons.csv,
1465
+ hasTable: L.value.userOptions.buttons.table,
1466
+ hasLabel: L.value.userOptions.buttons.labels,
1467
+ hasFullscreen: L.value.userOptions.buttons.fullscreen,
1468
+ hasAltCopy: L.value.userOptions.buttons.altCopy,
1469
+ isFullscreen: gi.value,
1470
+ chartElement: N.value,
1471
+ position: L.value.userOptions.position,
1472
+ callbacks: L.value.userOptions.callbacks,
1473
+ isTooltip: B.value.showTooltip,
1474
+ titles: { ...L.value.userOptions.buttonTitles },
1475
+ hasAnnotator: L.value.userOptions.buttons.annotator,
1476
+ isAnnotation: Ti.value,
1477
+ printScale: L.value.userOptions.print.scale,
1478
+ tableDialog: L.value.table.useDialog,
1479
+ isCursorPointer: fr.value,
1480
+ onToggleFullscreen: _i,
1481
+ onGeneratePdf: A(Ar),
1482
+ onGenerateCsv: mi,
1483
+ onGenerateImage: Li,
1484
+ onGenerateSvg: Ii,
1485
+ onToggleTable: Si,
1486
+ onToggleLabels: Ci,
1487
+ onToggleTooltip: wi,
1488
+ onToggleAnnotator: Ei,
1489
+ onCopyAlt: Ri,
1490
+ style: T({ visibility: A(wr) ? A(Sr) ? "visible" : "hidden" : "visible" })
1491
+ }, Fe({ _: 2 }, [
1492
+ t.$slots.menuIcon ? {
1493
+ name: "menuIcon",
1494
+ fn: j(({ isOpen: e, color: n }) => [k(t.$slots, "menuIcon", w(C({
1495
+ isOpen: e,
1496
+ color: n
1497
+ })), void 0, !0)]),
1498
+ key: "0"
1499
+ } : void 0,
1500
+ t.$slots.optionTooltip ? {
1501
+ name: "optionTooltip",
1502
+ fn: j(() => [k(t.$slots, "optionTooltip", {}, void 0, !0)]),
1503
+ key: "1"
1504
+ } : void 0,
1505
+ t.$slots.optionPdf ? {
1506
+ name: "optionPdf",
1507
+ fn: j(() => [k(t.$slots, "optionPdf", {}, void 0, !0)]),
1508
+ key: "2"
1509
+ } : void 0,
1510
+ t.$slots.optionCsv ? {
1511
+ name: "optionCsv",
1512
+ fn: j(() => [k(t.$slots, "optionCsv", {}, void 0, !0)]),
1513
+ key: "3"
1514
+ } : void 0,
1515
+ t.$slots.optionImg ? {
1516
+ name: "optionImg",
1517
+ fn: j(() => [k(t.$slots, "optionImg", {}, void 0, !0)]),
1518
+ key: "4"
1519
+ } : void 0,
1520
+ t.$slots.optionSvg ? {
1521
+ name: "optionSvg",
1522
+ fn: j(() => [k(t.$slots, "optionSvg", {}, void 0, !0)]),
1523
+ key: "5"
1524
+ } : void 0,
1525
+ t.$slots.optionTable ? {
1526
+ name: "optionTable",
1527
+ fn: j(() => [k(t.$slots, "optionTable", {}, void 0, !0)]),
1528
+ key: "6"
1529
+ } : void 0,
1530
+ t.$slots.optionLabels ? {
1531
+ name: "optionLabels",
1532
+ fn: j(() => [k(t.$slots, "optionLabels", {}, void 0, !0)]),
1533
+ key: "7"
1534
+ } : void 0,
1535
+ t.$slots.optionFullscreen ? {
1536
+ name: "optionFullscreen",
1537
+ fn: j(({ toggleFullscreen: e, isFullscreen: n }) => [k(t.$slots, "optionFullscreen", w(C({
1538
+ toggleFullscreen: e,
1539
+ isFullscreen: n
1540
+ })), void 0, !0)]),
1541
+ key: "8"
1542
+ } : void 0,
1543
+ t.$slots.optionAnnotator ? {
1544
+ name: "optionAnnotator",
1545
+ fn: j(({ toggleAnnotator: e, isAnnotator: n }) => [k(t.$slots, "optionAnnotator", w(C({
1546
+ toggleAnnotator: e,
1547
+ isAnnotator: n
1548
+ })), void 0, !0)]),
1549
+ key: "9"
1550
+ } : void 0,
1551
+ t.$slots.optionAltCopy ? {
1552
+ name: "optionAltCopy",
1553
+ fn: j(({ altCopy: e }) => [k(t.$slots, "optionAltCopy", w(C({ altCopy: e })), void 0, !0)]),
1554
+ key: "10"
1555
+ } : void 0
1556
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasLabel.hasFullscreen.hasAltCopy.isFullscreen.chartElement.position.callbacks.isTooltip.titles.hasAnnotator.isAnnotation.printScale.tableDialog.isCursorPointer.onGeneratePdf.style".split("."))) : b("", !0),
1557
+ S("div", rt, [(E(), x("svg", {
1558
+ ref_key: "svgRef",
1559
+ ref: z,
1560
+ xmlns: A(ce),
1561
+ "aria-describedby": `chart-instructions-${F.value}`,
1562
+ class: Ve({
1563
+ "vue-data-ui-fullscreen--on": gi.value,
1564
+ "vue-data-ui-fulscreen--off": !gi.value,
1565
+ "vue-data-ui-svg": !0
1566
+ }),
1567
+ viewBox: `0 0 ${V.value.width <= 0 ? 10 : V.value.width} ${V.value.height <= 0 ? 10 : V.value.height}`,
1568
+ style: T(`max-width:100%; overflow: visible; background:transparent;color:${L.value.style.chart.color};${Dr.value.css}`),
1569
+ tabindex: "0",
1570
+ onFocus: zi,
1571
+ onBlur: Bi,
1572
+ onKeydown: Vi
1573
+ }, [S("g", {
1574
+ ref_key: "G",
1575
+ ref: Pn,
1576
+ class: "vue-data-ui-g"
1577
+ }, [
1578
+ Le(A(Dn)),
1579
+ t.$slots["chart-background"] ? (E(), x("foreignObject", {
1580
+ key: 0,
1581
+ x: 0,
1582
+ y: 0,
1583
+ width: V.value.width <= 0 ? 10 : V.value.width,
1584
+ height: V.value.height <= 0 ? 10 : V.value.height,
1585
+ style: { pointerEvents: "none" }
1586
+ }, [k(t.$slots, "chart-background", {}, void 0, !0)], 8, at)) : b("", !0),
1587
+ L.value.type === "classic" && !isNaN(Pr.value / G.value) ? (E(), x("defs", ot, [L.value.style.chart.useGradient ? (E(), x("radialGradient", {
1588
+ key: 0,
1589
+ id: `gradient_${F.value}`
1590
+ }, [
1591
+ S("stop", {
1592
+ offset: "0%",
1593
+ "stop-color": A(re)(L.value.style.chart.backgroundColor, 0),
1594
+ "stop-opacity": "0"
1595
+ }, null, 8, ct),
1596
+ S("stop", {
1597
+ offset: `${(1 - Pr.value / G.value) * 100}%`,
1598
+ "stop-color": A(re)("#FFFFFF", 0),
1599
+ "stop-opacity": "0"
1600
+ }, null, 8, lt),
1601
+ S("stop", {
1602
+ offset: `${(1 - Pr.value / G.value / 2) * 100}%`,
1603
+ "stop-color": A(re)("#FFFFFF", L.value.style.chart.gradientIntensity)
1604
+ }, null, 8, ut),
1605
+ S("stop", {
1606
+ offset: "100%",
1607
+ "stop-color": A(re)(L.value.style.chart.backgroundColor, 0),
1608
+ "stop-opacity": "0"
1609
+ }, null, 8, dt)
1610
+ ], 8, st)) : b("", !0)])) : b("", !0),
1611
+ L.value.type === "polar" ? (E(), x("defs", ft, [(E(!0), x(v, null, O(J.value, (e, t) => (E(), x("radialGradient", {
1612
+ id: `polar_gradient_${t}_${F.value}`,
1613
+ cx: (isNaN(e.middlePoint.x / V.value.width * 100) ? 0 : e.middlePoint.x / V.value.width * 100) + "%",
1614
+ cy: (isNaN(e.middlePoint.y / V.value.height * 100) ? 0 : e.middlePoint.y / V.value.height * 100) + "%",
1615
+ r: "62%"
1616
+ }, [S("stop", {
1617
+ offset: "0%",
1618
+ "stop-color": A(c)(K.value[t].color, .05),
1619
+ "stop-opacity": L.value.style.chart.gradientIntensity / 100
1620
+ }, null, 8, mt), S("stop", {
1621
+ offset: "100%",
1622
+ "stop-color": K.value[t].color
1623
+ }, null, 8, ht)], 8, pt))), 256))])) : b("", !0),
1624
+ S("defs", null, [
1625
+ S("filter", {
1626
+ id: `blur_${F.value}`,
1627
+ x: "-50%",
1628
+ y: "-50%",
1629
+ width: "200%",
1630
+ height: "200%"
1631
+ }, [S("feGaussianBlur", {
1632
+ in: "SourceGraphic",
1633
+ stdDeviation: 2,
1634
+ id: `blur_std_${F.value}`
1635
+ }, null, 8, _t), r[5] ||= S("feColorMatrix", {
1636
+ type: "saturate",
1637
+ values: "0"
1638
+ }, null, -1)], 8, gt),
1639
+ S("filter", {
1640
+ id: `shadow_${F.value}`,
1641
+ "color-interpolation-filters": "sRGB"
1642
+ }, [S("feDropShadow", {
1643
+ dx: "0",
1644
+ dy: "0",
1645
+ stdDeviation: "10",
1646
+ "flood-opacity": "0.5",
1647
+ "flood-color": L.value.style.chart.layout.donut.shadowColor
1648
+ }, null, 8, yt)], 8, vt),
1649
+ S("filter", {
1650
+ id: `drop_shadow_${F.value}`,
1651
+ "color-interpolation-filters": "sRGB",
1652
+ x: "-50%",
1653
+ y: "-50%",
1654
+ width: "200%",
1655
+ height: "200%"
1656
+ }, [S("feDropShadow", {
1657
+ dx: "0",
1658
+ dy: "0",
1659
+ stdDeviation: "3",
1660
+ "flood-opacity": "1",
1661
+ "flood-color": L.value.style.chart.layout.donut.shadowColor
1662
+ }, null, 8, xt)], 8, bt)
1663
+ ]),
1664
+ L.value.type === "classic" ? (E(!0), x(v, { key: 3 }, O(K.value.filter((e) => !e.ghost), (e, t) => (E(), x("g", null, [Y(e) && B.value.dataLabels.show ? (E(), x("path", {
1665
+ key: 0,
1666
+ d: A(X)[t]?.connectorPath || A(oe)(e, {
1667
+ x: V.value.width / 2,
1668
+ y: V.value.height / 2
1669
+ }, 16, 16, !1, !1, Pr.value, 12, L.value.style.chart.layout.curvedMarkers),
1670
+ stroke: e.color,
1671
+ "stroke-width": "1",
1672
+ "stroke-linecap": "round",
1673
+ "stroke-linejoin": "round",
1674
+ fill: "none",
1675
+ filter: di(t)
1676
+ }, null, 8, St)) : b("", !0)]))), 256)) : b("", !0),
1677
+ L.value.type === "polar" ? (E(!0), x(v, { key: 4 }, O(K.value.filter((e) => !e.ghost), (e, t) => (E(), x("g", null, [Y(e) && B.value.dataLabels.show ? (E(), x("path", {
1678
+ key: 0,
1679
+ d: `M ${A(n)({
1680
+ initX: J.value[t].middlePoint.x,
1681
+ initY: J.value[t].middlePoint.y,
1682
+ offset: 24,
1683
+ centerX: V.value.width / 2,
1684
+ centerY: V.value.height / 2
1685
+ }).x},${A(n)({
1686
+ initX: J.value[t].middlePoint.x,
1687
+ initY: J.value[t].middlePoint.y,
1688
+ offset: 24,
1689
+ centerX: V.value.width / 2,
1690
+ centerY: V.value.height / 2
1691
+ }).y} ${J.value[t].middlePoint.x},${J.value[t].middlePoint.y}`,
1692
+ stroke: e.color,
1693
+ "stroke-width": "1",
1694
+ "stroke-linecap": "round",
1695
+ "stroke-linejoin": "round",
1696
+ fill: "none",
1697
+ filter: di(t),
1698
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` })
1699
+ }, null, 12, Ct)) : b("", !0)]))), 256)) : b("", !0),
1700
+ L.value.type === "classic" && L.value.style.chart.layout.donut.useShadow ? (E(), x("circle", {
1701
+ key: 5,
1702
+ cx: V.value.width / 2,
1703
+ cy: V.value.height / 2,
1704
+ r: G.value <= 0 ? 10 : G.value,
1705
+ fill: L.value.style.chart.backgroundColor,
1706
+ filter: `url(#shadow_${F.value})`
1707
+ }, null, 8, wt)) : b("", !0),
1708
+ t.$slots.pattern ? (E(), x("g", Tt, [(E(!0), x(v, null, O(e.dataset, (e, n) => (E(), x("defs", { key: `pattern-${e.patternIndex}` }, [k(t.$slots, "pattern", ze({ ref_for: !0 }, {
1709
+ seriesIndex: n,
1710
+ patternId: `pattern_${F.value}_${n}`
1711
+ }), void 0, !0)]))), 128))])) : b("", !0),
1712
+ Z.value && L.value.type === "classic" ? (E(), x(v, { key: 7 }, [
1713
+ (E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1714
+ stroke: L.value.style.chart.backgroundColor,
1715
+ d: e.arcSlice,
1716
+ fill: "#FFFFFF"
1717
+ }, null, 8, Et))), 256)),
1718
+ (E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1719
+ class: "vue-ui-donut-arc-path",
1720
+ d: e.arcSlice,
1721
+ fill: e.color,
1722
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1723
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth,
1724
+ filter: di(t)
1725
+ }, null, 8, Dt))), 256)),
1726
+ t.$slots.pattern ? (E(), x("g", Ot, [(E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1727
+ class: "vue-ui-donut-arc-path",
1728
+ d: e.arcSlice,
1729
+ fill: `url(#${e.pattern})`,
1730
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1731
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth,
1732
+ filter: di(t)
1733
+ }, null, 8, kt))), 256))])) : b("", !0)
1734
+ ], 64)) : b("", !0),
1735
+ Z.value && L.value.type === "polar" ? (E(), x(v, { key: 8 }, [K.value.length > 1 ? (E(), x("g", At, [
1736
+ (E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1737
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1738
+ d: J.value[t].path,
1739
+ fill: "#FFFFFF",
1740
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` })
1741
+ }, null, 12, jt))), 256)),
1742
+ L.value.style.chart.layout.donut.useShadow ? (E(), x("g", Mt, [(E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1743
+ class: "vue-ui-donut-arc-path",
1744
+ d: J.value[t].path,
1745
+ fill: "transparent",
1746
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1747
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth,
1748
+ filter: `url(#drop_shadow_${F.value})`,
1749
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` })
1750
+ }, null, 12, Nt))), 256))])) : b("", !0),
1751
+ t.$slots.pattern ? (E(), x("g", Pt, [(E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1752
+ class: "vue-ui-donut-arc-path",
1753
+ d: J.value[t].path,
1754
+ fill: `url(#${e.pattern})`,
1755
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1756
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth,
1757
+ filter: di(t),
1758
+ style: T({
1759
+ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out`,
1760
+ transformOrigin: "center"
1761
+ })
1762
+ }, null, 12, Ft))), 256))])) : b("", !0),
1763
+ (E(!0), x(v, null, O(q.value, (e, t) => (E(), x("path", {
1764
+ class: "vue-ui-donut-arc-path",
1765
+ d: J.value[t].path,
1766
+ fill: L.value.style.chart.useGradient ? `url(#polar_gradient_${t}_${F.value})` : e.color,
1767
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1768
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth,
1769
+ filter: di(t),
1770
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` })
1771
+ }, null, 12, It))), 256))
1772
+ ])) : (E(), x("g", Lt, [t.$slots.pattern ? (E(), x("circle", {
1773
+ key: 0,
1774
+ cx: V.value.width / 2,
1775
+ cy: V.value.height / 2,
1776
+ r: G.value,
1777
+ fill: `url(#pattern_${F.value}_${K.value[0].patternIndex})`,
1778
+ stroke: L.value.style.chart.backgroundColor,
1779
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth
1780
+ }, null, 8, Rt)) : b("", !0), S("circle", {
1781
+ cx: V.value.width / 2,
1782
+ cy: V.value.height / 2,
1783
+ r: G.value,
1784
+ fill: L.value.style.chart.useGradient ? `url(#polar_gradient_0_${F.value})` : K.value[0].color,
1785
+ stroke: L.value.style.chart.backgroundColor,
1786
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth
1787
+ }, null, 8, zt)]))], 64)) : (E(), x(v, { key: 9 }, [L.value.type === "classic" && !Yr.value ? (E(), x("g", Bt, [(E(!0), x(v, null, O(Xr.value, (e, t) => (E(), x("path", {
1788
+ class: "vue-ui-donut-arc-path",
1789
+ d: e.arcSlice,
1790
+ fill: e.color,
1791
+ stroke: L.value.style.chart.backgroundColor,
1792
+ "stroke-width": L.value.style.chart.layout.donut.borderWidth
1793
+ }, null, 8, Vt))), 256))])) : b("", !0), S("circle", {
1794
+ cx: V.value.width / 2,
1795
+ cy: V.value.height / 2,
1796
+ r: G.value <= 0 ? 10 : G.value,
1797
+ fill: "transparent",
1798
+ stroke: L.value.style.chart.backgroundColor
1799
+ }, null, 8, Ht)], 64)),
1800
+ L.value.style.chart.useGradient && L.value.type === "classic" ? (E(), x("circle", {
1801
+ key: 10,
1802
+ cx: V.value.width / 2,
1803
+ cy: V.value.height / 2,
1804
+ r: G.value <= 0 ? 10 : G.value,
1805
+ fill: `url(#gradient_${F.value})`
1806
+ }, null, 8, Ut)) : b("", !0),
1807
+ S("circle", {
1808
+ ref_key: "circle_hollow",
1809
+ ref: In,
1810
+ style: { pointerEvents: "none" },
1811
+ fill: "none",
1812
+ cx: V.value.width / 2,
1813
+ cy: V.value.height / 2,
1814
+ r: Math.max(.1, Pr.value * 1.7)
1815
+ }, null, 8, Wt),
1816
+ Z.value ? (E(), x(v, { key: 11 }, [K.value.length > 1 || L.value.type === "classic" ? (E(), x("g", Gt, [(E(!0), x(v, null, O(K.value.filter((e) => !e.ghost), (e, t) => (E(), x("path", {
1817
+ d: L.value.type === "classic" ? e.arcSlice : J.value[t].path,
1818
+ stroke: L.value.style.chart.layout.donut.borderColorAuto ? L.value.style.chart.backgroundColor : L.value.style.chart.layout.donut.borderColor,
1819
+ fill: I.value === t ? L.value.style.chart.layout.donut.selectedColor : "transparent",
1820
+ onMouseenter: (n) => Q({
1821
+ datapoint: e,
1822
+ relativeIndex: t,
1823
+ seriesIndex: e.seriesIndex,
1824
+ show: !0
1825
+ }),
1826
+ onMouseleave: (t) => si({
1827
+ datapoint: e,
1828
+ seriesIndex: e.seriesIndex
1829
+ }),
1830
+ onClick: (n) => $(e, t)
1831
+ }, null, 40, Kt))), 256))])) : (E(), x("g", qt, [S("circle", {
1832
+ cx: V.value.width / 2,
1833
+ cy: V.value.height / 2,
1834
+ r: G.value,
1835
+ fill: "transparent",
1836
+ onMouseenter: r[0] ||= (e) => Q({
1837
+ datapoint: K.value[0],
1838
+ relativeIndex: 0,
1839
+ seriesIndex: K.value[0].seriesIndex,
1840
+ show: !0
1841
+ }),
1842
+ onMouseleave: r[1] ||= (e) => si({
1843
+ datapoint: K.value[0],
1844
+ seriesIndex: K.value[0].seriesIndex
1845
+ }),
1846
+ onClick: r[2] ||= (e) => $(K.value[0], t.i)
1847
+ }, null, 40, Jt)]))], 64)) : b("", !0),
1848
+ L.value.type === "classic" ? (E(), x("g", {
1849
+ key: 12,
1850
+ ref_key: "G_hollow",
1851
+ ref: Fn,
1852
+ class: "vue-data-ui-donut-hollow-labels"
1853
+ }, [
1854
+ L.value.style.chart.layout.labels.hollow.total.show ? (E(), x("text", {
1855
+ key: 0,
1856
+ "text-anchor": "middle",
1857
+ x: V.value.width / 2,
1858
+ y: V.value.height / 2 - (L.value.style.chart.layout.labels.hollow.average.show ? L.value.style.chart.layout.labels.hollow.total.fontSize : 0) + L.value.style.chart.layout.labels.hollow.total.offsetY,
1859
+ fill: L.value.style.chart.layout.labels.hollow.total.color,
1860
+ "font-size": L.value.style.chart.layout.labels.hollow.total.fontSize,
1861
+ style: T(`font-weight:${L.value.style.chart.layout.labels.hollow.total.bold ? "bold" : ""}`)
1862
+ }, Ke(L.value.style.chart.layout.labels.hollow.total.text), 13, Yt)) : b("", !0),
1863
+ L.value.style.chart.layout.labels.hollow.total.show ? (E(), x("text", {
1864
+ key: 1,
1865
+ "text-anchor": "middle",
1866
+ x: V.value.width / 2,
1867
+ y: V.value.height / 2 + L.value.style.chart.layout.labels.hollow.total.fontSize - (L.value.style.chart.layout.labels.hollow.average.show ? L.value.style.chart.layout.labels.hollow.total.fontSize : 0) + L.value.style.chart.layout.labels.hollow.total.value.offsetY,
1868
+ fill: L.value.style.chart.layout.labels.hollow.total.value.color,
1869
+ "font-size": L.value.style.chart.layout.labels.hollow.total.value.fontSize,
1870
+ style: T(`font-weight:${L.value.style.chart.layout.labels.hollow.total.value.bold ? "bold" : ""}`)
1871
+ }, Ke(A(h)(L.value.style.chart.layout.labels.hollow.total.value.formatter, Z.value, A(i)({
1872
+ p: L.value.style.chart.layout.labels.hollow.total.value.prefix,
1873
+ v: Z.value,
1874
+ s: L.value.style.chart.layout.labels.hollow.total.value.suffix
1875
+ }))), 13, Xt)) : b("", !0),
1876
+ L.value.style.chart.layout.labels.hollow.average.show ? (E(), x("text", {
1877
+ key: 2,
1878
+ "text-anchor": "middle",
1879
+ x: V.value.width / 2,
1880
+ y: V.value.height / 2 + (L.value.style.chart.layout.labels.hollow.total.show ? L.value.style.chart.layout.labels.hollow.average.fontSize : 0) + L.value.style.chart.layout.labels.hollow.average.offsetY,
1881
+ fill: L.value.style.chart.layout.labels.hollow.average.color,
1882
+ "font-size": L.value.style.chart.layout.labels.hollow.average.fontSize,
1883
+ style: T(`font-weight:${L.value.style.chart.layout.labels.hollow.average.bold ? "bold" : ""}`)
1884
+ }, Ke(L.value.style.chart.layout.labels.hollow.average.text), 13, Zt)) : b("", !0),
1885
+ L.value.style.chart.layout.labels.hollow.average.show ? (E(), x("text", {
1886
+ key: 3,
1887
+ "text-anchor": "middle",
1888
+ x: V.value.width / 2,
1889
+ y: V.value.height / 2 + (L.value.style.chart.layout.labels.hollow.total.show ? L.value.style.chart.layout.labels.hollow.average.fontSize : 0) + L.value.style.chart.layout.labels.hollow.average.fontSize + L.value.style.chart.layout.labels.hollow.average.value.offsetY,
1890
+ fill: L.value.style.chart.layout.labels.hollow.average.value.color,
1891
+ "font-size": L.value.style.chart.layout.labels.hollow.average.value.fontSize,
1892
+ style: T(`font-weight:${L.value.style.chart.layout.labels.hollow.average.value.bold ? "bold" : ""}`)
1893
+ }, Ke(Lr.value || R.value ? "--" : A(h)(L.value.style.chart.layout.labels.hollow.average.value.formatter, A(m)(ri.value), A(i)({
1894
+ p: L.value.style.chart.layout.labels.hollow.average.value.prefix,
1895
+ v: A(m)(ri.value),
1896
+ s: L.value.style.chart.layout.labels.hollow.average.value.suffix,
1897
+ r: L.value.style.chart.layout.labels.hollow.average.value.rounding
1898
+ }))), 13, Qt)) : b("", !0)
1899
+ ], 512)) : b("", !0),
1900
+ (E(!0), x(v, null, O(q.value.filter((e) => !e.ghost), (e, r) => (E(), x("g", {
1901
+ filter: di(r),
1902
+ class: Ve({ animated: L.value.useCssAnimation }),
1903
+ key: e.seriesIndex,
1904
+ opacity: fi(e)
1905
+ }, [L.value.style.chart.layout.labels.dataLabels.useLabelSlots ? (E(), x("g", en, [(E(), x("foreignObject", {
1906
+ x: A(g)(e, !0).anchor === "end" ? A(g)(e).x - 120 : A(g)(e, !0).anchor === "middle" ? A(g)(e).x - 60 : A(g)(e).x,
1907
+ y: A(p)(e) - (vi.value ? 20 : 0),
1908
+ width: "120",
1909
+ height: "60",
1910
+ style: { overflow: "visible" }
1911
+ }, [S("div", null, [k(t.$slots, "dataLabel", ze({ ref_for: !0 }, {
1912
+ datapoint: e,
1913
+ isBlur: !L.value.useBlurOnHover || [null, void 0].includes(I.value) || I.value === r,
1914
+ isSafari: vi.value,
1915
+ isVisible: Y(e) && B.value.dataLabels.show,
1916
+ textAlign: A(g)(e, !0, 16, !0).anchor,
1917
+ flexAlign: A(g)(e, !0, 16).anchor,
1918
+ percentage: ei(e, q.value)
1919
+ }), void 0, !0)])], 8, tn))])) : (E(), x("g", nn, [L.value.type === "classic" ? (E(), x(v, { key: 0 }, [Y(e) && B.value.dataLabels.show ? (E(), x("circle", {
1920
+ key: 0,
1921
+ cx: A(X)[r]?.markerX ?? A(g)(e).x,
1922
+ cy: A(X)[r]?.markerY ?? A(p)(e) - 3.5,
1923
+ fill: e.color,
1924
+ stroke: L.value.style.chart.backgroundColor,
1925
+ "stroke-width": 1,
1926
+ r: 3,
1927
+ filter: !L.value.useBlurOnHover || [null, void 0].includes(I.value) || I.value === r ? "" : `url(#blur_${F.value})`,
1928
+ onClick: (t) => $(e, r),
1929
+ onMouseenter: (t) => Q({
1930
+ datapoint: e,
1931
+ relativeIndex: r,
1932
+ seriesIndex: e.seriesIndex,
1933
+ show: !0
1934
+ }),
1935
+ onMouseleave: (t) => si({
1936
+ datapoint: e,
1937
+ seriesIndex: e.seriesIndex
1938
+ })
1939
+ }, null, 40, rn)) : b("", !0), L.value.style.chart.layout.labels.dataLabels.oneLine || A(X)[r] ? Ze((E(), x("text", {
1940
+ key: 1,
1941
+ class: "vue-data-ui-datalabel-inline",
1942
+ "text-anchor": A(X)[r]?.textAnchor || A(g)(e, !0, 12).anchor,
1943
+ x: A(X)[r]?.labelX ?? A(g)(e, !0, 12).x,
1944
+ y: A(X)[r]?.labelY ?? A(p)(e),
1945
+ onClick: (t) => $(e, r),
1946
+ onMouseenter: (t) => Q({
1947
+ datapoint: e,
1948
+ relativeIndex: r,
1949
+ seriesIndex: e.seriesIndex,
1950
+ show: !0
1951
+ }),
1952
+ onMouseleave: (t) => si({
1953
+ datapoint: e,
1954
+ seriesIndex: e.seriesIndex
1955
+ }),
1956
+ innerHTML: li(e, r, !!A(X)[r])
1957
+ }, null, 40, an)), [[Ye, Y(e) && B.value.dataLabels.show]]) : (E(), x(v, { key: 2 }, [Ze(S("text", {
1958
+ class: "vue-data-ui-datalabel-value",
1959
+ "text-anchor": A(X)[r]?.textAnchor || A(g)(e, !0, 12).anchor,
1960
+ x: A(X)[r]?.labelX ?? A(g)(e, !0, 12).x,
1961
+ y: A(X)[r]?.labelY ?? A(p)(e),
1962
+ fill: L.value.style.chart.layout.labels.percentage.color,
1963
+ "font-size": tr.value + "px",
1964
+ style: T(`font-weight:${L.value.style.chart.layout.labels.percentage.bold ? "bold" : ""}`),
1965
+ onClick: (t) => $(e, r),
1966
+ onMouseenter: (t) => Q({
1967
+ datapoint: e,
1968
+ relativeIndex: r,
1969
+ seriesIndex: e.seriesIndex,
1970
+ show: !0
1971
+ }),
1972
+ onMouseleave: (t) => si({
1973
+ datapoint: e,
1974
+ seriesIndex: e.seriesIndex
1975
+ })
1976
+ }, Ke(xi(e)), 45, on), [[Ye, Y(e) && B.value.dataLabels.show]]), Ze(S("text", {
1977
+ class: "vue-data-ui-datalabel-name",
1978
+ "text-anchor": A(X)[r]?.textAnchor || A(g)(e).anchor,
1979
+ x: A(X)[r]?.labelX ?? A(g)(e, !0, 12).x,
1980
+ y: (A(X)[r]?.labelY ?? A(p)(e)) + P.value * 1.2,
1981
+ fill: L.value.style.chart.layout.labels.name.color,
1982
+ "font-size": P.value + "px",
1983
+ style: T(`font-weight:${L.value.style.chart.layout.labels.name.bold ? "bold" : ""}`),
1984
+ onClick: (t) => $(e, r),
1985
+ onMouseenter: (t) => Q({
1986
+ datapoint: e,
1987
+ relativeIndex: r,
1988
+ seriesIndex: e.seriesIndex,
1989
+ show: !0
1990
+ }),
1991
+ onMouseleave: (t) => si({
1992
+ datapoint: e,
1993
+ seriesIndex: e.seriesIndex
1994
+ }),
1995
+ innerHTML: A(ee)({
1996
+ content: e.name,
1997
+ fontSize: P.value,
1998
+ fill: L.value.style.chart.layout.labels.name.color,
1999
+ x: A(X)[r]?.labelX ?? A(g)(e, !0, 12).x,
2000
+ y: (A(X)[r]?.labelY ?? A(p)(e)) + P.value
2001
+ })
2002
+ }, null, 44, sn), [[Ye, Y(e, !0, 12) && B.value.dataLabels.show && L.value.style.chart.layout.labels.name.show]])], 64))], 64)) : b("", !0), L.value.type === "polar" ? (E(), x(v, { key: 1 }, [Y(e) && B.value.dataLabels.show ? (E(), x("circle", {
2003
+ key: 0,
2004
+ cx: A(n)({
2005
+ initX: J.value[r].middlePoint.x,
2006
+ initY: J.value[r].middlePoint.y,
2007
+ offset: 24,
2008
+ centerX: V.value.width / 2,
2009
+ centerY: V.value.height / 2
2010
+ }).x,
2011
+ cy: A(n)({
2012
+ initX: J.value[r].middlePoint.x,
2013
+ initY: J.value[r].middlePoint.y,
2014
+ offset: 24,
2015
+ centerX: V.value.width / 2,
2016
+ centerY: V.value.height / 2
2017
+ }).y,
2018
+ fill: e.color,
2019
+ stroke: L.value.style.chart.backgroundColor,
2020
+ "stroke-width": 1,
2021
+ r: 3,
2022
+ filter: !L.value.useBlurOnHover || [null, void 0].includes(I.value) || I.value === r ? "" : `url(#blur_${F.value})`,
2023
+ onClick: (t) => $(e, r),
2024
+ onMouseenter: (t) => Q({
2025
+ datapoint: e,
2026
+ relativeIndex: r,
2027
+ seriesIndex: e.seriesIndex,
2028
+ show: !0
2029
+ }),
2030
+ onMouseleave: (t) => si({
2031
+ datapoint: e,
2032
+ seriesIndex: e.seriesIndex
2033
+ }),
2034
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` })
2035
+ }, null, 44, cn)) : b("", !0), L.value.style.chart.layout.labels.dataLabels.oneLine ? Ze((E(), x("text", {
2036
+ key: 1,
2037
+ class: "vue-data-ui-datalabel-inline",
2038
+ "text-anchor": Zr(J.value[r].middlePoint),
2039
+ x: A(n)({
2040
+ initX: J.value[r].middlePoint.x,
2041
+ initY: J.value[r].middlePoint.y,
2042
+ offset: 42,
2043
+ centerX: V.value.width / 2,
2044
+ centerY: V.value.height / 2
2045
+ }).x,
2046
+ y: A(n)({
2047
+ initX: J.value[r].middlePoint.x,
2048
+ initY: J.value[r].middlePoint.y,
2049
+ offset: 42,
2050
+ centerX: V.value.width / 2,
2051
+ centerY: V.value.height / 2
2052
+ }).y,
2053
+ style: T({ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out` }),
2054
+ onClick: (t) => $(e, r),
2055
+ onMouseenter: (t) => Q({
2056
+ datapoint: e,
2057
+ relativeIndex: r,
2058
+ seriesIndex: e.seriesIndex,
2059
+ show: !0
2060
+ }),
2061
+ onMouseleave: (t) => si({
2062
+ datapoint: e,
2063
+ seriesIndex: e.seriesIndex
2064
+ }),
2065
+ innerHTML: ui(e, r)
2066
+ }, null, 44, ln)), [[Ye, Y(e) && B.value.dataLabels.show]]) : (E(), x(v, { key: 2 }, [Y(e) && B.value.dataLabels.show ? (E(), x("text", {
2067
+ key: 0,
2068
+ class: "vue-data-ui-datalabel-value",
2069
+ "text-anchor": Zr(J.value[r].middlePoint),
2070
+ x: A(n)({
2071
+ initX: J.value[r].middlePoint.x,
2072
+ initY: J.value[r].middlePoint.y,
2073
+ offset: 42,
2074
+ centerX: V.value.width / 2,
2075
+ centerY: V.value.height / 2
2076
+ }).x,
2077
+ y: A(n)({
2078
+ initX: J.value[r].middlePoint.x,
2079
+ initY: J.value[r].middlePoint.y,
2080
+ offset: 42,
2081
+ centerX: V.value.width / 2,
2082
+ centerY: V.value.height / 2
2083
+ }).y,
2084
+ fill: L.value.style.chart.layout.labels.percentage.color,
2085
+ "font-size": tr.value,
2086
+ style: T({
2087
+ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out`,
2088
+ fontWeight: L.value.style.chart.layout.labels.percentage.bold ? "bold" : "normal"
2089
+ }),
2090
+ onClick: (t) => $(e, r),
2091
+ onMouseenter: (t) => Q({
2092
+ datapoint: e,
2093
+ relativeIndex: r,
2094
+ seriesIndex: e.seriesIndex,
2095
+ show: !0
2096
+ }),
2097
+ onMouseleave: (t) => si({
2098
+ datapoint: e,
2099
+ seriesIndex: e.seriesIndex
2100
+ })
2101
+ }, Ke(xi(e)), 45, un)) : b("", !0), Y(e, !0, 12) && B.value.dataLabels.show && L.value.style.chart.layout.labels.name.show ? (E(), x("text", {
2102
+ key: 1,
2103
+ class: "vue-data-ui-datalabel-name",
2104
+ "text-anchor": Zr(J.value[r].middlePoint),
2105
+ x: A(n)({
2106
+ initX: J.value[r].middlePoint.x,
2107
+ initY: J.value[r].middlePoint.y,
2108
+ offset: 42,
2109
+ centerX: V.value.width / 2,
2110
+ centerY: V.value.height / 2
2111
+ }).x,
2112
+ y: A(n)({
2113
+ initX: J.value[r].middlePoint.x,
2114
+ initY: J.value[r].middlePoint.y,
2115
+ offset: 42,
2116
+ centerX: V.value.width / 2,
2117
+ centerY: V.value.height / 2
2118
+ }).y + P.value * 1.2,
2119
+ fill: L.value.style.chart.layout.labels.name.color,
2120
+ "font-size": P.value,
2121
+ style: T({
2122
+ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out`,
2123
+ fontWeight: L.value.style.chart.layout.labels.name.bold ? "bold" : "normal"
2124
+ }),
2125
+ onClick: (t) => $(e, r),
2126
+ onMouseenter: (t) => Q({
2127
+ datapoint: e,
2128
+ relativeIndex: r,
2129
+ seriesIndex: e.seriesIndex,
2130
+ show: !0
2131
+ }),
2132
+ onMouseleave: (t) => si({
2133
+ datapoint: e,
2134
+ seriesIndex: e.seriesIndex
2135
+ }),
2136
+ innerHTML: A(ee)({
2137
+ content: e.name,
2138
+ fontSize: P.value,
2139
+ fill: L.value.style.chart.layout.labels.name.color,
2140
+ x: A(n)({
2141
+ initX: J.value[r].middlePoint.x,
2142
+ initY: J.value[r].middlePoint.y,
2143
+ offset: 42,
2144
+ centerX: V.value.width / 2,
2145
+ centerY: V.value.height / 2
2146
+ }).x,
2147
+ y: A(n)({
2148
+ initX: J.value[r].middlePoint.x,
2149
+ initY: J.value[r].middlePoint.y,
2150
+ offset: 42,
2151
+ centerX: V.value.width / 2,
2152
+ centerY: V.value.height / 2
2153
+ }).y + P.value * 1.2
2154
+ })
2155
+ }, null, 44, dn)) : b("", !0)], 64))], 64)) : b("", !0)])), B.value.dataLabels.show && L.value.style.chart.comments.show && e.comment ? (E(), x("g", fn, [Y(e) && L.value.type === "classic" ? (E(), x("foreignObject", {
2156
+ key: 0,
2157
+ x: L.value.style.chart.comments.offsetX + (A(g)(e, !0).anchor === "end" ? A(g)(e).x - L.value.style.chart.comments.width : A(g)(e, !0).anchor === "middle" ? A(g)(e).x - L.value.style.chart.comments.width / 2 : A(g)(e).x),
2158
+ y: A(p)(e) + 24 + L.value.style.chart.comments.offsetY,
2159
+ width: L.value.style.chart.comments.width,
2160
+ height: "200",
2161
+ style: {
2162
+ overflow: "visible",
2163
+ "pointer-events": "none"
2164
+ }
2165
+ }, [S("div", null, [k(t.$slots, "plot-comment", { plot: {
2166
+ ...e,
2167
+ textAlign: A(g)(e, !0, 16, !0).anchor,
2168
+ flexAlign: A(g)(e, !0, 16).anchor,
2169
+ isFirstLoad: R.value
2170
+ } }, void 0, !0)])], 8, pn)) : b("", !0), Y(e) && L.value.type === "polar" ? (E(), x("foreignObject", {
2171
+ key: 1,
2172
+ x: L.value.style.chart.comments.offsetX + (Zr(J.value[r].middlePoint) === "end" ? A(n)({
2173
+ initX: J.value[r].middlePoint.x,
2174
+ initY: J.value[r].middlePoint.y,
2175
+ offset: 42,
2176
+ centerX: V.value.width / 2,
2177
+ centerY: V.value.height / 2
2178
+ }).x - L.value.style.chart.comments.width : Zr(J.value[r].middlePoint) === "middle" ? A(n)({
2179
+ initX: J.value[r].middlePoint.x,
2180
+ initY: J.value[r].middlePoint.y,
2181
+ offset: 42,
2182
+ centerX: V.value.width / 2,
2183
+ centerY: V.value.height / 2
2184
+ }).x - L.value.style.chart.comments.width / 2 : A(n)({
2185
+ initX: J.value[r].middlePoint.x,
2186
+ initY: J.value[r].middlePoint.y,
2187
+ offset: 42,
2188
+ centerX: V.value.width / 2,
2189
+ centerY: V.value.height / 2
2190
+ }).x),
2191
+ y: Qr(J.value[r]) + L.value.style.chart.comments.offsetY,
2192
+ width: L.value.style.chart.comments.width,
2193
+ height: "200",
2194
+ style: T({
2195
+ transition: R.value || !L.value.serieToggleAnimation.show ? "none" : `all ${L.value.serieToggleAnimation.durationMs}ms ease-in-out`,
2196
+ overflow: "visible",
2197
+ pointerEvents: "none"
2198
+ })
2199
+ }, [S("div", null, [k(t.$slots, "plot-comment", { plot: {
2200
+ ...e,
2201
+ textAlign: Zr(J.value[r].middlePoint),
2202
+ flexAlign: Zr(J.value[r].middlePoint),
2203
+ isFirstLoad: R.value
2204
+ } }, void 0, !0)])], 12, mn)) : b("", !0)])) : b("", !0)], 10, $t))), 128)),
2205
+ k(t.$slots, "svg", { svg: {
2206
+ ...V.value,
2207
+ datapoints: K.value,
2208
+ isPrintingImg: A(Or) || A(kr) || Yn.value,
2209
+ isPrintingSvg: Xn.value
2210
+ } }, void 0, !0)
2211
+ ], 512)], 46, it)), t.$slots.hint ? (E(), x("div", hn, [k(t.$slots, "hint", w(C({
2212
+ hint: L.value.a11y.translations.keyboardNavigation,
2213
+ isVisible: er.value
2214
+ })), void 0, !0)])) : b("", !0)]),
2215
+ t.$slots.watermark ? (E(), x("div", gn, [k(t.$slots, "watermark", w(C({ isPrinting: A(Or) || A(kr) || Yn.value || Xn.value })), void 0, !0)])) : b("", !0),
2216
+ S("div", { id: `legend-bottom-${F.value}` }, null, 8, _n),
2217
+ Kn.value && (L.value.style.chart.legend.show || t.$slots.legend) ? (E(), Pe(Ne, {
2218
+ key: 6,
2219
+ to: L.value.style.chart.legend.position === "top" ? `#legend-top-${F.value}` : `#legend-bottom-${F.value}`
2220
+ }, [S("div", {
2221
+ ref_key: "chartLegend",
2222
+ ref: Rn
2223
+ }, [k(t.$slots, "legend", { legend: qr.value }, () => [L.value.style.chart.legend.show ? (E(), Pe(Me, {
2224
+ key: `legend_${Gn.value}`,
2225
+ legendSet: qr.value,
2226
+ config: Jr.value,
2227
+ onClickMarker: r[3] ||= ({ i: e }) => Vr(e),
2228
+ isCursorPointer: fr.value
2229
+ }, Fe({
2230
+ item: j(({ legend: e, index: t }) => [S("div", {
2231
+ style: T(`opacity:${W.value.includes(t) ? .5 : 1}`),
2232
+ onClick: (t) => e.segregate()
2233
+ }, Ke(e.display), 13, vn)]),
2234
+ legendToggle: j(() => [qr.value.length > 2 && L.value.style.chart.legend.selectAllToggle.show && !A(mr) ? (E(), Pe(Te, {
2235
+ key: 0,
2236
+ backgroundColor: L.value.style.chart.legend.selectAllToggle.backgroundColor,
2237
+ color: L.value.style.chart.legend.selectAllToggle.color,
2238
+ fontSize: L.value.style.chart.legend.fontSize,
2239
+ checked: W.value.length > 0,
2240
+ isCursorPointer: fr.value,
2241
+ onToggle: Br
2242
+ }, null, 8, [
2243
+ "backgroundColor",
2244
+ "color",
2245
+ "fontSize",
2246
+ "checked",
2247
+ "isCursorPointer"
2248
+ ])) : b("", !0)]),
2249
+ _: 2
2250
+ }, [t.$slots.pattern ? {
2251
+ name: "legend-pattern",
2252
+ fn: j(({ legend: e, index: t }) => [Le(xe, {
2253
+ shape: e.shape,
2254
+ radius: 30,
2255
+ stroke: "none",
2256
+ plot: {
2257
+ x: 30,
2258
+ y: 30
2259
+ },
2260
+ fill: `url(#pattern_${F.value}_${t})`
2261
+ }, null, 8, ["shape", "fill"])]),
2262
+ key: "0"
2263
+ } : void 0]), 1032, [
2264
+ "legendSet",
2265
+ "config",
2266
+ "isCursorPointer"
2267
+ ])) : b("", !0)], !0)], 512)], 8, ["to"])) : b("", !0),
2268
+ t.$slots.source ? (E(), x("div", {
2269
+ key: 7,
2270
+ ref_key: "source",
2271
+ ref: Vn,
2272
+ dir: "auto"
2273
+ }, [k(t.$slots, "source", {}, void 0, !0)], 512)) : b("", !0),
2274
+ t.$slots.hollow ? (E(), x("div", yn, [k(t.$slots, "hollow", w(C({
2275
+ total: Z.value,
2276
+ average: ri.value,
2277
+ dataset: H.value,
2278
+ ...V.value
2279
+ })), void 0, !0)])) : b("", !0),
2280
+ Le(A(xn), {
2281
+ teleportTo: L.value.style.chart.tooltip.teleportTo,
2282
+ show: B.value.showTooltip && cr.value,
2283
+ backgroundColor: L.value.style.chart.tooltip.backgroundColor,
2284
+ color: L.value.style.chart.tooltip.color,
2285
+ fontSize: L.value.style.chart.tooltip.fontSize,
2286
+ borderRadius: L.value.style.chart.tooltip.borderRadius,
2287
+ borderColor: L.value.style.chart.tooltip.borderColor,
2288
+ borderWidth: L.value.style.chart.tooltip.borderWidth,
2289
+ backgroundOpacity: L.value.style.chart.tooltip.backgroundOpacity,
2290
+ position: L.value.style.chart.tooltip.position,
2291
+ offsetY: L.value.style.chart.tooltip.offsetY,
2292
+ parent: N.value,
2293
+ content: lr.value,
2294
+ isCustom: oi.value,
2295
+ isFullscreen: gi.value,
2296
+ smooth: L.value.style.chart.tooltip.smooth,
2297
+ backdropFilter: L.value.style.chart.tooltip.backdropFilter,
2298
+ smoothForce: L.value.style.chart.tooltip.smoothForce,
2299
+ smoothSnapThreshold: L.value.style.chart.tooltip.smoothSnapThrehsold,
2300
+ isA11yMode: $n.value === "keyboard",
2301
+ a11yPosition: Qn.value
2302
+ }, {
2303
+ "tooltip-before": j(() => [k(t.$slots, "tooltip-before", w(C({ ...ai.value })), void 0, !0)]),
2304
+ tooltip: j(() => [k(t.$slots, "tooltip", w(C({ ...ai.value })), void 0, !0)]),
2305
+ "tooltip-after": j(() => [k(t.$slots, "tooltip-after", w(C({ ...ai.value })), void 0, !0)]),
2306
+ _: 3
2307
+ }, 8, [
2308
+ "teleportTo",
2309
+ "show",
2310
+ "backgroundColor",
2311
+ "color",
2312
+ "fontSize",
2313
+ "borderRadius",
2314
+ "borderColor",
2315
+ "borderWidth",
2316
+ "backgroundOpacity",
2317
+ "position",
2318
+ "offsetY",
2319
+ "parent",
2320
+ "content",
2321
+ "isCustom",
2322
+ "isFullscreen",
2323
+ "smooth",
2324
+ "backdropFilter",
2325
+ "smoothForce",
2326
+ "smoothSnapThreshold",
2327
+ "isA11yMode",
2328
+ "a11yPosition"
2329
+ ]),
2330
+ Nn.value && L.value.userOptions.buttons.table ? (E(), Pe(We(ki.value.component), ze({ key: 9 }, ki.value.props, {
2331
+ ref_key: "tableUnit",
2332
+ ref: qn,
2333
+ onClose: Ai
2334
+ }), Fe({
2335
+ content: j(() => [(E(), Pe(A(wn), {
2336
+ key: `table_${Wn.value}`,
2337
+ colNames: hi.value.colNames,
2338
+ head: hi.value.head,
2339
+ body: hi.value.body,
2340
+ config: hi.value.config,
2341
+ title: L.value.table.useDialog ? "" : ki.value.title,
2342
+ withCloseButton: !L.value.table.useDialog,
2343
+ isCursorPointer: fr.value,
2344
+ onClose: Ai
2345
+ }, {
2346
+ th: j(({ th: e }) => [S("div", {
2347
+ innerHTML: e,
2348
+ style: {
2349
+ display: "flex",
2350
+ "align-items": "center"
2351
+ }
2352
+ }, null, 8, bn)]),
2353
+ td: j(({ td: e }) => [Ie(Ke(e.name ? e.name : isNaN(Number(e)) ? e.includes("%") ? e : A(h)(L.value.style.chart.layout.labels.percentage.formatter, e, A(i)({
2354
+ v: e,
2355
+ s: "%",
2356
+ r: L.value.style.chart.layout.labels.percentage.rounding
2357
+ })) : A(h)(L.value.style.chart.layout.labels.value.formatter, e, A(i)({
2358
+ p: L.value.style.chart.layout.labels.dataLabels.prefix,
2359
+ v: e,
2360
+ s: L.value.style.chart.layout.labels.dataLabels.suffix,
2361
+ r: L.value.style.chart.layout.labels.value.rounding
2362
+ }))), 1)]),
2363
+ _: 1
2364
+ }, 8, [
2365
+ "colNames",
2366
+ "head",
2367
+ "body",
2368
+ "config",
2369
+ "title",
2370
+ "withCloseButton",
2371
+ "isCursorPointer"
2372
+ ]))]),
2373
+ _: 2
2374
+ }, [L.value.table.useDialog ? {
2375
+ name: "title",
2376
+ fn: j(() => [Ie(Ke(ki.value.title), 1)]),
2377
+ key: "0"
2378
+ } : void 0, L.value.table.useDialog ? {
2379
+ name: "actions",
2380
+ fn: j(() => [S("button", {
2381
+ tabindex: "0",
2382
+ class: "vue-ui-user-options-button",
2383
+ onClick: r[4] ||= (e) => mi(L.value.userOptions.callbacks.csv),
2384
+ style: T({ cursor: fr.value ? "pointer" : "default" })
2385
+ }, [Le(A(Sn), {
2386
+ name: "fileCsv",
2387
+ stroke: ki.value.props.color
2388
+ }, null, 8, ["stroke"])], 4)]),
2389
+ key: "1"
2390
+ } : void 0]), 1040)) : b("", !0),
2391
+ k(t.$slots, "skeleton", {}, () => [A(mr) ? (E(), Pe(_, { key: 0 })) : b("", !0)], !0)
2392
+ ], 46, et));
2393
+ }
2394
+ }, [["__scopeId", "data-v-c709f311"]]);
2395
+ //#endregion
2396
+ export { $e as n, xn as t };