vue-data-ui 3.28.0 → 3.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. package/README.md +89 -63
  2. package/dist/{Arrow-D6OAn5rm.js → Arrow-CITPKnWF.js} +1 -1
  3. package/dist/{BaseDraggableDialog-Bw_azO0n.js → BaseDraggableDialog-DHgIPVmz.js} +1 -1
  4. package/dist/{BaseIcon-DDctLkeT.js → BaseIcon-Cm-IJ179.js} +1 -1
  5. package/dist/{BaseLegendToggle-BOcw1ke8.js → BaseLegendToggle-Q3TiW9u1.js} +1 -1
  6. package/dist/{BaseZoomControls-Cq5AOHQ0.js → BaseZoomControls-ByS_7fmI.js} +1 -1
  7. package/dist/{ColorPicker-DHQvvLT9.js → ColorPicker-Dmus34hN.js} +1 -1
  8. package/dist/{DataTable-BcVZLSs8.js → DataTable-0Vv-aGHD.js} +1 -1
  9. package/dist/HillActions-qz6J_uK7.js +1 -0
  10. package/dist/{Legend-D8NunRPr.js → Legend-DM0ClX3D.js} +1 -1
  11. package/dist/{NonSvgPenAndPaper-CxQZ0YED.js → NonSvgPenAndPaper-Do6RcwEr.js} +1 -1
  12. package/dist/{PackageVersion-ATrKWi8V.js → PackageVersion-C4ZM3Vf7.js} +1 -1
  13. package/dist/PenAndPaper-BGEp-TUm.js +1 -0
  14. package/dist/{Shape-gDVRWM6n.js → Shape-CRe8woTu.js} +1 -1
  15. package/dist/SlicerPreview-CFFUOlQr.js +1 -0
  16. package/dist/{SparkTooltip-cWKhrsKX.js → SparkTooltip-Ch06CV71.js} +1 -1
  17. package/dist/{Title-BLA0tM3g.js → Title-BliHuXfT.js} +1 -1
  18. package/dist/Tooltip-C1q0Qoh7.js +1 -0
  19. package/dist/UserOptions-uWHV_zPB.js +1 -0
  20. package/dist/{useResponsive-D2CPcpda.js → canvas-lib-22VpOI4_.js} +1 -1
  21. package/dist/{chartImage-r-G4CkRK.js → chartImage-DPGnEuYM.js} +1 -1
  22. package/dist/components/arrow.js +1 -1
  23. package/dist/components/vue-ui-3d-bar.js +1 -1
  24. package/dist/components/vue-ui-accordion.js +1 -1
  25. package/dist/components/vue-ui-age-pyramid.js +1 -1
  26. package/dist/components/vue-ui-annotator.js +1 -1
  27. package/dist/components/vue-ui-bullet.js +1 -1
  28. package/dist/components/vue-ui-bump.js +1 -1
  29. package/dist/components/vue-ui-candlestick.js +1 -1
  30. package/dist/components/vue-ui-carousel-table.js +1 -1
  31. package/dist/components/vue-ui-chestnut.js +1 -1
  32. package/dist/components/vue-ui-chord.js +1 -1
  33. package/dist/components/vue-ui-circle-pack.js +1 -1
  34. package/dist/components/vue-ui-cursor.js +1 -1
  35. package/dist/components/vue-ui-dag.js +1 -1
  36. package/dist/components/vue-ui-dashboard.js +1 -1
  37. package/dist/components/vue-ui-digits.js +1 -1
  38. package/dist/components/vue-ui-donut-evolution.js +1 -1
  39. package/dist/components/vue-ui-donut.js +1 -1
  40. package/dist/components/vue-ui-dumbbell.js +1 -1
  41. package/dist/components/vue-ui-flow.js +1 -1
  42. package/dist/components/vue-ui-funnel.js +1 -1
  43. package/dist/components/vue-ui-galaxy.js +1 -1
  44. package/dist/components/vue-ui-gauge.js +1 -1
  45. package/dist/components/vue-ui-geo.js +1 -1
  46. package/dist/components/vue-ui-gizmo.js +1 -1
  47. package/dist/components/vue-ui-graph.js +1 -1
  48. package/dist/components/vue-ui-heatmap.js +1 -1
  49. package/dist/components/vue-ui-hill.js +1 -1
  50. package/dist/components/vue-ui-history-plot.js +1 -1
  51. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  52. package/dist/components/vue-ui-icon.js +1 -1
  53. package/dist/components/vue-ui-kpi.js +1 -1
  54. package/dist/components/vue-ui-label.js +1 -1
  55. package/dist/components/vue-ui-mini-loader.js +1 -1
  56. package/dist/components/vue-ui-molecule.js +1 -1
  57. package/dist/components/vue-ui-mood-radar.js +1 -1
  58. package/dist/components/vue-ui-nested-donuts.js +1 -1
  59. package/dist/components/vue-ui-onion.js +1 -1
  60. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  61. package/dist/components/vue-ui-pattern-seed.js +1 -1
  62. package/dist/components/vue-ui-pattern.js +1 -1
  63. package/dist/components/vue-ui-quadrant.js +1 -1
  64. package/dist/components/vue-ui-quick-chart.js +1 -1
  65. package/dist/components/vue-ui-radar.js +1 -1
  66. package/dist/components/vue-ui-rating.js +1 -1
  67. package/dist/components/vue-ui-relation-circle.js +1 -1
  68. package/dist/components/vue-ui-ridgeline.js +1 -1
  69. package/dist/components/vue-ui-rings.js +1 -1
  70. package/dist/components/vue-ui-scatter.js +1 -1
  71. package/dist/components/vue-ui-skeleton.js +1 -1
  72. package/dist/components/vue-ui-smiley.js +1 -1
  73. package/dist/components/vue-ui-spark-trend.js +1 -1
  74. package/dist/components/vue-ui-sparkbar.js +1 -1
  75. package/dist/components/vue-ui-sparkgauge.js +1 -1
  76. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  77. package/dist/components/vue-ui-sparkline.js +1 -1
  78. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  79. package/dist/components/vue-ui-stackbar.js +1 -1
  80. package/dist/components/vue-ui-stackline.js +1 -1
  81. package/dist/components/vue-ui-strip-plot.js +1 -1
  82. package/dist/components/vue-ui-table-heatmap.js +1 -1
  83. package/dist/components/vue-ui-table-sparkline.js +1 -1
  84. package/dist/components/vue-ui-table.js +1 -1
  85. package/dist/components/vue-ui-thermometer.js +1 -1
  86. package/dist/components/vue-ui-timer.js +1 -1
  87. package/dist/components/vue-ui-tiremarks.js +1 -1
  88. package/dist/components/vue-ui-treemap.js +1 -1
  89. package/dist/components/vue-ui-vertical-bar.js +1 -1
  90. package/dist/components/vue-ui-waffle.js +1 -1
  91. package/dist/components/vue-ui-wheel.js +1 -1
  92. package/dist/components/vue-ui-word-cloud.js +1 -1
  93. package/dist/components/vue-ui-world.js +1 -1
  94. package/dist/components/vue-ui-xy-canvas.js +1 -1
  95. package/dist/components/vue-ui-xy.js +1 -1
  96. package/dist/{dom-to-png-Cp6rAdnI.js → dom-to-png-D56-Zgv4.js} +1 -1
  97. package/dist/{exposedLib-BDGMSW1B.js → exposedLib-BRtClmZy.js} +1 -1
  98. package/dist/{img-DiP2_5_r.js → img-D4RQwASc.js} +1 -1
  99. package/dist/{labelUtils-DXiFpsZl.js → labelUtils-CdtU-yB_.js} +1 -1
  100. package/dist/{lib-DqD8nbyX.js → lib-rPeBMZrn.js} +2 -2
  101. package/dist/package-DGRUegc-.js +1 -0
  102. package/dist/{pdf-y3S8SBFk.js → pdf-DAicVFxx.js} +1 -1
  103. package/dist/{render-common-tsNLeNaX.js → render-common-CJz0wn0I.js} +1 -1
  104. package/dist/{resolveChartConfig-ChGWTt5l.js → resolveChartConfig-CIhClE5R.js} +1 -1
  105. package/dist/ssr/vue-ui-donut.js +1 -1
  106. package/dist/ssr/vue-ui-xy.js +1 -1
  107. package/dist/ssr.js +1 -1
  108. package/dist/style.css +1 -1
  109. package/dist/types/vue-data-ui.d.ts +126 -0
  110. package/dist/useChartExport-BZts4KFb.js +1 -0
  111. package/dist/{useConfig-DM9fSqjh.js → useConfig-6jO1fkp5.js} +1 -1
  112. package/dist/{useNestedProp-DrLnzyHO.js → useNestedProp-DnGoh-XS.js} +1 -1
  113. package/dist/{useObjectBindings-Cn4Vz0RY.js → useObjectBindings-DiMX4HGv.js} +1 -1
  114. package/dist/{usePrinter-Cj4eIYC_.js → usePrinter-sVoTzet1.js} +1 -1
  115. package/dist/useResponsive-CENUxfEL.js +1 -0
  116. package/dist/useSvgLabelLayout-D1I8sQUi.js +1 -0
  117. package/dist/useTimeLabelCollider-BTybMUFi.js +1 -0
  118. package/dist/useTransitions-ChGGrtrv.js +1 -0
  119. package/dist/utils.js +1 -1
  120. package/dist/vue-data-ui-CxiWUtNw.js +1 -0
  121. package/dist/vue-data-ui.js +1 -1
  122. package/dist/vue-ui-3d-bar-CW8ahywt.js +19 -0
  123. package/dist/{vue-ui-accordion-3lBpCjGm.js → vue-ui-accordion-S3nRtTU-.js} +1 -1
  124. package/dist/vue-ui-age-pyramid-CxMwKICA.js +1 -0
  125. package/dist/{vue-ui-annotator-CpTZHnPw.js → vue-ui-annotator-CdCDYzdK.js} +3 -3
  126. package/dist/vue-ui-bullet-ClnewIWQ.js +34 -0
  127. package/dist/vue-ui-bump-C6FuNDUg.js +8 -0
  128. package/dist/vue-ui-candlestick-CyewIjJk.js +22 -0
  129. package/dist/vue-ui-carousel-table-D0dD4kai.js +1 -0
  130. package/dist/vue-ui-chestnut-nS1vjCqH.js +1 -0
  131. package/dist/vue-ui-chord-B963Q_26.js +21 -0
  132. package/dist/vue-ui-circle-pack-DEY9X3jA.js +13 -0
  133. package/dist/{vue-ui-cursor-Dn-IBaP8.js → vue-ui-cursor-CNv12HQG.js} +1 -1
  134. package/dist/vue-ui-dag-s3-TMmid.js +9 -0
  135. package/dist/vue-ui-dashboard-B5zrGAvS.js +1 -0
  136. package/dist/{vue-ui-digits-BBiRMr01.js → vue-ui-digits-DXQwmTUx.js} +1 -1
  137. package/dist/vue-ui-donut-CDryub1L.js +47 -0
  138. package/dist/{vue-ui-donut-CGyBWxzh.js → vue-ui-donut-DHfOfLBF.js} +1 -1
  139. package/dist/vue-ui-donut-evolution-C5pHSrza.js +2 -0
  140. package/dist/vue-ui-dumbbell-CQbGR7yM.js +9 -0
  141. package/dist/vue-ui-flow-B16Mj6MW.js +3 -0
  142. package/dist/vue-ui-funnel-Dh-xi_Qi.js +1 -0
  143. package/dist/vue-ui-galaxy-U_ZIP5vm.js +1 -0
  144. package/dist/vue-ui-gauge-Dr4zsf6D.js +1 -0
  145. package/dist/vue-ui-geo-DFebja0s.js +1 -0
  146. package/dist/{vue-ui-gizmo-K1lfslsA.js → vue-ui-gizmo-CssVcz-O.js} +1 -1
  147. package/dist/vue-ui-graph-BB_97Qz7.js +7 -0
  148. package/dist/vue-ui-heatmap-DEBbVnrg.js +1 -0
  149. package/dist/vue-ui-hill-C1sHz3TI.js +1 -0
  150. package/dist/vue-ui-history-plot-CsBTJXR3.js +2 -0
  151. package/dist/vue-ui-horizontal-bar-D0kfcpEW.js +4 -0
  152. package/dist/{vue-ui-kpi-BZjfQxmY.js → vue-ui-kpi-CltKSYUI.js} +1 -1
  153. package/dist/vue-ui-label-B_1kM28r.js +7 -0
  154. package/dist/{vue-ui-mini-loader-ltQXdeeW.js → vue-ui-mini-loader-7gqQI5jy.js} +1 -1
  155. package/dist/vue-ui-molecule-DtoyWWTf.js +1 -0
  156. package/dist/vue-ui-mood-radar-ClOxfeH8.js +1 -0
  157. package/dist/vue-ui-nested-donuts-CULAXTg1.js +19 -0
  158. package/dist/vue-ui-onion-D7zu861i.js +5 -0
  159. package/dist/vue-ui-parallel-coordinate-plot-Cjbc-WUG.js +9 -0
  160. package/dist/vue-ui-quadrant-DWAb_t6r.js +2 -0
  161. package/dist/vue-ui-quick-chart-oDZwgVo8.js +17 -0
  162. package/dist/vue-ui-radar-BWG_N0xO.js +1 -0
  163. package/dist/{vue-ui-rating-B33u3iIn.js → vue-ui-rating-CV2b0tjA.js} +1 -1
  164. package/dist/vue-ui-relation-circle-BCRiS2n6.js +1 -0
  165. package/dist/vue-ui-ridgeline-VYcGUP_p.js +2 -0
  166. package/dist/vue-ui-rings-Dl0AjrRj.js +1 -0
  167. package/dist/vue-ui-scatter-DTa48HvG.js +9 -0
  168. package/dist/{vue-ui-skeleton-DTn7uIui.js → vue-ui-skeleton-C5mGG8hR.js} +1 -1
  169. package/dist/{vue-ui-smiley-qCRUFmpq.js → vue-ui-smiley-VTdQetY0.js} +1 -1
  170. package/dist/vue-ui-spark-trend--frxeJ8f.js +1 -0
  171. package/dist/{vue-ui-sparkbar-DPFzdX-D.js → vue-ui-sparkbar-BS5v3HMo.js} +1 -1
  172. package/dist/{vue-ui-sparkgauge-DlEPsxc0.js → vue-ui-sparkgauge-B1TGfXvR.js} +1 -1
  173. package/dist/vue-ui-sparkhistogram-Cs97AL6h.js +1 -0
  174. package/dist/vue-ui-sparkline-Bp9J6x7z.js +1 -0
  175. package/dist/vue-ui-sparkstackbar-BVuuRD10.js +1 -0
  176. package/dist/vue-ui-stackbar-CRuXn3XI.js +29 -0
  177. package/dist/vue-ui-stackline-Besmr9vq.js +39 -0
  178. package/dist/vue-ui-strip-plot-D-aRJkR7.js +2 -0
  179. package/dist/{vue-ui-table-3F8i2ZjT.js → vue-ui-table-D_UdQwV3.js} +1 -1
  180. package/dist/{vue-ui-table-heatmap-CtYPYMIJ.js → vue-ui-table-heatmap-BtziURiu.js} +1 -1
  181. package/dist/vue-ui-table-sparkline-BdNo8fW_.js +1 -0
  182. package/dist/vue-ui-thermometer-TFg1SGY7.js +1 -0
  183. package/dist/{vue-ui-timer-DsWRNtRa.js → vue-ui-timer-BdPksC26.js} +2 -2
  184. package/dist/vue-ui-tiremarks-HWuO-eyj.js +1 -0
  185. package/dist/vue-ui-treemap-IegiAqaX.js +1 -0
  186. package/dist/vue-ui-waffle-BEyGfPks.js +1 -0
  187. package/dist/vue-ui-wheel-k8GNPGET.js +1 -0
  188. package/dist/vue-ui-word-cloud-D9_15Ve7.js +4 -0
  189. package/dist/{vue-ui-world-DQWjoFDx.js → vue-ui-world-rCp5Vb7u.js} +2 -2
  190. package/dist/{vue-ui-xy-DfvcqUwW.js → vue-ui-xy-42AXepcQ.js} +2 -2
  191. package/dist/vue-ui-xy-CFgFg11v.js +24 -0
  192. package/dist/vue-ui-xy-canvas-CeC3gcrW.js +9 -0
  193. package/package.json +3 -3
  194. package/dist/HillActions-Bq3UJ1Ut.js +0 -1
  195. package/dist/PenAndPaper-BsBFp16i.js +0 -1
  196. package/dist/SlicerPreview-Dpu4nMz6.js +0 -1
  197. package/dist/Tooltip-Iyb_S6oQ.js +0 -1
  198. package/dist/UserOptions-BSJ_S_us.js +0 -1
  199. package/dist/package-UBaXe2y9.js +0 -1
  200. package/dist/useChartExport-DtPNpc9M.js +0 -1
  201. package/dist/useTimeLabelCollider-XQf_S7-z.js +0 -1
  202. package/dist/useTransitions-DfSHzsdz.js +0 -1
  203. package/dist/vue-data-ui-yeD7UyUU.js +0 -1
  204. package/dist/vue-ui-3d-bar-COrzyTkO.js +0 -19
  205. package/dist/vue-ui-age-pyramid-CAoVjkOA.js +0 -1
  206. package/dist/vue-ui-bullet-yvY_gdw2.js +0 -34
  207. package/dist/vue-ui-bump-ChsFkIq9.js +0 -10
  208. package/dist/vue-ui-candlestick-D9UXZQoN.js +0 -22
  209. package/dist/vue-ui-carousel-table-CKyE4hME.js +0 -1
  210. package/dist/vue-ui-chestnut-BuLjW5nb.js +0 -1
  211. package/dist/vue-ui-chord-Bjwt2_BK.js +0 -21
  212. package/dist/vue-ui-circle-pack-BpAuZruK.js +0 -13
  213. package/dist/vue-ui-dag-CyY3cSa6.js +0 -9
  214. package/dist/vue-ui-dashboard-DmyStkQM.js +0 -1
  215. package/dist/vue-ui-donut-DMF74OY0.js +0 -47
  216. package/dist/vue-ui-donut-evolution-Du4zLc8D.js +0 -2
  217. package/dist/vue-ui-dumbbell-CxL_AY5e.js +0 -9
  218. package/dist/vue-ui-flow-h6kTMamJ.js +0 -3
  219. package/dist/vue-ui-funnel-BG5Addzr.js +0 -1
  220. package/dist/vue-ui-galaxy-CgnshY8i.js +0 -1
  221. package/dist/vue-ui-gauge-a13ojQPr.js +0 -1
  222. package/dist/vue-ui-geo-CflzhtuD.js +0 -1
  223. package/dist/vue-ui-graph-C2Se8bnB.js +0 -7
  224. package/dist/vue-ui-heatmap-5NsQkMwS.js +0 -1
  225. package/dist/vue-ui-hill-COnjVS2L.js +0 -1
  226. package/dist/vue-ui-history-plot-BRJdXsNo.js +0 -2
  227. package/dist/vue-ui-horizontal-bar-G0wEKTRu.js +0 -4
  228. package/dist/vue-ui-label-BD_hTtgZ.js +0 -7
  229. package/dist/vue-ui-molecule-DI-CS5w8.js +0 -1
  230. package/dist/vue-ui-mood-radar-B5ar9WAZ.js +0 -1
  231. package/dist/vue-ui-nested-donuts-BP2YzVma.js +0 -19
  232. package/dist/vue-ui-onion-CCiZ6jmF.js +0 -5
  233. package/dist/vue-ui-parallel-coordinate-plot-3E0CysDx.js +0 -9
  234. package/dist/vue-ui-quadrant-BwgwvKy8.js +0 -2
  235. package/dist/vue-ui-quick-chart-BXNg0LNe.js +0 -17
  236. package/dist/vue-ui-radar-B9Ntj_Gj.js +0 -1
  237. package/dist/vue-ui-relation-circle-B60IUw50.js +0 -1
  238. package/dist/vue-ui-ridgeline-BPbYng2A.js +0 -2
  239. package/dist/vue-ui-rings-BXo9p3Ab.js +0 -1
  240. package/dist/vue-ui-scatter-BwrYPDzh.js +0 -9
  241. package/dist/vue-ui-spark-trend-wKFu-O7B.js +0 -1
  242. package/dist/vue-ui-sparkhistogram-DLZxE6oz.js +0 -1
  243. package/dist/vue-ui-sparkline-BflZPl7s.js +0 -1
  244. package/dist/vue-ui-sparkstackbar-DvSQfGeA.js +0 -1
  245. package/dist/vue-ui-stackbar-JKC9qE6M.js +0 -29
  246. package/dist/vue-ui-stackline-G7-oqfzp.js +0 -39
  247. package/dist/vue-ui-strip-plot-54u7AUip.js +0 -2
  248. package/dist/vue-ui-table-sparkline-CTfYTzhA.js +0 -1
  249. package/dist/vue-ui-thermometer-BpFbPqxK.js +0 -1
  250. package/dist/vue-ui-tiremarks-C4wVcSVP.js +0 -1
  251. package/dist/vue-ui-treemap-mYRv6gga.js +0 -1
  252. package/dist/vue-ui-waffle-DNBIZqZz.js +0 -1
  253. package/dist/vue-ui-wheel-DPHDp0t1.js +0 -1
  254. package/dist/vue-ui-word-cloud-BY4YsW7-.js +0 -4
  255. package/dist/vue-ui-xy-M9aD-G5a.js +0 -24
  256. package/dist/vue-ui-xy-canvas-BpwG1Ipj.js +0 -9
