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,461 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { G as t, H as n, bt as r, t as i } from "./lib-DUeYQsS0.js";
3
+ import { t as a } from "./BaseIcon-DfLoHNUj.js";
4
+ import { t as o } from "./ColorPicker-Bjwxnvfh.js";
5
+ import { computed as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createVNode as d, guardReactiveProps as f, nextTick as p, normalizeClass as m, normalizeProps as h, normalizeStyle as g, onBeforeUnmount as ee, onMounted as te, openBlock as _, ref as v, renderSlot as y, toDisplayString as ne, unref as re, vModelText as ie, watch as b, withCtx as ae, withDirectives as oe } from "vue";
6
+ //#region src/atoms/PenAndPaper.vue
7
+ var se = /* @__PURE__ */ e({ default: () => x }), ce = ["disabled"], x = {
8
+ __name: "PenAndPaper",
9
+ props: {
10
+ svgRef: {
11
+ type: [
12
+ Object,
13
+ null,
14
+ void 0
15
+ ],
16
+ required: !0
17
+ },
18
+ color: {
19
+ type: String,
20
+ default: "#2D353C"
21
+ },
22
+ backgroundColor: {
23
+ type: String,
24
+ default: "#FFFFFF"
25
+ },
26
+ active: {
27
+ type: Boolean,
28
+ default: !1
29
+ },
30
+ scale: {
31
+ type: Number,
32
+ default: 1
33
+ },
34
+ isCursorPointer: {
35
+ type: Boolean,
36
+ default: !1
37
+ }
38
+ },
39
+ emits: ["close"],
40
+ setup(e, { emit: se }) {
41
+ let x = e, le = se, S = v([]), C = v([]), w = v(x.color), T = v(2), E = v(!1), D = v(""), O = v(null), k = v(null), A = v(null), j = v(null), M = v(`arrow-${n()}`), ue = v(`arrow-def-${n()}`), N = v(!1), P = v(null), F = v({
42
+ x: 0,
43
+ y: 0
44
+ }), I = v([""]), L = v({
45
+ row: 0,
46
+ col: 0
47
+ }), R = v(16), z = v(!1), de = [
48
+ "arrow",
49
+ "text",
50
+ "line",
51
+ "draw"
52
+ ], B = v(0), V = s(() => de[B.value]), fe = {
53
+ arrow: "plotArrow",
54
+ text: "text",
55
+ line: "plotLine",
56
+ draw: "annotator"
57
+ }, pe = v("url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAABg2lDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TpSIVh2YQcchQnSyIijhKFYtgobQVWnUwufQLmjQkKS6OgmvBwY/FqoOLs64OroIg+AHi6OSk6CIl/i8ptIjx4Lgf7+497t4BQrPKNKtnAtB020wn4lIuvyqFXhGGiAhCiMnMMpKZxSx8x9c9Any9i/Es/3N/jgG1YDEgIBHPMcO0iTeIZzZtg/M+scjKskp8Tjxu0gWJH7muePzGueSywDNFM5ueJxaJpVIXK13MyqZGPE0cVTWd8oWcxyrnLc5atc7a9+QvDBf0lQzXaY4ggSUkkYIEBXVUUIWNGK06KRbStB/38Q+7/hS5FHJVwMixgBo0yK4f/A9+d2sVpya9pHAc6H1xnI9RILQLtBqO833sOK0TIPgMXOkdf60JzH6S3uho0SNgcBu4uO5oyh5wuQMMPRmyKbtSkKZQLALvZ/RNeSByC/Sveb2193H6AGSpq+Ub4OAQGCtR9rrPu/u6e/v3TLu/H5C7crM1WjgWAAAABmJLR0QAqwB5AHWF+8OUAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5gwUExIUagzGcQAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAABfSURBVBjTldAxDoNQDIPhL0+q1L33P1AvAhN7xfK6WAgoLfSfrNiykpQtE+7RLzx2vgF9D3o8lWDmn1QVVMP0LZQGmNtqp1/cmou0XHdG/+sYeGZwFBqPCub8rkcvvAGvsi1VYarR8wAAAABJRU5ErkJggg==') 5 5, auto");
58
+ function me() {
59
+ B.value + 1 >= de.length ? B.value = 0 : B.value += 1;
60
+ }
61
+ function H(e) {
62
+ if (!O.value || V.value !== "text" || N.value) return;
63
+ let { x: t, y: n } = K(e);
64
+ F.value = {
65
+ x: t,
66
+ y: n
67
+ }, I.value = [""], L.value = {
68
+ row: 0,
69
+ col: 0
70
+ }, z.value = !1;
71
+ let r = document.createElementNS("http://www.w3.org/2000/svg", "text");
72
+ r.setAttribute("x", t), r.setAttribute("y", n), r.setAttribute("fill", w.value), r.setAttribute("font-size", R.value * x.scale), r.setAttribute("font-family", "sans-serif"), r.setAttribute("class", "vue-data-ui-doodle"), r.setAttribute("dominant-baseline", "hanging"), r.setAttribute("pointer-events", "all");
73
+ let i = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
74
+ i.setAttribute("x", t), i.setAttribute("dy", "0"), i.textContent = "", r.appendChild(i), r.style.pointerEvents = "none", r.style.userSelect = "none", O.value.appendChild(r), P.value = r, N.value = !0, window.addEventListener("keydown", he), window.addEventListener("mousedown", ye, !0), ge(), ve();
75
+ }
76
+ function he(e) {
77
+ if (!N.value) return;
78
+ let { row: t, col: n } = L.value, r = I.value.slice(), i = !1;
79
+ if (e.key === "Enter") {
80
+ let a = r[t], o = a.slice(0, n), s = a.slice(n);
81
+ r.splice(t, 1, o, s), t += 1, n = 0, i = !0, e.preventDefault();
82
+ } else if (e.key === "Backspace") {
83
+ if (n > 0) r[t] = r[t].slice(0, n - 1) + r[t].slice(n), --n, i = !0;
84
+ else if (t > 0) {
85
+ let e = r[t - 1].length;
86
+ r[t - 1] += r[t], r.splice(t, 1), --t, n = e, i = !0;
87
+ }
88
+ e.preventDefault();
89
+ } else if (e.key === "Delete") n < r[t].length ? (r[t] = r[t].slice(0, n) + r[t].slice(n + 1), i = !0) : t < r.length - 1 && (r[t] += r[t + 1], r.splice(t + 1, 1), i = !0), e.preventDefault();
90
+ else if (e.key === "ArrowLeft") n > 0 ? --n : t > 0 && (--t, n = r[t].length), i = !0, e.preventDefault();
91
+ else if (e.key === "ArrowRight") n < r[t].length ? n += 1 : t < r.length - 1 && (t += 1, n = 0), i = !0, e.preventDefault();
92
+ else if (e.key === "ArrowUp") t > 0 && (--t, n = Math.min(n, r[t].length), i = !0), e.preventDefault();
93
+ else if (e.key === "ArrowDown") t < r.length - 1 && (t += 1, n = Math.min(n, r[t].length), i = !0), e.preventDefault();
94
+ else if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) r[t] = r[t].slice(0, n) + e.key + r[t].slice(n), n += 1, i = !0, e.preventDefault();
95
+ else if (e.key === "Escape") {
96
+ be(!0);
97
+ return;
98
+ } else e.key === "Tab" && e.preventDefault();
99
+ i && (I.value = r, L.value = {
100
+ row: t,
101
+ col: n
102
+ }, r.some((e) => e.length > 0) && !z.value && P.value && (S.value.push(P.value), C.value = [], z.value = !0), ge(), ve());
103
+ }
104
+ function ge() {
105
+ let e = P.value, { x: t } = F.value;
106
+ for (; e.firstChild;) e.removeChild(e.firstChild);
107
+ I.value.forEach((n, r) => {
108
+ let i = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
109
+ i.setAttribute("x", t), i.setAttribute("dy", r === 0 ? "0" : `${R.value * 1.2 * x.scale}`), i.textContent = n.length ? n : "​", e.appendChild(i);
110
+ });
111
+ }
112
+ let U = v(null);
113
+ function W() {
114
+ U.value !== null && (clearInterval(U.value), U.value = null);
115
+ }
116
+ function _e(e) {
117
+ W();
118
+ let t = !0;
119
+ e.style.opacity = "1", U.value = setInterval(() => {
120
+ if (!O.value || !e || !O.value.contains(e)) {
121
+ W();
122
+ return;
123
+ }
124
+ t = !t, e.style.opacity = t ? "1" : "0";
125
+ }, 500);
126
+ }
127
+ function ve() {
128
+ let e = O.value?.querySelector(".vue-data-ui-svg-caret");
129
+ e && O.value && O.value.removeChild(e);
130
+ let t = P.value;
131
+ if (!t || !O.value) return;
132
+ let { x: n, y: r } = F.value, { row: i, col: a } = L.value, o = R.value * x.scale, s = t.childNodes[i];
133
+ if (!s) return;
134
+ let c = s.textContent.slice(0, a);
135
+ c.endsWith(" ") && (c += "\xA0");
136
+ let l = document.createElementNS("http://www.w3.org/2000/svg", "text");
137
+ l.setAttribute("x", n), l.setAttribute("y", r), l.setAttribute("font-size", o), l.setAttribute("font-family", "sans-serif"), l.textContent = c || "", O.value.appendChild(l);
138
+ let u = l.getBBox();
139
+ O.value.removeChild(l);
140
+ let d = r + i * o * 1.2, f = n + u.width, p = document.createElementNS("http://www.w3.org/2000/svg", "rect");
141
+ p.setAttribute("x", f), p.setAttribute("y", d), p.setAttribute("rx", 1), p.setAttribute("width", 2), p.setAttribute("height", o), p.setAttribute("fill", w.value), p.setAttribute("class", "vue-data-ui-svg-caret"), O.value.appendChild(p), _e(p);
142
+ }
143
+ function ye(e) {
144
+ if (P.value && !P.value.contains(e.target)) {
145
+ let e = P.value.children;
146
+ e.length === 1 && (e[0].textContent === "" || e[0].textContent === "​") && P.value.remove(), be(!1);
147
+ }
148
+ }
149
+ function be(e = !1) {
150
+ window.removeEventListener("keydown", he), window.removeEventListener("mousedown", ye, !0), W();
151
+ let t = O.value?.querySelector(".vue-data-ui-svg-caret");
152
+ t && O.value && O.value.removeChild(t);
153
+ let n = P.value?.children, r = !1;
154
+ if (n && n.length === 1) {
155
+ let e = n[0].textContent;
156
+ r = !e || e === "​";
157
+ }
158
+ (e || r) && P.value && O.value && O.value.contains(P.value) && O.value.removeChild(P.value), N.value = !1, P.value = null, I.value = [""], L.value = {
159
+ row: 0,
160
+ col: 0
161
+ }, z.value = !1;
162
+ }
163
+ let G = s(() => r(x.color, .6));
164
+ function xe() {
165
+ if (!O.value) return;
166
+ let e = O.value.querySelector(".vue-data-ui-mask");
167
+ if (e && O.value.removeChild(e), x.active) {
168
+ let e = document.createElementNS("http://www.w3.org/2000/svg", "rect");
169
+ e.setAttribute("class", "vue-data-ui-mask"), e.setAttribute("width", "100%"), e.setAttribute("height", "100%"), e.setAttribute("fill", "transparent"), e.setAttribute("pointer-events", "all"), O.value.insertBefore(e, O.value.firstChild);
170
+ }
171
+ }
172
+ function K(e) {
173
+ let t = x.svgRef;
174
+ if (!t) return {
175
+ x: 0,
176
+ y: 0
177
+ };
178
+ let n = t.createSVGPoint(), r = e.touches?.length || e.changedTouches?.length ? e.touches?.[0] || e.changedTouches?.[0] : null, i = r ? r.clientX : e.clientX, a = r ? r.clientY : e.clientY;
179
+ n.x = i, n.y = a;
180
+ let o = t.getScreenCTM()?.inverse();
181
+ return o ? n.matrixTransform(o) : {
182
+ x: 0,
183
+ y: 0
184
+ };
185
+ }
186
+ function Se(e) {
187
+ let t = e.trim().split(/\s+/);
188
+ if (t.length < 4) return e;
189
+ let n = t.slice(1).map(Number);
190
+ if (n.length % 2 != 0) return e;
191
+ let r = Ce(n), i = [`M ${r[0]} ${r[1]}`];
192
+ for (let e = 2; e < r.length - 2; e += 2) {
193
+ let t = r[e - 2], n = r[e - 1], a = r[e], o = r[e + 1], s = (t + a) / 2, c = (n + o) / 2;
194
+ i.push(`Q ${t} ${n} ${s} ${c}`);
195
+ }
196
+ let a = r[r.length - 2], o = r[r.length - 1];
197
+ return i.push(`L ${a} ${o}`), i.join(" ");
198
+ }
199
+ function Ce(e, t = 1) {
200
+ let n = [...e];
201
+ for (let r = 2; r < e.length - 2; r += 2) {
202
+ let i = e[r], a = e[r + 1], o = e[r - 2], s = e[r - 1], c = e[r + 2], l = e[r + 3];
203
+ n[r] = i + t * ((o + c) / 2 - i), n[r + 1] = a + t * ((s + l) / 2 - a);
204
+ }
205
+ return n;
206
+ }
207
+ function we(e) {
208
+ let t = e.trim().split(/\s+/), n = "", r = "", i = null, a = null;
209
+ for (let e = 0; e < t.length; e += 1) {
210
+ let o = t[e];
211
+ if (isNaN(o)) {
212
+ if (r = o, r === "M" || r === "L") i = parseFloat(t[++e]), a = parseFloat(t[++e]), n += `${r}${i} ${a}`;
213
+ else if (r === "Q") {
214
+ let r = parseFloat(t[++e]), o = parseFloat(t[++e]), s = parseFloat(t[++e]), c = parseFloat(t[++e]);
215
+ r === i && o === a ? n += `t${s - i} ${c - a}` : n += `q${r - i} ${o - a} ${s - i} ${c - a}`, i = s, a = c;
216
+ }
217
+ } else {
218
+ let s = parseFloat(o), c = parseFloat(t[++e]);
219
+ if (r === "L") {
220
+ let e = s - i, t = c - a;
221
+ e === 0 ? n += `v${t}` : t === 0 ? n += `h${e}` : n += `l${e} ${t}`, i = s, a = c;
222
+ } else if (r === "Q") {
223
+ let r = s, o = c, l = parseFloat(t[++e]), u = parseFloat(t[++e]);
224
+ r === i && o === a ? n += `t${l - i} ${u - a}` : n += `q${r - i} ${o - a} ${l - i} ${u - a}`, i = l, a = u;
225
+ }
226
+ }
227
+ }
228
+ return n;
229
+ }
230
+ function q(e) {
231
+ if (e.cancelable && e.preventDefault(), V.value !== "draw" || !x.active || !O.value) return;
232
+ E.value = !0;
233
+ let { x: t, y: n } = K(e);
234
+ j.value = {
235
+ x: t,
236
+ y: n
237
+ }, D.value = `M ${t} ${n}`, k.value = document.createElementNS(i, "path"), k.value.setAttribute("stroke", w.value), k.value.setAttribute("stroke-width", T.value * x.scale), k.value.setAttribute("fill", "none"), k.value.setAttribute("stroke-linecap", "round"), k.value.setAttribute("stroke-linejoin", "round"), k.value.setAttribute("class", "vue-data-ui-doodle"), O.value.appendChild(k.value);
238
+ }
239
+ function J(e) {
240
+ if (e.cancelable && e.preventDefault(), !E.value || !O.value || !k.value) return;
241
+ let { x: t, y: n } = K(e);
242
+ D.value += ` ${t} ${n}`, k.value.setAttribute("d", D.value);
243
+ }
244
+ function Te() {
245
+ let e = x.svgRef;
246
+ if (!e) return;
247
+ let t = e.querySelector(`defs#${ue.value}`);
248
+ if (t || (t = document.createElementNS(i, "defs"), t.setAttribute("id", ue.value), e.appendChild(t)), t.querySelector(`#${M.value}`)) return;
249
+ let n = document.createElementNS(i, "marker");
250
+ n.setAttribute("id", M.value), n.setAttribute("markerUnits", "strokeWidth"), n.setAttribute("markerWidth", "6"), n.setAttribute("markerHeight", "6"), n.setAttribute("refX", "4"), n.setAttribute("refY", "3"), n.setAttribute("orient", "auto"), n.setAttribute("viewBox", "0 0 6 6");
251
+ let r = document.createElementNS(i, "path");
252
+ r.setAttribute("d", `M 0 0 L 6 ${6 / 2} L 0 6 z`), r.setAttribute("fill", "context-stroke"), r.setAttribute("stroke", "none"), n.appendChild(r), t.appendChild(n);
253
+ }
254
+ function Y(e) {
255
+ if (e.cancelable && e.preventDefault(), !["line", "arrow"].includes(V.value) || !x.active || !O.value) return;
256
+ V.value === "arrow" && Te(), E.value = !0;
257
+ let { x: t, y: n } = K(e);
258
+ j.value = {
259
+ x: t,
260
+ y: n
261
+ }, A.value = document.createElementNS(i, "line"), A.value.setAttribute("stroke", w.value), A.value.setAttribute("stroke-width", T.value * x.scale), A.value.setAttribute("stroke-linecap", "round"), A.value.setAttribute("class", "vue-data-ui-doodle"), A.value.setAttribute("x1", t), A.value.setAttribute("y1", n), A.value.setAttribute("x2", t), A.value.setAttribute("y2", n), V.value === "arrow" && A.value.setAttribute("marker-end", `url(#${M.value})`), O.value.appendChild(A.value);
262
+ }
263
+ function X(e) {
264
+ if (e.cancelable && e.preventDefault(), !["line", "arrow"].includes(V.value) || !E.value || !O.value || !A.value) return;
265
+ let { x: t, y: n } = K(e);
266
+ A.value.setAttribute("x2", t), A.value.setAttribute("y2", n);
267
+ }
268
+ function Z(e) {
269
+ if (E.value && O.value && A.value) {
270
+ let { x: t, y: n } = K(e);
271
+ A.value.setAttribute("x2", t), A.value.setAttribute("y2", n), S.value.push(A.value), C.value = [], A.value = "";
272
+ }
273
+ E.value = !1;
274
+ }
275
+ function Q(e) {
276
+ if (E.value && O.value && k.value) {
277
+ let { x: t, y: n } = K(e);
278
+ if (j.value && j.value.x === t && j.value.y === n) {
279
+ let e = document.createElementNS("http://www.w3.org/2000/svg", "circle");
280
+ e.setAttribute("cx", t), e.setAttribute("cy", n), e.setAttribute("r", T.value * x.scale / 2), e.setAttribute("fill", w.value), e.setAttribute("class", "vue-data-ui-doodle"), O.value.appendChild(e), S.value.push(e);
281
+ } else {
282
+ let e = k.value;
283
+ e.setAttribute("d", we(Se(D.value))), S.value.push(e);
284
+ }
285
+ C.value = [], k.value = "";
286
+ }
287
+ E.value = !1;
288
+ }
289
+ function Ee() {
290
+ if (S.value.length > 0) {
291
+ let e = S.value.pop();
292
+ C.value.push(e), e === P.value ? be(!0) : O.value && O.value.contains(e) && O.value.removeChild(e);
293
+ }
294
+ }
295
+ function De() {
296
+ if (C.value.length > 0) {
297
+ let e = C.value.pop();
298
+ S.value.push(e), O.value && O.value.appendChild(e);
299
+ }
300
+ }
301
+ function Oe() {
302
+ O.value && (O.value.innerHTML = ""), S.value = [], C.value = [], z.value = !1, xe();
303
+ }
304
+ b(V, (e) => {
305
+ x.active && ($(), ke(), Ae());
306
+ });
307
+ function ke() {
308
+ !x.svgRef || !x.active || (V.value === "draw" ? (x.svgRef.addEventListener("mousedown", q), x.svgRef.addEventListener("mousemove", J), x.svgRef.addEventListener("mouseup", Q), x.svgRef.addEventListener("mouseleave", Q), x.svgRef.addEventListener("touchstart", q, { passive: !1 }), x.svgRef.addEventListener("touchmove", J, { passive: !1 }), x.svgRef.addEventListener("touchend", Q), x.svgRef.addEventListener("touchcancel", Q)) : ["line", "arrow"].includes(V.value) ? (x.svgRef.addEventListener("mousedown", Y), x.svgRef.addEventListener("mousemove", X), x.svgRef.addEventListener("mouseup", Z), x.svgRef.addEventListener("touchstart", Y, { passive: !1 }), x.svgRef.addEventListener("touchmove", X, { passive: !1 }), x.svgRef.addEventListener("touchend", Z), x.svgRef.addEventListener("touchcancel", Z)) : V.value === "text" && (x.svgRef.addEventListener("mousedown", H), x.svgRef.addEventListener("touchstart", H, { passive: !1 })), O.value && (O.value.style.pointerEvents = "auto"));
309
+ }
310
+ function $() {
311
+ x.svgRef && (x.svgRef.removeEventListener("mousedown", q), x.svgRef.removeEventListener("mousemove", J), x.svgRef.removeEventListener("mouseup", Q), x.svgRef.removeEventListener("mouseleave", Q), x.svgRef.removeEventListener("touchstart", q), x.svgRef.removeEventListener("touchmove", J), x.svgRef.removeEventListener("touchend", Q), x.svgRef.removeEventListener("touchcancel", Q), x.svgRef.removeEventListener("mousedown", Y), x.svgRef.removeEventListener("mousemove", X), x.svgRef.removeEventListener("mouseup", Z), x.svgRef.removeEventListener("touchstart", Y), x.svgRef.removeEventListener("touchmove", X), x.svgRef.removeEventListener("touchend", Z), x.svgRef.removeEventListener("touchcancel", Z), x.svgRef.removeEventListener("mousedown", H), x.svgRef.removeEventListener("touchstart", H), O.value && (O.value.style.pointerEvents = "none"));
312
+ }
313
+ b(() => x.active, (e) => {
314
+ e ? ke() : $();
315
+ }), b(() => x.active, () => {
316
+ p(() => {
317
+ xe();
318
+ });
319
+ }), b(() => x.active, (e) => {
320
+ x.svgRef && (e ? x.svgRef.style.touchAction = "none" : x.svgRef.style.touchAction = "");
321
+ }, { immediate: !0 });
322
+ function Ae() {
323
+ O.value && (V.value === "text" ? O.value.style.cursor = "text" : ["line", "arrow"].includes(V.value) ? O.value.style.cursor = "crosshair" : O.value.style.cursor = pe.value);
324
+ }
325
+ let je = v(null);
326
+ return te(() => {
327
+ p(() => {
328
+ x.svgRef && (O.value = document.createElementNS("http://www.w3.org/2000/svg", "g"), O.value.setAttribute("class", "vue-data-ui-doodles"), x.svgRef.appendChild(O.value), Ae(), $());
329
+ });
330
+ }), b(() => x.active, async (e) => {
331
+ e && (await p(), je.value?.focus());
332
+ }, { flush: "post" }), ee(() => {
333
+ W(), O.value && x.svgRef && (O.value.remove(), $());
334
+ }), (n, r) => e.active ? (_(), l("div", {
335
+ key: 0,
336
+ "data-dom-to-png-ignore": "",
337
+ class: "vue-ui-pen-and-paper-actions",
338
+ style: g({ backgroundColor: e.backgroundColor })
339
+ }, [
340
+ u("button", {
341
+ ref_key: "buttonToggle",
342
+ ref: je,
343
+ class: "vue-ui-pen-and-paper-action",
344
+ onClick: r[0] ||= (e) => le("close"),
345
+ style: g({
346
+ backgroundColor: e.backgroundColor,
347
+ border: `1px solid ${G.value}`,
348
+ cursor: e.isCursorPointer ? "pointer" : "default"
349
+ })
350
+ }, [y(n.$slots, "annotator-action-close", {}, () => [d(a, {
351
+ name: "close",
352
+ stroke: e.color
353
+ }, null, 8, ["stroke"])])], 4),
354
+ u("button", {
355
+ class: "vue-ui-pen-and-paper-action",
356
+ tabindex: "-1",
357
+ style: g(`padding: 0 !important; cursor: ${e.isCursorPointer ? "pointer" : "default"}`)
358
+ }, [d(o, {
359
+ value: w.value,
360
+ "onUpdate:value": r[1] ||= (e) => w.value = e,
361
+ backgroundColor: e.backgroundColor,
362
+ buttonBorderColor: G.value,
363
+ isCursorPointer: e.isCursorPointer
364
+ }, {
365
+ "annotator-action-color": ae(({ color: e }) => [y(n.$slots, "annotator-action-color", h(f({ color: e })))]),
366
+ _: 3
367
+ }, 8, [
368
+ "value",
369
+ "backgroundColor",
370
+ "buttonBorderColor",
371
+ "isCursorPointer"
372
+ ])], 4),
373
+ u("button", {
374
+ class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-active": V.value === "text" }]),
375
+ onClick: r[2] ||= (e) => me(),
376
+ style: g({
377
+ backgroundColor: e.backgroundColor,
378
+ border: `1px solid ${G.value}`,
379
+ cursor: e.isCursorPointer ? "pointer" : "default"
380
+ })
381
+ }, [y(n.$slots, "annotator-action-draw", h(f({ mode: V.value })), () => [d(a, {
382
+ name: fe[V.value],
383
+ stroke: e.color
384
+ }, null, 8, ["name", "stroke"])]), u("div", { style: g({
385
+ position: "absolute",
386
+ bottom: "-20px",
387
+ color: G.value,
388
+ width: "100%",
389
+ textAlign: "center",
390
+ fontSize: "12px",
391
+ fontVariantNumeric: "tabular-nums"
392
+ }) }, ne(re(t)({
393
+ v: V.value === "text" ? Math.round(R.value) : Math.round(T.value),
394
+ s: "px",
395
+ r: 1
396
+ })), 5)], 6),
397
+ u("button", {
398
+ class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !S.value.length }]),
399
+ disabled: !S.value.length,
400
+ onClick: Ee,
401
+ style: g({
402
+ backgroundColor: e.backgroundColor,
403
+ border: `1px solid ${G.value}`,
404
+ marginTop: "20px",
405
+ cursor: e.isCursorPointer ? "pointer" : "default"
406
+ })
407
+ }, [y(n.$slots, "annotator-action-undo", h(f({ disabled: !S.value.length })), () => [d(a, {
408
+ name: "refresh",
409
+ stroke: e.color
410
+ }, null, 8, ["stroke"])])], 14, ce),
411
+ u("button", {
412
+ class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !C.value.length }]),
413
+ onClick: De,
414
+ style: g({
415
+ backgroundColor: e.backgroundColor,
416
+ border: `1px solid ${G.value}`,
417
+ cursor: e.isCursorPointer ? "pointer" : "default"
418
+ })
419
+ }, [y(n.$slots, "annotator-action-redo", h(f({ disabled: !C.value.length })), () => [d(a, {
420
+ name: "refresh",
421
+ stroke: e.color,
422
+ style: { transform: "scaleX(-1)" }
423
+ }, null, 8, ["stroke"])])], 6),
424
+ u("button", {
425
+ class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !S.value.length }]),
426
+ onClick: Oe,
427
+ style: g({
428
+ backgroundColor: e.backgroundColor,
429
+ border: `1px solid ${G.value}`,
430
+ cursor: e.isCursorPointer ? "pointer" : "default"
431
+ })
432
+ }, [y(n.$slots, "annotator-action-delete", h(f({ disabled: !S.value.length })), () => [d(a, {
433
+ name: "trash",
434
+ stroke: e.color
435
+ }, null, 8, ["stroke"])])], 6),
436
+ V.value === "text" ? oe((_(), l("input", {
437
+ key: 0,
438
+ ref: "range",
439
+ type: "range",
440
+ class: "vertical-range",
441
+ min: 3,
442
+ max: 48,
443
+ step: 1,
444
+ "onUpdate:modelValue": r[3] ||= (e) => R.value = e,
445
+ style: g({ accentColor: e.color })
446
+ }, null, 4)), [[ie, R.value]]) : oe((_(), l("input", {
447
+ key: 1,
448
+ ref: "range",
449
+ type: "range",
450
+ class: "vertical-range",
451
+ min: .5,
452
+ max: 12,
453
+ step: .1,
454
+ "onUpdate:modelValue": r[4] ||= (e) => T.value = e,
455
+ style: g({ accentColor: e.color })
456
+ }, null, 4)), [[ie, T.value]])
457
+ ], 4)) : c("", !0);
458
+ }
459
+ };
460
+ //#endregion
461
+ export { x as n, se as t };
@@ -0,0 +1,117 @@
1
+ import { Fragment as e, createBlock as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, mergeProps as a, openBlock as o, ref as s, renderList as c, renderSlot as l, resolveComponent as u, watch as d, withCtx as f, withModifiers as p } from "vue";
2
+ //#region src/atoms/RecursiveCircles.vue
3
+ var m = [
4
+ "cx",
5
+ "cy",
6
+ "r",
7
+ "fill",
8
+ "stroke",
9
+ "stroke-width",
10
+ "onClick",
11
+ "onMouseover"
12
+ ], h = [
13
+ "x",
14
+ "y",
15
+ "height",
16
+ "width",
17
+ "onClick",
18
+ "onMouseover"
19
+ ], g = {
20
+ __name: "RecursiveCircles",
21
+ props: {
22
+ color: {
23
+ type: String,
24
+ default: "#000000"
25
+ },
26
+ dataset: {
27
+ type: Array,
28
+ default: () => []
29
+ },
30
+ hoveredUid: {
31
+ type: String,
32
+ default: null
33
+ },
34
+ linkColor: {
35
+ type: String,
36
+ default: "#CCCCCC"
37
+ },
38
+ stroke: {
39
+ type: String,
40
+ default: "#FFFFFF"
41
+ },
42
+ strokeHovered: {
43
+ type: String,
44
+ default: "#000000"
45
+ }
46
+ },
47
+ emits: ["click", "hover"],
48
+ setup(g, { emit: _ }) {
49
+ let v = g, y = _;
50
+ function b(e) {
51
+ y("click", e);
52
+ }
53
+ function x(e) {
54
+ y("hover", e);
55
+ }
56
+ let S = s([]);
57
+ return d(() => v.dataset, (e) => {
58
+ S.value = e || [];
59
+ }, { immediate: !0 }), (s, d) => {
60
+ let _ = u("RecursiveCircles", !0);
61
+ return o(!0), r(e, null, c(g.dataset, (u, v) => (o(), r(e, null, [u.polygonPath && u.polygonPath.coordinates ? (o(), r(e, { key: 0 }, [(o(!0), r(e, null, c(u.polygonPath.coordinates, (t, c) => (o(), r(e, { key: `node_${v}_${c}` }, [l(s.$slots, "node-svg", { nodeSvg: {
62
+ x: t.x,
63
+ y: t.y,
64
+ radius: u.circleRadius,
65
+ color: u.color,
66
+ stroke: g.stroke,
67
+ strokeWidth: u.circleRadius / 12,
68
+ isSelected: g.hoveredUid && g.hoveredUid === u.uid,
69
+ onClick: () => b(u),
70
+ onEnter: () => x(u),
71
+ onLeave: () => x(null)
72
+ } }, () => [i("circle", {
73
+ cx: t.x,
74
+ cy: t.y,
75
+ r: u.circleRadius,
76
+ fill: `url(#gradient_${u.color})`,
77
+ stroke: g.hoveredUid && g.hoveredUid === u.uid ? g.strokeHovered : g.stroke,
78
+ "stroke-width": g.hoveredUid && g.hoveredUid === u.uid ? u.circleRadius / 6 : u.circleRadius / 12,
79
+ style: { cursor: "pointer" },
80
+ onClick: (e) => b(u),
81
+ onMouseover: (e) => x(u),
82
+ onMouseleave: d[0] ||= (e) => x(null)
83
+ }, null, 40, m)]), s.$slots.node ? (o(), r("foreignObject", {
84
+ key: 0,
85
+ x: t.x - u.circleRadius,
86
+ y: t.y - u.circleRadius,
87
+ height: u.circleRadius * 2,
88
+ width: u.circleRadius * 2,
89
+ style: { overflow: "visible" },
90
+ onClick: p((e) => b(u), ["stop"]),
91
+ onMouseover: (e) => x(u),
92
+ onMouseleave: d[1] ||= (e) => x(null)
93
+ }, [l(s.$slots, "node", a({ ref_for: !0 }, { node: u }))], 40, h)) : n("", !0)], 64))), 128)), u.nodes && u.nodes.length > 0 ? (o(), t(_, {
94
+ key: 0,
95
+ dataset: u.nodes,
96
+ color: g.color,
97
+ stroke: g.stroke,
98
+ strokeHovered: g.strokeHovered,
99
+ hoveredUid: g.hoveredUid,
100
+ onClick: b,
101
+ onHover: x
102
+ }, {
103
+ node: f(({ node: e }) => [l(s.$slots, "node", a({ ref_for: !0 }, { node: e }))]),
104
+ "node-svg": f(({ nodeSvg: e }) => [l(s.$slots, "node-svg", a({ ref_for: !0 }, { nodeSvg: e }))]),
105
+ _: 2
106
+ }, 1032, [
107
+ "dataset",
108
+ "color",
109
+ "stroke",
110
+ "strokeHovered",
111
+ "hoveredUid"
112
+ ])) : n("", !0)], 64)) : n("", !0)], 64))), 256);
113
+ };
114
+ }
115
+ };
116
+ //#endregion
117
+ export { g as default };
@@ -0,0 +1,56 @@
1
+ import { Fragment as e, createBlock as t, createCommentVNode as n, createElementBlock as r, openBlock as i, ref as a, renderList as o, resolveComponent as s, toDisplayString as c, watch as l } from "vue";
2
+ //#region src/atoms/RecursiveLabels.vue
3
+ var u = [
4
+ "x",
5
+ "y",
6
+ "fill",
7
+ "font-size"
8
+ ], d = {
9
+ __name: "RecursiveLabels",
10
+ props: {
11
+ color: {
12
+ type: String,
13
+ default: "#000000"
14
+ },
15
+ dataset: {
16
+ type: Array,
17
+ default: () => []
18
+ },
19
+ hoveredUid: {
20
+ type: String,
21
+ default: null
22
+ }
23
+ },
24
+ emits: ["zoom", "hover"],
25
+ setup(d, { emit: f }) {
26
+ let p = d, m = a([]);
27
+ return l(() => p.dataset, (e) => {
28
+ m.value = e || [];
29
+ }, { immediate: !0 }), (a, l) => {
30
+ let f = s("RecursiveLabels", !0);
31
+ return i(!0), r(e, null, o(m.value, (a, s) => (i(), r(e, { key: `level_${s}` }, [a.polygonPath && a.polygonPath.coordinates ? (i(), r(e, { key: 0 }, [(i(!0), r(e, null, o(a.polygonPath.coordinates, (e, t) => (i(), r("text", {
32
+ key: `node_${s}_${t}`,
33
+ x: e.x,
34
+ y: e.y + a.circleRadius * 2,
35
+ fill: d.color,
36
+ "font-size": a.circleRadius,
37
+ "text-anchor": "middle",
38
+ style: {
39
+ opacity: "0.8",
40
+ "pointer-events": "none"
41
+ }
42
+ }, c(a.name), 9, u))), 128)), a.nodes && a.nodes.length > 0 ? (i(), t(f, {
43
+ key: 0,
44
+ dataset: a.nodes,
45
+ color: d.color,
46
+ hoveredUid: d.hoveredUid
47
+ }, null, 8, [
48
+ "dataset",
49
+ "color",
50
+ "hoveredUid"
51
+ ])) : n("", !0)], 64)) : n("", !0)], 64))), 128);
52
+ };
53
+ }
54
+ };
55
+ //#endregion
56
+ export { d as default };