vue-data-ui 3.20.1 → 3.20.2

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 (322) hide show
  1. package/dist/A11yDataTable-BCbtxMU6.js +45 -0
  2. package/dist/Arrow-D6j6ocXm.js +116 -0
  3. package/dist/BaseDraggableDialog-4hDW-Rj2.js +272 -0
  4. package/dist/BaseIcon-DfLoHNUj.js +502 -0
  5. package/dist/BaseLegendToggle-C_Db-y7s.js +56 -0
  6. package/dist/BaseScanner-Dr2a1Msy.js +27 -0
  7. package/dist/BaseZoomControls-CG7hI_1P.js +111 -0
  8. package/dist/ColorPicker-Bjwxnvfh.js +255 -0
  9. package/dist/DataTable-B--IN22e.js +150 -0
  10. package/dist/Legend-Cz2uQ5gs.js +114 -0
  11. package/dist/NonSvgPenAndPaper-gLNJ1Lmr.js +577 -0
  12. package/dist/PackageVersion-f0MuYk3R.js +11 -0
  13. package/dist/PenAndPaper-DqrClVfb.js +461 -0
  14. package/dist/RecursiveCircles-D6aDPmoe.js +117 -0
  15. package/dist/RecursiveLabels-D9rfID6q.js +56 -0
  16. package/dist/RecursiveLinks-BygcpDiT.js +78 -0
  17. package/dist/Shape-BPCJfphn.js +141 -0
  18. package/dist/Slicer-SHBj0VaV.js +1144 -0
  19. package/dist/SlicerPreview-DdihbUSJ.js +1668 -0
  20. package/dist/SparkTooltip-CfE6yCad.js +93 -0
  21. package/dist/Title-NWp4qB4K.js +87 -0
  22. package/dist/Tooltip-BENq327o.js +312 -0
  23. package/dist/UserOptions-C1NgoGu6.js +1411 -0
  24. package/dist/_plugin-vue_export-helper-B3ysoDQm.js +8 -0
  25. package/dist/canvas-lib-BOP_HS11.js +79 -0
  26. package/dist/components/arrow.js +2 -0
  27. package/dist/components/vue-ui-3d-bar.js +2 -0
  28. package/dist/components/vue-ui-accordion.js +2 -0
  29. package/dist/components/vue-ui-age-pyramid.js +2 -0
  30. package/dist/components/vue-ui-annotator.js +2 -0
  31. package/dist/components/vue-ui-bullet.js +2 -0
  32. package/dist/components/vue-ui-bump.js +2 -0
  33. package/dist/components/vue-ui-candlestick.js +2 -0
  34. package/dist/components/vue-ui-carousel-table.js +2 -0
  35. package/dist/components/vue-ui-chestnut.js +2 -0
  36. package/dist/components/vue-ui-chord.js +2 -0
  37. package/dist/components/vue-ui-circle-pack.js +2 -0
  38. package/dist/components/vue-ui-cursor.js +2 -0
  39. package/dist/components/vue-ui-dag.js +2 -0
  40. package/dist/components/vue-ui-dashboard.js +2 -0
  41. package/dist/components/vue-ui-digits.js +2 -0
  42. package/dist/components/vue-ui-donut-evolution.js +2 -0
  43. package/dist/components/vue-ui-donut.js +2 -0
  44. package/dist/components/vue-ui-dumbbell.js +2 -0
  45. package/dist/components/vue-ui-flow.js +2 -0
  46. package/dist/components/vue-ui-funnel.js +2 -0
  47. package/dist/components/vue-ui-galaxy.js +2 -0
  48. package/dist/components/vue-ui-gauge.js +2 -0
  49. package/dist/components/vue-ui-geo.js +2 -0
  50. package/dist/components/vue-ui-gizmo.js +2 -0
  51. package/dist/components/vue-ui-heatmap.js +2 -0
  52. package/dist/components/vue-ui-history-plot.js +2 -0
  53. package/dist/components/vue-ui-horizontal-bar.js +2 -0
  54. package/dist/components/vue-ui-icon.js +2 -0
  55. package/dist/components/vue-ui-kpi.js +2 -0
  56. package/dist/components/vue-ui-mini-loader.js +2 -0
  57. package/dist/components/vue-ui-molecule.js +2 -0
  58. package/dist/components/vue-ui-mood-radar.js +2 -0
  59. package/dist/components/vue-ui-nested-donuts.js +2 -0
  60. package/dist/components/vue-ui-onion.js +2 -0
  61. package/dist/components/vue-ui-parallel-coordinate-plot.js +2 -0
  62. package/dist/components/vue-ui-pattern-seed.js +2 -0
  63. package/dist/components/vue-ui-pattern.js +2 -0
  64. package/dist/components/vue-ui-quadrant.js +2 -0
  65. package/dist/components/vue-ui-quick-chart.js +2 -0
  66. package/dist/components/vue-ui-radar.js +2 -0
  67. package/dist/components/vue-ui-rating.js +2 -0
  68. package/dist/components/vue-ui-relation-circle.js +2 -0
  69. package/dist/components/vue-ui-ridgeline.js +2 -0
  70. package/dist/components/vue-ui-rings.js +2 -0
  71. package/dist/components/vue-ui-scatter.js +2 -0
  72. package/dist/components/vue-ui-skeleton.js +2 -0
  73. package/dist/components/vue-ui-smiley.js +2 -0
  74. package/dist/components/vue-ui-spark-trend.js +2 -0
  75. package/dist/components/vue-ui-sparkbar.js +2 -0
  76. package/dist/components/vue-ui-sparkgauge.js +2 -0
  77. package/dist/components/vue-ui-sparkhistogram.js +2 -0
  78. package/dist/components/vue-ui-sparkline.js +2 -0
  79. package/dist/components/vue-ui-sparkstackbar.js +2 -0
  80. package/dist/components/vue-ui-stackbar.js +2 -0
  81. package/dist/components/vue-ui-stackline.js +2 -0
  82. package/dist/components/vue-ui-strip-plot.js +2 -0
  83. package/dist/components/vue-ui-table-heatmap.js +2 -0
  84. package/dist/components/vue-ui-table-sparkline.js +2 -0
  85. package/dist/components/vue-ui-table.js +2 -0
  86. package/dist/components/vue-ui-thermometer.js +2 -0
  87. package/dist/components/vue-ui-timer.js +2 -0
  88. package/dist/components/vue-ui-tiremarks.js +2 -0
  89. package/dist/components/vue-ui-treemap.js +2 -0
  90. package/dist/components/vue-ui-vertical-bar.js +2 -0
  91. package/dist/components/vue-ui-waffle.js +2 -0
  92. package/dist/components/vue-ui-wheel.js +2 -0
  93. package/dist/components/vue-ui-word-cloud.js +2 -0
  94. package/dist/components/vue-ui-world.js +2 -0
  95. package/dist/components/vue-ui-xy-canvas.js +2 -0
  96. package/dist/components/vue-ui-xy.js +2 -0
  97. package/dist/dom-to-png-BYtB4BF3.js +237 -0
  98. package/dist/exposedLib-CI8ji8G-.js +19 -0
  99. package/dist/geoProjections-Czak6Jn1.js +145 -0
  100. package/dist/img-1cKsci8e.js +74 -0
  101. package/dist/labelUtils-CUctkYoA.js +19 -0
  102. package/dist/lib-DUeYQsS0.js +1882 -0
  103. package/dist/llms.txt +232 -0
  104. package/dist/patternUtils-CS7hn6at.js +258 -0
  105. package/dist/pdf-D0eZ99cP.js +90 -0
  106. package/dist/rolldown-runtime-Dy4uBu1J.js +11 -0
  107. package/dist/style.css +2 -0
  108. package/dist/types/arrow.d.ts +4 -0
  109. package/dist/types/utils.d.ts +551 -0
  110. package/dist/types/vue-data-ui.d.ts +17190 -0
  111. package/dist/types/vue-ui-3d-bar.d.ts +93 -0
  112. package/dist/types/vue-ui-accordion.d.ts +11 -0
  113. package/dist/types/vue-ui-age-pyramid.d.ts +108 -0
  114. package/dist/types/vue-ui-annotator.d.ts +34 -0
  115. package/dist/types/vue-ui-bullet.d.ts +85 -0
  116. package/dist/types/vue-ui-bump.d.ts +92 -0
  117. package/dist/types/vue-ui-candlestick.d.ts +106 -0
  118. package/dist/types/vue-ui-carousel-table.d.ts +59 -0
  119. package/dist/types/vue-ui-chestnut.d.ts +98 -0
  120. package/dist/types/vue-ui-chord.d.ts +110 -0
  121. package/dist/types/vue-ui-circle-pack.d.ts +126 -0
  122. package/dist/types/vue-ui-cursor.d.ts +9 -0
  123. package/dist/types/vue-ui-dag.d.ts +125 -0
  124. package/dist/types/vue-ui-dashboard.d.ts +68 -0
  125. package/dist/types/vue-ui-digits.d.ts +12 -0
  126. package/dist/types/vue-ui-donut-evolution.d.ts +96 -0
  127. package/dist/types/vue-ui-donut.d.ts +123 -0
  128. package/dist/types/vue-ui-dumbbell.d.ts +94 -0
  129. package/dist/types/vue-ui-flow.d.ts +106 -0
  130. package/dist/types/vue-ui-funnel.d.ts +79 -0
  131. package/dist/types/vue-ui-galaxy.d.ts +114 -0
  132. package/dist/types/vue-ui-gauge.d.ts +89 -0
  133. package/dist/types/vue-ui-geo.d.ts +94 -0
  134. package/dist/types/vue-ui-gizmo.d.ts +22 -0
  135. package/dist/types/vue-ui-heatmap.d.ts +101 -0
  136. package/dist/types/vue-ui-history-plot.d.ts +114 -0
  137. package/dist/types/vue-ui-horizontal-bar.d.ts +116 -0
  138. package/dist/types/vue-ui-icon.d.ts +15 -0
  139. package/dist/types/vue-ui-kpi.d.ts +25 -0
  140. package/dist/types/vue-ui-mini-loader.d.ts +15 -0
  141. package/dist/types/vue-ui-molecule.d.ts +112 -0
  142. package/dist/types/vue-ui-mood-radar.d.ts +92 -0
  143. package/dist/types/vue-ui-nested-donuts.d.ts +111 -0
  144. package/dist/types/vue-ui-onion.d.ts +106 -0
  145. package/dist/types/vue-ui-parallel-coordinate-plot.d.ts +125 -0
  146. package/dist/types/vue-ui-pattern-seed.d.ts +14 -0
  147. package/dist/types/vue-ui-pattern.d.ts +15 -0
  148. package/dist/types/vue-ui-quadrant.d.ts +125 -0
  149. package/dist/types/vue-ui-quick-chart.d.ts +108 -0
  150. package/dist/types/vue-ui-radar.d.ts +116 -0
  151. package/dist/types/vue-ui-rating.d.ts +42 -0
  152. package/dist/types/vue-ui-relation-circle.d.ts +92 -0
  153. package/dist/types/vue-ui-ridgeline.d.ts +106 -0
  154. package/dist/types/vue-ui-rings.d.ts +98 -0
  155. package/dist/types/vue-ui-scatter.d.ts +97 -0
  156. package/dist/types/vue-ui-skeleton.d.ts +11 -0
  157. package/dist/types/vue-ui-smiley.d.ts +28 -0
  158. package/dist/types/vue-ui-spark-trend.d.ts +19 -0
  159. package/dist/types/vue-ui-sparkbar.d.ts +49 -0
  160. package/dist/types/vue-ui-sparkgauge.d.ts +28 -0
  161. package/dist/types/vue-ui-sparkhistogram.d.ts +46 -0
  162. package/dist/types/vue-ui-sparkline.d.ts +59 -0
  163. package/dist/types/vue-ui-sparkstackbar.d.ts +60 -0
  164. package/dist/types/vue-ui-stackbar.d.ts +118 -0
  165. package/dist/types/vue-ui-stackline.d.ts +114 -0
  166. package/dist/types/vue-ui-strip-plot.d.ts +96 -0
  167. package/dist/types/vue-ui-table-heatmap.d.ts +62 -0
  168. package/dist/types/vue-ui-table-sparkline.d.ts +53 -0
  169. package/dist/types/vue-ui-table.d.ts +38 -0
  170. package/dist/types/vue-ui-thermometer.d.ts +70 -0
  171. package/dist/types/vue-ui-timer.d.ts +49 -0
  172. package/dist/types/vue-ui-tiremarks.d.ts +70 -0
  173. package/dist/types/vue-ui-treemap.d.ts +104 -0
  174. package/dist/types/vue-ui-vertical-bar.d.ts +22 -0
  175. package/dist/types/vue-ui-waffle.d.ts +101 -0
  176. package/dist/types/vue-ui-wheel.d.ts +70 -0
  177. package/dist/types/vue-ui-word-cloud.d.ts +97 -0
  178. package/dist/types/vue-ui-world.d.ts +98 -0
  179. package/dist/types/vue-ui-xy-canvas.d.ts +101 -0
  180. package/dist/types/vue-ui-xy.d.ts +146 -0
  181. package/dist/useAutoSizeLabelsInsideViewbox-BIVntRZp.js +50 -0
  182. package/dist/useChartAccessibility-DYqac8yF.js +12 -0
  183. package/dist/useConfig-DAyQk86L.js +7479 -0
  184. package/dist/useFitSvgText-CT3nmlaS.js +63 -0
  185. package/dist/useNestedProp-CNcoy38D.js +10 -0
  186. package/dist/useObjectBindings-BI7hP-BC.js +189 -0
  187. package/dist/usePanZoom-CYU3B4T3.js +157 -0
  188. package/dist/usePrefersMotion-BC-CsqR1.js +15 -0
  189. package/dist/usePrinter-C1Gqt_Sp.js +49 -0
  190. package/dist/useResponsive-BfnK0KxU.js +19 -0
  191. package/dist/useStableElementSize-C7KADDKj.js +77 -0
  192. package/dist/useSvgExport-SVIsDot8.js +755 -0
  193. package/dist/useTableResponsive-B24Uwt2E.js +24 -0
  194. package/dist/useThemeCheck-C43Tcqmk.js +24 -0
  195. package/dist/useTimeLabelCollider-AEcY4Ioe.js +57 -0
  196. package/dist/useTimeLabels-BmBRv27Y.js +272 -0
  197. package/dist/useUserOptionState-DK-_1ddE.js +15 -0
  198. package/dist/utils.js +28 -0
  199. package/dist/vClickOutside-DUrZWttG.js +13 -0
  200. package/dist/vue-data-ui-C3m9eNp0.js +274 -0
  201. package/dist/vue-data-ui.js +76 -0
  202. package/dist/vue-ui-3d-bar-Bfcitq55.js +1757 -0
  203. package/dist/vue-ui-accordion-Dw4MHKVB.js +81 -0
  204. package/dist/vue-ui-age-pyramid-Dgzd45Ol.js +1238 -0
  205. package/dist/vue-ui-annotator-DLPUAKlm.js +2899 -0
  206. package/dist/vue-ui-bullet-DAeyHSHC.js +710 -0
  207. package/dist/vue-ui-bump-DsiXfIFL.js +1249 -0
  208. package/dist/vue-ui-candlestick-BadEBUcF.js +1826 -0
  209. package/dist/vue-ui-carousel-table-_LCF7RFm.js +455 -0
  210. package/dist/vue-ui-chestnut-BTuAvc7L.js +2010 -0
  211. package/dist/vue-ui-chord-CAyRIJlh.js +1391 -0
  212. package/dist/vue-ui-circle-pack-BWzwg8Qb.js +1608 -0
  213. package/dist/vue-ui-cursor-C6t7nAT4.js +283 -0
  214. package/dist/vue-ui-dag-8Puv77-a.js +2909 -0
  215. package/dist/vue-ui-dashboard-CXDvRu27.js +513 -0
  216. package/dist/vue-ui-digits-BlHqILF0.js +209 -0
  217. package/dist/vue-ui-donut-CclzduCs.js +2410 -0
  218. package/dist/vue-ui-donut-evolution-DEfY2Zvy.js +1510 -0
  219. package/dist/vue-ui-dumbbell-BG5C4Hdg.js +1530 -0
  220. package/dist/vue-ui-flow-B73dHBrL.js +1235 -0
  221. package/dist/vue-ui-funnel-Bn3c5lWX.js +777 -0
  222. package/dist/vue-ui-galaxy-eBY55Fue.js +1077 -0
  223. package/dist/vue-ui-gauge-s8pl305B.js +920 -0
  224. package/dist/vue-ui-geo-Ca2ZPVhH.js +1516 -0
  225. package/dist/vue-ui-gizmo-CBNDeAzT.js +225 -0
  226. package/dist/vue-ui-heatmap-V79kNqUi.js +1568 -0
  227. package/dist/vue-ui-history-plot-jiJh8oaM.js +1554 -0
  228. package/dist/vue-ui-horizontal-bar-60b88qqU.js +1681 -0
  229. package/dist/vue-ui-kpi-DnfazUeY.js +96 -0
  230. package/dist/vue-ui-mini-loader-CyqBt2g4.js +125 -0
  231. package/dist/vue-ui-molecule-BeIVS2yp.js +925 -0
  232. package/dist/vue-ui-mood-radar-DHY1ry9I.js +1148 -0
  233. package/dist/vue-ui-nested-donuts-GNR6O-Z_.js +1487 -0
  234. package/dist/vue-ui-onion-DghkeKRu.js +1200 -0
  235. package/dist/vue-ui-parallel-coordinate-plot-DqfRRSnD.js +1416 -0
  236. package/dist/vue-ui-pattern-DKozfnVn.js +154 -0
  237. package/dist/vue-ui-pattern-seed-BB1honLm.js +61 -0
  238. package/dist/vue-ui-quadrant-BBucQ_8r.js +1978 -0
  239. package/dist/vue-ui-quick-chart-DxxGq-5d.js +2469 -0
  240. package/dist/vue-ui-radar-B0gW_Iur.js +1229 -0
  241. package/dist/vue-ui-rating-BG4lf1z8.js +343 -0
  242. package/dist/vue-ui-relation-circle-C-fNOxJM.js +924 -0
  243. package/dist/vue-ui-ridgeline-CzDR20s3.js +1622 -0
  244. package/dist/vue-ui-rings-DNRdTVqV.js +1246 -0
  245. package/dist/vue-ui-scatter-CRgFebuE.js +2413 -0
  246. package/dist/vue-ui-skeleton-iNzRGgRn.js +2556 -0
  247. package/dist/vue-ui-smiley-G89TxRU-.js +356 -0
  248. package/dist/vue-ui-spark-trend-CPgTOFNY.js +438 -0
  249. package/dist/vue-ui-sparkbar-B4C_YxU-.js +393 -0
  250. package/dist/vue-ui-sparkgauge-DDkSKiba.js +255 -0
  251. package/dist/vue-ui-sparkhistogram-qtb6-Th8.js +560 -0
  252. package/dist/vue-ui-sparkline-TTSEEs7R.js +1507 -0
  253. package/dist/vue-ui-sparkstackbar-DXEnV79Y.js +662 -0
  254. package/dist/vue-ui-stackbar-CwFVpEgH.js +2270 -0
  255. package/dist/vue-ui-stackline-Bph0kD43.js +2398 -0
  256. package/dist/vue-ui-strip-plot-D2_WSwTF.js +1340 -0
  257. package/dist/vue-ui-table-BzmQMHxi.js +1338 -0
  258. package/dist/vue-ui-table-heatmap-CCGjbSzQ.js +344 -0
  259. package/dist/vue-ui-table-sparkline-CXNxbqIw.js +707 -0
  260. package/dist/vue-ui-thermometer-Cqw2_Jpi.js +763 -0
  261. package/dist/vue-ui-timer-BHP_5wgz.js +439 -0
  262. package/dist/vue-ui-tiremarks-D8wFTxXl.js +552 -0
  263. package/dist/vue-ui-treemap-DbSebes7.js +1587 -0
  264. package/dist/vue-ui-waffle-CAIBpbY0.js +1362 -0
  265. package/dist/vue-ui-wheel-B5Cyopnp.js +885 -0
  266. package/dist/vue-ui-word-cloud-BaGDKrKL.js +1656 -0
  267. package/dist/vue-ui-world-DLcVBwLg.js +14264 -0
  268. package/dist/vue-ui-xy-CyP5FAo8.js +4578 -0
  269. package/dist/vue-ui-xy-canvas-BUPnRZ3C.js +1787 -0
  270. package/dist/vue_ui_3d_bar-C4R7o-yX.js +185 -0
  271. package/dist/vue_ui_age_pyramid-BY6c-oX_.js +301 -0
  272. package/dist/vue_ui_bullet-ClzdLoOv.js +186 -0
  273. package/dist/vue_ui_bump-Vl-zYAtG.js +201 -0
  274. package/dist/vue_ui_candlestick-J8jmJvxP.js +374 -0
  275. package/dist/vue_ui_chestnut-D2oUhad6.js +305 -0
  276. package/dist/vue_ui_chord-DPfS1Umc.js +275 -0
  277. package/dist/vue_ui_circle_pack-DZC_rdfn.js +172 -0
  278. package/dist/vue_ui_dag-TsJ_azQq.js +258 -0
  279. package/dist/vue_ui_donut-BDGqG07h.js +358 -0
  280. package/dist/vue_ui_donut_evolution-D1yAAIHr.js +717 -0
  281. package/dist/vue_ui_dumbbell-Bfe_jFyi.js +304 -0
  282. package/dist/vue_ui_flow-BewZjjKG.js +238 -0
  283. package/dist/vue_ui_funnel-_Og4EEkO.js +234 -0
  284. package/dist/vue_ui_galaxy-Ig0cc1_h.js +265 -0
  285. package/dist/vue_ui_gauge-Cf1RZc9q.js +178 -0
  286. package/dist/vue_ui_geo-B8TODs-G.js +248 -0
  287. package/dist/vue_ui_heatmap-B2BBBSWG.js +319 -0
  288. package/dist/vue_ui_history_plot-CuN63VEc.js +413 -0
  289. package/dist/vue_ui_horizontal_bar-C4J4QzXf.js +341 -0
  290. package/dist/vue_ui_molecule-CO9L59SF.js +231 -0
  291. package/dist/vue_ui_mood_radar-BA6LAKhk.js +281 -0
  292. package/dist/vue_ui_nested_donuts-B8csIoVO.js +273 -0
  293. package/dist/vue_ui_onion-1FTFFS46.js +293 -0
  294. package/dist/vue_ui_parallel_coordinate_plot-CBiOBira.js +278 -0
  295. package/dist/vue_ui_quadrant-CDSTKTJz.js +428 -0
  296. package/dist/vue_ui_quick_chart-mZBdml3Z.js +139 -0
  297. package/dist/vue_ui_radar-jafTED5j.js +306 -0
  298. package/dist/vue_ui_relation_circle-D0p4mXmv.js +98 -0
  299. package/dist/vue_ui_ridgeline-VM8_mx4J.js +767 -0
  300. package/dist/vue_ui_rings-BVgD2aMn.js +320 -0
  301. package/dist/vue_ui_scatter-I0POnicu.js +479 -0
  302. package/dist/vue_ui_spark_trend-DxVmpkmC.js +82 -0
  303. package/dist/vue_ui_sparkbar-z6qO--Kf.js +64 -0
  304. package/dist/vue_ui_sparkgauge-BX1MS3bA.js +90 -0
  305. package/dist/vue_ui_sparkhistogram-BRgvKUH6.js +123 -0
  306. package/dist/vue_ui_sparkline-auZhap6Y.js +151 -0
  307. package/dist/vue_ui_sparkstackbar-BOjuQnZd.js +175 -0
  308. package/dist/vue_ui_stackbar-COOrQQdK.js +412 -0
  309. package/dist/vue_ui_stackline-DQqKPA9z.js +460 -0
  310. package/dist/vue_ui_strip_plot-CtJe8_gq.js +301 -0
  311. package/dist/vue_ui_table_heatmap-w8vx5k6f.js +80 -0
  312. package/dist/vue_ui_table_sparkline-DAbkUrNz.js +124 -0
  313. package/dist/vue_ui_thermometer-DxgqWKlE.js +123 -0
  314. package/dist/vue_ui_tiremarks-CdEPieWV.js +122 -0
  315. package/dist/vue_ui_treemap-DoEtkRN6.js +328 -0
  316. package/dist/vue_ui_vertical_bar-CP-MKz1j.js +247 -0
  317. package/dist/vue_ui_waffle-DIARFc7g.js +292 -0
  318. package/dist/vue_ui_wheel-DZ_nR--t.js +133 -0
  319. package/dist/vue_ui_word_cloud-C-qIMNLu.js +254 -0
  320. package/dist/vue_ui_xy-BLUkWEAm.js +482 -0
  321. package/dist/vue_ui_xy_canvas-Cb6dg3eK.js +408 -0
  322. package/package.json +120 -120
