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,1656 @@
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, U as l, X as u, ot as d, pt as f, t as p, v as m } from "./lib-DUeYQsS0.js";
3
+ import { t as h } from "./useConfig-DAyQk86L.js";
4
+ import { t as g } from "./usePrinter-C1Gqt_Sp.js";
5
+ import { n as _, t as v } from "./BaseScanner-Dr2a1Msy.js";
6
+ import { t as ee } from "./useSvgExport-SVIsDot8.js";
7
+ import { t as y } from "./useNestedProp-CNcoy38D.js";
8
+ import { t as b } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as te } from "./img-1cKsci8e.js";
10
+ import { n as ne } from "./Title-NWp4qB4K.js";
11
+ import { t as re } from "./_plugin-vue_export-helper-B3ysoDQm.js";
12
+ import { r as ie } from "./canvas-lib-BOP_HS11.js";
13
+ import { t as ae } from "./useResponsive-BfnK0KxU.js";
14
+ import { t as x } from "./A11yDataTable-BCbtxMU6.js";
15
+ import { t as S } from "./useUserOptionState-DK-_1ddE.js";
16
+ import { t as oe } from "./useChartAccessibility-DYqac8yF.js";
17
+ import { t as se } from "./usePanZoom-CYU3B4T3.js";
18
+ import { t as ce } from "./vue_ui_word_cloud-C-qIMNLu.js";
19
+ import { t as le } from "./BaseZoomControls-CG7hI_1P.js";
20
+ import { Fragment as ue, computed as C, createBlock as w, createCommentVNode as T, createElementBlock as E, createElementVNode as D, createSlots as de, createTextVNode as fe, createVNode as pe, defineAsyncComponent as O, guardReactiveProps as k, mergeProps as me, nextTick as he, normalizeClass as ge, normalizeProps as A, normalizeStyle as _e, onBeforeUnmount as ve, onMounted as ye, openBlock as j, ref as M, renderList as be, renderSlot as N, resolveDynamicComponent as xe, shallowRef as Se, toDisplayString as Ce, toRefs as we, unref as P, watch as Te, withCtx as F } from "vue";
21
+ //#region src/wordcloud.js
22
+ function Ee({ word: e, fontSize: t, pad: n, canvas: r, ctx: i, svg: a }) {
23
+ let o = `${a.style && a.style.bold ? "bold " : ""}${t}px Arial`;
24
+ i.font = o;
25
+ let s = i.measureText(e.name), c = Math.ceil(s.width) + 2 + (n ? n * 2 : 0), l = Math.ceil(t) + 2 + (n ? n * 2 : 0);
26
+ r.width = c, r.height = l, i.font = o, i.textAlign = "center", i.textBaseline = "middle", i.fillStyle = "black", i.fillText(e.name, c / 2, l / 2);
27
+ let u = i.getImageData(0, 0, c, l).data, d = [], f = [], p = c, m = l, h = 0, g = 0, _ = !1;
28
+ for (let e = 0; e < l; e += 1) {
29
+ let t = e * c * 4, n = -1, r = !1;
30
+ for (let i = 0; i < c; i += 1) u[t + i * 4 + 3] > 1 ? (d.push([i, e]), _ = !0, i < p && (p = i), i > h && (h = i), e < m && (m = e), e > g && (g = e), r || (r = !0, n = i)) : r && (f.push([
31
+ e,
32
+ n,
33
+ i - 1
34
+ ]), r = !1, n = -1);
35
+ r && f.push([
36
+ e,
37
+ n,
38
+ c - 1
39
+ ]);
40
+ }
41
+ return _ || (p = 0, m = 0, h = 0, g = 0), {
42
+ w: c,
43
+ h: l,
44
+ wordMask: d,
45
+ runs: f,
46
+ minX: p,
47
+ minY: m,
48
+ maxX: h,
49
+ maxY: g
50
+ };
51
+ }
52
+ function De(e) {
53
+ let t = [];
54
+ if (!e.length) return t;
55
+ let n = e[0][1], r = e[0][0], i = r;
56
+ for (let a = 1; a < e.length; a += 1) {
57
+ let o = e[a][0], s = e[a][1];
58
+ s === n ? o === i + 1 ? i = o : (t.push([
59
+ n,
60
+ r,
61
+ i
62
+ ]), r = o, i = o) : (t.push([
63
+ n,
64
+ r,
65
+ i
66
+ ]), n = s, r = o, i = o);
67
+ }
68
+ return t.push([
69
+ n,
70
+ r,
71
+ i
72
+ ]), t;
73
+ }
74
+ function Oe(e, t) {
75
+ return 4294967295 >>> 32 - (t - e + 1) << e >>> 0;
76
+ }
77
+ function ke(e) {
78
+ return 4294967295 << e >>> 0;
79
+ }
80
+ function Ae(e) {
81
+ return 4294967295 >>> 31 - e >>> 0;
82
+ }
83
+ function je({ maskBits: e, maskRowStride: t, maskW: n, maskH: r, wx: i, wy: a, runs: o }) {
84
+ for (let s = 0; s < o.length; s += 1) {
85
+ let c = o[s][0], l = o[s][1], u = o[s][2], d = a + c;
86
+ if (d < 0 || d >= r) return !1;
87
+ let f = i + l, p = i + u;
88
+ if (f < 0 || p >= n) return !1;
89
+ let m = d * t, h = f >>> 5, g = p >>> 5, _ = f & 31, v = p & 31;
90
+ if (h === g) {
91
+ if (e[m + h] & Oe(_, v)) return !1;
92
+ } else {
93
+ if (e[m + h] & ke(_)) return !1;
94
+ for (let t = h + 1; t < g; t += 1) if (e[m + t]) return !1;
95
+ if (e[m + g] & Ae(v)) return !1;
96
+ }
97
+ }
98
+ return !0;
99
+ }
100
+ function Me({ maskBits: e, maskRowStride: t, maskW: n, maskH: r, wx: i, wy: a, runs: o }) {
101
+ for (let s = 0; s < o.length; s += 1) {
102
+ let c = o[s][0], l = o[s][1], u = o[s][2], d = a + c;
103
+ if (d < 0 || d >= r) continue;
104
+ let f = i + l, p = i + u;
105
+ if (p < 0 || f >= n) continue;
106
+ let m = d * t, h = f >>> 5, g = p >>> 5, _ = f & 31, v = p & 31;
107
+ if (h === g) {
108
+ let t = Oe(_, v);
109
+ e[m + h] |= t;
110
+ } else {
111
+ {
112
+ let t = ke(_);
113
+ e[m + h] |= t;
114
+ }
115
+ for (let t = h + 1; t < g; t += 1) e[m + t] = 4294967295;
116
+ {
117
+ let t = Ae(v);
118
+ e[m + g] |= t;
119
+ }
120
+ }
121
+ }
122
+ }
123
+ function Ne({ wordMask: e, w: t, h: n, dilation: r }) {
124
+ let i = new Uint8Array(t * n), a = [];
125
+ for (let n = 0; n < e.length; n += 1) {
126
+ let r = e[n][0], o = e[n][1] * t + r;
127
+ i[o] || (i[o] = 1, a.push(o));
128
+ }
129
+ for (let e = 0; e < a.length; e += 1) {
130
+ let o = a[e], s = o / t | 0, c = o - s * t;
131
+ for (let e = -r; e <= r; e += 1) {
132
+ let a = s + e;
133
+ if (a < 0 || a >= n) continue;
134
+ let o = a * t;
135
+ for (let n = -r; n <= r; n += 1) {
136
+ if (n === 0 && e === 0) continue;
137
+ let r = c + n;
138
+ r < 0 || r >= t || (i[o + r] = 1);
139
+ }
140
+ }
141
+ }
142
+ let o = [];
143
+ for (let e = 0; e < i.length; e += 1) if (i[e]) {
144
+ let n = e / t | 0, r = e - n * t;
145
+ o.push([r, n]);
146
+ }
147
+ return o;
148
+ }
149
+ function Pe({ runs: e, w: t, h: n, dilation: r }) {
150
+ let i = new Uint8Array(t * n), a = [];
151
+ for (let n = 0; n < e.length; n += 1) {
152
+ let r = e[n], o = r[0], s = r[1], c = r[2], l = o * t;
153
+ for (let e = s; e <= c; e += 1) {
154
+ let t = l + e;
155
+ i[t] || (i[t] = 1, a.push(t));
156
+ }
157
+ }
158
+ for (let e = 0; e < a.length; e += 1) {
159
+ let o = a[e], s = o / t | 0, c = o - s * t;
160
+ for (let e = -r; e <= r; e += 1) {
161
+ let a = s + e;
162
+ if (a < 0 || a >= n) continue;
163
+ let o = a * t;
164
+ for (let n = -r; n <= r; n += 1) {
165
+ if (n === 0 && e === 0) continue;
166
+ let r = c + n;
167
+ r < 0 || r >= t || (i[o + r] = 1);
168
+ }
169
+ }
170
+ }
171
+ let o = [];
172
+ for (let e = 0; e < n; e += 1) {
173
+ let n = e * t, r = -1, a = !1;
174
+ for (let s = 0; s < t; s += 1) i[n + s] ? a || (a = !0, r = s) : a && (o.push([
175
+ e,
176
+ r,
177
+ s - 1
178
+ ]), a = !1, r = -1);
179
+ a && o.push([
180
+ e,
181
+ r,
182
+ t - 1
183
+ ]);
184
+ }
185
+ return o;
186
+ }
187
+ function Fe(e, t) {
188
+ let n = e.runs, r = e.w, i = e.h, a = Math.max(1, Math.round(r * t)), o = Math.max(1, Math.round(i * t)), s = Array(o), c = a, l = o, u = 0, d = 0, f = !1;
189
+ for (let e = 0; e < n.length; e += 1) {
190
+ let r = n[e], i = r[0], a = r[1], p = r[2], m = Math.round(i * t);
191
+ if (m < 0 || m >= o) continue;
192
+ let h = Math.round(a * t), g = Math.round((p + 1) * t) - 1;
193
+ if (g < h) continue;
194
+ let _ = s[m];
195
+ _ || (_ = [], s[m] = _), _.push([h, g]), f = !0, h < c && (c = h), g > u && (u = g), m < l && (l = m), m > d && (d = m);
196
+ }
197
+ if (!f) return {
198
+ w: a,
199
+ h: o,
200
+ runs: [],
201
+ minX: 0,
202
+ minY: 0,
203
+ maxX: 0,
204
+ maxY: 0
205
+ };
206
+ let p = [];
207
+ for (let e = 0; e < o; e += 1) {
208
+ let t = s[e];
209
+ if (!t || t.length === 0) continue;
210
+ t.sort((e, t) => e[0] - t[0]);
211
+ let n = t[0][0], r = t[0][1];
212
+ for (let i = 1; i < t.length; i += 1) {
213
+ let a = t[i][0], o = t[i][1];
214
+ a <= r + 1 ? o > r && (r = o) : (p.push([
215
+ e,
216
+ n,
217
+ r
218
+ ]), n = a, r = o);
219
+ }
220
+ p.push([
221
+ e,
222
+ n,
223
+ r
224
+ ]);
225
+ }
226
+ return {
227
+ w: a,
228
+ h: o,
229
+ runs: p,
230
+ minX: c,
231
+ minY: l,
232
+ maxX: u,
233
+ maxY: d
234
+ };
235
+ }
236
+ var Ie = /* @__PURE__ */ new Map(), Le = /* @__PURE__ */ new Map();
237
+ function I({ word: e, fontSize: t, pad: n, svg: r }) {
238
+ let i = r.style && r.style.bold ? 1 : 0, a = n || 0;
239
+ return `${e.name}::${t}::${a}::${i}`;
240
+ }
241
+ function Re({ word: e, fontSize: t, pad: n, canvas: r, ctx: i, svg: a }) {
242
+ let o = I({
243
+ word: e,
244
+ fontSize: t,
245
+ pad: n,
246
+ svg: a
247
+ }), s = Ie.get(o);
248
+ if (s) return {
249
+ key: o,
250
+ bitmap: s
251
+ };
252
+ let c = Ee({
253
+ word: e,
254
+ fontSize: t,
255
+ pad: n,
256
+ canvas: r,
257
+ ctx: i,
258
+ svg: a
259
+ });
260
+ return Ie.set(o, c), {
261
+ key: o,
262
+ bitmap: c
263
+ };
264
+ }
265
+ function ze({ bitmapKey: e, wordMask: t, w: n, h: r, dilation: i }) {
266
+ let a = `${e}::d${i}`, o = Le.get(a);
267
+ if (o) return o;
268
+ let s = Ne({
269
+ wordMask: t,
270
+ w: n,
271
+ h: r,
272
+ dilation: i
273
+ }), c = {
274
+ wordMask: s,
275
+ runs: De(s)
276
+ };
277
+ return Le.set(a, c), c;
278
+ }
279
+ var L = 6, Be = 2, R = Math.PI / 180, Ve = [], He = [];
280
+ for (let e = 0; e < 360; e += L) {
281
+ let t = e * R;
282
+ Ve.push(Math.cos(t)), He.push(Math.sin(t));
283
+ }
284
+ var Ue = [], We = [];
285
+ for (let e = 0; e < 360; e += Be) {
286
+ let t = e * R;
287
+ Ue.push(Math.cos(t)), We.push(Math.sin(t));
288
+ }
289
+ function Ge(e, t, n) {
290
+ if (!e.length) return;
291
+ let r = Infinity, i = -Infinity, a = Infinity, o = -Infinity;
292
+ for (let t = 0; t < e.length; t += 1) {
293
+ let n = e[t], s = n.x + n.minX, c = n.x + n.maxX, l = n.y + n.minY, u = n.y + n.maxY;
294
+ s < r && (r = s), c > i && (i = c), l < a && (a = l), u > o && (o = u);
295
+ }
296
+ if (!isFinite(r) || !isFinite(i) || !isFinite(a) || !isFinite(o)) return;
297
+ let s = Math.max(Math.abs(r), Math.abs(i)), c = Math.max(Math.abs(a), Math.abs(o));
298
+ if (s === 0 || c === 0) return;
299
+ let l = .9, u = t * .5 * l / s, d = n * .5 * l / c, f = Math.min(u, d);
300
+ if (!(f <= 1)) {
301
+ f > 4 && (f = 4);
302
+ for (let t = 0; t < e.length; t += 1) {
303
+ let n = e[t];
304
+ n.x *= f, n.y *= f, n.width *= f, n.height *= f, n.fontSize *= f, n.minX *= f, n.maxX *= f, n.minY *= f, n.maxY *= f;
305
+ }
306
+ }
307
+ }
308
+ function z() {
309
+ return typeof performance < "u" && typeof performance.now == "function" ? () => performance.now() : () => Date.now();
310
+ }
311
+ function Ke({ value: e, minimumValue: t, maximumValue: n, configuredMinimumFontSize: r, maximumFontSize: i }) {
312
+ if (n === t) return i;
313
+ let a = (e - t) / (n - t) * (i - r) + r;
314
+ return Math.max(r, Math.min(i, a));
315
+ }
316
+ function qe({ currentBitmap: e, strictPixelPadding: t, scaleFactor: n, baseBitmap: r, bitmapKey: i }) {
317
+ let a = e.runs, o = e.w, s = e.h, c = e.minX, l = e.minY, u = e.maxX, d = e.maxY;
318
+ return !t || !a.length ? {
319
+ runs: a,
320
+ bitmapWidth: o,
321
+ bitmapHeight: s,
322
+ bitmapMinimumX: c,
323
+ bitmapMinimumY: l,
324
+ bitmapMaximumX: u,
325
+ bitmapMaximumY: d
326
+ } : n === 1 ? {
327
+ runs: ze({
328
+ bitmapKey: i,
329
+ wordMask: r.wordMask,
330
+ w: r.w,
331
+ h: r.h,
332
+ dilation: 2
333
+ }).runs,
334
+ bitmapWidth: o,
335
+ bitmapHeight: s,
336
+ bitmapMinimumX: c,
337
+ bitmapMinimumY: l,
338
+ bitmapMaximumX: u,
339
+ bitmapMaximumY: d
340
+ } : {
341
+ runs: Pe({
342
+ runs: a,
343
+ w: o,
344
+ h: s,
345
+ dilation: 2
346
+ }),
347
+ bitmapWidth: o,
348
+ bitmapHeight: s,
349
+ bitmapMinimumX: c,
350
+ bitmapMinimumY: l,
351
+ bitmapMaximumX: u,
352
+ bitmapMaximumY: d
353
+ };
354
+ }
355
+ async function Je({ baseBitmap: e, baseFontSize: t, minimumScaleFactor: n, maskBits: r, maskRowStride: i, maskWidth: a, maskHeight: o, centerX: s, centerY: c, maximumRadius: l, scaleStep: u, strictPixelPadding: d, bitmapKey: f, minimumFontSize: p, rawWord: m, cosineArray: h, sineArray: g, radiusStep: _, maximumAttempts: v, maybeYield: ee }) {
356
+ let y = 1;
357
+ for (; y >= n;) {
358
+ let { runs: n, bitmapWidth: b, bitmapHeight: te, bitmapMinimumX: ne, bitmapMinimumY: re, bitmapMaximumX: ie, bitmapMaximumY: ae } = qe({
359
+ currentBitmap: y === 1 ? e : Fe(e, y),
360
+ strictPixelPadding: d,
361
+ scaleFactor: y,
362
+ baseBitmap: e,
363
+ bitmapKey: f
364
+ }), x = 0, S = 0;
365
+ for (; x < l && S < v;) {
366
+ for (let e = 0; e < h.length; e += 1) {
367
+ S += 1;
368
+ let l = Math.round(s + x * h[e] - b / 2), u = Math.round(c + x * g[e] - te / 2);
369
+ if (!(l < 0 || u < 0 || l + b > a || u + te > o) && je({
370
+ maskBits: r,
371
+ maskRowStride: i,
372
+ maskW: a,
373
+ maskH: o,
374
+ wx: l,
375
+ wy: u,
376
+ runs: n
377
+ })) {
378
+ let { __wcIndex: e, ...s } = m, c = Math.max(p, Math.round(t * y)), d = {
379
+ ...s,
380
+ x: l - a / 2,
381
+ y: u - o / 2,
382
+ fontSize: c,
383
+ width: b,
384
+ height: te,
385
+ angle: 0,
386
+ minX: ne,
387
+ minY: re,
388
+ maxX: ie,
389
+ maxY: ae
390
+ };
391
+ return Me({
392
+ maskBits: r,
393
+ maskRowStride: i,
394
+ maskW: a,
395
+ maskH: o,
396
+ wx: l,
397
+ wy: u,
398
+ runs: n
399
+ }), d;
400
+ }
401
+ }
402
+ x += _, S & 1023 || await ee();
403
+ }
404
+ y *= u, await ee();
405
+ }
406
+ return null;
407
+ }
408
+ async function Ye({ baseBitmap: e, baseFontSize: t, minimumScaleFactor: n, maskBits: r, maskRowStride: i, maskWidth: a, maskHeight: o, centerX: s, centerY: c, maximumRadius: l, scaleStep: u, strictPixelPadding: d, bitmapKey: f, minimumFontSize: p, rawWord: m, maybeYield: h, spiralRadiusStep: g, fallbackSpiralRadiusStep: _ }) {
409
+ return await Je({
410
+ baseBitmap: e,
411
+ baseFontSize: t,
412
+ minimumScaleFactor: n,
413
+ maskBits: r,
414
+ maskRowStride: i,
415
+ maskWidth: a,
416
+ maskHeight: o,
417
+ centerX: s,
418
+ centerY: c,
419
+ maximumRadius: l,
420
+ scaleStep: u,
421
+ strictPixelPadding: d,
422
+ bitmapKey: f,
423
+ minimumFontSize: p,
424
+ rawWord: m,
425
+ cosineArray: Ve,
426
+ sineArray: He,
427
+ radiusStep: g,
428
+ maximumAttempts: 1e4,
429
+ maybeYield: h
430
+ }) || await Je({
431
+ baseBitmap: e,
432
+ baseFontSize: t,
433
+ minimumScaleFactor: n,
434
+ maskBits: r,
435
+ maskRowStride: i,
436
+ maskWidth: a,
437
+ maskHeight: o,
438
+ centerX: s,
439
+ centerY: c,
440
+ maximumRadius: l,
441
+ scaleStep: u,
442
+ strictPixelPadding: d,
443
+ bitmapKey: f,
444
+ minimumFontSize: p,
445
+ rawWord: m,
446
+ cosineArray: Ue,
447
+ sineArray: We,
448
+ radiusStep: _,
449
+ maximumAttempts: 25e3,
450
+ maybeYield: h
451
+ });
452
+ }
453
+ async function Xe({ words: e, proximity: t = 0, svg: n, strictPixelPadding: r, onProgress: i, debugTiming: a = !1 }) {
454
+ let o = z(), s = o(), c = s;
455
+ async function l() {
456
+ o() - c >= 12 && (await new Promise((e) => setTimeout(e, 0)), c = o());
457
+ }
458
+ let u = n.width, d = n.height, f = Math.round(u), p = Math.round(d), m = n.minFontSize, h = Math.min(n.maxFontSize, 100), g = e.map((e) => e.value), _ = Math.min(...g), v = Math.max(...g);
459
+ if (f <= 0 || p <= 0) return [];
460
+ let ee = f + 31 >>> 5, y = new Uint32Array(ee * p), b = document.createElement("canvas"), te = b.getContext("2d", { willReadFrequently: !0 });
461
+ b.width = f, b.height = p;
462
+ let ne = Math.max(f, p), re = Math.floor(f / 2), ie = Math.floor(p / 2), ae = [...e.map((e, t) => ({
463
+ ...e,
464
+ __wcIndex: t,
465
+ id: e.id == null ? `${e.name}__${t}` : e.id
466
+ }))].sort((e, t) => t.value - e.value), x = [];
467
+ for (let e = 0; e < ae.length; e += 1) {
468
+ let a = ae[e], o = x.length, s = Ke({
469
+ value: a.value,
470
+ minimumValue: _,
471
+ maximumValue: v,
472
+ configuredMinimumFontSize: m,
473
+ maximumFontSize: h
474
+ }), c = Re({
475
+ word: a,
476
+ fontSize: s,
477
+ pad: t,
478
+ canvas: b,
479
+ ctx: te,
480
+ svg: n
481
+ }), u = c.key, d = c.bitmap, g = d.w, S = d.h;
482
+ if (g <= 0 || S <= 0) {
483
+ await l();
484
+ continue;
485
+ }
486
+ let oe = await Ye({
487
+ baseBitmap: d,
488
+ baseFontSize: s,
489
+ minimumScaleFactor: Math.max(1 / s, .1),
490
+ maskBits: y,
491
+ maskRowStride: ee,
492
+ maskWidth: f,
493
+ maskHeight: p,
494
+ centerX: re,
495
+ centerY: ie,
496
+ maximumRadius: ne,
497
+ scaleStep: .9,
498
+ strictPixelPadding: r,
499
+ bitmapKey: u,
500
+ minimumFontSize: 1,
501
+ rawWord: a,
502
+ maybeYield: l,
503
+ spiralRadiusStep: 2,
504
+ fallbackSpiralRadiusStep: 1
505
+ });
506
+ if (oe && (x.push(oe), i && x.length > o)) {
507
+ let e = x[x.length - 1];
508
+ i({
509
+ word: e,
510
+ all: x
511
+ });
512
+ }
513
+ await l();
514
+ }
515
+ if (!x.length) return [];
516
+ Ge(x, f, p);
517
+ let S = o() - s;
518
+ return a && typeof console < "u" && console.log && console.log("[vue-data-ui][word-cloud] positionWordsAsync:", `${S.toFixed(2)} ms for ${e.length} words`), x.sort((e, t) => t.fontSize - e.fontSize);
519
+ }
520
+ //#endregion
521
+ //#region src/components/vue-ui-word-cloud.vue
522
+ var Ze = /* @__PURE__ */ e({ default: () => B }), Qe = [
523
+ "id",
524
+ "data-resizing",
525
+ "data-relayout"
526
+ ], $e = ["id"], et = { style: { position: "relative" } }, tt = [
527
+ "aria-describedby",
528
+ "xmlns",
529
+ "viewBox"
530
+ ], nt = ["width", "height"], rt = ["transform"], it = ["transform"], at = [
531
+ "data-a11y-word-index",
532
+ "x",
533
+ "y",
534
+ "width",
535
+ "height",
536
+ "aria-label",
537
+ "onMouseover",
538
+ "onMouseleave",
539
+ "onClick"
540
+ ], ot = [
541
+ "fill",
542
+ "font-weight",
543
+ "font-size",
544
+ "transform",
545
+ "stroke",
546
+ "stroke-width"
547
+ ], st = {
548
+ key: 0,
549
+ style: {
550
+ position: "absolute",
551
+ top: "100%",
552
+ left: "0",
553
+ width: "100%"
554
+ },
555
+ "data-dom-to-png-ignore": "",
556
+ "aria-hidden": "true"
557
+ }, ct = {
558
+ key: 5,
559
+ class: "vue-data-ui-watermark"
560
+ }, lt = {
561
+ key: 6,
562
+ "data-dom-to-png-ignore": "",
563
+ class: "reset-wrapper"
564
+ }, ut = ["innerHTML"], B = /* @__PURE__ */ re({
565
+ __name: "vue-ui-word-cloud",
566
+ props: {
567
+ config: {
568
+ type: Object,
569
+ default() {
570
+ return {};
571
+ }
572
+ },
573
+ dataset: {
574
+ type: [Array, String],
575
+ default() {
576
+ return [];
577
+ }
578
+ }
579
+ },
580
+ emits: ["copyAlt"],
581
+ setup(e, { expose: re, emit: Ee }) {
582
+ let De = O(() => import("./Tooltip-BENq327o.js")), Oe = O(() => import("./BaseIcon-DfLoHNUj.js").then((e) => e.n)), ke = O(() => import("./vue-ui-accordion-Dw4MHKVB.js").then((e) => e.n)), Ae = O(() => import("./DataTable-B--IN22e.js")), je = O(() => import("./PenAndPaper-DqrClVfb.js").then((e) => e.t)), Me = O(() => import("./UserOptions-C1NgoGu6.js").then((e) => e.n)), Ne = O(() => import("./PackageVersion-f0MuYk3R.js").then((e) => e.t)), Pe = O(() => import("./BaseDraggableDialog-4hDW-Rj2.js").then((e) => e.n)), { vue_ui_word_cloud: Fe } = h(), { isThemeValid: Ie, warnInvalidTheme: Le } = b(), I = e, Re = Ee, ze = C({
583
+ get() {
584
+ return !!I.dataset && I.dataset.length;
585
+ },
586
+ set(e) {
587
+ return e;
588
+ }
589
+ }), L = M(a()), Be = M(0), R = M(null), Ve = M(null), He = M(null), Ue = M(0), We = M(0), Ge = M(!1), z = M(null), Ke = M(null), qe = M(!1), Je = M(!1), Ye = M(null), Ze = M(!1), B = M(!1), V = M(null), dt = M({
590
+ x: 0,
591
+ y: 0
592
+ }), ft = M("pointer"), pt = M(!1), H = M(Ct()), U = C(() => H.value.userOptions.useCursorPointer), mt = C(() => t({
593
+ defaultConfig: {
594
+ userOptions: { show: !1 },
595
+ table: { show: !1 },
596
+ useCssAnimation: !1,
597
+ animationDelayMs: 0,
598
+ nodeCategories: {},
599
+ nodeCategoryColors: {},
600
+ style: { chart: {
601
+ backgroundColor: "#99999930",
602
+ words: {
603
+ color: "#6A6A6A",
604
+ usePalette: !1,
605
+ selectedStroke: "#CCCCCC"
606
+ }
607
+ } }
608
+ },
609
+ userConfig: H.value.skeletonConfig ?? {}
610
+ })), { loading: ht, FINAL_DATASET: gt, manualLoading: _t } = _({
611
+ ...we(I),
612
+ FINAL_CONFIG: H,
613
+ prepareConfig: Ct,
614
+ callback: () => {
615
+ Promise.resolve().then(() => {
616
+ J.value.showTable = H.value.table.show, J.value.showTooltip = H.value.style.chart.tooltip.show, J.value.showZoom = H.value.style.chart.zoom.show;
617
+ });
618
+ },
619
+ skeletonDataset: I.config?.skeletonDataset ?? [
620
+ {
621
+ name: "Lorem",
622
+ value: 6
623
+ },
624
+ {
625
+ name: "ipsum",
626
+ value: 3
627
+ },
628
+ {
629
+ name: "dolor",
630
+ value: 1
631
+ },
632
+ {
633
+ name: "sit",
634
+ value: 3
635
+ },
636
+ {
637
+ name: "amet",
638
+ value: 3
639
+ },
640
+ {
641
+ name: "consectetur",
642
+ value: 2
643
+ },
644
+ {
645
+ name: "adipiscing",
646
+ value: 1
647
+ },
648
+ {
649
+ name: "elit",
650
+ value: 2
651
+ },
652
+ {
653
+ name: "Vivamus",
654
+ value: 2
655
+ },
656
+ {
657
+ name: "pulvinar",
658
+ value: 1
659
+ },
660
+ {
661
+ name: "pretium",
662
+ value: 1
663
+ },
664
+ {
665
+ name: "venenatis",
666
+ value: 2
667
+ },
668
+ {
669
+ name: "Donec",
670
+ value: 1
671
+ },
672
+ {
673
+ name: "imperdiet",
674
+ value: 3
675
+ },
676
+ {
677
+ name: "id",
678
+ value: 1
679
+ },
680
+ {
681
+ name: "porttitor",
682
+ value: 2
683
+ },
684
+ {
685
+ name: "tristique",
686
+ value: 1
687
+ },
688
+ {
689
+ name: "Aenean",
690
+ value: 2
691
+ },
692
+ {
693
+ name: "ac",
694
+ value: 5
695
+ },
696
+ {
697
+ name: "commodo",
698
+ value: 2
699
+ },
700
+ {
701
+ name: "justo",
702
+ value: 2
703
+ },
704
+ {
705
+ name: "Vestibulum",
706
+ value: 2
707
+ },
708
+ {
709
+ name: "placerat",
710
+ value: 1
711
+ },
712
+ {
713
+ name: "molestie",
714
+ value: 1
715
+ },
716
+ {
717
+ name: "nisl",
718
+ value: 1
719
+ },
720
+ {
721
+ name: "lacinia",
722
+ value: 2
723
+ },
724
+ {
725
+ name: "nulla",
726
+ value: 1
727
+ },
728
+ {
729
+ name: "posuere",
730
+ value: 2
731
+ },
732
+ {
733
+ name: "quis",
734
+ value: 3
735
+ },
736
+ {
737
+ name: "ullamcorper",
738
+ value: 1
739
+ },
740
+ {
741
+ name: "eu",
742
+ value: 1
743
+ },
744
+ {
745
+ name: "ex",
746
+ value: 1
747
+ },
748
+ {
749
+ name: "vitae",
750
+ value: 3
751
+ },
752
+ {
753
+ name: "facilisis",
754
+ value: 1
755
+ },
756
+ {
757
+ name: "Aliquam",
758
+ value: 1
759
+ },
760
+ {
761
+ name: "erat",
762
+ value: 1
763
+ },
764
+ {
765
+ name: "volutpat",
766
+ value: 1
767
+ },
768
+ {
769
+ name: "Proin",
770
+ value: 1
771
+ },
772
+ {
773
+ name: "nunc",
774
+ value: 1
775
+ },
776
+ {
777
+ name: "felis",
778
+ value: 1
779
+ },
780
+ {
781
+ name: "gravida",
782
+ value: 3
783
+ },
784
+ {
785
+ name: "sed",
786
+ value: 1
787
+ },
788
+ {
789
+ name: "orci",
790
+ value: 1
791
+ },
792
+ {
793
+ name: "Interdum",
794
+ value: 1
795
+ },
796
+ {
797
+ name: "et",
798
+ value: 1
799
+ },
800
+ {
801
+ name: "malesuada",
802
+ value: 1
803
+ },
804
+ {
805
+ name: "fames",
806
+ value: 1
807
+ },
808
+ {
809
+ name: "ante",
810
+ value: 1
811
+ }
812
+ ],
813
+ skeletonConfig: t({
814
+ defaultConfig: H.value,
815
+ userConfig: mt.value
816
+ })
817
+ }), vt = M(yt());
818
+ function yt() {
819
+ return typeof gt.value == "string" ? l(gt.value) : gt.value.map((e, t) => ({
820
+ ...e,
821
+ value: m(e.value)
822
+ }));
823
+ }
824
+ let { userOptionsVisible: bt, setUserOptionsVisibility: xt, keepUserOptionState: St } = S({ config: H.value }), { svgRef: W } = oe({ config: H.value.style.chart.title });
825
+ function Ct() {
826
+ let e = y({
827
+ userConfig: I.config,
828
+ defaultConfig: Fe
829
+ }), t = e.theme;
830
+ if (!t) return e;
831
+ if (!Ie.value(e)) return Le(e), e;
832
+ let n = y({
833
+ userConfig: ce[t] || I.config,
834
+ defaultConfig: e
835
+ }), i = y({
836
+ userConfig: I.config,
837
+ defaultConfig: n
838
+ });
839
+ return {
840
+ ...i,
841
+ customPalette: i.customPalette.length ? i.customPalette : s[t] || r
842
+ };
843
+ }
844
+ let wt = M({
845
+ x: 0,
846
+ y: 0
847
+ });
848
+ function Tt() {
849
+ let e = {
850
+ x: 0,
851
+ y: 0,
852
+ width: Math.max(10, G.value.width),
853
+ height: Math.max(10, G.value.height)
854
+ };
855
+ Zt(e), wt.value = {
856
+ x: e.x + e.width / 2,
857
+ y: e.y + e.height / 2
858
+ }, Yt();
859
+ }
860
+ let Et = ie(() => {
861
+ Rt();
862
+ }, 100), Dt = M(!1);
863
+ Te(() => Dt.value, (e) => {
864
+ e === !1 && (Je.value = !0, Et(), Tt());
865
+ }), Te(() => I.config, (e) => {
866
+ H.value = Ct(), bt.value = !H.value.userOptions.showOnChartHover, jt(), Ue.value += 1, We.value += 1, J.value.showTable = H.value.table.show, J.value.showTooltip = H.value.style.chart.tooltip.show, J.value.showZoom = H.value.style.chart.zoom.show;
867
+ }, { deep: !0 });
868
+ let G = M({
869
+ width: H.value.style.chart.width,
870
+ height: H.value.style.chart.height,
871
+ maxFontSize: H.value.style.chart.words.maxFontSize,
872
+ minFontSize: H.value.style.chart.words.minFontSize,
873
+ bold: H.value.style.chart.words.bold
874
+ }), Ot = ie(() => {
875
+ let { width: e, height: t } = ae({
876
+ chart: R.value,
877
+ title: H.value.style.chart.title.text ? Ve.value : null,
878
+ legend: H.value.style.chart.controls.show ? Ye.value?.$el : null,
879
+ source: He.value
880
+ });
881
+ requestAnimationFrame(async () => {
882
+ G.value.width = Math.max(10, e), G.value.height = Math.max(10, t - 12), await he(), Dt.value = !1;
883
+ });
884
+ }, 100), kt = () => {
885
+ Dt.value = !0, Ot();
886
+ }, K = Se(null), q = Se(null);
887
+ ye(jt);
888
+ let At = C(() => !!H.value.debug);
889
+ function jt() {
890
+ n(I.dataset) ? u({
891
+ componentName: "VueUiWordCloud",
892
+ type: "dataset",
893
+ debug: At.value
894
+ }) : vt.value.forEach((e, t) => {
895
+ d({
896
+ datasetObject: e,
897
+ requiredAttributes: ["name", "value"]
898
+ }).forEach((e) => {
899
+ ze.value = !1, u({
900
+ componentName: "VueUiWordCloud",
901
+ type: "datasetSerieAttribute",
902
+ property: e,
903
+ index: t,
904
+ debug: At.value
905
+ });
906
+ });
907
+ }), n(I.dataset) || (_t.value = H.value.loading), H.value.responsive && (K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect()), K.value = new ResizeObserver(kt), q.value = R.value.parentNode, K.value.observe(q.value)), Tt();
908
+ }
909
+ ve(() => {
910
+ K.value && (q.value && K.value.unobserve(q.value), K.value.disconnect());
911
+ });
912
+ let { isPrinting: Mt, isImaging: Nt, generatePdf: Pt, generateImage: Ft } = g({
913
+ elementId: `wordCloud_${L.value}`,
914
+ fileName: H.value.style.chart.title.text || "vue-ui-word-cloud",
915
+ options: H.value.userOptions.print
916
+ }), J = M({
917
+ showTable: H.value.table.show,
918
+ showTooltip: H.value.style.chart.tooltip.show,
919
+ showZoom: H.value.style.chart.zoom.show
920
+ });
921
+ Te(H, () => {
922
+ J.value.showTable = H.value.table.show, J.value.showTooltip = H.value.style.chart.tooltip.show, J.value.showZoom = H.value.style.chart.zoom.show;
923
+ }, { immediate: !0 });
924
+ function It(e, t, n = "Arial") {
925
+ let r = document.createElement("canvas").getContext("2d");
926
+ return r.font = `${t}px ${H.value.style.chart.words.bold ? "bold" : "normal"} ${n}`, {
927
+ width: r.measureText(e).width + H.value.style.chart.words.proximity,
928
+ height: t
929
+ };
930
+ }
931
+ let Y = M([]), Lt = /* @__PURE__ */ new Map();
932
+ function Rt() {
933
+ let e = [...vt.value].map((e) => e.value), t = Math.max(...e), n = Math.min(...e), i = [...vt.value].map((e, i) => {
934
+ let a = (e.value - n) / (t - n) * (G.value.maxFontSize - G.value.minFontSize) + G.value.minFontSize;
935
+ a = isNaN(a) ? G.value.minFontSize : a;
936
+ let o = It(e.name, a);
937
+ return {
938
+ ...e,
939
+ id: e.id ?? `${e.name}__${i}`,
940
+ fontSize: a,
941
+ width: o.width,
942
+ height: o.height,
943
+ color: H.value.style.chart.words.usePalette ? H.value.customPalette[i] || H.value.customPalette[i % H.value.customPalette.length] || r[i] || r[i % r.length] : H.value.style.chart.words.color
944
+ };
945
+ });
946
+ Y.value.length = 0, Lt.clear(), Xe({
947
+ debugTiming: At.value,
948
+ words: i,
949
+ svg: G.value,
950
+ proximity: H.value.style.chart.words.proximity,
951
+ strictPixelPadding: H.value.strictPixelPadding,
952
+ onProgress: ({ all: e }) => {
953
+ for (let t of e) {
954
+ let e = t.id, n = Lt.get(e);
955
+ if (n === void 0) n = Y.value.length, Lt.set(e, n), Y.value.push({ ...t });
956
+ else {
957
+ let e = Y.value[n];
958
+ e.x = t.x, e.y = t.y, e.width = t.width, e.height = t.height, e.fontSize = t.fontSize, e.minX = t.minX, e.minY = t.minY, e.maxX = t.maxX, e.maxY = t.maxY;
959
+ }
960
+ }
961
+ }
962
+ }), Y.value.sort((e, t) => t.fontSize - e.fontSize), Lt.clear(), Y.value.forEach((e, t) => {
963
+ Lt.set(e.id, t);
964
+ }), qe.value = !0, Je.value = !1;
965
+ }
966
+ let zt = C(() => ({
967
+ head: Y.value.map((e) => ({
968
+ name: e.name,
969
+ color: e.color
970
+ })),
971
+ body: Y.value.map((e) => e.value)
972
+ }));
973
+ function Bt(e = null) {
974
+ he(() => {
975
+ let t = zt.value.head.map((e, t) => [[e.name], [zt.value.body[t]]]), n = c([
976
+ [H.value.style.chart.title.text],
977
+ [H.value.style.chart.title.subtitle.text],
978
+ [[""], [H.value.table.columnNames.value]]
979
+ ].concat(t));
980
+ e ? e(n) : o({
981
+ csvContent: n,
982
+ title: H.value.style.chart.title.text || "vue-ui-word-cloud"
983
+ });
984
+ });
985
+ }
986
+ let X = C(() => {
987
+ let e = [H.value.table.columnNames.series, H.value.table.columnNames.value], t = zt.value.head.map((e, t) => {
988
+ let n = i({
989
+ p: H.value.table.td.prefix,
990
+ v: zt.value.body[t],
991
+ s: H.value.table.td.suffix,
992
+ r: H.value.table.td.roundingValue
993
+ });
994
+ return [{
995
+ color: e.color,
996
+ name: e.name
997
+ }, n];
998
+ }), n = t.map((e) => e.map((e, t) => t === 0 ? e.name : e)), r = {
999
+ th: {
1000
+ backgroundColor: H.value.table.th.backgroundColor,
1001
+ color: H.value.table.th.color,
1002
+ outline: H.value.table.th.outline
1003
+ },
1004
+ td: {
1005
+ backgroundColor: H.value.table.td.backgroundColor,
1006
+ color: H.value.table.td.color,
1007
+ outline: H.value.table.td.outline
1008
+ },
1009
+ breakpoint: H.value.table.responsiveBreakpoint
1010
+ };
1011
+ return {
1012
+ colNames: [H.value.table.columnNames.series, H.value.table.columnNames.value],
1013
+ head: e,
1014
+ body: t,
1015
+ a11yBody: n,
1016
+ config: r
1017
+ };
1018
+ }), Z = M(!1);
1019
+ function Vt(e) {
1020
+ Z.value = e, Be.value += 1;
1021
+ }
1022
+ function Ht() {
1023
+ return Y.value;
1024
+ }
1025
+ function Ut() {
1026
+ J.value.showTable = !J.value.showTable;
1027
+ }
1028
+ function Wt() {
1029
+ J.value.showTooltip = !J.value.showTooltip;
1030
+ }
1031
+ let Q = M(!1);
1032
+ function Gt() {
1033
+ Q.value = !Q.value;
1034
+ }
1035
+ function Kt() {
1036
+ J.value.showZoom = !J.value.showZoom;
1037
+ }
1038
+ let qt = C(() => !Q.value && J.value.showZoom), { viewBox: Jt, resetZoom: Yt, isZoom: Xt, setInitialViewBox: Zt, zoomByFactor: Qt, scale: $t } = se(W, {
1039
+ x: 0,
1040
+ y: 0,
1041
+ width: G.value.width <= 0 ? 10 : G.value.width,
1042
+ height: G.value.height <= 0 ? 10 : G.value.height
1043
+ }, 1, qt);
1044
+ Te(() => I.dataset, () => {
1045
+ vt.value = yt(), H.value.responsive || (Rt(), Tt());
1046
+ }, { immediate: !0 });
1047
+ async function en({ scale: e = 2 } = {}) {
1048
+ if (!R.value) return;
1049
+ let { width: t, height: n } = R.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await te({
1050
+ domElement: R.value,
1051
+ base64: !0,
1052
+ img: !0,
1053
+ scale: e
1054
+ });
1055
+ return {
1056
+ imageUri: i,
1057
+ base64: a,
1058
+ title: H.value.style.chart.title.text,
1059
+ width: t,
1060
+ height: n,
1061
+ aspectRatio: r
1062
+ };
1063
+ }
1064
+ let tn = C(() => {
1065
+ let e = H.value.table.useDialog && !H.value.table.show, t = J.value.showTable;
1066
+ return {
1067
+ component: e ? Pe : ke,
1068
+ title: `${H.value.style.chart.title.text}${H.value.style.chart.title.subtitle.text ? `: ${H.value.style.chart.title.subtitle.text}` : ""}`,
1069
+ props: e ? {
1070
+ backgroundColor: H.value.table.th.backgroundColor,
1071
+ color: H.value.table.th.color,
1072
+ headerColor: H.value.table.th.color,
1073
+ headerBg: H.value.table.th.backgroundColor,
1074
+ isFullscreen: Z.value,
1075
+ fullscreenParent: R.value,
1076
+ forcedWidth: Math.min(500, window.innerWidth * .8),
1077
+ isCursorPointer: U.value
1078
+ } : {
1079
+ hideDetails: !0,
1080
+ config: {
1081
+ open: t,
1082
+ maxHeight: 1e4,
1083
+ body: {
1084
+ backgroundColor: H.value.style.chart.backgroundColor,
1085
+ color: H.value.style.chart.color
1086
+ },
1087
+ head: {
1088
+ backgroundColor: H.value.style.chart.backgroundColor,
1089
+ color: H.value.style.chart.color
1090
+ }
1091
+ }
1092
+ }
1093
+ };
1094
+ });
1095
+ Te(() => J.value.showTable, (e) => {
1096
+ H.value.table.show || (e && H.value.table.useDialog && z.value ? z.value.open() : "close" in z.value && z.value.close());
1097
+ });
1098
+ function nn() {
1099
+ J.value.showTable = !1, Ke.value && Ke.value.setTableIconState(!1);
1100
+ }
1101
+ let rn = C(() => H.value.style.chart.backgroundColor), { exportSvg: an, getSvg: on } = ee({
1102
+ svg: W,
1103
+ title: C(() => H.value.style.chart.title),
1104
+ backgroundColor: rn
1105
+ });
1106
+ async function sn({ isCb: e }) {
1107
+ B.value = !0, await he();
1108
+ try {
1109
+ if (e) {
1110
+ let { blob: e, url: t, text: n, dataUrl: r } = await on();
1111
+ await Promise.resolve(H.value.userOptions.callbacks.svg({
1112
+ blob: e,
1113
+ url: t,
1114
+ text: n,
1115
+ dataUrl: r
1116
+ }));
1117
+ } else await Promise.resolve(an());
1118
+ } finally {
1119
+ B.value = !1;
1120
+ }
1121
+ }
1122
+ function cn(e) {
1123
+ if (e?.stage === "start") {
1124
+ Ze.value = !0;
1125
+ return;
1126
+ }
1127
+ if (e?.stage === "end") {
1128
+ Ze.value = !1;
1129
+ return;
1130
+ }
1131
+ Ft();
1132
+ }
1133
+ function ln() {
1134
+ Qt(1.5, !0);
1135
+ }
1136
+ function un() {
1137
+ Qt(1 / 1.5, !0);
1138
+ }
1139
+ let $ = M(null), dn = M(!1), fn = M(""), pn = M(null);
1140
+ function mn() {
1141
+ $.value = null, V.value = null, Ge.value = !1;
1142
+ }
1143
+ function hn(e, t) {
1144
+ H.value.events.datapointLeave && H.value.events.datapointLeave({
1145
+ datapoint: e,
1146
+ seriesIndex: t
1147
+ }), !(V.value === t && ft.value === "keyboard") && ($.value = null, Ge.value = !1);
1148
+ }
1149
+ function gn(e, t) {
1150
+ H.value.events.datapointClick && H.value.events.datapointClick({
1151
+ datapoint: e,
1152
+ seriesIndex: t
1153
+ });
1154
+ }
1155
+ function _n(e) {
1156
+ if (!W.value || e == null) return;
1157
+ let t = W.value.querySelector(`[data-a11y-word-index="${e}-${L.value}"]`);
1158
+ if (!t) return;
1159
+ let n = t.getBoundingClientRect();
1160
+ dt.value = {
1161
+ x: n.left + n.width / 2,
1162
+ y: n.top + n.height / 2
1163
+ };
1164
+ }
1165
+ function vn(e, t, n = "pointer") {
1166
+ if (H.value.events.datapointEnter && H.value.events.datapointEnter({
1167
+ datapoint: e,
1168
+ seriesIndex: t
1169
+ }), !J.value.showTooltip) return;
1170
+ ft.value = n, V.value = t, $.value = e.id, pn.value = {
1171
+ datapoint: e,
1172
+ config: H.value,
1173
+ seriesIndex: t
1174
+ };
1175
+ let r = H.value.style.chart.tooltip.customFormat;
1176
+ if (dn.value = !1, f(r)) try {
1177
+ let t = r({
1178
+ datapoint: e,
1179
+ config: H.value
1180
+ });
1181
+ typeof t == "string" && (fn.value = t, dn.value = !0);
1182
+ } catch {
1183
+ console.warn("Custom format cannot be applied."), dn.value = !1;
1184
+ }
1185
+ dn.value || (fn.value = `<div dir="auto" style="display:flex; gap:4px; align-items:center; jsutify-content:center;">${`<svg viewBox="0 0 10 10" height="${H.value.style.chart.tooltip.fontSize}"><circle cx="5" cy="5" r="5" fill="${e.color}"/></svg><span>${e.name}:</span><b>${(e.value || 0).toFixed(H.value.style.chart.tooltip.roundingValue)}</b>`}</div>`), n === "keyboard" && he(() => {
1186
+ _n(t);
1187
+ }), Ge.value = !0;
1188
+ }
1189
+ async function yn() {
1190
+ if (Re("copyAlt", {
1191
+ config: H.value,
1192
+ dataset: Y.value
1193
+ }), !H.value.userOptions.callbacks.altCopy) {
1194
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1195
+ return;
1196
+ }
1197
+ await Promise.resolve(H.value.userOptions.callbacks.altCopy({
1198
+ config: H.value,
1199
+ dataset: Y.value
1200
+ }));
1201
+ }
1202
+ function bn() {
1203
+ V.value = null, pt.value = !0;
1204
+ }
1205
+ function xn() {
1206
+ mn(), pt.value = !1;
1207
+ }
1208
+ function Sn(e) {
1209
+ if (!W.value || Q.value || document.activeElement !== W.value || !Y.value.length) return;
1210
+ let t = e.key === "ArrowLeft" || e.key === "ArrowUp", n = e.key === "ArrowRight" || e.key === "ArrowDown", r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1211
+ if (!t && !n && !r && !i) return;
1212
+ if (e.preventDefault(), e.stopPropagation(), i) {
1213
+ mn();
1214
+ return;
1215
+ }
1216
+ if (r) {
1217
+ if (V.value === null) return;
1218
+ let e = Y.value[V.value];
1219
+ if (!e) return;
1220
+ gn(e, V.value);
1221
+ return;
1222
+ }
1223
+ let a = V.value;
1224
+ a === null || a < 0 || a >= Y.value.length ? a = n ? 0 : Y.value.length - 1 : (a += n ? 1 : -1, a < 0 && (a = Y.value.length - 1), a >= Y.value.length && (a = 0));
1225
+ let o = Y.value[a];
1226
+ o && vn(o, a, "keyboard");
1227
+ }
1228
+ let Cn = C(() => ({
1229
+ headers: X.value?.colNames ?? [],
1230
+ rows: X.value?.a11yBody ?? []
1231
+ }));
1232
+ return re({
1233
+ getData: Ht,
1234
+ getImage: en,
1235
+ generateCsv: Bt,
1236
+ generatePdf: Pt,
1237
+ generateImage: Ft,
1238
+ generateSvg: sn,
1239
+ resetZoom: Yt,
1240
+ toggleTable: Ut,
1241
+ toggleTooltip: Wt,
1242
+ toggleAnnotator: Gt,
1243
+ toggleFullscreen: Vt,
1244
+ toggleZoom: Kt,
1245
+ copyAlt: yn
1246
+ }), (e, t) => (j(), E("div", {
1247
+ class: "vue-data-ui-component vue-ui-word-cloud",
1248
+ ref_key: "wordCloudChart",
1249
+ ref: R,
1250
+ id: `wordCloud_${L.value}`,
1251
+ "data-resizing": Dt.value,
1252
+ "data-relayout": Je.value,
1253
+ style: _e(`width: 100%; font-family:${H.value.style.fontFamily};background:${H.value.style.chart.backgroundColor};${H.value.responsive ? "height:100%" : ""}`),
1254
+ onMouseenter: t[3] ||= () => P(xt)(!0),
1255
+ onMouseleave: t[4] ||= () => {
1256
+ P(xt)(!1), pt.value || mn();
1257
+ }
1258
+ }, [
1259
+ D("div", {
1260
+ id: `chart-instructions-${L.value}`,
1261
+ class: "sr-only"
1262
+ }, [D("p", null, Ce(H.value.a11y.translations.keyboardNavigation), 1)], 8, $e),
1263
+ Cn.value?.rows?.length ? (j(), w(x, {
1264
+ key: 0,
1265
+ uid: L.value,
1266
+ head: Cn.value.headers,
1267
+ body: Cn.value.rows,
1268
+ notice: H.value.a11y.translations.tableAvailable,
1269
+ caption: H.value.a11y.translations.tableCaption
1270
+ }, null, 8, [
1271
+ "uid",
1272
+ "head",
1273
+ "body",
1274
+ "notice",
1275
+ "caption"
1276
+ ])) : T("", !0),
1277
+ H.value.userOptions.buttons.annotator ? (j(), w(P(je), {
1278
+ key: 1,
1279
+ svgRef: P(W),
1280
+ backgroundColor: H.value.style.chart.backgroundColor,
1281
+ color: H.value.style.chart.color,
1282
+ active: Q.value,
1283
+ isCursorPointer: U.value,
1284
+ onClose: Gt
1285
+ }, {
1286
+ "annotator-action-close": F(() => [N(e.$slots, "annotator-action-close", {}, void 0, !0)]),
1287
+ "annotator-action-color": F(({ color: t }) => [N(e.$slots, "annotator-action-color", A(k({ color: t })), void 0, !0)]),
1288
+ "annotator-action-draw": F(({ mode: t }) => [N(e.$slots, "annotator-action-draw", A(k({ mode: t })), void 0, !0)]),
1289
+ "annotator-action-undo": F(({ disabled: t }) => [N(e.$slots, "annotator-action-undo", A(k({ disabled: t })), void 0, !0)]),
1290
+ "annotator-action-redo": F(({ disabled: t }) => [N(e.$slots, "annotator-action-redo", A(k({ disabled: t })), void 0, !0)]),
1291
+ "annotator-action-delete": F(({ disabled: t }) => [N(e.$slots, "annotator-action-delete", A(k({ disabled: t })), void 0, !0)]),
1292
+ _: 3
1293
+ }, 8, [
1294
+ "svgRef",
1295
+ "backgroundColor",
1296
+ "color",
1297
+ "active",
1298
+ "isCursorPointer"
1299
+ ])) : T("", !0),
1300
+ H.value.style.chart.title.text ? (j(), E("div", {
1301
+ key: 2,
1302
+ ref_key: "chartTitle",
1303
+ ref: Ve,
1304
+ style: "width:100%;background:transparent;padding-bottom:24px"
1305
+ }, [(j(), w(ne, {
1306
+ key: `title_${Ue.value}`,
1307
+ config: {
1308
+ title: { ...H.value.style.chart.title },
1309
+ subtitle: { ...H.value.style.chart.title.subtitle }
1310
+ }
1311
+ }, null, 8, ["config"]))], 512)) : T("", !0),
1312
+ H.value.userOptions.show && ze.value && (P(St) || P(bt)) ? (j(), w(P(Me), {
1313
+ ref_key: "userOptionsRef",
1314
+ ref: Ke,
1315
+ key: `user_option_${Be.value}`,
1316
+ backgroundColor: H.value.style.chart.backgroundColor,
1317
+ color: H.value.style.chart.color,
1318
+ isPrinting: P(Mt),
1319
+ isImaging: P(Nt),
1320
+ uid: L.value,
1321
+ hasPdf: H.value.userOptions.buttons.pdf,
1322
+ hasXls: H.value.userOptions.buttons.csv,
1323
+ hasImg: H.value.userOptions.buttons.img,
1324
+ hasSvg: H.value.userOptions.buttons.svg,
1325
+ hasTable: H.value.userOptions.buttons.table,
1326
+ hasFullscreen: H.value.userOptions.buttons.fullscreen,
1327
+ hasAltCopy: H.value.userOptions.buttons.altCopy,
1328
+ isFullscreen: Z.value,
1329
+ titles: { ...H.value.userOptions.buttonTitles },
1330
+ chartElement: R.value,
1331
+ position: H.value.userOptions.position,
1332
+ hasTooltip: H.value.style.chart.tooltip.show && H.value.userOptions.buttons.tooltip,
1333
+ isTooltip: J.value.showTooltip,
1334
+ hasAnnotator: H.value.userOptions.buttons.annotator,
1335
+ isAnnotation: Q.value,
1336
+ callbacks: H.value.userOptions.callbacks,
1337
+ printScale: H.value.userOptions.print.scale,
1338
+ tableDialog: H.value.table.useDialog,
1339
+ hasZoom: H.value.userOptions.buttons.zoom,
1340
+ isZoom: J.value.showZoom,
1341
+ isCursorPointer: U.value,
1342
+ onToggleFullscreen: Vt,
1343
+ onGeneratePdf: P(Pt),
1344
+ onGenerateCsv: Bt,
1345
+ onGenerateImage: cn,
1346
+ onGenerateSvg: sn,
1347
+ onToggleTable: Ut,
1348
+ onToggleTooltip: Wt,
1349
+ onToggleAnnotator: Gt,
1350
+ onToggleZoom: Kt,
1351
+ onCopyAlt: yn,
1352
+ style: _e({ visibility: P(St) ? P(bt) ? "visible" : "hidden" : "visible" })
1353
+ }, de({ _: 2 }, [
1354
+ e.$slots.menuIcon ? {
1355
+ name: "menuIcon",
1356
+ fn: F(({ isOpen: t, color: n }) => [N(e.$slots, "menuIcon", A(k({
1357
+ isOpen: t,
1358
+ color: n
1359
+ })), void 0, !0)]),
1360
+ key: "0"
1361
+ } : void 0,
1362
+ e.$slots.optionTooltip ? {
1363
+ name: "optionTooltip",
1364
+ fn: F(() => [N(e.$slots, "optionTooltip", {}, void 0, !0)]),
1365
+ key: "1"
1366
+ } : void 0,
1367
+ e.$slots.optionPdf ? {
1368
+ name: "optionPdf",
1369
+ fn: F(() => [N(e.$slots, "optionPdf", {}, void 0, !0)]),
1370
+ key: "2"
1371
+ } : void 0,
1372
+ e.$slots.optionCsv ? {
1373
+ name: "optionCsv",
1374
+ fn: F(() => [N(e.$slots, "optionCsv", {}, void 0, !0)]),
1375
+ key: "3"
1376
+ } : void 0,
1377
+ e.$slots.optionImg ? {
1378
+ name: "optionImg",
1379
+ fn: F(() => [N(e.$slots, "optionImg", {}, void 0, !0)]),
1380
+ key: "4"
1381
+ } : void 0,
1382
+ e.$slots.optionSvg ? {
1383
+ name: "optionSvg",
1384
+ fn: F(() => [N(e.$slots, "optionSvg", {}, void 0, !0)]),
1385
+ key: "5"
1386
+ } : void 0,
1387
+ e.$slots.optionTable ? {
1388
+ name: "optionTable",
1389
+ fn: F(() => [N(e.$slots, "optionTable", {}, void 0, !0)]),
1390
+ key: "6"
1391
+ } : void 0,
1392
+ e.$slots.optionFullscreen ? {
1393
+ name: "optionFullscreen",
1394
+ fn: F(({ toggleFullscreen: t, isFullscreen: n }) => [N(e.$slots, "optionFullscreen", A(k({
1395
+ toggleFullscreen: t,
1396
+ isFullscreen: n
1397
+ })), void 0, !0)]),
1398
+ key: "7"
1399
+ } : void 0,
1400
+ e.$slots.optionAnnotator ? {
1401
+ name: "optionAnnotator",
1402
+ fn: F(({ toggleAnnotator: t, isAnnotator: n }) => [N(e.$slots, "optionAnnotator", A(k({
1403
+ toggleAnnotator: t,
1404
+ isAnnotator: n
1405
+ })), void 0, !0)]),
1406
+ key: "8"
1407
+ } : void 0,
1408
+ e.$slots.optionZoom ? {
1409
+ name: "optionZoom",
1410
+ fn: F(({ toggleZoom: t, isZoomLocked: n }) => [N(e.$slots, "optionZoom", A(k({
1411
+ toggleZoom: t,
1412
+ isZoomLocked: n
1413
+ })), void 0, !0)]),
1414
+ key: "9"
1415
+ } : void 0,
1416
+ e.$slots.optionAltCopy ? {
1417
+ name: "optionAltCopy",
1418
+ fn: F(({ altCopy: t }) => [N(e.$slots, "optionAltCopy", A(k({ altCopy: t })), void 0, !0)]),
1419
+ key: "10"
1420
+ } : void 0,
1421
+ e.$slots["custom-menu-before"] ? {
1422
+ name: "custom-menu-before",
1423
+ fn: F(() => [N(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1424
+ key: "11"
1425
+ } : void 0,
1426
+ e.$slots["custom-menu-after"] ? {
1427
+ name: "custom-menu-after",
1428
+ fn: F(() => [N(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1429
+ key: "12"
1430
+ } : void 0
1431
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasFullscreen.hasAltCopy.isFullscreen.titles.chartElement.position.hasTooltip.isTooltip.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.hasZoom.isZoom.isCursorPointer.onGeneratePdf.style".split("."))) : T("", !0),
1432
+ H.value.style.chart.controls.position === "top" && H.value.style.chart.controls.show && !P(ht) ? (j(), w(le, {
1433
+ key: 4,
1434
+ ref_key: "zoomControls",
1435
+ ref: Ye,
1436
+ config: H.value,
1437
+ scale: P($t),
1438
+ isFullscreen: Z.value,
1439
+ isCursorPointer: U.value,
1440
+ onZoomIn: ln,
1441
+ onZoomOut: un,
1442
+ onResetZoom: t[0] ||= (e) => P(Yt)(!0)
1443
+ }, null, 8, [
1444
+ "config",
1445
+ "scale",
1446
+ "isFullscreen",
1447
+ "isCursorPointer"
1448
+ ])) : T("", !0),
1449
+ D("div", et, [(j(), E("svg", {
1450
+ ref_key: "svgRef",
1451
+ ref: W,
1452
+ class: ge({
1453
+ "vue-data-ui-fullscreen--on": Z.value,
1454
+ "vue-data-ui-fulscreen--off": !Z.value
1455
+ }),
1456
+ "aria-describedby": `chart-instructions-${L.value}`,
1457
+ xmlns: P(p),
1458
+ viewBox: `${P(Jt).x} ${P(Jt).y} ${P(Jt).width} ${P(Jt).height}`,
1459
+ style: "overflow:hidden;background:transparent;display:block",
1460
+ tabindex: "0",
1461
+ onFocus: bn,
1462
+ onBlur: xn,
1463
+ onKeydown: Sn
1464
+ }, [
1465
+ pe(P(Ne)),
1466
+ e.$slots["chart-background"] ? (j(), E("foreignObject", {
1467
+ key: 0,
1468
+ x: 0,
1469
+ y: 0,
1470
+ width: G.value.width <= 0 ? 10 : G.value.width,
1471
+ height: G.value.height <= 0 ? 10 : G.value.height,
1472
+ style: { pointerEvents: "none" }
1473
+ }, [N(e.$slots, "chart-background", {}, void 0, !0)], 8, nt)) : T("", !0),
1474
+ D("g", {
1475
+ transform: `translate(${wt.value.x}, ${wt.value.y})`,
1476
+ class: ge({ "wc-finalized": qe.value })
1477
+ }, [(j(!0), E(ue, null, be(Y.value, (e, t) => (j(), E("g", {
1478
+ key: e.id,
1479
+ class: "vue-ui-word-cloud-word",
1480
+ transform: `translate(${e.x}, ${e.y})`
1481
+ }, [e.minX === void 0 ? T("", !0) : (j(), E("rect", {
1482
+ key: 0,
1483
+ "data-a11y-word-index": `${t}-${L.value}`,
1484
+ x: e.minX,
1485
+ y: e.minY * 1.25,
1486
+ width: e.maxX - e.minX,
1487
+ height: e.maxY - e.minY,
1488
+ fill: "transparent",
1489
+ "pointer-events": "visiblePainted",
1490
+ "aria-label": `${e.name}: ${(e.value || 0).toFixed(H.value.style.chart.tooltip.roundingValue)}`,
1491
+ onMouseover: (n) => vn(e, t),
1492
+ onMouseleave: (n) => hn(e, t),
1493
+ onClick: (n) => gn(e, t)
1494
+ }, null, 40, at)), D("text", {
1495
+ fill: e.color,
1496
+ "font-weight": H.value.style.chart.words.bold ? "bold" : "normal",
1497
+ x: 0,
1498
+ y: 0,
1499
+ "font-size": e.fontSize,
1500
+ transform: `translate(${e.width / 2}, ${e.height / 2})`,
1501
+ "text-anchor": "middle",
1502
+ "dominant-baseline": "central",
1503
+ "paint-order": "stroke fill",
1504
+ stroke: !$.value || $.value === e.id ? H.value.style.chart.words.selectedStroke : void 0,
1505
+ "stroke-width": e.height * .05,
1506
+ "stroke-linecap": "round",
1507
+ "stroke-linejoin": "round",
1508
+ style: _e(`
1509
+ pointer-events:none;
1510
+ fill-opacity:${!$.value || $.value === e.id || !qe.value ? 1 : H.value.style.chart.words.hoverOpacity} !important;
1511
+ `)
1512
+ }, Ce(e.name), 13, ot)], 8, it))), 128))], 10, rt),
1513
+ N(e.$slots, "svg", { svg: {
1514
+ ...G.value,
1515
+ isPrintingImg: P(Mt) || P(Nt) || Ze.value,
1516
+ isPrintingSvg: B.value
1517
+ } }, void 0, !0)
1518
+ ], 42, tt)), e.$slots.hint ? (j(), E("div", st, [N(e.$slots, "hint", A(k({
1519
+ hint: H.value.a11y.translations.keyboardNavigation,
1520
+ isVisible: pt.value
1521
+ })), void 0, !0)])) : T("", !0)]),
1522
+ e.$slots.watermark ? (j(), E("div", ct, [N(e.$slots, "watermark", A(k({ isPrinting: P(Mt) || P(Nt) || Ze.value || B.value })), void 0, !0)])) : T("", !0),
1523
+ P(Xt) ? (j(), E("div", lt, [N(e.$slots, "reset-action", { reset: P(Yt) }, void 0, !0)])) : T("", !0),
1524
+ H.value.style.chart.controls.position === "bottom" && H.value.style.chart.controls.show && !P(ht) ? (j(), w(le, {
1525
+ key: 7,
1526
+ ref_key: "zoomControls",
1527
+ ref: Ye,
1528
+ config: H.value,
1529
+ scale: P($t),
1530
+ isFullscreen: Z.value,
1531
+ isCursorPointer: U.value,
1532
+ onZoomIn: ln,
1533
+ onZoomOut: un,
1534
+ onResetZoom: t[1] ||= (e) => P(Yt)(!0)
1535
+ }, null, 8, [
1536
+ "config",
1537
+ "scale",
1538
+ "isFullscreen",
1539
+ "isCursorPointer"
1540
+ ])) : T("", !0),
1541
+ pe(P(De), {
1542
+ teleportTo: H.value.style.chart.tooltip.teleportTo,
1543
+ show: J.value.showTooltip && Ge.value,
1544
+ backgroundColor: H.value.style.chart.tooltip.backgroundColor,
1545
+ color: H.value.style.chart.tooltip.color,
1546
+ fontSize: H.value.style.chart.tooltip.fontSize,
1547
+ borderRadius: H.value.style.chart.tooltip.borderRadius,
1548
+ borderColor: H.value.style.chart.tooltip.borderColor,
1549
+ borderWidth: H.value.style.chart.tooltip.borderWidth,
1550
+ backgroundOpacity: H.value.style.chart.tooltip.backgroundOpacity,
1551
+ position: H.value.style.chart.tooltip.position,
1552
+ offsetX: H.value.style.chart.tooltip.offsetX,
1553
+ offsetY: H.value.style.chart.tooltip.offsetY,
1554
+ parent: R.value,
1555
+ content: fn.value,
1556
+ isCustom: dn.value,
1557
+ isFullscreen: Z.value,
1558
+ smooth: H.value.style.chart.tooltip.smooth,
1559
+ backdropFilter: H.value.style.chart.tooltip.backdropFilter,
1560
+ smoothForce: H.value.style.chart.tooltip.smoothForce,
1561
+ smoothSnapThreshold: H.value.style.chart.tooltip.smoothSnapThreshold,
1562
+ isA11yMode: ft.value === "keyboard",
1563
+ a11yPosition: dt.value
1564
+ }, {
1565
+ "tooltip-before": F(() => [N(e.$slots, "tooltip-before", A(k({ ...pn.value })), void 0, !0)]),
1566
+ tooltip: F(() => [N(e.$slots, "tooltip", A(k({ ...pn.value })), void 0, !0)]),
1567
+ "tooltip-after": F(() => [N(e.$slots, "tooltip-after", A(k({ ...pn.value })), void 0, !0)]),
1568
+ _: 3
1569
+ }, 8, [
1570
+ "teleportTo",
1571
+ "show",
1572
+ "backgroundColor",
1573
+ "color",
1574
+ "fontSize",
1575
+ "borderRadius",
1576
+ "borderColor",
1577
+ "borderWidth",
1578
+ "backgroundOpacity",
1579
+ "position",
1580
+ "offsetX",
1581
+ "offsetY",
1582
+ "parent",
1583
+ "content",
1584
+ "isCustom",
1585
+ "isFullscreen",
1586
+ "smooth",
1587
+ "backdropFilter",
1588
+ "smoothForce",
1589
+ "smoothSnapThreshold",
1590
+ "isA11yMode",
1591
+ "a11yPosition"
1592
+ ]),
1593
+ e.$slots.source ? (j(), E("div", {
1594
+ key: 8,
1595
+ ref_key: "source",
1596
+ ref: He,
1597
+ dir: "auto"
1598
+ }, [N(e.$slots, "source", {}, void 0, !0)], 512)) : T("", !0),
1599
+ ze.value && H.value.userOptions.buttons.table ? (j(), w(xe(tn.value.component), me({ key: 9 }, tn.value.props, {
1600
+ ref_key: "tableUnit",
1601
+ ref: z,
1602
+ onClose: nn
1603
+ }), de({
1604
+ content: F(() => [(j(), w(P(Ae), {
1605
+ key: `table_${We.value}`,
1606
+ colNames: X.value.colNames,
1607
+ head: X.value.head,
1608
+ body: X.value.body,
1609
+ config: X.value.config,
1610
+ title: H.value.table.useDialog ? "" : tn.value.title,
1611
+ withCloseButton: !H.value.table.useDialog,
1612
+ isCursorPointer: U.value,
1613
+ onClose: nn
1614
+ }, {
1615
+ th: F(({ th: e }) => [D("div", {
1616
+ innerHTML: e,
1617
+ style: {
1618
+ display: "flex",
1619
+ "align-items": "center"
1620
+ }
1621
+ }, null, 8, ut)]),
1622
+ td: F(({ td: e }) => [fe(Ce(e.name || e), 1)]),
1623
+ _: 1
1624
+ }, 8, [
1625
+ "colNames",
1626
+ "head",
1627
+ "body",
1628
+ "config",
1629
+ "title",
1630
+ "withCloseButton",
1631
+ "isCursorPointer"
1632
+ ]))]),
1633
+ _: 2
1634
+ }, [H.value.table.useDialog ? {
1635
+ name: "title",
1636
+ fn: F(() => [fe(Ce(tn.value.title), 1)]),
1637
+ key: "0"
1638
+ } : void 0, H.value.table.useDialog ? {
1639
+ name: "actions",
1640
+ fn: F(() => [D("button", {
1641
+ tabindex: "0",
1642
+ class: "vue-ui-user-options-button",
1643
+ onClick: t[2] ||= (e) => Bt(H.value.userOptions.callbacks.csv),
1644
+ style: _e({ cursor: U.value ? "pointer" : "default" })
1645
+ }, [pe(P(Oe), {
1646
+ name: "fileCsv",
1647
+ stroke: tn.value.props.color
1648
+ }, null, 8, ["stroke"])], 4)]),
1649
+ key: "1"
1650
+ } : void 0]), 1040)) : T("", !0),
1651
+ N(e.$slots, "skeleton", {}, () => [P(ht) ? (j(), w(v, { key: 0 })) : T("", !0)], !0)
1652
+ ], 44, Qe));
1653
+ }
1654
+ }, [["__scopeId", "data-v-3bdb2c9b"]]);
1655
+ //#endregion
1656
+ export { Ze as n, B as t };