@@ -0,0 +1,9 @@
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,D as r,Dt as i,Ft as a,Ht as o,Jt as s,Kt as ee,Mt as c,S as l,X as te,Zt as ne,_ as re,_t as ie,at as ae,i as oe,in as se,nn as ce,nt as le,o as ue,pt as de,w as fe,wt as pe,zt as me}from"./lib-rPeBMZrn.js";import{n as he,t as ge}from"./BaseScanner-8NdoBs7B.js";import{n as _e,t as ve}from"./useHints-BH9r_0Vd.js";import{t as ye}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as be}from"./useNestedProp-DnGoh-XS.js";import{t as xe}from"./useThemeCheck-BKNRbGeC.js";import{t as Se}from"./img-D4RQwASc.js";import{t as Ce}from"./BaseIcon-Cm-IJ179.js";import{n as we}from"./Title-BliHuXfT.js";import{n as Te,t as Ee}from"./tableIntegration-CNoJ1CIY.js";import{n as De,t as Oe}from"./userOptionsSlots-DYuo-E5m.js";import{n as ke,r as Ae,t as je}from"./useTimeLabels-Das5O74F.js";import{t as Me}from"./usePrinter-sVoTzet1.js";import{a as Ne,c as Pe,i as u,n as Fe,o as Ie,r as Le,s as Re,t as ze}from"./canvas-lib-22VpOI4_.js";import{t as Be}from"./useResponsive-CENUxfEL.js";import{t as Ve}from"./SlicerPreview-CFFUOlQr.js";import{t as He}from"./vue-ui-accordion-S3nRtTU-.js";import{t as Ue}from"./BaseLegendToggle-Q3TiW9u1.js";import{t as We}from"./useUserOptionState-CXlFnwPv.js";import{t as Ge}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ke}from"./Legend-DM0ClX3D.js";import{t as qe}from"./vue_ui_xy_canvas-CT-FN9rU.js";import{Teleport as Je,computed as d,createBlock as Ye,createCommentVNode as f,createElementBlock as Xe,createElementVNode as p,createSlots as Ze,createTextVNode as Qe,createVNode as $e,defineAsyncComponent as et,guardReactiveProps as m,mergeProps as tt,nextTick as nt,normalizeClass as rt,normalizeProps as h,normalizeStyle as it,onBeforeUnmount as at,onMounted as ot,openBlock as g,ref as _,renderList as st,renderSlot as v,resolveDynamicComponent as ct,shallowRef as lt,toDisplayString as ut,toRefs as dt,unref as y,useSlots as ft,watch as b,watchEffect as pt,withCtx as x}from"vue";var mt=/* @__PURE__ */ e({default:()=>Ot}),ht=[`id`],gt=[`id`],_t={class:`sr-only`,"aria-live":`polite`,"aria-atomic":`true`},vt=[`id`],yt=[`aria-label`,`aria-describedby`],bt=[`viewBox`],xt=[`x`,`y`,`width`,`height`,`fill`,`fill-opacity`,`stroke`,`stroke-opacity`,`stroke-width`,`stroke-dasharray`],St={key:1,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Ct=[`id`],wt=[`onClick`],Tt={key:4,class:`vue-data-ui-watermark`},Et={key:0},Dt={key:1},Ot=/*#__PURE__*/ ye({__name:`vue-ui-xy-canvas`,props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}},selectedXIndex:{type:Number,default:void 0},zoomState:{type:Object,default:null}},emits:[`selectLegend`,`selectX`,`zoomStart`,`zoomEnd`,`zoomReset`,`update:zoomState`,`copyAlt`],setup(e,{expose:ye,emit:mt}){let Ot=et(()=>import(`./Tooltip-C1q0Qoh7.js`)),kt=et(()=>import(`./DataTable-0Vv-aGHD.js`)),At=et(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),jt=et(()=>import(`./NonSvgPenAndPaper-Do6RcwEr.js`)),Mt=et(()=>import(`./BaseDraggableDialog-DHgIPVmz.js`).then(e=>e.n)),{vue_ui_xy_canvas:Nt}=t(),{isThemeValid:Pt,warnInvalidTheme:Ft}=xe(),S=e,It=_(te()),Lt=_(null),Rt=_(null),C=_(null),w=_(1),zt=_(1),Bt=_(!1),T=_(null),Vt=_(``),Ht=_(null),E=_([]),Ut=_(1),D=_(!0),O=_(!0),Wt=_(null),Gt=_(0),Kt=_(!1),qt=_(null),Jt=_(null),Yt=_(null),Xt=_(null),Zt=_(0),Qt=_(0),$t=_(0),k=_(null),en=_(!1),tn=_(null),nn=_(null),rn=_(!1),an=_(!1),on=_(!1),A=_(null),sn=_(!1),cn=_(!1),ln=_(!1),j=_(null),un=_({x:0,y:0}),M=d(()=>Array.isArray(yn.value)&&yn.value.length>0),N=mt,dn=ft(),P=_(Tn()),F=d(()=>P.value.userOptions),I=d(()=>P.value.style.chart.tooltip),L=d(()=>P.value.style.chart.grid.y.verticalLines),fn=d(()=>P.value.style.chart.grid.x.horizontalLines),R=d(()=>P.value.style.chart.grid.y.axisLabels),z=d(()=>P.value.style.chart.grid.x.timeLabels),B=d(()=>P.value.style.chart.grid),V=d(()=>P.value.style.chart.dataLabels),H=d(()=>P.value.style.chart);_e({config:()=>P.value,dataset:()=>S.dataset,component:`VueUiXyCanvas`,rules:[ve.emptyArray,{test:e=>e.every(e=>e.series.length<300),message:[`👀 Series have < 300 datapoints. Consider:`,``,`▶️ Using VueUiXy instead, if you need more options, or more customization possibilities.`]},{test:e=>e.some(e=>e.series.length>1e4),message:[`👀 The dataset has > 10_000 datapoints. Above this threshold, the dataset is computed through an LTTB algorithm, to preserve the shape of the data without increasing the number of datapoints.`,``,`▶️ If you need this level of detail, you can change config.downsample.threshold and set a higher value. Note that performance can be impacted. JS runtime might crash with > 100_000 datapoints.`]}]});let pn=d(()=>{let e=H.value.title.text||`XY chart`,t=X.value.end-X.value.start;return`${e}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).length} series. ${t} visible data points.`}),mn=d(()=>{if(j.value===null)return``;let e=j.value+X.value.start;return`${z.value.values.slice(X.value.start,X.value.end)[j.value]?I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[j.value]?.text:Nr.value[j.value]?.text:$.value[e]?.text??`Point ${e+1}`}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).map(e=>{let t=e.series[j.value],n=t?.value??t??null;return`${e.name}: ${n}`}).join(`. `)}.`}),hn=d(()=>F.value.useCursorPointer),gn=d(()=>P.value.debug);ot(()=>{dn[`chart-background`]&&gn.value&&console.warn(`VueUiXyCanvas does not support the #chart-background slot.`)});let _n=d(()=>se({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,grid:{x:{axisColor:`#6A6A6A`,timeLabels:{show:!1},axisName:``,horizontalLines:{color:`#6A6A6A`}},y:{axisColor:`#6A6A6A`,axisLabels:{show:!1},axisName:``,verticalLines:{color:`#6A6A6A`}},zeroLine:{color:`#6A6A6A`}},legend:{backgroundColor:`#99999930`},paddingProportions:{left:.05},scale:{max:null,min:null},zoom:{endIndex:null,startIndex:null}}}},userConfig:P.value.skeletonConfig??{}})),{loading:vn,FINAL_DATASET:yn}=he({...dt(S),FINAL_CONFIG:P,prepareConfig:Tn,skeletonDataset:S.config?.skeletonDataset??[{name:``,series:[0,1,2,3,5,8,13,21,34,55,89,134],type:`line`,smooth:!0,color:`#BABABA`},{name:``,series:[0,.5,1,1.5,2.5,4,6.5,10.5,17,27.5,44.5,67],type:`bar`,color:`#AAAAAA`}],skeletonConfig:se({defaultConfig:P.value,userConfig:_n.value})}),{userOptionsVisible:bn,setUserOptionsVisibility:xn,keepUserOptionState:Sn}=We({config:P.value}),{svgRef:U}=Ge({config:H.value.title});function Cn(){xn(!0)}function wn(){xn(!1),N(`selectX`,{dataset:null,index:null,indexLabel:null}),T.value=null}function Tn(){let e=be({userConfig:S.config,defaultConfig:Nt}),t={},n=e.theme;if(n){if(!Pt.value(e))Ft(e),t=e;else{let r=be({userConfig:qe[n]||S.config,defaultConfig:e});t={...be({userConfig:S.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:ce[n]||o}}}else t=e;return S.config&&pe(S.config,`style.chart.grid.y.timeLabels`)&&(console.warn(`VueUiXyCanvas: you are using the deprecated config.style.chart.grid.y.timeLabels. It is recommended to move this configuration to config.style.chart.grid.x.timeLabels.`),t.style.chart.grid.x.timeLabels=be({defaultConfig:t.style.chart.grid.x.timeLabels,userConfig:S.config.style.chart.grid.y.timeLabels})),t}let En=ne(S.config);b(()=>S.config,(e,t)=>{let n=ne(e),r=n!==En;En=n;let i=Tn();r?(vn.value||(P.value=i),bn.value=!F.value.showOnChartHover,Di(),Zt.value+=1,Qt.value+=1,$t.value+=1,W.value.showTable=P.value.table.show,W.value.showDataLabels=V.value.show,W.value.stacked=H.value.stacked,W.value.showTooltip=I.value.show):(P.value.style.chart.tooltip=i.style.chart.tooltip,W.value.showTooltip=P.value.style.chart.tooltip.show)},{deep:!0}),b(()=>S.dataset,async e=>{Array.isArray(e)&&e.length!==0&&(await nt(),U.value&&!C.value&&(C.value=U.value.getContext(`2d`,{willReadFrequently:!0})),D.value=!0,O.value=!0,await fr(),Sr(),Zt.value+=1,Qt.value+=1,$t.value+=1)},{deep:!0});let Dn=_(H.value.aspectRatio),{isPrinting:On,isImaging:kn,generatePdf:An,generateImage:jn}=Me({elementId:`xy_canvas_${It.value}`,fileName:H.value.title.text||`vue-ui-xy-canvas`,options:F.value.print}),W=_({showTable:P.value.table.show,showDataLabels:V.value.show,stacked:H.value.stacked,showTooltip:I.value.show});function Mn(e){Kt.value=e,Gt.value+=1}let Nn=d(()=>fe(P.value.customPalette)),Pn=d(()=>E.value.length===J.value.length),G=d(()=>J.value?Math.max(...J.value.filter((e,t)=>Pn.value?!0:!E.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0);function Fn(e){A.value=e,Wr()}let In=_(0),Ln=_(0);function Rn(){if(!C.value||!z.value.show)return 0;let e=$.value||[],t=X.value.start??0,n=X.value.end??0;if(!Math.max(0,n-t))return 0;let r=Math.round(w.value/40*z.value.fontSizeRatio),i=`${z.value.bold?`bold `:``}${r}px ${P.value.style.fontFamily}`;C.value.save(),C.value.font=i;let a=0;for(let r=t;r<n;r+=1){let t=e[r]?.text??`${r+1}`,n=C.value.measureText(String(t));n.width>a&&(a=n.width)}C.value.restore();let o=(z.value.rotation||0)*Math.PI/180,s=r,ee=Math.abs(Math.sin(o))*a+Math.abs(Math.cos(o))*s,c=z.value.offsetY||1,l=w.value/c;return Math.max(0,l+ee+4)}function zn(){In.value=Rn()}function Bn(){Ln.value&&cancelAnimationFrame(Ln.value),Ln.value=requestAnimationFrame(()=>{requestAnimationFrame(()=>{zn()})})}at(()=>{Ln.value&&cancelAnimationFrame(Ln.value)});let K=d(()=>{let e=w.value-w.value*(H.value.paddingProportions.left+H.value.paddingProportions.right),t=zt.value*H.value.paddingProportions.top,n=zt.value*H.value.paddingProportions.bottom,r=In.value,i=zt.value-n-r,a=zt.value-(t+n)-r;return{canvasWidth:w.value,canvasHeight:zt.value,left:w.value*H.value.paddingProportions.left,top:t,right:w.value-w.value*H.value.paddingProportions.right,bottom:i,width:e,height:a,slot:e/(X.value.end-X.value.start)}});function Vn(e,t){return e/t}function Hn({hasAutoScale:e,series:t,min:n,max:r,scale:i,yOffset:a,individualHeight:o,stackIndex:s=null}){return t.map((t,n)=>{let r=i.min<0?Math.abs(i.min):0,ee=Vn(t+r,r+i.max),c,l;e&&(c=i.min,l=Vn(t-c,i.max-c));let te=0;return te=s===null?K.value.bottom-K.value.height*(e?l:ee):K.value.bottom-a-o*(e?l:ee),{x:K.value.left+K.value.slot*n+K.value.slot/2,y:te,value:t}})}let q=d(()=>{let e=H.value.scale.min===null?Math.min(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.min,t=H.value.scale.max===null?Math.max(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.max,n=re(e<0?e:0,t===e?e+1<0?0:e+1:t<0?0:t,H.value.scale.ticks),r=n.min<0?Math.abs(n.min):0,i=K.value.bottom-K.value.height*(r/(n.max+r));return{absoluteMin:r,max:t,min:e,scale:n,yLabels:n.ticks.map(e=>({y:K.value.bottom-K.value.height*((e+r)/(n.max+r)),x:K.value.left-8,value:e})),zero:i}}),Un=d(()=>Y.value.map(e=>`
2
+ <div style="display:flex;flex-direction:row;gap:6px;align-items:center;">
3
+ <svg viewBox="0 0 10 10" height="12" width="12">
4
+ <circle cx="5" cy="5" r="5" fill="${e.color}"/>
5
+ </svg>
6
+ <span>${e.name?e.name+`: `:``}</span>
7
+ <span>${oe(V.value.formatter,e.series[T.value]??`-`,n({p:e.prefix||``,v:e.series[T.value]??`-`,s:e.suffix||``,r:e.rounding||0}),{datapoint:e,seriesIndex:T.value})}</span>
8
+ </div>
9
+ `)),Wn=d(()=>H.value.line.cutNullValues),J=d(()=>yn.value.map((e,t)=>({...e,series:c({data:ee(e.series,[],Wn.value),threshold:P.value.downsample.threshold}),absoluteIndex:t,color:l(e.color||Nn.value[t]||o[t]||o[t%o.length])}))),Gn=d(()=>{if(!H.value.zoom.minimap.show)return[];let e=J.value.filter(e=>!E.value.includes(e.absoluteIndex)),t=Math.max(...e.map(e=>e.series.length)),n=[];for(let r=0;r<t;r+=1)n.push(e.map(e=>e.series[r]||0).reduce((e,t)=>(e||0)+(t||0),0));let r=Math.min(...n);return n.map(e=>e+(r<0?Math.abs(r):0))}),Kn=d(()=>H.value.zoom.minimap.show?J.value.map(e=>({...e,isVisible:!E.value.includes(e.absoluteIndex)})):[]);b(G,e=>{e&&fr()});let Y=d(()=>ue(J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex))).map((e,t)=>({...e,series:e.series.slice(X.value.start,X.value.end)})).map((e,t)=>{let n=[null,void 0].includes(e.scaleMin)?Math.min(...e.series)||0:e.scaleMin,r=[null,void 0].includes(e.scaleMax)?Math.max(...e.series)||1:e.scaleMax;n===r&&(n=n>=0?r-1:n,r=r>=0?r:n+1);let i={ratios:e.series.filter(e=>![null,void 0].includes(e)).map(e=>(e-n)/(r-n)),valueMin:n,valueMax:r},a=e.scaleSteps||H.value.scale.ticks,o;o=e.autoScaling?re(i.valueMin,i.valueMax,a):re(i.valueMin<0?i.valueMin:0,i.valueMax<=0?0:i.valueMax,a);let s=W.value.stacked?K.value.height*(1-e.cumulatedStackRatio):0,ee=W.value.stacked?K.value.height/H.value.stackGap:0,c=W.value.stacked?K.value.height*e.stackRatio-ee:K.value.height,l=o.min<0?Math.abs(o.min):0,te;te=e.autoScaling&&W.value.stacked&&r<=0?K.value.bottom-s-c:K.value.bottom-s-c*(l/(o.max+l));let ne=o.ticks.map((e,t)=>({y:K.value.bottom-s-c*(t/(o.ticks.length-1)),x:K.value.left-8,value:e})),ie=Hn({hasAutoScale:W.value.stacked&&e.autoScaling,series:e.series,min:W.value.stacked?n:q.value.min,max:W.value.stacked?r:q.value.max,scale:W.value.stacked?o:q.value.scale,yOffset:s,individualHeight:c,stackIndex:W.value.stacked?t:null});return{...e,coordinatesLine:ie,min:n,max:r,localScale:o,localZero:te,localMin:l,localYLabels:ne,yOffset:s,individualHeight:c}})),X=_({start:0,end:G.value}),Z=_({start:0,end:G.value}),qn=_(!1),Jn=_(!1),Yn=_(null),Xn=_(!1),Zn=_(null),Qn=_(null),$n=_(null),er=_({time:0,x:0,y:0,pointerType:null}),tr=d(()=>H.value.zoom?.dragToZoom),nr=d(()=>tr.value.show&&M.value&&an.value&&G.value>1&&!vn.value),rr=_(null),ir=null,ar={};function or(){return new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e())))}function sr(e,t=X.value){if(!e||typeof e!=`object`)return null;let n=e.start!==void 0&&e.start!==null,r=e.end!==void 0&&e.end!==null;if(!n&&!r)return null;let i=Number(n?e.start:t.start),a=Number(r?e.end:t.end);return!Number.isFinite(i)||!Number.isFinite(a)?null:{start:i,end:a}}function cr(e){let t=sr(e);t&&N(`update:zoomState`,t)}function lr(){ir&&=(cancelAnimationFrame(ir),null),ar={}}function ur(e){let t=sr(e);if(!t)return null;let{start:n,end:r}=t;return(n!==Number(X.value.start)||r!==Number(X.value.end))&&(lr(),X.value={start:n,end:r},Z.value={start:n,end:r},br()),{start:Number(X.value.start),end:Number(X.value.end)}}function dr(e){let t=ur(e);return t?(N(`update:zoomState`,t),t):null}at(()=>{rr.value&&cancelAnimationFrame(rr.value),lr(),ai()});async function fr({force:e=!1,publish:t=!1}={}){let n=!e;await hr(n),await nt(),rr.value&&cancelAnimationFrame(rr.value),rr.value=requestAnimationFrame(async()=>{await or(),await hr(n),rr.value=null,t&&(cr({start:Number(X.value.start),end:Number(X.value.end)}),N(`zoomReset`))})}let pr=d(()=>H.value.zoom.preview.enable&&(Z.value.start!==X.value.start||Z.value.end!==X.value.end));function mr(e,t){Z.value[e]=t}async function hr(e=!0){if(!rn.value){rn.value=!0;try{let{startIndex:t,endIndex:n}=H.value.zoom,r=Math.max(...J.value.map(e=>e.series.length)),i=t??0,a=n==null?r:Math.min(yr(n+1,i),r);on.value=!0,X.value={start:i,end:a},Z.value={start:i,end:a},br(),an.value=!0,await nt(),Yt.value&&Yt.value.setRangeValues(X.value.start,X.value.end),e&&S.zoomState&&ur(S.zoomState)}finally{queueMicrotask(()=>{on.value=!1}),rn.value=!1}}}function gr(e){ar={...ar,...e},ir&&cancelAnimationFrame(ir),ir=requestAnimationFrame(()=>{let e={...X.value,...ar};ar={},ir=null,X.value=e,Z.value={...e},br(),cr({start:Number(X.value.start),end:Number(X.value.end)})})}function _r(e){if(rn.value||on.value)return;let t=Number(e);Number.isFinite(t)&&(N(`zoomStart`,{index:t,isZoom:t!==0}),t!==X.value.start&&gr({start:t}))}function vr(e){if(rn.value||on.value)return;let t=ar.start===void 0?X.value.start:ar.start,n=yr(Number(e),t);Number.isFinite(n)&&(N(`zoomEnd`,{index:n,isZoom:n!==G.value}),(n!==X.value.end||ar.start!==void 0)&&gr({end:n}))}function yr(e,t=X.value.start){let n=G.value,r=Number(t);return e>n?n:e<0||e<=r?Math.min(r+1,n):e}function br(){let e=Math.max(1,Math.max(...J.value.map(e=>e.series.length))),t=Math.max(0,Math.min(X.value.start??0,e-1)),n=Math.max(t+1,Math.min(X.value.end??e,e));(!Number.isFinite(t)||!Number.isFinite(n)||n<=t)&&(t=0,n=e),X.value={start:t,end:n},Z.value={start:t,end:n},Yt.value&&Yt.value.setRangeValues(t,n)}b([()=>S.zoomState,an],([e,t])=>{t&&e&&ur(e)},{deep:!0,immediate:!0});let xr=d(()=>Y.value.filter(e=>[`line`,`plot`,void 0].includes(e.type))),Q=d(()=>Y.value.filter(e=>e.type===`bar`));function Sr(){if(!U.value||!Rt.value)return;let e=Rt.value.offsetWidth,t=Rt.value.offsetHeight;U.value.width=e*Ut.value*2,U.value.height=t*Ut.value*2,w.value=e*Ut.value*2,zt.value=t*Ut.value*2,C.value?.scale(Ut.value,Ut.value),Wr()}b(M,async e=>{e?(await nt(),U.value&&!C.value&&(C.value=U.value.getContext(`2d`,{willReadFrequently:!0})),D.value=!0,O.value=!0,await fr(),Sr(),Wr()):(Wt.value=null,Bt.value=!1,T.value=null,k.value=null)});function Cr(){if(C.value&&(C.value.clearRect(0,0,1e4,1e4),C.value.fillStyle=H.value.backgroundColor,C.value.fillRect(0,0,K.value.canvasWidth,K.value.canvasHeight),M.value)){if(W.value.stacked)L.value.show&&X.value.end-X.value.start<L.value.hideUnderXLength?Y.value.forEach(e=>{for(let t=0;t<X.value.end-X.value.start+1;t+=1)u(C.value,[{x:K.value.left+K.value.slot*t,y:K.value.bottom-e.yOffset-e.individualHeight},{x:K.value.left+K.value.slot*t,y:K.value.bottom-e.yOffset}],{color:L.value.color})}):L.value.show&&X.value.end-X.value.start>=L.value.hideUnderXLength&&Y.value.forEach(e=>{for(let t=X.value.start;t<X.value.end;t+=1)t%Math.floor((X.value.end-X.value.start)/fn.value.modulo)===0&&u(C.value,[{x:K.value.left+K.value.slot*(t-X.value.start)+K.value.slot/2,y:K.value.bottom-e.yOffset-e.individualHeight},{x:K.value.left+K.value.slot*(t-X.value.start)+K.value.slot/2,y:K.value.bottom-e.yOffset}],{color:L.value.color})}),fn.value.show&&(fn.value.alternate?Y.value.forEach(e=>{e.localYLabels.forEach((t,n)=>{n<e.localYLabels.length-1&&Ie(C.value,[{x:K.value.left,y:t.y},{x:K.value.right,y:t.y},{x:K.value.right,y:e.localYLabels[n+1].y},{x:K.value.left,y:e.localYLabels[n+1].y}],{fillColor:n%2==0?`transparent`:s(H.value.grid.x.horizontalLines.color,H.value.grid.x.horizontalLines.opacity),strokeColor:`transparent`})})}):Y.value.forEach(e=>{e.localYLabels.slice(X.value.start,X.value.end).forEach(e=>{u(C.value,[{x:K.value.left,y:e.y},{x:K.value.right,y:e.y}],{color:fn.value.color})})})),B.value.zeroLine.show&&Y.value.forEach(e=>{u(C.value,[{x:K.value.left,y:e.localZero},{x:K.value.right,y:e.localZero}],{color:B.value.zeroLine.color,lineDash:B.value.zeroLine.dashed?[10,10]:[0,0]})}),R.value.show&&Y.value.forEach(e=>{u(C.value,[{x:K.value.left,y:K.value.bottom-e.yOffset},{x:K.value.left,y:K.value.bottom-e.yOffset-e.individualHeight}],{color:e.color}),u(C.value,[{x:K.value.right,y:K.value.bottom-e.yOffset},{x:K.value.right,y:K.value.bottom-e.yOffset-e.individualHeight}],{color:e.color})}),Y.value.forEach(e=>{Re(C.value,e.name,w.value/35,K.value.bottom-e.yOffset-e.individualHeight/2,{align:`center`,rotation:-90,color:e.color,font:`${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`})});else{if(L.value.show&&X.value.end-X.value.start<L.value.hideUnderXLength)for(let e=0;e<X.value.end-X.value.start+1;e+=1)u(C.value,[{x:K.value.left+K.value.slot*e,y:K.value.top},{x:K.value.left+K.value.slot*e,y:K.value.bottom}],{color:L.value.color});else if(L.value.show&&X.value.end-X.value.start>=L.value.hideUnderXLength)for(let e=X.value.start;e<X.value.end;e+=1)e%Math.floor((X.value.end-X.value.start)/z.value.modulo)===0&&u(C.value,[{x:K.value.left+K.value.slot*(e-X.value.start)+K.value.slot/2,y:K.value.top},{x:K.value.left+K.value.slot*(e-X.value.start)+K.value.slot/2,y:K.value.bottom}],{color:L.value.color});fn.value.show&&(fn.value.alternate?q.value.yLabels.forEach((e,t)=>{t<q.value.yLabels.length-1&&Ie(C.value,[{x:K.value.left,y:e.y},{x:K.value.right,y:e.y},{x:K.value.right,y:q.value.yLabels[t+1].y},{x:K.value.left,y:q.value.yLabels[t+1].y}],{fillColor:t%2==0?`transparent`:s(H.value.grid.x.horizontalLines.color,H.value.grid.x.horizontalLines.opacity),strokeColor:`transparent`})}):q.value.yLabels.forEach(e=>{u(C.value,[{x:K.value.left,y:e.y},{x:K.value.right,y:e.y}],{color:fn.value.color})})),B.value.y.showAxis&&u(C.value,[{x:K.value.left,y:K.value.top},{x:K.value.left,y:K.value.bottom}],{color:B.value.y.axisColor,lineWidth:B.value.y.axisThickness}),B.value.x.showAxis&&u(C.value,[{x:K.value.left,y:K.value.bottom},{x:K.value.right,y:K.value.bottom}],{color:B.value.x.axisColor,lineWidth:B.value.x.axisThickness}),B.value.zeroLine.show&&u(C.value,[{x:K.value.left,y:q.value.zero},{x:K.value.right,y:q.value.zero}],{color:B.value.zeroLine.color,lineDash:B.value.zeroLine.dashed?[10,10]:[0,0]})}B.value.y.axisName&&Re(C.value,B.value.y.axisName,w.value-w.value/40*R.value.fontSizeRatio*1.2,K.value.bottom-K.value.height/2,{font:`${R.value.bold?`bold `:``}${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:H.value.color,align:`center`,rotation:90}),B.value.x.axisName&&Re(C.value,B.value.x.axisName,w.value/2,zt.value,{font:`${R.value.bold?`bold `:``}${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:H.value.color,align:`center`})}}function wr(e){for(let t=0;t<e.coordinatesLine.length;t+=1){let n=(T.value===t||A.value===t?w.value/150:H.value.line.plots.show||e.type===`plot`?w.value/200:0)*H.value.line.plots.radiusRatio;ze(C.value,{x:e.coordinatesLine[t].x,y:e.coordinatesLine[t].y},n,{color:H.value.backgroundColor,fillStyle:e.color,strokeColor:`transparent`})}}function Tr(){Y.value.forEach(e=>{e.showYMarker&&Kr(e)&&Re(C.value,oe(V.value.formatter,Kr(e).value,n({p:e.prefix||R.value.prefix||``,v:Kr(e).value,s:e.suffix||R.value.suffix||``,r:e.rounding||R.value.rounding||0}),{datapoint:Kr(e),seriesIndex:null}),K.value.left-8+R.value.offsetX,Kr(e).y,{align:`right`,font:`${R.value.bold?`bold `:``}${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:e.color})})}function Er(){R.value.show&&(W.value.stacked?Y.value.forEach(e=>{e.localYLabels.forEach((t,r)=>{Re(C.value,oe(V.value.formatter,t.value,n({p:e.prefix||B.value.y.axisLabels.prefix||``,v:t.value,s:e.suffix||B.value.y.axisLabels.suffix||``,r:e.rounding||B.value.y.axisLabels.rounding||0}),{datapoint:t,seriesIndex:r}),t.x+R.value.offsetX,t.y,{align:`right`,font:`${R.value.bold?`bold `:``}${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:e.color,globalAlpha:e.showYMarker&&![null,void 0].includes(T.value??A.value)?.2:1})})}):q.value.yLabels.forEach((e,t)=>{Re(C.value,oe(V.value.formatter,e.value,n({p:R.value.prefix||``,v:e.value,s:R.value.suffix||``,r:R.value.rounding||0}),{datapoint:e,seriesIndex:t}),e.x+R.value.offsetX,e.y,{align:`right`,font:`${R.value.bold?`bold `:``}${Math.round(w.value/40*R.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:R.value.color,globalAlpha:Y.value.some(e=>e.showYMarker)&&![null,void 0].includes(T.value??A.value)?.2:1})}))}function Dr(e){for(let t=0;t<e.coordinatesLine.length;t+=1)Re(C.value,oe(V.value.formatter,e.coordinatesLine[t].value,n({p:e.prefix||``,v:e.coordinatesLine[t].value,s:e.suffix||``,r:e.rounding||0}),{datapoint:e.coordinatesLine[t],seriesIndex:t}),e.coordinatesLine[t].x,e.coordinatesLine[t].y+V.value.offsetY,{align:`center`,font:`${V.value.bold?`bold `:``}${Math.round(w.value/40*V.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:V.value.useSerieColor?e.color:V.value.color,strokeColor:H.value.backgroundColor,lineWidth:.5})}let $=_([]),Or=0;pt(()=>{let e=++Or;(async()=>{let t=await je({values:z.value.values,maxDatapoints:G.value,formatter:z.value.datetimeFormatter,start:0,end:G.value});e===Or&&($.value=t)})()}),pt(()=>{z.value.show,z.value.rotation,z.value.offsetY,z.value.fontSizeRatio,z.value.bold,X.value.start,X.value.end,w.value,zt.value,($.value||[]).map(e=>e?.text??``).join(`|`),Bn()},{flush:`post`});let kr=_({months:[],shortMonths:[],days:[],shortDays:[]}),Ar=0;pt(()=>{let e=++Ar,t=z.value.datetimeFormatter;(async()=>{let n=await Ae(t.locale).catch(()=>Ae(`en`));e===Ar&&(kr.value=n.data)})()});let jr=d(()=>{let e=z.value.datetimeFormatter,t=ke({useUTC:e.useUTC,locale:kr.value,januaryAsYear:e.januaryAsYear});return(e,n)=>{let r=z.value.values?.[e];return r==null?``:t.formatDate(new Date(r),n)}}),Mr=d(()=>(z.value.values||[]).map((e,t)=>({text:jr.value(t,H.value.zoom.timeFormat),absoluteIndex:t}))),Nr=d(()=>(z.value.values||[]).map((e,t)=>({text:jr.value(t,I.value.timeFormat),absoluteIndex:t})));function Pr(){for(let e=X.value.start;e<X.value.end;e+=1)(X.value.end-X.value.start<z.value.modulo||X.value.end-X.value.start>=z.value.modulo&&(e%Math.floor((X.value.end-X.value.start)/z.value.modulo)===0||(e===T.value+X.value.start||e===A.value)&&z.value.showMarker))&&Re(C.value,$.value[e]?$.value[e].text:e+1,K.value.left+K.value.slot*(e-X.value.start)+K.value.slot/2,K.value.bottom+w.value/z.value.offsetY,{align:z.value.rotation===0?`center`:z.value.rotation>0?`left`:`right`,font:`${z.value.bold?`bold `:``}${Math.round(w.value/40*z.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:z.value.showMarker?s(z.value.color,T.value!==null||A.value!==null?T.value+X.value.start===e||A.value===e?100:20:100):z.value.color,rotation:z.value.rotation})}function Fr(){u(C.value,[{x:K.value.left+K.value.slot*(T.value??A.value)+K.value.slot/2,y:K.value.top},{x:K.value.left+K.value.slot*(T.value??A.value)+K.value.slot/2,y:K.value.bottom}],{color:H.value.selector.color,lineDash:H.value.selector.dashed?[8,8]:[0,0],lineWidth:2,linceCap:`round`})}function Ir(){k.value&&u(C.value,[{x:K.value.left,y:k.value},{x:K.value.right,y:k.value}],{color:H.value.selector.color,lineDash:H.value.selector.dashed?[8,8]:[0,0],lineWidth:2,linceCap:`round`})}function Lr(){Q.value.forEach((e,t)=>{for(let r=0;r<e.coordinatesLine.length;r+=1)Ie(C.value,[{x:K.value.left+K.value.slot*r+K.value.slot/10+(W.value.stacked?0:K.value.slot/Q.value.length*t-(t===0?0:K.value.slot/(5*Q.value.length)*t)),y:W.value.stacked?e.localZero:q.value.zero},{x:K.value.left+K.value.slot*r+K.value.slot/10+(W.value.stacked?0:K.value.slot/Q.value.length*t-(t===0?0:K.value.slot/(5*Q.value.length)*t))+K.value.slot*.8/(W.value.stacked?1:Q.value.length),y:W.value.stacked?e.localZero:q.value.zero},{x:K.value.left+K.value.slot*r+K.value.slot/10+(W.value.stacked?0:K.value.slot/Q.value.length*t-(t===0?0:K.value.slot/(5*Q.value.length)*t))+K.value.slot*.8/(W.value.stacked?1:Q.value.length),y:e.coordinatesLine[r].y},{x:K.value.left+K.value.slot*r+K.value.slot/10+(W.value.stacked?0:K.value.slot/Q.value.length*t-(t===0?0:K.value.slot/(5*Q.value.length)*t)),y:e.coordinatesLine[r].y}],{strokeColor:H.value.backgroundColor,gradient:{type:`linear`,start:{x:e.coordinatesLine[r].x,y:e.coordinatesLine[r].y},end:{x:e.coordinatesLine[r].x,y:W.value.stacked?e.localZero:q.value.zero},stops:[{offset:0,color:e.color},{offset:1,color:H.value.bar.gradient.show?a(e.color,.5):e.color}]}}),W.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&Re(C.value,oe(V.value.formatter,e.coordinatesLine[r].value,n({p:e.prefix||``,v:e.coordinatesLine[r].value,s:e.suffix||``,r:e.rounding||0}),{datapoint:e.coordinatesLine[r],seriesIndex:r}),K.value.left+K.value.slot*r+K.value.slot/10+(W.value.stacked?0:K.value.slot/Q.value.length*t-(t===0?0:K.value.slot/(5*Q.value.length)*t))+K.value.slot*.4/(W.value.stacked?1:Q.value.length),(e.coordinatesLine[r].value<0?W.value.stacked?e.localZero:q.value.zero:e.coordinatesLine[r].y)+V.value.offsetY,{align:`center`,font:`${Math.round(w.value/40*V.value.fontSizeRatio)}px ${P.value.style.fontFamily}`,color:V.value.useSerieColor?e.color:V.value.color,strokeColor:H.value.backgroundColor,lineWidth:.8})})}function Rr(e,t){let n=e.coordinatesLine.map((t,n)=>e.series[n]!=null&&Number.isFinite(t?.y)?t:null),r=[],i=[],a=[];for(let e=0;e<n.length;e+=1){let o=n[e];if(o)a.push(o);else{if(a.length>=2){let e=a[0],n=a[a.length-1];r.push([{x:e.x,y:t},...a,{x:n.x,y:t}])}else a.length===1&&i.push(a[0]);a=[]}}if(a.length>=2){let e=a[0],n=a[a.length-1];r.push([{x:e.x,y:t},...a,{x:n.x,y:t}])}else a.length===1&&i.push(a[0]);return{polygons:r,singles:i}}function zr(e){let t=e.coordinatesLine.map((t,n)=>e.series[n]!=null&&Number.isFinite(t?.y)?t:null),n=[],r=[];for(let e=0;e<t.length;e+=1){let i=t[e];i?r.push(i):(r.length>=2&&n.push(r),r=[])}return r.length>=2&&n.push(r),n}function Br(e){if(Wn.value){let t=zr(e);for(let n of t)u(C.value,n,{color:e.color,lineWidth:3})}else u(C.value,e.coordinatesLine,{color:e.color,lineWidth:3})}function Vr(e){let t=!!Wn.value;if(e.useArea){let n=W.value.stacked?e.localZero:q.value.zero;if(t){let{polygons:t,singles:r}=Rr(e,n);for(let n of t)Ne(C.value,n,{fillColor:s(e.color,H.value.area.opacity),strokeColor:`transparent`});let i=w.value/200*H.value.line.plots.radiusRatio;for(let t of r)ze(C.value,{x:t.x,y:t.y},i,{color:H.value.backgroundColor,fillStyle:e.color,strokeColor:`transparent`})}else{let t={x:e.coordinatesLine[0].x,y:n},r={x:e.coordinatesLine.at(-1).x,y:n};Ne(C.value,[t,...e.coordinatesLine,r],{fillColor:s(e.color,H.value.area.opacity),strokeColor:`transparent`})}Br(e)}else Br(e)}function Hr(){Y.value.forEach((e,t)=>{u(C.value,[{x:K.value.left,y:K.value.bottom-e.yOffset},{x:K.value.right,y:K.value.bottom-e.yOffset}],{color:fn.value.color,lineWidth:1})})}function Ur(){let{left:e,top:t,width:n,height:r}=K.value,i=X.value.start,a=X.value.end-i,o=n/a,s=Z.value.start-i,ee=Z.value.end-i,c=Math.max(0,Math.min(a,s)),l=Math.max(0,Math.min(a,ee));Ie(C.value,[{x:e+c*o,y:t},{x:e+c*o+(l-c)*o,y:t},{x:e+c*o+(l-c)*o,y:t+r},{x:e+c*o,y:t+r}],{fillColor:H.value.zoom.preview.fill,strokeColor:H.value.zoom.preview.stroke,lineDash:[,,,,].fill(H.value.zoom.preview.strokeDasharray),lineWidth:H.value.zoom.preview.strokeWidth})}function Wr(){M.value&&U.value&&C.value&&(Cr(),D.value?((T.value!==null||A.value!==null)&&H.value.selector.show&&Fr(),Lr(),W.value.stacked&&B.value.x.showAxis&&Hr(),xr.value.forEach(e=>{(e.type===`line`||!e.type)&&Vr(e),O.value&&(wr(e),W.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&Dr(e))}),U.value&&(Wt.value=Fe(U.value))):(Wt.value&&(C.value.clearRect(0,0,1e4,1e4),C.value.drawImage(Wt.value,0,0)),(T.value!==null||A.value!==null)&&H.value.selector.show&&Fr(),(T.value!==null||A.value!==null)&&Y.value.forEach(e=>{let t=T.value??A.value,n=e.coordinatesLine[t];(e.type===`line`||!e.type||e.type===`plot`)&&n&&Number.isFinite(n.x)&&Number.isFinite(n.y)&&ze(C.value,{x:n.x,y:n.y},w.value/150*H.value.line.plots.radiusRatio,{color:H.value.backgroundColor,fillStyle:e.color,strokeColor:`transparent`})})),z.value.show&&Pr(),H.value.selector.show&&H.value.selector.showHorizontalSelector&&Ir(),Er(),Tr(),H.value.zoom.preview.enable&&(X.value.start!==Z.value.start||X.value.end!==Z.value.end)&&Ur(),D.value=!1)}let Gr=Le(()=>{O.value=!0,Sr()},G.value>200?10:1,!O.value);function Kr(e){if([null,void 0].includes(T.value??A.value)||!e.coordinatesLine[T.value??A.value])return!1;let{y:t,value:n}=e.coordinatesLine[T.value??A.value];return{y:t,value:n}}let qr=d(()=>!qn.value||Zn.value==null||Qn.value==null?null:{x:Math.min(Zn.value,Qn.value),y:K.value.top,width:Math.abs(Qn.value-Zn.value),height:K.value.height}),Jr=d(()=>an.value?Number(X.value.start)!==0||Number(X.value.end)!==Number(G.value):!1);function Yr(e){if(!U.value)return null;let t=U.value.getBoundingClientRect();return!t.width||!t.height?null:{x:(e.clientX-t.left)*(K.value.canvasWidth/t.width),y:(e.clientY-t.top)*(K.value.canvasHeight/t.height)}}function Xr(e){return Math.min(Math.max(e,K.value.left),K.value.right)}function Zr(e){return Y.value.map(t=>{let n=t.series[e];return{...t,name:t.name,value:[null,void 0,NaN].includes(n)?null:n,color:t.color,type:t.type}})}function Qr(e,t){if(t==null||t<0||t>=X.value.end-X.value.start)return;let n=P.value.events?.[e];i(n)&&n({datapoint:Zr(t),seriesIndex:t+X.value.start})}function $r(e){Yn.value!==e&&(Yn.value=e,Qr(`datapointEnter`,e))}function ei(){let e=Yn.value;e!=null&&Qr(`datapointLeave`,e),Yn.value=null}function ti(){Xn.value=!0,setTimeout(()=>{Xn.value=!1},0)}function ni(e){if(!e||!K.value?.slot)return null;let{left:t,right:n,top:r,bottom:i,slot:a}=K.value;if(e.x<t||e.x>n||e.y<r||e.y>i)return null;let o=Math.floor((e.x-t)/a),s=X.value.end-X.value.start;return o<0||o>=s?null:o}function ri(e){if(Xn.value){Xn.value=!1;return}let t=ni(Yr(e));t!==null&&Qr(`datapointClick`,t)}function ii(){ei(),vi(),A.value=null}function ai(e){let t=e?.pointerId==null?$n.value:e.pointerId;t!=null&&U.value?.hasPointerCapture?.(t)&&U.value.releasePointerCapture(t),qn.value=!1,Zn.value=null,Qn.value=null,$n.value=null}function oi(e){if(!nr.value||!Jr.value||!e)return!1;let t=Date.now(),n=e.pointerType||`mouse`,r=er.value,i=n===`touch`?450:350,a=n===`touch`?28:10,o=Math.hypot(e.clientX-r.x,e.clientY-r.y);return r.time>0&&r.pointerType===n&&t-r.time<=i&&o<=a?(er.value={time:0,x:0,y:0,pointerType:null},ti(),ai(e),fr({force:!0,publish:!0}),!0):(er.value={time:t,x:e.clientX,y:e.clientY,pointerType:n},!1)}function si(e){let t=Number(X.value.end)-Number(X.value.start);if(t<=0||!Number.isFinite(K.value.slot)||K.value.slot<=0)return null;let n=Math.floor((Xr(e)-K.value.left)/K.value.slot);return Math.max(0,Math.min(t-1,n))}function ci(e,t){let n=si(e),r=si(t);if(n==null||r==null)return null;let i=Math.min(n,r),a=Math.max(n,r);return a<=i?null:{start:Number(X.value.start)+i,end:Number(X.value.start)+a+1}}function li(e){let t=dr(e);return t?(N(`zoomStart`,{index:t.start,isZoom:t.start!==0}),N(`zoomEnd`,{index:t.end,isZoom:t.end!==G.value}),t):null}function ui(e){if(!nr.value||Ui.value||e.button!==void 0&&e.button!==0||$n.value!=null&&e.pointerId!==$n.value)return;let t=Yr(e);if(!t)return;let{left:n,right:r,top:i,bottom:a}=K.value;if(t.x<n||t.x>r||t.y<i||t.y>a||Number(X.value.end)-Number(X.value.start)<=1)return;Jn.value=!0,U.value?.focus?.({preventScroll:!0}),ii();let o=Xr(t.x);$n.value=e.pointerId,qn.value=!0,Zn.value=o,Qn.value=o}function di(e){if(!nr.value||!qn.value||$n.value!=null&&e.pointerId!==$n.value)return;let t=Yr(e);t&&(Qn.value=Xr(t.x),Zn.value!=null&&Math.abs(Qn.value-Zn.value)>=2&&!U.value?.hasPointerCapture?.(e.pointerId)&&U.value?.setPointerCapture?.(e.pointerId))}function fi(e){if(!nr.value||!qn.value||$n.value!=null&&e.pointerId!==$n.value)return;let t=Yr(e);t&&(Qn.value=Xr(t.x));let n=Zn.value,r=Qn.value;if((n==null||r==null?0:Math.abs(r-n))<Math.max(4,K.value.width*.01)){if(oi(e))return;ai(e);return}let i=ci(Math.min(n,r),Math.max(n,r));i?(ai(e),li(i)&&(er.value={time:0,x:0,y:0,pointerType:null},ii(),ti())):ai(e)}function pi(e){if(!M.value||!U.value||Pn.value||qn.value)return;let{left:t,top:n}=U.value.getBoundingClientRect(),r=e.clientX-t;if(k.value=(e.clientY-n)*2,(k.value<K.value.top||k.value>K.value.bottom)&&(k.value=null),r*2<K.value.left||r*2>K.value.right){ei(),vi();return}let a=r*2-K.value.left,o=Math.floor(a/K.value.slot);if($r(o),T.value=o,j.value=o,Bt.value=!0,cn.value=!1,!O.value)return;let s=``,ee=I.value.customFormat,c=Y.value.map(e=>({shape:e.shape||null,name:e.name,color:e.color,type:e.type||`line`,value:e.series.find((e,t)=>t===T.value)}));Ht.value={timeLabel:z.value.values.slice(X.value.start,X.value.end)[T.value]?I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[T.value]?.text:Nr.value[T.value]?.text:``,datapoint:c,seriesIndex:T.value,series:Y.value,config:P.value},Si({seriesIndex:T.value,datapoint:c}),i(ee)&&de(()=>ee({seriesIndex:T.value,datapoint:c,series:Y.value,config:P.value}))?Vt.value=ee({seriesIndex:T.value,datapoint:c,series:Y.value,config:P.value}):(z.value.values.slice(X.value.start,X.value.end)[T.value]?s+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${I.value.borderColor}; width:100%">${I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[T.value]?.text:Nr.value[T.value]?.text}</div>`:s+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${I.value.borderColor}; width:100%">${$.value[T.value+X.value.start]?.text??``}</div>`,s+=Un.value.join(``),Vt.value=s),O.value=!1}function mi(e){return Y.value.map(t=>({shape:t.shape||null,name:t.name,color:t.color,type:t.type||`line`,value:t.series.find((t,n)=>n===e)}))}function hi(e){let t=``,n=I.value.customFormat,r=mi(e);return Si({seriesIndex:e,datapoint:r}),i(n)&&de(()=>n({seriesIndex:e,datapoint:r,series:Y.value,config:P.value}))?n({seriesIndex:e,datapoint:r,series:Y.value,config:P.value}):(z.value.values.slice(X.value.start,X.value.end)[e]?t+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${I.value.borderColor}; width:100%">${I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[e]?.text:Nr.value[e]?.text}</div>`:t+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${I.value.borderColor}; width:100%">${$.value[e+X.value.start]?.text??``}</div>`,t+=Un.value.join(``),t)}function gi(e){if(!U.value||!K.value?.slot)return;let t=U.value.getBoundingClientRect(),n=t.width/K.value.canvasWidth,r=t.height/K.value.canvasHeight,i=K.value.left+K.value.slot*e+K.value.slot/2,a=K.value.top+K.value.height/2;un.value={x:t.left+i*n,y:t.top+a*r}}function _i(e,{fromKeyboard:t=!1,triggerEvent:n=!0}={}){M.value&&!Pn.value&&e!=null&&(e<0||e>=X.value.end-X.value.start||(n&&$r(e),T.value=e,j.value=e,Bt.value=!0,cn.value=t,Vt.value=hi(e),t&&gi(e),O.value=!1,Wr()))}function vi(){Bt.value=!1,T.value=null,j.value=null,Vt.value=``,k.value=null,cn.value=!1,Wr()}function yi(){ln.value=!0}function bi(){Jn.value=!1,ln.value=!1,vi()}function xi(e){if(!U.value||Ui.value||document.activeElement!==U.value)return;if(Jn.value=!1,e.key===`Escape`){if(nr.value&&(Jr.value||qn.value)){e.preventDefault(),e.stopPropagation(),ai(),fr({force:!0,publish:!0});return}vi();return}let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`;if(!t&&!n)return;let r=X.value.end-X.value.start;if(r<=0)return;e.preventDefault(),e.stopPropagation();let i=j.value;i!==null&&i>=0&&i<r?n?(i+=1,i>=r&&(i=0)):(--i,i<0&&(i=r-1)):i=n?0:r-1,_i(i,{fromKeyboard:!0})}function Si({seriesIndex:e,datapoint:t}){let n=X.value.start+e;N(`selectX`,{dataset:t,index:n,indexLabel:``})}b(()=>S.selectedXIndex,e=>{if([null,void 0].includes(S.selectedXIndex)){vi();return}let t=e-X.value.start;t<0||e>=X.value.end?vi():_i(t,{fromKeyboard:!1,triggerEvent:!1})},{immediate:!0}),b(()=>T.value,e=>{Gr()}),b(()=>X.value,e=>{D.value=!0,Wr()},{deep:!0}),b(()=>Z.value,e=>{Wr()},{deep:!0}),b(()=>W.value.showDataLabels,e=>{D.value=!0,Wr()}),b(()=>k.value,e=>{e&&Wr()}),b(()=>W.value.stacked,e=>{D.value=!0,O.value=!0,Gr()});function Ci(){ei(),vi()}let wi=lt(null),Ti=lt(null),Ei=lt(null);ot(()=>{en.value=!0,Di()});function Di(){if(me(S.dataset)&&ae({componentName:`VueUiXyCanvas`,type:`dataset`,debug:gn.value}),nt(()=>{U.value&&!C.value&&(C.value=U.value.getContext(`2d`,{willReadFrequently:!0})),C.value&&M.value&&(D.value=!0,O.value=!0,Sr())}),P.value.responsive){let e=Pe(()=>{let{width:e,height:t}=Be({chart:Lt.value,title:H.value.title.text?qt.value:null,legend:H.value.legend.show?Jt.value:null,slicer:H.value.zoom.show&&G.value>6?Yt.value?.$el:null,source:Xt.value});requestAnimationFrame(()=>{Dn.value=`${e} / ${t}`})});wi.value&&(Ti.value&&wi.value.unobserve(Ti.value),wi.value.disconnect()),wi.value=new ResizeObserver(e),Ti.value=Lt.value.parentNode,wi.value.observe(Ti.value)}Ei.value&&Ei.value.disconnect(),Ei.value=new ResizeObserver(async e=>{for(let t of e)t.contentBoxSize&&Rt.value&&(D.value=!0,Gr())}),Ei.value.observe(Rt.value),fr()}at(()=>{Ei.value&&Ei.value.disconnect(),wi.value&&(Ti.value&&wi.value.unobserve(Ti.value),wi.value.disconnect())});function Oi(){E.value.length?E.value=[]:Ni.value.forEach((e,t)=>{E.value.push(t)}),D.value=!0,Gr(),N(`selectLegend`,Y.value)}function ki(e){E.value.includes(e)?E.value=E.value.filter(t=>t!==e):E.value.push(e),D.value=!0,Gr(),N(`selectLegend`,Y.value)}function Ai(e){return J.value.length?J.value.find(t=>t.name===e)||(gn.value&&console.warn(`VueUiXyCanvas - Series name not found "${e}"`),null):(gn.value&&console.warn(`VueUiXyCanvas - There are no series to show.`),null)}function ji(e){let t=Ai(e);t!==null&&E.value.includes(t.absoluteIndex)&&ki(t.absoluteIndex)}function Mi(e){let t=Ai(e);t!==null&&(E.value.includes(t.absoluteIndex)||ki(t.absoluteIndex))}let Ni=d(()=>J.value.map((e,t)=>({...e,name:e.name,color:l(e.color)||Nn.value[t]||o[t]||o[t%o.length],shape:e.shape||`circle`,prefix:e.prefix||``,suffix:e.suffix||``,rounding:e.rounding||0})).map(e=>({...e,opacity:E.value.includes(e.absoluteIndex)?.5:1,segregate:()=>ki(e.absoluteIndex),isSegregated:E.value.includes(e.absoluteIndex)}))),Pi=d(()=>({cy:`donut-div-legend`,backgroundColor:H.value.legend.backgroundColor,color:H.value.legend.color,fontSize:H.value.legend.fontSize,paddingBottom:12,fontWeight:H.value.legend.bold?`bold`:``})),Fi=d(()=>{let e=[``].concat(Y.value.map(e=>e.name),`__SUM__`),t=[];for(let e=0;e<G.value;e+=1){let n=Y.value.map(t=>t.series[e]??0).reduce((e,t)=>e+t,0);t.push([z.value.values.slice(X.value.start,X.value.end)[e]?$?.value?.slice(X.value.start,X.value.end)?.[e]?.text??e+1:e+1].concat(Y.value.map(t=>(t.series[e]??0).toFixed(P.value.table.rounding)),(n??0).toFixed(P.value.table.rounding)))}let n={th:{backgroundColor:P.value.table.th.backgroundColor,color:P.value.table.th.color,outline:P.value.table.th.outline},td:{backgroundColor:P.value.table.td.backgroundColor,color:P.value.table.td.color,outline:P.value.table.td.outline},breakpoint:P.value.table.responsiveBreakpoint},r=[P.value.table.columnNames.period].concat(Y.value.map(e=>e.name),P.value.table.columnNames.total);return{head:e,body:t.slice(0,X.value.end-X.value.start),config:n,colNames:r}}),Ii=d(()=>{if(Y.value.length===0)return{head:[],body:[],config:{},columnNames:[]};let e=Y.value.map(e=>({label:e.name,color:e.color,type:e.type})),t=[];for(let e=X.value.start;e<X.value.end;e+=1){let n=[z.value.values[e]?$.value[e].text:e+1];Y.value.forEach(t=>{n.push(Number((t.series[e]||0).toFixed(P.value.table.rounding)))}),t.push(n)}return{head:e,body:t}});function Li(e=null){let t=[[H.value.title.text],[H.value.title.subtitle.text],[``]],n=[``,...Ii.value.head.map(e=>e.label)],i=Ii.value.body,a=t.concat([n]).concat(i),o=r(a);e?e(o):le({csvContent:o,title:H.value.title.text||`vue-ui-xy-canvas`})}function Ri(){return Y.value}function zi(){W.value.showTable=!W.value.showTable}function Bi(){W.value.showDataLabels=!W.value.showDataLabels}function Vi(){W.value.stacked=!W.value.stacked}function Hi(){W.value.showTooltip=!W.value.showTooltip}let Ui=_(!1);function Wi(){Ui.value=!Ui.value}async function Gi({scale:e=2}={}){if(!Lt.value)return;let{imageUri:t,base64:n}=await Se({domElement:Lt.value,base64:!0,img:!0,scale:e}),r=Lt.value.getBoundingClientRect(),i={width:r.width,height:r.height,aspectRatio:r.height?r.width/r.height:0},a=await ie(t,e)??i;return{imageUri:t,base64:n,title:H.value.title.text,...a}}let Ki=d(()=>Ee({config:P,style:H,mutableConfig:W,dialog:Mt,accordion:He,isFullscreen:Kt,parent:Lt,maxWidth:800,isCursorPointer:hn}));b(()=>W.value.showTable,e=>Te(e,P,tn));function qi(){W.value.showTable=!1,nn.value&&nn.value.setTableIconState(!1)}function Ji(e){e?.stage===`start`?sn.value=!0:e?.stage===`end`?sn.value=!1:jn()}async function Yi(){N(`copyAlt`,{config:P.value,dataset:Y.value}),F.value.callbacks.altCopy?await Promise.resolve(F.value.callbacks.altCopy({config:P.value,dataset:Y.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}return ye({getData:Ri,getImage:Gi,generateCsv:Li,generatePdf:An,generateImage:jn,hideSeries:Mi,showSeries:ji,toggleTable:zi,toggleLabels:Bi,toggleStack:Vi,toggleTooltip:Hi,toggleAnnotator:Wi,toggleFullscreen:Mn,copyAlt:Yi,resetZoom:()=>fr({force:!0,publish:!0}),setZoomState:dr}),(t,n)=>(g(),Xe(`div`,{style:it(`width:100%; position:relative; ${P.value.responsive?`height: 100%`:``}; background:${P.value.style.chart.backgroundColor};`),ref_key:`xy`,ref:Lt,id:`xy_canvas_${It.value}`,class:rt(`vue-data-ui-component vue-ui-xy-canvas ${Kt.value?`vue-data-ui-wrapper-fullscreen`:``}`),onMouseenter:Cn,onMouseleave:wn},[p(`div`,{id:`chart-instructions-${It.value}`,class:`sr-only`},[p(`p`,null,ut(P.value.a11y.translations.keyboardNavigation),1)],8,gt),p(`div`,_t,ut(mn.value),1),P.value.style.chart.title.text?(g(),Xe(`div`,{key:0,ref_key:`chartTitle`,ref:qt,style:it(`width:100%;background:${P.value.style.chart.backgroundColor};`)},[(g(),Ye(we,{key:`title_${Zt.value}`,config:{title:{cy:`xy-canvas-title`,...P.value.style.chart.title},subtitle:{cy:`xy-canvas-subtitle`,...P.value.style.chart.title.subtitle}}},null,8,[`config`]))],4)):f(``,!0),p(`div`,{id:`legend-top-${It.value}`},null,8,vt),F.value.show&&M.value&&(y(Sn)||y(bn))?(g(),Ye(y(At),{ref_key:`userOptionsRef`,ref:nn,key:`user_option_${Gt.value}`,backgroundColor:P.value.style.chart.backgroundColor,color:P.value.style.chart.color,isPrinting:y(On),isImaging:y(kn),uid:It.value,hasTooltip:F.value.buttons.tooltip&&I.value.show,hasPdf:F.value.buttons.pdf,hasImg:F.value.buttons.img,hasXls:F.value.buttons.csv,hasLabel:F.value.buttons.labels,hasStack:e.dataset.length>1&&F.value.buttons.stack,hasFullscreen:F.value.buttons.fullscreen,hasAltCopy:F.value.buttons.altCopy,hasTable:X.value.end-X.value.start<=730&&F.value.buttons.table,isFullscreen:Kt.value,isTooltip:W.value.showTooltip,isStacked:W.value.stacked,titles:{...F.value.buttonTitles},chartElement:Lt.value,position:F.value.position,hasAnnotator:F.value.buttons.annotator,isAnnotation:Ui.value,callbacks:F.value.callbacks,printScale:F.value.print.scale,tableDialog:P.value.table.useDialog,isCursorPointer:hn.value,onToggleFullscreen:Mn,onGeneratePdf:y(An),onGenerateCsv:Li,onGenerateImage:Ji,onToggleTable:zi,onToggleLabels:Bi,onToggleStack:Vi,onToggleTooltip:Hi,onToggleAnnotator:Wi,onCopyAlt:Yi,style:it({visibility:y(Sn)?y(bn)?`visible`:`hidden`:`visible`})},Ze({_:2},[st(y(De)(t.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionTable optionLabels optionStack optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),e=>({name:e,fn:x(n=>[v(t.$slots,e,h(m(y(Oe)(e,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasXls.hasLabel.hasStack.hasFullscreen.hasAltCopy.hasTable.isFullscreen.isTooltip.isStacked.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.style`.split(`.`))):f(``,!0),p(`div`,{class:`vue-ui-xy-canvas`,style:it(`position: relative; aspect-ratio: ${Dn.value}`),ref_key:`container`,ref:Rt},[p(`canvas`,{ref_key:`canvas`,ref:U,class:rt({"vue-ui-xy-canvas-chart-zoom-pointer-focus":nr.value&&Jn.value}),"aria-label":pn.value,"aria-describedby":`chart-instructions-${It.value}`,role:`img`,"aria-live":`polite`,tabindex:`0`,style:it({width:`100%`,height:`100%`,cursor:nr.value?qn.value?`col-resize`:`crosshair`:void 0,touchAction:nr.value?`pan-y`:void 0,userSelect:nr.value?`none`:void 0}),onMousemove:n[0]||=e=>pi(e),onMouseleave:Ci,onClick:ri,onPointerdown:ui,onPointermove:di,onPointerup:fi,onPointercancel:ai,onFocus:yi,onBlur:bi,onKeydown:xi},null,46,yt),qr.value?(g(),Xe(`svg`,{key:0,viewBox:`0 0 ${K.value.canvasWidth} ${K.value.canvasHeight}`,preserveAspectRatio:`none`,"aria-hidden":`true`,style:{position:`absolute`,inset:`0`,width:`100%`,height:`100%`,"pointer-events":`none`,overflow:`visible`}},[p(`rect`,{x:qr.value.x,y:qr.value.y,width:qr.value.width,height:qr.value.height,fill:tr.value.selection.fill,"fill-opacity":tr.value.selection.fillOpacity,stroke:tr.value.selection.stroke,"stroke-opacity":tr.value.selection.strokeOpacity,"stroke-width":tr.value.selection.strokeWidth,"stroke-dasharray":tr.value.selection.strokeDasharray,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,xt)],8,bt)):f(``,!0),t.$slots.hint?(g(),Xe(`div`,St,[v(t.$slots,`hint`,h(m({hint:P.value.a11y.translations.keyboardNavigation,isVisible:ln.value})),void 0,!0)])):f(``,!0),v(t.$slots,`skeleton`,{},()=>[y(vn)?(g(),Ye(ge,{key:0})):f(``,!0)],!0),$e(y(Ot),{teleportTo:I.value.teleportTo,show:W.value.showTooltip&&Bt.value,backgroundColor:I.value.backgroundColor,color:I.value.color,fontSize:I.value.fontSize,borderRadius:I.value.borderRadius,borderColor:I.value.borderColor,borderWidth:I.value.borderWidth,position:I.value.position,offsetX:I.value.offsetX,offsetY:I.value.offsetY,parent:t.$refs.xy,content:Vt.value,isFullscreen:Kt.value,backgroundOpacity:I.value.backgroundOpacity,isCustom:y(i)(I.value.customFormat),smooth:I.value.smooth,backdropFilter:I.value.backdropFilter,smoothForce:I.value.smoothForce,smoothSnapThreshold:I.value.smoothSnapThreshold,isA11yMode:cn.value,a11yPosition:un.value},{"tooltip-before":x(()=>[v(t.$slots,`tooltip-before`,h(m({...Ht.value})),void 0,!0)]),tooltip:x(()=>[v(t.$slots,`tooltip`,h(m({...Ht.value})),void 0,!0)]),"tooltip-after":x(()=>[v(t.$slots,`tooltip-after`,h(m({...Ht.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`fontSize`,`borderRadius`,`borderColor`,`borderWidth`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`backgroundOpacity`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`])],4),P.value.style.chart.zoom.show&&G.value>6&&M.value&&an.value&&!y(vn)?(g(),Ye(Ve,{key:2,ref_key:`chartSlicer`,ref:Yt,"data-dom-to-png-ignore-layout":``,allMinimaps:Kn.value,background:P.value.style.chart.zoom.color,borderColor:P.value.style.chart.backgroundColor,customFormat:P.value.style.chart.zoom.customFormat,cutNullValues:Wn.value,enableRangeHandles:P.value.style.chart.zoom.enableRangeHandles,enableSelectionDrag:P.value.style.chart.zoom.enableSelectionDrag,end:X.value.end,focusOnDrag:P.value.style.chart.zoom.focusOnDrag,focusRangeRatio:P.value.style.chart.zoom.focusRangeRatio,fontSize:P.value.style.chart.zoom.fontSize,immediate:!P.value.style.chart.zoom.preview.enable,inputColor:P.value.style.chart.zoom.color,isPreview:pr.value,labelLeft:P.value.style.chart.grid.x.timeLabels.values[X.value.start]?$.value[X.value.start]?.text:``,labelRight:P.value.style.chart.grid.x.timeLabels.values[X.value.end-1]?$.value[X.value.end-1]?.text:``,max:G.value,min:0,minimap:Gn.value,minimapCompact:P.value.style.chart.zoom.minimap.compact,minimapFrameColor:P.value.style.chart.zoom.minimap.frameColor,minimapIndicatorColor:P.value.style.chart.zoom.minimap.indicatorColor,minimapLineColor:P.value.style.chart.zoom.minimap.lineColor,minimapMerged:P.value.style.chart.zoom.minimap.merged,minimapSelectedColor:P.value.style.chart.zoom.minimap.selectedColor,minimapSelectedColorOpacity:P.value.style.chart.zoom.minimap.selectedColorOpacity,minimapSelectedIndex:T.value,minimapSelectionRadius:P.value.style.chart.zoom.minimap.selectionRadius,preciseLabels:Mr.value?.length?Mr.value:$.value,refreshEndPoint:P.value.style.chart.zoom.endIndex===null?G.value:P.value.style.chart.zoom.endIndex+1,refreshStartPoint:P.value.style.chart.zoom.startIndex===null?0:P.value.style.chart.zoom.startIndex,selectColor:P.value.style.chart.zoom.highlightColor,selectedSeries:J.value,smoothMinimap:P.value.style.chart.zoom.minimap.smooth,start:X.value.start,timeLabels:$.value,usePreciseLabels:P.value.style.chart.grid.x.timeLabels.datetimeFormatter.enable&&!P.value.style.chart.zoom.useDefaultFormat,textColor:P.value.style.chart.color,useResetSlot:P.value.style.chart.zoom.useResetSlot,valueEnd:X.value.end,valueStart:X.value.start,verticalHandles:P.value.style.chart.zoom.minimap.verticalHandles,maxWidth:P.value.style.chart.zoom.maxWidth,minimapLeftInsetRatio:K.value.canvasWidth>0&&P.value.style.chart.zoom.autoFit?K.value.left/K.value.canvasWidth:null,minimapRightInsetRatio:K.value.canvasWidth>0&&P.value.style.chart.zoom.autoFit?(K.value.canvasWidth-K.value.right)/K.value.canvasWidth:null,additionalMinimapHeight:P.value.style.chart.zoom.minimap.additionalHeight,handleType:P.value.style.chart.zoom.minimap.handleType,handleIconColor:P.value.style.chart.zoom.minimap.handleIconColor,handleBorderWidth:P.value.style.chart.zoom.minimap.handleBorderWidth,handleBorderColor:P.value.style.chart.zoom.minimap.handleBorderColor,handleFill:P.value.style.chart.zoom.minimap.handleFill,handleWidth:P.value.style.chart.zoom.minimap.handleWidth,onFutureEnd:n[1]||=e=>mr(`end`,e),onFutureStart:n[2]||=e=>mr(`start`,e),onReset:n[3]||=()=>fr({force:!0,publish:!0}),onTrapMouse:Fn,"onUpdate:end":vr,"onUpdate:start":_r},{"reset-action":x(({reset:e})=>[v(t.$slots,`reset-action`,h(m({reset:e})),void 0,!0)]),_:3},8,/* @__PURE__ */ `allMinimaps.background.borderColor.customFormat.cutNullValues.enableRangeHandles.enableSelectionDrag.end.focusOnDrag.focusRangeRatio.fontSize.immediate.inputColor.isPreview.labelLeft.labelRight.max.minimap.minimapCompact.minimapFrameColor.minimapIndicatorColor.minimapLineColor.minimapMerged.minimapSelectedColor.minimapSelectedColorOpacity.minimapSelectedIndex.minimapSelectionRadius.preciseLabels.refreshEndPoint.refreshStartPoint.selectColor.selectedSeries.smoothMinimap.start.timeLabels.usePreciseLabels.textColor.useResetSlot.valueEnd.valueStart.verticalHandles.maxWidth.minimapLeftInsetRatio.minimapRightInsetRatio.additionalMinimapHeight.handleType.handleIconColor.handleBorderWidth.handleBorderColor.handleFill.handleWidth`.split(`.`))):f(``,!0),p(`div`,{id:`legend-bottom-${It.value}`},null,8,Ct),en.value&&(P.value.style.chart.legend.show||t.$slots.legend)?(g(),Ye(Je,{key:3,to:P.value.style.chart.legend.position===`top`?`#legend-top-${It.value}`:`#legend-bottom-${It.value}`},[p(`div`,{ref_key:`chartLegend`,ref:Jt},[v(t.$slots,`legend`,{legend:Ni.value},()=>[P.value.style.chart.legend.show&&M.value?(g(),Ye(Ke,{legendSet:Ni.value,config:Pi.value,key:`legend_${$t.value}`,isCursorPointer:hn.value,onClickMarker:n[4]||=({i:e})=>ki(e)},{item:x(({legend:e,index:t})=>[p(`div`,{onClick:t=>e.segregate(),style:it(`opacity:${E.value.includes(t)?.5:1}`)},ut(e.name),13,wt)]),legendToggle:x(()=>[Ni.value.length>2&&P.value.style.chart.legend.selectAllToggle.show&&!y(vn)?(g(),Ye(Ue,{key:0,backgroundColor:P.value.style.chart.legend.selectAllToggle.backgroundColor,color:P.value.style.chart.legend.selectAllToggle.color,fontSize:P.value.style.chart.legend.fontSize,checked:E.value.length>0,isCursorPointer:hn.value,onToggle:Oi},null,8,[`backgroundColor`,`color`,`fontSize`,`checked`,`isCursorPointer`])):f(``,!0)]),_:1},8,[`legendSet`,`config`,`isCursorPointer`])):f(``,!0)],!0)],512)],8,[`to`])):f(``,!0),t.$slots.watermark?(g(),Xe(`div`,Tt,[v(t.$slots,`watermark`,h(m({isPrinting:y(On)||y(kn)||sn.value})),void 0,!0)])):f(``,!0),t.$slots.source?(g(),Xe(`div`,{key:5,ref_key:`source`,ref:Xt,dir:`auto`},[v(t.$slots,`source`,{},void 0,!0)],512)):f(``,!0),M.value&&F.value.buttons.table?(g(),Ye(ct(Ki.value.component),tt({key:6},Ki.value.props,{ref_key:`tableUnit`,ref:tn,onClose:qi}),Ze({content:x(()=>[(g(),Ye(y(kt),{key:`table_${Qt.value}`,colNames:Fi.value.colNames,head:Fi.value.head,body:Fi.value.body,config:Fi.value.config,title:P.value.table.useDialog?``:Ki.value.title,withCloseButton:!P.value.table.useDialog,isCursorPointer:hn.value,onClose:qi},{th:x(({th:e})=>[e===`__SUM__`?(g(),Xe(`div`,Et,[$e(Ce,{name:`sigma`,stroke:Fi.value.config.th.color,size:16},null,8,[`stroke`])])):(g(),Xe(`div`,Dt,ut(e),1))]),td:x(({td:e})=>[Qe(ut(e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[P.value.table.useDialog?{name:`title`,fn:x(()=>[Qe(ut(Ki.value.title),1)]),key:`0`}:void 0,P.value.table.useDialog?{name:`actions`,fn:x(()=>[p(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:n[5]||=e=>Li(F.value.callbacks.csv),style:it({cursor:hn.value?`pointer`:`default`})},[$e(Ce,{name:`fileCsv`,stroke:Ki.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):f(``,!0),F.value.buttons.annotator&&Y.value.length?(g(),Ye(y(jt),{key:7,parent:Lt.value,backgroundColor:P.value.style.chart.backgroundColor,color:P.value.style.chart.color,active:Ui.value,isCursorPointer:hn.value,onClose:Wi},{"annotator-action-close":x(()=>[v(t.$slots,`annotator-action-close`,{},void 0,!0)]),"annotator-action-color":x(({color:e})=>[v(t.$slots,`annotator-action-color`,h(m({color:e})),void 0,!0)]),"annotator-action-draw":x(({mode:e})=>[v(t.$slots,`annotator-action-draw`,h(m({mode:e})),void 0,!0)]),"annotator-action-undo":x(({disabled:e})=>[v(t.$slots,`annotator-action-undo`,h(m({disabled:e})),void 0,!0)]),"annotator-action-redo":x(({disabled:e})=>[v(t.$slots,`annotator-action-redo`,h(m({disabled:e})),void 0,!0)]),"annotator-action-delete":x(({disabled:e})=>[v(t.$slots,`annotator-action-delete`,h(m({disabled:e})),void 0,!0)]),_:3},8,[`parent`,`backgroundColor`,`color`,`active`,`isCursorPointer`])):f(``,!0)],46,ht))}},[[`__scopeId`,`data-v-89100e57`]]);export{mt as n,Ot as t};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vue-data-ui",
3
3
  "private": false,
4
- "version": "3.28.0",
4
+ "version": "3.28.1",
5
5
  "type": "module",
6
6
  "description": "A user-empowering data visualization Vue 3 components library for eloquent data storytelling",
7
7
  "keywords": [
@@ -119,7 +119,7 @@
119
119
  }
120
120
  },
121
121
  "devDependencies": {
122
- "@vitejs/plugin-vue": "^6.0.8",
122
+ "@vitejs/plugin-vue": "^6.0.10",
123
123
  "cypress": "^15.19.0",
124
124
  "jsdom": "^29.1.1",
125
125
  "prettier": "3.8.1",
@@ -127,7 +127,7 @@
127
127
  "sass": "^1.57.1",
128
128
  "simple-git": "^4.0.2",
129
129
  "typescript": "^6.0.2",
130
- "vite": "^8.3.0",
130
+ "vite": "^8.3.4",
131
131
  "vitest": "^5.0.0",
132
132
  "vue": "^3.5.44"
133
133
  }
@@ -1 +0,0 @@
1
- import{t as e}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t}from"./BaseIcon-DDctLkeT.js";import{Fragment as n,computed as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createVNode as s,normalizeClass as c,normalizeStyle as l,onBeforeUnmount as u,onMounted as d,openBlock as f,ref as p,renderSlot as m,toDisplayString as h}from"vue";var g=[`aria-label`],_=[`aria-label`],v=[`aria-label`],y=/*#__PURE__*/ e(/* @__PURE__ */ Object.assign({name:`HillActions`},{__name:`HillActions`,props:{isEditing:{type:Boolean,default:!1},isEditable:{type:Boolean,default:!0},isFullscreen:{type:Boolean,default:!1},position:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},color:{type:String,default:`#2D353C`},backgroundColor:{type:String,default:`#FFFFFF`},translations:{type:Object,default(){return{edit:`Edit`,cancel:`Cancel`,save:`Save`}}},showTooltips:{type:Boolean,default:!0},isCursorPointer:{type:Boolean,default:!1},zIndex:{type:Number,default:1}},emits:[`update`,`cancel`,`save`],setup(e,{emit:y}){let b=e,x=y,S=p(!0),C=p(null),w=r(()=>({zIndex:b.zIndex,position:b.isFullscreen?`fixed`:`absolute`,top:`0`,left:b.position===`left`?b.isFullscreen?`12px`:`0`:`auto`,right:b.position===`right`?b.isFullscreen?`12px`:`0`:`auto`,height:`36px`,padding:`4px`,background:`transparent`,display:`flex`,alignItems:`center`,gap:`4px`,overflow:`visible`})),T=r(()=>({cursor:b.isCursorPointer?`pointer`:`default`,background:b.backgroundColor,color:b.color}));function E(){if(typeof window>`u`){S.value=!0;return}S.value=window.innerWidth>600}function D(e){E(),C.value=e}function O(e){C.value===e&&(C.value=null)}function k(e){return{"button-info-left":b.position===`left`,"button-info-right":b.position===`right`,"button-info-left-visible":b.position===`left`&&C.value===e,"button-info-right-visible":b.position===`right`&&C.value===e}}function A(e){b.showTooltips&&D(e)}function j(e){O(e),x(e)}return d(()=>{E(),window.addEventListener(`resize`,E,{passive:!0})}),u(()=>{window.removeEventListener(`resize`,E)}),(r,u)=>e.isEditable?(f(),a(`div`,{key:0,class:`vue-ui-hill-actions`,style:l(w.value),"data-dom-to-png-ignore":``},[e.isEditing?(f(),a(n,{key:1},[o(`button`,{type:`button`,class:`vue-ui-hill-actions__button`,style:l(T.value),"aria-label":e.translations.cancel,onMouseenter:u[5]||=e=>A(`cancel`),onMouseout:u[6]||=e=>O(`cancel`),onFocus:u[7]||=e=>A(`cancel`),onBlur:u[8]||=e=>O(`cancel`),onClick:u[9]||=e=>j(`cancel`)},[m(r.$slots,`hill-cancel`,{},()=>[s(t,{name:`circleCancel`,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`stroke`])],!0),e.showTooltips&&S.value&&e.translations.cancel?(f(),a(`div`,{key:0,dir:`auto`,class:c(k(`cancel`)),style:l({background:e.backgroundColor,color:e.color})},h(e.translations.cancel),7)):i(``,!0)],44,_),o(`button`,{type:`button`,class:`vue-ui-hill-actions__button`,style:l(T.value),"aria-label":e.translations.save,onMouseenter:u[10]||=e=>A(`save`),onMouseout:u[11]||=e=>O(`save`),onFocus:u[12]||=e=>A(`save`),onBlur:u[13]||=e=>O(`save`),onClick:u[14]||=e=>j(`save`)},[m(r.$slots,`hill-save`,{},()=>[s(t,{name:`save`,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`stroke`])],!0),e.showTooltips&&S.value&&e.translations.save?(f(),a(`div`,{key:0,dir:`auto`,class:c(k(`save`)),style:l({background:e.backgroundColor,color:e.color})},h(e.translations.save),7)):i(``,!0)],44,v)],64)):(f(),a(`button`,{key:0,type:`button`,class:`vue-ui-hill-actions__button`,style:l(T.value),"aria-label":e.translations.edit,onMouseenter:u[0]||=e=>A(`update`),onMouseout:u[1]||=e=>O(`update`),onFocus:u[2]||=e=>A(`update`),onBlur:u[3]||=e=>O(`update`),onClick:u[4]||=e=>j(`update`)},[m(r.$slots,`hill-edit`,{},()=>[s(t,{name:`move`,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`stroke`])],!0),e.showTooltips&&S.value&&e.translations.edit?(f(),a(`div`,{key:0,dir:`auto`,class:c(k(`update`)),style:l({background:e.backgroundColor,color:e.color})},h(e.translations.edit),7)):i(``,!0)],44,g))],4)):i(``,!0)}}),[[`__scopeId`,`data-v-f3e67d0c`]]);export{y as default};
@@ -1 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{$ as t,Ft as n,X as r,t as i}from"./lib-DqD8nbyX.js";import{t as a}from"./BaseIcon-DDctLkeT.js";import{t as o}from"./ColorPicker-DHQvvLT9.js";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 ne,ref as _,renderSlot as v,toDisplayString as re,unref as ie,vModelText as ae,watch as y,withCtx as oe,withDirectives as se}from"vue";var ce=/* @__PURE__ */ e({default:()=>b}),le={"aria-hidden":`true`,viewBox:`0 0 6 12`,style:{width:`100%`}},ue=[`fill`],de=[`fill`],fe=[`fill`],pe=[`disabled`],me=750,he=8,ge=2,b={__name:`PenAndPaper`,props:{svgRef:{type:[Object,null,void 0],required:!0},color:{type:String,default:`#2D353C`},backgroundColor:{type:String,default:`#FFFFFF`},active:{type:Boolean,default:!1},scale:{type:Number,default:1},isCursorPointer:{type:Boolean,default:!1},palette:{type:Array,default:()=>[`#000000`,`#FFFFFF`,`#FF5733`,`#33FF57`,`#3357FF`,`#FFC300`,`#800080`,`#FF1493`,`#00CED1`]}},emits:[`close`],setup(e,{emit:ce}){let b=e,_e=ce,x=_([]),S=_([]),C=_(b.color),w=_(2),T=_(!1),ve=_(``),E=_(null),D=_(null),O=_(null),ye=_(null),k=_(null),be=_(null),A=_(!1),j=_(null),xe=_(``),M=_(``),N=_(!1),Se=_(!1),P=_(null),Ce=_(null),we=_(!1),F=_(``),Te=/* @__PURE__ */ new Map,Ee=_(`arrow-def-${r()}`),I=_(!1),L=_(null),De=_({x:0,y:0}),R=_([``]),z=_({row:0,col:0}),B=_(16),Oe=_(!1),ke=_(``),Ae=_(!1),je=[`arrow`,`text`,`line`,`draw`],V=_(0),H=s(()=>je[V.value]),Me={arrow:`plotArrow`,text:`text`,line:`plotLine`,draw:`annotator`},Ne=_(`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`);function Pe(e){let t=e?.target;if(!(t instanceof Element))return null;let n=t.closest(`.vue-data-ui-doodle`);return n&&E.value?.contains(n)?n:null}function Fe(e){let t=e?.target;if(!(t instanceof Element))return null;let n=t.closest(`.vue-data-ui-selection-handle`);return n&&E.value?.contains(n)?n:null}function Ie(e){let t=e?.target;if(!(t instanceof Element))return null;let n=t.closest(`.vue-data-ui-selection-delete`);return n&&E.value?.contains(n)?n:null}function Le(e){if(!e)return``;let t=e.getAttribute(`data-doodle-id`);return t||(t=r(),e.setAttribute(`data-doodle-id`,t)),t}function U(){return E.value?Array.from(E.value.children).filter(e=>e.classList?.contains(`vue-data-ui-doodle`)).map(e=>e.outerHTML).join(``):``}function Re(e){if(!E.value)return;K();let t=E.value.querySelector(`.vue-data-ui-svg-caret`);if(t&&t.remove(),Array.from(E.value.children).forEach(e=>{e.classList?.contains(`vue-data-ui-doodle`)&&e.remove()}),e){let t=document.createElementNS(i,`g`);t.innerHTML=e,Array.from(t.children).forEach(e=>E.value.appendChild(e))}}function W(e,t=null){if(e===U())return;let n=Date.now(),r=x.value[x.value.length-1];t&&r?.mergeKey===t&&n-r.timestamp<=me?r.timestamp=n:x.value.push({state:e,mergeKey:t,timestamp:n}),S.value=[]}function ze(e){let t=e.touches?.[0]||e.changedTouches?.[0];return{x:t?t.clientX:e.clientX,y:t?t.clientY:e.clientY}}function Be(e,t){let n=b.svgRef;if(!n||!e)return null;let{x:r,y:i}=ze(t),a=n.createSVGPoint();a.x=r,a.y=i;let o=e.getScreenCTM()?.inverse();return o?a.matrixTransform(o):null}function Ve(e,t,n,r,i,a){let o=i-n,s=a-r,c=o*o+s*s;if(!c)return Math.hypot(e-n,t-r);let l=Math.max(0,Math.min(1,((e-n)*o+(t-r)*s)/c)),u=n+l*o,d=r+l*s;return Math.hypot(e-u,t-d)}function He(e,t){let n=Be(e,t);if(!n)return!1;let r=e.tagName.toLowerCase(),i=he*b.scale;if(r===`line`){let t=Number(e.getAttribute(`x1`)),r=Number(e.getAttribute(`y1`)),a=Number(e.getAttribute(`x2`)),o=Number(e.getAttribute(`y2`)),s=Number(e.getAttribute(`stroke-width`))||0;return Ve(n.x,n.y,t,r,a,o)<=Math.max(i,s/2)}if(r===`circle`){let t=Number(e.getAttribute(`cx`)),r=Number(e.getAttribute(`cy`)),a=Number(e.getAttribute(`r`))||0;return Math.hypot(n.x-t,n.y-r)<=a+i}if(r===`text`)try{let t=e.getBBox();return n.x>=t.x-i&&n.x<=t.x+t.width+i&&n.y>=t.y-i&&n.y<=t.y+t.height+i}catch{return!1}if(r===`path`)try{let t=e.getBBox();if(n.x<t.x-i||n.x>t.x+t.width+i||n.y<t.y-i||n.y>t.y+t.height+i)return!1;if(typeof e.isPointInStroke==`function`){let t=e.getAttribute(`stroke-width`),r=Math.max(Number(t)||0,i*2);e.setAttribute(`stroke-width`,r);let a=e.isPointInStroke(n);return t===null?e.removeAttribute(`stroke-width`):e.setAttribute(`stroke-width`,t),a}let r=e.getTotalLength(),a=Math.max(2*b.scale,2);for(let t=0;t<=r;t+=a){let r=e.getPointAtLength(t);if(Math.hypot(n.x-r.x,n.y-r.y)<=i)return!0}}catch{return!1}return!1}function Ue(e){return Pe(e)||E.value&&Array.from(E.value.querySelectorAll(`.vue-data-ui-doodle`)).reverse().find(t=>He(t,e))||null}function We(){be.value?.parentNode&&be.value.parentNode.removeChild(be.value),be.value=null}function G(){if(We(),!I.value&&b.active&&E.value&&k.value&&E.value.contains(k.value))try{let e=k.value,t=e.getBBox(),n=4*b.scale,r=document.createElementNS(i,`g`);r.setAttribute(`class`,`vue-data-ui-selection-overlay`);let a=document.createElementNS(i,`rect`);if(a.setAttribute(`class`,`vue-data-ui-selection-box`),a.setAttribute(`x`,t.x-n),a.setAttribute(`y`,t.y-n),a.setAttribute(`width`,Math.max(t.width+n*2,n*2)),a.setAttribute(`height`,Math.max(t.height+n*2,n*2)),a.setAttribute(`fill`,`none`),a.setAttribute(`stroke`,b.color),a.setAttribute(`stroke-width`,Math.max(1,b.scale)),a.setAttribute(`stroke-dasharray`,`${4*b.scale} ${3*b.scale}`),a.setAttribute(`pointer-events`,`none`),r.appendChild(a),e.tagName.toLowerCase()===`line`){let t=Math.max(4,5*b.scale),n=Math.max(1,1.5*b.scale);[{endpoint:`start`,x:Number(e.getAttribute(`x1`)),y:Number(e.getAttribute(`y1`))},{endpoint:`end`,x:Number(e.getAttribute(`x2`)),y:Number(e.getAttribute(`y2`))}].forEach(({endpoint:e,x:a,y:o})=>{let s=document.createElementNS(i,`circle`);s.setAttribute(`class`,`vue-data-ui-selection-handle`),s.setAttribute(`data-line-endpoint`,e),s.setAttribute(`cx`,a),s.setAttribute(`cy`,o),s.setAttribute(`r`,t),s.setAttribute(`fill`,b.backgroundColor),s.setAttribute(`stroke`,b.color),s.setAttribute(`stroke-width`,n),s.setAttribute(`pointer-events`,`all`),r.appendChild(s)})}let o=Math.max(20,24*b.scale),s=Math.max(1,b.scale),c=t.x+t.width+n+4*b.scale,l=t.y-n-o-4*b.scale,u=document.createElementNS(i,`g`);u.setAttribute(`class`,`vue-data-ui-selection-delete`),u.setAttribute(`role`,`button`),u.setAttribute(`tabindex`,`0`),u.setAttribute(`aria-label`,`Delete selected drawing`),u.setAttribute(`pointer-events`,`all`);let d=document.createElementNS(i,`rect`);d.setAttribute(`x`,c),d.setAttribute(`y`,l),d.setAttribute(`width`,o),d.setAttribute(`height`,o),d.setAttribute(`rx`,4*b.scale),d.setAttribute(`fill`,b.backgroundColor),d.setAttribute(`stroke`,J.value),d.setAttribute(`stroke-width`,s),d.setAttribute(`vector-effect`,`non-scaling-stroke`);let f=o/24,p=document.createElementNS(i,`path`);p.setAttribute(`d`,`M 8 8 L 16 16 M 16 8 L 8 16`),p.setAttribute(`transform`,`translate(${c} ${l}) scale(${f})`),p.setAttribute(`fill`,`none`),p.setAttribute(`stroke`,b.color),p.setAttribute(`stroke-width`,Math.max(1.25,1.5*b.scale)),p.setAttribute(`stroke-linecap`,`round`),p.setAttribute(`stroke-linejoin`,`round`),p.setAttribute(`vector-effect`,`non-scaling-stroke`),p.setAttribute(`pointer-events`,`none`),u.appendChild(d),u.appendChild(p),u.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),Ge(e))}),r.appendChild(u);let m=e.getAttribute(`transform`);m&&r.setAttribute(`transform`,m),E.value.appendChild(r),be.value=r}catch{We()}}function K(){k.value=null,A.value=!1,j.value=null,xe.value=``,M.value=``,N.value=!1,Se.value=!1,P.value=null,Ce.value=null,We(),Z()}function Ge(e=null){if(!b.active||!k.value||!E.value||!E.value.contains(k.value))return;e?.cancelable&&e.preventDefault(),e?.stopPropagation?.(),e?.stopImmediatePropagation?.();let t=U();k.value.remove(),W(t),K()}function Ke(e){return e?e.tagName.toLowerCase()===`text`||e.tagName.toLowerCase()===`circle`?e.getAttribute(`fill`):e.getAttribute(`stroke`):null}function qe(e){if(e){we.value=!0;try{let t=e.tagName.toLowerCase(),n=Ke(e);if(n&&(C.value=n),t===`text`){V.value=je.indexOf(`text`);let t=Number(e.getAttribute(`font-size`));Number.isFinite(t)&&b.scale&&(B.value=t/b.scale);return}if(t===`line`?V.value=e.hasAttribute(`marker-end`)?je.indexOf(`arrow`):je.indexOf(`line`):V.value=je.indexOf(`draw`),t===`circle`){let t=Number(e.getAttribute(`r`));Number.isFinite(t)&&b.scale&&(w.value=t*2/b.scale)}else{let t=Number(e.getAttribute(`stroke-width`));Number.isFinite(t)&&b.scale&&(w.value=t/b.scale)}}finally{p(()=>{we.value=!1})}}}function Je(e){b.active&&e&&E.value?.contains(e)&&(Le(e),k.value=e,qe(e),p(G))}function Ye(e){if(!b.active||!E.value||I.value)return;if(Ie(e)){Ge(e);return}let t=Fe(e);if(t&&k.value&&k.value.tagName.toLowerCase()===`line`){e.cancelable&&e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation?.();let n=t.getAttribute(`data-line-endpoint`);if(![`start`,`end`].includes(n))return;P.value=n,Ce.value=Be(k.value,e),A.value=!1,N.value=!1,Se.value=!1,M.value=U(),Z(e);return}let n=Ue(e);if(!n){K();return}e.cancelable&&e.preventDefault(),Se.value=k.value===n,Je(n);let{x:r,y:i}=Y(e);A.value=!0,N.value=!1,j.value={x:r,y:i},xe.value=n.getAttribute(`transform`)||``,M.value=U(),Z(e)}function Xe(e){if(!b.active||!k.value)return;if(Z(e),P.value){let t=Be(k.value,e);if(!t)return;let n=Ce.value;if(!N.value&&n&&Math.hypot(t.x-n.x,t.y-n.y)<ge*b.scale)return;e.cancelable&&e.preventDefault(),N.value=!0,P.value===`start`?(k.value.setAttribute(`x1`,t.x),k.value.setAttribute(`y1`,t.y)):(k.value.setAttribute(`x2`,t.x),k.value.setAttribute(`y2`,t.y)),G();return}if(!A.value||!j.value)return;let{x:t,y:n}=Y(e),r=t-j.value.x,i=n-j.value.y,a=Math.hypot(r,i);if(!N.value&&a<ge*b.scale)return;e.cancelable&&e.preventDefault(),N.value=!0;let o=xe.value.trim();k.value.setAttribute(`transform`,`${o?`${o} `:``}translate(${r} ${i})`),G()}function q(e){let t=k.value,n=!P.value&&t&&t.tagName.toLowerCase()===`text`&&Se.value&&!N.value&&!I.value;if(N.value&&M.value&&W(M.value),A.value=!1,j.value=null,M.value=``,N.value=!1,Se.value=!1,P.value=null,Ce.value=null,xe.value=t?.getAttribute(`transform`)||``,t&&E.value?.contains(t)&&G(),n&&t&&E.value?.contains(t)){nt(t,e),Z(e);return}Z(e)}function Ze(e){if(!b.active||!k.value||we.value)return;let t=k.value,n=t.tagName.toLowerCase();if(Ke(t)===e)return;let r=U();if(n===`text`||n===`circle`)t.setAttribute(`fill`,e);else if(t.setAttribute(`stroke`,e),n===`line`&&t.hasAttribute(`marker-end`)){let n=_t(e);n&&t.setAttribute(`marker-end`,`url(#${n})`)}I.value&&t===L.value||W(r,`color:${Le(t)}`),G(),I.value&&t===L.value&&ct()}function Qe(e){if(!b.active||!k.value||we.value)return;let t=k.value,n=t.tagName.toLowerCase();if(n===`text`)return;let r=Number(e)*b.scale;if((n===`circle`?Number(t.getAttribute(`r`))*2:Number(t.getAttribute(`stroke-width`)))===r)return;let i=U();n===`circle`?t.setAttribute(`r`,r/2):t.setAttribute(`stroke-width`,r),W(i,`size:${Le(t)}`),G()}function $e(e){if(!b.active||!k.value||we.value)return;let t=k.value;if(t.tagName.toLowerCase()!==`text`)return;let n=Number(e)*b.scale;if(Number(t.getAttribute(`font-size`))===n)return;let r=U();t.setAttribute(`font-size`,n),Array.from(t.children).forEach((e,t)=>{e.setAttribute(`dy`,t===0?`0`:`${n*1.2}`)}),I.value&&t===L.value||W(r,`font-size:${Le(t)}`),G(),I.value&&t===L.value&&ct()}y(C,Ze),y(w,Qe),y(B,$e);function et(){V.value+1>=je.length?V.value=0:V.value+=1}function tt(e){if(!E.value||!b.active||H.value!==`text`||I.value||Fe(e)||Ue(e))return;K();let t=U(),{x:n,y:a}=Y(e);De.value={x:n,y:a},R.value=[``],z.value={row:0,col:0},Oe.value=!1,ke.value=t,Ae.value=!1;let o=document.createElementNS(i,`text`);o.setAttribute(`x`,n),o.setAttribute(`y`,a),o.setAttribute(`fill`,C.value),o.setAttribute(`font-size`,B.value*b.scale),o.setAttribute(`font-family`,`sans-serif`),o.setAttribute(`class`,`vue-data-ui-doodle`),o.setAttribute(`data-doodle-id`,r()),o.setAttribute(`dominant-baseline`,`hanging`),o.setAttribute(`pointer-events`,`all`);let s=document.createElementNS(i,`tspan`);s.setAttribute(`x`,n),s.setAttribute(`dy`,`0`),s.setAttribute(`dominant-baseline`,`hanging`),s.textContent=``,o.appendChild(s),o.style.pointerEvents=`none`,o.style.userSelect=`none`,E.value.appendChild(o),k.value=o,L.value=o,I.value=!0,We(),window.addEventListener(`keydown`,rt),window.addEventListener(`mousedown`,lt,!0),it(),ct()}function nt(e){if(!b.active||!E.value||I.value||!e||e.tagName.toLowerCase()!==`text`||!E.value.contains(e))return;let t=U();k.value=e,qe(e);let n=Number(e.getAttribute(`x`))||0,r=Number(e.getAttribute(`y`))||0,i=Array.from(e.children).map(e=>{let t=e.textContent||``;return t===`​`?``:t.split(`​`).join(``)}),a=i.length?i:[e.textContent||``],o=Math.max(0,a.length-1);De.value={x:n,y:r},R.value=a,z.value={row:o,col:a[o]?.length||0},ke.value=t,Ae.value=!0,Oe.value=!0,L.value=e,I.value=!0,e.style.pointerEvents=`none`,We(),window.addEventListener(`keydown`,rt),window.addEventListener(`mousedown`,lt,!0),it(),ct()}function rt(e){if(!I.value)return;let{row:t,col:n}=z.value,r=R.value.slice(),i=!1;if(e.key===`Enter`){let a=r[t],o=a.slice(0,n),s=a.slice(n);r.splice(t,1,o,s),t+=1,n=0,i=!0,e.preventDefault()}else if(e.key===`Backspace`){if(n>0)r[t]=r[t].slice(0,n-1)+r[t].slice(n),--n,i=!0;else if(t>0){let e=r[t-1].length;r[t-1]+=r[t],r.splice(t,1),--t,n=e,i=!0}e.preventDefault()}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();else if(e.key===`ArrowLeft`)n>0?--n:t>0&&(--t,n=r[t].length),i=!0,e.preventDefault();else if(e.key===`ArrowRight`)n<r[t].length?n+=1:t<r.length-1&&(t+=1,n=0),i=!0,e.preventDefault();else if(e.key===`ArrowUp`)t>0&&(--t,n=Math.min(n,r[t].length),i=!0),e.preventDefault();else if(e.key===`ArrowDown`)t<r.length-1&&(t+=1,n=Math.min(n,r[t].length),i=!0),e.preventDefault();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();else if(e.key===`Escape`){ut(!1,!0);return}else e.key===`Tab`&&e.preventDefault();i&&(R.value=r,z.value={row:t,col:n},it(),ct())}function it(){let e=L.value;if(!e)return;let{x:t}=De.value;for(;e.firstChild;)e.removeChild(e.firstChild);R.value.forEach((n,r)=>{let a=document.createElementNS(i,`tspan`);a.setAttribute(`x`,t),a.setAttribute(`dominant-baseline`,`hanging`),a.setAttribute(`dy`,r===0?`0`:`${B.value*1.2*b.scale}`),a.textContent=n.length?n:`​`,e.appendChild(a)})}let at=_(null);function ot(){at.value!==null&&(clearInterval(at.value),at.value=null)}function st(e){ot();let t=!0;e.style.opacity=`1`,at.value=setInterval(()=>{if(!E.value||!e||!E.value.contains(e)){ot();return}t=!t,e.style.opacity=t?`1`:`0`},500)}function ct(){let e=E.value?.querySelector(`.vue-data-ui-svg-caret`);e&&E.value&&E.value.removeChild(e);let t=L.value;if(!t||!E.value)return;let{x:n,y:r}=De.value,{row:a,col:o}=z.value,s=B.value*b.scale,c=t.childNodes[a];if(!c)return;let l=c.textContent.slice(0,o);l.endsWith(` `)&&(l+=`\xA0`);let u=document.createElementNS(i,`text`);u.setAttribute(`x`,n),u.setAttribute(`y`,r),u.setAttribute(`font-size`,s),u.setAttribute(`font-family`,`sans-serif`),u.textContent=l||``,E.value.appendChild(u);let d=u.getBBox();E.value.removeChild(u);let f=r+a*s*1.2,p=n+d.width,m=document.createElementNS(i,`rect`);m.setAttribute(`x`,p),m.setAttribute(`y`,f),m.setAttribute(`rx`,1),m.setAttribute(`width`,2),m.setAttribute(`height`,s),m.setAttribute(`fill`,C.value),m.setAttribute(`class`,`vue-data-ui-svg-caret`),m.setAttribute(`pointer-events`,`none`);let h=t.getAttribute(`transform`);h&&m.setAttribute(`transform`,h),E.value.appendChild(m),st(m)}function lt(e){L.value&&(L.value.contains(e.target)||ut(!1))}function ut(e=!1,t=!1){window.removeEventListener(`keydown`,rt),window.removeEventListener(`mousedown`,lt,!0),ot();let n=E.value?.querySelector(`.vue-data-ui-svg-caret`);n&&n.remove();let r=L.value,i=ke.value,a=R.value.every(e=>!e.length);if(t){I.value=!1,L.value=null,R.value=[``],z.value={row:0,col:0},Oe.value=!1,ke.value=``,Ae.value=!1,Re(i);return}r&&E.value?.contains(r)&&(e||a?r.remove():r.style.pointerEvents=`all`),I.value=!1,L.value=null,R.value=[``],z.value={row:0,col:0},Oe.value=!1,ke.value=``,Ae.value=!1,W(i),r&&E.value?.contains(r)?Je(r):K()}let J=s(()=>n(b.color,.6));function dt(){if(!E.value)return;let e=E.value.querySelector(`.vue-data-ui-mask`);if(e&&E.value.removeChild(e),b.active){let e=document.createElementNS(`http://www.w3.org/2000/svg`,`rect`);e.setAttribute(`class`,`vue-data-ui-mask`),e.setAttribute(`width`,`100%`),e.setAttribute(`height`,`100%`),e.setAttribute(`fill`,`transparent`),e.setAttribute(`pointer-events`,`all`),E.value.insertBefore(e,E.value.firstChild)}}function Y(e){let t=b.svgRef;if(!t)return{x:0,y:0};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;n.x=i,n.y=a;let o=t.getScreenCTM()?.inverse();return o?n.matrixTransform(o):{x:0,y:0}}function ft(e){let t=e.trim().split(/\s+/);if(t.length<4)return e;let n=t.slice(1).map(Number);if(n.length%2!=0)return e;let r=pt(n),i=[`M ${r[0]} ${r[1]}`];for(let e=2;e<r.length-2;e+=2){let t=r[e-2],n=r[e-1],a=r[e],o=r[e+1],s=(t+a)/2,c=(n+o)/2;i.push(`Q ${t} ${n} ${s} ${c}`)}let a=r[r.length-2],o=r[r.length-1];return i.push(`L ${a} ${o}`),i.join(` `)}function pt(e,t=1){let n=[...e];for(let r=2;r<e.length-2;r+=2){let i=e[r],a=e[r+1],o=e[r-2],s=e[r-1],c=e[r+2],l=e[r+3];n[r]=i+t*((o+c)/2-i),n[r+1]=a+t*((s+l)/2-a)}return n}function mt(e){let t=e.trim().split(/\s+/),n=``,r=``,i=null,a=null;for(let e=0;e<t.length;e+=1){let o=t[e];if(isNaN(o)){if(r=o,r===`M`||r===`L`)i=parseFloat(t[++e]),a=parseFloat(t[++e]),n+=`${r}${i} ${a}`;else if(r===`Q`){let r=parseFloat(t[++e]),o=parseFloat(t[++e]),s=parseFloat(t[++e]),c=parseFloat(t[++e]);n+=r===i&&o===a?`t${s-i} ${c-a}`:`q${r-i} ${o-a} ${s-i} ${c-a}`,i=s,a=c}}else{let s=parseFloat(o),c=parseFloat(t[++e]);if(r===`L`){let e=s-i,t=c-a;n+=e===0?`v${t}`:t===0?`h${e}`:`l${e} ${t}`,i=s,a=c}else if(r===`Q`){let r=s,o=c,l=parseFloat(t[++e]),u=parseFloat(t[++e]);n+=r===i&&o===a?`t${l-i} ${u-a}`:`q${r-i} ${o-a} ${l-i} ${u-a}`,i=l,a=u}}}return n}function ht(e){if(H.value!==`draw`||!b.active||!E.value||Fe(e)||Ue(e))return;e.cancelable&&e.preventDefault(),K(),F.value=U(),T.value=!0;let{x:t,y:n}=Y(e);ye.value={x:t,y:n},ve.value=`M ${t} ${n}`,D.value=document.createElementNS(i,`path`),D.value.setAttribute(`stroke`,C.value),D.value.setAttribute(`stroke-width`,w.value*b.scale),D.value.setAttribute(`fill`,`none`),D.value.setAttribute(`stroke-linecap`,`round`),D.value.setAttribute(`stroke-linejoin`,`round`),D.value.setAttribute(`class`,`vue-data-ui-doodle`),D.value.setAttribute(`data-doodle-id`,r()),D.value.setAttribute(`pointer-events`,`stroke`),E.value.appendChild(D.value)}function gt(e){if(e.cancelable&&e.preventDefault(),!T.value||!E.value||!D.value)return;let{x:t,y:n}=Y(e);ve.value+=` ${t} ${n}`,D.value.setAttribute(`d`,ve.value)}function _t(e){let t=b.svgRef;if(!t)return null;let n=t.querySelector(`defs#${Ee.value}`);n||(n=document.createElementNS(i,`defs`),n.setAttribute(`id`,Ee.value),t.appendChild(n));let a=String(e).trim();if(Te.has(a))return Te.get(a);let o=`arrow-${r()}`,s=document.createElementNS(i,`marker`);s.setAttribute(`id`,o),s.setAttribute(`markerUnits`,`strokeWidth`),s.setAttribute(`markerWidth`,`6`),s.setAttribute(`markerHeight`,`6`),s.setAttribute(`refX`,`4`),s.setAttribute(`refY`,`3`),s.setAttribute(`orient`,`auto`),s.setAttribute(`viewBox`,`0 0 6 6`);let c=document.createElementNS(i,`path`);return c.setAttribute(`d`,`M 0 0 L 6 3 L 0 6 z`),c.setAttribute(`fill`,e),c.setAttribute(`stroke`,`none`),s.appendChild(c),n.appendChild(s),Te.set(a,o),o}function vt(e){if(![`line`,`arrow`].includes(H.value)||!b.active||!E.value||Fe(e)||Ue(e))return;e.cancelable&&e.preventDefault(),K(),F.value=U(),T.value=!0;let{x:t,y:n}=Y(e);if(ye.value={x:t,y:n},O.value=document.createElementNS(i,`line`),O.value.setAttribute(`stroke`,C.value),O.value.setAttribute(`stroke-width`,w.value*b.scale),O.value.setAttribute(`stroke-linecap`,`round`),O.value.setAttribute(`class`,`vue-data-ui-doodle`),O.value.setAttribute(`data-doodle-id`,r()),O.value.setAttribute(`pointer-events`,`stroke`),O.value.setAttribute(`x1`,t),O.value.setAttribute(`y1`,n),O.value.setAttribute(`x2`,t),O.value.setAttribute(`y2`,n),H.value===`arrow`){let e=_t(C.value);e&&O.value.setAttribute(`marker-end`,`url(#${e})`)}E.value.appendChild(O.value)}function yt(e){if(e.cancelable&&e.preventDefault(),![`line`,`arrow`].includes(H.value)||!T.value||!E.value||!O.value)return;let{x:t,y:n}=Y(e);O.value.setAttribute(`x2`,t),O.value.setAttribute(`y2`,n)}function bt(e){if(T.value&&E.value&&O.value){let{x:t,y:n}=Y(e);O.value.setAttribute(`x2`,t),O.value.setAttribute(`y2`,n),W(F.value),O.value=null,F.value=``}T.value=!1}function X(e){if(T.value&&E.value&&D.value){let{x:t,y:n}=Y(e);if(ye.value&&ye.value.x===t&&ye.value.y===n){D.value.remove();let e=document.createElementNS(i,`circle`);e.setAttribute(`cx`,t),e.setAttribute(`cy`,n),e.setAttribute(`r`,w.value*b.scale/2),e.setAttribute(`fill`,C.value),e.setAttribute(`class`,`vue-data-ui-doodle`),e.setAttribute(`data-doodle-id`,r()),e.setAttribute(`pointer-events`,`all`),E.value.appendChild(e)}else D.value.setAttribute(`d`,mt(ft(ve.value)));W(F.value),F.value=``,D.value=null}T.value=!1}function xt(){if(!x.value.length||!E.value)return;let e=U(),t=x.value.pop();S.value.push({state:e,mergeKey:null,timestamp:Date.now()}),Re(t.state)}function St(){if(!S.value.length||!E.value)return;let e=U(),t=S.value.pop();x.value.push({state:e,mergeKey:null,timestamp:Date.now()}),Re(t.state)}function Ct(){I.value&&ut(!1),K(),E.value&&(E.value.innerHTML=``),x.value=[],S.value=[],Oe.value=!1,ke.value=``,Ae.value=!1,F.value=``,dt()}y(H,()=>{b.active&&(Tt(),wt(),Z())});function wt(){b.svgRef&&b.active&&(b.svgRef.addEventListener(`mousedown`,Ye),b.svgRef.addEventListener(`mousemove`,Xe),b.svgRef.addEventListener(`mouseup`,q),b.svgRef.addEventListener(`mouseleave`,q),b.svgRef.addEventListener(`touchstart`,Ye,{passive:!1}),b.svgRef.addEventListener(`touchmove`,Xe,{passive:!1}),b.svgRef.addEventListener(`touchend`,q),b.svgRef.addEventListener(`touchcancel`,q),H.value===`draw`?(b.svgRef.addEventListener(`mousedown`,ht),b.svgRef.addEventListener(`mousemove`,gt),b.svgRef.addEventListener(`mouseup`,X),b.svgRef.addEventListener(`mouseleave`,X),b.svgRef.addEventListener(`touchstart`,ht,{passive:!1}),b.svgRef.addEventListener(`touchmove`,gt,{passive:!1}),b.svgRef.addEventListener(`touchend`,X),b.svgRef.addEventListener(`touchcancel`,X)):[`line`,`arrow`].includes(H.value)?(b.svgRef.addEventListener(`mousedown`,vt),b.svgRef.addEventListener(`mousemove`,yt),b.svgRef.addEventListener(`mouseup`,bt),b.svgRef.addEventListener(`touchstart`,vt,{passive:!1}),b.svgRef.addEventListener(`touchmove`,yt,{passive:!1}),b.svgRef.addEventListener(`touchend`,bt),b.svgRef.addEventListener(`touchcancel`,bt)):H.value===`text`&&(b.svgRef.addEventListener(`mousedown`,tt),b.svgRef.addEventListener(`touchstart`,tt,{passive:!1})),E.value&&(E.value.style.pointerEvents=`auto`))}function Tt(){b.svgRef&&(b.svgRef.removeEventListener(`mousedown`,Ye),b.svgRef.removeEventListener(`mousemove`,Xe),b.svgRef.removeEventListener(`mouseup`,q),b.svgRef.removeEventListener(`mouseleave`,q),b.svgRef.removeEventListener(`touchstart`,Ye),b.svgRef.removeEventListener(`touchmove`,Xe),b.svgRef.removeEventListener(`touchend`,q),b.svgRef.removeEventListener(`touchcancel`,q),b.svgRef.removeEventListener(`mousedown`,ht),b.svgRef.removeEventListener(`mousemove`,gt),b.svgRef.removeEventListener(`mouseup`,X),b.svgRef.removeEventListener(`mouseleave`,X),b.svgRef.removeEventListener(`touchstart`,ht),b.svgRef.removeEventListener(`touchmove`,gt),b.svgRef.removeEventListener(`touchend`,X),b.svgRef.removeEventListener(`touchcancel`,X),b.svgRef.removeEventListener(`mousedown`,vt),b.svgRef.removeEventListener(`mousemove`,yt),b.svgRef.removeEventListener(`mouseup`,bt),b.svgRef.removeEventListener(`touchstart`,vt),b.svgRef.removeEventListener(`touchmove`,yt),b.svgRef.removeEventListener(`touchend`,bt),b.svgRef.removeEventListener(`touchcancel`,bt),b.svgRef.removeEventListener(`mousedown`,tt),b.svgRef.removeEventListener(`touchstart`,tt),E.value&&(E.value.style.pointerEvents=`none`))}y(()=>b.active,e=>{e?wt():(K(),Tt()),Z()}),y(()=>b.active,()=>{p(()=>{dt()})}),y(()=>b.active,e=>{b.svgRef&&(e?b.svgRef.style.touchAction=`none`:b.svgRef.style.touchAction=``)},{immediate:!0});function Z(e=null){if(E.value){if(!b.active){E.value.style.cursor=``;return}if(I.value){E.value.style.cursor=`text`;return}if(e&&Ie(e)){E.value.style.cursor=`pointer`;return}if(P.value||e&&Fe(e)){E.value.style.cursor=`move`;return}if(A.value&&k.value){E.value.style.cursor=`grabbing`;return}if(e&&k.value&&E.value.contains(k.value)&&He(k.value,e)){E.value.style.cursor=`grab`;return}H.value===`text`?E.value.style.cursor=`text`:[`line`,`arrow`].includes(H.value)?E.value.style.cursor=`crosshair`:E.value.style.cursor=Ne.value}}let Q=_(null),Et=_(null),Dt=_(!1),$=_({x:0,y:0}),Ot=_(null),kt=_(null),At=s(()=>({backgroundColor:b.backgroundColor,"--vue-ui-pen-and-paper-drag-x":`${$.value.x}px`,"--vue-ui-pen-and-paper-drag-y":`${$.value.y}px`}));function jt(){return{width:document.documentElement.clientWidth||window.innerWidth,height:document.documentElement.clientHeight||window.innerHeight}}function Mt(){if(!Q.value)return null;let e=[Q.value,Q.value.querySelector(`.vue-ui-pen-and-paper-drag-handle`),Q.value.querySelector(`.vertical-range`)].filter(Boolean).map(e=>e.getBoundingClientRect());return{left:Math.min(...e.map(e=>e.left)),top:Math.min(...e.map(e=>e.top)),right:Math.max(...e.map(e=>e.right)),bottom:Math.max(...e.map(e=>e.bottom))}}function Nt(e){if(e.pointerType===`mouse`&&e.button!==0||!Q.value)return;e.preventDefault(),e.stopPropagation();let t=Mt();t&&(Dt.value=!0,kt.value=e.pointerId,Ot.value={clientX:e.clientX,clientY:e.clientY,offsetX:$.value.x,offsetY:$.value.y,rect:t},window.addEventListener(`pointermove`,Pt),window.addEventListener(`pointerup`,Ft),window.addEventListener(`pointercancel`,Ft))}function Pt(e){if(!Dt.value||!Ot.value||e.pointerId!==kt.value)return;e.preventDefault();let t=Ot.value,{width:n,height:r}=jt(),i=e.clientX-t.clientX,a=e.clientY-t.clientY,o=Math.min(Math.max(i,-t.rect.left),n-t.rect.right),s=Math.min(Math.max(a,-t.rect.top),r-t.rect.bottom);$.value={x:t.offsetX+o,y:t.offsetY+s}}function Ft(e){(e?.pointerId===void 0||kt.value===null||e.pointerId===kt.value)&&(Dt.value=!1,Ot.value=null,kt.value=null,window.removeEventListener(`pointermove`,Pt),window.removeEventListener(`pointerup`,Ft),window.removeEventListener(`pointercancel`,Ft))}function It(){if(!Q.value||!b.active)return;let e=Mt();if(!e)return;let{width:t,height:n}=jt(),r=0,i=0;e.left<0?r=-e.left:e.right>t&&(r=t-e.right),e.top<0?i=-e.top:e.bottom>n&&(i=n-e.bottom),(r||i)&&($.value={x:$.value.x+r,y:$.value.y+i})}return te(()=>{window.addEventListener(`resize`,It),p(()=>{b.svgRef&&(E.value=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),E.value.setAttribute(`class`,`vue-data-ui-doodles`),b.svgRef.appendChild(E.value),Z(),b.active?wt():Tt(),dt())})}),y(()=>b.active,async e=>{if(!e){Ft(),$.value={x:0,y:0};return}await p(),Et.value?.focus()},{flush:`post`}),ee(()=>{ot(),K(),Ft(),window.removeEventListener(`resize`,It),E.value&&b.svgRef&&(E.value.remove(),Tt())}),(n,r)=>e.active?(ne(),l(`div`,{key:0,ref_key:`menuRef`,ref:Q,"data-dom-to-png-ignore":``,class:m([`vue-ui-pen-and-paper-actions`,{"vue-ui-pen-and-paper-actions-dragging":Dt.value}]),style:g(At.value)},[u(`button`,{type:`button`,class:`vue-ui-pen-and-paper-drag-handle`,"aria-label":`Move drawing toolbar`,style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,color:e.color}),onPointerdown:Nt},[(ne(),l(`svg`,le,[u(`circle`,{fill:e.color,cx:`3`,cy:`3`,r:`0.7`},null,8,ue),u(`circle`,{fill:e.color,cx:`3`,cy:`6`,r:`0.7`},null,8,de),u(`circle`,{fill:e.color,cx:`3`,cy:`9`,r:`0.7`},null,8,fe)]))],36),u(`button`,{ref_key:`buttonToggle`,ref:Et,class:`vue-ui-pen-and-paper-action`,onClick:r[0]||=e=>_e(`close`),style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,cursor:e.isCursorPointer?`pointer`:`default`})},[v(n.$slots,`annotator-action-close`,{},()=>[d(a,{name:`close`,stroke:e.color},null,8,[`stroke`])])],4),u(`button`,{class:`vue-ui-pen-and-paper-action`,tabindex:`-1`,style:g(`padding: 0 !important; cursor: ${e.isCursorPointer?`pointer`:`default`}`)},[d(o,{value:C.value,"onUpdate:value":r[1]||=e=>C.value=e,backgroundColor:e.backgroundColor,buttonBorderColor:J.value,isCursorPointer:e.isCursorPointer,palette:e.palette},{"annotator-action-color":oe(({color:e})=>[v(n.$slots,`annotator-action-color`,h(f({color:e})))]),_:3},8,[`value`,`backgroundColor`,`buttonBorderColor`,`isCursorPointer`,`palette`])],4),u(`button`,{class:m([`vue-ui-pen-and-paper-action`,{"vue-ui-pen-and-paper-action-active":H.value===`text`}]),onClick:r[2]||=e=>et(),style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,cursor:e.isCursorPointer?`pointer`:`default`})},[v(n.$slots,`annotator-action-draw`,h(f({mode:H.value})),()=>[d(a,{name:Me[H.value],stroke:e.color},null,8,[`name`,`stroke`])]),u(`div`,{style:g({position:`absolute`,bottom:`-20px`,color:J.value,width:`100%`,textAlign:`center`,fontSize:`12px`,fontVariantNumeric:`tabular-nums`})},re(ie(t)({v:H.value===`text`?Math.round(B.value):Math.round(w.value),s:`px`,r:1})),5)],6),u(`button`,{class:m([`vue-ui-pen-and-paper-action`,{"vue-ui-pen-and-paper-action-disabled":!x.value.length}]),disabled:!x.value.length,onClick:xt,style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,marginTop:`20px`,cursor:e.isCursorPointer?`pointer`:`default`})},[v(n.$slots,`annotator-action-undo`,h(f({disabled:!x.value.length})),()=>[d(a,{name:`refresh`,stroke:e.color},null,8,[`stroke`])])],14,pe),u(`button`,{class:m([`vue-ui-pen-and-paper-action`,{"vue-ui-pen-and-paper-action-disabled":!S.value.length}]),onClick:St,style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,cursor:e.isCursorPointer?`pointer`:`default`})},[v(n.$slots,`annotator-action-redo`,h(f({disabled:!S.value.length})),()=>[d(a,{name:`refresh`,stroke:e.color,style:{transform:`scaleX(-1)`}},null,8,[`stroke`])])],6),u(`button`,{class:m([`vue-ui-pen-and-paper-action`,{"vue-ui-pen-and-paper-action-disabled":!x.value.length}]),onClick:Ct,style:g({backgroundColor:e.backgroundColor,border:`1px solid ${J.value}`,cursor:e.isCursorPointer?`pointer`:`default`})},[v(n.$slots,`annotator-action-delete`,h(f({disabled:!x.value.length})),()=>[d(a,{name:`trash`,stroke:e.color},null,8,[`stroke`])])],6),H.value===`text`?se((ne(),l(`input`,{key:0,ref:`range`,type:`range`,class:`vertical-range`,min:3,max:48,step:1,"onUpdate:modelValue":r[3]||=e=>B.value=e,style:g({accentColor:e.color})},null,4)),[[ae,B.value]]):se((ne(),l(`input`,{key:1,ref:`range`,type:`range`,class:`vertical-range`,min:.5,max:12,step:.1,"onUpdate:modelValue":r[4]||=e=>w.value=e,style:g({accentColor:e.color})},null,4)),[[ae,w.value]])],6)):c(``,!0)}};export{b as n,ce as t};
@@ -1 +0,0 @@
1
- import{Dt as e,I as t,Jt as n,P as r,S as i,U as a,V as o,W as s,X as c,an as ee,kt as te,r as l,t as ne}from"./lib-DqD8nbyX.js";import{t as u}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as re}from"./BaseIcon-DDctLkeT.js";import{i as ie,l as ae,t as d}from"./useResponsive-D2CPcpda.js";import{t as oe}from"./DefGrad-DKMq1REY.js";import{Fragment as f,computed as p,createCommentVNode as m,createElementBlock as h,createElementVNode as g,createVNode as se,guardReactiveProps as ce,mergeProps as le,nextTick as ue,normalizeClass as de,normalizeProps as fe,normalizeStyle as _,onBeforeUnmount as pe,onMounted as me,onUpdated as he,openBlock as v,ref as y,renderList as b,renderSlot as ge,toDisplayString as _e,unref as ve,useCssVars as ye,vModelText as be,watch as x,withDirectives as xe,withKeys as Se,withModifiers as S}from"vue";var Ce=[`data-minimap`],we={class:`vue-data-ui-slicer-labels`,style:{position:`relative`,"z-index":`1`,"pointer-events":`none`}},Te={key:0,style:{width:`100%`,position:`relative`,"pointer-events":`all`}},Ee={key:0,class:`minimap`,style:{width:`100%`}},De=[`xmlns`,`viewBox`],Oe=[`id`],ke=[`x`,`width`,`height`],Ae=[`width`,`height`,`stroke`],je=[`d`,`stroke`],Me=[`d`,`fill`],Ne=[`x`,`y`,`width`,`height`,`fill`],Pe=[`d`,`stroke`,`stroke-dasharray`],Fe=[`cx`,`cy`,`fill`,`stroke`],Ie=[`cx`,`cy`,`fill`,`stroke`],Le=[`x`,`width`,`height`,`fill`,`rx`],Re=[`x`,`width`,`height`,`rx`,`fill`],ze=[`x`,`width`,`height`,`fill`,`rx`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`],Be=[`x2`,`y1`,`y2`,`stroke`],Ve={key:`merged-tree`},He=[`d`,`stroke`],Ue=[`cx`,`cy`,`stroke`,`fill`],We=[`cx`,`cy`,`stroke`,`fill`],Ge={key:`split-tree`},Ke=[`x`,`y`,`width`,`height`,`fill`],qe=[`d`,`stroke`,`stroke-dasharray`],Je=[`cx`,`cy`,`fill`,`stroke`],Ye=[`width`,`height`],Xe=[`transform`],Ze=[`x`,`y`,`width`,`height`],Qe=[`x`,`width`,`height`,`fill`,`stroke`,`stroke-width`],$e=[`transform`],et=[`width`,`height`],tt=[`fill`,`stroke`],nt=[`stroke`],rt=[`fill`],it=[`transform`],at=[`y`,`width`,`height`],ot=[`width`,`height`,`fill`,`stroke`,`stroke-width`],st={key:0,class:`compact-handle-icon`,style:{"pointer-events":`none`}},ct=[`width`,`height`],lt=[`fill`,`stroke`],ut=[`stroke`],dt=[`fill`],ft={key:`merged-tree`,style:{"pointer-events":`none`}},pt=[`cx`,`cy`,`stroke`,`fill`],mt=[`cx`,`cy`,`fill`],ht=[`cx`,`cy`,`stroke`,`fill`],gt=[`cx`,`cy`,`fill`],_t={key:1,style:{"pointer-events":`none`}},vt=[`d`,`stroke`,`stroke-dasharray`],yt=[`cx`,`cy`,`fill`,`stroke`],bt=[`cx`,`cy`,`stroke`,`fill`],xt=[`cx`,`cy`,`fill`],St=[`cx`,`cy`,`stroke`,`fill`],Ct=[`cx`,`cy`,`fill`],wt=[`cx`,`cy`,`fill`,`stroke`],Tt=[`step`,`min`,`max`,`tabindex`],Et=[`step`,`min`,`max`,`tabindex`],Dt=48,Ot=48,kt=/*#__PURE__*/ u({__name:`SlicerPreview`,props:{uuid:{type:String,default:``},immediate:{type:Boolean,default:!0},background:{type:String,default:`#FFFFFF`},borderColor:{type:String,default:`#FFFFFF`},fontSize:{type:Number,default:14},labelLeft:{type:[String,Number],default:``},labelRight:{type:[String,Number],default:``},textColor:{type:String,default:`#1A1A1A`},inputColor:{type:String,default:`#1A1A1A`},max:{type:Number,default:0},min:{type:Number,default:0},selectColor:{type:String,default:`#4A4A4A`},useResetSlot:{type:Boolean,default:!1},valueStart:{type:[Number,String],default:0},valueEnd:{type:[Number,String],default:0},minimap:{type:Array,default:[]},smoothMinimap:{type:Boolean,default:!1},minimapSelectedColor:{type:String,default:`#1f77b4`},minimapSelectionRadius:{type:Number,default:12},minimapLineColor:{type:String,default:`#2D353C`},minimapSelectedColorOpacity:{type:Number,default:.2},minimapSelectedIndex:{type:Number,default:null},minimapIndicatorColor:{type:String,default:`#2D353C`},refreshStartPoint:{type:Number,default:0},refreshEndPoint:{type:Number,default:null},enableRangeHandles:{type:Boolean,default:!1},enableSelectionDrag:{type:Boolean,default:!0},verticalHandles:{type:Boolean,default:!1},timeLabels:{type:Array},isPreview:{type:Boolean,default:!1},preciseLabels:{type:Array,default(){return[]}},usePreciseLabels:{type:Boolean,default:!1},selectedSeries:{type:Object},customFormat:{type:[Function,null]},minimapCompact:{type:Boolean,default:!1},allMinimaps:{type:Array,default(){return[]}},minimapMerged:{type:Boolean,default:!1},minimapFrameColor:{type:String,default:`#e1e5e8`},cutNullValues:{type:Boolean,default:!1},focusOnDrag:{type:Boolean,default:!1},focusRangeRatio:{type:Number,default:.1},minScale:{type:Number,default:null},maxScale:{type:Number,default:null},forceZeroCenter:{type:Boolean,default:!1},maxWidth:{type:Number,default:null},minimapLeftInsetRatio:{type:Number,default:null},minimapRightInsetRatio:{type:Number,default:null},isCursorPointer:{type:Boolean,default:!1},additionalMinimapHeight:{type:Number,default:0},handleType:{type:String,default:``},handleWidth:{type:Number,default:20},handleBorderWidth:{type:Number,default:1},handleIconColor:{type:String,default:null},handleBorderColor:{type:String,default:null},handleFill:{type:String,default:null},precision:{type:Number,default:0},useValueRange:{type:Boolean,default:!1}},emits:[`futureStart`,`futureEnd`,`update:start`,`update:end`,`reset`,`trapMouse`,`trapMouseValue`],setup(u,{expose:kt,emit:At}){ye(e=>({v1facdf1e:sn.value,v90bb30dc:L.value,v55cd00fa:ln.value,d050ae7c:u.selectColor,v15a5e250:cn.value}));let C=u;function jt(e){let t=Number(e)||0;return C.precision<=0?Math.round(t):Number(t.toFixed(C.precision))}let w=y(null),T=y(C.min),E=y(C.max),D=p(()=>!!C.allMinimaps.length),Mt=p(()=>te(C.minimapLeftInsetRatio)&&te(C.minimapRightInsetRatio)),Nt=p(()=>{let e=Math.min(1,Math.max(0,C.minimapLeftInsetRatio))*100,t=Math.min(1,Math.max(0,C.minimapRightInsetRatio))*100;return{padding:Mt.value?`0 ${t}% 0 ${e}%`:`0 48px`,maxWidth:C.maxWidth&&!Mt.value?`${C.maxWidth}px`:void 0,margin:C.maxWidth&&!Mt.value?`0 auto`:void 0}}),Pt=y(c()),O=y(!1),k=p(()=>D.value&&C.minimapCompact),Ft=y(null),A=y(null),It=y(!1),Lt=y(0),Rt=y(0),zt=y(null),Bt=y(!1),Vt=p(()=>Ft.value!==null),Ht=p(()=>C.useValueRange?E.value:E.value-1),Ut=p(()=>Math.max(1,Number(C.max)-Number(C.min)));function Wt(e){return(Number(e)-Number(C.min))/Ut.value*100}function Gt(e){return R.value.width*(Wt(e)/100)}function Kt(e){let t=Math.min(1,Math.max(0,e/Math.max(1,R.value.width)));return jt(Number(C.min)+Ut.value*t)}function qt(e){let t=C.useValueRange?e?.y:e;return te(t)?Number(t):null}function Jt(e,t){return C.useValueRange?Number(e?.x):t+Number(C.min)}function Yt(e,t){return C.useValueRange?Gt(Jt(e,t)):V.value*t+(C.minimapCompact?0:V.value/2)}let Xt=p(()=>Math.min(40,Math.max(20,C.handleWidth))),Zt=y(0),Qt=ae(e=>F(`futureStart`,e),0),$t=ae(e=>F(`futureEnd`,e),0),j=p(()=>C.precision>0?1/10**C.precision:1),M=p({get:()=>T.value,set(e){let t=Math.min(Number(e),Number(E.value)-j.value);t!==T.value&&(T.value=t,K.value&&(K.value.value=String(t)),C.immediate?F(`update:start`,Number(t)):O.value&&Qt(t))}}),N=p({get:()=>E.value,set(e){let t=Math.max(Number(e),Number(T.value)+j.value);t!==E.value&&(E.value=t,q.value&&(q.value.value=String(t)),C.immediate?F(`update:end`,Number(t)):O.value&&$t(t))}});function P(){clearTimeout(null),C.immediate||(F(`update:start`,Number(T.value)),F(`update:end`,Number(E.value))),O.value=!1}let en=p(()=>C.refreshEndPoint===null?C.max:C.refreshEndPoint),F=At,tn=p(()=>{if(C.useValueRange)return Wt(T.value);if(k.value){let e=Math.max(1,z.value-1);return Ln.value/e*100}let e=Math.max(1,C.max-C.min);return(T.value-C.min)/e*100}),nn=p(()=>{if(C.useValueRange)return Wt(E.value);if(k.value){let e=Math.max(1,z.value-1);return Rn.value/e*100}let e=Math.max(1,C.max-C.min);return(E.value-C.min)/e*100}),rn=p(()=>(tn.value+nn.value)/2),an=p(()=>{if(!w.value)return!1;let e=Math.max(1,C.max-C.min);return w.value.getBoundingClientRect().width*((T.value-C.min)/e)-xr.value/2<0}),on=p(()=>{if(!w.value)return!1;let e=Math.max(1,C.max-C.min),t=w.value.getBoundingClientRect().width;return t*((E.value-C.min)/e)+Sr.value/2>t}),I=p(()=>{let e=on.value?`calc(${rn.value}% - ${kr.value.width}px)`:an.value?`calc(${rn.value}% - 8px)`:`calc(${rn.value}% - ${kr.value.width/2}px)`;return{left:`${tn.value}%`,width:`${Math.max(0,nn.value-tn.value)}%`,background:C.selectColor,tooltipLeft:`calc(${tn.value}% - ${an.value?9:xr.value/2}px)`,tooltipRight:`calc(${nn.value}% - ${on.value?Sr.value-9:Sr.value/2}px)`,tooltipCenter:e,arrowLeft:!an.value,arrowRight:!on.value}}),sn=p(()=>C.inputColor),cn=p(()=>C.background),ln=p(()=>n(i(C.selectColor)||C.selectColor,20)),L=p(()=>C.borderColor),un=p(()=>Number(C.max)>Number(C.min));function dn(){F(`reset`)}x(()=>C.min,e=>{Number(T.value)<Number(e)&&(T.value=Number(e)),Number(E.value)<Number(e)&&(E.value=Number(e))}),x(()=>C.max,e=>{Number(T.value)>Number(e)&&(T.value=Number(e)),Number(E.value)>Number(e)&&(E.value=Number(e))});let fn=y(null),R=y({width:1,height:1}),pn=y(null);me(()=>{if(D.value){let e=ae(()=>{if(!fn.value)return;let{width:e,height:t}=d({chart:fn.value}),n=Math.max(0,Math.round(e)),r=Math.max(0,Math.round(t-47));(n!==R.value.width||r!==R.value.height)&&(R.value.width=n,R.value.height=r+C.additionalMinimapHeight)},0);pn.value=new ResizeObserver(e),pn.value.observe(fn.value)}}),pe(()=>{pn.value&&pn.value.disconnect()});let z=p(()=>Math.max(1,C.max-C.min));function mn(e){let t=Math.floor(e-C.min);return Math.min(Math.max(0,t),z.value)}function hn(e){let t=Math.ceil(e-C.min);return Math.min(Math.max(0,t),z.value)}let B=p(()=>mn(T.value)),gn=p(()=>hn(E.value)),_n=p(()=>Math.max(...C.allMinimaps.map(e=>e.series.length))),vn=p(()=>D.value&&C.minimapCompact?40:0),yn=p(()=>vn.value/2);p(()=>Math.max(1,R.value.width-yn.value*2));let V=p(()=>{if(C.minimapCompact&&!C.useValueRange)return R.value.width/Math.max(1,z.value-1);let e=Math.max(1,_n.value-+!!C.minimapCompact);return R.value.width/e}),bn=p(()=>C.allMinimaps.length?C.allMinimaps.filter(e=>e.type===`bar`&&e.isVisible).length:0),xn=p(()=>V.value/(bn.value||1)*.8);function Sn(e,t,n){let r=xn.value,i=Math.max(1,bn.value),a=_n.value-1;return n===0?e+r/2*t:n===a?e-r/2*(i-t):e-i*r/2+t*r}function Cn(e,t){return[0,_n.value-1].includes(t)?xn.value/2:xn.value}let wn=p(()=>{let e=[];if(Array.isArray(C.minimap)&&C.minimap.length&&C.minimapMerged&&e.push(...C.minimap.map(qt).filter(Number.isFinite)),Array.isArray(C.allMinimaps)&&C.allMinimaps.length)for(let t of C.allMinimaps)t?.isVisible&&Array.isArray(t?.series)&&e.push(...t.series.map(qt).filter(Number.isFinite));return e.length?{min:Math.min(...e),max:Math.max(...e)}:{min:0,max:1}}),Tn=p(()=>{if(C.minScale==null&&C.forceZeroCenter)return null;let e=Number(C.minScale);return Number.isFinite(e)?e:null}),En=p(()=>{if(C.maxScale==null&&C.forceZeroCenter)return null;let e=Number(C.maxScale);return Number.isFinite(e)?e:null}),Dn=p(()=>Tn.value!==null&&En.value!==null),On=p(()=>{let{min:e,max:t}=wn.value,n=Tn.value,r=En.value,i,a;return n!==null&&r!==null?(i=Math.min(n,e),a=Math.max(r,t)):(i=n===null?e:n,a=r===null?t:r),Number.isFinite(i)||(i=0),Number.isFinite(a)||(a=1),i===a?a=i+1:i>a&&([i,a]=[a,i]),{min:i,max:a}}),kn=p(()=>On.value.min),An=p(()=>On.value.max),jn=p(()=>kn.value<0&&An.value>0||An.value<=0?kn.value:0),Mn=e=>{let t=Math.max(1,R.value.height);return Pn(kn.value,An.value,t,Dn.value)(e)},Nn=p(()=>Mn(0));function Pn(e,t,n,r=!1){let i=(e,t,n)=>Math.max(t,Math.min(n,e)),a=1e-9,o=Math.max(a,t-e);if(r)return t=>n-(t-e)/o*n;if(t<=0){let t=Math.max(a,0-e);return r=>n-(r-e)/t*n}if(e>=0){let e=Math.max(a,t-0);return t=>n-(t-0)/e*n}{let r=Math.max(a,Math.max(Math.abs(e),Math.abs(t)));return e=>(1-(i(e/r,-1,1)+1)/2)*n}}function Fn(e,n=!1,i=!1){if(!e||!e.length)return{fullSet:``,points:[],selectionSet:``,sliced:[],firstPlot:null,lastPlot:null,hasFull:!1,hasSelection:!1,fullMarkers:[],selectionMarkers:[],dashed:!1};let c=Math.max(1,R.value.height),ee=Pn(kn.value,An.value,c,Dn.value),te=e.length,l=Math.min(Math.max(0,B.value),Math.max(0,te-1)),ne=Math.min(te,Math.max(l+1,gn.value)),u=e.map((e,t)=>{let n=qt(e),r=Number.isFinite(n),i=Yt(e,t),a=Dn.value?((e,t,n)=>Math.max(t,Math.min(n,e)))(0,kn.value,An.value):0,o=ee(a);return{x:i,y:r?ee(n):NaN,v:n,value:r?n:null,y0:o,i:t,xValue:Jt(e,t)}}),re=e=>e>=0&&e<u.length&&Number.isFinite(u[e]?.value),ie=u.filter(e=>Number.isFinite(e.value)&&!re(e.i-1)&&!re(e.i+1)),ae=C.useValueRange?ie.filter(e=>e.xValue>=Number(T.value)&&e.xValue<=Number(E.value)):ie.filter(e=>e.i>=l&&e.i<ne),d=C.useValueRange?u.filter(e=>e.xValue>=Number(T.value)&&e.xValue<=Number(E.value)):u.slice(l,ne);return{fullSet:u.length>=2?i?o(C.cutNullValues?u:u.filter(e=>e.value!=null)):C.smoothMinimap||n?C.cutNullValues?t(u):r(u.filter(e=>e.value!=null)):C.cutNullValues?s(u):a(u.filter(e=>e.value!=null)):``,points:u,selectionSet:d.length>=2?i?o(C.cutNullValues?d:d.filter(e=>e.value!=null)):C.smoothMinimap||n?C.cutNullValues?t(d):r(d.filter(e=>e.value!=null)):C.cutNullValues?s(d):a(d.filter(e=>e.value!=null)):``,sliced:d,firstPlot:C.useValueRange?d[0]||null:u[l]||null,lastPlot:C.useValueRange?d[d.length-1]||null:u[Math.max(0,ne-1)]||null,hasFull:u.length>=2,hasSelection:d.length>=2,fullMarkers:ie,selectionMarkers:ae}}let H=p(()=>C.minimap.length?Fn(C.minimap):[]),U=p(()=>C.allMinimaps.length?C.allMinimaps.map((e,t)=>{let n=Fn(e?.series||[],!!e.smooth,!!e.useStepper),r=e?.id??e?.name??t;return{key:typeof r==`object`?JSON.stringify(r):String(r),color:e?.color,...n,temperatureColors:e?.temperatureColors??null,isVisible:e.isVisible,type:e.type||void 0,dashed:e.dashed??!1,useStepper:!!e.useStepper}}):[]),W=p(()=>{if(C.useValueRange){let e=Gt(T.value),t=Gt(E.value);return{x:e,width:Math.max(0,t-e)}}let e=B.value,t=Math.max(e+1,gn.value);return{x:V.value*e+(C.minimapCompact?0:V.value/2),width:V.value*(t-e)-V.value}}),G=y(C.minimapSelectedIndex),In=e=>Math.round(C.min+e),Ln=p({get(){return k.value?B.value:Number(M.value)},set(e){if(k.value){if(C.useValueRange){let t=jt(e);Jn(Math.min(Math.max(Number(C.min),t),Number(E.value)-j.value));return}let t=Math.round(+e||0);Jn(In(t))}else{let t=jt(e),n=Number(E.value)-j.value,r=Math.min(Math.max(C.min,t),n);K.value&&(K.value.valueAsNumber=r),Jn(r)}}}),Rn=p({get(){return k.value?Math.max(B.value,gn.value-1):Number(N.value)},set(e){if(k.value){if(C.useValueRange){let t=jt(e);Xn(Math.max(Number(T.value)+j.value,Math.min(t,Number(C.max))));return}let t=Math.round(+e||0);Xn(In(t+1))}else{let t=jt(e),n=Number(T.value)+j.value,r=Math.max(n,Math.min(t,C.max));q.value&&(q.value.valueAsNumber=r),Xn(r)}}}),zn=0;function Bn(e,t){if(t===zn){if(C.useValueRange){G.value=Number.isFinite(Number(e))?Gt(Number(e)):null;return}G.value=mn(C.valueStart)+e}}let Vn=ie(Bn,60);x(()=>C.minimapSelectedIndex,(e,t)=>{if(zn+=1,[null,void 0].includes(e)){G.value=null;return}e!==t&&Vn(e,zn)},{immediate:!0});function Hn(e){if(Vt.value)return;G.value=e;let t=B.value,n=gn.value;e>=t&&e<n&&!Q.value&&F(`trapMouse`,e-t)}function Un(e){let t=Kt(e),n=C.allMinimaps.flatMap(e=>(e.series||[]).map((e,n)=>({point:e,index:n,x:Number(e?.x),distance:Math.abs(Number(e?.x)-t)}))).filter(e=>Number.isFinite(e.x));return n.length?n.reduce((e,t)=>t.distance<e.distance?t:e,n[0]):null}function Wn(e){if(!un.value||Vt.value)return;let t=Gr(e.clientX);if(C.useValueRange){let e=Un(t);if(!e){Gn();return}G.value=Gt(e.x),F(`trapMouse`,e.index),F(`trapMouseValue`,e.x);return}Hn(Kr(t))}function Gn(){G.value=null,!Vt.value&&(F(`trapMouse`,null),F(`trapMouseValue`,null))}let K=y(null),q=y(null);function Kn(e){if(typeof e==`object`&&e&&`target`in e){let t=e.target,n=`valueAsNumber`in t?t.valueAsNumber:+t.value;return Number.isFinite(n)?n:NaN}let t=+e;return Number.isFinite(t)?t:NaN}let qn=0;function Jn(e){O.value=!0;let t=Kn(e);Number.isFinite(t)&&(cancelAnimationFrame(qn),qn=requestAnimationFrame(()=>{M.value=t}))}let Yn=0;function Xn(e){O.value=!0;let t=Kn(e);Number.isFinite(t)&&(cancelAnimationFrame(Yn),Yn=requestAnimationFrame(()=>{N.value=t}))}function Zn(e,t){let n=Kn(e),r=Kn(t);if(!Number.isFinite(n)||!Number.isFinite(r))return;cancelAnimationFrame(qn),cancelAnimationFrame(Yn);let i=Number(C.min),a=Number(C.max),o=j.value,s=jt(Math.max(i,Math.min(n,a))),c=jt(Math.max(i,Math.min(r,a)));s=Math.min(s,a-o),c=Math.max(c,s+o),c=Math.min(c,a),c<=s&&(s=i,c=a),T.value=s,E.value=c,K.value&&(K.value.value=String(s)),q.value&&(q.value.value=String(c))}pe(()=>{cancelAnimationFrame(qn),cancelAnimationFrame(Yn)});let Qn=p(()=>C.valueEnd-C.valueStart),$n=p(()=>Qn.value<C.max-C.min),er=y(!1),tr=y(null),nr=p(()=>(Zt.value-48)/(C.max-C.min)*Qn.value),rr=p(()=>Math.max(1,Zt.value-Dt-nr.value)),ir=p(()=>Math.max(1,C.max-C.min-Qn.value)),ar=p(()=>ir.value/rr.value),or=y(0),sr=y(0),cr=y(0),lr=y(0),J=null,Y=null,X=null,Z=null,ur=y(C.min);function dr(e){if(!w.value)return C.min;let t=w.value.getBoundingClientRect(),n=t.left+Dt/2,r=t.right-Dt/2,i=Math.max(1,r-n),a=(Math.max(n,Math.min(e,r))-n)/i,o=Math.max(1,C.max-C.min);return Math.round(C.min+a*o)}let fr=async e=>{if(O.value=!0,Cr.value=!0,!C.enableSelectionDrag)return;let t=e.type===`touchstart`;t||e.stopPropagation();let n=t&&e.targetTouches&&e.targetTouches[0]?e.targetTouches[0]:null,r=t?n?n.target:null:e.target;if(!r||!(r instanceof Element)||r.classList?.contains(`range-handle`)||r.classList?.contains(`vue-ui-zoom-compact-minimap-handle`)||r.closest(`.vue-ui-zoom-compact-minimap-handle`))return;er.value=!0;let i=t?n?n.clientX:0:e.clientX;if(tr.value=i,or.value=i,C.focusOnDrag&&!$n.value&&w.value&&!Bt.value){Bt.value=!0;try{ur.value=dr(i);let e=Math.min(.95,Math.max(.05,C.focusRangeRatio)),t=Number(C.max)-Number(C.min),n=Math.max(1,Math.round(t*e)),r=Math.floor(n/2),a=ur.value-r;a=Math.max(Number(C.min),Math.min(a,Number(C.max)-n));let o=Math.min(Number(C.max),a+n);M.value=a,N.value=o,Qt(a),$t(o),ee(w.value,`mouseup`),await ue(),ee(w.value,`mousedown`,{clientX:i})}finally{Bt.value=!1}return}sr.value=T.value,cr.value=E.value,lr.value=ar.value,J=t?`touchmove`:`mousemove`,Y=t?`touchend`:`mouseup`,X=t?mr:pr,Z=t?_r:gr,window.addEventListener(J,X,{passive:!1}),window.addEventListener(Y,Z)};function pr(e){er.value&&hr(e.clientX)}function mr(e){if(!er.value||!w.value)return;let t=e.target;if(!(t instanceof Element)||!w.value.contains(t)||t.classList&&t.classList.contains(`range-handle`))return;e.preventDefault();let n=e.targetTouches&&e.targetTouches[0]?e.targetTouches[0]:null;n&&hr(n.clientX)}function hr(e){if(!er.value)return;let t=dr(or.value),n=dr(e)-t,r=Math.round(sr.value+n);r=Math.max(C.min,Math.min(r,C.max-Qn.value));let i=r+Qn.value;M.value=r,N.value=i,Qt(r),$t(i)}function gr(){vr()}function _r(){vr()}function vr(){er.value=!1,J&&X&&window.removeEventListener(J,X),Y&&Z&&window.removeEventListener(Y,Z),J=Y=null,X=Z=null,P()}let Q=y(!1),yr=y(null),br=y(null),xr=y(1),Sr=y(1),Cr=y(!1);function wr(){if(yr.value){let e=Math.round(yr.value.getBoundingClientRect().width);e!==xr.value&&(xr.value=e)}}function Tr(){if(br.value){let e=Math.round(br.value.getBoundingClientRect().width);e!==Sr.value&&(Sr.value=e)}}he(()=>{wr(),Tr()});let Er=y(0);function Dr(e){Er.value=+(e===`start`)}let Or=y(!1),kr=y({width:0,left:0});x([T,E],async()=>{if(await ue(),!yr.value||!br.value){Or.value=!1,kr.value={width:0,left:0};return}let e=yr.value.getBoundingClientRect(),t=br.value.getBoundingClientRect();Or.value=e.x+e.width>t.x;let n=e.x+e.width/2,r=t.x+t.width/2,i=e.width+t.width,a=(n+r)/2;kr.value={width:i,left:a-i/2}}),he(()=>{wr(),Tr()}),x(()=>C.labelLeft,()=>{ue(wr)},{deep:!0}),x(()=>C.labelRight,()=>{ue(Tr)},{deep:!0});let $=p(()=>{let t=``,n=``,r=!1;if(e(C.customFormat))try{let e=C.customFormat({absoluteIndex:T.value,seriesIndex:T.value,datapoint:C.selectedSeries,timeLabel:C.preciseLabels[T.value],side:`left`}),i=C.customFormat({absoluteIndex:Ht.value,seriesIndex:-1,datapoint:C.selectedSeries,timeLabel:C.useValueRange?null:C.preciseLabels[Ht.value],side:`right`});typeof e==`string`&&typeof i==`string`&&(t=e,n=i,r=!0)}catch{r=!1}if(!r){let e=C.useValueRange?{text:String(Math.round(T.value*1e3)/1e3)}:C.usePreciseLabels?C.preciseLabels.find(e=>e.absoluteIndex===T.value):C.timeLabels.find(e=>e.absoluteIndex===T.value),r=C.useValueRange?{text:String(Math.round(E.value*1e3)/1e3)}:C.usePreciseLabels?C.preciseLabels.find(e=>e.absoluteIndex===Ht.value):C.timeLabels.find(e=>e.absoluteIndex===Ht.value);t=e?e.text:``,n=r?r.text:``}return{left:t,right:n}});pe(()=>{pn.value&&pn.value.disconnect(),J&&X&&window.removeEventListener(J,X),Y&&Z&&window.removeEventListener(Y,Z),J=Y=null,X=Z=null,clearTimeout(null)});let Ar=p(()=>{if(!un.value||G.value===null)return null;if(C.useValueRange){let e=G.value;return e<W.value.x||e>W.value.x+W.value.width?null:{x1:e,x2:e,y1:0,y2:Math.max(R.value.height,0),stroke:C.minimapIndicatorColor,"stroke-linecap":`round`,"stroke-dasharray":2,"stroke-width":1}}if(G.value>=B.value&&G.value<gn.value){let e=G.value,t=V.value*e+(C.minimapCompact?0:V.value/2);return{x1:t,x2:t,y1:0,y2:Math.max(R.value.height,0),stroke:C.minimapIndicatorColor,"stroke-linecap":`round`,"stroke-dasharray":2,"stroke-width":1}}return null}),jr=p(()=>Number(T.value)<Number(E.value)-1),Mr=p(()=>Number(T.value)>Number(C.min)),Nr=p(()=>Number(E.value)<Number(C.max)),Pr=p(()=>Number(E.value)>Number(T.value)+1);function Fr(e){let t=Number(T.value)+e;e>0&&!jr.value||e<0&&!Mr.value||(O.value=!0,M.value=t,P())}function Ir(e){let t=Number(E.value)+e;e>0&&!Nr.value||e<0&&!Pr.value||(O.value=!0,N.value=t,P())}let Lr={plus:()=>Fr(1),minus:()=>Fr(-1),canPlus:jr,canMinus:Mr},Rr={plus:()=>Ir(1),minus:()=>Ir(-1),canPlus:Nr,canMinus:Pr};function zr(e){if(!e||Br(e.target))return;let t=e.key,n=t===`ArrowLeft`||t===`ArrowDown`||t===`-`||t===`Subtract`,r=t===`ArrowRight`||t===`ArrowUp`||t===`+`||t===`Add`;(n||r)&&(e.preventDefault(),e.stopPropagation(),r?(Lr.plus(),Rr.plus()):(Lr.minus(),Rr.minus()))}function Br(e){return e instanceof HTMLElement&&(e.isContentEditable||e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.tagName===`SELECT`)}function Vr(e){if(!D.value||!C.minimapCompact)return;let t=w.value;if(!t)return;let n=e===`start`?`[data-cy="slicer-compact-handle-left"]`:`[data-cy="slicer-compact-handle-right"]`,r=t.querySelector(n);r&&r instanceof SVGElement&&typeof r.focus==`function`&&r.focus()}function Hr(e,t){if(!t||Br(t.target))return;let n=t.key,r=n===`ArrowLeft`||n===`ArrowDown`||n===`-`||n===`Subtract`,i=n===`ArrowRight`||n===`ArrowUp`||n===`+`||n===`Add`;(r||i)&&(t.preventDefault(),t.stopPropagation(),e===`start`?i?Lr.plus():Lr.minus():i?Rr.plus():Rr.minus(),ue(()=>Vr(e)))}let Ur=p(()=>({tabindex:0,role:`slider`,"aria-label":`Range start`,"aria-valuemin":Number(C.min),"aria-valuemax":Math.max(Number(C.min),Number(E.value)-1),"aria-valuenow":Number(T.value)})),Wr=p(()=>({tabindex:0,role:`slider`,"aria-label":`Range end`,"aria-valuemin":Math.min(Number(C.max),Number(T.value)+1),"aria-valuemax":Number(C.max),"aria-valuenow":Number(E.value)}));function Gr(e){if(!zt.value)return 0;let t=zt.value.getBoundingClientRect();if(!t.width)return 0;let n=(e-t.left)/t.width;return Math.min(1,Math.max(0,n))*R.value.width}function Kr(e){let t=Math.max(0,z.value-1),n=Math.max(1,R.value.width),r=Math.min(1,Math.max(0,e/n));return Math.min(t,Math.max(0,Math.round(r*t)))}function qr(e,t){let n=Math.min(Math.max(0,t),Math.max(1,R.value.width));if(C.useValueRange){let t=Kt(n);if(e===`start`){let e=Math.min(t,Number(E.value)-j.value);M.value=e,Qt(e);return}if(e===`end`){let e=Math.max(Number(T.value)+j.value,t),n=Math.min(Number(C.max),e);N.value=n,$t(n);return}}let r=Kr(n);if(e===`start`){let e=Math.min(C.min+r,Number(E.value)-1);M.value=e,Qt(e);return}if(e===`end`){let e=Math.max(Number(T.value)+1,C.min+r+1),t=Math.min(C.max,e);N.value=t,$t(t)}}function Jr(e=!1){let t=It.value;Ft.value=null,A.value=null,It.value=!1,Lt.value=0,Rt.value=0,e&&t&&P()}function Yr(e,t){if(Ft.value!==e||A.value!==t.pointerId||!fn.value)return;if(t.pointerType===`mouse`&&!(t.buttons&1)){Jr(!0);return}t.preventDefault();let n=t.clientX-Lt.value;if(!It.value){if(Math.abs(n)<4)return;It.value=!0,O.value=!0,Cr.value=!0}let r=Gr(t.clientX)-Rt.value;qr(e,e===`start`?r+Xt.value:r)}function Xr(e,t){if(Ft.value!==e||A.value!==t.pointerId)return;let n=t.currentTarget,r=t.pointerId;Jr(!0),n?.hasPointerCapture?.(r)&&n.releasePointerCapture(r)}function Zr(e,t){Ft.value===e&&A.value===t.pointerId&&Jr(!0)}function Qr(e,t){if(!D.value||!C.minimapCompact||!fn.value||t.pointerType===`mouse`&&t.button!==0||A.value!==null)return;t.preventDefault(),t.stopPropagation(),G.value=null;let n=Gr(t.clientX),r=e===`start`?W.value.x-Xt.value:W.value.x+W.value.width;Ft.value=e,A.value=t.pointerId,It.value=!1,Lt.value=t.clientX,Rt.value=n-r,t.currentTarget?.setPointerCapture?.(t.pointerId)}x(k,e=>{!e&&A.value!==null&&Jr(!0)});let $r=p(()=>B.value),ei=p(()=>Math.max(B.value,gn.value-1));p(()=>{if(!D.value||!C.minimapCompact||!C.allMinimaps.length)return[];let e=$r.value,t=ei.value;return U.value.flatMap(n=>{if(!n?.isVisible||![`line`,`plot`].includes(n.type)||!n.type)return[];let r=[],i=n.points?.find(t=>t.i===e&&t.value!==null),a=n.points?.find(e=>e.i===t&&e.value!==null);return i&&r.push({key:`${n.key}-left-${i.i}`,x:i.x,y:i.y,color:n.color}),a&&t!==e&&r.push({key:`${n.key}-right-${a.i}`,x:a.x,y:a.y,color:n.color}),r})});let ti=p(()=>Math.min(40,Math.max(20,C.handleWidth))),ni=p(()=>Math.max(Ot,ti.value)),ri=p(()=>Math.max(Ot,Number(R.value.height)||0)),ii=p(()=>(R.value.height-ri.value)/2),ai=p(()=>W.value.x),oi=p(()=>W.value.x+W.value.width);return kt({setStartValue:Jn,setEndValue:Xn,setRangeValues:Zn}),(e,t)=>(v(),h(`div`,{"data-minimap":D.value,"data-dom-to-png-ignore":``,"data-dom-to-png-ignore-layout":``,class:`vue-data-ui-zoom`,ref_key:`zoomWrapper`,ref:w,onMousedown:fr,onTouchstart:fr,style:_(Nt.value)},[g(`div`,we,[u.valueStart!==u.refreshStartPoint||u.valueEnd!==en.value?(v(),h(`div`,Te,[ge(e.$slots,`reset-action`,{reset:dn},()=>[g(`button`,{tabindex:`0`,role:`button`,class:`vue-data-ui-refresh-button`,style:_({top:D.value?`36px`:`-16px`,cursor:u.isCursorPointer?`pointer`:`default`}),onClick:dn},[se(re,{name:`refresh`,stroke:u.textColor},null,8,[`stroke`])],4)],!0)])):m(``,!0)]),g(`div`,{class:`double-range-slider`,ref_key:`minimapWrapper`,ref:fn,style:_([{"z-index":`0`},D.value?{"--minimap-unit-px":V.value+`px`,"--minimap-offset-px":(u.minimapCompact?0:V.value/2)+`px`}:void 0]),onMouseenter:t[26]||=e=>Cr.value=!0,onMouseleave:t[27]||=e=>Cr.value=!1},[D.value?(v(),h(`div`,Ee,[(v(),h(`svg`,{ref_key:`minimapSvg`,ref:zt,key:`mm-${u.minimapMerged?`merged`:`split`}-${u.minimapCompact?`compact`:`normal`}`,xmlns:ve(ne),viewBox:`0 0 ${Math.max(0,R.value.width)} ${Math.max(0,R.value.height)}`,preserveAspectRatio:`none`},[g(`defs`,null,[se(oe,{t:`linear`,id:Pt.value,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`,stops:[[`0%`,u.minimapLineColor,.31],[`100%`,`transparent`,0]]},null,8,[`id`,`stops`]),g(`clipPath`,{id:`selection_clip_${Pt.value}`},[g(`rect`,{x:W.value.x,y:`0`,width:Math.max(0,W.value.width),height:Math.max(R.value.height,0)},null,8,ke)],8,Oe)]),u.minimapCompact?(v(),h(`rect`,{key:0,class:`vue-ui-zoom-minimap-frame`,x:0,y:0,width:R.value.width,height:R.value.height,fill:`none`,stroke:u.minimapFrameColor,rx:3},null,8,Ae)):m(``,!0),e.$slots.slotMap?m(``,!0):(v(),h(f,{key:1},[u.minimapMerged?(v(),h(`path`,{key:0,d:`M${H.value.fullSet}`,stroke:`${u.minimapLineColor}`,fill:`none`,"stroke-width":`1`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{opacity:`0.6`}},null,8,je)):m(``,!0),u.minimapMerged&&!u.minimapCompact?(v(),h(`path`,{key:1,d:`M${V.value/2},${Math.max(R.value.height,0)} ${H.value.fullSet} L${R.value.width-V.value/2},${Math.max(R.value.height,0)}Z`,fill:`url(#${Pt.value})`,stroke:`none`,style:{opacity:`0.6`}},null,8,Me)):u.minimapMerged?m(``,!0):(v(),h(f,{key:2},[(v(!0),h(f,null,b(U.value.filter(e=>e.type===`bar`&&e.isVisible),(e,t)=>(v(),h(`g`,null,[(v(!0),h(f,null,b(e.points,(n,r)=>(v(),h(f,null,[e&&!isNaN(n.y)?(v(),h(`rect`,{key:0,x:Sn(n.x,t,r),y:n.v>=0?n.y:n.y0,width:Cn(t,r),height:n.v>=0?n.y0-n.y:n.y-n.y0,fill:e.color,style:{opacity:.6}},null,8,Ne)):m(``,!0)],64))),256))]))),256)),(v(!0),h(f,null,b(U.value.filter(e=>e.type===`line`),e=>(v(),h(`g`,null,[e.isVisible?(v(),h(`path`,{key:0,d:`M ${e.fullSet}`,fill:`none`,stroke:e.color,style:{opacity:`0.6`},"stroke-dasharray":e.dashed?`2 4`:0},null,8,Pe)):m(``,!0),e.isVisible&&u.cutNullValues?(v(!0),h(f,{key:1},b(e.fullMarkers,t=>(v(),h(`circle`,{key:`sel-dot-under-${e.key}-${t.i}`,cx:t.x,cy:t.y,r:`2`,fill:e.color,stroke:L.value,"stroke-width":`0.5`,style:{opacity:`0.6`}},null,8,Fe))),128)):m(``,!0)]))),256)),(v(!0),h(f,null,b(U.value.filter(e=>e.type===`plot`),e=>(v(),h(`g`,null,[(v(!0),h(f,null,b(e.points,t=>(v(),h(`g`,null,[e.isVisible&&t.value!==null?(v(),h(`circle`,{key:`sel-plot-under-${e.key}-${t.i}`,cx:t.x,cy:t.y,r:`2`,fill:e.color,stroke:L.value,"stroke-width":`0.5`,style:{opacity:`0.6`}},null,8,Ie)):m(``,!0)]))),256))]))),256))],64))],64)),g(`rect`,{x:W.value.x,y:0,width:Math.max(0,W.value.width),height:Math.max(R.value.height,0),fill:L.value,rx:u.minimapSelectionRadius,stroke:`none`},null,8,Le),g(`rect`,{x:W.value.x,y:0,width:W.value.width<0?0:W.value.width,height:Math.max(R.value.height,0),rx:u.minimapSelectionRadius,fill:L.value,style:_({opacity:er.value||O.value?0:1})},null,12,Re),g(`rect`,{x:W.value.x,y:0,width:W.value.width<0?0:W.value.width,height:Math.max(R.value.height,0),fill:u.minimapSelectedColor,rx:u.minimapSelectionRadius,style:_({opacity:u.minimapSelectedColorOpacity}),tabindex:`0`,role:`slider`,"aria-label":`Selected range`,"aria-valuemin":Number(C.min),"aria-valuemax":Number(C.max),"aria-valuenow":Number(T.value),"aria-valuetext":$.value.left&&$.value.right?`${$.value.left} – ${$.value.right}`:void 0,onKeydown:zr},null,44,ze),!u.minimapMerged&&jn.value<0?(v(),h(`line`,{key:2,class:`slicer-minimap-zero-line`,x1:0,x2:R.value.width,y1:Nn.value,y2:Nn.value,stroke:u.minimapFrameColor,"stroke-width":`0.5`},null,8,Be)):m(``,!0),e.$slots.slotMap?m(``,!0):(v(),h(f,{key:3},[u.minimapMerged?(v(),h(`g`,Ve,[H.value&&H.value.sliced&&H.value.sliced.length?(v(),h(f,{key:0},[H.value.selectionSet?(v(),h(`path`,{key:0,d:`M ${H.value.selectionSet}`,stroke:`${u.minimapLineColor}`,fill:`transparent`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,He)):m(``,!0)],64)):m(``,!0),H.value&&H.value.firstPlot?(v(),h(`circle`,{key:1,cx:H.value.firstPlot.x,cy:H.value.firstPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`3`,fill:u.minimapLineColor},null,8,Ue)):m(``,!0),H.value&&H.value.lastPlot?(v(),h(`circle`,{key:2,cx:H.value.lastPlot.x,cy:H.value.lastPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`3`,fill:u.minimapLineColor},null,8,We)):m(``,!0)])):(v(),h(`g`,Ge,[(v(!0),h(f,null,b(U.value.filter(e=>e.type===`bar`&&e.isVisible),(e,t)=>(v(),h(`g`,null,[(v(!0),h(f,null,b(e.points,(n,r)=>(v(),h(f,null,[e&&!isNaN(n.y)?(v(),h(`rect`,{key:0,x:Sn(n.x,t,r),y:n.v>=0?n.y:n.y0,width:Cn(t,r),height:n.v>=0?n.y0-n.y:n.y-n.y0,fill:e.color,style:_({opacity:+(r>=M.value&&r<N.value)})},null,12,Ke)):m(``,!0)],64))),256))]))),256)),(v(!0),h(f,null,b(U.value.filter(e=>e.type===`line`),(e,t)=>(v(),h(`g`,{key:String(e.key)},[e&&e.hasSelection&&e.selectionSet&&e.isVisible?(v(),h(`path`,{key:0,d:`M ${e.selectionSet}`,stroke:e.temperatureColors?`url(#temperature_grad_line_${t}_${u.uuid})`:e.color,fill:`transparent`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-dasharray":e.dashed?`2 4`:0},null,8,qe)):m(``,!0)]))),128)),(v(!0),h(f,null,b(U.value.filter(e=>e.type===`plot`),e=>(v(),h(`g`,{key:String(e.key)},[(v(!0),h(f,null,b(e.sliced,t=>(v(),h(`g`,null,[e.isVisible&&t.value!==null?(v(),h(`circle`,{key:0,cx:t.x,cy:t.y,r:`2`,fill:e.color,stroke:L.value,"stroke-width":`0.5`,style:{opacity:`0.6`}},null,8,Je)):m(``,!0)]))),256))]))),128))]))],64)),e.$slots.slotMap?ge(e.$slots,`slotMap`,fe(ce({width:Math.max(0,R.value.width),height:Math.max(0,R.value.height),zeroY:Nn.value,unitW:Math.max(0,V.value)})),void 0,!0,4):m(``,!0),G.value!==null&&!Q.value?(v(),h(`line`,fe(le({key:5},Ar.value)),null,16)):m(``,!0),g(`rect`,{x:0,y:0,width:Math.max(0,R.value.width),height:Math.max(0,R.value.height),fill:`transparent`,style:_([{"pointer-events":`all !important`},{cursor:u.enableSelectionDrag?Q.value?`grabbing`:`grab`:`default`}]),onMousedown:t[0]||=e=>Q.value=!0,onMouseup:t[1]||=e=>Q.value=!1,onMousemove:Wn,onMouseleave:Gn},null,44,Ye),D.value&&u.minimapCompact?(v(),h(f,{key:6},[g(`g`,le({class:`vue-ui-zoom-compact-minimap-handle`,transform:`translate(${ai.value}, 0)`},Ur.value,{onKeydown:t[2]||=e=>Hr(`start`,e),onPointerdown:t[3]||=S(e=>Qr(`start`,e),[`stop`,`prevent`]),onPointermove:t[4]||=S(e=>Yr(`start`,e),[`stop`,`prevent`]),onPointerup:t[5]||=S(e=>Xr(`start`,e),[`stop`,`prevent`]),onPointercancel:t[6]||=S(e=>Xr(`start`,e),[`stop`,`prevent`]),onLostpointercapture:t[7]||=e=>Zr(`start`,e),onClick:t[8]||=S(()=>{},[`stop`,`prevent`])}),[g(`rect`,{class:`vue-ui-zoom-compact-minimap-handle-hit`,x:-ni.value,y:ii.value,width:ni.value,height:ri.value,fill:`transparent`},null,8,Ze),g(`rect`,{class:`vue-ui-zoom-compact-minimap-handle-visual`,x:-ti.value,y:0,width:ti.value,height:R.value.height,fill:u.handleFill||L.value,stroke:u.handleBorderColor||u.textColor,"stroke-width":u.handleBorderWidth,rx:3},null,8,Qe),u.handleType&&u.handleType!==`empty`?(v(),h(`g`,{key:0,class:`compact-handle-icon`,transform:`translate(${-ti.value}, 0)`,style:{"pointer-events":`none`}},[(v(),h(`svg`,{width:ti.value,height:R.value.height,viewBox:`0 0 20 20`,preserveAspectRatio:`xMidYMid meet`},[u.handleType===`arrow`?(v(),h(`path`,{key:0,d:`M 7 7 L 3 10 L 7 13 L 7 7 M 13 7 L 17 10 L 13 13 L 13 7`,fill:L.value,stroke:u.handleIconColor||u.textColor,"stroke-width":.618,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,8,tt)):u.handleType===`chevron`?(v(),h(`path`,{key:1,d:`M 6 7 L 4 10 L 6 13 M 14 7 L 16 10 L 14 13`,fill:`none`,stroke:u.handleIconColor||u.textColor,"stroke-width":.618,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,8,nt)):u.handleType===`grab`?(v(),h(`path`,{key:2,d:`M 8 5 A 1 1 0 0 0 8 7 A 1 1 0 0 0 8 5 M 8 9 A 1 1 0 0 0 8 11 A 1 1 0 0 0 8 9 M 8 13 A 1 1 0 0 0 8 15 A 1 1 0 0 0 8 13 M 12 5 A 1 1 0 0 0 12 7 A 1 1 0 0 0 12 5 M 12 9 A 1 1 0 0 0 12 11 A 1 1 0 0 0 12 9 M 12 13 A 1 1 0 0 0 12 15 A 1 1 0 0 0 12 13`,fill:u.handleIconColor||u.textColor,stroke:`none`,opacity:`0.6`},null,8,rt)):m(``,!0)],8,et))],8,$e)):m(``,!0)],16,Xe),g(`g`,le({class:`vue-ui-zoom-compact-minimap-handle`,transform:`translate(${oi.value}, 0)`},Wr.value,{onKeydown:t[9]||=e=>Hr(`end`,e),onPointerdown:t[10]||=S(e=>Qr(`end`,e),[`stop`,`prevent`]),onPointermove:t[11]||=S(e=>Yr(`end`,e),[`stop`,`prevent`]),onPointerup:t[12]||=S(e=>Xr(`end`,e),[`stop`,`prevent`]),onPointercancel:t[13]||=S(e=>Xr(`end`,e),[`stop`,`prevent`]),onLostpointercapture:t[14]||=e=>Zr(`end`,e),onClick:t[15]||=S(()=>{},[`stop`,`prevent`])}),[g(`rect`,{class:`vue-ui-zoom-compact-minimap-handle-hit`,x:0,y:ii.value,width:ni.value,height:ri.value,fill:`transparent`},null,8,at),g(`rect`,{class:`vue-ui-zoom-compact-minimap-handle-visual`,x:0,y:0,width:ti.value,height:R.value.height,fill:u.handleFill||L.value,stroke:u.handleBorderColor||u.textColor,"stroke-width":u.handleBorderWidth,rx:3},null,8,ot),u.handleType&&u.handleType!==`empty`?(v(),h(`g`,st,[(v(),h(`svg`,{width:ti.value,height:R.value.height,viewBox:`0 0 20 20`,preserveAspectRatio:`xMidYMid meet`},[u.handleType===`arrow`?(v(),h(`path`,{key:0,d:`M 7 7 L 3 10 L 7 13 L 7 7 M 13 7 L 17 10 L 13 13 L 13 7`,fill:L.value,stroke:u.handleIconColor||u.textColor,"stroke-width":.618,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,8,lt)):u.handleType===`chevron`?(v(),h(`path`,{key:1,d:`M 6 7 L 4 10 L 6 13 M 14 7 L 16 10 L 14 13`,fill:`none`,stroke:u.handleIconColor||u.textColor,"stroke-width":.618,"stroke-linejoin":`round`,"stroke-linecap":`round`},null,8,ut)):u.handleType===`grab`?(v(),h(`path`,{key:2,d:`M 8 5 A 1 1 0 0 0 8 7 A 1 1 0 0 0 8 5 M 8 9 A 1 1 0 0 0 8 11 A 1 1 0 0 0 8 9 M 8 13 A 1 1 0 0 0 8 15 A 1 1 0 0 0 8 13 M 12 5 A 1 1 0 0 0 12 7 A 1 1 0 0 0 12 5 M 12 9 A 1 1 0 0 0 12 11 A 1 1 0 0 0 12 9 M 12 13 A 1 1 0 0 0 12 15 A 1 1 0 0 0 12 13`,fill:u.handleIconColor||u.textColor,stroke:`none`,opacity:`0.6`},null,8,dt)):m(``,!0)],8,ct))])):m(``,!0)],16,it)],64)):m(``,!0),e.$slots.slotMap?m(``,!0):(v(),h(f,{key:7},[u.minimapMerged?(v(),h(`g`,ft,[H.value&&H.value.firstPlot&&H.value.firstPlot.value!==null?(v(),h(`circle`,{key:0,cx:H.value.firstPlot.x,cy:H.value.firstPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`4`,fill:u.minimapLineColor},null,8,pt)):m(``,!0),H.value&&H.value.firstPlot&&H.value.firstPlot.value!==null?(v(),h(`circle`,{key:1,cx:H.value.firstPlot.x,cy:H.value.firstPlot.y,r:2,fill:L.value},null,8,mt)):m(``,!0),H.value&&H.value.lastPlot&&H.value.lastPlot.value!==null?(v(),h(`circle`,{key:2,cx:H.value.lastPlot.x,cy:H.value.lastPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`4`,fill:u.minimapLineColor},null,8,ht)):m(``,!0),H.value&&H.value.lastPlot&&H.value.lastPlot.value!==null?(v(),h(`circle`,{key:3,cx:H.value.lastPlot.x,cy:H.value.lastPlot.y,r:`2`,fill:L.value},null,8,gt)):m(``,!0)])):(v(),h(`g`,_t,[(v(!0),h(f,null,b(U.value.filter(e=>e.type===`line`),(e,t)=>(v(),h(`g`,{key:String(e.key)},[e&&e.hasSelection&&e.selectionSet&&e.isVisible?(v(),h(`path`,{key:0,d:`M ${e.selectionSet}`,stroke:e.temperatureColors?`url(#temperature_grad_line_${t}_${u.uuid})`:e.color,fill:`transparent`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-dasharray":e.dashed?`2 4`:0},null,8,vt)):m(``,!0),e.isVisible&&u.cutNullValues?(v(!0),h(f,{key:1},b(e.selectionMarkers,t=>(v(),h(`circle`,{key:`sel-dot-${e.key}-${t.i}`,cx:t.x,cy:t.y,r:`2.5`,fill:e.color,stroke:L.value,"stroke-width":`0.5`},null,8,yt))),128)):m(``,!0),e&&e.firstPlot&&e.isVisible&&e.firstPlot.value!==null?(v(),h(`circle`,{key:2,cx:e.firstPlot.x,cy:e.firstPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`4`,fill:e.color},null,8,bt)):m(``,!0),e&&e.firstPlot&&e.isVisible&&e.firstPlot.value!==null?(v(),h(`circle`,{key:3,cx:e.firstPlot.x,cy:e.firstPlot.y,r:`2`,fill:L.value},null,8,xt)):m(``,!0),e&&e.lastPlot&&e.isVisible&&e.lastPlot.value!==null?(v(),h(`circle`,{key:4,cx:e.lastPlot.x,cy:e.lastPlot.y,"stroke-width":`0.5`,stroke:L.value,r:`4`,fill:e.color},null,8,St)):m(``,!0),e&&e.lastPlot&&e.isVisible&&e.lastPlot.value!==null?(v(),h(`circle`,{key:5,cx:e.lastPlot.x,cy:e.lastPlot.y,r:`2`,fill:L.value},null,8,Ct)):m(``,!0)]))),128)),(v(!0),h(f,null,b(U.value.filter(e=>e.type===`plot`),e=>(v(),h(`g`,{key:String(e.key)},[(v(!0),h(f,null,b(e.points,t=>(v(),h(`g`,null,[e.isVisible&&u.cutNullValues&&t.value!==null?(v(),h(`circle`,{key:`sel-plot-${e.key}-${t.i}`,cx:t.x,cy:t.y,r:`2.5`,fill:e.color,stroke:L.value,"stroke-width":`0.5`},null,8,wt)):m(``,!0)]))),256))]))),128))]))],64))],8,De))])):m(``,!0),g(`div`,{class:`slider-track`,style:_({visibility:D.value&&u.minimapCompact?`hidden`:`visible`})},null,4),g(`div`,{class:de({"range-highlight":!0,move:u.enableSelectionDrag}),onMousedown:t[16]||=e=>Q.value=!0,onMouseup:t[17]||=e=>Q.value=!1,style:_({...I.value,cursor:Q.value?`grabbing`:`grab`,visibility:D.value&&u.minimapCompact?`hidden`:`visible`})},null,38),u.enableRangeHandles&&!(D.value&&u.minimapCompact)?xe((v(),h(`input`,{key:1,"aria-label":`range-handle-left`,ref_key:`rangeStart`,ref:K,type:`range`,step:u.precision>0?1/10**u.precision:1,class:de({"range-left":!0,"range-handle":!0,"range-minimap":D.value&&u.verticalHandles,"range-invisible":D.value&&u.minimapCompact}),min:u.min,max:u.minimapCompact&&D.value&&!u.useValueRange?Math.max(0,z.value-1):u.max,tabindex:D.value?-1:0,"onUpdate:modelValue":t[18]||=e=>Ln.value=e,onFocus:t[19]||=e=>D.value&&e.target.blur(),onInput:t[20]||=e=>Ln.value=e.target.valueAsNumber,onChange:P,onKeyup:Se(P,[`enter`]),onBlur:P,onMouseenter:t[21]||=e=>Dr(`start`),onPointerup:P},null,42,Tt)),[[be,Ln.value,void 0,{number:!0}]]):m(``,!0),u.enableRangeHandles&&!(D.value&&u.minimapCompact)?xe((v(),h(`input`,{key:2,"aria-label":`range-handle-right`,ref_key:`rangeEnd`,ref:q,type:`range`,step:u.precision>0?1/10**u.precision:1,class:de({"range-right":!0,"range-handle":!0,"range-minimap":D.value&&u.verticalHandles,"range-invisible":D.value&&u.minimapCompact}),min:u.min,max:u.minimapCompact&&D.value&&!u.useValueRange?Math.max(0,z.value-1):u.max,tabindex:D.value?-1:0,onFocus:t[22]||=e=>D.value&&e.target.blur(),"onUpdate:modelValue":t[23]||=e=>Rn.value=e,onInput:t[24]||=e=>Rn.value=e.target.valueAsNumber,onChange:P,onKeyup:Se(P,[`enter`]),onBlur:P,onMouseenter:t[25]||=e=>Dr(`end`),onPointerup:P},null,42,Et)),[[be,Rn.value,void 0,{number:!0}]]):m(``,!0),$.value.left?(v(),h(`div`,{key:3,ref_key:`tooltipLeft`,ref:yr,class:de({"range-tooltip":!0,"range-tooltip-visible":Cr.value,"range-tooltip-arrow":I.value.arrowLeft&&!u.verticalHandles,"range-tooltip-arrow-left":!I.value.arrowLeft&&!u.verticalHandles}),style:_({left:I.value.tooltipLeft,color:ve(l)(u.selectColor),backgroundColor:u.selectColor,border:`1px solid ${L.value}`,zIndex:`${Er.value+4}`,visibility:Or.value||$.value.left===$.value.right?`hidden`:`visible`,top:D.value&&u.minimapCompact?`calc(-100% - 12px)`:`-100%`})},_e($.value.left),7)):m(``,!0),(Or.value||$.value.left===$.value.right)&&($.value.left||$.value.right)?(v(),h(`div`,{key:4,ref:`tooltipMerge`,class:de({"range-tooltip":!0,"range-tooltip-visible":Cr.value,"range-tooltip-arrow":!0,"range-tooltip-arrow-left":!I.value.arrowLeft&&!u.verticalHandles,"range-tooltip-arrow-right":!I.value.arrowRight&&!u.verticalHandles}),style:_({left:I.value.tooltipCenter,width:kr.value.width+`px`,color:ve(l)(u.selectColor),backgroundColor:u.selectColor,border:`1px solid ${L.value}`,zIndex:`4`,top:D.value&&u.minimapCompact?`calc(-100% - 12px)`:`-100%`})},_e($.value.left===$.value.right?$.value.left:`${$.value.left} - ${$.value.right}`),7)):m(``,!0),$.value.right?(v(),h(`div`,{key:5,ref_key:`tooltipRight`,ref:br,class:de({"range-tooltip":!0,"range-tooltip-visible":Cr.value,"range-tooltip-arrow":I.value.arrowRight&&!u.verticalHandles,"range-tooltip-arrow-right":!I.value.arrowRight&&!u.verticalHandles}),style:_({left:I.value.tooltipRight,color:ve(l)(u.selectColor),backgroundColor:u.selectColor,border:`1px solid ${L.value}`,zIndex:`4`,visibility:Or.value||$.value.left===$.value.right?`hidden`:`visible`,top:D.value&&u.minimapCompact?`calc(-100% - 12px)`:`-100%`})},_e($.value.right),7)):m(``,!0)],36)],44,Ce))}},[[`__scopeId`,`data-v-d5072eae`]]);export{kt as t};
@@ -1 +0,0 @@
1
- import{Jt as e}from"./lib-DqD8nbyX.js";import{Teleport as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,nextTick as s,normalizeClass as c,normalizeStyle as l,onMounted as u,onUnmounted as d,openBlock as f,ref as p,renderSlot as m,watch as h}from"vue";function g({tooltip:e,chart:t,clientPosition:n,positionPreference:r=`center`,defaultOffsetY:i=24,defaultOffsetX:a=0,blockShiftY:o=!1}){let s=p(a),c=p(i);if(e&&t){let{width:l,height:u}=e.getBoundingClientRect(),{right:d,left:f,bottom:p}=t.getBoundingClientRect();r===`center`&&(s.value=n.x+l/2>d?-l+(d-n.x):n.x-l/2<f?-l+(l-(n.x-f)):-l/2),r===`right`&&(s.value=n.x+l+a>d?-l+(d-n.x):a),r===`left`&&(s.value=n.x-l-a<f?f-n.x:-l-a),n.y+u>p&&!o&&(c.value=-u-i)}return{top:n.y+c.value,left:n.x+s.value}}function _(e,t,n){u(()=>e.addEventListener(t,n)),d(()=>e.removeEventListener(t,n))}function v(){let e=p(0),t=p(0);return _(window,`mousemove`,n=>{e.value=n.clientX,t.value=n.clientY}),{x:e,y:t}}var y=[`aria-hidden`],b=[`innerHTML`],x={__name:`Tooltip`,props:{teleportTo:{type:String,default:`body`},backgroundColor:{type:String,default:`#FFFFFF`},color:{type:String,default:`#000000`},content:String,maxWidth:{type:String,default:`300px`},parent:{type:Object},show:{type:Boolean,default:!1},isCustom:{type:Boolean,default:!1},fontSize:{type:[Number,String],default:14},borderRadius:{type:Number,default:4},borderColor:{type:String,default:`#e1e5e8`},borderWidth:{type:Number,default:1},backgroundOpacity:{type:Number,default:100},position:{type:String,default:`center`},offsetY:{type:Number,default:24},offsetX:{type:Number,default:0},blockShiftY:{type:Boolean,default:!1},isFullscreen:{type:Boolean,default:!1},smooth:{type:Boolean,default:!0},backdropFilter:{type:Boolean,default:!0},smoothForce:{type:Number,default:.18},smoothSnapThreshold:{type:Number,default:.25},isA11yMode:{type:Boolean,default:!1},a11yPosition:{type:Object,default:null}},setup(u,{expose:_}){let x=u,S=p(null),{x:C,y:w}=v(x.parent),T=p({x:0,y:0}),E=p({x:0,y:0}),D=p(null),O=p(null),k=p({scaleX:1,scaleY:1}),A=p(null);function j(){let e=N(S.value);if(D.value=e,!e){O.value=null,k.value={scaleX:1,scaleY:1},A.value=null;return}O.value=e.getBoundingClientRect(),k.value=P(e),A.value=x.parent?.getBoundingClientRect?.()||null}function M(e){return e?!!(e.transform&&e.transform!==`none`||e.perspective&&e.perspective!==`none`||e.filter&&e.filter!==`none`||e.backdropFilter&&e.backdropFilter!==`none`||e.contain&&e.contain.includes(`paint`)||e.willChange&&(e.willChange.includes(`transform`)||e.willChange.includes(`filter`))):!1}function N(e){let t=e?.parentElement||null;for(;t&&t!==document.documentElement;){if(M(getComputedStyle(t)))return t;t=t.parentElement}return null}function P(e){if(!e)return{scaleX:1,scaleY:1};let t=getComputedStyle(e).transform;if(!t||t===`none`)return{scaleX:1,scaleY:1};try{let e=new DOMMatrixReadOnly(t),n=Math.hypot(e.a,e.b),r=Math.hypot(e.c,e.d);return{scaleX:n||1,scaleY:r||1}}catch{return{scaleX:1,scaleY:1}}}function F({x:e,y:t}){x.isA11yMode||(C.value=e,w.value=t)}let I=null;function L(){if(!x.show){z();return}if(!x.smooth){E.value.x=T.value.x,E.value.y=T.value.y,z();return}let e=T.value.x-E.value.x,t=T.value.y-E.value.y;if(Math.abs(e)<=x.smoothSnapThreshold&&Math.abs(t)<=x.smoothSnapThreshold){E.value.x=T.value.x,E.value.y=T.value.y,z();return}E.value.x+=e*x.smoothForce,E.value.y+=t*x.smoothForce,I=requestAnimationFrame(L)}function R(){I==null&&x.show&&x.smooth&&(I=requestAnimationFrame(L))}function z(){I!=null&&(cancelAnimationFrame(I),I=null)}h([C,w],([e,t])=>{T.value.x=e,T.value.y=t,x.smooth?R():(E.value.x=e,E.value.y=t)}),h(()=>x.show,async e=>{if(!e){z();return}let t=C.value,n=w.value;T.value.x=t,T.value.y=n,E.value.x=t,E.value.y=n,await s(),j(),R()}),d(()=>{z()});let B=n(()=>x.isA11yMode&&x.a11yPosition&&typeof x.a11yPosition.x==`number`&&typeof x.a11yPosition.y==`number`?{x:x.a11yPosition.x,y:x.a11yPosition.y}:{x:E.value.x,y:E.value.y}),V=n(()=>{let e=O.value;if(!e)return{x:B.value.x,y:B.value.y};let{scaleX:t,scaleY:n}=k.value;return{x:(B.value.x-e.left)/t,y:(B.value.y-e.top)/n}}),H=n(()=>{let e=O.value,t=A.value;if(!e||!t)return x.parent;let{scaleX:n,scaleY:r}=k.value;return{...x.parent,getBoundingClientRect(){let i=t;return{left:(i.left-e.left)/n,top:(i.top-e.top)/r,right:(i.right-e.left)/n,bottom:(i.bottom-e.top)/r,width:i.width/n,height:i.height/r,x:(i.left-e.left)/n,y:(i.top-e.top)/r}}}}),U=n(()=>{let e=g({tooltip:S.value,chart:H.value,clientPosition:V.value,positionPreference:x.position,defaultOffsetX:x.offsetX,defaultOffsetY:x.offsetY,blockShiftY:x.blockShiftY});return{top:Math.round(e.top),left:Math.round(e.left)}}),W=n(()=>e(x.backgroundColor,x.backgroundOpacity)),G=n(()=>{let e={pointerEvents:`none`,position:`fixed`,top:`0px`,left:`0px`,transform:`translate3d(${U.value.left}px, ${U.value.top}px, 0)`,borderRadius:`${x.borderRadius}px`,border:`${x.borderWidth}px solid ${x.borderColor}`,zIndex:2147483647};return x.isCustom||Object.assign(e,{background:W.value,color:x.color,maxWidth:x.maxWidth,fontSize:`${x.fontSize}px`}),e});return _({placeTooltip:F}),(e,n)=>(f(),r(t,{to:u.isFullscreen?u.parent:u.teleportTo},[u.show?(f(),a(`div`,{key:0,ref_key:`tooltip`,ref:S,role:`tooltip`,"aria-hidden":!u.show,"aria-live":`polite`,class:c({"vue-data-ui-custom-tooltip":u.isCustom,"vue-data-ui-tooltip":!u.isCustom,"vue-data-ui-tooltip-backdrop":u.backdropFilter}),style:l(G.value)},[m(e.$slots,`tooltip-before`),m(e.$slots,`default`),m(e.$slots,`tooltip`,{},()=>[o(`div`,{innerHTML:u.content},null,8,b)]),m(e.$slots,`tooltip-after`)],14,y)):i(``,!0)],8,[`to`]))}};export{x as default};
@@ -1 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as n}from"./img-DiP2_5_r.js";import{t as r}from"./BaseIcon-DDctLkeT.js";import{t as i}from"./vClickOutside-BxNzkY17.js";import{Fragment as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode as u,createVNode as d,guardReactiveProps as ee,nextTick as f,normalizeClass as p,normalizeProps as m,normalizeStyle as h,onBeforeUnmount as g,onMounted as te,openBlock as _,ref as v,renderList as ne,renderSlot as y,toDisplayString as b,unref as x,watch as S,withDirectives as C,withKeys as w,withModifiers as T}from"vue";var re={beforeMount(e,t){let n=()=>typeof t.value==`function`?{handler:t.value,targets:[e],disabled:!1,scrollGuardMs:250,moveThreshold:10}:{handler:t.value?.handler,targets:t.value?.targets??[e],disabled:!!t.value?.disabled,scrollGuardMs:t.value?.scrollGuardMs??250,moveThreshold:t.value?.moveThreshold??10},r={lastScrollTs:0,pointerId:null,startX:0,startY:0,moved:!1},i=()=>{r.lastScrollTs=performance.now()},a=e=>{r.pointerId=e.pointerId??null,r.startX=e.clientX??0,r.startY=e.clientY??0,r.moved=!1},o=e=>{if(r.pointerId===null||(e.pointerId??null)!==r.pointerId)return;let t=(e.clientX??0)-r.startX,i=(e.clientY??0)-r.startY,{moveThreshold:a}=n();t*t+i*i>=a*a&&(r.moved=!0)},s=e=>{r.pointerId!==null&&(e.pointerId??null)===r.pointerId&&(r.pointerId=null)},c=(e,t)=>{let n=e.composedPath?e.composedPath():[];for(let r of t){let t=r&&typeof r==`object`&&`value`in r?r.value:r;if(t&&(t===e.target||t.contains&&t.contains(e.target)||n.length&&n.includes(t)))return!0}return!1},l=e=>{let{handler:t,targets:i,disabled:a,scrollGuardMs:o}=n();a||typeof t==`function`&&(performance.now()-r.lastScrollTs<o||r.moved||c(e,i)||t(e))};e.__vPopoverClickOutside__={onScrollCapture:i,onPointerDownCapture:a,onPointerMoveCapture:o,onPointerUpCapture:s,onClickCapture:l},window.addEventListener(`scroll`,i,!0),document.addEventListener(`pointerdown`,a,!0),document.addEventListener(`pointermove`,o,!0),document.addEventListener(`pointerup`,s,!0),document.addEventListener(`click`,l,!0)},unmounted(e){let t=e.__vPopoverClickOutside__;t&&(window.removeEventListener(`scroll`,t.onScrollCapture,!0),document.removeEventListener(`pointerdown`,t.onPointerDownCapture,!0),document.removeEventListener(`pointermove`,t.onPointerMoveCapture,!0),document.removeEventListener(`pointerup`,t.onPointerUpCapture,!0),document.removeEventListener(`click`,t.onClickCapture,!0),delete e.__vPopoverClickOutside__)}},E=/* @__PURE__ */ e({default:()=>D}),ie=[`title`,`onKeydown`],ae=[`popover`,`data-open`],oe=[`onClick`,`onMouseenter`,`onMouseout`],se=[`title`],ce=[`data-open`],le=[`onClick`,`onMouseenter`,`onMouseout`],D=/*#__PURE__*/ t({__name:`UserOptions`,props:{hasPdf:{type:Boolean,default:!0},hasXls:{type:Boolean,default:!0},hasImg:{type:Boolean,default:!1},hasSvg:{type:Boolean,default:!1},hasLabel:{type:Boolean,default:!1},isLabelActive:{type:Boolean,default:!1},hasTable:{type:Boolean,default:!1},hasSort:{type:Boolean,default:!1},hasStack:{type:Boolean,default:!1},hasTooltip:{type:Boolean,default:!1},color:{type:String},backgroundColor:{type:String},isPrinting:{type:Boolean,default:!1},isImaging:{type:Boolean,default:!1},title:{type:String},uid:{type:String},hasFullscreen:{type:Boolean,default:!1},chartElement:{type:HTMLElement,default:null},isFullscreen:{type:Boolean,default:!1},isStacked:{type:Boolean,default:!1},isTooltip:{type:Boolean,default:!1},hasAnimation:{type:Boolean,default:!1},isAnimation:{type:Boolean,default:!1},titles:{type:Object,default(){return{}}},showTooltips:{type:Boolean,default:!0},zIndex:{type:Number,default:1},noOffset:{type:Boolean,default:!0},position:{type:String,default:`right`},offsetX:{type:Number,default:0},hasAnnotator:{type:Boolean,default:!1},isAnnotation:{type:Boolean,default:!1},callbacks:{type:Object,default(){return{}}},printScale:{type:Number,default:2},tableDialog:{type:Boolean,default:!1},hasZoom:{type:Boolean,default:!1},isZoom:{type:Boolean,default:!1},isCursorPointer:{type:Boolean,default:!1},hasAltCopy:{type:Boolean,default:!1}},emits:[`generatePdf`,`generateCsv`,`generateImage`,`toggleTable`,`toggleLabels`,`toggleSort`,`toggleFullscreen`,`toggleStack`,`toggleTooltip`,`toggleAnimation`,`toggleAnnotator`,`generateSvg`,`toggleZoom`,`copyAlt`],setup(e,{expose:t,emit:E}){let D=e,O=E,k=v(null),A=v(null),j=v(null),M=v(!1),N=o(()=>typeof window<`u`&&typeof HTMLElement<`u`&&`popover`in HTMLElement.prototype);async function ue(){if(D.callbacks.pdf){let{imageUri:e,base64:t}=await n({domElement:D.chartElement,base64:!0,img:!0,scale:D.printScale});D.callbacks.pdf({domElement:D.chartElement,base64:t,imageUri:e})}else O(`generatePdf`)}function de(){O(`generateCsv`,D.callbacks.csv)}async function fe(){if(D.callbacks.img){O(`generateImage`,{stage:`start`});try{let{imageUri:e,base64:t}=await n({domElement:D.chartElement,base64:!0,img:!0,scale:D.printScale});await Promise.resolve(D.callbacks.img({domElement:D.chartElement,imageUri:e,base64:t}))}finally{O(`generateImage`,{stage:`end`})}}else O(`generateImage`)}function pe(){O(`generateSvg`,{isCb:!!D.callbacks.svg})}let P=v(!1);function me(){D.callbacks.table?D.callbacks.table():(P.value=!P.value,O(`toggleTable`))}function he(e){P.value=e}t({setTableIconState:he,setTooltipIconState:ye});let F=v(D.isLabelActive);function ge(){D.callbacks.labels?D.callbacks.labels():(F.value=!F.value,O(`toggleLabels`))}let I=v(D.isAnimation);function L(){D.callbacks.animation?D.callbacks.animation():(I.value=!I.value,O(`toggleAnimation`))}let R=v(D.isZoom);function z(){D.callbacks.zoom?D.callbacks.zoom():(R.value=!R.value,O(`toggleZoom`))}let B=o({get:()=>D.isAnnotation,set:e=>e});function V(){D.callbacks.annotator?D.callbacks.annotator():(B.value=!B.value,O(`toggleAnnotator`))}function _e(){D.callbacks.sort?D.callbacks.sort():O(`toggleSort`)}function H(){O(`copyAlt`)}let U=v(D.isStacked);function ve(){D.callbacks.stack?D.callbacks.stack():(U.value=!U.value,O(`toggleStack`))}let W=v(D.isTooltip);function ye(e){W.value=e}function be(){D.callbacks.tooltip?D.callbacks.tooltip():(W.value=!W.value,O(`toggleTooltip`))}let xe=o({get:()=>D.isFullscreen,set:e=>O(`toggleFullscreen`,e)});function G(){if(!D.chartElement)return;let e=!D.isFullscreen;xe.value=e,e?D.chartElement.requestFullscreen():document.exitFullscreen()}function K(){let e=!!document.fullscreenElement;O(`toggleFullscreen`,e)}te(()=>{document.addEventListener(`fullscreenchange`,K)}),g(()=>{document.removeEventListener(`fullscreenchange`,K)});let q=v(window.innerWidth>600),J=v({tooltip:!1,pdf:!1,csv:!1,img:!1,table:!1,labels:!1,sort:!1,stack:!1,fullscreen:!1,animation:!1,annotator:!1,svg:!1,zoom:!1,altCopy:!1}),Se=v(!0);function Ce(){q.value=window.innerWidth>600,M.value=!M.value,M.value&&(Se.value=!1)}function we(){D.isPrinting||D.isImaging||(M.value=!1)}function Te(){M.value&&we()}let Y=v(0);function Ee(){Y.value=performance.now()+50}function X(){D.isPrinting||D.isImaging||(N.value&&Q(),M.value=!1)}function De(){performance.now()<Y.value||X()}function Oe(){if(q.value=window.innerWidth>600,!N.value){M.value||Ee(),M.value=!M.value;return}let e=j.value;if(e&&e.matches&&e.matches(`:popover-open`)||M.value){M.value=!1,Q();return}Ee(),M.value=!0}function ke(){Oe()}function Ae(e,t,n,r){let i=window.devicePixelRatio||1,a=e=>Math.round(e*i)/i;e.style.position=`fixed`,e.style.top=`${a(t)}px`,e.style.left=`${a(n)}px`,e.style.right=`auto`,e.style.width=`${a(r)}px`}function je(e){if(e.style.width=``,e.style.left=``,e.style.right=``,e.style.top=``,e.style.position=`absolute`,e.style.top=`36px`,D.position===`right`){let t=D.offsetX?D.offsetX:D.noOffset?0:4;e.style.right=`${t}px`,e.style.left=`auto`}else{let t=D.noOffset?0:4;e.style.left=`${t}px`,e.style.right=`auto`}e.style.display=`flex`,e.style.visibility=`hidden`,e.style.pointerEvents=`none`}function Me(){if(!N.value||!M.value||!k.value||!j.value)return;let e=k.value.getBoundingClientRect(),t=j.value.getBoundingClientRect(),n=e.top+38;if(D.position===`right`){let r=D.offsetX?D.offsetX:D.noOffset?0:4,i=e.right-r-t.width;Ae(j.value,n,i,t.width)}else{let r=D.noOffset?0:4,i=e.left+r;Ae(j.value,n,i,t.width)}}let Ne=0;function Pe(){cancelAnimationFrame(Ne),Ne=requestAnimationFrame(()=>{Me()})}function Z(){N.value&&M.value&&Pe()}function Fe(e,t){let n=window.devicePixelRatio||1,r=e=>Math.round(e*n)/n;e.style.position=`fixed`,e.style.top=`${r(t.top)}px`,e.style.left=`${r(t.left)}px`,e.style.right=`auto`,e.style.width=`${r(t.width)}px`}async function Ie(e=!1){if(!N.value)return;let t=j.value;if(!t)return;let n=t.getAttribute(`style`)||``,r=t.getAttribute(`data-open`);t.setAttribute(`popover`,`manual`);try{t.setAttribute(`data-open`,`true`),je(t),await f();let i=t.getBoundingClientRect();t.setAttribute(`style`,n),r===null?t.removeAttribute(`data-open`):t.setAttribute(`data-open`,r),Fe(t,i),e||(typeof t.showPopover==`function`?t.showPopover():t.style.display=`flex`)}catch{if(!e)try{typeof t.showPopover==`function`?t.showPopover():t.style.display=`flex`}catch{}}}function Q(){if(!N.value)return;let e=j.value;if(e){e.setAttribute(`popover`,`manual`);try{typeof e.hidePopover==`function`?e.hidePopover():e.style.display=`none`}catch{e.style.display=`none`}e.style.position=``,e.style.top=``,e.style.left=``,e.style.right=``,e.style.width=``,e.style.inset=``}}function Le(){if(!N.value)return;let e=j.value;e&&(M.value&&=typeof e.matches==`function`&&(()=>{try{return e.matches(`:popover-open`)}catch{return!1}})())}function Re(e){if(!N.value||!M.value||performance.now()<Y.value)return;let t=e.composedPath?e.composedPath():[],n=A.value?t.includes(A.value):!1,r=j.value?t.includes(j.value):!1;!n&&!r&&X()}S(()=>D.isFullscreen,async()=>{N.value&&(await f(),M.value&&Ie())}),S(()=>M.value,async e=>{N.value&&(await f(),e?(await Ie(!1),Me()):Q())});function ze(e){e.key===`Escape`&&k.value&&k.value.contains(document.activeElement)&&(e.preventDefault(),e.stopPropagation(),X(),A.value?.focus())}te(()=>{window.addEventListener(`pointerdown`,Re,!0),window.addEventListener(`resize`,Z,{passive:!0}),window.addEventListener(`scroll`,Z,{passive:!0,capture:!0}),j.value&&j.value.addEventListener(`toggle`,Le)}),g(()=>{window.removeEventListener(`pointerdown`,Re,!0),window.removeEventListener(`resize`,Z),window.removeEventListener(`scroll`,Z,!0),j.value&&j.value.removeEventListener(`toggle`,Le)});let Be=o(()=>[{key:`pdf`,visible:D.hasPdf,slot:`optionPdf`,testId:`user-options-pdf`,run:ue,icon:`filePdf`,alternate:D.isPrinting,alternateIcon:`hourglass`,spin:!0},{key:`csv`,visible:D.hasXls,slot:`optionCsv`,testId:`user-options-xls`,run:de,icon:`fileCsv`},{key:`img`,visible:D.hasImg,slot:`optionImg`,testId:`user-options-img`,run:fe,icon:`filePng`,alternate:D.isImaging,alternateIcon:`hourglass`,spin:!0},{key:`svg`,visible:D.hasSvg,slot:`optionSvg`,testId:`user-options-svg`,run:pe,icon:`fileSvg`},{key:`tooltip`,visible:D.hasTooltip,slot:`optionTooltip`,testId:`user-options-tooltip`,run:be,icon:`tooltipDisabled`,alternate:W.value,alternateIcon:`tooltip`},{key:`table`,visible:D.hasTable,slot:`optionTable`,testId:`user-options-table`,run:me,icon:P.value?`tableClose`:`tableOpen`,alternate:D.tableDialog,alternateIcon:P.value?`tableDialogClose`:`tableDialogOpen`},{key:`labels`,visible:D.hasLabel,slot:`optionLabels`,testId:`user-options-label`,run:ge,icon:F.value?`labelClose`:`labelOpen`},{key:`sort`,visible:D.hasSort,slot:`optionSort`,testId:`user-options-sort`,run:_e,icon:`sort`},{key:`stack`,visible:D.hasStack,slot:`optionStack`,testId:`user-options-stack`,run:ve,icon:`stack`,alternate:U.value,alternateIcon:`unstack`,slotProps:{first:{name:`isStack`,value:U.value}}},{key:`fullscreen`,visible:D.hasFullscreen,slot:`optionFullscreen`,testId:`user-options-fullscreen`,run:()=>G(D.isFullscreen?`out`:`in`),icon:`fullscreen`,alternate:D.isFullscreen,alternateIcon:`exitFullscreen`,slotProps:{first:{name:`toggleFullscreen`,value:G},second:{name:`isFullscreen`,value:D.isFullscreen}}},{key:`zoom`,visible:D.hasZoom,slot:`optionZoom`,testId:`user-options-fullscreen`,run:()=>z(),icon:`zoomLock`,alternate:D.isZoom,alternateIcon:`zoomUnlock`,slotProps:{first:{name:`toggleZoom`,value:z},second:{name:`isZoomLocked`,value:!D.isZoom}}},{key:`animation`,visible:D.hasAnimation,slot:`optionAnimation`,testId:`user-options-anim`,run:L,icon:`pause`,alternate:I.value,alternateIcon:`play`,slotProps:{first:{name:`toggleAnimation`,value:L},second:{name:`isAnimated`,value:I.value}}},{key:`annotator`,visible:D.hasAnnotator,slot:`optionAnnotator`,testId:`user-options-annotator`,run:V,icon:`annotator`,alternate:B.value,alternateIcon:`annotatorDisabled`,slotProps:{first:{name:`toggleAnnotator`,value:V},second:{name:`isAnnotator`,value:B.value}}},{key:`altCopy`,visible:D.hasAltCopy,slot:`optionAltCopy`,testId:`user-options-alt-copy`,run:H,icon:`accessibility`,slotProps:{first:{name:`copyAlt`,value:H}}}]);function $(e){let t={"button-info-left":D.position===`left`,"button-info-right":D.position===`right`},n=D.position===`left`&&J.value[e],r=D.position===`right`&&J.value[e];return e===`tooltip`?{...t,"button-info-left-visible":n,"button-info-right-visible":r}:{...t,"button-info-right-visible":r,"button-info-left-visible":n}}return(t,n)=>N.value?C((_(),l(`div`,{key:0,ref_key:`rootRef`,ref:k,"data-dom-to-png-ignore":``,class:`vue-ui-user-options`,style:h(`z-index: ${e.zIndex}; height: 34px; position: ${e.isFullscreen?`fixed`:`absolute`}; top: 0; ${e.position===`right`?`right:${e.isFullscreen?`12px`:`0`}`:`left:${e.isFullscreen?`12px`:`0`}`}; padding: 4px; background:transparent;`),onKeydown:ze},[u(`div`,{ref_key:`triggerRef`,ref:A,tabindex:`0`,role:`button`,title:M.value?e.titles.close||``:e.titles.open||``,style:h(`width:32px; position: absolute; top: 0;${e.position===`right`?`right: ${e.offsetX?e.offsetX:e.noOffset?0:4}px`:`left: ${e.noOffset?0:4}px`}; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; cursor:${e.isCursorPointer?`pointer`:`default`}; background:transparent`),onPointerdown:T(Oe,[`stop`,`prevent`]),onKeydown:w(T(ke,[`stop`,`prevent`]),[`enter`])},[y(t.$slots,`menuIcon`,m(ee({isOpen:M.value,color:e.color})),()=>[d(r,{name:M.value?`close`:`menu`,stroke:e.color,"stroke-width":2},null,8,[`name`,`stroke`])],!0)],44,ie),u(`div`,{ref_key:`drawerRef`,ref:j,popover:N.value?`manual`:null,"data-open":N.value?null:M.value,class:p({"vue-ui-user-options-drawer":!0}),style:h(N.value?{background:e.backgroundColor}:`background:${e.backgroundColor}; ${e.position===`right`?`right: ${e.offsetX?e.offsetX:e.noOffset?0:4}px`:`left: ${e.noOffset?0:4}px`}`)},[y(t.$slots,`custom-menu-before`,{},void 0,!0),(_(!0),l(a,null,ne(Be.value,n=>(_(),l(a,{key:n.key},[n.visible?(_(),l(`button`,{key:0,tabindex:`0`,class:`vue-ui-user-options-button`,onClick:n.run,onMouseenter:e=>J.value[n.key]=!0,onMouseout:e=>J.value[n.key]=!1,style:h({cursor:e.isCursorPointer?`pointer`:`default`})},[t.$slots[n.slot]?(_(),l(a,{key:0},[n.slotProps?n.slotProps.second?y(t.$slots,n.slot,m({[n.slotProps.first.name||``]:n.slotProps.first.value,[n.slotProps.second.name||``]:n.slotProps.second.value}),void 0,!0,2):y(t.$slots,n.slot,m({[n.slotProps.first.name||``]:n.slotProps.first.value}),void 0,!0,1):y(t.$slots,n.slot,{},void 0,!0,0)],64)):(_(),l(a,{key:1},[n.alternate?(_(),s(r,{key:0,name:n.alternateIcon,isSpin:n.spin,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`name`,`isSpin`,`stroke`])):(_(),s(r,{key:1,name:n.icon,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`name`,`stroke`]))],64)),q.value&&e.titles[n.key===`animation`?`fullscreen`:n.key]?(_(),l(`div`,{key:2,dir:`auto`,class:p($(n.key)),style:h({background:e.backgroundColor,color:e.color})},b(e.titles[n.key]),7)):c(``,!0)],44,oe)):c(``,!0)],64))),128)),y(t.$slots,`custom-menu-after`,{},void 0,!0)],12,ae)],36)),[[x(re),N.value?null:{targets:[k.value,j.value,A.value],handler:De}]]):C((_(),l(`div`,{key:1,ref_key:`rootRef`,ref:k,"data-dom-to-png-ignore":``,class:`vue-ui-user-options`,style:h(`z-index: ${e.zIndex}; height: 34px; position: ${e.isFullscreen?`fixed`:`absolute`}; top: 0; ${e.position===`right`?`right:${e.isFullscreen?`12px`:`0`}`:`left:${e.isFullscreen?`12px`:`0`}`}; padding: 4px; background:transparent;`),onKeydown:ze},[u(`div`,{ref_key:`triggerRef`,ref:A,tabindex:`0`,title:M.value?e.titles.close||``:e.titles.open||``,style:h(`width:32px; position: absolute; top: 0;${e.position===`right`?`right: ${e.offsetX?e.offsetX:e.noOffset?0:4}px`:`left: ${e.noOffset?0:4}px`}; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; cursor:pointer; background:transparent`),onClick:T(Ce,[`stop`]),onKeypress:w(Ce,[`enter`])},[y(t.$slots,`menuIcon`,m(ee({isOpen:M.value,color:e.color})),()=>[d(r,{name:M.value?`close`:`menu`,stroke:e.color,"stroke-width":2},null,8,[`name`,`stroke`])],!0)],44,se),u(`div`,{ref_key:`drawerRef`,ref:j,"data-open":M.value,class:p({"vue-ui-user-options-drawer":!0}),style:h(`background:${e.backgroundColor}; ${e.position===`right`?`right: ${e.offsetX?e.offsetX:e.noOffset?0:4}px`:`left: ${e.noOffset?0:4}px`}`)},[y(t.$slots,`custom-menu-before`,{},void 0,!0),(_(!0),l(a,null,ne(Be.value,n=>(_(),l(a,{key:n.key},[n.visible?(_(),l(`button`,{key:0,tabindex:`0`,class:`vue-ui-user-options-button`,onClick:e=>n.run(e),onMouseenter:e=>J.value[n.key]=!0,onMouseout:e=>J.value[n.key]=!1},[t.$slots[n.slot]?(_(),l(a,{key:0},[n.slotProps?n.slotProps.second?y(t.$slots,n.slot,m({[n.slotProps.first.name||``]:n.slotProps.first.value,[n.slotProps.second.name||``]:n.slotProps.second.value}),void 0,!0,2):y(t.$slots,n.slot,m({[n.slotProps.first.name||``]:n.slotProps.first.value}),void 0,!0,1):y(t.$slots,n.slot,{},void 0,!0,0)],64)):(_(),l(a,{key:1},[n.alternate?(_(),s(r,{key:0,name:n.alternateIcon,isSpin:n.spin,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`name`,`isSpin`,`stroke`])):(_(),s(r,{key:1,name:n.icon,stroke:e.color,style:{"pointer-events":`none`}},null,8,[`name`,`stroke`]))],64)),q.value&&e.titles[n.key===`animation`?`fullscreen`:n.key]?(_(),l(`div`,{key:2,dir:`auto`,class:p($(n.key)),style:h({background:e.backgroundColor,color:e.color})},b(e.titles[n.key]),7)):c(``,!0)],40,le)):c(``,!0)],64))),128)),y(t.$slots,`custom-menu-actions`,{},void 0,!0)],12,ce)],36)),[[x(i),Te]])}},[[`__scopeId`,`data-v-5fb3e5b9`]]);export{E as n,D as t};
@@ -1 +0,0 @@
1
- var e=`3.28.0`;export{e as t};
@@ -1 +0,0 @@
1
- import{isRef as e,nextTick as t,onMounted as n,ref as r,unref as i,watch as a}from"vue";var o=`http://www.w3.org/2000/svg`,s=`http://www.w3.org/1999/xlink`,c=`system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif`,l=/* @__PURE__ */ new WeakMap;function u(e){let t=l.get(e);return t||(t=getComputedStyle(e),l.set(e,t)),t}function d(){l=/* @__PURE__ */ new WeakMap}function f(e){return document.createElementNS(o,e)}function p(e){return`${e}, ${c}`}function m({svg:c,title:l,legend:m,legendItems:_,backgroundColor:v,stretchTitle:y=!1,titleEmbedded:b=!1}){let x=e(c)?c:r(c),S=r(!1),C=/* @__PURE__ */ `fill.fill-opacity.stroke.stroke-width.stroke-opacity.opacity.color.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-dasharray.stroke-dashoffset.font-family.font-size.font-style.font-weight.font-variant.letter-spacing.word-spacing.text-anchor.dominant-baseline.shape-rendering.vector-effect.paint-order.mix-blend-mode.isolation.filter.clip-path.mask.transform.transform-origin.visibility.display`.split(`.`),w=/* @__PURE__ */ new Set([`font-family`]);async function T({timeoutMs:e=4e3,log:n=`warn`}={}){if(typeof window>`u`||typeof document>`u`)return console.warn(`SVG export only works in the browser.`),null;let r=performance.now()+e,a=()=>{let e=i(x);return e&&document.contains(e)?e:null},o=a();if(o)return o;let s=!1,c=e=>{if(!s&&e)try{e.disconnect()}catch{}s=!0},l,u=new Promise(e=>{try{l=new MutationObserver(()=>{let t=a();t&&(c(l),e(t))}),l.observe(document.documentElement,{childList:!0,subtree:!0})}catch{e(null)}});for(;performance.now()<r;){let e=await Promise.race([u,new Promise(e=>requestAnimationFrame(e))]);if(await t(),o=a()||e,o)return c(l),o}return c(l),console.warn(`SVG element not found or not mounted (timed out).`),null}n(async()=>{try{await T(),S.value=!0}catch{S.value=!1}}),a(x,async()=>{try{await T(),S.value=!0}catch{S.value=!1}});let E=/* @__PURE__ */ new Map;function D(e){if(E.has(e))return E.get(e);let t=f(`svg`);t.setAttribute(`width`,`0`),t.setAttribute(`height`,`0`),t.style.position=`absolute`,t.style.left=`-99999px`,t.style.top=`-99999px`;let n=f(e);t.appendChild(n),document.body.appendChild(t);let r=window.getComputedStyle(n),i={};for(let e of C)i[e]=r.getPropertyValue(e);return document.body.removeChild(t),E.set(e,i),i}function O(e){let t=u(e),n=D(e.tagName.toLowerCase()),r=[];for(let e of C){let i=t.getPropertyValue(e)||``,a=n[e]||``;if(w.has(e)){e===`font-family`&&i&&(i=p(i)),i&&r.push(`${e}:${i};`);continue}i&&i!==a&&r.push(`${e}:${i};`)}return r.join(``)}function k(e,t){e.getAttribute(`width`)&&t.setAttribute(`width`,e.getAttribute(`width`)),e.getAttribute(`height`)&&t.setAttribute(`height`,e.getAttribute(`height`)),e.getAttribute(`viewBox`)&&t.setAttribute(`viewBox`,e.getAttribute(`viewBox`));let n=[e,...Array.from(e.querySelectorAll(`*`))],r=[t,...Array.from(t.querySelectorAll(`*`))];for(let e=0;e<n.length;e+=1){let t=n[e],i=r[e],a=O(t);a&&i.setAttribute(`style`,a),[`fill`,`stroke`,`filter`,`clip-path`,`mask`].forEach(e=>{let n=t.getAttribute(e);n&&i.setAttribute(e,n)})}}function A(e){let t=e.getAttribute(`viewBox`);if(!t)return null;let[n,r,i,a]=t.split(/\s+|,/).map(Number);return[n,r,i,a].some(e=>Number.isNaN(e))?null:{minX:n,minY:r,width:i,height:a}}function j(e){e.getAttribute(`xmlns`)||e.setAttribute(`xmlns`,o),e.getAttribute(`xmlns:xlink`)||e.setAttribute(`xmlns:xlink`,s),e.getAttribute(`xml:space`)||e.setAttribute(`xml:space`,`preserve`)}function M(e){let t=document.createElement(`div`);return t.style.position=`absolute`,t.style.left=`-99999px`,t.style.top=`-99999px`,t.style.width=`0`,t.style.height=`0`,document.body.appendChild(t),t.appendChild(e),t}function N(e){try{e.remove()}catch{}}function P(e,t,n,r,i){if(!l.value||!l.value.text)return 0;let a={text:l.value.text||``,color:l.value.color||`#111`,fontSize:l.value.fontSize||20,bold:!!l.value.bold,textAlign:(l.value?.textAlign||`center`).toLowerCase(),paddingLeft:l.value.paddingLeft??0,paddingRight:l.value.paddingRight??0,subtitle:l.value.subtitle||null},o=f(`g`);o.setAttribute(`id`,`__vdu_export_title`),e.appendChild(o);let s=n+a.paddingLeft,c=n+t-(a.paddingRight||0),u=n+t/2,d=`start`,p=s;a.textAlign===`center`?(d=`middle`,p=u):a.textAlign===`right`&&(d=`end`,p=c);let m=r,h=Math.round(a.fontSize*.4),g=f(`text`);g.setAttribute(`x`,String(p)),g.setAttribute(`y`,String(m+a.fontSize)),g.setAttribute(`text-anchor`,d),g.setAttribute(`dominant-baseline`,`ideographic`),g.setAttribute(`style`,`font-family:${i}; font-size:${a.fontSize}px; font-weight:${a.bold?`700`:`400`}; fill:${a.color}; ${y?`transform: scale(0.65, 1); transform-origin: center;`:``}`),g.textContent=a.text,o.appendChild(g);let _=a.fontSize;if(a.subtitle&&a.subtitle.text){let e={color:a.subtitle.color||`#666`,text:a.subtitle.text,fontSize:a.subtitle.fontSize||Math.max(12,Math.round(a.fontSize*.8)),bold:!!a.subtitle.bold},t=f(`text`);t.setAttribute(`x`,String(p)),t.setAttribute(`y`,String(m+a.fontSize+h+e.fontSize)),t.setAttribute(`text-anchor`,d),t.setAttribute(`dominant-baseline`,`ideographic`),t.setAttribute(`style`,`font-family:${i}; font-size:${e.fontSize}px; font-weight:${e.bold?`600`:`400`}; fill:${e.color}; ${y?`transform: scale(0.65, 1); transform-origin: center;`:``}`),t.textContent=e.text,o.appendChild(t),_+=h+e.fontSize}return _+Math.round(a.fontSize*.4)}function F(e,t,n,r,i){if(!m.value||!m.value.show||!Array.isArray(_.value)||!_.value.length)return 0;let a={bold:!!m.value.bold,backgroundColor:m.value.backgroundColor||`transparent`,color:m.value.color||`#111`,fontSize:m.value.fontSize||14,paddingX:14,paddingY:10,itemGapX:18,itemGapY:12,markerSize:Math.max(8,Math.round((m.value.fontSize||14)*.9)),markerTextGap:8,lineHeight:Math.round((m.value.fontSize||14)*1.2),maxWidth:t},o=f(`g`);o.setAttribute(`id`,`__vdu_export_legend`),o.setAttribute(`transform`,`translate(${n}, ${r})`),e.appendChild(o);let s=f(`rect`);s.setAttribute(`rx`,`6`),s.setAttribute(`ry`,`6`),s.setAttribute(`fill`,a.backgroundColor),o.appendChild(s);let c=f(`g`);o.appendChild(c);let l=f(`text`);l.setAttribute(`x`,`0`),l.setAttribute(`y`,`0`),l.setAttribute(`style`,`font-family:${i}; font-size:${a.fontSize}px; font-weight:${a.bold?`600`:`400`}; opacity:0;`),c.appendChild(l);let u=e=>(l.textContent=e||``,l.getComputedTextLength()),d=Math.max(1,a.maxWidth-a.paddingX*2);function p(e,t){let n=String(e||``).split(/\s+/).filter(Boolean),r=[];if(!n.length)return[``];let i=n.shift();for(;n.length;){let e=`${i} ${n[0]}`;if(u(e)<=t)i=e,n.shift();else if(u(i)>t&&i.length>1){let e=``;for(let n of i){let r=e+n;if(u(r)<=t)e=r;else break}let a=i.slice(e.length);r.push(e),i=a.length?a:n.shift()||``}else r.push(i),i=n.shift()||``}i&&r.push(i);let a=r[r.length-1]||``;if(u(a)>t&&a.length>1){let e=``;for(let n of a){let r=e+n;if(u(r)<=t)e=r;else break}let n=a.slice(e.length);r[r.length-1]=e,n&&r.push(n)}return r}let h=Math.PI/180;function g(e,t,n,r,i=-90){let a=i*h,o=``;for(let i=0;i<n;i+=1){let s=a+i*2*Math.PI/n,c=e+Math.cos(s)*r,l=t+Math.sin(s)*r;o+=(i===0?`M`:`L`)+c+`,`+l}return o+`Z`}function v(e,t,n=5,r,i){let a=-90*h,o=``;for(let s=0;s<n*2;s+=1){let c=s%2==0?r:i,l=a+s*Math.PI/n,u=e+Math.cos(l)*c,d=t+Math.sin(l)*c;o+=(s===0?`M`:`L`)+u+`,`+d}return o+`Z`}let y=_.value.map(e=>{let t=Math.max(1,d-(a.markerSize+a.markerTextGap)),n=p(e.name||``,t),r=Math.max(...n.map(u),0),i=a.markerSize+a.markerTextGap+r,o=Math.max(a.markerSize,n.length*a.lineHeight);return{...e,lines:n,itemW:i,itemH:o}}),b=[],x={items:[],width:0,height:0};for(let e of y){let t=(x.items.length?a.itemGapX:0)+e.itemW;x.items.length&&x.width+t>d?(b.push(x),x={items:[e],width:e.itemW,height:e.itemH}):(x.items.push(e),x.width+=t,x.height=Math.max(x.height,e.itemH))}x.items.length&&b.push(x);let S=a.paddingY;for(let e of b){let t=Math.max(a.paddingX,(a.maxWidth-e.width)/2);for(let n=0;n<e.items.length;n+=1){let r=e.items[n],o=t+a.markerSize/2,s=S+e.height/2.5,l=a.markerSize/2,u=String(r.shape||`rect`).toLowerCase();if(u===`circle`){let e=f(`circle`);e.setAttribute(`cx`,String(o)),e.setAttribute(`cy`,String(s)),e.setAttribute(`r`,String(l*.8)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`rect`||u===`square`){let e=f(`path`);e.setAttribute(`d`,g(o,s,4,l,-45)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`diamond`){let e=f(`path`);e.setAttribute(`d`,g(o,s,4,l,45)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`triangle`){let e=f(`path`);e.setAttribute(`d`,g(o,s,3,l,-90)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`pentagon`){let e=f(`path`);e.setAttribute(`d`,g(o,s,5,l,-90)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`hexagon`){let e=f(`path`);e.setAttribute(`d`,g(o,s,6,l,0)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else if(u===`star`){let e=f(`path`),t=l,n=l*.5;e.setAttribute(`d`,v(o,s,5,t,n)),e.setAttribute(`fill`,r.color||`#000`),c.appendChild(e)}else{let n=f(`rect`);n.setAttribute(`x`,String(t)),n.setAttribute(`y`,String(S+(e.height-a.markerSize)/2)),n.setAttribute(`width`,String(a.markerSize)),n.setAttribute(`height`,String(a.markerSize)),n.setAttribute(`fill`,r.color||`#000`),c.appendChild(n)}let d=t+a.markerSize+a.markerTextGap,p=S+(e.height-r.lines.length*a.lineHeight)/2+a.fontSize,m=f(`text`);m.setAttribute(`x`,String(d)),m.setAttribute(`y`,String(p)),m.setAttribute(`style`,`font-family:${i}; font-size:${a.fontSize}px; font-weight:${a.bold?`600`:`400`}; fill:${a.color};`),m.setAttribute(`dominant-baseline`,`ideographic`);let h=!0;for(let e of r.lines){let t=f(`tspan`);h||t.setAttribute(`dy`,String(a.lineHeight)),t.setAttribute(`x`,String(d)),t.textContent=e,m.appendChild(t),h=!1}c.appendChild(m),t+=r.itemW+(n<e.items.length-1?a.itemGapX:0)}S+=e.height+a.itemGapY}b.length&&(S-=a.itemGapY);let C=S+a.paddingY;return s.setAttribute(`x`,`0`),s.setAttribute(`y`,`0`),s.setAttribute(`width`,String(a.maxWidth)),s.setAttribute(`height`,String(C)),l.remove(),C+Math.round(a.fontSize*.4)}function I(e){let t=e.cloneNode(!0);return t.querySelectorAll(`script`).forEach(e=>e.remove()),k(e,t),j(t),t}function L(e){let t=Array.from(e.childNodes).filter(e=>e.nodeType===1&&e.nodeName.toLowerCase()===`defs`),n=Array.from(e.childNodes).filter(e=>e.nodeType!==1||e.nodeName.toLowerCase()!==`defs`),r=document.createElementNS(o,`g`);r.setAttribute(`id`,`__vdu_export_content`);for(let e of n)r.appendChild(e);for(let n of t)e.appendChild(n);return e.appendChild(r),r}function R(e,t){t<=0||e.setAttribute(`transform`,`translate(0, ${t})`)}function z(e,t){if(t<=0)return;let n=A(e),r=e.getAttribute(`height`);if(n)e.setAttribute(`viewBox`,`${n.minX} ${n.minY} ${n.width} ${n.height+t}`),r&&e.setAttribute(`height`,String(Number(r)+t));else if(r)e.setAttribute(`height`,String(Number(r)+t));else{let n=e.getBBox();e.setAttribute(`viewBox`,`0 0 ${Math.max(1,n.width)} ${Math.max(1,n.height+t)}`)}}function B(e){let t=A(e);if(t)return t.width;let n=Number(e.getAttribute(`width`));return!Number.isNaN(n)&&n>0?n:e.getBBox().width||0}function V(e){let t=A(e);if(t)return t.height;let n=Number(e.getAttribute(`height`));return!Number.isNaN(n)&&n>0?n:e.getBBox().height||0}async function H(e){let t=M(e);d();try{if(document.fonts?.ready)try{await Promise.race([document.fonts.ready,new Promise(e=>setTimeout(e,4e3))])}catch{}let t=L(e),n=A(e),r=n?n.minX:0,i=n?n.minY:0,a=Math.max(1,B(e)),o=Math.max(1,V(e)),s=p(u(e).getPropertyValue(`font-family`)||``),c=(b?null:P(e,a,r,i,s))??0,d=m&&m.value&&m.value.position?String(m.value.position).toLowerCase():`top`;m&&m.value&&m.value.show&&d===`top`&&(c+=F(e,a,r,i+c,s)),R(t,c);let f=0;m&&m.value&&m.value.show&&d===`bottom`&&(f+=F(e,a,r,i+c+o,s)),z(e,c+f),e.style.backgroundColor=v.value??`#FFF`,await g(e,{mode:`raster`}),h(e,l.value.text?-6:-48)}finally{N(t),d()}}async function U(){let e=I(await T());await H(e);let t=`<?xml version="1.0" standalone="no"?>\n${new XMLSerializer().serializeToString(e)}`,n=new Blob([t],{type:`image/svg+xml;charset=utf-8`});return{blob:n,url:URL.createObjectURL(n),text:t,dataUrl:`data:image/svg+xml;charset=utf-8,${encodeURIComponent(t)}`}}async function W(e){let{url:t}=await U(),n=e||l.value?.text||`chart`,r=document.createElement(`a`);r.href=t,r.download=n.endsWith(`.svg`)?n:`${n}.svg`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(t)}return{ready:S,getSvg:U,exportSvg:W}}function h(e,t=-50){if(!t)return;let n=e.getAttribute(`viewBox`),r=t=>{if(!t)return;let n=e.getAttribute(`height`);if(!n)return;let r=/^(\d+(\.\d+)?)(px)?$/.exec(n.trim());if(!r)return;let i=parseFloat(r[1])||0,a=Math.max(1,i+t);e.setAttribute(`height`,String(a))};if(n){let i=n.trim().split(/\s+|,/).map(Number);if(i.length!==4||i.some(e=>!Number.isFinite(e)))return;let[a,o,s,c]=i,l=o+t,u=-t,d=Math.max(1,c+u);e.setAttribute(`viewBox`,`${a} ${l} ${s} ${d}`),r(u);return}let i=Number(e.getAttribute(`width`)),a=Number(e.getAttribute(`height`));if(!(i>0&&a>0)){let t=e.getBBox();i=Math.max(1,t.width||1),a=Math.max(1,t.height||1)}let o=t,s=-t,c=Math.max(1,a+s);e.setAttribute(`viewBox`,`0 ${o} ${i} ${c}`),(function(){let t=e.getAttribute(`height`);if(!t)return;let n=/^(\d+(\.\d+)?)(px)?$/.exec(t.trim());if(!n)return;let r=parseFloat(n[1])||0,i=Math.max(1,r+s);e.setAttribute(`height`,String(i))})()}async function g(e,{mode:t=`raster`}={}){let n=Array.from(e.querySelectorAll(`foreignObject`));if(!n.length)return{converted:0,rasterized:0,skipped:0,errors:0};let r=0,i=0,a=0,c=0,l=e=>[`div`,`p`,`span`,`strong`,`em`,`b`,`i`,`br`].includes(e),d=e=>{try{let t=e.firstElementChild;if(!t)return!1;let n=[t];for(;n.length;){let e=n.pop();if(e.nodeType===3)continue;if(e.nodeType!==1)return!1;let t=(e.tagName||``).toLowerCase();if(!l(t)||e.querySelector?.(`img,svg,canvas,video,foreignObject`))return!1;for(let t of Array.from(e.childNodes))n.push(t)}return!0}catch{return!1}};function f(e){try{let t=e.firstElementChild;if(!t)return null;let n=(e,t=0)=>Number.isFinite(+e)?+e:t,r=n(e.getAttribute(`x`),0),i=n(e.getAttribute(`y`),0),a=n(e.getAttribute(`width`),NaN);if(!Number.isFinite(a)||a<=0){let t=e.getBBox?.();a=Math.max(1,n(t?.width,0))}let s=(e,t)=>{if(!e)return Math.round(t*1.2);let n=e.trim().toLowerCase();if(n===`normal`)return Math.round(t*1.2);if(n.endsWith(`px`))return parseFloat(n)||Math.round(t*1.2);if(n.endsWith(`%`))return parseFloat(n)/100*t||Math.round(t*1.2);if(n.endsWith(`em`))return(parseFloat(n)||1)*t;if(n.endsWith(`rem`)){let e=parseFloat(getComputedStyle(document.documentElement).fontSize)||t;return(parseFloat(n)||1)*e}let r=Number(n);return Number.isFinite(r)?r*t:Math.round(t*1.2)},c=e=>{let t=(e||``).split(/\s+/).map(e=>{let t=(e||``).trim().toLowerCase();if(t.endsWith(`px`))return parseFloat(t)||0;if(t.endsWith(`rem`)){let e=parseFloat(getComputedStyle(document.documentElement).fontSize)||16;return(parseFloat(t)||0)*e}if(t.endsWith(`em`)){let e=parseFloat(getComputedStyle(document.body).fontSize)||16;return(parseFloat(t)||0)*e}let n=Number(t);return Number.isFinite(n)?n:0}).filter(Number.isFinite);return t.length?t.length===1?[t[0],t[0],t[0],t[0]]:t.length===2?[t[0],t[1],t[0],t[1]]:t.length===3?[t[0],t[1],t[2],t[1]]:[t[0],t[1],t[2],t[3]]:[0,0,0,0]},l=(e,t)=>{let n=u(e),r=n.getPropertyValue(`font-family`)||t?.ff||`system-ui`;r=p(r);let i=parseFloat(n.getPropertyValue(`font-size`));Number.isFinite(i)||(i=t?.fs||14);let a=n.getPropertyValue(`font-weight`)||t?.fw||`400`,o=n.getPropertyValue(`font-style`)||t?.fsty||`normal`,l=n.getPropertyValue(`font-stretch`)||t?.fstc||`normal`,d=n.getPropertyValue(`letter-spacing`)||t?.lsp||`normal`,f=n.getPropertyValue(`word-spacing`)||t?.wsp||`0px`,m=n.getPropertyValue(`font-kerning`)||t?.kern||`auto`,h=n.getPropertyValue(`font-variant-ligatures`)||t?.liga||`normal`,g=n.getPropertyValue(`text-transform`)||t?.ttfm||`none`,_=n.getPropertyValue(`color`)||t?.fill||`#000`,v=n.getPropertyValue(`line-height`),y=!v||v.trim().toLowerCase()===`normal`?t?.lh??Math.round(i*1.2):s(v,i),b=(n.getPropertyValue(`text-align`)||t?.ta||`start`).trim().toLowerCase(),x=parseFloat(n.getPropertyValue(`padding-top`))||0,S=parseFloat(n.getPropertyValue(`padding-right`))||0,C=parseFloat(n.getPropertyValue(`padding-bottom`))||0,w=parseFloat(n.getPropertyValue(`padding-left`))||0,T=n.getPropertyValue(`padding`);if(T&&x===0&&S===0&&C===0&&w===0){let[e,t,n,r]=c(T);x=e,S=t,C=n,w=r}let E=parseFloat(n.getPropertyValue(`border-left-width`))||0,D=parseFloat(n.getPropertyValue(`border-right-width`))||0,O=n.getPropertyValue(`box-sizing`)||`content-box`;return{ff:r,fs:i,fw:a,fsty:o,fstc:l,lsp:d,wsp:f,kern:m,liga:h,ttfm:g,fill:_,lh:y,ta:b,padL:w,padR:S,padT:x,padB:C,bL:E,bR:D,box:O}},d=e=>/^(div|p|section|article|ul|ol|li|h[1-6])$/.test(e),f={__para__:!0},m={__br__:!0},h=[],g=l(t),_=(e,t,n)=>{if(e.nodeType===3){let r=(e.nodeValue||``).replace(/\s+/g,` `).trim();r&&h.push({text:r,style:t,path:n.slice()});return}if(e.nodeType!==1)return;let r=e.tagName.toLowerCase();if(r===`br`){h.push({...m,path:n.slice()});return}let i=l(e,t);n.push(e);for(let t of Array.from(e.childNodes))_(t,i,n);n.pop(),d(r)&&h.push({...f,path:n.slice()})};for(_(t,g,[t]);h.length&&(h.at(-1).__para__||h.at(-1).__br__);)h.pop();if(!h.length)return null;let v=h.filter(e=>!e.__para__&&!e.__br__),y=(()=>{if(!v.length)return[t];let e=v.map(e=>e.path),n=Math.min(...e.map(e=>e.length)),r=0;for(;r<n;){let t=e[0][r];if(e.every(e=>e[r]===t))r+=1;else break}return e[0].slice(0,Math.max(1,r))})(),b=l(y[y.length-1]||t),x=0,S=0,C=0;for(let e of y){let t=l(e);x+=t.padL,S+=t.padR,C+=t.padT}let w=[Math.max(1,a-x-S)];for(let e of y)try{let t=u(e);if(e.clientWidth&&e.clientWidth>0){let n=parseFloat(t.paddingLeft)||0,r=parseFloat(t.paddingRight)||0,i=Math.max(1,e.clientWidth-n-r);w.push(i)}let n=t.width,r=parseFloat(n);if(Number.isFinite(r)&&r>0){let e=t.boxSizing||t.getPropertyValue(`box-sizing`)||`content-box`,n=parseFloat(t.paddingLeft)||0,i=parseFloat(t.paddingRight)||0,a=parseFloat(t.borderLeftWidth)||0,o=parseFloat(t.borderRightWidth)||0,s=e===`border-box`?Math.max(1,r-n-i-a-o):Math.max(1,r);w.push(s)}}catch{}let T=Math.floor(Math.min(...w.filter(Number.isFinite)))-1;T>0||(T=1);let E=`start`,D=r+x;b.ta===`center`?(E=`middle`,D=r+x+T/2):(b.ta===`right`||b.ta===`end`)&&(E=`end`,D=r+(a-S));let O=e.ownerSVGElement||e.closest(`svg`),k=document.createElementNS(o,`text`);k.setAttribute(`x`,String(D)),k.setAttribute(`y`,String(i+C)),k.setAttribute(`text-anchor`,E),k.setAttribute(`dominant-baseline`,`text-before-edge`),k.setAttribute(`xml:space`,`preserve`);let A=document.createElementNS(o,`text`);A.setAttribute(`x`,`0`),A.setAttribute(`y`,`0`),A.setAttribute(`opacity`,`0`),(O||e).appendChild(A);let j=e=>`font-family:${e.ff}; font-size:${e.fs}px; font-weight:${e.fw}; font-style:${e.fsty}; font-stretch:${e.fstc}; letter-spacing:${e.lsp}; word-spacing:${e.wsp}; font-kerning:${e.kern}; font-variant-ligatures:${e.liga}; text-transform:${e.ttfm};`,M=(e,t)=>(A.textContent=e||``,A.setAttribute(`style`,j(t)),A.getComputedTextLength()),N=e=>M(` `,e),P=[],F=[],I=0,L=()=>{F.length&&P.push({segs:F.slice()}),F=[],I=0},R=(e,t,n)=>{let r=M(e,t);if(n){let e=N(t);r+=e,F.push({text:` `,...t,w:e,isSpace:!0})}F.push({text:e,...t,w:r}),I+=r},z=(e,t,n)=>{let r=``;for(let i of e){let e=r+i;if(M(e,t)<=n)r=e;else break}return r||e[0]||``};for(let e of h){if(e.__para__||e.__br__){L();continue}let t=e.style,n=e.text.split(/(\s+)/).filter(e=>e.length>0),r=(e,n)=>{if(!e)return;let r=Math.max(1,T),i=M(e,t)+(n?N(t):0);if(F.length===0){if(i<=r)R(e,t,!1);else{let n=e;for(;n;){let e=z(n,t,r);R(e,t,!1),n=n.slice(e.length),n&&L()}}}else if(I+i<=r)R(e,t,n);else if(L(),M(e,t)<=r)R(e,t,!1);else{let n=e;for(;n;){let e=z(n,t,r);R(e,t,!1),n=n.slice(e.length),n&&L()}}},i=!1;for(let e of n){if(/^\s+$/.test(e)){i=!0;continue}r(e,i),i=!1}}L();for(let e=0;e<P.length;e+=1){let t=P[e].segs,n=Math.max(...t.map(e=>e.fs||b.fs),b.fs),r=!0;for(let i of t){let t=document.createElementNS(o,`tspan`);r&&=(t.setAttribute(`x`,String(D)),e>0&&t.setAttribute(`dy`,String(n)),!1),t.setAttribute(`style`,`${j(i)} fill:${i.fill};`),t.textContent=i.text,k.appendChild(t)}if(!t.length&&e>0){let e=document.createElementNS(o,`tspan`);e.setAttribute(`x`,String(D)),e.setAttribute(`dy`,String(n)),e.textContent=``,k.appendChild(e)}}try{A.remove()}catch{}return k}catch{return null}}let m=e=>{try{let t=document.createElement(`div`);t.style.position=`absolute`,t.style.left=`-99999px`,t.style.top=`-99999px`,t.style.visibility=`hidden`,t.style.pointerEvents=`none`,t.style.width=`auto`,t.style.height=`auto`;let n=e.cloneNode(!0);n.style.width=`auto`,n.style.height=`auto`,n.style.display=`inline-block`,n.style.maxWidth=`none`,n.style.maxHeight=`none`,n.style.boxSizing=`content-box`,document.body.appendChild(t),t.appendChild(n);let r=n.getBoundingClientRect(),i=Math.ceil(r.width||n.scrollWidth||0),a=Math.ceil(r.height||n.scrollHeight||0);return t.remove(),{w:Math.max(1,i),h:Math.max(1,a)}}catch{return{w:0,h:0}}};for(let e of n)try{if(e.hasAttribute(`data-no-svg-export`)){e.remove(),a+=1;continue}if(d(e)){let t=f(e);if(t){e.parentNode.replaceChild(t,e),r+=1;continue}}a+=1}catch{c+=1}if(t===`raster`){let t=Array.from(e.querySelectorAll(`foreignObject`));for(let e of t)try{if(e.hasAttribute(`data-no-svg-export`)){e.remove(),a+=1;continue}await new Promise(e=>requestAnimationFrame(e));let t=e.getBBox(),n=Math.max(1,Math.ceil(t.width)),r=Math.max(1,Math.ceil(t.height)),c=e.firstElementChild;if(c){let t=m(c),i=parseFloat(e.getAttribute(`width`)||`0`)||0,a=parseFloat(e.getAttribute(`height`)||`0`)||0;n=Math.max(n,i,t.w),r=Math.max(r,a,t.h)}if(!(n>0&&r>0)){a+=1;continue}let l=document.createElementNS(o,`svg`);l.setAttribute(`xmlns`,o),l.setAttribute(`xmlns:xlink`,s),l.setAttribute(`width`,String(n)),l.setAttribute(`height`,String(r)),l.setAttribute(`viewBox`,`0 0 ${n} ${r}`);let u=e.cloneNode(!0);u.setAttribute(`x`,`0`),u.setAttribute(`y`,`0`),u.setAttribute(`width`,String(n)),u.setAttribute(`height`,String(r)),l.appendChild(u);let d=new XMLSerializer().serializeToString(l),f=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(d),p=document.createElement(`canvas`);p.width=Math.max(1,Math.floor(n*2)),p.height=Math.max(1,Math.floor(r*2));let h=p.getContext(`2d`),g=new Image;g.decoding=`sync`,g.crossOrigin=`anonymous`,await new Promise((e,t)=>{g.onload=e,g.onerror=t,g.src=f}),h.drawImage(g,0,0,p.width,p.height);let _=p.toDataURL(`image/png`),v=document.createElementNS(o,`image`);v.setAttributeNS(s,`href`,_),v.setAttribute(`href`,_),v.setAttribute(`x`,e.getAttribute(`x`)||String(t.x)),v.setAttribute(`y`,e.getAttribute(`y`)||String(t.y)),v.setAttribute(`width`,String(n)),v.setAttribute(`height`,String(r)),e.parentNode.replaceChild(v,e),i+=1}catch{c+=1}}return{converted:r,rasterized:i,skipped:a,errors:c}}function _({svg:e,title:n,legend:i,legendItems:a,backgroundColor:o,getSvgCallback:s,generateImage:c,titleEmbedded:l=!1,stretchTitle:u=!1}){let d=r(!1),f=r(!1),{exportSvg:p,getSvg:h}=m({svg:e,title:n,legend:i,legendItems:a,backgroundColor:o,titleEmbedded:l,stretchTitle:u});async function g({isCb:e}){f.value=!0,await t();try{if(e){let{blob:e,url:t,text:n,dataUrl:r}=await h();await Promise.resolve(s()({blob:e,url:t,text:n,dataUrl:r}))}else await Promise.resolve(p())}finally{f.value=!1}}function _(e){if(e?.stage===`start`){d.value=!0;return}if(e?.stage===`end`){d.value=!1;return}c()}return{isCallbackImaging:d,isCallbackSvg:f,generateSvg:g,onGenerateImage:_}}export{_ as t};
@@ -1 +0,0 @@
1
- import{nextTick as e,watch as t}from"vue";function n({timeLabelsEls:n,timeLabels:r,slicer:i,configRef:a,rotationPath:o,autoRotatePath:s,isAutoSize:c,setViewBox:l,forceResizeObserver:u,callback:d,targetClass:f=`.vue-data-ui-time-label`,rotation:p=-30.0001,height:m=null,width:h=null}){function g(e,t){return t.reduce((e,t)=>e&&e[t],e)}function _(e,t,n){t.slice(0,-1).reduce((e,t)=>e[t],e)[t.slice(-1)]=n}function v(e){let t=/translate\(\s*([^\s,]+)\s*,\s*([^\s,]+)\s*\)/.exec(e);return t?{x:parseFloat(t[1]),y:parseFloat(t[2])}:{x:0,y:0}}async function y(){await e();let t=n.value;if(!t)return;let r=Array.from(t.querySelectorAll(f)).map(e=>({...v(e.getAttribute(`transform`)),width:e.getBBox().width})),i=!1;for(let e=0;e<r.length&&!i;e+=1)for(let t=e+1;t<r.length;t+=1){let n=r[e],a=r[t];if(!(n.x+n.width+4<a.x||a.x+a.width+4<n.x)){i=!0;break}}let s=g(a.value,o);i&&!s?(_(a.value,o,p),d&&d({collision:i}),c.value&&l&&u&&(l(),u())):!i&&s===p&&(_(a.value,o,0),d&&d({collision:i}))}function b(e,t){let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>e(...r),t)}}let x=b(y,200);return m&&h&&t([()=>h.value,()=>m.value],async([e,t],[n,r])=>{g(a.value,s)&&(e!==n||t!==r?x():await y())}),t([()=>r.value,()=>g(a.value,o),()=>i.value.start,()=>i.value.end],async([,,e,t],[,,n,r])=>{g(a.value,s)&&(e!==n||t!==r?x():await y())},{immediate:!0}),{detectTimeLabelCollision:y}}export{n as t};
@@ -1 +0,0 @@
1
- import{computed as e,isRef as t,onMounted as n,onUnmounted as r,ref as i,watch as a}from"vue";function o(e){return typeof e==`function`?e():t(e)?e.value:e}function s({config:t,dataset:s}){let c=e(()=>o(t)??{}),l=e(()=>o(s)),u=i(!!c.value.enable),d=null,f=null;function p(){d!==null&&(clearTimeout(d),d=null)}function m(){p();let e=c.value,t=!!e.enable,n=Number(e.activationDelayMs)||0;if(!t||n<=0){u.value=t;return}u.value=!1,d=setTimeout(()=>{u.value=!!c.value.enable,d=null},n)}function h(e){f?.(),f=null,e&&(f=a(l,m,{deep:!0}))}return a(()=>c.value.pauseOnDatasetChange,h,{immediate:!0}),a(()=>c.value.enable,e=>{p(),u.value=!!e}),a(()=>c.value.activationDelayMs,()=>{d!==null&&m()}),n(()=>{c.value.pauseOnLoad&&m()}),r(()=>{p(),f?.()}),{transitionEnabled:u,pause:m}}export{s as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./BaseIcon-DDctLkeT.js";import{computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createSlots as s,createTextVNode as c,defineAsyncComponent as l,guardReactiveProps as u,mergeProps as d,normalizeProps as f,normalizeStyle as p,onMounted as m,openBlock as h,ref as g,renderList as _,renderSlot as v,resolveDynamicComponent as y,toDisplayString as b,useAttrs as x,watch as S,withCtx as C}from"vue";var w=/* @__PURE__ */ e({default:()=>E}),T={style:{width:`36px`}},E=/*@__PURE__*/ Object.assign({inheritAttrs:!1},{__name:`vue-data-ui`,props:{component:{type:String},dataset:{type:[Object,Array,Number,String]},config:{type:Object}},setup(e,{expose:w}){let E=e,D=x(),O={VueUiGraph:l(()=>import(`./vue-ui-graph-C2Se8bnB.js`).then(e=>e.n)),VueUi3dBar:l(()=>import(`./vue-ui-3d-bar-COrzyTkO.js`).then(e=>e.n)),VueUiAgePyramid:l(()=>import(`./vue-ui-age-pyramid-CAoVjkOA.js`).then(e=>e.n)),VueUiAnnotator:l(()=>import(`./vue-ui-annotator-CpTZHnPw.js`).then(e=>e.n)),VueUiCandlestick:l(()=>import(`./vue-ui-candlestick-D9UXZQoN.js`).then(e=>e.n)),VueUiChestnut:l(()=>import(`./vue-ui-chestnut-BuLjW5nb.js`).then(e=>e.n)),VueUiDashboard:l(()=>import(`./vue-ui-dashboard-DmyStkQM.js`).then(e=>e.n)),VueUiDigits:l(()=>import(`./vue-ui-digits-BBiRMr01.js`).then(e=>e.n)),VueUiDonut:l(()=>import(`./vue-ui-donut-DMF74OY0.js`).then(e=>e.n)),VueUiDonutEvolution:l(()=>import(`./vue-ui-donut-evolution-Du4zLc8D.js`).then(e=>e.n)),VueUiGalaxy:l(()=>import(`./vue-ui-galaxy-CgnshY8i.js`).then(e=>e.n)),VueUiGauge:l(()=>import(`./vue-ui-gauge-a13ojQPr.js`).then(e=>e.n)),VueUiHeatmap:l(()=>import(`./vue-ui-heatmap-5NsQkMwS.js`).then(e=>e.n)),VueUiKpi:l(()=>import(`./vue-ui-kpi-BZjfQxmY.js`).then(e=>e.n)),VueUiMiniLoader:l(()=>import(`./vue-ui-mini-loader-ltQXdeeW.js`).then(e=>e.n)),VueUiMolecule:l(()=>import(`./vue-ui-molecule-DI-CS5w8.js`).then(e=>e.n)),VueUiMoodRadar:l(()=>import(`./vue-ui-mood-radar-B5ar9WAZ.js`).then(e=>e.n)),VueUiNestedDonuts:l(()=>import(`./vue-ui-nested-donuts-BP2YzVma.js`).then(e=>e.n)),VueUiOnion:l(()=>import(`./vue-ui-onion-CCiZ6jmF.js`).then(e=>e.n)),VueUiQuadrant:l(()=>import(`./vue-ui-quadrant-BwgwvKy8.js`).then(e=>e.n)),VueUiRadar:l(()=>import(`./vue-ui-radar-B9Ntj_Gj.js`).then(e=>e.n)),VueUiRating:l(()=>import(`./vue-ui-rating-B33u3iIn.js`).then(e=>e.n)),VueUiRelationCircle:l(()=>import(`./vue-ui-relation-circle-B60IUw50.js`).then(e=>e.n)),VueUiRings:l(()=>import(`./vue-ui-rings-BXo9p3Ab.js`).then(e=>e.n)),VueUiScatter:l(()=>import(`./vue-ui-scatter-BwrYPDzh.js`).then(e=>e.n)),VueUiSkeleton:l(()=>import(`./vue-ui-skeleton-DTn7uIui.js`).then(e=>e.n)),VueUiSmiley:l(()=>import(`./vue-ui-smiley-qCRUFmpq.js`).then(e=>e.n)),VueUiSparkbar:l(()=>import(`./vue-ui-sparkbar-DPFzdX-D.js`).then(e=>e.n)),VueUiSparkgauge:l(()=>import(`./vue-ui-sparkgauge-DlEPsxc0.js`).then(e=>e.n)),VueUiSparkHistogram:l(()=>import(`./vue-ui-sparkhistogram-DLZxE6oz.js`).then(e=>e.n)),VueUiSparkline:l(()=>import(`./vue-ui-sparkline-BflZPl7s.js`).then(e=>e.n)),VueUiSparkStackbar:l(()=>import(`./vue-ui-sparkstackbar-DvSQfGeA.js`).then(e=>e.n)),VueUiTable:l(()=>import(`./vue-ui-table-3F8i2ZjT.js`).then(e=>e.n)),VueUiTableSparkline:l(()=>import(`./vue-ui-table-sparkline-CTfYTzhA.js`).then(e=>e.n)),VueUiThermometer:l(()=>import(`./vue-ui-thermometer-BpFbPqxK.js`).then(e=>e.n)),VueUiTiremarks:l(()=>import(`./vue-ui-tiremarks-C4wVcSVP.js`).then(e=>e.n)),VueUiTreemap:l(()=>import(`./vue-ui-treemap-mYRv6gga.js`).then(e=>e.n)),VueUiVerticalBar:l(()=>import(`./vue-ui-horizontal-bar-G0wEKTRu.js`).then(e=>e.n)),VueUiHorizontalBar:l(()=>import(`./vue-ui-horizontal-bar-G0wEKTRu.js`).then(e=>e.n)),VueUiWaffle:l(()=>import(`./vue-ui-waffle-DNBIZqZz.js`).then(e=>e.n)),VueUiWheel:l(()=>import(`./vue-ui-wheel-DPHDp0t1.js`).then(e=>e.n)),VueUiXy:l(()=>import(`./vue-ui-xy-M9aD-G5a.js`).then(e=>e.n)),VueUiTableHeatmap:l(()=>import(`./vue-ui-table-heatmap-CtYPYMIJ.js`).then(e=>e.n)),VueUiAccordion:l(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),VueUiQuickChart:l(()=>import(`./vue-ui-quick-chart-BXNg0LNe.js`).then(e=>e.n)),VueUiCursor:l(()=>import(`./vue-ui-cursor-Dn-IBaP8.js`).then(e=>e.n)),VueUiSparkTrend:l(()=>import(`./vue-ui-spark-trend-wKFu-O7B.js`).then(e=>e.n)),VueUiStripPlot:l(()=>import(`./vue-ui-strip-plot-54u7AUip.js`).then(e=>e.n)),VueUiDumbbell:l(()=>import(`./vue-ui-dumbbell-CxL_AY5e.js`).then(e=>e.n)),VueUiWordCloud:l(()=>import(`./vue-ui-word-cloud-BY4YsW7-.js`).then(e=>e.n)),VueUiXyCanvas:l(()=>import(`./vue-ui-xy-canvas-BpwG1Ipj.js`).then(e=>e.n)),VueUiFlow:l(()=>import(`./vue-ui-flow-h6kTMamJ.js`).then(e=>e.n)),VueUiParallelCoordinatePlot:l(()=>import(`./vue-ui-parallel-coordinate-plot-3E0CysDx.js`).then(e=>e.n)),VueUiTimer:l(()=>import(`./vue-ui-timer-DsWRNtRa.js`).then(e=>e.n)),VueUiCarouselTable:l(()=>import(`./vue-ui-carousel-table-CKyE4hME.js`).then(e=>e.n)),VueUiGizmo:l(()=>import(`./vue-ui-gizmo-K1lfslsA.js`).then(e=>e.n)),VueUiStackbar:l(()=>import(`./vue-ui-stackbar-JKC9qE6M.js`).then(e=>e.n)),VueUiStackline:l(()=>import(`./vue-ui-stackline-G7-oqfzp.js`).then(e=>e.n)),VueUiBullet:l(()=>import(`./vue-ui-bullet-yvY_gdw2.js`).then(e=>e.n)),VueUiFunnel:l(()=>import(`./vue-ui-funnel-BG5Addzr.js`).then(e=>e.n)),VueUiHistoryPlot:l(()=>import(`./vue-ui-history-plot-BRJdXsNo.js`).then(e=>e.n)),VueUiCirclePack:l(()=>import(`./vue-ui-circle-pack-BpAuZruK.js`).then(e=>e.n)),VueUiWorld:l(()=>import(`./vue-ui-world-DQWjoFDx.js`).then(e=>e.n)),VueUiRidgeline:l(()=>import(`./vue-ui-ridgeline-BPbYng2A.js`).then(e=>e.n)),VueUiChord:l(()=>import(`./vue-ui-chord-Bjwt2_BK.js`).then(e=>e.n)),VueUiDag:l(()=>import(`./vue-ui-dag-CyY3cSa6.js`).then(e=>e.n)),VueUiGeo:l(()=>import(`./vue-ui-geo-CflzhtuD.js`).then(e=>e.n)),VueUiBump:l(()=>import(`./vue-ui-bump-ChsFkIq9.js`).then(e=>e.n)),VueUiHill:l(()=>import(`./vue-ui-hill-COnjVS2L.js`).then(e=>e.n)),VueUiLabel:l(()=>import(`./vue-ui-label-BD_hTtgZ.js`).then(e=>e.n))},k=/* @__PURE__ */ new Set([`VueUiMiniLoader`,`VueUiSkeleton`,`VueUiAccordion`,`VueUiCursor`,`VueUiTimer`]),A=/* @__PURE__ */ `fitToView.focusNode.resetLayout.autoSize.cancel.close.copyAlt.focusLocation.generateCsv.generateImage.generatePdf.generateSvg.getItemsPositions.hideSeries.lap.pause.pauseAnimation.recalculateHeight.reset.resetZoom.restart.restoreOrder.resumeAnimation.save.selectGroup.selectNode.selectRibbon.setZoomState.shoot.showSeries.start.switchOrientation.toggleAnimation.toggleAnnotator.toggleLabels.toggleLock.toggleReadonly.toggleSort.toggleStack.toggleTable.toggleFullscreen.toggleTooltip.toggleZoom.zoomIn.zoomOut`.split(`.`),j=g(null),M=n(()=>!O[E.component]),N=n(()=>O[E.component]||null);function P(){let e={...D,config:E.config};return k.has(E.component)||(e.dataset=E.dataset),e}let F=[];function I(e,t){return new Promise((n,r)=>{F.push({method:e,args:t,resolve:n,reject:r})})}function L(e){return/* @__PURE__ */ Error(`Method "${e}" not found on ${E.component}`)}function R(e,t){let n=j.value;if(!n)return null;let r=n[e];return typeof r==`function`?r.apply(n,t):null}function z(e,t){let n=j.value;if(!n)return I(e,t);let r=n[e];return typeof r==`function`?r.apply(n,t):Promise.reject(L(e))}S(j,e=>{if(e)for(;F.length;){let{method:t,args:n,resolve:r,reject:i}=F.shift(),a=e[t];if(typeof a!=`function`){i(L(t));continue}Promise.resolve().then(()=>a.apply(e,n)).then(r).catch(i)}}),w({getData(...e){return z(`getData`,e)},getImage(e={}){let{scale:t=2}=e;return z(`getImage`,[{scale:t}])},...Object.fromEntries(A.map(e=>[e,(...t)=>R(e,t)]))}),m(()=>{M.value&&console.error(`\n\nVue Data UI exception:\nThe provided component "${E.component}" does not exist. Check the spelling.\n\nAvailable components:\n\n${Object.keys(O).map(e=>`. ${e}\n`).join(``)}`)});let B=n(()=>{let e=`The provided component ${E.component} does not exist.`;return[`VueUiIcon`,`VueUiPattern`,`Arrow`].includes(E.component)?(e=`${E.component} is not supported by the VueDataUi universal component. You must import it individually.`,console.warn(e),{status:`notSupported`,message:e}):(console.warn(e),{status:`unknown`,message:e})});return(e,n)=>M.value?(h(),a(`div`,{key:0,style:p({width:`100%`,display:`flex`,gap:`6px`,alignItems:`center`,color:B.value.status===`notSupported`?`#FF9000`:`#FF0000`})},[o(`div`,T,[B.value.status===`unknown`?(h(),r(t,{key:0,name:`moodFlat`,stroke:`#FF0000`})):i(``,!0),B.value.status===`notSupported`?(h(),r(t,{key:1,name:`circleExclamation`,stroke:`#FF9000`})):i(``,!0)]),c(` `+b(B.value.message),1)],4)):(h(),r(y(N.value),d({key:1,ref_key:`currentComponentRef`,ref:j},P()),s({_:2},[_(e.$slots,(t,n)=>({name:n,fn:C(t=>[v(e.$slots,n,f(u(t)))])}))]),1040))}});export{w as n,E as t};