@@ -0,0 +1,1391 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { Bt as t, Ct as n, Et as r, G as i, H as a, J as o, Rt as s, S as c, Ut as ee, V as l, X as u, i as te, ot as ne, r as re, t as ie, x as ae, y as oe } from "./lib-DUeYQsS0.js";
3
+ import { t as se } from "./useConfig-DAyQk86L.js";
4
+ import { t as ce } from "./usePrinter-C1Gqt_Sp.js";
5
+ import { n as le, t as ue } from "./BaseScanner-Dr2a1Msy.js";
6
+ import { t as de } from "./useSvgExport-SVIsDot8.js";
7
+ import { t as fe } from "./useNestedProp-CNcoy38D.js";
8
+ import { t as pe } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as me } from "./img-1cKsci8e.js";
10
+ import { n as he } from "./Title-NWp4qB4K.js";
11
+ import { t as ge } from "./Shape-BPCJfphn.js";
12
+ import { t as _e } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { c as ve } from "./canvas-lib-BOP_HS11.js";
14
+ import { t as ye } from "./useResponsive-BfnK0KxU.js";
15
+ import { t as be } from "./A11yDataTable-BCbtxMU6.js";
16
+ import { t as xe } from "./useUserOptionState-DK-_1ddE.js";
17
+ import { t as Se } from "./useChartAccessibility-DYqac8yF.js";
18
+ import { t as Ce } from "./Legend-Cz2uQ5gs.js";
19
+ import { t as we } from "./vue_ui_chord-DPfS1Umc.js";
20
+ import { Fragment as d, Teleport as Te, computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createSlots as Ee, createTextVNode as De, createVNode as Oe, defineAsyncComponent as _, guardReactiveProps as v, mergeProps as ke, nextTick as Ae, normalizeClass as y, normalizeProps as b, normalizeStyle as x, onBeforeUnmount as je, onMounted as Me, openBlock as S, ref as C, renderList as w, renderSlot as T, resolveDynamicComponent as Ne, shallowRef as Pe, toDisplayString as E, toRefs as Fe, unref as D, useCssVars as Ie, watch as Le, withCtx as O, withModifiers as Re } from "vue";
21
+ //#region src/components/vue-ui-chord.vue
22
+ var ze = /* @__PURE__ */ e({ default: () => _t }), Be = ["id"], Ve = ["id"], He = ["id"], Ue = [
23
+ "xmlns",
24
+ "viewBox",
25
+ "aria-describedby"
26
+ ], We = ["width", "height"], Ge = { key: 1 }, Ke = ["id", "d"], qe = { key: 2 }, Je = ["transform"], Ye = [
27
+ "d",
28
+ "fill",
29
+ "stroke",
30
+ "stroke-width",
31
+ "onMouseenter",
32
+ "onMouseleave",
33
+ "onClick"
34
+ ], Xe = [
35
+ "d",
36
+ "fill",
37
+ "stroke",
38
+ "stroke-width"
39
+ ], Ze = ["d", "fill"], Qe = [
40
+ "d",
41
+ "fill",
42
+ "stroke",
43
+ "stroke-width",
44
+ "onMouseenter",
45
+ "onClick",
46
+ "onMouseleave"
47
+ ], $e = [
48
+ "d",
49
+ "fill",
50
+ "stroke",
51
+ "stroke-width"
52
+ ], et = [
53
+ "d",
54
+ "fill",
55
+ "stroke",
56
+ "stroke-width"
57
+ ], tt = [
58
+ "d",
59
+ "fill",
60
+ "stroke",
61
+ "stroke-width"
62
+ ], nt = { key: 0 }, rt = [
63
+ "x1",
64
+ "y1",
65
+ "x2",
66
+ "y2",
67
+ "stroke",
68
+ "stroke-width"
69
+ ], it = [
70
+ "x1",
71
+ "y1",
72
+ "x2",
73
+ "y2",
74
+ "stroke",
75
+ "stroke-width"
76
+ ], at = [
77
+ "cx",
78
+ "cy",
79
+ "r",
80
+ "stroke",
81
+ "stroke-width",
82
+ "fill"
83
+ ], ot = [
84
+ "transform",
85
+ "fill",
86
+ "text-anchor",
87
+ "font-size",
88
+ "font-weight"
89
+ ], st = { key: 1 }, ct = [
90
+ "font-size",
91
+ "font-weight",
92
+ "fill"
93
+ ], lt = ["href"], ut = [
94
+ "transform",
95
+ "text-anchor",
96
+ "font-size",
97
+ "font-weight",
98
+ "fill",
99
+ "innerHTML"
100
+ ], dt = {
101
+ key: 5,
102
+ style: {
103
+ position: "absolute",
104
+ top: "100%",
105
+ left: "0",
106
+ width: "100%"
107
+ },
108
+ "data-dom-to-png-ignore": "",
109
+ "aria-hidden": "true"
110
+ }, ft = {
111
+ key: 6,
112
+ class: "vue-data-ui-watermark"
113
+ }, pt = ["id"], mt = ["onClick"], ht = {
114
+ key: 9,
115
+ "data-dom-to-png-ignore": "",
116
+ class: "reset-wrapper"
117
+ }, gt = { style: {
118
+ "text-align": "right",
119
+ width: "100%"
120
+ } }, _t = /* @__PURE__ */ _e({
121
+ __name: "vue-ui-chord",
122
+ props: {
123
+ dataset: {
124
+ type: Object,
125
+ default() {
126
+ return {};
127
+ }
128
+ },
129
+ config: {
130
+ type: Object,
131
+ default() {
132
+ return {};
133
+ }
134
+ }
135
+ },
136
+ emits: [
137
+ "selectLegend",
138
+ "selectGroup",
139
+ "selectRibbon",
140
+ "copyAlt"
141
+ ],
142
+ setup(e, { expose: _e, emit: ze }) {
143
+ Ie((e) => ({ v73ba9455: e.slicerColor }));
144
+ let _t = _(() => import("./vue-ui-accordion-Dw4MHKVB.js").then((e) => e.n)), vt = _(() => import("./BaseIcon-DfLoHNUj.js").then((e) => e.n)), yt = _(() => import("./DataTable-B--IN22e.js")), bt = _(() => import("./PackageVersion-f0MuYk3R.js").then((e) => e.t)), xt = _(() => import("./PenAndPaper-DqrClVfb.js").then((e) => e.t)), St = _(() => import("./UserOptions-C1NgoGu6.js").then((e) => e.n)), Ct = _(() => import("./BaseDraggableDialog-4hDW-Rj2.js").then((e) => e.n)), { vue_ui_chord: wt } = se(), { isThemeValid: Tt, warnInvalidTheme: Et } = pe(), k = e, Dt = ze, A = C(!!k.dataset && Object.hasOwn(k.dataset, "matrix")), j = C(a()), M = C(null), N = C(null), P = C(null), Ot = C(0), F = C(null), kt = C(null), At = C(null), jt = C(null), Mt = C(null), Nt = C(0), Pt = C(0), Ft = C(0), I = C(!1), L = Pe(null), R = Pe(null), It = C(!1), Lt = C(null), Rt = C(null), zt = C(!1), Bt = C(!1), z = C("group"), B = C(null), Vt = C(!1), V = C(Qt()), H = f(() => V.value.userOptions.useCursorPointer), Ht = f(() => t({
145
+ defaultConfig: {
146
+ useCssAnimation: !1,
147
+ userOptions: { show: !1 },
148
+ table: { show: !1 },
149
+ style: { chart: {
150
+ backgroundColor: "#99999930",
151
+ legend: { backgroundColor: "transparent" },
152
+ arcs: {
153
+ stroke: "#6A6A6A",
154
+ labels: { show: !1 }
155
+ },
156
+ ribbons: {
157
+ stroke: "#6A6A6A",
158
+ underlayerOpacity: 0,
159
+ labels: { show: !1 }
160
+ }
161
+ } }
162
+ },
163
+ userConfig: V.value.skeletonConfig ?? {}
164
+ })), { loading: Ut, FINAL_DATASET: U, manualLoading: Wt } = le({
165
+ ...Fe(k),
166
+ FINAL_CONFIG: V,
167
+ prepareConfig: Qt,
168
+ callback: () => {
169
+ Promise.resolve().then(async () => {
170
+ await Ae(), G.value.showTable = V.value.table.show;
171
+ });
172
+ },
173
+ skeletonDataset: k.config?.skeletonDataset ?? {
174
+ matrix: [
175
+ [
176
+ 12e3,
177
+ 6e3,
178
+ 9e3,
179
+ 3e3
180
+ ],
181
+ [
182
+ 2e3,
183
+ 1e4,
184
+ 2e3,
185
+ 6001
186
+ ],
187
+ [
188
+ 8e3,
189
+ 1600,
190
+ 8e3,
191
+ 8001
192
+ ],
193
+ [
194
+ 1e3,
195
+ 1e3,
196
+ 1e3,
197
+ 7001
198
+ ]
199
+ ],
200
+ labels: [],
201
+ colors: [
202
+ "#DBDBDB",
203
+ "#C4C4C4",
204
+ "#ADADAD",
205
+ "#969696"
206
+ ]
207
+ },
208
+ skeletonConfig: t({
209
+ defaultConfig: V.value,
210
+ userConfig: Ht.value
211
+ })
212
+ }), { userOptionsVisible: Gt, setUserOptionsVisibility: Kt, keepUserOptionState: qt } = xe({ config: V.value }), { svgRef: W } = Se({ config: V.value.style.chart.title }), { isPrinting: Jt, isImaging: Yt, generatePdf: Xt, generateImage: Zt } = ce({
213
+ elementId: `chord_${j.value}`,
214
+ fileName: V.value.style.chart.title.text || "vue-ui-chord",
215
+ options: V.value.userOptions.print
216
+ }), G = C({ showTable: V.value.table.show });
217
+ function Qt() {
218
+ let e = fe({
219
+ userConfig: k.config,
220
+ defaultConfig: wt
221
+ }), t = e.theme;
222
+ if (!t) return e;
223
+ if (!Tt.value(e)) return Et(e), e;
224
+ let n = fe({
225
+ userConfig: we[t] || k.config,
226
+ defaultConfig: e
227
+ }), i = fe({
228
+ userConfig: k.config,
229
+ defaultConfig: n
230
+ });
231
+ return {
232
+ ...i,
233
+ customPalette: i.customPalette.length ? i.customPalette : s[t] || r
234
+ };
235
+ }
236
+ Le(() => k.config, (e) => {
237
+ Ut.value || (V.value = Qt()), Gt.value = !V.value.userOptions.showOnChartHover, tn(), Nt.value += 1, Pt.value += 1, Ft.value += 1, X.value = V.value.initialRotation, G.value.showTable = V.value.table.show;
238
+ }, { deep: !0 });
239
+ let $t = f(() => V.value.debug);
240
+ Le(() => k.dataset, () => {
241
+ en(), tn(), Nt.value += 1, Pt.value += 1, Ft.value += 1;
242
+ });
243
+ function en() {
244
+ if (n(k.dataset)) {
245
+ u({
246
+ componentName: "VueUiChord",
247
+ type: "dataset",
248
+ debug: $t.value
249
+ }), A.value = !1, Wt.value = !0;
250
+ return;
251
+ }
252
+ let e = ne({
253
+ datasetObject: k.dataset,
254
+ requiredAttributes: ["matrix"]
255
+ });
256
+ if (e.length) {
257
+ e.forEach((e) => {
258
+ u({
259
+ componentName: "VueUiChord",
260
+ type: "datasetAttribute",
261
+ property: e,
262
+ debug: $t.value
263
+ });
264
+ }), A.value = !1, Wt.value = !0;
265
+ return;
266
+ }
267
+ let t = k.dataset.matrix;
268
+ if (!Array.isArray(t) || t.length < 2) {
269
+ console.warn("VueUiChord: dataset.matrix requires a minimum of 2 datapoints, for example:\n \nmatrix:[\n [1, 1],\n [1, 1]\n]"), A.value = !1, Wt.value = !0;
270
+ return;
271
+ }
272
+ let r = t.length, i = t.findIndex((e) => !Array.isArray(e) || e.length !== r);
273
+ if (i !== -1) {
274
+ console.warn(`VueUiChord - Invalid matrix: dataset.matrix at index ${i} has ${Array.isArray(t[i]) ? t[i].length : "NaN"} elements instead of the required ${r}
275
+
276
+ dataset.matrix[${i}] = [${Array.isArray(t[i]) ? t[i].toString() : "invalid"}]`), A.value = !1, Wt.value = !0;
277
+ return;
278
+ }
279
+ A.value = !0, Wt.value = !1;
280
+ }
281
+ function tn() {
282
+ if (en(), V.value.responsive) {
283
+ let e = ve(() => {
284
+ let { width: e, height: t, heightNoTitle: n, heightSource: r, heightTitle: i, heightLegend: a } = ye({
285
+ chart: F.value,
286
+ title: V.value.style.chart.title.text ? kt.value : null,
287
+ legend: V.value.style.chart.legend.show ? At.value : null,
288
+ source: jt.value,
289
+ noTitle: Mt.value
290
+ }), o = i + a + r + n;
291
+ e < t ? F.value.style.width = "100%" : (F.value.style.height = "100%", W.value.style.height = `calc(100% - ${o}px)`);
292
+ }, 100);
293
+ L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect()), L.value = new ResizeObserver(e), R.value = F.value.parentNode, L.value.observe(R.value), e();
294
+ }
295
+ rn.value = setTimeout(() => {
296
+ I.value = !0;
297
+ }, 500);
298
+ }
299
+ function nn() {
300
+ if (!U.value || !Object.hasOwn(U.value, "matrix") || U.value.matrix.length < 2) {
301
+ console.warn("VueUiChord: dataset.matrix requires a minimum of 2 datapoints, for example:\n\nmatrix:[\n [1, 1],\n [1, 1]\n]"), A.value = !1;
302
+ return;
303
+ }
304
+ U.value.matrix.forEach((e, t) => {
305
+ e.length !== U.value.matrix.length && (console.warn(`VueUiChord - Invalid matrix: dataset.matrix at index ${t} has ${e.length} elements instead of the required ${U.value.matrix.length}\n\ndataset.matrix[${t}] = [${e.toString()}] has a length of ${e.length} but should have the same length as the matrix itself (${U.value.matrix.length})`), A.value = !1);
306
+ });
307
+ }
308
+ let rn = C(null);
309
+ Me(() => {
310
+ It.value = !0, tn();
311
+ });
312
+ let K = C({
313
+ height: 600,
314
+ width: 600
315
+ }), an = f(() => V.value.userOptions.show && !V.value.style.chart.title.text), on = f(() => ae(V.value.customPalette)), q = f(() => ({
316
+ inner: K.value.width * .3 * V.value.style.chart.arcs.innerRadiusRatio,
317
+ outer: K.value.width * .34 * V.value.style.chart.arcs.outerRadiusRatio
318
+ })), sn = f(() => V.value.style.chart.arcs.padAngle / 100), J = f(() => ({
319
+ matrix: U.value.matrix ?? [[0]],
320
+ labels: U.value.labels ?? [""],
321
+ colors: U.value.colors && Array.isArray(U.value.colors) && U.value.colors.length ? U.value.colors.map((e) => oe(e)) : U.value.matrix.map((e, t) => on.value[t] || r[t] || r[t % r.length])
322
+ }));
323
+ function cn(e, t) {
324
+ let n = e.length, r = q.value.inner, i = Array(n).fill(0), o = 0;
325
+ for (let t = 0; t < n; t += 1) for (let r = 0; r < n; r += 1) i[t] += e[t][r], o += e[t][r];
326
+ let s = (2 * Math.PI - t * n) / o, c = [], ee = 0;
327
+ for (let e = 0; e < n; e += 1) {
328
+ let n = ee, r = n + i[e] * s;
329
+ c.push({
330
+ index: e,
331
+ pattern: `pattern_${j.value}_${e}`,
332
+ startAngle: n,
333
+ endAngle: r,
334
+ name: J.value.labels[e],
335
+ id: a(),
336
+ color: J.value.colors[e],
337
+ proportion: i[e] / o
338
+ }), ee = r + t;
339
+ }
340
+ let l = [];
341
+ for (let t = 0; t < n; t += 1) {
342
+ let n = e[t].map((e, t) => ({
343
+ j: t,
344
+ v: e
345
+ }));
346
+ n.sort((e, t) => t.v - e.v);
347
+ let i = c[t].startAngle;
348
+ for (let { j: e, v: a } of n) {
349
+ let n = i, o = n + a * s;
350
+ l.push({
351
+ index: t,
352
+ subIndex: e,
353
+ pattern: `pattern_${j.value}_${t}`,
354
+ startAngle: n,
355
+ endAngle: o,
356
+ value: a,
357
+ groupName: J.value.labels[t],
358
+ groupId: c[t].id,
359
+ groupColor: J.value.colors[t],
360
+ midAngle: (n + o) / 2,
361
+ midBaseX: Math.cos((n + o) / 2 - Math.PI / 2) * r,
362
+ midBaseY: Math.sin((n + o) / 2 - Math.PI / 2) * r
363
+ }), i = o;
364
+ }
365
+ }
366
+ let u = [];
367
+ for (let e of l) {
368
+ let t = l.find((t) => t.index === e.subIndex && t.subIndex === e.index);
369
+ u.push({
370
+ source: e,
371
+ target: t,
372
+ id: a()
373
+ });
374
+ }
375
+ return {
376
+ groups: c,
377
+ chords: u
378
+ };
379
+ }
380
+ let Y = f(() => {
381
+ let e = cn(J.value.matrix, sn.value);
382
+ return nn(), e.chords.sort((e, t) => Math.max(t.source.value, t.target.value) - Math.max(e.source.value, e.target.value)), e;
383
+ }), ln = f(() => {
384
+ let e = q.value.outer + V.value.style.chart.ribbons.labels.offset + 12, t = V.value.style.chart.ribbons.labels.fontSize * .6, n = [];
385
+ if (N.value) {
386
+ let r = N.value;
387
+ if (r.source.value) {
388
+ let i = String(r.source.value);
389
+ n.push({
390
+ id: r.id + "-src",
391
+ theta: r.source.midAngle,
392
+ w: i.length * t / e,
393
+ midBaseX: r.source.midBaseX,
394
+ midBaseY: r.source.midBaseY,
395
+ groupColor: r.source.groupColor,
396
+ value: r.source.value
397
+ });
398
+ }
399
+ if (r.target && r.target.value && r.target.value !== r.source.value) {
400
+ let i = String(r.target.value);
401
+ n.push({
402
+ id: r.id + "-tgt",
403
+ theta: r.target.midAngle,
404
+ w: i.length * t / e,
405
+ midBaseX: r.target.midBaseX,
406
+ midBaseY: r.target.midBaseY,
407
+ groupColor: r.target.groupColor,
408
+ value: r.target.value
409
+ });
410
+ }
411
+ return n;
412
+ }
413
+ function r(r) {
414
+ Y.value.chords.filter((e) => e.source.groupId === r && e.source.value).forEach((r) => {
415
+ {
416
+ let i = String(r.source.value);
417
+ n.push({
418
+ id: r.id + "-src",
419
+ theta: r.source.midAngle,
420
+ w: i.length * t / e,
421
+ midBaseX: r.source.midBaseX,
422
+ midBaseY: r.source.midBaseY,
423
+ groupColor: r.source.groupColor,
424
+ value: r.source.value
425
+ });
426
+ }
427
+ if (r.target && r.target.value && r.target.value !== r.source.value) {
428
+ let i = String(r.target.value);
429
+ n.push({
430
+ id: r.id + "-tgt",
431
+ theta: r.target.midAngle,
432
+ w: i.length * t / e,
433
+ midBaseX: r.target.midBaseX,
434
+ midBaseY: r.target.midBaseY,
435
+ groupColor: r.target.groupColor,
436
+ value: r.target.value
437
+ });
438
+ }
439
+ });
440
+ }
441
+ return P.value && r(P.value), M.value && r(M.value.id), n;
442
+ }), un = f(() => {
443
+ let e = ln.value.map((e) => ({ ...e })).sort((e, t) => e.theta - t.theta), t = V.value.style.chart.ribbons.labels.minSeparationDeg * Math.PI / 180, n = !0, r = 0;
444
+ for (; n && r++ < 10;) {
445
+ n = !1;
446
+ for (let r = 1; r < e.length; r += 1) {
447
+ let i = e[r - 1], a = e[r], o = i.theta + i.w + t;
448
+ a.theta < o && (a.theta = o, n = !0);
449
+ }
450
+ let r = e[0], i = e[e.length - 1], a = i.theta + i.w + t - 2 * Math.PI;
451
+ r.theta < a && (r.theta = a, n = !0);
452
+ }
453
+ return e;
454
+ });
455
+ function dn(e, t, n, r) {
456
+ let i = e - Math.PI / 2, a = t - Math.PI / 2, o = Math.cos(i) * n, s = Math.sin(i) * n, c = Math.cos(a) * n, ee = Math.sin(a) * n, l = Math.cos(a) * r, u = Math.sin(a) * r, te = Math.cos(i) * r, ne = Math.sin(i) * r, re = +(t - e > Math.PI);
457
+ return `M${o},${s} A${n},${n} 0 ${re} 1 ${c},${ee} L${l},${u} A${r},${r} 0 ${re} 0 ${te},${ne} Z`;
458
+ }
459
+ function fn(e, t) {
460
+ let n = q.value.inner, r = e.startAngle - Math.PI / 2, i = e.endAngle - Math.PI / 2, a = t.startAngle - Math.PI / 2, o = t.endAngle - Math.PI / 2, s = Math.cos(r) * n, c = Math.sin(r) * n, ee = Math.cos(i) * n, l = Math.sin(i) * n, u = Math.cos(a) * n, te = Math.sin(a) * n, ne = Math.cos(o) * n, re = Math.sin(o) * n;
461
+ return `M${s},${c}A${n},${n} 0 ${+(e.endAngle - e.startAngle > Math.PI)} 1 ${ee},${l}Q0,0 ${u},${te}A${n},${n} 0 ${+(t.endAngle - t.startAngle > Math.PI)} 1 ${ne},${re}Q0,0 ${s},${c}Z`;
462
+ }
463
+ let pn = f(() => X.value * Math.PI / 180);
464
+ function mn(e) {
465
+ return (e.startAngle + e.endAngle) / 2;
466
+ }
467
+ function hn(e) {
468
+ return ((mn(e) + pn.value) % (2 * Math.PI) + 2 * Math.PI) % (2 * Math.PI);
469
+ }
470
+ function gn(e) {
471
+ let t = e + pn.value;
472
+ return t = (t % (2 * Math.PI) + 2 * Math.PI) % (2 * Math.PI), t > Math.PI ? "end" : "start";
473
+ }
474
+ function _n(e) {
475
+ let t = e - Math.PI / 2;
476
+ return `translate(${Math.cos(t) * (q.value.outer + V.value.style.chart.arcs.labels.offset + 24)},${Math.sin(t) * (q.value.outer + V.value.style.chart.arcs.labels.offset + 24)})`;
477
+ }
478
+ function vn(e, t, n) {
479
+ let r = e - Math.PI / 2, i = t - Math.PI / 2, a = Math.cos(r) * n, o = Math.sin(r) * n, s = Math.cos(i) * n, c = Math.sin(i) * n;
480
+ return `M${a},${o} A${n},${n} 0 ${+(t - e > Math.PI)} 1 ${s},${c}`;
481
+ }
482
+ let X = C(V.value.initialRotation), yn = C(!1), bn = 0, xn = 0;
483
+ function Sn(e) {
484
+ let t = W.value.getBoundingClientRect(), n = t.left + t.width / 2, r = t.top + t.height / 2, i = e.clientX ?? e.touches[0].clientX, a = e.clientY ?? e.touches[0].clientY;
485
+ return Math.atan2(a - r, i - n);
486
+ }
487
+ function Cn(e) {
488
+ !V.value.enableRotation || Ln.value || (e.preventDefault(), yn.value = !0, bn = X.value, xn = Sn(e));
489
+ }
490
+ function wn(e) {
491
+ if (!yn.value) return;
492
+ let t = Sn(e);
493
+ X.value = bn + (t - xn) * 180 / Math.PI;
494
+ }
495
+ function Tn() {
496
+ yn.value = !1;
497
+ }
498
+ function En(e) {
499
+ return te(V.value.style.chart.ribbons.labels.formatter, e, i({
500
+ p: V.value.style.chart.ribbons.labels.prefix,
501
+ v: e,
502
+ s: V.value.style.chart.ribbons.labels.suffix,
503
+ r: V.value.style.chart.ribbons.labels.rounding
504
+ }));
505
+ }
506
+ Me(() => {
507
+ window.addEventListener("mousemove", wn), window.addEventListener("mouseup", Tn), window.addEventListener("touchmove", wn, { passive: !1 }), window.addEventListener("touchend", Tn);
508
+ }), je(() => {
509
+ window.removeEventListener("mousemove", wn), window.removeEventListener("mouseup", Tn), window.removeEventListener("touchmove", wn), window.removeEventListener("touchend", Tn), clearTimeout(rn.value), L.value && (R.value && L.value.unobserve(R.value), L.value.disconnect());
510
+ });
511
+ let Dn = C(!1);
512
+ function On(e) {
513
+ Dn.value = e, Ot.value += 1;
514
+ }
515
+ function kn(e, t) {
516
+ V.value.events.datapointEnter && V.value.events.datapointEnter({
517
+ datapoint: e,
518
+ seriesIndex: t
519
+ }), !P.value && (M.value = e);
520
+ }
521
+ function An(e, t) {
522
+ M.value = null, V.value.events.datapointLeave && V.value.events.datapointLeave({
523
+ datapoint: e,
524
+ seriesIndex: t
525
+ });
526
+ }
527
+ function jn(e, t) {
528
+ Dt("selectGroup", e), V.value.events.datapointClick && V.value.events.datapointClick({
529
+ datapoint: e,
530
+ seriesIndex: t
531
+ });
532
+ }
533
+ function Mn(e, t) {
534
+ V.value.events.datapointEnter && V.value.events.datapointEnter({
535
+ datapoint: e,
536
+ seriesIndex: t
537
+ }), !P.value && (N.value = e);
538
+ }
539
+ function Nn(e, t) {
540
+ N.value = null, V.value.events.datapointLeave && V.value.events.datapointLeave({
541
+ datapoint: e,
542
+ seriesIndex: t
543
+ });
544
+ }
545
+ function Pn(e, t) {
546
+ Dt("selectRibbon", e), V.value.events.datapointClick && V.value.events.datapointClick({
547
+ datapoint: e,
548
+ seriesIndex: t
549
+ });
550
+ }
551
+ function Fn(e) {
552
+ return !P.value && !M.value && !N.value ? .8 : (P.value ? P.value === e.source.groupId : M.value ? M.value.id === e.source.groupId : N.value?.id === e.id) ? 1 : .1;
553
+ }
554
+ function In(e) {
555
+ return !P.value && !M.value && !N.value || (P.value ? P.value === e.id : M.value ? M.value.id === e.id : [N.value?.source.groupId, N.value?.target.groupId].includes(e.id)) ? 1 : .3;
556
+ }
557
+ let Ln = C(!1);
558
+ function Rn() {
559
+ Ln.value = !Ln.value;
560
+ }
561
+ function zn() {
562
+ G.value.showTable = !G.value.showTable;
563
+ }
564
+ function Bn() {
565
+ return Y.value;
566
+ }
567
+ let Z = C(null);
568
+ function Vn() {
569
+ let e = V.value.initialRotation;
570
+ Z.value !== null && cancelAnimationFrame(Z.value);
571
+ let t = () => {
572
+ X.value += (e - X.value) * .05, Math.abs(X.value - e) < .1 ? (X.value = e, Z.value = null) : Z.value = requestAnimationFrame(t);
573
+ };
574
+ Z.value = requestAnimationFrame(t);
575
+ }
576
+ je(() => {
577
+ Z.value !== null && cancelAnimationFrame(Z.value);
578
+ });
579
+ function Hn(e) {
580
+ e === P.value ? (P.value = null, Dt("selectLegend", null)) : (P.value = e, Dt("selectLegend", Y.value.groups.find((t) => t.id === e)));
581
+ }
582
+ let Un = f(() => Y.value.groups.map((e, t) => ({
583
+ name: e.name,
584
+ color: e.color,
585
+ shape: "circle",
586
+ patternIndex: t,
587
+ pattern: `pattern_${j.value}_${t}`,
588
+ id: e.id,
589
+ select: () => Hn(e.id),
590
+ opacity: P.value ? P.value === e.id ? 1 : .3 : 1
591
+ }))), Wn = f(() => ({
592
+ cy: "chord-div-legend",
593
+ backgroundColor: V.value.style.chart.legend.backgroundColor,
594
+ color: V.value.style.chart.legend.color,
595
+ fontSize: V.value.style.chart.legend.fontSize,
596
+ paddingBottom: 12,
597
+ fontWeight: V.value.style.chart.legend.bold ? "bold" : ""
598
+ })), Q = f(() => ({
599
+ head: Y.value.groups.map((e, t) => ({
600
+ name: e.name || t,
601
+ color: e.color
602
+ })),
603
+ body: J.value.matrix
604
+ })), Gn = f(() => {
605
+ let e = [{
606
+ name: "",
607
+ color: null
608
+ }, ...Q.value.head];
609
+ return {
610
+ colNames: e,
611
+ head: e,
612
+ body: Q.value.body.map((e, t) => [Q.value.head[t], ...Q.value.body[t]]),
613
+ config: {
614
+ th: {
615
+ backgroundColor: V.value.table.th.backgroundColor,
616
+ color: V.value.table.th.color,
617
+ outline: V.value.table.th.outline
618
+ },
619
+ td: {
620
+ backgroundColor: V.value.table.td.backgroundColor,
621
+ color: V.value.table.td.color,
622
+ outline: V.value.table.td.outline
623
+ },
624
+ breakpoint: V.value.table.responsiveBreakpoint
625
+ }
626
+ };
627
+ });
628
+ function Kn(e = null) {
629
+ Ae(() => {
630
+ let t = J.value.matrix.map((e, t) => [[J.value.labels[t] || t], e]), n = c([
631
+ [V.value.style.chart.title.text],
632
+ [V.value.style.chart.title.subtitle.text],
633
+ [[""], ...J.value.labels.map((e, t) => [e || t])]
634
+ ].concat(t));
635
+ e ? e(n) : o({
636
+ csvContent: n,
637
+ title: V.value.style.chart.title.text || "vue-ui-chord"
638
+ });
639
+ });
640
+ }
641
+ async function qn({ scale: e = 2 } = {}) {
642
+ if (!F.value) return;
643
+ let { width: t, height: n } = F.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await me({
644
+ domElement: F.value,
645
+ base64: !0,
646
+ img: !0,
647
+ scale: e
648
+ });
649
+ return {
650
+ imageUri: i,
651
+ base64: a,
652
+ title: V.value.style.chart.title.text,
653
+ width: t,
654
+ height: n,
655
+ aspectRatio: r
656
+ };
657
+ }
658
+ function Jn(e, t) {
659
+ return `${J.value.labels[t]}${V.value.style.chart.arcs.labels.showPercentage ? i({
660
+ p: " (",
661
+ v: isNaN(e.proportion) ? 0 : e.proportion * 100,
662
+ s: "%)",
663
+ r: V.value.style.chart.arcs.labels.roundingPercentage
664
+ }) : ""}`;
665
+ }
666
+ let Yn = f(() => {
667
+ let e = V.value.table.useDialog && !V.value.table.show, t = G.value.showTable;
668
+ return {
669
+ component: e ? Ct : _t,
670
+ title: `${V.value.style.chart.title.text}${V.value.style.chart.title.subtitle.text ? `: ${V.value.style.chart.title.subtitle.text}` : ""}`,
671
+ props: e ? {
672
+ backgroundColor: V.value.table.th.backgroundColor,
673
+ color: V.value.table.th.color,
674
+ headerColor: V.value.table.th.color,
675
+ headerBg: V.value.table.th.backgroundColor,
676
+ isFullscreen: Dn.value,
677
+ fullscreenParent: F.value,
678
+ forcedWidth: Math.min(800, window.innerWidth * .8),
679
+ isCursorPointer: H.value
680
+ } : {
681
+ hideDetails: !0,
682
+ config: {
683
+ open: t,
684
+ maxHeight: 1e4,
685
+ body: {
686
+ backgroundColor: V.value.style.chart.backgroundColor,
687
+ color: V.value.style.chart.color
688
+ },
689
+ head: {
690
+ backgroundColor: V.value.style.chart.backgroundColor,
691
+ color: V.value.style.chart.color
692
+ }
693
+ }
694
+ }
695
+ };
696
+ });
697
+ Le(() => G.value.showTable, (e) => {
698
+ V.value.table.show || (e && V.value.table.useDialog && Lt.value ? Lt.value.open() : "close" in Lt.value && Lt.value.close());
699
+ });
700
+ function Xn() {
701
+ G.value.showTable = !1, Rt.value && Rt.value.setTableIconState(!1);
702
+ }
703
+ let Zn = f(() => V.value.style.chart.backgroundColor), Qn = f(() => V.value.style.chart.legend), { exportSvg: $n, getSvg: er } = de({
704
+ svg: W,
705
+ title: f(() => V.value.style.chart.title),
706
+ legend: Qn,
707
+ legendItems: Un,
708
+ backgroundColor: Zn
709
+ });
710
+ async function tr({ isCb: e }) {
711
+ Bt.value = !0, await Ae();
712
+ try {
713
+ if (e) {
714
+ let { blob: e, url: t, text: n, dataUrl: r } = await er();
715
+ await Promise.resolve(V.value.userOptions.callbacks.svg({
716
+ blob: e,
717
+ url: t,
718
+ text: n,
719
+ dataUrl: r
720
+ }));
721
+ } else await Promise.resolve($n());
722
+ } finally {
723
+ Bt.value = !1;
724
+ }
725
+ }
726
+ function nr(e) {
727
+ if (e?.stage === "start") {
728
+ zt.value = !0;
729
+ return;
730
+ }
731
+ if (e?.stage === "end") {
732
+ zt.value = !1;
733
+ return;
734
+ }
735
+ Zt();
736
+ }
737
+ async function rr() {
738
+ if (Dt("copyAlt", {
739
+ config: V.value,
740
+ dataset: J.value
741
+ }), !V.value.userOptions.callbacks.altCopy) {
742
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
743
+ return;
744
+ }
745
+ await Promise.resolve(V.value.userOptions.callbacks.altCopy({
746
+ config: V.value,
747
+ dataset: J.value
748
+ }));
749
+ }
750
+ let ir = f(() => (M.value ? Y.value.chords.filter((e) => e.source.groupId === M.value.id) : P.value ? Y.value.chords.filter((e) => e.source.groupId === P.value) : Y.value.chords).filter((e) => e.source.value)), $ = f(() => ({
751
+ groups: Y.value.groups.map((e, t) => ({
752
+ type: "group",
753
+ index: t,
754
+ item: e
755
+ })),
756
+ ribbons: ir.value.map((e, t) => ({
757
+ type: "ribbon",
758
+ index: t,
759
+ item: {
760
+ ...e,
761
+ path: fn(e.source, e.target),
762
+ color: J.value.colors[e.source.index]
763
+ }
764
+ }))
765
+ })), ar = f(() => ({
766
+ headers: ["", ...Q.value.head.map((e) => e.name)],
767
+ rows: Q.value.body.map((e, t) => [Q.value.head[t]?.name ?? `${t}`, ...e.map((e) => En(e))])
768
+ }));
769
+ function or(e) {
770
+ let t = $.value.groups[e];
771
+ t && (z.value = "group", B.value = e, N.value = null, M.value = t.item);
772
+ }
773
+ function sr(e) {
774
+ let t = $.value.ribbons[e];
775
+ t && (z.value = "ribbon", B.value = e, M.value = null, N.value = t.item);
776
+ }
777
+ function cr() {
778
+ B.value = null, z.value = "group", M.value = null, N.value = null;
779
+ }
780
+ function lr() {
781
+ Vt.value = !0, z.value = "group", B.value = null;
782
+ }
783
+ function ur() {
784
+ Vt.value = !1, cr();
785
+ }
786
+ function dr(e) {
787
+ if (!W.value || Ln.value || document.activeElement !== W.value) return;
788
+ let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "ArrowUp", i = e.key === "ArrowDown", a = e.key === "Enter" || e.key === " ", o = e.key === "Escape";
789
+ if (!t && !n && !r && !i && !a && !o) return;
790
+ if (e.preventDefault(), e.stopPropagation(), o) {
791
+ cr();
792
+ return;
793
+ }
794
+ if (r) {
795
+ z.value = "group", $.value.groups.length && or(B.value === null ? 0 : Math.min(B.value, $.value.groups.length - 1));
796
+ return;
797
+ }
798
+ if (i) {
799
+ if (!$.value.ribbons.length) return;
800
+ z.value = "ribbon", sr(B.value === null ? 0 : Math.min(B.value, $.value.ribbons.length - 1));
801
+ return;
802
+ }
803
+ if (a) {
804
+ if (z.value === "group") {
805
+ let e = $.value.groups[B.value];
806
+ e && jn(e.item, e.index);
807
+ } else {
808
+ let e = $.value.ribbons[B.value];
809
+ e && Pn(e.item, e.index);
810
+ }
811
+ return;
812
+ }
813
+ let s = z.value === "group" ? $.value.groups : $.value.ribbons;
814
+ if (!s.length) return;
815
+ let c = B.value;
816
+ c === null || c < 0 || c >= s.length ? c = n ? 0 : s.length - 1 : n ? (c += 1, c >= s.length && (c = 0)) : t && (--c, c < 0 && (c = s.length - 1)), z.value === "group" ? or(c) : sr(c);
817
+ }
818
+ return _e({
819
+ getData: Bn,
820
+ getImage: qn,
821
+ generateCsv: Kn,
822
+ generateImage: Zt,
823
+ generateSvg: tr,
824
+ generatePdf: Xt,
825
+ toggleAnnotator: Rn,
826
+ toggleTable: zn,
827
+ toggleFullscreen: On,
828
+ copyAlt: rr
829
+ }), (e, t) => (S(), h("div", {
830
+ ref_key: "chordChart",
831
+ ref: F,
832
+ class: y({
833
+ "vue-data-ui-component": !0,
834
+ "vue-ui-chord": !0,
835
+ "vue-data-ui-wrapper-fullscreen": Dn.value,
836
+ "vue-data-ui-responsive": V.value.responsive
837
+ }),
838
+ style: x(`font-family:${V.value.style.fontFamily};width:100%; text-align:center;background:${V.value.style.chart.backgroundColor}`),
839
+ id: `chord_${j.value}`,
840
+ onMouseenter: t[2] ||= () => D(Kt)(!0),
841
+ onMouseleave: t[3] ||= () => D(Kt)(!1)
842
+ }, [
843
+ g("div", {
844
+ id: `chart-instructions-${j.value}`,
845
+ class: "sr-only"
846
+ }, [g("p", null, E(V.value.a11y.translations.keyboardNavigation), 1)], 8, Ve),
847
+ ar.value?.rows?.length ? (S(), p(be, {
848
+ key: 0,
849
+ uid: j.value,
850
+ head: ar.value.headers,
851
+ body: ar.value.rows,
852
+ notice: V.value.a11y.translations.tableAvailable,
853
+ caption: V.value.a11y.translations.tableCaption
854
+ }, null, 8, [
855
+ "uid",
856
+ "head",
857
+ "body",
858
+ "notice",
859
+ "caption"
860
+ ])) : m("", !0),
861
+ V.value.userOptions.buttons.annotator && D(W) ? (S(), p(D(xt), {
862
+ key: 1,
863
+ color: V.value.style.chart.color,
864
+ backgroundColor: V.value.style.chart.backgroundColor,
865
+ active: Ln.value,
866
+ svgRef: D(W),
867
+ isCursorPointer: H.value,
868
+ onClose: Rn
869
+ }, {
870
+ "annotator-action-close": O(() => [T(e.$slots, "annotator-action-close", {}, void 0, !0)]),
871
+ "annotator-action-color": O(({ color: t }) => [T(e.$slots, "annotator-action-color", b(v({ color: t })), void 0, !0)]),
872
+ "annotator-action-draw": O(({ mode: t }) => [T(e.$slots, "annotator-action-draw", b(v({ mode: t })), void 0, !0)]),
873
+ "annotator-action-undo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-undo", b(v({ disabled: t })), void 0, !0)]),
874
+ "annotator-action-redo": O(({ disabled: t }) => [T(e.$slots, "annotator-action-redo", b(v({ disabled: t })), void 0, !0)]),
875
+ "annotator-action-delete": O(({ disabled: t }) => [T(e.$slots, "annotator-action-delete", b(v({ disabled: t })), void 0, !0)]),
876
+ _: 3
877
+ }, 8, [
878
+ "color",
879
+ "backgroundColor",
880
+ "active",
881
+ "svgRef",
882
+ "isCursorPointer"
883
+ ])) : m("", !0),
884
+ T(e.$slots, "userConfig", {}, void 0, !0),
885
+ an.value ? (S(), h("div", {
886
+ key: 2,
887
+ ref_key: "noTitle",
888
+ ref: Mt,
889
+ class: "vue-data-ui-no-title-space",
890
+ style: "height:36px; width: 100%;background:transparent"
891
+ }, null, 512)) : m("", !0),
892
+ V.value.style.chart.title.text ? (S(), h("div", {
893
+ key: 3,
894
+ ref_key: "chartTitle",
895
+ ref: kt,
896
+ style: "width:100%;background:transparent;padding-bottom:24px"
897
+ }, [(S(), p(he, {
898
+ key: `title_${Nt.value}`,
899
+ config: {
900
+ title: {
901
+ cy: "chord-div-title",
902
+ ...V.value.style.chart.title
903
+ },
904
+ subtitle: {
905
+ cy: "chord-div-subtitle",
906
+ ...V.value.style.chart.title.subtitle
907
+ }
908
+ }
909
+ }, null, 8, ["config"]))], 512)) : m("", !0),
910
+ g("div", { id: `legend-top-${j.value}` }, null, 8, He),
911
+ V.value.userOptions.show && A.value && (D(qt) || D(Gt)) ? (S(), p(D(St), {
912
+ ref_key: "userOptionsRef",
913
+ ref: Rt,
914
+ key: `user_option_${Ot.value}`,
915
+ backgroundColor: V.value.style.chart.backgroundColor,
916
+ color: V.value.style.chart.color,
917
+ isPrinting: D(Jt),
918
+ isImaging: D(Yt),
919
+ uid: j.value,
920
+ hasTooltip: !1,
921
+ hasPdf: V.value.userOptions.buttons.pdf,
922
+ hasImg: V.value.userOptions.buttons.img,
923
+ hasSvg: V.value.userOptions.buttons.svg,
924
+ hasXls: V.value.userOptions.buttons.csv,
925
+ hasTable: V.value.userOptions.buttons.table,
926
+ hasLabel: !1,
927
+ hasFullscreen: V.value.userOptions.buttons.fullscreen,
928
+ hasAltCopy: V.value.userOptions.buttons.altCopy,
929
+ isFullscreen: Dn.value,
930
+ chartElement: F.value,
931
+ position: V.value.userOptions.position,
932
+ titles: { ...V.value.userOptions.buttonTitles },
933
+ hasAnnotator: V.value.userOptions.buttons.annotator,
934
+ isAnnotation: Ln.value,
935
+ callbacks: V.value.userOptions.callbacks,
936
+ printScale: V.value.userOptions.print.scale,
937
+ tableDialog: V.value.table.useDialog,
938
+ isCursorPointer: H.value,
939
+ onToggleFullscreen: On,
940
+ onGeneratePdf: D(Xt),
941
+ onGenerateCsv: Kn,
942
+ onGenerateImage: nr,
943
+ onGenerateSvg: tr,
944
+ onToggleTable: zn,
945
+ onToggleAnnotator: Rn,
946
+ onCopyAlt: rr,
947
+ style: x({ visibility: D(qt) ? D(Gt) ? "visible" : "hidden" : "visible" })
948
+ }, Ee({ _: 2 }, [
949
+ e.$slots.menuIcon ? {
950
+ name: "menuIcon",
951
+ fn: O(({ isOpen: t, color: n }) => [T(e.$slots, "menuIcon", b(v({
952
+ isOpen: t,
953
+ color: n
954
+ })), void 0, !0)]),
955
+ key: "0"
956
+ } : void 0,
957
+ e.$slots.optionPdf ? {
958
+ name: "optionPdf",
959
+ fn: O(() => [T(e.$slots, "optionPdf", {}, void 0, !0)]),
960
+ key: "1"
961
+ } : void 0,
962
+ e.$slots.optionCsv ? {
963
+ name: "optionCsv",
964
+ fn: O(() => [T(e.$slots, "optionCsv", {}, void 0, !0)]),
965
+ key: "2"
966
+ } : void 0,
967
+ e.$slots.optionImg ? {
968
+ name: "optionImg",
969
+ fn: O(() => [T(e.$slots, "optionImg", {}, void 0, !0)]),
970
+ key: "3"
971
+ } : void 0,
972
+ e.$slots.optionSvg ? {
973
+ name: "optionSvg",
974
+ fn: O(() => [T(e.$slots, "optionSvg", {}, void 0, !0)]),
975
+ key: "4"
976
+ } : void 0,
977
+ e.$slots.optionTable ? {
978
+ name: "optionTable",
979
+ fn: O(() => [T(e.$slots, "optionTable", {}, void 0, !0)]),
980
+ key: "5"
981
+ } : void 0,
982
+ e.$slots.optionFullscreen ? {
983
+ name: "optionFullscreen",
984
+ fn: O(({ toggleFullscreen: t, isFullscreen: n }) => [T(e.$slots, "optionFullscreen", b(v({
985
+ toggleFullscreen: t,
986
+ isFullscreen: n
987
+ })), void 0, !0)]),
988
+ key: "6"
989
+ } : void 0,
990
+ e.$slots.optionAnnotator ? {
991
+ name: "optionAnnotator",
992
+ fn: O(({ toggleAnnotator: t, isAnnotator: n }) => [T(e.$slots, "optionAnnotator", b(v({
993
+ toggleAnnotator: t,
994
+ isAnnotator: n
995
+ })), void 0, !0)]),
996
+ key: "7"
997
+ } : void 0,
998
+ e.$slots.optionAltCopy ? {
999
+ name: "optionAltCopy",
1000
+ fn: O(({ altCopy: t }) => [T(e.$slots, "optionAltCopy", b(v({ altCopy: t })), void 0, !0)]),
1001
+ key: "8"
1002
+ } : void 0,
1003
+ e.$slots["custom-menu-before"] ? {
1004
+ name: "custom-menu-before",
1005
+ fn: O(() => [T(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1006
+ key: "9"
1007
+ } : void 0,
1008
+ e.$slots["custom-menu-after"] ? {
1009
+ name: "custom-menu-after",
1010
+ fn: O(() => [T(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1011
+ key: "10"
1012
+ } : void 0
1013
+ ]), 1032, [
1014
+ "backgroundColor",
1015
+ "color",
1016
+ "isPrinting",
1017
+ "isImaging",
1018
+ "uid",
1019
+ "hasPdf",
1020
+ "hasImg",
1021
+ "hasSvg",
1022
+ "hasXls",
1023
+ "hasTable",
1024
+ "hasFullscreen",
1025
+ "hasAltCopy",
1026
+ "isFullscreen",
1027
+ "chartElement",
1028
+ "position",
1029
+ "titles",
1030
+ "hasAnnotator",
1031
+ "isAnnotation",
1032
+ "callbacks",
1033
+ "printScale",
1034
+ "tableDialog",
1035
+ "isCursorPointer",
1036
+ "onGeneratePdf",
1037
+ "style"
1038
+ ])) : m("", !0),
1039
+ (S(), h("svg", {
1040
+ xmlns: D(ie),
1041
+ ref_key: "svgRef",
1042
+ ref: W,
1043
+ viewBox: `0 0 ${K.value.width} ${K.value.height}`,
1044
+ "aria-describedby": `chart-instructions-${j.value}`,
1045
+ tabindex: "0",
1046
+ preserveAspectRatio: "xMidYMid meet",
1047
+ style: { overflow: "visible" },
1048
+ class: y({
1049
+ "vue-ui-chord-rotating": yn.value,
1050
+ "vue-ui-chord-idle": !yn.value
1051
+ }),
1052
+ onMousedown: Re(Cn, ["prevent"]),
1053
+ onTouchstart: Re(Cn, ["prevent"]),
1054
+ onFocus: lr,
1055
+ onBlur: ur,
1056
+ onKeydown: dr
1057
+ }, [
1058
+ Oe(D(bt)),
1059
+ e.$slots["chart-background"] ? (S(), h("foreignObject", {
1060
+ key: 0,
1061
+ x: 0,
1062
+ y: 0,
1063
+ width: K.value.width <= 0 ? 10 : K.value.width,
1064
+ height: K.value.height <= 0 ? 10 : K.value.height,
1065
+ style: { pointerEvents: "none" }
1066
+ }, [T(e.$slots, "chart-background", {}, void 0, !0)], 8, We)) : m("", !0),
1067
+ V.value.style.chart.arcs.labels.curved ? (S(), h("defs", Ge, [(S(!0), h(d, null, w(Y.value.groups, (e, t) => (S(), h("path", {
1068
+ key: `labelPath-${t}`,
1069
+ id: `labelPath-${t}_${j.value}`,
1070
+ d: vn(e.startAngle, e.endAngle, (q.value.inner + q.value.outer) / 2 + V.value.style.chart.arcs.labels.offset),
1071
+ fill: "none"
1072
+ }, null, 8, Ke))), 128))])) : m("", !0),
1073
+ e.$slots.pattern ? (S(), h("g", qe, [(S(!0), h(d, null, w(Y.value.groups, (t, n) => (S(), h("defs", null, [T(e.$slots, "pattern", ke({ ref_for: !0 }, {
1074
+ seriesIndex: t.index,
1075
+ patternId: `pattern_${j.value}_${n}`
1076
+ }), void 0, !0)]))), 256))])) : m("", !0),
1077
+ g("g", { transform: `translate(${K.value.width / 2}, ${K.value.height / 2}) rotate(${X.value})` }, [
1078
+ (S(!0), h(d, null, w(Y.value.groups, (t, n) => (S(), h("g", null, [(S(), h("path", {
1079
+ class: y({
1080
+ "vue-ui-chord-arc": !0,
1081
+ "vue-ui-chord-arc-animated": V.value.useCssAnimation && !I.value
1082
+ }),
1083
+ key: `arc-${n}`,
1084
+ d: dn(t.startAngle, t.endAngle, q.value.outer, q.value.inner),
1085
+ fill: J.value.colors[n],
1086
+ stroke: V.value.style.chart.arcs.stroke,
1087
+ "stroke-width": V.value.style.chart.arcs.strokeWidth,
1088
+ "stroke-linecap": "round",
1089
+ "stroke-linejoin": "round",
1090
+ style: x({ opacity: In(t) }),
1091
+ onMouseenter: (e) => kn(t, n),
1092
+ onMouseleave: (e) => An(t, n),
1093
+ onClick: (e) => jn(t, n)
1094
+ }, null, 46, Ye)), e.$slots.pattern ? (S(), h("path", {
1095
+ class: y({
1096
+ "vue-ui-chord-arc": !0,
1097
+ "vue-ui-chord-arc-animated": V.value.useCssAnimation && !I.value
1098
+ }),
1099
+ key: `arc-${n}`,
1100
+ d: dn(t.startAngle, t.endAngle, q.value.outer, q.value.inner),
1101
+ fill: `url(#${t.pattern})`,
1102
+ stroke: V.value.style.chart.arcs.stroke,
1103
+ "stroke-width": V.value.style.chart.arcs.strokeWidth,
1104
+ "stroke-linecap": "round",
1105
+ "stroke-linejoin": "round",
1106
+ style: x({
1107
+ opacity: In(t),
1108
+ pointerEvents: "none"
1109
+ })
1110
+ }, null, 14, Xe)) : m("", !0)]))), 256)),
1111
+ g("g", null, [
1112
+ (S(!0), h(d, null, w(M.value ? Y.value.chords.filter((e) => e.source.groupId === M.value.id) : P.value ? Y.value.chords.filter((e) => e.source.groupId === P.value) : Y.value.chords, (t, n) => (S(), h(d, { key: `ribbon-${t.id}` }, [
1113
+ t.source.value ? (S(), h("path", {
1114
+ key: 0,
1115
+ class: y({
1116
+ "vue-ui-chord-ribbon": !0,
1117
+ "vue-ui-chord-ribbon-animated": V.value.useCssAnimation && !I.value
1118
+ }),
1119
+ d: fn(t.source, t.target),
1120
+ fill: V.value.style.chart.backgroundColor,
1121
+ style: x({ opacity: V.value.style.chart.ribbons.underlayerOpacity })
1122
+ }, null, 14, Ze)) : m("", !0),
1123
+ t.source.value ? (S(), h("path", {
1124
+ key: 1,
1125
+ class: y({
1126
+ "vue-ui-chord-ribbon": !0,
1127
+ "vue-ui-chord-ribbon-animated": V.value.useCssAnimation && !I.value
1128
+ }),
1129
+ d: fn(t.source, t.target),
1130
+ fill: J.value.colors[t.source.index],
1131
+ stroke: V.value.style.chart.ribbons.stroke,
1132
+ "stroke-width": V.value.style.chart.ribbons.strokeWidth,
1133
+ "stroke-linecap": "round",
1134
+ "stroke-linejoin": "round",
1135
+ style: x({ opacity: Fn(t) }),
1136
+ onMouseenter: (e) => Mn({
1137
+ ...t,
1138
+ path: fn(t.source, t.target),
1139
+ color: J.value.colors[t.source.index]
1140
+ }, n),
1141
+ onClick: (e) => Pn({
1142
+ ...t,
1143
+ color: J.value.colors[t.source.index]
1144
+ }, n),
1145
+ onMouseleave: (e) => Nn({
1146
+ ...t,
1147
+ color: J.value.colors[t.source.index]
1148
+ }, n)
1149
+ }, null, 46, Qe)) : m("", !0),
1150
+ t.source.value && e.$slots.pattern ? (S(), h("path", {
1151
+ key: 2,
1152
+ class: y({
1153
+ "vue-ui-chord-ribbon": !0,
1154
+ "vue-ui-chord-ribbon-animated": V.value.useCssAnimation && !I.value
1155
+ }),
1156
+ d: fn(t.source, t.target),
1157
+ fill: `url(#pattern_${j.value}_${t.source.index})`,
1158
+ stroke: V.value.style.chart.ribbons.stroke,
1159
+ "stroke-width": V.value.style.chart.ribbons.strokeWidth,
1160
+ "stroke-linecap": "round",
1161
+ "stroke-linejoin": "round",
1162
+ style: x({
1163
+ opacity: Fn(t),
1164
+ pointerEvents: "none"
1165
+ })
1166
+ }, null, 14, $e)) : m("", !0)
1167
+ ], 64))), 128)),
1168
+ N.value ? (S(), h("path", {
1169
+ key: 0,
1170
+ d: N.value.path,
1171
+ fill: N.value.color,
1172
+ stroke: V.value.style.chart.ribbons.stroke,
1173
+ "stroke-width": V.value.style.chart.ribbons.strokeWidth,
1174
+ "stroke-linecap": "round",
1175
+ "stroke-linejoin": "round",
1176
+ class: y({ "vue-ui-chord-ribbon": !0 }),
1177
+ style: { pointerEvents: "none" }
1178
+ }, null, 8, et)) : m("", !0),
1179
+ N.value && e.$slots.pattern ? (S(), h("path", {
1180
+ key: 1,
1181
+ d: N.value.path,
1182
+ fill: `url(#${N.value.source.pattern})`,
1183
+ stroke: V.value.style.chart.ribbons.stroke,
1184
+ "stroke-width": V.value.style.chart.ribbons.strokeWidth,
1185
+ "stroke-linecap": "round",
1186
+ "stroke-linejoin": "round",
1187
+ class: y({ "vue-ui-chord-ribbon": !0 }),
1188
+ style: { pointerEvents: "none" }
1189
+ }, null, 8, tt)) : m("", !0)
1190
+ ]),
1191
+ (M.value || N.value || P.value) && V.value.style.chart.ribbons.labels.show ? (S(), h("g", nt, [(S(!0), h(d, null, w(un.value, (e) => (S(), h(d, { key: e.id }, [
1192
+ g("line", {
1193
+ x1: e.midBaseX,
1194
+ y1: e.midBaseY,
1195
+ x2: Math.cos(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1196
+ y2: Math.sin(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1197
+ stroke: V.value.style.chart.backgroundColor,
1198
+ "stroke-width": V.value.style.chart.ribbons.labels.connector.strokeWidth * 3,
1199
+ "pointer-events": "none"
1200
+ }, null, 8, rt),
1201
+ g("line", {
1202
+ x1: e.midBaseX,
1203
+ y1: e.midBaseY,
1204
+ x2: Math.cos(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1205
+ y2: Math.sin(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1206
+ stroke: V.value.style.chart.ribbons.labels.connector.stroke,
1207
+ "stroke-width": V.value.style.chart.ribbons.labels.connector.strokeWidth,
1208
+ "pointer-events": "none"
1209
+ }, null, 8, it),
1210
+ V.value.style.chart.ribbons.labels.marker.show ? (S(), h("circle", {
1211
+ key: 0,
1212
+ cx: Math.cos(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1213
+ cy: Math.sin(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 12),
1214
+ r: V.value.style.chart.ribbons.labels.marker.radius,
1215
+ stroke: V.value.style.chart.ribbons.labels.marker.stroke,
1216
+ "stroke-width": V.value.style.chart.ribbons.labels.marker.strokeWidth,
1217
+ fill: e.groupColor,
1218
+ "pointer-events": "none"
1219
+ }, null, 8, at)) : m("", !0),
1220
+ g("text", {
1221
+ transform: `
1222
+ translate(
1223
+ ${Math.cos(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 24)},
1224
+ ${Math.sin(e.theta - Math.PI / 2) * (q.value.outer + V.value.style.chart.ribbons.labels.offset + 24)}
1225
+ ) rotate(${-X.value})
1226
+ `,
1227
+ fill: V.value.style.chart.ribbons.labels.useSerieColor ? e.groupColor : V.value.style.chart.ribbons.labels.color,
1228
+ "text-anchor": gn(e.theta),
1229
+ "font-size": V.value.style.chart.ribbons.labels.fontSize,
1230
+ "font-weight": V.value.style.chart.ribbons.labels.bold ? "bold" : "normal",
1231
+ dy: ".35em",
1232
+ "pointer-events": "none"
1233
+ }, E(En(e.value)), 9, ot)
1234
+ ], 64))), 128))])) : m("", !0),
1235
+ V.value.style.chart.arcs.labels.show ? (S(), h("g", st, [V.value.style.chart.arcs.labels.curved ? (S(!0), h(d, { key: 0 }, w(Y.value.groups, (e, t) => (S(), h("text", {
1236
+ class: "vue-ui-chord-label-curved",
1237
+ key: `curved-label-${t}`,
1238
+ "font-size": V.value.style.chart.arcs.labels.fontSize,
1239
+ "font-weight": V.value.style.chart.arcs.labels.bold ? "bold" : "normal",
1240
+ fill: V.value.style.chart.arcs.labels.adaptColorToBackground ? D(re)(J.value.colors[t]) : V.value.style.chart.arcs.labels.color
1241
+ }, [g("textPath", {
1242
+ href: `#labelPath-${t}_${j.value}`,
1243
+ startOffset: "50%",
1244
+ "text-anchor": "middle"
1245
+ }, E(J.value.labels[t]) + E(V.value.style.chart.arcs.labels.showPercentage ? D(i)({
1246
+ p: " (",
1247
+ v: isNaN(e.proportion) ? 0 : e.proportion * 100,
1248
+ s: "%)",
1249
+ r: V.value.style.chart.arcs.labels.roundingPercentage
1250
+ }) : ""), 9, lt)], 8, ct))), 128)) : !M.value && !N.value && !P.value ? (S(!0), h(d, { key: 1 }, w(Y.value.groups, (e, t) => (S(), h("text", {
1251
+ class: "vue-ui-chord-label-straight",
1252
+ key: `label-${t}`,
1253
+ transform: `
1254
+ ${_n((e.startAngle + e.endAngle) / 2)}
1255
+ rotate(${-X.value})
1256
+ `,
1257
+ dy: ".35em",
1258
+ "text-anchor": hn(e) > Math.PI ? "end" : "start",
1259
+ "font-size": V.value.style.chart.arcs.labels.fontSize,
1260
+ "font-weight": V.value.style.chart.arcs.labels.bold ? "bold" : "normal",
1261
+ fill: V.value.style.chart.arcs.labels.color,
1262
+ innerHTML: D(l)({
1263
+ content: D(ee)(Jn(e, t)),
1264
+ fontSize: V.value.style.chart.arcs.labels.fontSize,
1265
+ fill: V.value.style.chart.arcs.labels.color,
1266
+ x: 0,
1267
+ y: 0
1268
+ })
1269
+ }, null, 8, ut))), 128)) : m("", !0)])) : m("", !0)
1270
+ ], 8, Je),
1271
+ T(e.$slots, "svg", { svg: {
1272
+ height: 600,
1273
+ width: 600,
1274
+ isPrintingImg: D(Jt) || D(Yt) || zt.value,
1275
+ isPrintingSvg: Bt.value
1276
+ } }, void 0, !0)
1277
+ ], 42, Ue)),
1278
+ e.$slots.hint ? (S(), h("div", dt, [T(e.$slots, "hint", b(v({
1279
+ hint: V.value.a11y.translations.keyboardNavigation,
1280
+ isVisible: Vt.value
1281
+ })), void 0, !0)])) : m("", !0),
1282
+ e.$slots.watermark ? (S(), h("div", ft, [T(e.$slots, "watermark", b(v({ isPrinting: D(Jt) || D(Yt) || zt.value || Bt.value })), void 0, !0)])) : m("", !0),
1283
+ g("div", { id: `legend-bottom-${j.value}` }, null, 8, pt),
1284
+ It.value && (V.value.style.chart.legend.show || e.$slots.legend) ? (S(), p(Te, {
1285
+ key: 7,
1286
+ to: V.value.style.chart.legend.position === "top" ? `#legend-top-${j.value}` : `#legend-bottom-${j.value}`
1287
+ }, [g("div", {
1288
+ ref_key: "chartLegend",
1289
+ ref: At
1290
+ }, [T(e.$slots, "legend", { legend: Un.value }, () => [V.value.style.chart.legend.show ? (S(), p(Ce, {
1291
+ key: `legend_${Ft.value}`,
1292
+ legendSet: Un.value,
1293
+ config: Wn.value,
1294
+ isCursorPointer: H.value,
1295
+ onClickMarker: t[0] ||= ({ legend: e }) => Hn(e.id)
1296
+ }, Ee({
1297
+ item: O(({ legend: e }) => [g("div", {
1298
+ style: x({ opacity: P.value ? P.value === e.id ? 1 : .3 : 1 }),
1299
+ onClick: (t) => e.select()
1300
+ }, E(e.name), 13, mt)]),
1301
+ _: 2
1302
+ }, [e.$slots.pattern ? {
1303
+ name: "legend-pattern",
1304
+ fn: O(({ legend: e, index: t }) => [Oe(ge, {
1305
+ shape: e.shape,
1306
+ radius: 30,
1307
+ stroke: "none",
1308
+ plot: {
1309
+ x: 30,
1310
+ y: 30
1311
+ },
1312
+ fill: `url(#pattern_${j.value}_${t})`
1313
+ }, null, 8, ["shape", "fill"])]),
1314
+ key: "0"
1315
+ } : void 0]), 1032, [
1316
+ "legendSet",
1317
+ "config",
1318
+ "isCursorPointer"
1319
+ ])) : m("", !0)], !0)], 512)], 8, ["to"])) : m("", !0),
1320
+ e.$slots.source ? (S(), h("div", {
1321
+ key: 8,
1322
+ ref_key: "source",
1323
+ ref: jt,
1324
+ dir: "auto"
1325
+ }, [T(e.$slots, "source", {}, void 0, !0)], 512)) : m("", !0),
1326
+ X.value === V.value.initialRotation ? m("", !0) : (S(), h("div", ht, [T(e.$slots, "reset-action", { reset: Vn }, () => [g("button", {
1327
+ "data-cy-reset": "",
1328
+ tabindex: "0",
1329
+ role: "button",
1330
+ class: "vue-data-ui-refresh-button",
1331
+ style: x({
1332
+ background: V.value.style.chart.backgroundColor,
1333
+ cursor: H.value ? "pointer" : "default"
1334
+ }),
1335
+ onClick: Vn
1336
+ }, [Oe(D(vt), {
1337
+ name: "refresh",
1338
+ stroke: V.value.style.chart.color
1339
+ }, null, 8, ["stroke"])], 4)], !0)])),
1340
+ A.value && V.value.userOptions.buttons.table ? (S(), p(Ne(Yn.value.component), ke({ key: 10 }, Yn.value.props, {
1341
+ ref_key: "tableUnit",
1342
+ ref: Lt,
1343
+ onClose: Xn
1344
+ }), Ee({
1345
+ content: O(() => [(S(), p(D(yt), {
1346
+ key: `table_${Pt.value}`,
1347
+ colNames: Gn.value.colNames,
1348
+ head: Gn.value.head,
1349
+ body: Gn.value.body,
1350
+ config: Gn.value.config,
1351
+ title: V.value.table.useDialog ? "" : Yn.value.title,
1352
+ withCloseButton: !V.value.table.useDialog,
1353
+ isCursorPointer: H.value,
1354
+ onClose: Xn
1355
+ }, {
1356
+ th: O(({ th: e }) => [De(E(e.name), 1)]),
1357
+ td: O(({ td: e }) => [g("div", gt, E(e.name ? e.name : En(e)), 1)]),
1358
+ _: 1
1359
+ }, 8, [
1360
+ "colNames",
1361
+ "head",
1362
+ "body",
1363
+ "config",
1364
+ "title",
1365
+ "withCloseButton",
1366
+ "isCursorPointer"
1367
+ ]))]),
1368
+ _: 2
1369
+ }, [V.value.table.useDialog ? {
1370
+ name: "title",
1371
+ fn: O(() => [De(E(Yn.value.title), 1)]),
1372
+ key: "0"
1373
+ } : void 0, V.value.table.useDialog ? {
1374
+ name: "actions",
1375
+ fn: O(() => [g("button", {
1376
+ tabindex: "0",
1377
+ class: "vue-ui-user-options-button",
1378
+ onClick: t[1] ||= (e) => Kn(V.value.userOptions.callbacks.csv),
1379
+ style: x({ cursor: H.value ? "pointer" : "default" })
1380
+ }, [Oe(D(vt), {
1381
+ name: "fileCsv",
1382
+ stroke: Yn.value.props.color
1383
+ }, null, 8, ["stroke"])], 4)]),
1384
+ key: "1"
1385
+ } : void 0]), 1040)) : m("", !0),
1386
+ T(e.$slots, "skeleton", {}, () => [D(Ut) ? (S(), p(ue, { key: 0 })) : m("", !0)], !0)
1387
+ ], 46, Be));
1388
+ }
1389
+ }, [["__scopeId", "data-v-2716f6ca"]]);
1390
+ //#endregion
1391
+ export { ze as n, _t as t };