vue-data-ui 3.28.0 → 3.28.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) 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-BIhjLNBU.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-DwcKiXuI.js +1 -0
  102. package/dist/{pdf-y3S8SBFk.js → pdf-DAicVFxx.js} +1 -1
  103. package/dist/{render-common-tsNLeNaX.js → render-common-B-s2XJ_I.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/style.css.d.ts +2 -0
  110. package/dist/style.d.css.ts +2 -0
  111. package/dist/types/vue-data-ui.d.ts +126 -0
  112. package/dist/useChartExport-BZts4KFb.js +1 -0
  113. package/dist/{useConfig-DM9fSqjh.js → useConfig-6jO1fkp5.js} +1 -1
  114. package/dist/{useNestedProp-DrLnzyHO.js → useNestedProp-DnGoh-XS.js} +1 -1
  115. package/dist/{useObjectBindings-Cn4Vz0RY.js → useObjectBindings-DiMX4HGv.js} +1 -1
  116. package/dist/{usePrinter-Cj4eIYC_.js → usePrinter-sVoTzet1.js} +1 -1
  117. package/dist/useResponsive-CENUxfEL.js +1 -0
  118. package/dist/useSvgLabelLayout-D1I8sQUi.js +1 -0
  119. package/dist/useTimeLabelCollider-BTybMUFi.js +1 -0
  120. package/dist/useTransitions-ChGGrtrv.js +1 -0
  121. package/dist/utils.js +1 -1
  122. package/dist/vue-data-ui-BvHCscNE.js +1 -0
  123. package/dist/vue-data-ui.js +1 -1
  124. package/dist/vue-ui-3d-bar-CkHFiFp4.js +19 -0
  125. package/dist/{vue-ui-accordion-3lBpCjGm.js → vue-ui-accordion-S3nRtTU-.js} +1 -1
  126. package/dist/vue-ui-age-pyramid-vpIjdLg5.js +1 -0
  127. package/dist/{vue-ui-annotator-CpTZHnPw.js → vue-ui-annotator-CdCDYzdK.js} +3 -3
  128. package/dist/vue-ui-bullet-rgxGRR1p.js +34 -0
  129. package/dist/vue-ui-bump-CeDsunDi.js +8 -0
  130. package/dist/vue-ui-candlestick-KJHOS5F7.js +22 -0
  131. package/dist/vue-ui-carousel-table-CeI5SIxH.js +1 -0
  132. package/dist/vue-ui-chestnut-CiY-2e77.js +1 -0
  133. package/dist/vue-ui-chord-8rk7304-.js +21 -0
  134. package/dist/vue-ui-circle-pack-BsH09EPG.js +13 -0
  135. package/dist/{vue-ui-cursor-Dn-IBaP8.js → vue-ui-cursor-Cpov2m58.js} +1 -1
  136. package/dist/vue-ui-dag-BHFL2cUA.js +9 -0
  137. package/dist/vue-ui-dashboard-BxXdhdNJ.js +1 -0
  138. package/dist/{vue-ui-digits-BBiRMr01.js → vue-ui-digits-xHOLjA2_.js} +1 -1
  139. package/dist/{vue-ui-donut-CGyBWxzh.js → vue-ui-donut-CR3klUbX.js} +1 -1
  140. package/dist/vue-ui-donut-Vbp5Xs2-.js +47 -0
  141. package/dist/vue-ui-donut-evolution-BTmztL3Y.js +2 -0
  142. package/dist/vue-ui-dumbbell-CDcgKS2A.js +9 -0
  143. package/dist/vue-ui-flow-kVocPE27.js +3 -0
  144. package/dist/vue-ui-funnel-CZAdPYqK.js +1 -0
  145. package/dist/vue-ui-galaxy-hP-9mVlB.js +1 -0
  146. package/dist/vue-ui-gauge-BRabsLkh.js +1 -0
  147. package/dist/vue-ui-geo-Dacnp6iw.js +1 -0
  148. package/dist/{vue-ui-gizmo-K1lfslsA.js → vue-ui-gizmo-Dp3hpHIX.js} +1 -1
  149. package/dist/vue-ui-graph-DHU9hUry.js +7 -0
  150. package/dist/vue-ui-heatmap-kPnmZgWi.js +1 -0
  151. package/dist/vue-ui-hill-Ddbup7-b.js +1 -0
  152. package/dist/vue-ui-history-plot-CwO2o-2s.js +2 -0
  153. package/dist/vue-ui-horizontal-bar-CvX77vE4.js +4 -0
  154. package/dist/{vue-ui-kpi-BZjfQxmY.js → vue-ui-kpi-CCOOwX_Q.js} +1 -1
  155. package/dist/vue-ui-label-B_1kM28r.js +7 -0
  156. package/dist/{vue-ui-mini-loader-ltQXdeeW.js → vue-ui-mini-loader-7gqQI5jy.js} +1 -1
  157. package/dist/vue-ui-molecule-BPGs9Dom.js +1 -0
  158. package/dist/vue-ui-mood-radar-GJ-lhgI0.js +1 -0
  159. package/dist/vue-ui-nested-donuts-CrlPwpg8.js +19 -0
  160. package/dist/vue-ui-onion-CKmyy-Y_.js +5 -0
  161. package/dist/vue-ui-parallel-coordinate-plot-C0UqWt0M.js +9 -0
  162. package/dist/vue-ui-quadrant-CTGFBNo9.js +2 -0
  163. package/dist/vue-ui-quick-chart-ZBOPZhxA.js +17 -0
  164. package/dist/vue-ui-radar-B1z3Ux3E.js +1 -0
  165. package/dist/{vue-ui-rating-B33u3iIn.js → vue-ui-rating-CV2b0tjA.js} +1 -1
  166. package/dist/vue-ui-relation-circle-DqN5N08e.js +1 -0
  167. package/dist/vue-ui-ridgeline-DcSB5Qef.js +2 -0
  168. package/dist/vue-ui-rings-CJqAnf-l.js +1 -0
  169. package/dist/vue-ui-scatter-THQAeoWs.js +9 -0
  170. package/dist/{vue-ui-skeleton-DTn7uIui.js → vue-ui-skeleton-DqmhigQ0.js} +1 -1
  171. package/dist/{vue-ui-smiley-qCRUFmpq.js → vue-ui-smiley-VTdQetY0.js} +1 -1
  172. package/dist/vue-ui-spark-trend-B2Nf1raK.js +1 -0
  173. package/dist/{vue-ui-sparkbar-DPFzdX-D.js → vue-ui-sparkbar-CamZ_49V.js} +1 -1
  174. package/dist/{vue-ui-sparkgauge-DlEPsxc0.js → vue-ui-sparkgauge-Ffrp_7VV.js} +1 -1
  175. package/dist/vue-ui-sparkhistogram-CLfzi3PO.js +1 -0
  176. package/dist/vue-ui-sparkline-Y-sljnbS.js +1 -0
  177. package/dist/vue-ui-sparkstackbar-CYZ-ADO1.js +1 -0
  178. package/dist/vue-ui-stackbar-CQLYm10x.js +29 -0
  179. package/dist/vue-ui-stackline-VpvF7MRx.js +39 -0
  180. package/dist/vue-ui-strip-plot-B9Ogpw7K.js +2 -0
  181. package/dist/{vue-ui-table-3F8i2ZjT.js → vue-ui-table-Bi9C3LzP.js} +1 -1
  182. package/dist/{vue-ui-table-heatmap-CtYPYMIJ.js → vue-ui-table-heatmap-BtziURiu.js} +1 -1
  183. package/dist/vue-ui-table-sparkline-DEVAL0cR.js +1 -0
  184. package/dist/vue-ui-thermometer-ClN4EO0I.js +1 -0
  185. package/dist/{vue-ui-timer-DsWRNtRa.js → vue-ui-timer-nqZxt1vU.js} +2 -2
  186. package/dist/vue-ui-tiremarks-BeJBsgXo.js +1 -0
  187. package/dist/vue-ui-treemap-FA-yXwmv.js +1 -0
  188. package/dist/vue-ui-waffle-CO07S6HV.js +1 -0
  189. package/dist/vue-ui-wheel-BeaSWB4x.js +1 -0
  190. package/dist/vue-ui-word-cloud-C1OWGFng.js +4 -0
  191. package/dist/{vue-ui-world-DQWjoFDx.js → vue-ui-world-CUS_mKgl.js} +2 -2
  192. package/dist/vue-ui-xy-6B_K-quN.js +24 -0
  193. package/dist/{vue-ui-xy-DfvcqUwW.js → vue-ui-xy-BigPHE0Q.js} +2 -2
  194. package/dist/vue-ui-xy-canvas-CeC3gcrW.js +9 -0
  195. package/package.json +8 -4
  196. package/dist/HillActions-Bq3UJ1Ut.js +0 -1
  197. package/dist/PenAndPaper-BsBFp16i.js +0 -1
  198. package/dist/SlicerPreview-Dpu4nMz6.js +0 -1
  199. package/dist/Tooltip-Iyb_S6oQ.js +0 -1
  200. package/dist/UserOptions-BSJ_S_us.js +0 -1
  201. package/dist/package-UBaXe2y9.js +0 -1
  202. package/dist/useChartExport-DtPNpc9M.js +0 -1
  203. package/dist/useTimeLabelCollider-XQf_S7-z.js +0 -1
  204. package/dist/useTransitions-DfSHzsdz.js +0 -1
  205. package/dist/vue-data-ui-yeD7UyUU.js +0 -1
  206. package/dist/vue-ui-3d-bar-COrzyTkO.js +0 -19
  207. package/dist/vue-ui-age-pyramid-CAoVjkOA.js +0 -1
  208. package/dist/vue-ui-bullet-yvY_gdw2.js +0 -34
  209. package/dist/vue-ui-bump-ChsFkIq9.js +0 -10
  210. package/dist/vue-ui-candlestick-D9UXZQoN.js +0 -22
  211. package/dist/vue-ui-carousel-table-CKyE4hME.js +0 -1
  212. package/dist/vue-ui-chestnut-BuLjW5nb.js +0 -1
  213. package/dist/vue-ui-chord-Bjwt2_BK.js +0 -21
  214. package/dist/vue-ui-circle-pack-BpAuZruK.js +0 -13
  215. package/dist/vue-ui-dag-CyY3cSa6.js +0 -9
  216. package/dist/vue-ui-dashboard-DmyStkQM.js +0 -1
  217. package/dist/vue-ui-donut-DMF74OY0.js +0 -47
  218. package/dist/vue-ui-donut-evolution-Du4zLc8D.js +0 -2
  219. package/dist/vue-ui-dumbbell-CxL_AY5e.js +0 -9
  220. package/dist/vue-ui-flow-h6kTMamJ.js +0 -3
  221. package/dist/vue-ui-funnel-BG5Addzr.js +0 -1
  222. package/dist/vue-ui-galaxy-CgnshY8i.js +0 -1
  223. package/dist/vue-ui-gauge-a13ojQPr.js +0 -1
  224. package/dist/vue-ui-geo-CflzhtuD.js +0 -1
  225. package/dist/vue-ui-graph-C2Se8bnB.js +0 -7
  226. package/dist/vue-ui-heatmap-5NsQkMwS.js +0 -1
  227. package/dist/vue-ui-hill-COnjVS2L.js +0 -1
  228. package/dist/vue-ui-history-plot-BRJdXsNo.js +0 -2
  229. package/dist/vue-ui-horizontal-bar-G0wEKTRu.js +0 -4
  230. package/dist/vue-ui-label-BD_hTtgZ.js +0 -7
  231. package/dist/vue-ui-molecule-DI-CS5w8.js +0 -1
  232. package/dist/vue-ui-mood-radar-B5ar9WAZ.js +0 -1
  233. package/dist/vue-ui-nested-donuts-BP2YzVma.js +0 -19
  234. package/dist/vue-ui-onion-CCiZ6jmF.js +0 -5
  235. package/dist/vue-ui-parallel-coordinate-plot-3E0CysDx.js +0 -9
  236. package/dist/vue-ui-quadrant-BwgwvKy8.js +0 -2
  237. package/dist/vue-ui-quick-chart-BXNg0LNe.js +0 -17
  238. package/dist/vue-ui-radar-B9Ntj_Gj.js +0 -1
  239. package/dist/vue-ui-relation-circle-B60IUw50.js +0 -1
  240. package/dist/vue-ui-ridgeline-BPbYng2A.js +0 -2
  241. package/dist/vue-ui-rings-BXo9p3Ab.js +0 -1
  242. package/dist/vue-ui-scatter-BwrYPDzh.js +0 -9
  243. package/dist/vue-ui-spark-trend-wKFu-O7B.js +0 -1
  244. package/dist/vue-ui-sparkhistogram-DLZxE6oz.js +0 -1
  245. package/dist/vue-ui-sparkline-BflZPl7s.js +0 -1
  246. package/dist/vue-ui-sparkstackbar-DvSQfGeA.js +0 -1
  247. package/dist/vue-ui-stackbar-JKC9qE6M.js +0 -29
  248. package/dist/vue-ui-stackline-G7-oqfzp.js +0 -39
  249. package/dist/vue-ui-strip-plot-54u7AUip.js +0 -2
  250. package/dist/vue-ui-table-sparkline-CTfYTzhA.js +0 -1
  251. package/dist/vue-ui-thermometer-BpFbPqxK.js +0 -1
  252. package/dist/vue-ui-tiremarks-C4wVcSVP.js +0 -1
  253. package/dist/vue-ui-treemap-mYRv6gga.js +0 -1
  254. package/dist/vue-ui-waffle-DNBIZqZz.js +0 -1
  255. package/dist/vue-ui-wheel-DPHDp0t1.js +0 -1
  256. package/dist/vue-ui-word-cloud-BY4YsW7-.js +0 -4
  257. package/dist/vue-ui-xy-M9aD-G5a.js +0 -24
  258. package/dist/vue-ui-xy-canvas-BpwG1Ipj.js +0 -9
@@ -1,19 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Ft as i,Ht as a,It as o,Jt as s,Q as c,S as l,X as u,at as d,b as f,f as p,h as m,i as h,in as ee,nt as te,p as g,t as ne,w as re,yt as ie,zt as ae}from"./lib-DqD8nbyX.js";import{n as oe,t as se}from"./BaseScanner-8NdoBs7B.js";import{n as ce}from"./useHints-BH9r_0Vd.js";import{t as le}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as ue}from"./resolveChartConfig-ChGWTt5l.js";import{t as de}from"./img-DiP2_5_r.js";import{n as fe}from"./Title-BLA0tM3g.js";import{t as pe}from"./useChartExport-DtPNpc9M.js";import{n as me,t as he}from"./tableIntegration-CNoJ1CIY.js";import{n as ge,t as _e}from"./annotationSlots-BRR85CqJ.js";import{n as ve,t as ye}from"./userOptionsSlots-DYuo-E5m.js";import{t as be}from"./usePrinter-Cj4eIYC_.js";import{l as xe,t as Se}from"./useResponsive-D2CPcpda.js";import{t as _}from"./DefGrad-DKMq1REY.js";import{t as Ce}from"./A11yDataTable-DWNlWXzs.js";import{t as we}from"./useUserOptionState-CXlFnwPv.js";import{t as Te}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ee}from"./vue_ui_3d_bar-DmAve5Ri.js";import{Fragment as v,computed as y,createBlock as b,createCommentVNode as x,createElementBlock as S,createElementVNode as C,createSlots as De,createTextVNode as Oe,createVNode as w,defineAsyncComponent as T,guardReactiveProps as ke,mergeProps as Ae,nextTick as je,normalizeClass as Me,normalizeProps as Ne,normalizeStyle as E,onMounted as Pe,openBlock as D,ref as O,renderList as k,renderSlot as A,resolveDynamicComponent as Fe,toDisplayString as j,toRefs as Ie,unref as M,watch as Le,withCtx as N,withKeys as Re,withModifiers as ze}from"vue";var Be=/* @__PURE__ */ e({default:()=>sn}),Ve=[`id`],He=[`id`],Ue={"aria-live":`polite`,class:`sr-only`},We={style:{position:`relative`}},Ge=[`xmlns`,`viewBox`,`aria-describedby`],Ke=[`width`,`height`],qe={key:1},Je=[`x`,`y`,`font-size`,`font-weight`,`fill`],Ye=[`x`,`y`],Xe=[`cx`,`cy`,`stroke`,`opacity`],Ze=[`d`,`stroke`],Qe=[`d`,`stroke`],$e={key:4},et={key:0},tt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],nt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],rt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],it=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],at={key:1},ot=[`d`,`stroke`,`stroke-width`,`fill`],st=[`d`,`stroke`,`stroke-width`,`fill`],ct=[`d`,`stroke`,`stroke-width`,`fill`],lt={key:2},ut=[`aria-label`],dt=[`d`,`fill`,`onMouseenter`,`onClick`,`onMouseout`],ft=[`d`,`fill`,`onMouseenter`,`onClick`,`onMouseout`],pt=[`d`,`fill`,`onMouseenter`,`onClick`,`onMouseout`],mt=[`d`,`onMouseenter`,`onClick`,`onMouseout`],ht=[`d`],gt=[`d`,`stroke`],_t=[`onClick`],vt=[`stroke`,`d`],yt=[`cx`,`cy`,`fill`,`stroke`],bt=[`x`,`y`,`width`,`height`],xt=[`x`,`y`,`width`,`height`],St={key:3},Ct=[`d`,`stroke`],wt=[`d`,`fill`,`stroke`],Tt={key:0},Et=[`text-anchor`,`x`,`y`,`fill`,`font-size`,`font-weight`],Dt=[`text-anchor`,`x`,`y`,`fill`,`font-size`,`font-weight`],Ot={key:4},kt=[`d`,`fill`,`stroke`],At={key:5},jt={key:0},Mt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],Nt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],Pt=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],Ft=[`stroke-dasharray`,`d`,`stroke`,`stroke-width`],It=[`d`,`stroke`,`stroke-width`,`fill`],Lt=[`d`,`stroke`,`stroke-width`,`fill`],Rt=[`d`],zt={key:1},Bt=[`aria-label`],Vt=[`onMouseenter`,`onClick`,`onMouseout`,`d`,`fill`],Ht=[`onMouseenter`,`onClick`,`onMouseout`,`d`],Ut=[`onMouseenter`,`onClick`,`onMouseout`,`d`,`fill`],Wt=[`onClick`],Gt=[`stroke`,`d`],Kt=[`cx`,`cy`,`fill`,`stroke`],qt=[`x`,`y`,`width`,`height`],Jt=[`x`,`y`,`width`,`height`],Yt={key:3},Xt=[`d`,`stroke`],Zt=[`d`,`fill`,`stroke`],Qt={key:0},$t=[`text-anchor`,`x`,`y`,`fill`,`font-size`,`font-weight`],en=[`text-anchor`,`x`,`y`,`fill`,`font-size`,`font-weight`],tn={key:4},nn=[`d`,`fill`,`stroke`],rn={key:4,class:`vue-data-ui-watermark`},an={key:0},on={key:1},sn=/*#__PURE__*/ le({__name:`vue-ui-3d-bar`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`selectDatapoint`,`copyAlt`],setup(e,{expose:le,emit:Be}){let sn=T(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),cn=T(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),ln=T(()=>import(`./DataTable-BcVZLSs8.js`)),un=T(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),dn=T(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),fn=T(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),pn=T(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),{vue_ui_3d_bar:mn}=t(),P=e,hn=Be,gn=y(()=>!!P.dataset&&Object.keys(P.dataset).length),F=O(u()),I=O(null),L=O(!1),_n=O(0),vn=O(0),yn=O(null),bn=O(null),xn=O(null),Sn=O(null),R=O(!1),Cn=O(null),wn=O(null),z=O(null),B=O(``),V=O(Nn()),Tn=y(()=>V.value.style),H=y(()=>V.value.style.chart),U=y(()=>V.value.userOptions);ce({config:()=>V.value,dataset:()=>P.dataset,component:`VueUi3dBar`,rules:[{test:e=>e?.series&&e.series.length>8,message:[`👀 The number of series is > 8. Consider:`,``,`▶️ Grouping small values dynamically into a single "Other" series.`,``,`▶️ Using filters to let users choose a maximum number of series to display.`,``,`▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read.`]},{test:e=>e?.series&&e.series.some(e=>e?.breakdown&&e.breakdown.length>6),message:[`👀 Some donut breakdowns have > 6 data points. Consider:`,``,`▶️ Grouping small values dynamically into a single "Other" data point.`]}]});let En=y(()=>V.value.userOptions.useCursorPointer),Dn=y(()=>ee({defaultConfig:{customPalette:[`#808080`,`#ADADAD`,`#DBDBDB`],userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,color:`#6A6A6A`,bar:{color:`#ADADAD`,stroke:`#6A6A6A`},box:{stroke:`#6A6A6A`}}}},userConfig:V.value.skeletonConfig??{}})),{loading:On,FINAL_DATASET:W}=oe({...Ie(P),FINAL_CONFIG:V,prepareConfig:Nn,callback:()=>{Promise.resolve().then(async()=>{await je(),Hn()})},skeletonDataset:P.config?.skeletonDataset??{series:[{name:`_`,value:21,breakdown:[{name:`_`,value:13},{name:`_`,value:8}]},{name:`_`,value:13,breakdown:[{name:`_`,value:8},{name:`_`,value:5}]},{name:`_`,value:8,breakdown:[{name:`_`,value:5},{name:`_`,value:3}]}]},skeletonConfig:ee({defaultConfig:V.value,userConfig:Dn.value})}),{userOptionsVisible:kn,setUserOptionsVisibility:An,keepUserOptionState:jn}=we({config:V.value}),{svgRef:Mn}=Te({config:V.value.style.chart.title});function Nn(){return ue(P.config,mn,Ee)}Le(()=>P.config,e=>{On.value||(V.value=Nn()),kn.value=!V.value.userOptions.showOnChartHover,Gn(),_n.value+=1,vn.value+=1,G.value.showTable=V.value.table.show},{deep:!0});let{isPrinting:Pn,isImaging:Fn,generatePdf:In,generateImage:Ln}=be({elementId:`3d_bar_${F.value}`,fileName:H.value.title.text||`vue-ui-3d-bar`,options:V.value.userOptions.print}),Rn=y(()=>re(V.value.customPalette)),G=O({showTable:V.value.table.show});Le(V,()=>{G.value={showTable:V.value.table.show}},{immediate:!0});let K=y(()=>W.value.series&&W.value.series.length),zn=O(H.value.box.dimensions.width*(K.value?2:1)),Bn=O(H.value.box.dimensions.height),q=y(()=>({height:Bn.value,width:zn.value,absoluteWidth:zn.value,top:H.value.box.dimensions.top,bottom:H.value.box.dimensions.bottom,left:H.value.box.dimensions.left,right:H.value.box.dimensions.right,perspective:H.value.box.dimensions.perspective})),J=y(()=>{if(K.value){let e=W.value.series.map(e=>e.value||0).reduce((e,t)=>e+t,0),t=W.value.series.map((t,n)=>({...t,seriesIndex:n,id:u(),proportion:(t.value||0)/e,color:l(t.color)||Rn.value[n]||a[n]||a[n%a.length],breakdown:t.breakdown?t.breakdown.sort((e,t)=>t.value-e.value):null})).sort((e,t)=>t.value-e.value),n=[],r=0;for(let e=0;e<t.length;e+=1)n.push({...t[e],fill:qn(r,t[e].proportion,t[e].breakdown,t[e].color)}),r+=t[e].proportion;return n}return null}),Y=y(()=>{let e=q.value.width/2,t=q.value;return{right:`M${e},${t.top} ${t.width-t.right}, ${t.top+t.perspective} ${t.width-t.right},${t.height-t.bottom-t.perspective} ${e},${t.height-t.bottom}`,left:`M${e},${t.top} ${t.left},${t.top+t.perspective} ${t.left},${t.height-t.bottom-t.perspective} ${e},${t.height-t.bottom}`,side:`M${e},${t.height-t.bottom} ${e},${t.top+t.perspective*2}`,topSides:`M${t.left},${t.top+t.perspective} ${e},${t.top+t.perspective*2} ${t.width-t.right},${t.top+t.perspective}`,tubeTop:`M${t.left},${t.top+t.perspective} C ${t.left},${t.top-t.perspective/3} ${t.width-t.right},${t.top-t.perspective/3} ${t.width-t.right},${t.top+t.perspective} C ${t.width-t.right},${t.top+t.perspective*2.3} ${t.left},${t.top+t.perspective*2.3} ${t.left},${t.top+t.perspective}`,tubeLeft:`M${t.left},${t.top+t.perspective} ${t.left},${t.height-t.bottom-t.perspective}`,tubeRight:`M${t.width-t.right},${t.top+t.perspective} ${t.width-t.right},${t.height-t.bottom-t.perspective}`,tubeBottom:`M${t.width-t.right},${t.height-t.bottom-t.perspective} C ${t.width-t.right},${t.height} ${t.left},${t.height} ${t.left},${t.height-t.bottom-t.perspective}`}}),Vn=O(H.value.animation.use?0:W.value.percentage);function Hn(){let e=0,t=H.value.animation.speed,n=.005*H.value.animation.acceleration;function r(){Vn.value+=t+e,e+=n,Vn.value<W.value.percentage?requestAnimationFrame(r):Vn.value=W.value.percentage}H.value.animation.use&&(Vn.value=0,r())}Pe(()=>{Gn(),Hn()});let Un=y(()=>V.value.debug);function Wn(){Un.value&&(ae(P.dataset)?d({componentName:`VueUi3dBar`,type:`dataset`,debug:Un.value}):P.dataset.series?P.dataset.series.forEach((e,t)=>{ie({datasetObject:e,requiredAttributes:[`name`,`value`]}).forEach(e=>{d({componentName:`VueUi3dBar`,type:`datasetSerieAttribute`,property:e,index:t,debug:Un.value})}),e.breakdown&&e.breakdown.forEach((e,n)=>{ie({datasetObject:e,requiredAttributes:[`name`,`value`]}).forEach(e=>{d({componentName:`VueUi3dBar`,type:`datasetSerieAttribute`,property:e,index:`${t} - ${n}`,debug:Un.value})})})}):ie({datasetObject:P.dataset,requiredAttributes:[`percentage`]}).forEach(e=>{d({componentName:`VueUi3dBar`,type:`datasetAttribute`,property:e,debug:Un.value})}))}function Gn(){if(Wn(),V.value.responsive){let e=xe(()=>{let{width:e,height:t}=Se({chart:I.value,title:H.value.title.text?yn.value:null,source:Sn.value});requestAnimationFrame(()=>{Bn.value=t-12,zn.value=e})});bn.value&&(xn.value&&bn.value.unobserve(xn.value),bn.value.disconnect()),bn.value=new ResizeObserver(e),xn.value=I.value.parentNode,bn.value.observe(xn.value)}}let Kn=y(()=>q.value.width/4);function qn(e,t,n,r){let a=q.value.height-q.value.bottom-q.value.top-q.value.perspective*2,{width:s,height:c,bottom:l,right:u,left:d,perspective:f}=q.value,p=K.value?s/4:s/2,m=p*2+d,h=l+a*e,ee=c-h-f-a*t/2,te=ee>q.value.height/2?`top`:`bottom`,g=c*.25,ne=!!n,re=null,ie=null;return ne&&(n=n.map((e,t)=>({...e,value:e.value||0,color:i(r,t/n.length)})),re=o({series:n},s/2+s/5,te===`top`?ee-g:ee+g,s/10,s/10,1.99999,2,1,360,105.25,s/20),ie=o({series:n},s-m+s/14,c-h-f-a*t/2,s/40,s/40,1.99999,2,1,360,105.25,s/40)),{donut:re,miniDonut:ie,donutR:s/20,CENTER_X:p,sidePointer:{x:s-m,x2:s-m+s/14,xText:s-m+s/9,y:c-h-f-a*t/2,topY:c-h-f-a*t,height:a*t},apexBottom:{y:c-h,x:p},apexTop:{y:c-h-a*t,x:p},right:`M${p},${c-h} ${p},${c-h-a*t} ${s-m},${c-h-f-a*t} ${s-m},${c-h-f}Z`,left:`M${p},${c-h} ${p},${c-h-a*t} ${d}, ${c-h-f-a*t} ${d},${c-h-f}Z`,liningTop:`M${d},${c-h-f-a*t} ${p},${c-h-a*t} ${s-m},${c-h-f-a*t}`,liningTopShade:`M${d},${c-h-f-a*t-.5} ${p},${c-h-a*t-.5} ${s-m},${c-h-f-a*t-.5}`,top:`M${p},${c-h-a*t} ${d},${c-h-f-a*t} ${p},${c-h-f*2-a*t} ${s-m},${c-h-f-a*t} Z`,tubeTop:`M${d},${c-h-a*t-f} C ${d},${c-h-a*t-f*2.5} ${s-m},${c-h-a*t-f*2.5} ${s-m},${c-h-a*t-f} C ${s-m},${c-h-a*t+f/2} ${d},${c-h-a*t+f/2} ${d},${c-h-a*t-f}`,bottomTubeTop:`M ${s-m-.5},${c-h-f} C ${s-m-.5},${c-h+f/2} ${d},${c-h+f/2} ${d+.5},${c-h-f}`,tubeBody:`M
2
- ${d},${c-h-a*t-f}
3
- C ${d},${c-h-a*t+f/2}
4
- ${s-m},${c-h-a*t+f/2}
5
- ${s-m},${c-h-a*t-f}
6
- L${s-m},${c-h-f}
7
- C
8
- ${s-m},${c-h+f/2}
9
- ${d},${c-h+f/2}
10
- ${d},${c-h-f}Z`}}let Jn=y(()=>{let e=f(Vn.value/100),t=q.value.height-q.value.bottom-q.value.top-q.value.perspective*2,{width:n,height:r,bottom:i,right:a,left:o,perspective:s}=q.value,c=K.value?n/4:n/2,l=K.value?c*2+o:a,u=i+t*0;return{right:`M${c},${r-u} ${c},${r-u-t*e} ${n-l},${r-u-s-t*e} ${n-l},${r-u-s}Z`,left:`M${c},${r-u} ${c},${r-u-t*e} ${o}, ${r-u-s-t*e} ${o},${r-u-s}Z`,top:`M${c},${r-u-t*e} ${o},${r-u-s-t*e} ${c},${r-u-s*2-t*e} ${n-l},${r-u-s-t*e} Z`,tubeTop:`M${o},${r-u-t*e-s} C ${o},${r-u-t*e-s*2.5} ${n-l},${r-u-t*e-s*2.5} ${n-l},${r-u-t*e-s} C ${n-l},${r-u-t*e+s/2} ${o},${r-u-t*e+s/2} ${o},${r-u-t*e-s}`,tubeBody:`M
11
- ${o},${r-u-t*e-s}
12
- C ${o},${r-u-t*e+s/2}
13
- ${n-l},${r-u-t*e+s/2}
14
- ${n-l},${r-u-t*e-s}
15
- L${n-l},${r-s*1.5}
16
- C
17
- ${n-l},${r}
18
- ${o},${r}
19
- ${o},${r-u-s}Z`}}),X=O(null);function Z(e,t=!1){V.value.events.datapointEnter&&!t&&V.value.events.datapointEnter({datapoint:e,seriesIndex:e.seriesIndex}),V.value.events.datapointClick&&t&&V.value.events.datapointClick({datapoint:e,seriesIndex:e.seriesIndex}),hn(`selectDatapoint`,e);let n=J.value?.findIndex(t=>t.id===e.id)??null;n!==null&&n!==-1&&(z.value=n,B.value=gr(e)),t||(X.value=e.id),t&&L.value&&(L.value=!1),t&&!L.value&&(L.value=!0)}function Q(e){V.value.events.datapointLeave&&V.value.events.datapointLeave({datapoint:e,seriesIndex:e.seriesIndex}),!L.value&&(X.value=null,z.value=null,B.value=``)}function Yn(e,t,n=!1){let r=W.value.series.map(e=>e.value||0).reduce((e,t)=>e+t,0),i=isNaN(e.value/r)?0:e.value/r*100,a=isNaN(e.value/Xn(t))?0:e.value/Xn(t)*100;return n?a:i.toFixed(0)+`%`}function Xn(e){return[...e].map(e=>e.value).reduce((e,t)=>e+t,0)}let Zn=O(!1);function Qn(e){Zn.value=e}function $n(){return K.value?J.value:W.value.percentage}let er=y(()=>K.value?{head:J.value.flatMap(e=>e.breakdown&&e.breakdown.length?[{name:e.name,color:e.color},...e.breakdown.map((t,n)=>({name:t.name,color:i(e.color,n/e.breakdown.length)}))]:{name:e.name,color:e.color}),body:J.value.flatMap(e=>e.breakdown&&e.breakdown.length?[e.value,...e.breakdown.map(e=>e.value)]:e.value)}:null);function tr(e=null){if(!K.value){console.warn(`VueUi3dBar : CSV download is only available in stack mode (providing dataset.series instead of dataset.percentage)`);return}je(()=>{let t=J.value.map(e=>e.value).reduce((e,t)=>e+t,0),n=er.value.head.map((e,n)=>[[e.name],[er.value.body[n]],[isNaN(er.value.body[n]/t)?`-`:er.value.body[n]/t*100]]),i=[[H.value.title.text],[H.value.title.subtitle.text],[[``],[`val`],[`%`]]].concat(n),a=r(i);e?e(a):te({csvContent:a,title:H.value.title.text||`vue-ui-3d-bar`})})}let $=y(()=>{if(!K.value||!Array.isArray(J.value)||!J.value.length)return{colNames:[],head:[],body:[],a11yBody:[],config:{th:{backgroundColor:V.value.table.th.backgroundColor,color:V.value.table.th.color,outline:V.value.table.th.outline},td:{backgroundColor:V.value.table.td.backgroundColor,color:V.value.table.td.color,outline:V.value.table.td.outline},breakpoint:V.value.table.responsiveBreakpoint,shape:V.value.style.shape===`tube`?`circle`:`square`}};let e=J.value.reduce((e,t)=>e+t.value,0),t=[`__SUM__`,n({p:H.value.legend.prefix,v:e,s:H.value.legend.suffix,r:V.value.table.td.roundingValue}),`100%`],r=er.value.head.map((t,r)=>{let i=er.value.body[r];return[{color:t.color,name:t.name},n({p:H.value.legend.prefix,v:i,s:H.value.legend.suffix,r:V.value.table.td.roundingValue}),isNaN(i/e)?`-`:n({v:i/e*100,s:`%`,r:V.value.table.td.roundingPercentage})]}),i=r.map(e=>e.map((e,t)=>t===0?e.name:e));return{colNames:[V.value.table.columnNames.series,V.value.table.columnNames.value,V.value.table.columnNames.percentage],head:t,body:r,a11yBody:i,config:{th:{backgroundColor:V.value.table.th.backgroundColor,color:V.value.table.th.color,outline:V.value.table.th.outline},td:{backgroundColor:V.value.table.td.backgroundColor,color:V.value.table.td.color,outline:V.value.table.td.outline},breakpoint:V.value.table.responsiveBreakpoint,shape:V.value.style.shape===`tube`?`circle`:`square`}}});function nr(){G.value.showTable=!G.value.showTable}let rr=O(!1);function ir(){rr.value=!rr.value}async function ar({scale:e=2}={}){if(!I.value)return;let{width:t,height:n}=I.value.getBoundingClientRect(),r=t/n,{imageUri:i,base64:a}=await de({domElement:I.value,base64:!0,img:!0,scale:e});return{imageUri:i,base64:a,title:H.value.title.text,width:t,height:n,aspectRatio:r}}let or=y(()=>he({config:V,style:H,mutableConfig:G,dialog:pn,accordion:cn,isFullscreen:Zn,parent:I,maxWidth:800}));Le(()=>G.value.showTable,e=>me(e,V,Cn));function sr(){G.value.showTable=!1,wn.value&&wn.value.setTableIconState(!1)}let cr=y(()=>V.value.style.chart.backgroundColor),lr=y(()=>V.value.style.chart.title),{isCallbackImaging:ur,isCallbackSvg:dr,generateSvg:fr,onGenerateImage:pr}=pe({svg:Mn,title:lr,legend:null,legendItems:null,backgroundColor:cr,getSvgCallback:()=>V.value.userOptions.callbacks.svg,generateImage:Ln});async function mr(){if(hn(`copyAlt`,{config:V.value,dataset:W.value}),!V.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(V.value.userOptions.callbacks.altCopy({config:V.value,dataset:W.value}))}function hr(){z.value=null,B.value=``,L.value=!1,X.value=null}function gr(e){if(!e)return``;let t=n({p:H.value.legend.prefix,v:e.value,s:H.value.legend.suffix,r:H.value.legend.roundingValue}),r=n({v:e.proportion*100,s:`%`,r:H.value.legend.roundingPercentage});return`${e.name}: ${t}, ${r}`}function _r(e){if(!K.value||!J.value?.length)return;let t=J.value[e];t&&(z.value=e,X.value=t.id,B.value=gr(t))}function vr(){R.value=!0,K.value&&J.value?.length&&z.value===null&&_r(0)}function yr(){R.value=!1,L.value||(z.value=null,X.value=null,B.value=``)}function br(e){if(!K.value||!J.value?.length||!Mn.value||document.activeElement!==Mn.value)return;let t=[`ArrowLeft`,`ArrowDown`].includes(e.key),n=[`ArrowRight`,`ArrowUp`].includes(e.key),r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){hr();return}if(r){if(z.value===null)return;let e=J.value[z.value];if(!e)return;Z(e,!0),B.value=`${gr(e)} selected`;return}let a=z.value;a===null||a<0||a>=J.value.length?a=n?0:J.value.length-1:n?(a+=1,a>=J.value.length&&(a=0)):t&&(--a,a<0&&(a=J.value.length-1)),_r(a)}let xr=y(()=>({headers:$.value?.colNames??[],rows:$.value?.a11yBody??[]}));return le({getImage:ar,generateCsv:tr,generatePdf:In,generateImage:Ln,generateSvg:fr,getData:$n,toggleTable:nr,toggleAnnotator:ir,toggleFullscreen:Qn,copyAlt:mr}),(e,t)=>(D(),S(`div`,{ref_key:`bar3dChart`,ref:I,class:Me(`vue-data-ui-component vue-ui-3d-bar`),style:E(`font-family:${Tn.value.fontFamily};width:100%; text-align:center;background:${H.value.backgroundColor}`),id:`3d_bar_${F.value}`,onMouseenter:t[8]||=()=>M(An)(!0),onMouseleave:t[9]||=()=>M(An)(!1)},[C(`div`,{id:`chart-instructions-${F.value}`,class:`sr-only`},[C(`p`,null,j(V.value.a11y.translations.keyboardNavigation),1)],8,He),C(`div`,Ue,j(B.value),1),xr.value?.rows?.length?(D(),b(Ce,{key:0,uid:F.value,head:xr.value.headers,body:xr.value.rows,notice:V.value.a11y.translations.tableAvailable,caption:V.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):x(``,!0),U.value.buttons.annotator?(D(),b(M(un),{key:1,svgRef:M(Mn),backgroundColor:H.value.backgroundColor,color:H.value.color,active:rr.value,isCursorPointer:En.value,palette:U.value.annotatorPalette,onClose:ir},De({_:2},[k(M(_e),t=>({name:t,fn:N(n=>[A(e.$slots,t,Ne(ke(M(ge)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):x(``,!0),H.value.title.text?(D(),S(`div`,{key:2,ref_key:`chartTitle`,ref:yn,style:`width:100%;background:transparent`},[(D(),b(fe,{key:`title_${_n.value}`,config:{title:{cy:`3dBar-div-title`,...H.value.title},subtitle:{cy:`3dBar-div-subtitle`,...H.value.title.subtitle}}},null,8,[`config`]))],512)):x(``,!0),U.value.show&&gn.value&&(M(jn)||M(kn))?(D(),b(M(dn),{key:3,ref_key:`userOptionsRef`,ref:wn,backgroundColor:H.value.backgroundColor,color:H.value.color,isPrinting:M(Pn),isImaging:M(Fn),uid:F.value,hasPdf:U.value.buttons.pdf,hasTable:!!K.value&&U.value.buttons.table,hasXls:!!K.value&&U.value.buttons.csv,hasImg:U.value.buttons.img,hasSvg:U.value.buttons.svg,hasFullscreen:U.value.buttons.fullscreen,hasAltCopy:U.value.buttons.altCopy,titles:{...U.value.buttonTitles},chartElement:I.value,position:U.value.position,hasAnnotator:U.value.buttons.annotator,isAnnotation:rr.value,callbacks:U.value.callbacks,printScale:U.value.print.scale,tableDialog:V.value.table.useDialog,isCursorPointer:En.value,onToggleFullscreen:Qn,onGeneratePdf:M(In),onGenerateCsv:tr,onGenerateImage:M(pr),onGenerateSvg:M(fr),onToggleTable:nr,onToggleAnnotator:ir,onCopyAlt:mr,style:E({visibility:M(jn)?M(kn)?`visible`:`hidden`:`visible`})},De({_:2},[k(M(ve)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:N(n=>[A(e.$slots,t,Ne(ke(M(ye)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasTable`,`hasXls`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`titles`,`chartElement`,`position`,`hasAnnotator`,`isAnnotation`,`callbacks`,`printScale`,`tableDialog`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):x(``,!0),C(`div`,We,[(D(),S(`svg`,{ref_key:`svgRef`,ref:Mn,xmlns:M(ne),class:Me({"vue-data-ui-fullscreen--on":Zn.value,"vue-data-ui-fulscreen--off":!Zn.value}),viewBox:`0 0 ${q.value.absoluteWidth} ${q.value.height}`,style:E(`max-width:100%; overflow: visible; background:transparent;color:${H.value.color}`),tabindex:`0`,"aria-describedby":`chart-instructions-${F.value}`,onFocus:vr,onBlur:yr,onKeydown:br},[w(M(fn)),e.$slots[`chart-background`]?(D(),S(`foreignObject`,{key:0,x:0,y:0,width:q.value.absoluteWidth,height:q.value.height,style:{pointerEvents:`none`}},[A(e.$slots,`chart-background`,{},void 0,!0)],8,Ke)):x(``,!0),C(`defs`,null,[w(_,{t:`radial`,id:`gradient_top${F.value}`,stops:[[`0%`,M(s)(H.value.backgroundColor,0),1],[`100%`,H.value.bar.color,1]]},null,8,[`id`,`stops`]),w(_,{t:`radial`,id:`gradient_tube_top${F.value}`,stops:[[`0%`,M(s)(M(i)(H.value.bar.color,.5),80),1],[`100%`,M(s)(M(c)(H.value.bar.color,.1),80),1]]},null,8,[`id`,`stops`]),w(_,{t:`radial`,id:`gradient_left${F.value}`,stops:[[`0%`,M(s)(H.value.backgroundColor,0),1],[`100%`,M(s)(H.value.bar.color,20),1]]},null,8,[`id`,`stops`]),w(_,{t:`radial`,id:`gradient_right${F.value}`,stops:[[`0%`,M(s)(H.value.backgroundColor,0),1],[`100%`,M(s)(H.value.bar.color,20),1]]},null,8,[`id`,`stops`]),w(_,{t:`linear`,id:`gradient_tube_body${F.value}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,H.value.bar.color,1],[`10%`,M(s)(M(c)(H.value.bar.color,.7),100),1],[`25%`,M(s)(M(c)(H.value.bar.color,.5),100),1],[`75%`,M(s)(H.value.bar.color,80),1],[`100%`,M(s)(M(i)(H.value.bar.color,.7),100),1]]},null,8,[`id`,`stops`])]),K.value?(D(),S(`defs`,qe,[(D(!0),S(v,null,k(J.value,e=>(D(),b(_,{t:`radial`,id:`grad_top_${e.id}`,key:`grad_top_${e.id}`,stops:[[`0%`,M(s)(M(i)(e.color,.5),80),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128)),(D(!0),S(v,null,k(J.value,e=>(D(),b(_,{t:`linear`,id:`grad_left_${e.id}`,key:`grad_left_${e.id}`,stops:[[`0%`,M(s)(e.color,80),1],[`100%`,M(s)(M(c)(e.color,.5),100),1]]},null,8,[`id`,`stops`]))),128)),(D(!0),S(v,null,k(J.value,e=>(D(),b(_,{t:`linear`,id:`grad_right_${e.id}`,key:`grad_right_${e.id}`,stops:[[`2%`,M(s)(M(i)(e.color,.5),100),1],[`100%`,M(s)(e.color,80),1]]},null,8,[`id`,`stops`]))),128)),w(_,{t:`linear`,x1:`0%`,y1:`0%`,x2:`0%`,y2:`100%`,id:`vertical_line_${F.value}`,stops:[[`0%`,`#FFFFFF`,1],[`100%`,`#FFFFFF33`,1]]},null,8,[`id`])])):x(``,!0),H.value.dataLabel.show&&![null,void 0].includes(M(W).percentage)&&[null,void 0].includes(M(W).series)?(D(),S(`text`,{key:2,x:q.value.width/2,y:q.value.top-H.value.dataLabel.fontSize/2,"font-size":H.value.dataLabel.fontSize,"font-weight":H.value.dataLabel.bold?`bold`:`normal`,fill:H.value.dataLabel.color,"text-anchor":`middle`},j(M(n)({v:Vn.value,s:`%`,r:H.value.dataLabel.rounding})),9,Je)):x(``,!0),L.value?(D(),S(`g`,{key:3,role:`button`,tabindex:`0`,"aria-label":`Clear selection`,onClick:t[0]||=e=>{L.value=!1,X.value=null},onKeydown:[t[1]||=Re(ze(e=>{L.value=!1,X.value=null},[`prevent`]),[`enter`]),t[2]||=Re(ze(e=>{L.value=!1,X.value=null},[`prevent`]),[`space`])],onFocus:t[3]||=e=>R.value=!0,onBlur:t[4]||=e=>R.value=!1,onMouseenter:t[5]||=e=>R.value=!0,onMouseleave:t[6]||=e=>R.value=!1,class:`svg-btn`,"data-dom-to-png-ignore":``,style:E({cursor:En.value?`pointer`:`default`,outline:`none`})},[t[10]||=C(`title`,null,`Clear selection`,-1),C(`rect`,{x:Kn.value-12,y:q.value.top-24,width:24,height:24,fill:`transparent`,"pointer-events":`all`},null,8,Ye),C(`circle`,{cx:Kn.value,cy:q.value.top-12,r:`10`,fill:`none`,stroke:H.value.color,"stroke-width":`2`,"vector-effect":`non-scaling-stroke`,opacity:R.value?.5:0},null,8,Xe),C(`path`,{d:`M${Kn.value-6},${q.value.top-18} ${Kn.value+6},${q.value.top-6}`,stroke:H.value.color,"stroke-linecap":`round`,"stroke-width":`2`,"vector-effect":`non-scaling-stroke`},null,8,Ze),C(`path`,{d:`M${Kn.value+6},${q.value.top-18} ${Kn.value-6},${q.value.top-6}`,stroke:H.value.color,"stroke-linecap":`round`,"stroke-width":`2`,"vector-effect":`non-scaling-stroke`},null,8,Qe)],36)):x(``,!0),!Tn.value.shape||Tn.value.shape===`bar`?(D(),S(`g`,$e,[K.value?x(``,!0):(D(),S(`g`,et,[C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.right,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,tt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.left,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,nt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.side,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,rt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.topSides,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,it)])),K.value?x(``,!0):(D(),S(`g`,at,[C(`path`,{d:Jn.value.right,stroke:H.value.bar.stroke,"stroke-width":H.value.bar.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_right${F.value})`},null,8,ot),C(`path`,{d:Jn.value.left,stroke:H.value.bar.stroke,"stroke-width":H.value.bar.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_left${F.value})`},null,8,st),C(`path`,{d:Jn.value.top,stroke:H.value.bar.stroke,"stroke-width":H.value.bar.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_top${F.value})`},null,8,ct)])),K.value?(D(),S(`g`,lt,[(D(!0),S(v,null,k(J.value,(e,t)=>(D(),S(`g`,{style:E(`opacity:${X.value?X.value===e.id?1:.3:1}`),class:`vue-ui-3d-bar-stack`,role:`img`,"aria-label":gr(e)},[C(`path`,{d:e.fill.right,fill:`url(#grad_right_${e.id})`,onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e)},null,40,dt),C(`path`,{d:e.fill.left,fill:`url(#grad_left_${e.id})`,onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e)},null,40,ft),C(`path`,{d:e.fill.top,fill:`url(#grad_top_${e.id})`,onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e)},null,40,pt),C(`path`,{d:e.fill.liningTop,stroke:`#FFFFFF`,"stroke-width":`0.5`,"stroke-linecap":`round`,fill:`none`,onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e)},null,40,mt),C(`path`,{d:`M ${e.fill.apexTop.x},${e.fill.apexTop.y} ${e.fill.apexBottom.x},${e.fill.apexBottom.y}`,stroke:`#FFFFFF`,"stroke-width":`0.5`,"stroke-linecap":`round`},null,8,ht)],12,ut))),256)),(D(!0),S(v,null,k(J.value,(e,t)=>(D(),S(`g`,null,[t===J.value.length-1?x(``,!0):(D(),S(`path`,{key:0,d:e.fill.liningTopShade,stroke:H.value.bar.shadeColor,"stroke-width":`0.5`,"stroke-linecap":`round`,fill:`none`,style:{"pointer-events":`none`}},null,8,gt))]))),256)),(D(!0),S(v,null,k(J.value,(t,r)=>(D(),S(`g`,{style:E(`opacity:${X.value?+(X.value===t.id):+(t.proportion*100>H.value.legend.hideUnderPercentage)}`),onClick:e=>hn(`selectDatapoint`,t)},[C(`path`,{stroke:H.value.color,"stroke-dasharray":`1`,"stroke-width":`0.5`,"stroke-linecap":`round`,d:`M${t.fill.sidePointer.x},${t.fill.sidePointer.y} ${t.fill.sidePointer.x2},${t.fill.sidePointer.y}`},null,8,vt),!t.fill.miniDonut||X.value?(D(),S(`circle`,{key:0,cx:t.fill.sidePointer.x2,cy:t.fill.sidePointer.y,r:2,fill:t.color,stroke:H.value.backgroundColor},null,8,yt)):x(``,!0),M(On)?(D(),S(`rect`,{key:1,x:t.fill.sidePointer.xText,y:t.fill.sidePointer.y-H.value.legend.fontSize/2,width:q.value.width/3,height:H.value.legend.fontSize,fill:`#6A6A6A80`,rx:`3`},null,8,bt)):x(``,!0),M(On)?x(``,!0):(D(),S(`foreignObject`,{key:2,x:t.fill.sidePointer.xText,y:t.fill.sidePointer.y-H.value.legend.fontSize,width:q.value.absoluteWidth/3,height:H.value.legend.fontSize*2,style:{overflow:`visible`,position:`relative`}},[H.value.legend.showDefault?(D(),S(`div`,{key:0,style:E(`height: 100%; width: 100%; display: flex; flex-direction: row; flex-wrap: wrap; align-items:center;justify-content: flex-start; font-size:${H.value.legend.fontSize}px; text-align:left; line-height: ${H.value.legend.fontSize}px; color:${H.value.legend.color}; font-weight:${H.value.legend.bold?`bold`:`normal`}`)},j(M(h)(H.value.dataLabel.formatter,t.value,`${t.name}: ${M(n)({v:t.proportion*100,s:`%`,r:H.value.legend.roundingPercentage})} (${M(n)({p:H.value.legend.prefix,v:t.value,s:H.value.legend.suffix,r:H.value.legend.roundingValue})})`,{datapoint:t,seriesIndex:r,type:`barDatapoint`})),5)):x(``,!0),A(e.$slots,`legend`,Ae({ref_for:!0},{datapoint:t,config:V.value,dataset:J.value}),void 0,!0)],8,xt)),t.fill.donut&&X.value===t.id?(D(),S(`g`,St,[(D(!0),S(v,null,k(t.fill.donut,(e,n)=>(D(),S(`g`,null,[Yn(e,t.fill.donut,!0)>6?(D(),S(`path`,{key:0,d:M(m)(e,{x:e.cx,y:e.cy},0,8,!1,!0,10),stroke:e.color,class:`vue-ui-donut-arc-path`,"stroke-width":`0.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,fill:`none`},null,8,Ct)):x(``,!0)]))),256)),(D(!0),S(v,null,k(t.fill.donut,(e,t)=>(D(),S(`path`,{class:`vue-ui-donut-arc-path`,d:e.arcSlice,fill:`${e.color}`,stroke:H.value.backgroundColor,"stroke-width":1},null,8,wt))),256)),(D(!0),S(v,null,k(t.fill.donut,(e,r)=>(D(),S(`g`,null,[Yn(e,t.fill.donut,!0)>6?(D(),S(`g`,Tt,[C(`text`,{"text-anchor":M(p)(e,!0,0).anchor,x:M(p)(e,!0,2).x,y:M(g)(e,12,12),fill:H.value.legend.color,"font-size":H.value.legend.fontSize/1.5,"font-weight":H.value.legend.bold?`bold`:`normal`},j(M(h)(H.value.dataLabel.formatter,e.value,`${Yn(e,t.fill.donut)} (${M(n)({p:V.value.style.chart.legend.prefix,v:e.value,s:V.value.style.chart.legend.suffix,r:V.value.style.chart.legend.roundingValue})})`,{datapoint:e,seriesIndex:r,type:`donutDatapoint`})),9,Et),C(`text`,{"text-anchor":M(p)(e).anchor,x:M(p)(e,!0,2).x,y:M(g)(e,12,12)+H.value.legend.fontSize/1.5,fill:H.value.legend.color,"font-size":H.value.legend.fontSize/1.5,"font-weight":H.value.legend.bold?`bold`:`normal`},j(e.name),9,Dt)])):x(``,!0)]))),256))])):x(``,!0),t.fill.miniDonut&&!X.value?(D(),S(`g`,Ot,[(D(!0),S(v,null,k(t.fill.miniDonut,(e,t)=>(D(),S(`path`,{class:`vue-ui-donut-arc-path`,d:e.arcSlice,fill:`${e.color}`,stroke:H.value.backgroundColor,"stroke-width":.5},null,8,kt))),256))])):x(``,!0)],12,_t))),256))])):x(``,!0)])):x(``,!0),Tn.value.shape===`tube`?(D(),S(`g`,At,[K.value?x(``,!0):(D(),S(`g`,jt,[C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.tubeTop,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,Mt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.tubeLeft,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,Nt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.tubeRight,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,Pt),C(`path`,{"stroke-dasharray":H.value.box.strokeDasharray,d:Y.value.tubeBottom,stroke:H.value.box.stroke,"stroke-width":H.value.box.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,Ft),C(`path`,{d:Jn.value.tubeTop,stroke:H.value.bar.stroke,"stroke-width":H.value.bar.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_tube_top${F.value})`},null,8,It),C(`path`,{d:Jn.value.tubeBody,stroke:H.value.bar.stroke,"stroke-width":H.value.bar.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_tube_body${F.value})`},null,8,Lt),C(`path`,{d:Jn.value.tubeTop,stroke:`#FFFFFF`,"stroke-width":.5,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,8,Rt)])),K.value?(D(),S(`g`,zt,[(D(!0),S(v,null,k(J.value,(e,t)=>(D(),S(`g`,{style:E(`opacity:${X.value?X.value===e.id?1:.3:1}`),class:`vue-ui-3d-bar-stack`,role:`img`,"aria-label":gr(e)},[C(`defs`,null,[w(_,{t:`radial`,id:`gradient_tube_top_${e.id}`,fx:`10%`,cy:`55%`,stops:[[`0%`,M(s)(M(i)(e.color,.5),80),1],[`100%`,M(s)(M(c)(e.color,.1),80),1]]},null,8,[`id`,`stops`]),w(_,{t:`linear`,id:`gradient_tube_body_${e.id}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,e.color,1],[`10%`,M(s)(M(c)(e.color,.7),100),1],[`25%`,M(s)(M(c)(e.color,.5),100),1],[`75%`,M(s)(e.color,80),1],[`100%`,M(s)(M(i)(e.color,.7),100),1]]},null,8,[`id`,`stops`])]),C(`path`,{onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e),d:e.fill.tubeBody,stroke:`#FFFFFF`,"stroke-width":.5,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_tube_body_${e.id})`},null,40,Vt),t>0?(D(),S(`path`,{key:0,onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e),d:e.fill.bottomTubeTop,stroke:`#000000`,"stroke-width":.5,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`none`},null,40,Ht)):x(``,!0),C(`path`,{onMouseenter:t=>Z(e),onClick:t=>Z(e,!0),onMouseout:t=>Q(e),d:e.fill.tubeTop,stroke:`#FFFFFF`,"stroke-width":.5,"stroke-linejoin":`round`,"stroke-linecap":`round`,fill:`url(#gradient_tube_top_${e.id})`},null,40,Ut)],12,Bt))),256)),(D(!0),S(v,null,k(J.value,(t,r)=>(D(),S(`g`,{style:E(`opacity:${X.value?+(X.value===t.id):+(t.proportion*100>H.value.legend.hideUnderPercentage)}`),onClick:e=>hn(`selectDatapoint`,t)},[C(`path`,{stroke:H.value.color,"stroke-dasharray":`1`,"stroke-width":`0.5`,"stroke-linecap":`round`,d:`M${t.fill.sidePointer.x},${t.fill.sidePointer.y} ${t.fill.sidePointer.x2},${t.fill.sidePointer.y}`},null,8,Gt),!t.fill.miniDonut||X.value?(D(),S(`circle`,{key:0,cx:t.fill.sidePointer.x2,cy:t.fill.sidePointer.y,r:2,fill:t.color,stroke:H.value.backgroundColor},null,8,Kt)):x(``,!0),M(On)?(D(),S(`rect`,{key:1,x:t.fill.sidePointer.xText,y:t.fill.sidePointer.y-H.value.legend.fontSize/2,width:q.value.width/3,height:H.value.legend.fontSize,fill:`#6A6A6A80`,rx:`3`},null,8,qt)):x(``,!0),M(On)?x(``,!0):(D(),S(`foreignObject`,{key:2,x:t.fill.sidePointer.xText,y:t.fill.sidePointer.y-H.value.legend.fontSize,width:q.value.absoluteWidth/3,height:H.value.legend.fontSize*2,style:{overflow:`visible`,position:`relative`}},[H.value.legend.showDefault?(D(),S(`div`,{key:0,style:E(`height: 100%; width: 100%; display: flex; flex-direction: row; flex-wrap: wrap; align-items:center;justify-content: flex-start; font-size:${H.value.legend.fontSize}px; text-align:left; line-height: ${H.value.legend.fontSize}px; color:${H.value.legend.color};font-weight:${H.value.legend.bold?`bold`:`normal`}`)},j(M(h)(H.value.dataLabel.formatter,t.value,`${t.name}: ${M(n)({v:t.proportion*100,s:`%`,r:H.value.legend.roundingPercentage})} (${M(n)({p:H.value.legend.prefix,v:t.value,s:H.value.legend.suffix,r:H.value.legend.roundingValue})})`,{datapoint:t,seriesIndex:r,type:`barDatapoint`})),5)):x(``,!0),A(e.$slots,`legend`,Ae({ref_for:!0},{datapoint:t,config:V.value,dataset:J.value}),void 0,!0)],8,Jt)),t.fill.donut&&X.value===t.id?(D(),S(`g`,Yt,[(D(!0),S(v,null,k(t.fill.donut,(e,n)=>(D(),S(`g`,null,[Yn(e,t.fill.donut,!0)>6?(D(),S(`path`,{key:0,d:M(m)(e,{x:e.cx,y:e.cy},0,8,!1,!0,10),stroke:e.color,class:`vue-ui-donut-arc-path`,"stroke-width":`0.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,fill:`none`},null,8,Xt)):x(``,!0)]))),256)),(D(!0),S(v,null,k(t.fill.donut,(e,t)=>(D(),S(`path`,{class:`vue-ui-donut-arc-path`,d:e.arcSlice,fill:`${e.color}`,stroke:H.value.backgroundColor,"stroke-width":1},null,8,Zt))),256)),(D(!0),S(v,null,k(t.fill.donut,(e,r)=>(D(),S(`g`,null,[Yn(e,t.fill.donut,!0)>6?(D(),S(`g`,Qt,[C(`text`,{"text-anchor":M(p)(e,!0,0).anchor,x:M(p)(e,!0,2).x,y:M(g)(e,12,12),fill:H.value.legend.color,"font-size":H.value.legend.fontSize/1.5,"font-weight":H.value.legend.bold?`bold`:`normal`},j(M(h)(H.value.dataLabel.formatter,e.value,`${Yn(e,t.fill.donut)} (${M(n)({p:V.value.style.chart.legend.prefix,v:e.value,s:V.value.style.chart.legend.suffix,r:V.value.style.chart.legend.roundingValue})})`,{datapoint:e,seriesIndex:r,type:`donutDatapoint`})),9,$t),C(`text`,{"text-anchor":M(p)(e).anchor,x:M(p)(e,!0,2).x,y:M(g)(e,12,12)+H.value.legend.fontSize/1.5,fill:H.value.legend.color,"font-size":H.value.legend.fontSize/1.5,"font-weight":H.value.legend.bold?`bold`:`normal`},j(e.name),9,en)])):x(``,!0)]))),256))])):x(``,!0),t.fill.miniDonut&&!X.value?(D(),S(`g`,tn,[(D(!0),S(v,null,k(t.fill.miniDonut,(e,t)=>(D(),S(`path`,{class:`vue-ui-donut-arc-path`,d:e.arcSlice,fill:`${e.color}`,stroke:H.value.backgroundColor,"stroke-width":.5},null,8,nn))),256))])):x(``,!0)],12,Wt))),256))])):x(``,!0)])):x(``,!0),A(e.$slots,`svg`,{svg:{...q.value,isPrintingImg:M(Pn)||M(Fn)||M(ur),isPrintingSvg:M(dr)}},void 0,!0)],46,Ge))]),e.$slots.watermark?(D(),S(`div`,rn,[A(e.$slots,`watermark`,Ne(ke({isPrinting:M(Pn)||M(Fn)||M(dr)||M(ur)})),void 0,!0)])):x(``,!0),e.$slots.source?(D(),S(`div`,{key:5,ref_key:`source`,ref:Sn,dir:`auto`},[A(e.$slots,`source`,{},void 0,!0)],512)):x(``,!0),gn.value&&K.value&&U.value.buttons.table?(D(),b(Fe(or.value.component),Ae({key:6},or.value.props,{ref_key:`tableUnit`,ref:Cn,onClose:sr}),De({content:N(()=>[(D(),b(M(ln),{key:`table_${vn.value}`,colNames:$.value.colNames,head:$.value.head,body:$.value.body,config:$.value.config,title:V.value.table.useDialog?``:or.value.title,withCloseButton:!V.value.table.useDialog,isCursorPointer:En.value,onClose:sr},{th:N(({th:e})=>[e===`__SUM__`?(D(),S(`div`,an,[w(M(sn),{name:`sigma`,stroke:$.value.config.th.color,size:16},null,8,[`stroke`])])):(D(),S(`div`,on,j(e),1))]),td:N(({td:e})=>[Oe(j(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[V.value.table.useDialog?{name:`title`,fn:N(()=>[Oe(j(or.value.title),1)]),key:`0`}:void 0,V.value.table.useDialog?{name:`actions`,fn:N(()=>[C(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[7]||=e=>tr(U.value.callbacks.csv)},[w(M(sn),{name:`fileCsv`,stroke:or.value.props.color},null,8,[`stroke`])])]),key:`1`}:void 0]),1040)):x(``,!0),A(e.$slots,`skeleton`,{},()=>[M(On)?(D(),b(se,{key:0})):x(``,!0)],!0)],44,Ve))}},[[`__scopeId`,`data-v-b2cd82e7`]]);export{Be as n,sn as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Dt as i,Jt as a,X as o,Yt as ee,at as te,b as s,et as ne,i as c,in as re,nt as ie,pt as ae,t as oe,tn as se,zt as ce}from"./lib-DqD8nbyX.js";import{n as le,t as ue}from"./BaseScanner-8NdoBs7B.js";import{n as de,t as fe}from"./useHints-BH9r_0Vd.js";import{t as pe}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as me}from"./resolveChartConfig-ChGWTt5l.js";import{t as he}from"./img-DiP2_5_r.js";import{n as ge}from"./Title-BLA0tM3g.js";import{t as _e}from"./useChartExport-DtPNpc9M.js";import{n as ve,t as ye}from"./tableIntegration-CNoJ1CIY.js";import{n as be,t as xe}from"./annotationSlots-BRR85CqJ.js";import{n as Se,t as Ce}from"./userOptionsSlots-DYuo-E5m.js";import{t as we}from"./usePrinter-Cj4eIYC_.js";import{t as Te}from"./useTimeLabelCollider-XQf_S7-z.js";import{l as Ee,t as De}from"./useResponsive-D2CPcpda.js";import{t as Oe}from"./DefGrad-DKMq1REY.js";import{t as ke}from"./A11yDataTable-DWNlWXzs.js";import{t as Ae}from"./useUserOptionState-CXlFnwPv.js";import{t as je}from"./useChartAccessibility-DOMuYJfm.js";import{t as Me}from"./vue_ui_age_pyramid-CL0Ef8Ov.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createSlots as Ne,createTextVNode as Pe,createVNode as h,defineAsyncComponent as g,guardReactiveProps as _,mergeProps as Fe,nextTick as Ie,normalizeClass as Le,normalizeProps as v,normalizeStyle as Re,onBeforeUnmount as ze,onMounted as Be,openBlock as y,ref as b,renderList as x,renderSlot as S,resolveDynamicComponent as Ve,shallowRef as He,toDisplayString as C,toRefs as Ue,unref as w,watch as We,watchEffect as Ge,withCtx as T}from"vue";var Ke=/* @__PURE__ */ e({default:()=>xt}),qe=[`id`],Je=[`id`],Ye={style:{position:`relative`}},Xe=[`xmlns`,`viewBox`,`aria-describedby`],Ze=[`x`,`y`,`width`,`height`],Qe=[`x`,`y`,`width`,`height`,`fill`,`rx`],$e=[`x`,`y`,`width`,`height`,`fill`,`rx`],et=[`x`,`y`,`width`,`height`,`fill`,`rx`],tt=[`x`,`y`,`width`,`height`,`fill`,`rx`],nt=[`x`,`y`,`font-size`,`font-weight`,`fill`,`stroke`],rt=[`x`,`y`,`font-size`,`font-weight`,`fill`,`stroke`],it={key:0},at=[`x`,`y`,`fill`,`font-size`,`font-weight`],ot=[`x`,`y`,`fill`,`font-size`,`font-weight`],st={key:1},ct=[`x`,`y`,`font-size`,`fill`,`font-weight`],lt={key:2},ut={key:0},dt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],ft=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],pt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],mt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],ht=[`font-size`,`fill`,`text-anchor`,`font-weight`,`transform`],gt=[`font-size`,`fill`,`text-anchor`,`font-weight`,`transform`],_t=[`x`,`y`,`font-size`,`fill`,`font-weight`],vt=[`x`,`y`,`width`,`height`,`fill`,`onMouseover`,`onMouseleave`,`onClick`],yt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},bt={key:5,class:`vue-data-ui-watermark`},xt=/*#__PURE__*/ pe({__name:`vue-ui-age-pyramid`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:pe,emit:Ke}){let xt=g(()=>import(`./Tooltip-Iyb_S6oQ.js`)),St=g(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),Ct=g(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),wt=g(()=>import(`./DataTable-BcVZLSs8.js`)),Tt=g(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Et=g(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Dt=g(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),Ot=g(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),{vue_ui_age_pyramid:kt}=t(),E=e,At=Ke,jt=u(()=>!!E.dataset&&E.dataset.length),D=b(o()),O=b(!1),Mt=b(``),k=b(null),Nt=b(0),A=b(null),Pt=b(null),Ft=b(null),It=b(null),Lt=b(0),Rt=b(0),zt=b(null),Bt=b(null),Vt=b(null),j=b(null),Ht=b({x:0,y:0}),M=b(`pointer`),Ut=b(!1),N=b(Xt()),P=u(()=>N.value.style),F=u(()=>N.value.style.layout.dataLabels),I=u(()=>N.value.style.layout.bars),L=u(()=>N.value.style.layout.bars.labels);de({config:()=>N.value,dataset:()=>E.dataset,component:`VueUiAgePyramid`,rules:[fe.emptyArray,{test:e=>e.length>130,message:[`👀 Dataset has > 130 points. Consider:`,``,`▶️ Grouping small values into aggregated categories.`,``,`▶️ Using VueUiStackline to display data in a more compact way.`]}]});let R=u(()=>N.value.userOptions.useCursorPointer),Wt=u(()=>re({defaultConfig:{userOptions:{show:!1},table:{show:!1},translations:{male:``,female:``},style:{backgroundColor:`#99999930`,layout:{bars:{left:{color:`#CACACA`},right:{color:`#999999`}},dataLabels:{xAxis:{fontSize:0,scale:1e3,translation:``},yAxis:{show:!1}},grid:{stroke:`#6A6A6A`}}}},userConfig:N.value.skeletonConfig??{}})),{loading:Gt,FINAL_DATASET:z,manualLoading:Kt}=le({...Ue(E),FINAL_CONFIG:N,prepareConfig:Xt,skeletonDataset:E.config?.skeletonDataset??[[`_`,9,2,2],[`_`,8,3,3],[`_`,7,5,5],[`_`,6,8,8],[`_`,5,13,13],[`_`,4,21,21],[`_`,3,34,34],[`_`,2,55,55],[`_`,1,89,89],[`_`,0,144,144]],skeletonConfig:re({defaultConfig:N.value,userConfig:Wt.value})}),{userOptionsVisible:qt,setUserOptionsVisibility:Jt,keepUserOptionState:Yt}=Ae({config:N.value}),{svgRef:B}=je({config:N.value.style.title});function Xt(){return me(E.config,kt,Me)}function Zt(e){let t=ne(e);return t?.style?.chart&&delete t.style.tooltip,JSON.stringify(t)}let Qt=Zt(E.config);We(()=>E.config,(e,t)=>{let n=Zt(e),r=n!==Qt;Qt=n;let i=Xt();if(!r){N.value.style.tooltip=i.style.tooltip,U.value.showTooltip=N.value.style.tooltip.show;return}Gt.value||(N.value=i),qt.value=!N.value.userOptions.showOnChartHover,en(),Lt.value+=1,Rt.value+=1,U.value.showTable=N.value.table.show,U.value.showTooltip=N.value.style.tooltip.show},{deep:!0}),We(()=>E.dataset,e=>{Array.isArray(e)&&e.length>0&&(Kt.value=!1)},{deep:!0});let V=He(null),H=He(null);Be(()=>{en()});let $t=u(()=>N.value.debug);function en(){if(ce(E.dataset)&&(te({componentName:`VueUiAgePyramid`,type:`dataset`,debug:$t.value}),Kt.value=!0),ce(E.dataset)||(Kt.value=N.value.loading),N.value.responsive){let e=Ee(()=>{let{width:e,height:t}=De({chart:A.value,title:P.value.title.text?Pt.value:null,source:Ft.value,noTitle:It.value});requestAnimationFrame(()=>{W.value.width=e,W.value.height=t})});V.value&&(H.value&&V.value.unobserve(H.value),V.value.disconnect()),V.value=new ResizeObserver(e),H.value=A.value.parentNode,V.value.observe(H.value)}}ze(()=>{V.value&&(H.value&&V.value.unobserve(H.value),V.value.disconnect())});let{isPrinting:tn,isImaging:nn,generatePdf:rn,generateImage:an}=we({elementId:`vue-ui-age-pyramid_${D.value}`,fileName:P.value.title.text||`vue-ui-age-pyramid`,options:N.value.userOptions.print}),on=u(()=>N.value.userOptions.show&&!P.value.title.text),U=b({showTable:N.value.table.show,showTooltip:P.value.tooltip.show});We(N,()=>{U.value={showTable:N.value.table.show,showTooltip:P.value.tooltip.show}},{immediate:!0});let W=b({height:P.value.height,width:P.value.width}),sn=u(()=>W.value.width),cn=u(()=>W.value.height),ln=b(0),un=Ee(e=>{ln.value=e},100);Ge(e=>{let t=zt.value;if(!t)return;let n=new ResizeObserver(e=>{un(e[0].contentRect.height)});n.observe(t),e(()=>n.disconnect())}),ze(()=>{ln.value=0});let G=u(()=>{let e=W.value.width-P.value.layout.padding.right-P.value.layout.padding.left,t=P.value.layout.padding.left,n=W.value.width-P.value.layout.padding.right;return{top:P.value.layout.padding.top+F.value.sideTitles.fontSize+F.value.sideTitles.offsetY+12,left:t,right:n,bottom:W.value.height-P.value.layout.padding.bottom-ln.value,width:e,height:W.value.height-P.value.layout.padding.top-P.value.layout.padding.bottom-ln.value-F.value.sideTitles.fontSize-F.value.sideTitles.offsetY-12,centerX:P.value.layout.padding.left+e/2,leftChart:{width:e/2-P.value.layout.centerSlit.width,right:t+e/2-P.value.layout.centerSlit.width},rightChart:{width:e/2-P.value.layout.centerSlit.width,left:t+e/2+P.value.layout.centerSlit.width}}}),dn=u(()=>z.value.map(e=>F.value.yAxis.display===`age`?e[1]:e[0])),K=u(()=>{let e=fn(q.value/5),t=[],n=[];for(let r=0;r<=5;r+=1){let i=e*r,a=e*(r-5);t.push({value:i,x:G.value.left+G.value.width/2+P.value.layout.centerSlit.width+i/q.value*G.value.leftChart.width}),n.push({value:Math.abs(a),x:G.value.left+G.value.width/2+a/q.value*G.value.leftChart.width-P.value.layout.centerSlit.width})}return{right:t,left:n}});function fn(e){if(e===0)return 0;let t=10**Math.floor(Math.log10(Math.abs(e))),n;return n=Math.round(e/t)*t,n}let q=u(()=>Math.max(...z.value.flatMap(e=>e.slice(-2).map(e=>s(e))))),J=u(()=>z.value.length),pn=u(()=>z.value.map(e=>({segment:e[0],age:e[1],left:{value:e[2],proportionToMax:e[2]/q.value},right:{value:e[3],proportionToMax:e[3]/q.value}}))),Y=u(()=>pn.value.map((e,t)=>{let n=G.value.top+G.value.height/J.value*t,r=G.value.height/J.value-I.value.gap;return{segment:e.segment,age:e.age,left:{...e.left,y:n,color:I.value.left.color,x:G.value.leftChart.right-e.left.proportionToMax*G.value.leftChart.width,width:s(e.left.proportionToMax*G.value.leftChart.width),height:r},right:{...e.right,y:n,color:I.value.right.color,x:G.value.rightChart.left,width:s(e.right.proportionToMax*G.value.rightChart.width),height:r}}})),mn=b(null);function hn(e){let[t,n,r,i]=e;return{segment:t,index:n,left:r,right:i}}function gn(e,t){N.value.events.datapointClick&&N.value.events.datapointClick({datapoint:hn(t),seriesIndex:e})}function _n(e,t){N.value.events.datapointLeave&&N.value.events.datapointLeave({datapoint:hn(t),seriesIndex:e}),(M.value!==`keyboard`||j.value!==e)&&(k.value=null,O.value=!1)}function vn(e){if(!B.value)return;let t=Y.value[e];if(!t)return;let n=se(G.value.left+G.value.width/2,t.left.y+t.left.height/2,B.value);n&&(Ht.value=n)}function yn(e,t,r=`pointer`){N.value.events.datapointEnter&&N.value.events.datapointEnter({datapoint:hn(t),seriesIndex:e}),k.value=e,j.value=e,M.value=r,mn.value={datapoint:t,seriesIndex:e,series:Y.value,config:N.value};let a=P.value.tooltip.customFormat;if(i(a)&&ae(()=>a({seriesIndex:e,datapoint:{segment:t[0],index:t[1],left:t[2],right:t[3]},series:Y.value,config:N.value})))Mt.value=a({seriesIndex:e,datapoint:{segment:t[0],index:t[1],left:t[2],right:t[3]},series:Y.value,config:N.value});else{let r=``,i=Y.value[e];r+=`<div><b>${i.segment}</b></div>`,r+=`<div>${N.value.translations.age}: ${c(F.value.yAxis.formatter,s(i.age),n({v:s(i.age)}),{datapoint:t,seriesIndex:e})}</div>`,r+=`<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${P.value.tooltip.borderColor}">`,r+=`<div style="display:flex; flex-direction:row;gap:12px">`,r+=`<div style="display:flex;flex-direction:column;align-items:center;justify-content:center"><svg viewBox="0 0 12 12" height="12" width="12"><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${I.value.gradient.underlayer}"/><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${I.value.gradient.show?`url(#age_pyramid_left_${D.value})`:I.value.left.color}"/></svg><div>${N.value.translations.female}</div><div><b>${c(F.value.xAxis.formatter,s(i.left.value),n({v:s(i.left.value)}),{datapoint:t,seriesIndex:e})}</b></div></div>`,r+=`<div style="display:flex;flex-direction:column;align-items:center;justify-content:center"><svg viewBox="0 0 12 12" height="12" width="12"><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${I.value.gradient.underlayer}"/><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${I.value.gradient.show?`url(#age_pyramid_right_${D.value})`:I.value.right.color}"/></svg><div>${N.value.translations.male}</div><div><b>${c(F.value.xAxis.formatter,s(i.right.value),n({v:s(i.right.value)}),{datapoint:t,seriesIndex:e})}</b></div></div>`,r+=`</div>`,r+=`<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${P.value.tooltip.borderColor}"><div>${N.value.translations.total}</div><div><b>${c(F.value.xAxis.formatter,s(i.right.value)+s(i.left.value),n({v:s(i.right.value)+s(i.left.value)}),{datapoint:t,seriesIndex:e})}</b></div></div>`,r+=`</div>`,Mt.value=`<div>${r}</div>`}O.value=!0,r===`keyboard`&&Ie(()=>{vn(e)})}function bn(e=null){Ie(()=>{let t=[N.value.translations.year,N.value.translations.age,N.value.translations.female,N.value.translations.male,N.value.translations.total],n=E.dataset.map(e=>[e[0],e[1],e[2],e[3],e[2]??0+e[3]??0]),i=[[P.value.title.text],[P.value.title.subtitle.text],[[``],[``],[``]],t].concat(n),a=r(i);e?e(a):ie({csvContent:a,title:P.value.title.text||`vue-ui-heatmap`})})}let X=u(()=>{let e=[N.value.translations.year,N.value.translations.age,N.value.translations.female,N.value.translations.male,N.value.translations.total];return{head:e,body:E.dataset.map(e=>[e[0],e[1],e[2]==null?``:e[2].toLocaleString(),e[3]==null?``:e[3].toLocaleString(),(e[2]??0+e[3]??0).toLocaleString()]),config:{th:{backgroundColor:N.value.table.th.backgroundColor,color:N.value.table.th.color,outline:N.value.table.th.outline},td:{backgroundColor:N.value.table.td.backgroundColor,color:N.value.table.td.color,outline:N.value.table.td.outline},breakpoint:N.value.table.responsiveBreakpoint},colNames:e}}),Z=b(!1);function xn(e){Z.value=e,Nt.value+=1}function Sn(){U.value.showTable=!U.value.showTable}function Cn(){U.value.showTooltip=!U.value.showTooltip}let Q=b(!1);function wn(){Q.value=!Q.value}async function Tn({scale:e=2}={}){if(!A.value)return;let{width:t,height:n}=A.value.getBoundingClientRect(),r=t/n,{imageUri:i,base64:a}=await he({domElement:A.value,base64:!0,img:!0,scale:e});return{imageUri:i,base64:a,title:P.value.title.text,width:t,height:n,aspectRatio:r}}let En=b([]),Dn=b({start:0,end:Y.value.length});Te({timeLabelsEls:zt,timeLabels:En,slicer:Dn,configRef:N,rotationPath:[`style`,`layout`,`dataLabels`,`xAxis`,`rotation`],autoRotatePath:[`style`,`layout`,`dataLabels`,`xAxis`,`autoRotate`,`enable`],isAutoSize:!1,width:sn,height:cn,targetClass:`.vue-ui-age-pyramid-x-axis-label`,rotation:P.value.layout.dataLabels.xAxis.autoRotate.angle});let $=u(()=>ye({config:N,style:P,mutableConfig:U,dialog:Ot,accordion:Ct,isFullscreen:Z,parent:A,maxWidth:800,isCursorPointer:R}));We(()=>U.value.showTable,e=>ve(e,N,Bt));function On(){U.value.showTable=!1,Vt.value&&Vt.value.setTableIconState(!1)}let kn=u(()=>N.value.style.backgroundColor),An=u(()=>N.value.style.title),{isCallbackImaging:jn,isCallbackSvg:Mn,generateSvg:Nn,onGenerateImage:Pn}=_e({svg:B,title:An,legend:null,legendItems:null,backgroundColor:kn,getSvgCallback:()=>N.value.userOptions.callbacks.svg,generateImage:an});async function Fn(){if(At(`copyAlt`,{config:N.value,dataset:Y.value}),!N.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(N.value.userOptions.callbacks.altCopy({config:N.value,dataset:Y.value}))}function In(){Ut.value=!0}function Ln(){k.value=null,j.value=null,M.value=`pointer`,O.value=!1,Ut.value=!1}function Rn(e){if(!B.value||Q.value||document.activeElement!==B.value||!Y.value.length)return;let t=[`ArrowUp`,`ArrowLeft`].includes(e.key),n=[`ArrowDown`,`ArrowRight`].includes(e.key),r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){k.value=null,j.value=null,M.value=`pointer`,O.value=!1;return}if(r){if(j.value===null)return;let e=E.dataset[j.value];if(!e)return;gn(j.value,e);return}let a=j.value,o=k.value,ee=a!==null&&a>=0&&a<Y.value.length,te=o!==null&&o>=0&&o<Y.value.length;ee?t?a=a-1<0?Y.value.length-1:a-1:n&&(a=a+1>Y.value.length-1?0:a+1):te?(a=n?o+1:o-1,a>=Y.value.length&&(a=0),a<0&&(a=Y.value.length-1)):a=n?0:Y.value.length-1;let s=E.dataset[a];s&&yn(a,s,`keyboard`)}return pe({getImage:Tn,generatePdf:rn,generateCsv:bn,generateImage:an,generateSvg:Nn,toggleTable:Sn,toggleTooltip:Cn,toggleAnnotator:wn,toggleFullscreen:xn,copyAlt:Fn}),(t,r)=>(y(),p(`div`,{class:Le(`vue-data-ui-component vue-ui-age-pyramid ${Z.value?`vue-data-ui-wrapper-fullscreen`:``}`),ref_key:`agePyramid`,ref:A,id:`vue-ui-age-pyramid_${D.value}`,style:Re(`font-family:${P.value.fontFamily};width:100%; text-align:center;background:${P.value.backgroundColor};${N.value.responsive?`height:100%`:``}`),onMouseenter:r[1]||=()=>w(Jt)(!0),onMouseleave:r[2]||=()=>w(Jt)(!1)},[m(`div`,{id:`chart-instructions-${D.value}`,class:`sr-only`},[m(`p`,null,C(N.value.a11y.translations.keyboardNavigation),1)],8,Je),X.value?.body?.length?(y(),d(ke,{key:0,uid:D.value,head:X.value.head,body:X.value.body,notice:N.value.a11y.translations.tableAvailable,caption:N.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):f(``,!0),N.value.userOptions.buttons.annotator?(y(),d(w(Tt),{key:1,svgRef:w(B),backgroundColor:P.value.backgroundColor,color:P.value.color,active:Q.value,isCursorPointer:R.value,palette:N.value.userOptions.annotatorPalette,onClose:wn},Ne({_:2},[x(w(xe),e=>({name:e,fn:T(n=>[S(t.$slots,e,v(_(w(be)(e,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):f(``,!0),on.value?(y(),p(`div`,{key:2,ref_key:`noTitle`,ref:It,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):f(``,!0),P.value.title.text?(y(),p(`div`,{key:3,ref_key:`chartTitle`,ref:Pt,style:`width:100%;background:transparent`},[(y(),d(ge,{key:`title_${Lt.value}`,config:{title:{cy:`pyramid-div-title`,...P.value.title},subtitle:{cy:`pyramid-div-subtitle`,...P.value.title.subtitle}}},null,8,[`config`]))],512)):f(``,!0),N.value.userOptions.show&&jt.value&&(w(Yt)||w(qt))?(y(),d(w(Et),{ref_key:`userOptionsRef`,ref:Vt,key:`user_options_${Nt.value}`,backgroundColor:P.value.backgroundColor,color:P.value.color,isImaging:w(nn),isPrinting:w(tn),uid:D.value,hasTooltip:N.value.userOptions.buttons.tooltip&&P.value.tooltip.show,hasPdf:N.value.userOptions.buttons.pdf,hasXls:N.value.userOptions.buttons.csv,hasImg:N.value.userOptions.buttons.img,hasSvg:N.value.userOptions.buttons.svg,hasTable:N.value.userOptions.buttons.table,hasFullscreen:N.value.userOptions.buttons.fullscreen,hasAltCopy:N.value.userOptions.buttons.altCopy,isFullscreen:Z.value,isTooltip:U.value.showTooltip,titles:{...N.value.userOptions.buttonTitles},chartElement:A.value,position:N.value.userOptions.position,hasAnnotator:N.value.userOptions.buttons.annotator,isAnnotation:Q.value,callbacks:N.value.userOptions.callbacks,printScale:N.value.userOptions.print.scale,tableDialog:N.value.table.useDialog,isCursorPointer:R.value,onToggleFullscreen:xn,onGeneratePdf:w(rn),onGenerateCsv:bn,onGenerateImage:w(Pn),onGenerateSvg:w(Nn),onToggleTable:Sn,onToggleTooltip:Cn,onToggleAnnotator:wn,onCopyAlt:Fn,style:Re({visibility:w(Yt)?w(qt)?`visible`:`hidden`:`visible`})},Ne({_:2},[x(w(Se)(t.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),e=>({name:e,fn:T(n=>[S(t.$slots,e,v(_(w(Ce)(e,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isImaging.isPrinting.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):f(``,!0),m(`div`,Ye,[(y(),p(`svg`,{ref_key:`svgRef`,ref:B,xmlns:w(oe),class:Le({"vue-data-ui-fullscreen--on":Z.value,"vue-data-ui-fulscreen--off":!Z.value}),viewBox:`0 0 ${W.value.width<=0?10:W.value.width} ${W.value.height<=0?10:W.value.height}`,style:Re(`max-width:100%;overflow:visible;background:transparent;color:${P.value.color}`),tabindex:`0`,"aria-describedby":`chart-instructions-${D.value}`,onFocus:In,onBlur:Ln,onKeydown:Rn},[h(w(Dt)),t.$slots[`chart-background`]?(y(),p(`foreignObject`,{key:0,x:G.value.left,y:G.value.top,width:Math.max(.1,G.value.width),height:Math.max(.1,G.value.height),style:{pointerEvents:`none`}},[S(t.$slots,`chart-background`,{},void 0,!0)],8,Ze)):f(``,!0),m(`defs`,null,[h(Oe,{t:`linear`,id:`age_pyramid_left_${D.value}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,I.value.left.color,1],[`100%`,w(a)(w(ee)(I.value.left.color,I.value.gradient.shiftHue),100-I.value.gradient.intensity),1]]},null,8,[`id`,`stops`]),h(Oe,{t:`linear`,id:`age_pyramid_right_${D.value}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,w(a)(w(ee)(I.value.right.color,I.value.gradient.shiftHue),100-I.value.gradient.intensity),1],[`100%`,I.value.right.color,1]]},null,8,[`id`,`stops`])]),(y(!0),p(l,null,x(Y.value,(e,t)=>(y(),p(`g`,null,[m(`rect`,{x:e.left.x,y:e.left.y,width:w(s)(e.left.width<=0?1e-4:e.left.width),height:e.left.height<=0?1e-4:e.left.height,fill:I.value.gradient.underlayer,rx:I.value.borderRadius},null,8,Qe),m(`rect`,{x:e.left.x,y:e.left.y,width:e.left.width<=0?1e-4:e.left.width,height:e.left.height<=0?1e-4:e.left.height,fill:I.value.gradient.show?`url(#age_pyramid_left_${D.value})`:e.left.color,rx:I.value.borderRadius},null,8,$e),m(`rect`,{x:e.right.x,y:e.right.y,width:e.right.width<=0?1e-4:e.right.width,height:e.right.height<=0?1e-4:e.right.height,fill:I.value.gradient.underlayer,rx:I.value.borderRadius},null,8,et),m(`rect`,{x:e.right.x,y:e.right.y,width:e.right.width<=0?1e-4:e.right.width,height:e.right.height<=0?1e-4:e.right.height,fill:I.value.gradient.show?`url(#age_pyramid_right_${D.value})`:e.right.color,rx:I.value.borderRadius},null,8,tt)]))),256)),(y(!0),p(l,null,x(Y.value,(e,t)=>(y(),p(`g`,null,[L.value.show?(y(),p(l,{key:0},[!L.value.showOnHover||L.value.showOnHover&&k.value===t?(y(),p(`text`,{key:0,x:e.left.x+Math.max(1e-4,e.left.width)-L.value.offsetX-6,y:e.left.y+Math.max(1e-4,e.left.height/2)+I.value.gap/2,"text-anchor":`end`,"dominant-baseline":`middle`,"font-size":L.value.fontSize,"font-weight":L.value.bold?`bold`:`normal`,fill:L.value.color,stroke:P.value.backgroundColor,"paint-order":`stroke fill`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`3`},C(w(c)(L.value.formatter,e.left.value,w(n)({v:e.left.value}),{datapoint:e.left,seriesIndex:t})),9,nt)):f(``,!0)],64)):f(``,!0),L.value.show?(y(),p(l,{key:1},[!L.value.showOnHover||L.value.showOnHover&&k.value===t?(y(),p(`text`,{key:0,x:e.right.x+L.value.offsetX+6,y:e.right.y+Math.max(1e-4,e.right.height/2)+I.value.gap/2,"text-anchor":`start`,"dominant-baseline":`middle`,"font-size":L.value.fontSize,"font-weight":L.value.bold?`bold`:`normal`,fill:L.value.color,stroke:P.value.backgroundColor,"paint-order":`stroke fill`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`3`},C(w(c)(L.value.formatter,e.right.value,w(n)({v:e.right.value}),{datapoint:e.right,seriesIndex:t})),9,rt)):f(``,!0)],64)):f(``,!0)]))),256)),m(`g`,null,[F.value.sideTitles.show?(y(),p(`g`,it,[m(`text`,{x:G.value.left,y:F.value.sideTitles.fontSize,fill:F.value.sideTitles.useSideColor?I.value.left.color:F.value.sideTitles.color,"font-size":F.value.sideTitles.fontSize,"text-anchor":`start`,"font-weight":F.value.sideTitles.bold?`bold`:`normal`},C(N.value.translations.female),9,at),m(`text`,{x:G.value.right,y:F.value.sideTitles.fontSize,fill:F.value.sideTitles.useSideColor?I.value.right.color:F.value.sideTitles.color,"font-size":F.value.sideTitles.fontSize,"text-anchor":`end`,"font-weight":F.value.sideTitles.bold?`bold`:`normal`},C(N.value.translations.male),9,ot)])):f(``,!0),F.value.yAxis.show?(y(),p(`g`,st,[(y(!0),p(l,null,x(dn.value,(e,t)=>(y(),p(l,null,[t%F.value.yAxis.showEvery===0&&(!L.value.show||L.value.showOnHover&&k.value===t||k.value===null)||(L.value.show||L.value.showOnHover)&&k.value===t?(y(),p(`text`,{key:0,x:G.value.centerX,y:G.value.top+G.value.height/J.value/2+G.value.height/J.value*t,"dominant-baseline":`middle`,"text-anchor":`middle`,"font-size":F.value.yAxis.fontSize,fill:F.value.yAxis.color,"font-weight":F.value.yAxis.bold?`bold`:`normal`},C(w(c)(F.value.yAxis.formatter,e,w(n)({v:e}),{datapoint:e,seriesIndex:t})),9,ct)):f(``,!0)],64))),256))])):f(``,!0),F.value.xAxis.show?(y(),p(`g`,lt,[P.value.layout.grid.show?(y(),p(`g`,ut,[m(`line`,{x1:K.value.right[0].x,x2:K.value.right.at(-1).x,y1:G.value.bottom+F.value.xAxis.fontSize/2,y2:G.value.bottom+F.value.xAxis.fontSize/2,stroke:P.value.layout.grid.stroke,"stroke-width":P.value.layout.grid.strokeWidth,"stroke-linecap":`round`},null,8,dt),m(`line`,{x1:K.value.left[0].x,x2:K.value.left.at(-1).x,y1:G.value.bottom+F.value.xAxis.fontSize/2,y2:G.value.bottom+F.value.xAxis.fontSize/2,stroke:P.value.layout.grid.stroke,"stroke-width":P.value.layout.grid.strokeWidth,"stroke-linecap":`round`},null,8,ft)])):f(``,!0),(y(!0),p(l,null,x(K.value.right,(e,t)=>(y(),p(`g`,null,[P.value.layout.grid.show?(y(),p(`line`,{key:0,x1:e.x,x2:e.x,y1:G.value.bottom+F.value.xAxis.fontSize/2,y2:G.value.bottom+F.value.xAxis.fontSize/2+4,stroke:P.value.layout.grid.stroke,"stroke-width":P.value.layout.grid.strokeWidth,"stroke-linecap":`round`},null,8,pt)):f(``,!0)]))),256)),(y(!0),p(l,null,x(K.value.left,(e,t)=>(y(),p(`g`,null,[P.value.layout.grid.show?(y(),p(`line`,{key:0,x1:e.x,x2:e.x,y1:G.value.bottom+F.value.xAxis.fontSize/2,y2:G.value.bottom+F.value.xAxis.fontSize/2+4,stroke:P.value.layout.grid.stroke,"stroke-width":P.value.layout.grid.strokeWidth,"stroke-linecap":`round`},null,8,mt)):f(``,!0)]))),256)),m(`g`,{ref_key:`xAxisLabels`,ref:zt},[(y(!0),p(l,null,x(K.value.right,(e,t)=>(y(),p(`text`,{class:`vue-ui-age-pyramid-x-axis-label`,"font-size":F.value.xAxis.fontSize,fill:F.value.xAxis.color,"text-anchor":F.value.xAxis.rotation>0?`start`:F.value.xAxis.rotation<0?`end`:`middle`,"font-weight":F.value.xAxis.bold?`bold`:`normal`,transform:`translate(${e.x}, ${G.value.bottom+F.value.xAxis.fontSize*2}) rotate(${F.value.xAxis.rotation})`},C(w(c)(F.value.xAxis.formatter,e.value/F.value.xAxis.scale,w(n)({v:e.value/P.value.layout.dataLabels.xAxis.scale}),{datapoint:e,seriesIndex:t})),9,ht))),256)),(y(!0),p(l,null,x(K.value.left,(e,t)=>(y(),p(`text`,{class:`vue-ui-age-pyramid-x-axis-label`,"font-size":F.value.xAxis.fontSize,fill:F.value.xAxis.color,"text-anchor":F.value.xAxis.rotation>0?`start`:F.value.xAxis.rotation<0?`end`:`middle`,"font-weight":F.value.xAxis.bold?`bold`:`normal`,transform:`translate(${e.x}, ${G.value.bottom+F.value.xAxis.fontSize*2}) rotate(${F.value.xAxis.rotation})`},C(w(c)(F.value.xAxis.formatter,e.value/F.value.xAxis.scale,w(n)({v:e.value/P.value.layout.dataLabels.xAxis.scale}),{datapoint:e,seriesIndex:t})),9,gt))),256))],512),m(`text`,{x:G.value.right,y:W.value.height,"text-anchor":`end`,"font-size":F.value.xAxis.fontSize,fill:F.value.xAxis.color,"font-weight":F.value.xAxis.bold?`bold`:`normal`},C(F.value.xAxis.translation),9,_t)])):f(``,!0)]),(y(!0),p(l,null,x(e.dataset,(e,t)=>(y(),p(`g`,null,[m(`rect`,{x:G.value.left,y:G.value.top+G.value.height/J.value*t-I.value.gap/2,width:G.value.width<=0?1e-4:G.value.width,height:G.value.height/J.value<=0?1e-4:G.value.height/J.value,fill:k.value!==null&&k.value===t?w(a)(P.value.highlighter.color,P.value.highlighter.opacity):`transparent`,onMouseover:n=>yn(t,e,`pointer`),onMouseleave:n=>_n(t,e),onClick:n=>gn(t,e)},null,40,vt)]))),256)),S(t.$slots,`svg`,{svg:{...W.value,drawingArea:G.value,isPrintingImg:w(tn)||w(nn)||w(jn),isPrintingSvg:w(Mn)}},void 0,!0)],46,Xe)),t.$slots.hint?(y(),p(`div`,yt,[S(t.$slots,`hint`,v(_({hint:N.value.a11y.translations.keyboardNavigation,isVisible:Ut.value})),void 0,!0)])):f(``,!0)]),t.$slots.watermark?(y(),p(`div`,bt,[S(t.$slots,`watermark`,v(_({isPrinting:w(tn)||w(nn)||w(jn)||w(Mn)})),void 0,!0)])):f(``,!0),S(t.$slots,`legend`,{legend:Y.value},void 0,!0),t.$slots.source?(y(),p(`div`,{key:6,ref_key:`source`,ref:Ft,dir:`auto`},[S(t.$slots,`source`,{},void 0,!0)],512)):f(``,!0),h(w(xt),{teleportTo:P.value.tooltip.teleportTo,show:U.value.showTooltip&&O.value,backgroundColor:P.value.tooltip.backgroundColor,color:P.value.tooltip.color,borderRadius:P.value.tooltip.borderRadius,borderColor:P.value.tooltip.borderColor,borderWidth:P.value.tooltip.borderWidth,fontSize:P.value.tooltip.fontSize,backgroundOpacity:P.value.tooltip.backgroundOpacity,position:P.value.tooltip.position,offsetX:P.value.tooltip.offsetX,offsetY:P.value.tooltip.offsetY,parent:A.value,content:Mt.value,isFullscreen:Z.value,isCustom:P.value.tooltip.customFormat&&typeof P.value.tooltip.customFormat==`function`,smooth:P.value.tooltip.smooth,backdropFilter:P.value.tooltip.backdropFilter,smoothForce:P.value.tooltip.smoothForce,smoothSnapThreshold:P.value.tooltip.smoothSnapThreshold,isA11yMode:M.value===`keyboard`,a11yPosition:Ht.value},{"tooltip-before":T(()=>[S(t.$slots,`tooltip-before`,v(_({...mn.value})),void 0,!0)]),tooltip:T(()=>[S(t.$slots,`tooltip`,v(_({...mn.value})),void 0,!0)]),"tooltip-after":T(()=>[S(t.$slots,`tooltip-after`,v(_({...mn.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),jt.value&&N.value.userOptions.buttons.table?(y(),d(Ve($.value.component),Fe({key:7},$.value.props,{ref_key:`tableUnit`,ref:Bt,onClose:On}),Ne({content:T(()=>[(y(),d(w(wt),{key:`table_${Rt.value}`,colNames:X.value.colNames,head:X.value.head,body:X.value.body,config:X.value.config,title:N.value.table.useDialog?``:$.value.title,withCloseButton:!N.value.table.useDialog,isCursorPointer:R.value,onClose:On},{th:T(({th:e})=>[Pe(C(e),1)]),td:T(({td:e})=>[Pe(C(e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[N.value.table.useDialog?{name:`title`,fn:T(()=>[Pe(C($.value.title),1)]),key:`0`}:void 0,N.value.table.useDialog?{name:`actions`,fn:T(()=>[m(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:r[0]||=e=>bn(N.value.userOptions.callbacks.csv),style:Re({cursor:R.value?`pointer`:`default`})},[h(w(St),{name:`fileCsv`,stroke:$.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):f(``,!0),S(t.$slots,`skeleton`,{},()=>[w(Gt)?(y(),d(ue,{key:0})):f(``,!0)],!0)],46,qe))}},[[`__scopeId`,`data-v-ce0de65b`]]);export{Ke as n,xt as t};
@@ -1,34 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,Ft as r,S as i,X as a,_ as ee,at as te,i as o,in as ne,t as re,yt as ie,zt as ae}from"./lib-DqD8nbyX.js";import{n as oe,t as se}from"./BaseScanner-8NdoBs7B.js";import{n as ce}from"./useHints-BH9r_0Vd.js";import{t as le}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as ue}from"./resolveChartConfig-ChGWTt5l.js";import{t as de}from"./chartImage-r-G4CkRK.js";import{n as fe}from"./Title-BLA0tM3g.js";import{t as pe}from"./useChartExport-DtPNpc9M.js";import{n as me,t as he}from"./annotationSlots-BRR85CqJ.js";import{n as ge,t as _e}from"./userOptionsSlots-DYuo-E5m.js";import{t as ve}from"./usePrinter-Cj4eIYC_.js";import{l as ye,t as be}from"./useResponsive-D2CPcpda.js";import{t as xe}from"./useUserOptionState-CXlFnwPv.js";import{t as Se}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ce}from"./Legend-D8NunRPr.js";import{t as we}from"./vue_ui_bullet-CwVYkpjd.js";import{Fragment as s,Teleport as Te,computed as c,createBlock as l,createCommentVNode as u,createElementBlock as d,createElementVNode as f,createSlots as Ee,createVNode as De,defineAsyncComponent as p,guardReactiveProps as m,normalizeClass as Oe,normalizeProps as h,normalizeStyle as g,onBeforeUnmount as ke,onMounted as Ae,openBlock as _,ref as v,renderList as y,renderSlot as b,toDisplayString as x,toRefs as je,unref as S,watch as Me,withCtx as C}from"vue";var Ne=/* @__PURE__ */ e({default:()=>w}),Pe=[`id`],Fe={key:1,ref:`noTitle`,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},Ie=[`id`],Le=[`xmlns`,`viewBox`,`aria-labelledby`,`aria-describedby`],Re=[`id`],ze=[`id`],Be=[`width`,`height`],Ve={key:1},He=[`x`,`y`,`height`,`width`,`fill`,`stroke`],Ue=[`x`,`y`,`height`,`width`,`rx`,`fill`,`stroke`,`stroke-width`],We=[`x`,`y`,`height`,`width`,`fill`,`stroke`,`stroke-width`],Ge=[`x`,`y`,`font-size`,`font-weight`,`fill`],Ke=[`x`,`y`,`height`,`width`,`rx`,`fill`,`stroke`,`stroke-width`],qe={key:3},Je=[`x`,`y`,`fill`,`font-size`,`font-weight`],Ye={key:4},Xe=[`x1`,`x2`,`y1`,`y2`,`stroke`],Ze={key:4,class:`vue-data-ui-watermark`},Qe=[`id`],$e={key:0,class:`vue-ui-bullet-legend-item`,dir:`auto`},et={style:{"margin-right":`2px`}},w=/*#__PURE__*/ le({__name:`vue-ui-bullet`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:le,emit:Ne}){let w=p(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),tt=p(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),nt=p(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),{vue_ui_bullet:rt}=t(),T=e,it=Ne,E=v(null),at=v(null),ot=v(0),st=v(null),ct=v(null),lt=v(0),D=v(null),O=v(null),ut=v(!1),k=c({get:()=>B.value.hasOwnProperty(`value`),set:e=>e}),A=v(R()),j=c(()=>A.value.debug),M=c(()=>A.value.style.chart.target),N=c(()=>A.value.style.chart.segments),P=c(()=>A.value.style.chart),F=c(()=>A.value.userOptions),I=c(()=>B.value.segments?Array.isArray(B.value.segments)?B.value.segments.length?!0:(j.value&&console.warn(`VueUiBullet: dataset segments is empty. Provide segments with this datastructure:
2
-
3
- segments: [
4
- {
5
- name: string;
6
- from: number;
7
- to: number;
8
- color?: string;
9
- },
10
- {...}
11
- ]
12
- `),k.value=!1,!1):(j.value&&console.warn(`VueUiBullet: dataset segments must be an array of objects with this datastructure:
13
-
14
- segments: [
15
- {
16
- name: string;
17
- from: number;
18
- to: number;
19
- color?: string;
20
- },
21
- {...}
22
- ]
23
- `),k.value=!1,!1):(j.value&&console.warn(`VueUiBullet: dataset segments is empty. Provide segments with this datastructure:
24
-
25
- segments: [
26
- {
27
- name: string;
28
- from: number;
29
- to: number;
30
- color?: string;
31
- },
32
- {...}
33
- ]
34
- `),k.value=!1,!1)),dt=c(()=>{let{top:e,right:t,bottom:n,left:r}=P.value.padding;return{top:e,right:t,bottom:n,left:r}});function ft(){if(ae(B.value)?(te({componentName:`VueUiBullet`,type:`dataset`,debug:j.value}),V.value=!0):I.value?B.value.segments.forEach((e,t)=>{ie({datasetObject:e,requiredAttributes:[`name`,`from`,`to`]}).forEach(e=>{k.value=!1,te({componentName:`VueUiBullet segment`,type:`datasetSerieAttribute`,property:e,index:t,debug:j.value})})}):(k.value=!1,V.value=!0),ae(B.value)||(V.value=A.value.loading),A.value.responsive){let e=ye(()=>{let{width:e,height:t}=be({chart:E.value,title:P.value.title.text?at.value:null,legend:P.value.legend.show?st.value:null,source:ct.value,padding:dt.value}),n=(P.value.legend.show?24:0)||12;requestAnimationFrame(()=>{W.value.width=e,W.value.height=t-n})});D.value&&(O.value&&D.value.unobserve(O.value),D.value.disconnect()),D.value=new ResizeObserver(e),O.value=E.value.parentNode,D.value.observe(O.value)}P.value.animation.show&&!z.value&&St(B.value.value||0)}Ae(()=>{ut.value=!0,ft()});let L=v(a());function R(){return ue(T.config,rt,we)}ce({config:()=>A.value,dataset:()=>T.dataset,component:`VueUiBullet`,rules:[{test:e=>e?.segments&&e?.segments.length>8,message:[`👀 The number of target segments is > 8, which can make the chart hard to read and a large legend. Consider:`,``,`▶️ Using broader segments.`]}]});let pt=c(()=>A.value.userOptions.useCursorPointer),mt=c(()=>ne({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,segments:{dataLabels:{show:!1},ticks:{stroke:`#8A8A8A`}},valueBar:{label:{show:!1}}}}},userConfig:A.value.skeletonConfig??{}})),{loading:z,FINAL_DATASET:B,manualLoading:V}=oe({...je(T),FINAL_CONFIG:A,prepareConfig:R,skeletonDataset:T.config?.skeletonDataset??{value:100,target:100,segments:[{name:``,from:0,to:33,color:`#AAAAAA`},{name:``,from:33,to:66,color:`#BABABA`},{name:``,from:66,to:100,color:`#CACACA`}]},skeletonConfig:ne({defaultConfig:A.value,userConfig:mt.value})}),{userOptionsVisible:H,setUserOptionsVisibility:ht,keepUserOptionState:gt}=xe({config:A.value}),{svgRef:U}=Se({config:P.value.title}),W=v({width:P.value.width,height:P.value.height}),_t=c(()=>W.value.width),vt=c(()=>W.value.height);Me(()=>T.config,e=>{z.value||(A.value=R()),H.value=!A.value.userOptions.showOnChartHover,W.value.width=P.value.width,W.value.height=P.value.height,ft(),ot.value+=1},{deep:!0});let G=c(()=>{let e=vt.value,t=_t.value,n=P.value.padding.left,r=t-P.value.padding.right,i=P.value.padding.top,a=e-P.value.padding.bottom;return{height:Math.max(.001,e),width:Math.max(.001,t),left:n,right:r,top:i,bottom:a,chartWidth:Math.max(.001,r-n),chartHeight:Math.max(.001,a-i)}}),yt=c(()=>{if(!I.value)return[];let e=[];for(let t=0;t<B.value.segments.length;t+=1)e.push(r(N.value.baseColor,t/B.value.segments.length));return e}),K=c(()=>I.value?{min:Math.min(...B.value.segments.map(e=>e.from)),max:Math.max(...B.value.segments.map(e=>e.to))}:{min:0,max:1}),q=v(bt());Me(()=>B.value,e=>{e.hasOwnProperty(`value`)&&(V.value=!1),P.value.animation.show&&!z.value?St(e.value||0):q.value=e.value||0},{deep:!0});function bt(){return P.value.animation.show&&!z.value?K.value.min:B.value.value||0}let xt=v(null);function St(e){let t=Math.abs(e-q.value)/P.value.animation.animationFrames;function n(){q.value<e?q.value=Math.min(q.value+t,e):q.value>e&&(q.value=Math.max(q.value-t,e)),q.value!==e&&(xt.value=requestAnimationFrame(n))}n()}ke(()=>{cancelAnimationFrame(xt.value)});let J=c(()=>{if(!I.value)return[];let e=ee(K.value.min,K.value.max,N.value.ticks.divisions),t=e.min>=0?0:Math.abs(e.min);return{scale:e,target:{x:G.value.left+(B.value.target+t)/(e.max+t)*G.value.chartWidth-M.value.width/2},value:{width:(q.value+t)/(e.max+t)*G.value.chartWidth},ticks:e.ticks.map(n=>({value:n,y:G.value.bottom+N.value.dataLabels.fontSize+3+N.value.dataLabels.offsetY,x:G.value.left+(n+t)/(e.max+t)*G.value.chartWidth})),chunks:B.value.segments.map((n,r)=>({...n,color:n.color?i(n.color):yt.value[r],x:G.value.left+G.value.chartWidth*((n.from+t)/(e.max+t)),y:G.value.top,height:G.value.chartHeight,width:G.value.chartWidth*(Math.abs(n.to-n.from)/(e.max+t))}))}}),Y=c(()=>!J.value||!J.value.chunks||!J.value.chunks.length?[]:J.value.chunks.map(e=>{let t=`${o(N.value.dataLabels.formatter,e.from,n({p:N.value.dataLabels.prefix,v:e.from,s:N.value.dataLabels.suffix,r:N.value.dataLabels.rounding}))} — ${o(N.value.dataLabels.formatter,e.to,n({p:N.value.dataLabels.prefix,v:e.to,s:N.value.dataLabels.suffix,r:N.value.dataLabels.rounding}))}`;return{...e,shape:`square`,value:t,display:`${e.name}: ${t}`}})),Ct=c(()=>({cy:`bullet-div-legend`,backgroundColor:`transparent`,color:P.value.legend.color,fontSize:P.value.legend.fontSize,paddingBottom:6,fontWeight:P.value.legend.bold?`bold`:``})),{isPrinting:X,isImaging:Z,generatePdf:wt,generateImage:Tt}=ve({elementId:`bullet_${L.value}`,fileName:P.value.title.text||`vue-ui-bullet`,options:A.value.userOptions.print}),Et=c(()=>A.value.userOptions.show&&!P.value.title.text),Q=v(!1);function Dt(e){Q.value=e,lt.value+=1}function Ot(){return J.value}let $=v(!1);function kt(){$.value=!$.value}let At=de(E,()=>P.value.title.text),jt=c(()=>Y.value.map(e=>({...e,name:e.display}))),Mt=c(()=>P.value.backgroundColor),Nt=c(()=>P.value.legend),Pt=c(()=>P.value.title),{isCallbackImaging:Ft,isCallbackSvg:It,generateSvg:Lt,onGenerateImage:Rt}=pe({svg:U,title:Pt,legend:Nt,legendItems:jt,backgroundColor:Mt,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Tt});async function zt(){if(it(`copyAlt`,{config:A.value,dataset:B.value}),!A.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:B.value}))}return le({getData:Ot,getImage:At,generatePdf:wt,generateImage:Tt,generateSvg:Lt,toggleAnnotator:kt,toggleFullscreen:Dt,copyAlt:zt}),(e,t)=>(_(),d(`div`,{ref_key:`bulletChart`,ref:E,class:Oe(`vue-data-ui-component vue-ui-bullet ${Q.value?`vue-data-ui-wrapper-fullscreen`:``}`),style:g(`font-family:${A.value.style.fontFamily};width:100%;background:${P.value.backgroundColor};${A.value.responsive?`height:100%`:``}`),id:`bullet_${L.value}`,onMouseenter:t[0]||=()=>S(ht)(!0),onMouseleave:t[1]||=()=>S(ht)(!1)},[F.value.buttons.annotator?(_(),l(S(tt),{key:0,svgRef:S(U),backgroundColor:P.value.backgroundColor,color:P.value.color,active:$.value,isCursorPointer:pt.value,palette:F.value.annotatorPalette,onClose:kt},Ee({_:2},[y(S(he),t=>({name:t,fn:C(n=>[b(e.$slots,t,h(m(S(me)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):u(``,!0),Et.value?(_(),d(`div`,Fe,null,512)):u(``,!0),P.value.title.text?(_(),d(`div`,{key:2,ref_key:`chartTitle`,ref:at,style:`width:100%;background:transparent;`},[(_(),l(fe,{lineHeight:`1.3rem`,key:`title_${ot.value}`,config:{title:{cy:`bullet-div-title`,...P.value.title},subtitle:{cy:`bullet-div-subtitle`,...P.value.title.subtitle}}},null,8,[`config`]))],512)):u(``,!0),f(`div`,{id:`legend-top-${L.value}`},null,8,Ie),F.value.show&&k.value&&(S(gt)||S(H))?(_(),l(S(nt),{key:3,ref:`details`,backgroundColor:P.value.backgroundColor,color:P.value.color,isPrinting:S(X),isImaging:S(Z),uid:L.value,hasTooltip:!1,hasPdf:F.value.buttons.pdf,hasImg:F.value.buttons.img,hasSvg:F.value.buttons.svg,hasXls:!1,hasTable:!1,hasLabel:!1,hasFullscreen:F.value.buttons.fullscreen,hasAltCopy:F.value.buttons.altCopy,isFullscreen:Q.value,chartElement:E.value,position:F.value.position,titles:{...F.value.buttonTitles},hasAnnotator:F.value.buttons.annotator,isAnnotation:$.value,callbacks:F.value.callbacks,printScale:F.value.print.scale,isCursorPointer:pt.value,onToggleFullscreen:Dt,onGeneratePdf:S(wt),onGenerateImage:S(Rt),onGenerateSvg:S(Lt),onToggleAnnotator:kt,onCopyAlt:zt,style:g({visibility:S(gt)?S(H)?`visible`:`hidden`:`visible`})},Ee({_:2},[y(S(ge)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:C(n=>[b(e.$slots,t,h(m(S(_e)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`chartElement`,`position`,`titles`,`hasAnnotator`,`isAnnotation`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):u(``,!0),(_(),d(`svg`,{ref_key:`svgRef`,ref:U,xmlns:S(re),class:Oe({"vue-data-ui-fullscreen--on":Q.value,"vue-data-ui-fulscreen--off":!Q.value,"vue-ui-bullet-svg":!0}),viewBox:`0 0 ${G.value.width} ${G.value.height}`,style:g(`width: 100%; overflow: visible; background:transparent;color:${P.value.color}`),"aria-labelledby":`bullet-svg-title-${L.value}`,"aria-describedby":`bullet-svg-desc-${L.value}`},[De(S(w)),f(`title`,{id:`bullet-svg-title-${L.value}`},x(P.value.title.text||`Bullet chart`),9,Re),f(`desc`,{id:`bullet-svg-desc-${L.value}`},` Value: `+x(q.value)+`, Target: `+x(J.value.target?.value),9,ze),e.$slots[`chart-background`]?(_(),d(`foreignObject`,{key:0,x:0,y:0,width:G.value.width,height:G.value.height,style:{pointerEvents:`none`}},[b(e.$slots,`chart-background`,{},void 0,!0)],8,Be)):u(``,!0),I.value?(_(),d(`g`,Ve,[(_(!0),d(s,null,y(J.value.chunks,e=>(_(),d(`rect`,{x:e.x,y:e.y,height:e.height,width:e.width,fill:e.color,"stroke-width":1,stroke:P.value.backgroundColor,style:{transition:`x 0.3s ease-in-out, width 0.3s ease-in-out`}},null,8,He))),256)),!M.value.onTop&&M.value.show?(_(),d(`rect`,{key:0,x:J.value.target.x,y:G.value.top+(G.value.chartHeight-G.value.chartHeight*M.value.heightRatio)/2,height:G.value.chartHeight*M.value.heightRatio,width:M.value.width,rx:M.value.rounded?M.value.width/2:0,fill:M.value.color,stroke:M.value.stroke,"stroke-width":M.value.strokeWidth},null,8,Ue)):u(``,!0),f(`rect`,{x:G.value.left,y:G.value.top+(G.value.chartHeight-G.value.chartHeight*P.value.valueBar.heightRatio)/2,height:G.value.chartHeight*P.value.valueBar.heightRatio,width:J.value.value.width,fill:P.value.valueBar.color,stroke:P.value.valueBar.stroke,"stroke-width":P.value.valueBar.strokeWidth},null,8,We),P.value.valueBar.label.show?(_(),d(`text`,{key:1,x:G.value.left+J.value.value.width,y:G.value.top-6+P.value.valueBar.label.offsetY,"font-size":P.value.valueBar.label.fontSize,"font-weight":P.value.valueBar.label.bold?`bold`:`normal`,fill:P.value.valueBar.label.color,"text-anchor":`middle`},x(S(o)(N.value.dataLabels.formatter,q.value,S(n)({p:N.value.dataLabels.prefix,v:q.value,s:N.value.dataLabels.suffix,r:N.value.dataLabels.rounding}))),9,Ge)):u(``,!0),M.value.onTop&&M.value.show?(_(),d(`rect`,{key:2,x:J.value.target.x,y:G.value.top+(G.value.chartHeight-G.value.chartHeight*M.value.heightRatio)/2,height:G.value.chartHeight*M.value.heightRatio,width:M.value.width,rx:M.value.rounded?M.value.width/2:0,fill:M.value.color,stroke:M.value.stroke,"stroke-width":M.value.strokeWidth,style:{transition:`x 0.3s ease-in-out`}},null,8,Ke)):u(``,!0),N.value.dataLabels.show?(_(),d(`g`,qe,[(_(!0),d(s,null,y(J.value.ticks,e=>(_(),d(`text`,{x:e.x,y:e.y,"text-anchor":`middle`,fill:N.value.dataLabels.color,"font-size":N.value.dataLabels.fontSize+`px`,"font-weight":N.value.dataLabels.bold?`bold`:`normal`},x(S(o)(N.value.dataLabels.formatter,e.value,S(n)({p:N.value.dataLabels.prefix,v:e.value,s:N.value.dataLabels.suffix,r:N.value.dataLabels.rounding}))),9,Je))),256))])):u(``,!0),N.value.dataLabels.show&&N.value.ticks.show?(_(),d(`g`,Ye,[(_(!0),d(s,null,y(J.value.ticks,e=>(_(),d(`line`,{x1:e.x,x2:e.x,y1:G.value.bottom,y2:G.value.bottom+3,stroke:N.value.ticks.stroke,"stroke-width":1,"stroke-linecap":`round`},null,8,Xe))),256))])):u(``,!0)])):u(``,!0),b(e.$slots,`svg`,{svg:{...G.value,isPrintingImg:S(X)||S(Z)||S(Ft),isPrintingSvg:S(It)}},void 0,!0)],14,Le)),e.$slots.watermark?(_(),d(`div`,Ze,[b(e.$slots,`watermark`,h(m({isPrinting:S(X)||S(Z)||S(Ft)||S(It)})),void 0,!0)])):u(``,!0),f(`div`,{id:`legend-bottom-${L.value}`},null,8,Qe),ut.value&&(P.value.legend.show||e.$slots.legend)?(_(),l(Te,{key:5,to:P.value.legend.position===`top`?`#legend-top-${L.value}`:`#legend-bottom-${L.value}`},[f(`div`,{ref_key:`chartLegend`,ref:st},[b(e.$slots,`legend`,{legend:Y.value},()=>[P.value.legend.show?(_(),l(Ce,{key:0,clickable:!1,legendSet:Y.value,config:Ct.value},{item:C(({legend:e})=>[S(z)?u(``,!0):(_(),d(`div`,$e,[f(`span`,et,x(e.name)+`:`,1),f(`span`,null,x(e.value),1)]))]),_:1},8,[`legendSet`,`config`])):u(``,!0)],!0)],512)],8,[`to`])):u(``,!0),e.$slots.source?(_(),d(`div`,{key:6,ref_key:`source`,ref:ct,dir:`auto`},[b(e.$slots,`source`,{},void 0,!0)],512)):u(``,!0),b(e.$slots,`skeleton`,{},()=>[S(z)?(_(),l(se,{key:0})):u(``,!0)],!0)],46,Pe))}},[[`__scopeId`,`data-v-3432ada7`]]);export{Ne as n,w as t};
@@ -1,10 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,At as r,D as i,Ht as a,J as o,P as s,S as c,U as l,X as u,at as ee,c as te,i as ne,in as re,nn as ie,nt as ae,r as oe,t as se,w as ce,yt as le,zt as ue}from"./lib-DqD8nbyX.js";import{n as de,t as fe}from"./BaseScanner-8NdoBs7B.js";import{n as pe,t as me}from"./useHints-BH9r_0Vd.js";import{t as he}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as ge}from"./useNestedProp-DrLnzyHO.js";import{t as _e}from"./useThemeCheck-BKNRbGeC.js";import{t as ve}from"./chartImage-r-G4CkRK.js";import{n as ye}from"./Title-BLA0tM3g.js";import{t as be}from"./useChartExport-DtPNpc9M.js";import{n as xe,t as Se}from"./tableIntegration-CNoJ1CIY.js";import{n as Ce,t as we}from"./annotationSlots-BRR85CqJ.js";import{n as Te,t as Ee}from"./userOptionsSlots-DYuo-E5m.js";import{t as De}from"./useTimeLabels-Das5O74F.js";import{t as Oe}from"./usePrinter-Cj4eIYC_.js";import{t as ke}from"./useTimeLabelCollider-XQf_S7-z.js";import{l as Ae,t as je}from"./useResponsive-D2CPcpda.js";import{t as Me}from"./A11yDataTable-DWNlWXzs.js";import{t as Ne}from"./useUserOptionState-CXlFnwPv.js";import{t as Pe}from"./useChartAccessibility-DOMuYJfm.js";import{t as Fe}from"./vue_ui_bump-KJL9GYr4.js";import{t as Ie}from"./BaseDraggableDialog-Bw_azO0n.js";import{Fragment as d,computed as f,createBlock as p,createCommentVNode as m,createElementBlock as h,createElementVNode as g,createSlots as Le,createTextVNode as Re,createVNode as ze,defineAsyncComponent as _,guardReactiveProps as Be,mergeProps as Ve,normalizeClass as He,normalizeProps as Ue,normalizeStyle as v,onBeforeUnmount as We,onMounted as Ge,openBlock as y,ref as b,renderList as x,renderSlot as S,resolveDynamicComponent as Ke,shallowRef as qe,toDisplayString as C,toRefs as Je,unref as w,watch as Ye,watchEffect as Xe,withCtx as T}from"vue";var Ze=/* @__PURE__ */ e({default:()=>_t}),Qe=[`id`],$e=[`id`],et={style:{position:`relative`}},tt=[`xmlns`,`aria-describedby`,`viewBox`],nt=[`x`,`y`,`width`,`height`],rt=[`d`,`stroke`,`stroke-width`,`onMouseenter`],it=[`d`,`stroke`,`stroke-width`,`onMouseenter`,`onMouseleave`,`onClick`],at=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`,`onMouseenter`,`onMouseleave`,`onClick`],ot=[`x`,`y`,`fill`,`font-size`],st=[`onMouseenter`,`onMouseleave`,`onClick`],ct=[`x`,`y`,`fill`,`font-size`],lt=[`x`,`y`,`fill`,`font-size`,`font--weight`,`innerHTML`,`onMouseenter`,`onMouseleave`,`onClick`],ut=[`x`,`y`,`fill`,`font-size`,`font--weight`,`innerHTML`,`onMouseenter`,`onMouseleave`,`onClick`],dt={key:0},ft={key:1},pt=[`text-anchor`,`font-size`,`font-weight`,`fill`,`stroke`,`transform`],mt=[`text-anchor`,`font-size`,`fill`,`transform`,`innerHTML`],ht={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},gt={key:5,class:`vue-data-ui-watermark`},_t=/*#__PURE__*/ he({__name:`vue-ui-bump`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:he,emit:Ze}){let _t=_(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),vt=_(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),yt=_(()=>import(`./DataTable-BcVZLSs8.js`)),bt=_(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),xt=_(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),St=_(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),{vue_ui_bump:Ct}=t(),{isThemeValid:wt,warnInvalidTheme:Tt}=_e(),E=e,Et=Ze,Dt=f({get(){return!!E.dataset&&E.dataset.length},set(e){return e}}),D=b(null),O=b(u()),Ot=b(0),kt=b(null),At=b(null),jt=b(null),Mt=b(!1),Nt=b(!1),Pt=b(0),Ft=b(0),It=b(null),Lt=b(null),Rt=b(!1),k=b(null),zt=b(null),Bt=b(null),Vt=b(null),A=b(null),Ht=b(!1),j=b(qt()),M=f(()=>j.value.style.chart.layout.plots),N=f(()=>j.value.style.chart.layout),P=f(()=>j.value.style.chart),F=f(()=>j.value.userOptions);pe({config:()=>j.value,dataset:()=>E.dataset,component:`VueUiBump`,rules:[me.emptyArray,{test:e=>e.length>31,message:[`👀 The number of series > 31. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display`,``,`▶️ Use several instances of the component to show related series`]},{test:e=>e.length===1,message:[`👀 There is only 1 series in your dataset. Consider:`,``,`▶️ Using a line chart, with VueUiXy.`]},{test:e=>e.some(e=>e.values.length>31),message:[`👀 Some series contain > 31 data points, which can make the chart hard to read. Consider:`,``,`▶️ Use filters to show less data points at a time.`,``,`▶️ Use larger time scales, or aggregated values.`]}]});let I=f(()=>j.value.userOptions.useCursorPointer),Ut=f(()=>re({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,layout:{timeLabels:{show:!1},lines:{coatingColor:`#4A4A4A`},plots:{stroke:`#4A4A4A`,labels:{show:!1,displayedValue:`rank`}},nameLabels:{useSerieColor:!0}}}}},userConfig:j.value.skeletonConfig??{}})),{loading:Wt,FINAL_DATASET:Gt,manualLoading:Kt}=de({...Je(E),FINAL_CONFIG:j,prepareConfig:qt,skeletonDataset:E.config?.skeletonDataset??[{name:`————`,values:[1,1,1,2,2,2,3,3,2,2],color:`#4A4A4A`},{name:`————`,values:[2,2,2,1,3,3,2,2,3,3],color:`#6A6A6A`},{name:`————`,values:[3,3,3,3,1,1,1,1,1,1],color:`#8A8A8A`}],skeletonConfig:re({defaultConfig:j.value,userConfig:Ut.value})});Ge(cn);function qt(){let e=ge({userConfig:E.config,defaultConfig:Ct}),t={},n=e.theme;if(n){if(!wt.value(e))Tt(e),t=e;else{let r=ge({userConfig:Fe[n]||E.config,defaultConfig:e});t={...ge({userConfig:E.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:ie[n]||a}}}else t=e;return t}let{userOptionsVisible:Jt,setUserOptionsVisibility:Yt,keepUserOptionState:Xt}=Ne({config:j.value}),{svgRef:L}=Pe({config:P.value.title});function Zt(){Rt.value=!0,Yt(!0)}function Qt(){Yt(!1),Rt.value=!1}let R=b({showTable:j.value.table.show});Ye(j,()=>{R.value={showTable:j.value.table.show}},{immediate:!0}),Ye(()=>E.config,e=>{Wt.value||(j.value=qt()),Jt.value=!j.value.userOptions.showOnChartHover,cn(),Pt.value+=1,Ft.value+=1,R.value.showTable=j.value.table.show,z.value.width=P.value.width,z.value.height=P.value.height,z.value.paddingRatio={top:P.value.padding.top/P.value.height,right:P.value.padding.right/P.value.width,bottom:P.value.padding.bottom/P.value.height,left:P.value.padding.left/P.value.width}}),Ye(()=>E.dataset,e=>{Array.isArray(e)&&e.length>0&&(Kt.value=!1)},{deep:!0});let{isPrinting:$t,isImaging:en,generatePdf:tn,generateImage:nn}=Oe({elementId:`bump_${O.value}`,fileName:P.value.title.text||`vue-ui-bump`,options:j.value.userOptions.print}),rn=f(()=>j.value.userOptions.show&&!P.value.title.text),z=b({width:P.value.width,height:P.value.height,paddingRatio:{top:P.value.padding.top/P.value.height,right:P.value.padding.right/P.value.width,bottom:P.value.padding.bottom/P.value.height,left:P.value.padding.left/P.value.width}}),an=f(()=>ce(j.value.customPalette)),B=qe(null),V=qe(null),on=b(null),sn=f(()=>j.value.debug);function cn(){if(ue(E.dataset)?(ee({componentName:`VueUiBump`,type:`dataset`,debug:sn.value}),Kt.value=!0):E.dataset.forEach((e,t)=>{le({datasetObject:e,requiredAttributes:[`name`,`values`]}).forEach(e=>{Dt.value=!1,ee({componentName:`VueUiBump`,type:`datasetSerieAttribute`,property:e,index:t,debug:sn.value}),Kt.value=!0})}),ue(E.dataset)||(Kt.value=j.value.loading),setTimeout(()=>{Nt.value=!0},10),j.value.responsive){let e=Ae(()=>{Nt.value=!1;let{width:e,height:t}=je({chart:D.value,noTitle:At.value,title:P.value.title.text?kt.value:null,legend:null,slicer:null,source:jt.value});requestAnimationFrame(()=>{z.value.width=e,z.value.height=t-12,clearTimeout(on.value),on.value=setTimeout(()=>{Nt.value=!0},10)})});B.value&&(V.value&&B.value.unobserve(V.value),B.value.disconnect()),B.value=new ResizeObserver(e),V.value=D.value.parentNode,B.value.observe(V.value)}}We(()=>{B.value&&(V.value&&B.value.unobserve(V.value),B.value.disconnect())});let ln=f(()=>Gt.value.map((e,t)=>{let n=c(e.color)||an.value[t]||a[t]||a[t%a.length];return{...e,absoluteIndex:t,id:u(),color:n}})),H=f(()=>Math.max(...ln.value.map(e=>e.values.length)));function un(e){let t=e.map(()=>Array(H.value).fill(null));for(let n=0;n<H.value;n+=1){let r=e.map((e,r)=>({seriesIndex:r,value:e.values?.[n],previousPosition:n>0?t[r][n-1]:r})).filter(e=>Number.isFinite(e.value));r.sort((e,t)=>t.value===e.value?e.previousPosition-t.previousPosition:t.value-e.value);for(let e=0;e<r.length;e+=1){let i=r[e];t[i.seriesIndex][n]=e}}return t}function dn(){let e=0;return zt.value&&(e=Array.from(zt.value.querySelectorAll(`tspan`)).reduce((e,t)=>{let n=t.getComputedTextLength();return n>e?n:e},0)),e}function fn(){let e=0;return Bt.value&&(e=Array.from(Bt.value.querySelectorAll(`tspan`)).reduce((e,t)=>{let n=t.getComputedTextLength();return n>e?n:e},0)),e}let pn=b(0),mn=Ae(e=>{pn.value=e},100);Xe(e=>{let t=Vt.value;if(!t)return;let n=new ResizeObserver(e=>{mn(e[0].contentRect.height)});n.observe(t),e(()=>n.disconnect())}),We(()=>{pn.value=0});let hn=f(()=>{let e=N.value.timeLabels;if(!e.show)return 0;let t=e.fontSize,n=e.rotation,r=Math.PI/180*n,i=K.value||[];if(!i.length)return 0;let a=i.reduce((e,t)=>{let n=String(t?.text??``).split(`
2
- `).length;return Math.max(e,n)},1),o=i.reduce((e,t)=>{let n=String(t?.text??``).split(`
3
- `).reduce((e,t)=>Math.max(e,t.length),0);return Math.max(e,n)},0),s=t*1.3*a,c=o*t*(o===1?1:.6),l=Math.abs(Math.sin(r))*c+Math.abs(Math.cos(r))*s,u=t*.3;return Math.max(0,l+Math.abs(e.offsetY)+u)}),U=f(()=>{let{height:e,width:t}=z.value,{right:n,left:r}=z.value.paddingRatio,i=dn(),a=fn(),o=P.value.padding.top,s=t-t*n-a,c=t*r+i,l=t-t*n-t*r-i-a,u=e-o-P.value.padding.bottom-hn.value,ee=o+u,te=o+u,ne=Math.max(0,e);return{chartHeight:te,chartWidth:Math.max(0,t),top:o,right:Math.max(0,s),bottom:Math.max(0,ee),left:Math.max(0,c),width:Math.max(0,l),height:Math.max(0,u),unitH:Math.max(0,u)/ln.value.length,unitW:Math.max(0,l)/H.value,svgHeight:ne}}),W=f(()=>{if(!Dt.value&&!Wt.value)return[];let e=un(ln.value);return ln.value.map((t,n)=>({...t,positions:e[n]})).map(e=>{let t=e.positions.map((t,r)=>{let i=ne(M.value.labels.formatter,e.values[r],n({p:M.value.labels.prefix,v:e.values[r],s:M.value.labels.suffix,r:M.value.labels.rounding}));return{name:e.name,id:e.id,x:U.value.left+r*U.value.unitW+U.value.unitW/2,y:U.value.top+t*U.value.unitH+U.value.unitH/2,value:e.values[r],displayValue:i,rank:e.positions[r]+1,color:e.color,labelColor:M.value.labels.color===`auto`?oe(e.color):c(M.value.labels.color)??oe(e.color)}}),i=t.filter(e=>r(e.value)),a=N.value.lines.smooth?s(i):l(i);return{...e,coordinates:t,path:a}})});f(()=>W.value.flatMap((e,t)=>e.coordinates.map((n,r)=>({...n,pointIndex:r,seriesIndex:t,seriesId:e.id,seriesName:e.name,pointId:`${e.id}_${r}`})).filter(e=>r(e.value))));function gn(e,t,n,r){let i=e.toSorted((e,t)=>e.y-t.y);for(let e=1;e<i.length;e+=1){let n=i[e-1],r=i[e];r.y<n.y+t&&(r.y=n.y+t)}let a=i.length-1;if(a>=0&&i[a].y>r){i[a].y=r;for(let e=a-1;e>=0;--e){let n=i[e+1],r=i[e];r.y>n.y-t&&(r.y=n.y-t)}}if(i.length&&i[0].y<n){let e=n-i[0].y;for(let t=0;t<i.length;t+=1)i[t].y+=e}return i}let _n=f(()=>{let e=[],t=[];W.value.forEach(n=>{let r=n.coordinates.filter(e=>Number.isFinite(e.rank));if(!r.length)return;e.push({...r[0]});let i=r[r.length-1];t.push({...i})});let n=N.value.nameLabels.fontSize,r=n*1.4,i=U.value.top+n,a=U.value.bottom-n,o=gn(t,r,i,a);return{left:gn(e,r,i,a),right:o}});function vn(e){let t=M.value.labels.fontSize*.4,n=e.displayValue,r=n.length*(M.value.labels.fontSize*(n.length===1?1:.6)),i=M.value.labels.fontSize,a=r+t*2,o=i+t*2,s=e.x-a/2,c=e.y-o/2,l=M.value.strokeWidth;return{x:s-l/2,y:c-l/2,width:a+l,height:o+l,fill:e.color,stroke:M.value.stroke,"stroke-width":l,rx:o/2}}let G=b([]),yn=0;Xe(()=>{let e=++yn,t=N.value.timeLabels,n=t.values,r=t.datetimeFormatter,i=H.value;if(!i||!Array.isArray(n)||n.length===0){G.value=[];return}(async()=>{let t=await De({values:n,maxDatapoints:i,formatter:r,start:0,end:i});e===yn&&(G.value=t)})()});let K=f(()=>{let e=N.value.timeLabels,t=G.value||[],n=G.value||[],r=H.value,i=t.map(e=>e?.text??``),a=n.map(e=>e?.text??``);return te(!!e.showOnlyFirstAndLast,!!e.showOnlyAtModulo,Math.max(1,Number(e.modulo)||1),i,a,0,null,r)}),bn=f(()=>z.value.width),xn=f(()=>z.value.height),Sn=f(()=>({start:0,end:H.value})),q=f(()=>[...W.value].map(e=>{let t=[...e.coordinates].filter(e=>r(e.value)).at(-1);return{...e,navigationRank:t?.rank??1/0}}).sort((e,t)=>e.navigationRank-t.navigationRank));function Cn(){A.value=null,Ht.value=!0}function wn(){En(),Ht.value=!1}function Tn(e,t){let n=q.value.length;return n?e===null||e<0||e>=n?0:t===`previous`?(e-1+n)%n:(e+1)%n:null}function En(){if(A.value!==null){let e=q.value[A.value];e&&$(e,e)}A.value=null,k.value=null}function Dn(e){if(!L.value||Y.value||document.activeElement!==L.value||!q.value.length)return;let t=[`ArrowLeft`,`ArrowUp`].includes(e.key),n=[`ArrowRight`,`ArrowDown`].includes(e.key),r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){En();return}if(r){if(A.value===null)return;let e=q.value[A.value];if(!e)return;Vn(e,e);return}let a=A.value;a===null?a=0:t?a=Tn(a,`previous`):n&&(a=Tn(a,`next`));let o=q.value[a];o&&(A.value=a,Q(o,o))}let J=f(()=>({head:Z.value.head,body:W.value.map(e=>[e.name,...e.coordinates.map(e=>r(e.value)?`${e.displayValue} (${e.rank})`:`-`)]),caption:j.value.a11y.translations.tableCaption,notice:j.value.a11y.translations.tableAvailable}));ke({timeLabelsEls:Vt,timeLabels:G,slicer:Sn,configRef:j,rotationPath:[`style`,`chart`,`layout`,`timeLabels`,`rotation`],autoRotatePath:[`style`,`chart`,`layout`,`timeLabels`,`autoRotate`,`enable`],isAutoSize:!1,width:bn,height:xn,rotation:N.value.timeLabels.autoRotate.angle});let Y=b(!1);function On(){Y.value=!Y.value}function kn(e){Mt.value=e,Ot.value+=1}function An(){R.value.showTable=!R.value.showTable}Ye(()=>R.value.showTable,e=>xe(e,j,It));function jn(){R.value.showTable=!1,Lt.value&&Lt.value.setTableIconState(!1)}function Mn(){return W.value}function Nn(e=null){let t=[[P.value.title.text],[P.value.title.subtitle.text],[``]],n=[``,...K.value.map(e=>e?.text??``)],r=W.value.map(e=>[e.name,...e.coordinates.map(e=>`${e.displayValue}`)]),a=W.value.map(e=>[e.name,...e.coordinates.map(e=>`${e.rank}`)]),o=t.concat([[j.value.table.columnNames.values]]).concat([n]).concat(r).concat([[``],[j.value.table.columnNames.ranking],[n]]).concat(a),s=i(o);e?e(s):ae({csvContent:s,title:P.value.title.text||`vue-ui-bump`})}let X=f(()=>Se({config:j,style:P,mutableConfig:R,dialog:Ie,accordion:vt,isFullscreen:Mt,parent:D,maxWidth:800,isCursorPointer:I})),Z=f(()=>({head:[``].concat(K.value.map(e=>e.text)),body:W.value.map((e,t)=>[e.name,...e.coordinates.map(e=>`${e.displayValue} (${e.rank})`)]),config:{th:{backgroundColor:j.value.table.th.backgroundColor,color:j.value.table.th.color,outline:j.value.table.th.outline},td:{backgroundColor:j.value.table.td.backgroundColor,color:j.value.table.td.color,outline:j.value.table.td.outline},breakpoint:j.value.table.responsiveBreakpoint},colNames:[j.value.table.columnNames.series]})),Pn=f(()=>P.value.backgroundColor),Fn=f(()=>P.value.title),{isCallbackImaging:In,isCallbackSvg:Ln,generateSvg:Rn,onGenerateImage:zn}=be({svg:L,title:Fn,legend:null,legendItems:null,backgroundColor:Pn,getSvgCallback:()=>j.value.userOptions.callbacks.svg,generateImage:nn}),Bn=ve(D,()=>P.value.title.text);function Q(e,t){k.value=t.id,j.value.events.datapointEnter&&j.value.events.datapointEnter({datapoint:e,seriesIndex:e?.pointIndex??null})}function $(e,t){k.value=null,j.value.events.datapointLeave&&j.value.events.datapointLeave({datapoint:e,seriesIndex:e?.pointIndex??null})}function Vn(e,t){j.value.events.datapointClick&&j.value.events.datapointClick({datapoint:e,seriesIndex:e?.pointIndex??null})}async function Hn(){if(Et(`copyAlt`,{config:j.value,dataset:W.value}),!j.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(j.value.userOptions.callbacks.altCopy({config:j.value,dataset:W.value}))}return he({getData:Mn,getImage:Bn,generatePdf:tn,generateCsv:Nn,generateImage:nn,generateSvg:Rn,toggleTable:An,toggleAnnotator:On,toggleFullscreen:kn,copyAlt:Hn}),(e,t)=>(y(),h(`div`,{id:`bump_${O.value}`,ref_key:`bumpChart`,ref:D,class:He({"vue-data-ui-component":!0,"vue-ui-bump":!0,"vue-data-ui-wrapper-fullscreen":Mt.value}),style:v(`background:${P.value.backgroundColor};color:${P.value.color};font-family:${j.value.style.fontFamily}; position: relative; ${j.value.responsive?`height: 100%`:``}`),onMouseenter:Zt,onMouseleave:Qt},[g(`p`,{id:`chart-instructions-${O.value}`,class:`sr-only`},C(j.value.a11y.translations.keyboardNavigation),9,$e),J.value.body.length?(y(),p(Me,{key:0,uid:O.value,head:J.value.head,body:J.value.body,caption:J.value.caption,notice:J.value.notice},null,8,[`uid`,`head`,`body`,`caption`,`notice`])):m(``,!0),F.value.buttons.annotator?(y(),p(w(bt),{key:1,svgRef:w(L),backgroundColor:P.value.backgroundColor,color:P.value.color,active:Y.value,isCursorPointer:I.value,palette:F.value.annotatorPalette,onClose:On},Le({_:2},[x(w(we),t=>({name:t,fn:T(n=>[S(e.$slots,t,Ue(Be(w(Ce)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):m(``,!0),S(e.$slots,`userConfig`,{},void 0,!0),rn.value?(y(),h(`div`,{key:2,ref_key:`noTitle`,ref:At,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):m(``,!0),P.value.title.text?(y(),h(`div`,{key:3,ref_key:`chartTitle`,ref:kt,style:`width:100%;background:transparent;`},[(y(),p(ye,{key:`title_${Pt.value}`,config:{title:{cy:`bump-title`,...P.value.title},subtitle:{cy:`bump-subtitle`,...P.value.title.subtitle}}},null,8,[`config`]))],512)):m(``,!0),F.value.show&&Dt.value&&(w(Xt)||w(Jt))?(y(),p(w(xt),{ref_key:`userOptionsRef`,ref:Lt,key:`user_option_${Ot.value}`,backgroundColor:P.value.backgroundColor,color:P.value.color,isPrinting:w($t),isImaging:w(en),uid:O.value,hasTooltip:!1,hasPdf:F.value.buttons.pdf,hasImg:F.value.buttons.img,hasSvg:F.value.buttons.svg,hasXls:F.value.buttons.csv,hasTable:F.value.buttons.table,hasLabel:!1,hasAltCopy:F.value.buttons.altCopy,hasFullscreen:F.value.buttons.fullscreen,isFullcreen:Mt.value,chartElement:D.value,position:F.value.position,titles:{...F.value.buttonTitles},hasAnnotator:F.value.buttons.annotator,isAnnotation:Y.value,callbacks:F.value.callbacks,printScale:F.value.print.scale,tableDialog:j.value.table.useDialog,isCursorPointer:I.value,onToggleFullscreen:kn,onGeneratePdf:w(tn),onGenerateCsv:Nn,onGenerateImage:w(zn),onGenerateSvg:w(Rn),onToggleTable:An,onToggleAnnotator:On,onCopyAlt:Hn,style:v({visibility:w(Xt)?w(Jt)?`visible`:`hidden`:`visible`})},Le({_:2},[x(w(Te)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:T(n=>[S(e.$slots,t,Ue(Be(w(Ee)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasAltCopy.hasFullscreen.isFullcreen.chartElement.position.titles.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):m(``,!0),g(`div`,et,[(y(),h(`svg`,{ref_key:`svgRef`,ref:L,xmlns:w(se),"aria-describedby":`chart-instructions-${O.value}`,viewBox:`0 0 ${U.value.chartWidth<=0?10:U.value.chartWidth} ${U.value.svgHeight<=0?10:U.value.svgHeight}`,class:He({"vue-data-ui-loading":w(Wt),"no-transition":!j.value.useCssAnimation}),style:v(`max-width:100%;overflow:visible;background:transparent;color:${P.value.color}`),role:`img`,"aria-live":`polite`,preserveAspectRatio:`xMidYMid`,tabindex:`0`,onFocus:Cn,onBlur:wn,onKeydown:Dn},[ze(w(St)),e.$slots[`chart-background`]?(y(),h(`foreignObject`,{key:0,x:U.value.left,y:U.value.top,width:U.value.width<=0?10:U.value.width,height:U.value.height<=0?10:U.value.height,style:{pointerEvents:`none`}},[S(e.$slots,`chart-background`,{},void 0,!0)],8,nt)):m(``,!0),(y(!0),h(d,null,x(W.value,e=>(y(),h(d,null,[g(`path`,{class:`transition-opacity`,d:`M${e.path}`,stroke:N.value.lines.coatingColor,"stroke-width":N.value.lines.strokeWidth+2,"stroke-linecap":`round`,"stroke-linejoin":`round`,fill:`none`,style:v({opacity:k.value==null||k.value===e.id?1:.1}),onMouseenter:t=>k.value=e.id,onMouseleave:t[0]||=e=>k.value=null},null,44,rt),g(`path`,{class:`transition-opacity`,d:`M${e.path}`,stroke:e.color,"stroke-width":N.value.lines.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,fill:`none`,style:v({opacity:k.value==null||k.value===e.id?1:.1}),onMouseenter:t=>Q(e,e),onMouseleave:t=>$(e,e),onClick:t=>Vn(e,e)},null,44,it)],64))),256)),(y(!0),h(d,null,x(W.value,t=>(y(),h(d,null,[M.value.labels.displayedValue===`rank`?(y(!0),h(d,{key:0},x(t.coordinates,(e,n)=>(y(),h(`circle`,{class:`transition-opacity`,cx:e.x,cy:e.y,r:M.value.radius,fill:t.color,stroke:M.value.stroke,"stroke-width":M.value.strokeWidth,style:v({opacity:k.value==null||k.value===t.id?1:.1}),onMouseenter:r=>Q({...e,pointIndex:n},t),onMouseleave:r=>$({...e,pointIndex:n},t),onClick:r=>Q({...e,pointIndex:n},t)},null,44,at))),256)):m(``,!0),M.value.labels.show&&M.value.labels.displayedValue===`rank`?(y(!0),h(d,{key:1},x(t.coordinates,e=>(y(),h(`text`,{class:`transition-opacity`,x:e.x,y:e.y+M.value.labels.fontSize/3,fill:e.labelColor,"font-size":M.value.labels.fontSize,"text-anchor":`middle`,style:v({userSelect:`none`,pointerEvents:`none`,opacity:k.value==null||k.value===t.id?1:.1})},C(e.rank),13,ot))),256)):m(``,!0),M.value.labels.displayedValue===`value`?(y(!0),h(d,{key:2},x(t.coordinates,n=>(y(),h(d,null,[w(r)(n.value)?(y(),h(`rect`,Ve({key:0,class:`transition-opacity`},{ref_for:!0},vn(n),{style:{opacity:k.value==null||k.value===t.id?1:.1},onMouseenter:n=>Q({...e.point,pointIndex:e.i},t),onMouseleave:n=>$({...e.point,pointIndex:e.i},t),onClick:n=>Q({...e.point,pointIndex:e.i},t)}),null,16,st)):m(``,!0),w(r)(n.value)&&M.value.labels.show?(y(),h(`text`,{key:1,class:`transition-opacity`,x:n.x,y:n.y+M.value.labels.fontSize/3,fill:n.labelColor,"font-size":M.value.labels.fontSize,"text-anchor":`middle`,style:v({userSelect:`none`,pointerEvents:`none`,opacity:k.value==null||k.value===t.id?1:.1})},C(n.displayValue),13,ct)):m(``,!0)],64))),256)):m(``,!0)],64))),256)),N.value.nameLabels.leftLabels.show?(y(),h(`g`,{key:1,ref_key:`labelsLeft`,ref:zt},[(y(!0),h(d,null,x(_n.value.left.filter(e=>w(r)(e.value)),(e,t)=>(y(),h(`text`,{class:`transition-opacity`,x:U.value.left,y:e.y+N.value.nameLabels.fontSize/3,fill:N.value.nameLabels.useSerieColor?e.color:N.value.nameLabels.color,"font-size":N.value.nameLabels.fontSize,"font--weight":N.value.nameLabels.bold?`bold`:`normal`,"text-anchor":`end`,innerHTML:w(o)({content:e.name,fontSize:N.value.nameLabels.fontSize,fill:N.value.nameLabels.useSerieColor?e.color:N.value.nameLabels.color,x:U.value.left-N.value.nameLabels.offsetX,y:e.y+N.value.nameLabels.fontSize/3,translateY:!0}),style:v({opacity:k.value==null||k.value===e.id?1:.1}),onMouseenter:t=>Q(e,e),onMouseleave:t=>$(e,e),onClick:t=>Vn(e,e)},null,44,lt))),256))],512)):m(``,!0),N.value.nameLabels.rightLabels.show?(y(),h(`g`,{key:2,ref_key:`labelsRight`,ref:Bt},[(y(!0),h(d,null,x(_n.value.right.filter(e=>w(r)(e.value)),(e,t)=>(y(),h(`text`,{class:`transition-opacity`,x:U.value.right,y:e.y+N.value.nameLabels.fontSize/3,fill:N.value.nameLabels.useSerieColor?e.color:N.value.nameLabels.color,"font-size":N.value.nameLabels.fontSize,"font--weight":N.value.nameLabels.bold?`bold`:`normal`,"text-anchor":`start`,innerHTML:w(o)({content:e.name,fontSize:N.value.nameLabels.fontSize,fill:N.value.nameLabels.useSerieColor?e.color:N.value.nameLabels.color,x:U.value.right+N.value.nameLabels.offsetX,y:e.y+N.value.nameLabels.fontSize/3,translateY:!0}),style:v({opacity:k.value==null||k.value===e.id?1:.1}),onMouseenter:t=>Q(e,e),onMouseleave:t=>$(e,e),onClick:t=>Vn(e,e)},null,44,ut))),256))],512)):m(``,!0),N.value.timeLabels.show?(y(),h(`g`,{key:3,ref_key:`timeLabelsEls`,ref:Vt},[e.$slots[`time-label`]?(y(),h(`g`,dt,[(y(!0),h(d,null,x(K.value,(t,n)=>(y(),h(`g`,null,[S(e.$slots,`time-label`,Ve({ref_for:!0},{x:U.value.unitW*n+U.value.unitW/2+U.value.left,y:U.value.chartHeight+N.value.timeLabels.offsetY,fontSize:N.value.timeLabels.fontSize,fill:N.value.timeLabels.color,transform:`translate(${U.value.unitW*n+U.value.unitW/2+U.value.left}, ${U.value.chartHeight+N.value.timeLabels.offsetY}), rotate(${N.value.timeLabels.rotation})`,absoluteIndex:t.absoluteIndex,content:t.text,textAnchor:N.value.timeLabels.rotation>0?`start`:P.value.layout.timeLabels.rotation<0?`end`:`middle`,show:!0}),void 0,!0)]))),256))])):(y(),h(`g`,ft,[(y(!0),h(d,null,x(K.value,(e,t)=>(y(),h(`g`,null,[String(e.text).includes(`
4
- `)?(y(),h(`text`,{key:t+`-multi`,"text-anchor":N.value.timeLabels.rotation>0?`start`:N.value.timeLabels.rotation<0?`end`:`middle`,"font-size":N.value.timeLabels.fontSize,fill:N.value.timeLabels.color,transform:`
5
- translate(
6
- ${U.value.unitW*t+U.value.unitW/2+U.value.left},
7
- ${U.value.chartHeight+N.value.timeLabels.fontSize*1.3+N.value.timeLabels.offsetY}
8
- ),
9
- rotate(${N.value.timeLabels.rotation})
10
- `,innerHTML:w(o)({content:String(e.text),fontSize:N.value.timeLabels.fontSize,fill:P.value.layout.timeLabels.color,stroke:P.value.backgroundColor,x:0,y:0})},null,8,mt)):(y(),h(`text`,{class:`vue-data-ui-time-label`,key:t,"text-anchor":N.value.timeLabels.rotation>0?`start`:N.value.timeLabels.rotation<0?`end`:`middle`,"font-size":N.value.timeLabels.fontSize,"font-weight":N.value.timeLabels.bold?`bold`:`normal`,fill:N.value.timeLabels.color,stroke:P.value.backgroundColor,"stroke-width":`3`,"stroke-linejoin":`round`,"stroke-linecap":`round`,"paint-order":`stroke fill`,transform:`translate(${U.value.unitW*t+U.value.unitW/2+U.value.left}, ${U.value.chartHeight+N.value.timeLabels.offsetY}), rotate(${N.value.timeLabels.rotation})`},C(e.text),9,pt))]))),256))]))],512)):m(``,!0),S(e.$slots,`svg`,{svg:{drawingArea:U.value,data:W.value,isPrintingImg:w($t)||w(en)||w(In),isPrintingSvg:w(Ln)}},void 0,!0)],46,tt)),e.$slots.hint?(y(),h(`div`,ht,[S(e.$slots,`hint`,Ue(Be({hint:j.value.a11y.translations.keyboardNavigation,isVisible:Ht.value})),void 0,!0)])):m(``,!0)]),e.$slots.watermark?(y(),h(`div`,gt,[S(e.$slots,`watermark`,Ue(Be({isPrinting:w($t)||w(en)||w(In)||w(Ln)})),void 0,!0)])):m(``,!0),Dt.value&&F.value.buttons.table?(y(),p(Ke(X.value.component),Ve({key:6},X.value.props,{ref_key:`tableUnit`,ref:It,onClose:jn}),Le({content:T(()=>[ze(w(yt),{colNames:Z.value.colNames,head:Z.value.head,body:Z.value.body,config:Z.value.config,title:j.value.table.useDialog?``:X.value.title,withCloseButton:!j.value.table.useDialog,isCursorPointer:I.value,onClose:jn},{th:T(({th:e})=>[g(`div`,null,C(e),1)]),td:T(({td:e})=>[Re(C(e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`])]),_:2},[j.value.table.useDialog?{name:`title`,fn:T(()=>[Re(C(X.value.title),1)]),key:`0`}:void 0,j.value.table.useDialog?{name:`actions`,fn:T(()=>[g(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[1]||=e=>Nn(F.value.callbacks.csv),style:v({cursor:I.value?`pointer`:`default`})},[ze(w(_t),{name:`fileCsv`,stroke:X.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):m(``,!0),e.$slots.source?(y(),h(`div`,{key:7,ref_key:`source`,ref:jt,dir:`auto`},[S(e.$slots,`source`,{},void 0,!0)],512)):m(``,!0),S(e.$slots,`skeleton`,{},()=>[w(Wt)?(y(),p(fe,{key:0})):m(``,!0)],!0)],46,Qe))}},[[`__scopeId`,`data-v-0d30d571`]]);export{Ze as n,_t as t};
@@ -1,22 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Dt as i,Jt as a,Qt as o,X as s,Yt as c,_ as l,_t as ee,at as u,b as d,c as te,gt as ne,in as re,nt as ie,pt as ae,rn as oe,t as se,wt as ce,zt as le}from"./lib-DqD8nbyX.js";import{n as ue,t as de}from"./BaseScanner-8NdoBs7B.js";import{n as fe,t as pe}from"./useHints-BH9r_0Vd.js";import{t as me}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as he}from"./useNestedProp-DrLnzyHO.js";import{t as ge}from"./useThemeCheck-BKNRbGeC.js";import{t as _e}from"./img-DiP2_5_r.js";import{n as ve}from"./Title-BLA0tM3g.js";import{t as ye}from"./useChartExport-DtPNpc9M.js";import{n as be,t as xe}from"./tableIntegration-CNoJ1CIY.js";import{n as Se,t as Ce}from"./annotationSlots-BRR85CqJ.js";import{n as we,t as Te}from"./userOptionsSlots-DYuo-E5m.js";import{n as Ee,r as De,t as Oe}from"./useTimeLabels-Das5O74F.js";import{t as ke}from"./usePrinter-Cj4eIYC_.js";import{t as Ae}from"./useTransitions-DfSHzsdz.js";import{t as je}from"./useTimeLabelCollider-XQf_S7-z.js";import{l as Me,t as Ne}from"./useResponsive-D2CPcpda.js";import{t as Pe}from"./DefGrad-DKMq1REY.js";import{t as Fe}from"./SlicerPreview-Dpu4nMz6.js";import{t as Ie}from"./A11yDataTable-DWNlWXzs.js";import{t as Le}from"./useUserOptionState-CXlFnwPv.js";import{t as Re}from"./useChartAccessibility-DOMuYJfm.js";import{t as ze}from"./vue_ui_candlestick-DKvha_Ab.js";import{Fragment as f,computed as p,createBlock as Be,createCommentVNode as m,createElementBlock as h,createElementVNode as g,createSlots as Ve,createTextVNode as He,createVNode as Ue,defineAsyncComponent as We,guardReactiveProps as Ge,mergeProps as Ke,nextTick as qe,normalizeClass as _,normalizeProps as Je,normalizeStyle as Ye,onBeforeUnmount as Xe,onMounted as Ze,openBlock as v,ref as y,renderList as b,renderSlot as x,resolveDynamicComponent as Qe,shallowRef as $e,toDisplayString as et,toRefs as tt,unref as S,watch as nt,watchEffect as rt,withCtx as C}from"vue";var it=/* @__PURE__ */ e({default:()=>zt}),at=[`id`],ot=[`id`],st={style:{position:`relative`}},ct=[`xmlns`,`aria-describedby`,`viewBox`],lt=[`x`,`y`,`width`,`height`],ut={key:1},dt={key:0},ft=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],pt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],mt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],ht=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],gt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],_t=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],vt=[`transform`,`text-anchor`,`font-size`,`fill`,`font-weight`],yt=[`transform`,`text-anchor`,`font-size`,`fill`,`font-weight`],bt=[`transform`,`text-anchor`,`font-size`,`fill`,`stroke`,`font-weight`],xt=[`x`,`y`,`width`,`height`,`fill`,`rx`],St={key:0},Ct=[`cx`,`cy`,`r`,`fill`],wt=[`cx`,`cy`,`r`,`fill`],Tt={key:1},Et=[`x`,`y`,`width`,`height`,`rx`,`fill`],Dt=[`x`,`y`,`width`,`height`,`fill`,`rx`],Ot=[`x`,`y`,`height`,`width`,`fill`,`rx`],kt=[`x`,`y`,`height`,`width`,`fill`,`rx`,`stroke`,`stroke-width`],At=[`d`,`stroke`],jt=[`x`,`y`,`height`,`width`,`fill`,`onMouseover`,`onMouseleave`,`onClick`],Mt=[`x`,`y`,`width`,`height`,`fill`,`fill-opacity`,`stroke`,`stroke-opacity`,`stroke-width`,`stroke-dasharray`],Nt=[`data-start`,`data-end`],Pt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Ft={key:5,class:`vue-data-ui-watermark`},It=[`d`,`stroke`],Lt=[`d`,`stroke`,`stroke-width`],Rt=[`innerHTML`],zt=/*#__PURE__*/ me({__name:`vue-ui-candlestick`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}},selectedXIndex:{type:Number,default:void 0},zoomState:{type:Object,default:null}},emits:[`selectX`,`zoomStart`,`zoomEnd`,`zoomReset`,`update:zoomState`,`copyAlt`],setup(e,{expose:me,emit:it}){let zt=We(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),Bt=We(()=>import(`./Tooltip-Iyb_S6oQ.js`)),Vt=We(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),Ht=We(()=>import(`./DataTable-BcVZLSs8.js`)),Ut=We(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Wt=We(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Gt=We(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),Kt=We(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),{vue_ui_candlestick:qt}=t(),{isThemeValid:Jt,warnInvalidTheme:Yt}=ge(),w=e,T=it,Xt=p(()=>!!w.dataset&&w.dataset.length),E=y(!1),Zt=y(null),D=y(s()),Qt=y(!1),$t=y(``),O=y(void 0),en=y(0),k=y(null),tn=y(null),nn=y(null),rn=y(null),an=y(null),on=y(null),sn=y(0),cn=y(0),ln=y(0),un=y(null),dn=y(null),fn=y(null),pn=y(null),mn=y(null),A=y(null),hn=y({x:0,y:0}),gn=y(`pointer`),_n=y(!1),j=y(Dn()),M=p(()=>j.value.style.layout.candle),N=p(()=>j.value.style.layout.grid),P=p(()=>j.value.style.layout),F=p(()=>j.value.style),I=p(()=>j.value.userOptions);fe({config:()=>j.value,dataset:()=>w.dataset,component:`VueUiCandlestick`,rules:[pe.emptyArray,{test:e=>e.length>200,message:[`👀 Dataset has > 200 points, which can cause performance issues. Consider:`,``,`▶️ Adding date inputs to constraint the dataset into a specific timeframe`,``,`▶️ Aggregate the data to larger time series to reduce the number of datapoints.`]}]});let{transitionEnabled:vn}=Ae({config:()=>j.value.transitions,dataset:()=>w.dataset}),yn=p(()=>j.value.userOptions.useCursorPointer),bn=p(()=>re({defaultConfig:{useCssAnimation:!1,userOptions:{show:!1},table:{show:!1},style:{backgroundColor:`#99999930`,layout:{candle:{colors:{bearish:`#BABABA`,bullish:`#CACACA`}},grid:{stroke:`#6A6A6A`,verticalLines:{stroke:`#6A6A6A`},horizontalLines:{stroke:`#6A6A6A`},yAxis:{dataLabels:{show:!1},scale:{min:null,max:null}}},wick:{stroke:`#6A6A6A`,extremity:{color:`#6A6A6A`}}},tooltip:{show:!1},zoom:{show:!1,startIndex:null,endIndex:null}}},userConfig:j.value.skeletonConfig??{}})),{loading:L,FINAL_DATASET:R,manualLoading:xn}=ue({...tt(w),FINAL_CONFIG:j,prepareConfig:Dn,callback:()=>{Promise.resolve().then(async()=>{await Rr()})},skeletonDataset:w.config?.skeletonDataset??[[17040672e5,10,20,2,10,30],[17067456e5,10,30,5,20,50],[17092512e5,20,50,10,30,80],[17119296e5,30,80,20,50,130],[17145216e5,50,130,30,100,210],[17172e8,80,210,50,150,340],[1719792e6,130,340,80,280,550],[17224704e5,210,550,130,450,890],[17251488e5,340,890,210,750,1440],[17277408e5,550,1440,340,1230,2330],[17304192e5,890,2330,550,1950,3770],[17330112e5,1440,3770,890,3200,5100]],skeletonConfig:re({defaultConfig:j.value,userConfig:bn.value})}),{userOptionsVisible:Sn,setUserOptionsVisibility:Cn,keepUserOptionState:wn}=Le({config:j.value}),{svgRef:z}=Re({config:F.value.title});function Tn(){Cn(!0)}function En(){Cn(!1),T(`selectX`,{seriesIndex:null,datapoint:null}),O.value=null}function Dn(){let e=he({userConfig:w.config,defaultConfig:qt}),t={};w.config&&ce(w.config,`style.layout.grid.xAxis.dataLabels.showFirstAndLast`)&&(e.style.layout.grid.xAxis.dataLabels.showFirstAndLast=!!w.config.style.layout.grid.xAxis.dataLabels.showFirstAndLast);let n=e.theme;if(n){if(!Jt.value(e))Yt(e),t=e;else{let r=he({userConfig:ze[n]||w.config,defaultConfig:e});t={...he({userConfig:w.config,defaultConfig:r})}}}else t=e;return t}let On=o(w.config);nt(()=>w.config,(e,t)=>{let n=o(e),r=n!==On;On=n;let i=Dn();if(!r){j.value.style.tooltip=i.style.tooltip,V.value.showTooltip=j.value.style.tooltip.show;return}L.value||(j.value=Dn()),Sn.value=!j.value.userOptions.showOnChartHover,Mn(),sn.value+=1,ln.value+=1,cn.value+=1,V.value.showTable=j.value.table.show,V.value.showTooltip=F.value.tooltip.show,ar()},{deep:!0}),nt(()=>w.dataset,e=>{Array.isArray(e)&&e.length>0&&(xn.value=!1),Pr()},{deep:!0});let B=y({height:F.value.height,width:F.value.width,xAxisFontSize:N.value.xAxis.dataLabels.fontSize,yAxisFontSize:N.value.yAxis.dataLabels.fontSize}),kn=$e(null),An=$e(null);Ze(()=>{Mn()});let jn=p(()=>j.value.debug);function Mn(){if(le(w.dataset)&&(u({componentName:`VueUiCandlestick`,type:`dataset`,debug:jn.value}),xn.value=!0),le(w.dataset)||(xn.value=j.value.loading),setTimeout(()=>{E.value=!0},10),j.value.responsive){let e=Me(()=>{E.value=!1;let{width:e,height:t}=Ne({chart:k.value,title:F.value.title.text?tn.value:null,slicer:F.value.zoom.show&&U.value>6?rn.value.$el:null,legend:nn.value,source:an.value,noTitle:on.value});requestAnimationFrame(()=>{B.value.width=e,B.value.height=t-12,j.value.responsiveProportionalSizing?(B.value.xAxisFontSize=oe({relator:Math.min(e,t),adjuster:F.value.width,source:N.value.xAxis.dataLabels.fontSize,threshold:6,fallback:6}),B.value.yAxisFontSize=oe({relator:Math.min(e,t),adjuster:F.value.width,source:N.value.yAxis.dataLabels.fontSize,threshold:6,fallback:6})):(B.value.xAxisFontSize=N.value.xAxis.dataLabels.fontSize,B.value.yAxisFontSize=N.value.yAxis.dataLabels.fontSize),Zt.value&&clearTimeout(Zt.value),Zt.value=setTimeout(()=>{E.value=!0},10)})});kn.value&&(An.value&&kn.value.unobserve(An.value),kn.value.disconnect()),kn.value=new ResizeObserver(e),An.value=k.value.parentNode,kn.value.observe(An.value)}Rr()}Xe(()=>{kn.value&&(An.value&&kn.value.unobserve(An.value),kn.value.disconnect())});let{isPrinting:Nn,isImaging:Pn,generatePdf:Fn,generateImage:In}=ke({elementId:`vue-ui-candlestick_${D.value}`,fileName:F.value.title.text||`vue-ui-candlestick`,options:j.value.userOptions.print}),Ln=p(()=>j.value.userOptions.show&&!F.value.title.text),V=y({showTable:j.value.table.show,showTooltip:F.value.tooltip.show}),Rn=y(0),zn=Me(e=>{Rn.value=e},100);rt(e=>{let t=dn.value;if(!t)return;let n=new ResizeObserver(e=>{zn(e[0].contentRect.height)});n.observe(t),e(()=>n.disconnect())}),Xe(()=>{Rn.value=0});let Bn=p(()=>{let e=0;return dn.value&&(e=Rn.value+B.value.xAxisFontSize),e}),Vn=p(()=>N.value.yAxis.position===`right`);function Hn(){let e=N.value.yAxis.dataLabels.offsetX;un.value&&(e=Array.from(un.value.querySelectorAll(`text`)).reduce((e,t)=>{let n=t.getComputedTextLength();return n>e?n:e},0));let t=N.value.yAxis.axisName?.show?N.value.yAxis.axisName.fontSize+N.value.yAxis.axisName.offsetX:0,n=e+13+t;return{left:Vn.value?0:n,right:Vn.value?n:0,scaleLabelsWidth:e,yAxisNameWidth:t,crosshair:13}}let H=p(()=>{let{top:e,right:t,bottom:n,left:r}=P.value.padding,i=Hn();return{top:e+12,right:B.value.width-t-i.right,left:r+i.left,bottom:B.value.height-n-Bn.value,width:B.value.width-r-t-i.left-i.right,height:B.value.height-e-n-Bn.value-12,scaleLabelsWidth:i.scaleLabelsWidth,yAxisNameWidth:i.yAxisNameWidth,crosshair:i.crosshair}}),Un=p(()=>{let{left:e,top:t,width:n,height:r}=H.value,i=W.value.start,a=W.value.end-i,o=n/a,s=G.value.start-i,c=G.value.end-i,l=Math.max(0,Math.min(a,s)),ee=Math.max(0,Math.min(a,c));return{x:e+l*o,y:t,width:(ee-l)*o,height:r,fill:F.value.zoom.preview.fill,stroke:F.value.zoom.preview.stroke,"stroke-width":F.value.zoom.preview.strokeWidth,"stroke-dasharray":F.value.zoom.preview.strokeDasharray,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{pointerEvents:`none`,transition:`none !important`,animation:`none !important`}}}),U=p(()=>R.value.length),W=y({start:0,end:U.value}),G=y({start:0,end:U.value}),Wn=y(!1),Gn=y(!1),Kn=y(null),K=y(null),q=y(null),qn=y(!1),Jn=y({time:0,x:0,y:0,pointerType:null}),Yn=p(()=>F.value.zoom?.dragToZoom),J=p(()=>Yn.value.show&&Xt.value&&Ir.value&&U.value>1&&!L.value),Xn=null,Zn={},Qn=p(()=>F.value.zoom.preview.enable&&(G.value.start!==W.value.start||G.value.end!==W.value.end));function $n(e,t){G.value[e]=t}function er(e,t=W.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 tr(e){let t=er(e);t&&T(`update:zoomState`,t)}function nr(){Xn&&=(cancelAnimationFrame(Xn),null),Zn={}}function rr(e){let t=er(e);if(!t)return null;let{start:n,end:r}=t;return(n!==Number(W.value.start)||r!==Number(W.value.end))&&(nr(),W.value={start:n,end:r},G.value={start:n,end:r},ar()),{start:Number(W.value.start),end:Number(W.value.end)}}function ir(e){let t=rr(e);return t?(T(`update:zoomState`,t),t):null}function ar(){let e=Math.max(0,Math.min(W.value.start??0,U.value-1)),t=Math.max(e+1,Math.min(W.value.end??U.value,U.value));(!Number.isFinite(e)||!Number.isFinite(t)||t<=e)&&(e=0,t=U.value),W.value.start=e,W.value.end=t,G.value.start=e,G.value.end=t,rn.value&&rn.value.setRangeValues(e,t)}let or=p(()=>R.value.map((e,t)=>({...e,absoluteIndex:t}))),sr=p(()=>or.value.slice(W.value.start,W.value.end)),Y=p(()=>(jn.value&&R.value.forEach((e,t)=>{[null,void 0].includes(e[0])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`period (index 0)`,index:t}),[null,void 0].includes(e[1])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`open (index 1)`,index:t}),[null,void 0].includes(e[2])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`high (index 2)`,index:t}),[null,void 0].includes(e[3])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`low (index 3)`,index:t}),[null,void 0].includes(e[4])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`close (index 4)`,index:t}),[null,void 0].includes(e[5])&&u({componentName:`VueUiCandlestick`,type:`datasetAttribute`,property:`volume (index 5)`,index:t})}),sr.value.map(e=>({absoluteIndex:e.absoluteIndex,period:e[0],open:e[1],high:e[2],low:e[3],close:e[4],volume:e[5]})))),cr=p(()=>or.value.map(e=>({absoluteIndex:e.absoluteIndex,period:e[0],open:e[1],high:e[2],low:e[3],close:e[4],volume:e[5]}))),X=p(()=>H.value.width/sr.value.length),lr=p(()=>({max:N.value.yAxis.scale.max===null?Math.max(...Y.value.map(e=>e.high)):N.value.yAxis.scale.max,min:N.value.yAxis.scale.min===null?0:N.value.yAxis.scale.min})),Z=p(()=>l(lr.value.min,lr.value.max,N.value.yAxis.dataLabels.steps));function ur(e,t,n=null,r=null){return{...e,x:d(H.value.left+t*X.value+X.value/2),y:d(H.value.top+(1-(e-Z.value.min)/(Z.value.max-Z.value.min))*H.value.height),value:d(e),isMax:e===n,isMin:e===r}}let Q=p(()=>{let e={o:Math.max(...Y.value.map(e=>e.open)),h:Math.max(...Y.value.map(e=>e.high)),l:Math.max(...Y.value.map(e=>e.low)),c:Math.max(...Y.value.map(e=>e.low))},t={o:Math.min(...Y.value.map(e=>e.open)),h:Math.min(...Y.value.map(e=>e.high)),l:Math.min(...Y.value.map(e=>e.low)),c:Math.min(...Y.value.map(e=>e.low))},n=Math.max(...Y.value.map(e=>e.volume)),r=Math.min(...Y.value.map(e=>e.volume));return Y.value.map((i,a)=>{let o=ur(i.open,a,e.o,t.o),s=ur(i.high,a,e.h,t.h),c=ur(i.low,a,e.l,t.l),l=ur(i.close,a,e.c,t.c),ee=i.close>i.open,u=i.volume===n,d=i.volume===r;return{period:i.period,open:o,high:s,low:c,close:l,volume:i.volume,isBullish:ee,absoluteIndex:i.absoluteIndex,isMaxVolume:u,isMinVolume:d}})});function dr({item:e,index:t,minimapH:n,unitW:r}){let i=N.value.yAxis.scale.min??0,a=N.value.yAxis.scale.max??Math.max(...R.value.map(e=>e[2]));return{...e,x:d(t*r),y:d((1-(e-i)/(a-i))*n),value:d(e)}}let fr=p(()=>({minimapH:e,unitW:t})=>cr.value.map((n,r)=>{let i=dr({item:n.open,index:r,minimapH:e,unitW:t}),a=dr({item:n.high,index:r,minimapH:e,unitW:t}),o=dr({item:n.low,index:r,minimapH:e,unitW:t}),s=dr({item:n.close,index:r,minimapH:e,unitW:t}),c=n.close>n.open;return{period:n.period,open:i,high:a,low:o,close:s,volume:n.volume,isBullish:c,absoluteIndex:n.absoluteIndex}})),pr=p(()=>F.value.zoom.minimap.show?[{name:``,series:R.value.map(e=>e[2]),color:`#000000`,isVisible:!0}]:[]);function mr(e){return d((e-Z.value.min)/(Z.value.max-Z.value.min))}let hr=p(()=>Z.value.ticks.map(e=>({y:H.value.bottom-H.value.height*mr(e),value:d(e)}))),gr=p(()=>Y.value.map(e=>e.period)),$=y([]),_r=y([]),vr=0;rt(()=>{let e=++vr;(async()=>{let t=await Oe({values:R.value.map(e=>e[0]),maxDatapoints:R.value.length,formatter:N.value.xAxis.dataLabels.datetimeFormatter,start:W.value.start,end:W.value.end});e===vr&&($.value=t)})()});let yr=0;rt(()=>{let e=++yr;(async()=>{let t=await Oe({values:R.value.map(e=>e[0]),maxDatapoints:R.value.length,formatter:N.value.xAxis.dataLabels.datetimeFormatter,start:0,end:U.value});e===yr&&(_r.value=t)})()});let br=y({months:[],shortMonths:[],days:[],shortDays:[]}),xr=0;rt(()=>{let e=++xr,t=N.value.xAxis.dataLabels.datetimeFormatter;(async()=>{let n=await De(t.locale).catch(()=>De(`en`));e===xr&&(br.value=n.data)})()});let Sr=p(()=>{let e=N.value.xAxis.dataLabels.datetimeFormatter,t=Ee({useUTC:e.useUTC,locale:br.value,januaryAsYear:e.januaryAsYear});return(e,n)=>{let r=R.value.map(e=>e[0])?.[e];return r==null?``:t.formatDate(new Date(r),n)}}),Cr=p(()=>(R.value.map(e=>e[0])||[]).map((e,t)=>({text:Sr.value(t,F.value.tooltip.timeFormat),absoluteIndex:t}))),wr=p(()=>(R.value.map(e=>e[0])||[]).map((e,t)=>({text:Sr.value(t,F.value.zoom.timeFormat),absoluteIndex:t}))),Tr=p(()=>{let e=Math.max(1,Math.floor(Number(N.value.xAxis.dataLabels.modulo)||1)),t=($.value||[]).map(e=>e?.text??``),n=(_r.value||[]).map(e=>e?.text??``),r=W.value.start??0,i=r>0||t.length<n.length;return ne({configuredModulo:e,visibleTexts:t,allTexts:n,startAbs:r,isZoomed:i})}),Er=p(()=>{let e=N.value.xAxis.dataLabels,t=$.value||[],n=_r.value||[],r=W.value.start??0,i=O.value,a=U.value,o=t.map(e=>e?.text??``),s=n.map(e=>e?.text??``),c=te(!!e.showOnlyFirstAndLast,!!e.showOnlyAtModulo,Tr.value,o,s,r,i,a);if(!e.showFirstAndLast||e.showOnlyFirstAndLast||!c.length)return c;let l=c.length-1;return c.map((e,t)=>t!==0&&t!==l?e:{...e,text:o[t]??``})}),Dr=p(()=>N.value.xAxis.dataLabels.datetimeFormatter.enable?{start:$.value.find(e=>e.absoluteIndex===W.value.start)?.text??``,end:$.value.find(e=>e.absoluteIndex===W.value.end-1)?.text??``}:{start:R.value[W.value.start]?R.value[W.value.start][0]:R.value[0][0],end:R.value[W.value.end-1]?R.value[W.value.end-1][0]:R.value.at(-1)[0]}),Or=y(null);function kr(e,t){j.value.events.datapointClick&&j.value.events.datapointClick({datapoint:t,seriesIndex:e+W.value.start})}function Ar(e,t){j.value.events.datapointLeave&&j.value.events.datapointLeave({datapoint:t,seriesIndex:e+W.value.start}),O.value=void 0,Qt.value=!1,A.value=null,gn.value=`pointer`}nt(()=>w.selectedXIndex,e=>{if([null,void 0].includes(w.selectedXIndex)){O.value=null;return}let t=e-W.value.start;t<0||e>=W.value.end?O.value=null:O.value=t??null},{immediate:!0});function jr(e,t,r=`pointer`){j.value.events.datapointEnter&&j.value.events.datapointEnter({datapoint:t,seriesIndex:e+W.value.start}),O.value=e,A.value=e,gn.value=r,Or.value={datapoint:t,seriesIndex:e,series:Q.value,config:j.value},wi({seriesIndex:e,datapoint:t});let a=F.value.tooltip.customFormat;if(i(a)&&ae(()=>a({seriesIndex:e,datapoint:t,series:Q.value,config:j.value})))$t.value=a({seriesIndex:e,datapoint:t,series:Q.value,config:j.value});else if(F.value.tooltip.show){let r=``,{period:i,open:a,high:o,low:s,close:c,volume:l,isBullish:ee}=Q.value[e],{period:u,open:d,high:te,low:ne,close:re,volume:ie}=j.value.translations,ae=N.value.xAxis.dataLabels.datetimeFormatter.enable?F.value.tooltip.useDefaultTimeFormat?$.value[e].text:Cr.value[e].text:i;r+=`<div><svg style="margin-right:6px" viewBox="0 0 12 12" height="12" width="12"><rect x="0" y="0" height="12" width="12" rx="${M.value.borderRadius*3}" stroke="${M.value.stroke}" stroke-width="${M.value.strokeWidth}"
2
- fill="${M.value.gradient.show?ee?`url(#bullish_gradient_${D.value})`:`url(#bearish_gradient_${D.value})`:ee?M.value.colors.bullish:M.value.colors.bearish}"/></svg>${ae}</div>`,r+=`${ie} : <b>${isNaN(l)?`-`:Number(l.toFixed(F.value.tooltip.roundingValue)).toLocaleString()}</b>`,r+=`<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${F.value.tooltip.borderColor}">`;let oe=n({p:F.value.tooltip.prefix,v:a.value,s:F.value.tooltip.suffix,r:F.value.tooltip.roundingValue}),se=n({p:F.value.tooltip.prefix,v:o.value,s:F.value.tooltip.suffix,r:F.value.tooltip.roundingValue}),ce=n({p:F.value.tooltip.prefix,v:s.value,s:F.value.tooltip.suffix,r:F.value.tooltip.roundingValue}),le=n({p:F.value.tooltip.prefix,v:c.value,s:F.value.tooltip.suffix,r:F.value.tooltip.roundingValue});F.value.tooltip.showChart?r+=`<div style="width:100%;display:flex;align-items:center;justify-content:center;">
3
- <svg viewBox="0 0 100 100" width="100px" style="background: transparent; overflow: visible">
4
- <g>
5
- <line x1="50" x2="50" y1="20" y2="80" stroke="${t.isBullish?M.value.colors.bullish:M.value.colors.bearish}" stroke-width="2" stroke-linecap="round" />
6
- ${t.isBullish?`
7
- <line x1="45" x2="50" y1="65" y2="65" stroke="${M.value.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
8
- <line x1="50" x2="55" y1="35" y2="35" stroke="${M.value.colors.bullish}" stroke-width="1.5" stroke-linecap="round" />
9
- <text x="38" y="70" text-anchor="end" fill="${F.value.tooltip.color}">${oe}</text>
10
- <text x="62" y="40" text-anchor="start" fill="${F.value.tooltip.color}">${le}</text>
11
- `:`
12
- <line x1="45" x2="50" y1="35" y2="35" stroke="${M.value.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
13
- <line x1="50" x2="55" y1="65" y2="65" stroke="${M.value.colors.bearish}" stroke-width="1.5" stroke-linecap="round" />
14
- <text x="40" y="40" text-anchor="end" fill="${F.value.tooltip.color}">${oe}</text>
15
- <text x="60" y="70" text-anchor="start" fill="${F.value.tooltip.color}">${le}</text>
16
- `}
17
- <text x="50" y="13" text-anchor="middle" fill="${F.value.tooltip.color}">${se}</text>
18
- <text x="50" y="97" text-anchor="middle" fill="${F.value.tooltip.color}">${ce}</text>
19
- <g>
20
- </svg>
21
- <div>
22
- `:(r+=`<div>${d}: <b>${oe}</b></div>`,r+=`<div>${te}: <b>${se}</b></div>`,r+=`<div>${ne}: <b>${ce}</b></div>`,r+=`<div>${re}: <b>${le}</b></div>`),r+=`</div>`,$t.value=`<div style="text-align:right">${r}</div>`}Qt.value=!0}let Mr=y(null);function Nr(){return new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e())))}Xe(()=>{Mr.value&&cancelAnimationFrame(Mr.value),nr(),mi()});async function Pr({force:e=!1,publish:t=!1}={}){let n=!e;Rr(n),await qe(),Mr.value&&cancelAnimationFrame(Mr.value),Mr.value=requestAnimationFrame(async()=>{await Nr(),Rr(n),Mr.value=null,t&&(tr({start:Number(W.value.start),end:Number(W.value.end)}),T(`zoomReset`))})}let Fr=y(!1),Ir=y(!1),Lr=y(!1);nt([()=>w.zoomState,Ir],([e,t])=>{t&&e&&rr(e)},{deep:!0,immediate:!0});function Rr(e=!0){if(!Fr.value){Fr.value=!0;try{let{startIndex:t,endIndex:n}=F.value.zoom,r=U.value,i=t??0,a=n==null?r:Math.min(zr(n+1,i),r);Lr.value=!0,W.value.start=i,W.value.end=a,G.value.start=i,G.value.end=a,ar(),Ir.value=!0,e&&w.zoomState&&rr(w.zoomState)}finally{queueMicrotask(()=>{Lr.value=!1}),Fr.value=!1}}}function zr(e,t=W.value.start){let n=U.value,r=Number(t);return e>n?n:e<0||e<=r?Math.min(r+1,n):e}function Br(e=null){qe(()=>{let t=[j.value.translations.period,j.value.translations.open,j.value.translations.high,j.value.translations.low,j.value.translations.close,j.value.translations.volume],n=Q.value.map((e,t)=>[N.value.xAxis.dataLabels.datetimeFormatter.enable?$.value[t].text:e.period,e.open.value,e.high.value,e.low.value,e.close.value,e.volume]),i=[[F.value.title.text],[F.value.title.subtitle.text],[[``],[``],[``]],t].concat(n),a=r(i);e?e(a):ie({csvContent:a,title:F.value.title.text||`vue-ui-candlestick`})})}let Vr=p(()=>{let e=Q.value.map((e,t)=>{let r=N.value.xAxis.dataLabels.datetimeFormatter.enable?$.value?.[t]?.text??``:e.period,i=n({p:j.value.table.td.prefix,v:e.open.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),a=n({p:j.value.table.td.prefix,v:e.high.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),o=n({p:j.value.table.td.prefix,v:e.low.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),s=n({p:j.value.table.td.prefix,v:e.close.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue});return[`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" height="12" width="12" style="margin-right: 6px"><rect x="0" y="0" height="12" width="12" rx="${M.value.borderRadius*3}" fill="${M.value.gradient.show?e.isBullish?`url(#bullish_gradient_${D.value})`:`url(#bearish_gradient_${D.value})`:e.isBullish?M.value.colors.bullish:M.value.colors.bearish}"/></svg> ${r}`,i,a,o,s,`${isNaN(e.volume)?`-`:e.volume.toLocaleString()}`]}),t=Q.value.map((e,t)=>[N.value.xAxis.dataLabels.datetimeFormatter.enable?$.value?.[t]?.text??``:e.period,n({p:j.value.table.td.prefix,v:e.open.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),n({p:j.value.table.td.prefix,v:e.high.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),n({p:j.value.table.td.prefix,v:e.low.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),n({p:j.value.table.td.prefix,v:e.close.value,s:j.value.table.td.suffix,r:j.value.table.td.roundingValue}),`${isNaN(e.volume)?`-`:e.volume}`]),r={th:{backgroundColor:j.value.table.th.backgroundColor,color:j.value.table.th.color,outline:j.value.table.th.outline},td:{backgroundColor:j.value.table.td.backgroundColor,color:j.value.table.td.color,outline:j.value.table.td.outline},breakpoint:j.value.table.responsiveBreakpoint},i=[j.value.translations.period,j.value.translations.open,j.value.translations.high,j.value.translations.low,j.value.translations.last,j.value.translations.volume];return{head:i,body:e,bodyA11y:t,config:r,colNames:i}}),Hr=y(!1);function Ur(e){Hr.value=e,en.value+=1}function Wr(){V.value.showTable=!V.value.showTable}function Gr(){V.value.showTooltip=!V.value.showTooltip}let Kr=y(!1);function qr(){Kr.value=!Kr.value}async function Jr({scale:e=2}={}){if(!k.value)return;let{imageUri:t,base64:n}=await _e({domElement:k.value,base64:!0,img:!0,scale:e}),r=k.value.getBoundingClientRect(),i={width:r.width,height:r.height,aspectRatio:r.height?r.width/r.height:0},a=await ee(t,e)??i;return{imageUri:t,base64:n,title:F.value.title.text,...a}}let Yr=p(()=>B.value.width),Xr=p(()=>B.value.height);je({timeLabelsEls:dn,timeLabels:$,slicer:W,configRef:j,rotationPath:[`style`,`layout`,`grid`,`xAxis`,`dataLabels`,`rotation`],autoRotatePath:[`style`,`layout`,`grid`,`xAxis`,`dataLabels`,`autoRotate`,`enable`],isAutoSize:!1,rotation:N.value.xAxis.dataLabels.autoRotate.angle,width:Yr,height:Xr}),nt(j,()=>{V.value={showTable:j.value.table.show,showTooltip:F.value.tooltip.show}},{immediate:!0});let Zr=p(()=>xe({config:j,style:F,mutableConfig:V,dialog:Kt,accordion:Vt,isFullscreen:Hr,parent:k,maxWidth:800,isCursorPointer:yn}));nt(()=>V.value.showTable,e=>be(e,j,fn));function Qr(){V.value.showTable=!1,pn.value&&pn.value.setTableIconState(!1)}let $r=p(()=>F.value.backgroundColor),ei=p(()=>F.value.title),{isCallbackImaging:ti,isCallbackSvg:ni,generateSvg:ri,onGenerateImage:ii}=ye({svg:z,title:ei,legend:null,legendItems:null,backgroundColor:$r,getSvgCallback:()=>j.value.userOptions.callbacks.svg,generateImage:In});function ai(e){mn.value=e}function oi(e){Zn={...Zn,...e},Xn&&cancelAnimationFrame(Xn),Xn=requestAnimationFrame(()=>{let e={...W.value,...Zn};Zn={},Xn=null,W.value=e,G.value={...e},ar(),tr({start:Number(W.value.start),end:Number(W.value.end)})})}function si(e){if(Fr.value||Lr.value)return;let t=Number(e);Number.isFinite(t)&&(T(`zoomStart`,{index:t,isZoom:t!==0}),t!==W.value.start&&oi({start:t}))}function ci(e){if(Fr.value||Lr.value)return;let t=Zn.start===void 0?W.value.start:Zn.start,n=zr(Number(e),t);Number.isFinite(n)&&(T(`zoomEnd`,{index:n,isZoom:n!==U.value}),(n!==W.value.end||Zn.start!==void 0)&&oi({end:n}))}function li(e){let t=z.value;if(!t)return null;if(t.createSVGPoint&&t.getScreenCTM){let n=t.createSVGPoint();n.x=e.clientX,n.y=e.clientY;let r=t.getScreenCTM();if(r){let e=n.matrixTransform(r.inverse());return{x:e.x,y:e.y}}}let n=t.getBoundingClientRect(),r=t.viewBox?.baseVal||{x:0,y:0,width:n.width,height:n.height},i=Math.min(n.width/r.width,n.height/r.height);if(!Number.isFinite(i)||i<=0)return null;let a=r.width*i,o=r.height*i,s=(n.width-a)/2,c=(n.height-o)/2;return{x:(e.clientX-n.left-s)/i+r.x,y:(e.clientY-n.top-c)/i+r.y}}let ui=p(()=>!Wn.value||Kn.value==null||K.value==null?null:{x:Math.min(Kn.value,K.value),y:H.value.top,width:Math.abs(K.value-Kn.value),height:H.value.height}),di=p(()=>Ir.value?Number(W.value.start)!==0||Number(W.value.end)!==Number(U.value):!1);function fi(e){return Math.min(Math.max(e,H.value.left),H.value.right)}function pi(){O.value=void 0,A.value=null,gn.value=`pointer`,Qt.value=!1,mn.value=null}function mi(e){let t=e?.pointerId==null?q.value:e.pointerId;t!=null&&z.value?.hasPointerCapture?.(t)&&z.value.releasePointerCapture(t),Wn.value=!1,Kn.value=null,K.value=null,q.value=null}function hi(){qn.value=!0,setTimeout(()=>{qn.value=!1},0)}function gi(e){qn.value&&(qn.value=!1,e.preventDefault(),e.stopPropagation())}function _i(e){if(!J.value||!di.value||!e)return!1;let t=Date.now(),n=e.pointerType||`mouse`,r=Jn.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?(Jn.value={time:0,x:0,y:0,pointerType:null},hi(),mi(e),Pr({force:!0,publish:!0}),!0):(Jn.value={time:t,x:e.clientX,y:e.clientY,pointerType:n},!1)}function vi(e){let t=Number(W.value.end)-Number(W.value.start);if(t<=0||!Number.isFinite(X.value)||X.value<=0)return null;let n=Math.floor((fi(e)-H.value.left)/X.value);return Math.max(0,Math.min(t-1,n))}function yi(e,t){let n=vi(e),r=vi(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(W.value.start)+i,end:Number(W.value.start)+a+1}}function bi(e){let t=ir(e);return t?(T(`zoomStart`,{index:t.start,isZoom:t.start!==0}),T(`zoomEnd`,{index:t.end,isZoom:t.end!==U.value}),t):null}function xi(e){if(!J.value||Kr.value||e.button!==void 0&&e.button!==0||q.value!=null&&e.pointerId!==q.value)return;let t=li(e);if(!t)return;let{left:n,right:r,top:i,bottom:a}=H.value;if(t.x<n||t.x>r||t.y<i||t.y>a||Number(W.value.end)-Number(W.value.start)<=1)return;Gn.value=!0,z.value?.focus?.({preventScroll:!0}),pi();let o=fi(t.x);q.value=e.pointerId,Wn.value=!0,Kn.value=o,K.value=o}function Si(e){if(!J.value||!Wn.value||q.value!=null&&e.pointerId!==q.value)return;let t=li(e);t&&(K.value=fi(t.x),pi(),Kn.value!=null&&Math.abs(K.value-Kn.value)>=2&&!z.value?.hasPointerCapture?.(e.pointerId)&&z.value?.setPointerCapture?.(e.pointerId))}function Ci(e){if(!J.value||!Wn.value||q.value!=null&&e.pointerId!==q.value)return;let t=li(e);t&&(K.value=fi(t.x));let n=Kn.value,r=K.value;if((n==null||r==null?0:Math.abs(r-n))<Math.max(4,H.value.width*.01)){if(_i(e))return;mi(e);return}let i=yi(Math.min(n,r),Math.max(n,r));if(!i){mi(e);return}mi(e),bi(i)&&(Jn.value={time:0,x:0,y:0,pointerType:null},pi(),hi())}function wi({seriesIndex:e,datapoint:t}){let n=W.value.start+e;T(`selectX`,{dataset:t,index:n,indexLabel:``})}async function Ti(){if(T(`copyAlt`,{config:j.value,dataset:Q.value}),!j.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(j.value.userOptions.callbacks.altCopy({config:j.value,dataset:Q.value}))}function Ei(){A.value=null,_n.value=!0}function Di(){Gn.value=!1,A.value=null,gn.value=`pointer`,Qt.value=!1,O.value=void 0,_n.value=!1}function Oi(e){if(!z.value||Kr.value||document.activeElement!==z.value||(Gn.value=!1,!Q.value.length))return;let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`,r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){if(J.value&&(di.value||Wn.value)){mi(),Pr({force:!0,publish:!0});return}A.value=null,gn.value=`pointer`,Qt.value=!1,O.value=void 0;return}if(r){if(A.value===null)return;let e=Q.value[A.value];if(!e)return;kr(A.value,e);return}let a=A.value,o=O.value,s=a!==null&&a>=0&&a<Q.value.length,c=o!=null&&o>=0&&o<Q.value.length;s?n?(a+=1,a>=Q.value.length&&(a=0)):t&&(--a,a<0&&(a=Q.value.length-1)):c?(a=n?o+1:o-1,a>=Q.value.length&&(a=0),a<0&&(a=Q.value.length-1)):a=n?0:Q.value.length-1;let l=Q.value[a];l&&(ki(a),jr(a,l,`keyboard`))}function ki(e){if(!Number.isFinite(e)||!z.value)return;let t=H.value.left+X.value*e+X.value/2,n=H.value.top+H.value.height/2,r=z.value.getBoundingClientRect();hn.value={x:r.left+t/B.value.width*r.width,y:r.top+n/B.value.height*r.height}}let Ai=p(()=>({headers:Vr.value?.colNames??[],rows:Vr.value?.bodyA11y??[]}));return me({getImage:Jr,generatePdf:Fn,generateCsv:Br,generateImage:In,generateSvg:ri,toggleTable:Wr,toggleTooltip:Gr,toggleAnnotator:qr,toggleFullscreen:Ur,copyAlt:Ti,resetZoom:()=>Pr({force:!0,publish:!0}),setZoomState:ir}),(e,t)=>(v(),h(`div`,{ref_key:`candlestickChart`,ref:k,class:_(`vue-data-ui-component vue-ui-candlestick ${Hr.value?`vue-data-ui-wrapper-fullscreen`:``} ${j.value.useCssAnimation?``:`vue-ui-dna`}`),style:Ye(`position:relative;font-family:${F.value.fontFamily}; text-align:center;background:${F.value.backgroundColor}; ${j.value.responsive?`height: 100%`:``}`),id:`vue-ui-candlestick_${D.value}`,onMouseenter:Tn,onMouseleave:En},[g(`div`,{id:`chart-instructions-${D.value}`,class:`sr-only`},[g(`p`,null,et(j.value.a11y.translations.keyboardNavigation),1)],8,ot),Ai.value?.rows?.length?(v(),Be(Ie,{key:0,uid:D.value,head:Ai.value.headers,body:Ai.value.rows,notice:j.value.a11y.translations.tableAvailable,caption:j.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):m(``,!0),I.value.buttons.annotator?(v(),Be(S(Ut),{key:1,svgRef:S(z),backgroundColor:F.value.backgroundColor,color:F.value.color,active:Kr.value,isCursorPointer:yn.value,palette:I.value.annotatorPalette,onClose:qr},Ve({_:2},[b(S(Ce),t=>({name:t,fn:C(n=>[x(e.$slots,t,Je(Ge(S(Se)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):m(``,!0),Ln.value?(v(),h(`div`,{key:2,ref_key:`noTitle`,ref:on,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):m(``,!0),F.value.title.text?(v(),h(`div`,{key:3,ref_key:`chartTitle`,ref:tn,style:`width:100%;background:transparent`},[(v(),Be(ve,{key:`title_${ln.value}`,config:{title:{cy:`candlestick-div-title`,...F.value.title},subtitle:{cy:`candlestick-div-subtitle`,...F.value.title.subtitle}}},null,8,[`config`]))],512)):m(``,!0),I.value.show&&Xt.value&&(S(wn)||S(Sn))?(v(),Be(S(Wt),{ref_key:`userOptionsRef`,ref:pn,key:`user_options_${en.value}`,backgroundColor:F.value.backgroundColor,color:F.value.color,isImaging:S(Pn),isPrinting:S(Nn),uid:D.value,hasTooltip:I.value.buttons.tooltip&&F.value.tooltip.show,hasPdf:I.value.buttons.pdf,hasImg:I.value.buttons.img,hasSvg:I.value.buttons.svg,hasXls:I.value.buttons.csv,hasTable:I.value.buttons.table,hasFullscreen:I.value.buttons.fullscreen,hasAltCopy:I.value.buttons.altCopy,isFullscreen:Hr.value,isTooltip:V.value.showTooltip,titles:{...I.value.buttonTitles},chartElement:k.value,position:I.value.position,hasAnnotator:I.value.buttons.annotator,isAnnotation:Kr.value,callbacks:I.value.callbacks,printScale:I.value.print.scale,tableDialog:j.value.table.useDialog,isCursorPointer:yn.value,onToggleFullscreen:Ur,onGeneratePdf:S(Fn),onGenerateCsv:Br,onGenerateImage:S(ii),onGenerateSvg:S(ri),onToggleTable:Wr,onToggleTooltip:Gr,onToggleAnnotator:qr,onCopyAlt:Ti,style:Ye({visibility:S(wn)?S(Sn)?`visible`:`hidden`:`visible`})},Ve({_:2},[b(S(we)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:C(n=>[x(e.$slots,t,Je(Ge(S(Te)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isImaging.isPrinting.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):m(``,!0),g(`div`,st,[(v(),h(`svg`,{ref_key:`svgRef`,ref:z,xmlns:S(se),"aria-describedby":`chart-instructions-${D.value}`,class:_({"vue-data-ui-fullscreen--on":Hr.value,"vue-data-ui-fulscreen--off":!Hr.value,"vue-data-ui-no-transition":!S(vn),"vue-ui-candlestick-chart-zoom-pointer-focus":J.value&&Gn.value}),viewBox:`0 0 ${B.value.width<=0?10:B.value.width} ${B.value.height<=0?10:B.value.height}`,style:Ye({maxWidth:`100%`,overflow:`visible`,background:`transparent`,color:F.value.color,cursor:J.value?Wn.value?`col-resize`:`crosshair`:void 0,touchAction:J.value?`pan-y`:void 0,userSelect:J.value?`none`:void 0}),tabindex:`0`,onFocus:Ei,onBlur:Di,onKeydown:Oi,onPointerdown:xi,onPointermove:Si,onPointerup:Ci,onPointercancel:mi,onClickCapture:gi},[Ue(S(Gt)),e.$slots[`chart-background`]?(v(),h(`foreignObject`,{key:0,x:H.value.left,y:H.value.top,width:Math.max(.1,H.value.width),height:Math.max(.1,H.value.height),style:{pointerEvents:`none`}},[x(e.$slots,`chart-background`,{},void 0,!0)],8,lt)):m(``,!0),Q.value.length>0?(v(),h(`g`,ut,[g(`defs`,null,[Ue(Pe,{t:`linear`,id:`bearish_gradient_${D.value}`,x2:`0%`,y2:`100%`,stops:[[`0%`,M.value.colors.bearish,1],[`50%`,S(c)(M.value.colors.bearish,.02),.87],[`100%`,S(c)(M.value.colors.bearish,.05),.4]]},null,8,[`id`,`stops`]),Ue(Pe,{t:`linear`,id:`bullish_gradient_${D.value}`,x2:`0%`,y2:`100%`,stops:[[`0%`,M.value.colors.bullish,1],[`50%`,S(c)(M.value.colors.bullish,.02),.87],[`100%`,S(c)(M.value.colors.bullish,.05),.4]]},null,8,[`id`,`stops`])]),N.value.show?(v(),h(`g`,dt,[g(`line`,{x1:Vn.value?H.value.right:H.value.left,x2:Vn.value?H.value.right:H.value.left,y1:H.value.top,y2:H.value.bottom,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linecap":`round`},null,8,ft),g(`line`,{x1:H.value.left,x2:H.value.right,y1:H.value.bottom,y2:H.value.bottom,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linecap":`round`},null,8,pt),N.value.horizontalLines.show?(v(!0),h(f,{key:0},b(hr.value,e=>(v(),h(`line`,{x1:H.value.left,x2:H.value.right,y1:e.y,y2:e.y,stroke:N.value.horizontalLines.stroke,"stroke-width":N.value.horizontalLines.strokeWidth,"stroke-dasharray":N.value.horizontalLines.strokeDasharray,"stroke-linecap":`round`},null,8,mt))),256)):m(``,!0),N.value.verticalLines.show?(v(!0),h(f,{key:1},b(Er.value,(e,t)=>(v(),h(`g`,null,[e.text?(v(),h(`line`,{key:0,x1:H.value.left+X.value*t+X.value/2,x2:H.value.left+X.value*t+X.value/2,y1:H.value.top,y2:H.value.bottom,stroke:N.value.verticalLines.stroke,"stroke-width":N.value.verticalLines.strokeWidth,"stroke-dasharray":N.value.verticalLines.strokeDasharray,"stroke-linecap":`round`},null,8,ht)):m(``,!0)]))),256)):m(``,!0),N.value.xAxis.ticks.show?(v(!0),h(f,{key:2},b(Er.value,(e,t)=>(v(),h(`g`,null,[e.text?(v(),h(`line`,{key:0,x1:H.value.left+X.value*t+X.value/2,x2:H.value.left+X.value*t+X.value/2,y1:H.value.bottom,y2:H.value.bottom+3,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linecap":`round`},null,8,gt)):m(``,!0)]))),256)):m(``,!0)])):m(``,!0),N.value.yAxis.dataLabels.show?(v(),h(`g`,{key:1,ref_key:`scaleLabels`,ref:un},[(v(!0),h(f,null,b(hr.value,(e,t)=>(v(),h(`g`,{key:`sl_${t}`},[e.value>=Z.value.min&&e.value<=Z.value.max?(v(),h(`line`,{key:0,x1:Vn.value?H.value.right:H.value.left,x2:Vn.value?H.value.right+5:H.value.left-5,y1:e.y,y2:e.y,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linecap":`round`},null,8,_t)):m(``,!0),e.value>=Z.value.min&&e.value<=Z.value.max?(v(),h(`text`,{key:1,class:_({"vue-data-ui-transition":S(vn)}),transform:`translate(${Vn.value?H.value.right+8+N.value.yAxis.dataLabels.offsetX:H.value.left-8+N.value.yAxis.dataLabels.offsetX}, ${e.y+B.value.yAxisFontSize/3})`,"text-anchor":Vn.value?`start`:`end`,"font-size":B.value.yAxisFontSize,fill:N.value.yAxis.dataLabels.color,"font-weight":N.value.yAxis.dataLabels.bold?`bold`:`normal`},et(S(n)({p:N.value.yAxis.dataLabels.prefix,v:e.value,s:N.value.yAxis.dataLabels.suffix,r:N.value.yAxis.dataLabels.roundingValue})),11,vt)):m(``,!0)]))),128))],512)):m(``,!0),N.value.xAxis.dataLabels.show&&!N.value.xAxis.dataLabels.datetimeFormatter.enable?(v(),h(`g`,{key:2,ref_key:`timeLabelsEls`,ref:dn},[(v(!0),h(f,null,b(gr.value,(e,t)=>(v(),h(`g`,null,[g(`text`,{class:`vue-data-ui-time-label`,transform:`translate(${H.value.left+X.value*t+X.value/2}, ${H.value.bottom+B.value.xAxisFontSize*1.5}), rotate(${N.value.xAxis.dataLabels.rotation})`,"text-anchor":N.value.xAxis.dataLabels.rotation>0?`start`:N.value.xAxis.dataLabels.rotation<0?`end`:`middle`,"font-size":B.value.xAxisFontSize,fill:N.value.xAxis.dataLabels.color,"font-weight":N.value.xAxis.dataLabels.bold?`bold`:`normal`},et(e),9,yt)]))),256))],512)):m(``,!0),N.value.xAxis.dataLabels.show&&N.value.xAxis.dataLabels.datetimeFormatter.enable?(v(),h(`g`,{key:3,ref_key:`timeLabelsEls`,ref:dn},[(v(!0),h(f,null,b(Er.value,(e,t)=>(v(),h(`g`,null,[g(`text`,{class:`vue-data-ui-time-label`,transform:`translate(${H.value.left+X.value*t+X.value/2}, ${H.value.bottom+B.value.xAxisFontSize*1.5}), rotate(${N.value.xAxis.dataLabels.rotation})`,"text-anchor":N.value.xAxis.dataLabels.rotation>0?`start`:N.value.xAxis.dataLabels.rotation<0?`end`:`middle`,"font-size":B.value.xAxisFontSize,fill:N.value.xAxis.dataLabels.color,stroke:F.value.backgroundColor,"stroke-width":`3`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"paint-order":`stroke fill`,"font-weight":N.value.xAxis.dataLabels.bold?`bold`:`normal`},et(e?.text??``),9,bt)]))),256))],512)):m(``,!0),j.value.type===`candlestick`?(v(),h(f,{key:4},[g(`g`,null,[(v(!0),h(f,null,b(Q.value,(e,t)=>(v(),h(`g`,null,[g(`rect`,{x:e.open.x-P.value.wick.strokeWidth/2,y:e.high.y,width:P.value.wick.strokeWidth,height:Math.abs(e.high.y-e.low.y),fill:P.value.wick.stroke,stroke:`none`,rx:P.value.wick.strokeWidth/2,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,xt),P.value.wick.extremity.shape===`circle`?(v(),h(`g`,St,[g(`circle`,{cx:e.high.x,cy:e.high.y,r:P.value.wick.extremity.size===`auto`?X.value/20:P.value.wick.extremity.size,fill:P.value.wick.extremity.color,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,Ct),g(`circle`,{cx:e.low.x,cy:e.low.y,r:P.value.wick.extremity.size===`auto`?X.value/20:P.value.wick.extremity.size,fill:P.value.wick.extremity.color,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,wt)])):m(``,!0),P.value.wick.extremity.shape===`line`?(v(),h(`g`,Tt,[g(`rect`,{x:e.high.x-(P.value.wick.extremity.size===`auto`?X.value*P.value.candle.widthRatio:P.value.wick.extremity.size)/2,y:e.high.y-P.value.wick.strokeWidth/2,width:Math.abs(e.high.x-(P.value.wick.extremity.size===`auto`?X.value*F.value.layout.candle.widthRatio:F.value.layout.wick.extremity.size)/2-(e.high.x+(F.value.layout.wick.extremity.size===`auto`?X.value*F.value.layout.candle.widthRatio:F.value.layout.wick.extremity.size)/2)),height:P.value.wick.strokeWidth,rx:P.value.wick.strokeWidth/2,fill:P.value.wick.extremity.color,stroke:`none`,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,Et),g(`rect`,{x:e.low.x-(P.value.wick.extremity.size===`auto`?X.value*P.value.candle.widthRatio:P.value.wick.extremity.size)/2,y:e.low.y-P.value.wick.strokeWidth/2,width:Math.abs(e.low.x-(P.value.wick.extremity.size===`auto`?X.value*F.value.layout.candle.widthRatio:F.value.layout.wick.extremity.size)/2-(e.low.x+(F.value.layout.wick.extremity.size===`auto`?X.value*F.value.layout.candle.widthRatio:F.value.layout.wick.extremity.size)/2)),height:P.value.wick.strokeWidth,fill:P.value.wick.extremity.color,stroke:`none`,rx:P.value.wick.strokeWidth/2,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,Dt)])):m(``,!0)]))),256))]),g(`g`,null,[(v(!0),h(f,null,b(Q.value,(e,t)=>(v(),h(`rect`,{x:e.open.x-X.value/2+X.value*(1-M.value.widthRatio)/2,y:e.isBullish?e.close.y:e.open.y,height:Math.abs(e.close.y-e.open.y)<=0?1e-4:Math.abs(e.close.y-e.open.y),width:X.value*M.value.widthRatio<=0?1e-4:X.value*M.value.widthRatio,fill:M.value.gradient.underlayer,rx:M.value.borderRadius,stroke:`none`,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,Ot))),256)),(v(!0),h(f,null,b(Q.value,(e,t)=>(v(),h(`rect`,{x:e.open.x-X.value/2+X.value*(1-M.value.widthRatio)/2,y:e.isBullish?e.close.y:e.open.y,height:Math.abs(e.close.y-e.open.y)<=0?1e-4:Math.abs(e.close.y-e.open.y),width:X.value*M.value.widthRatio<=0?1e-4:X.value*M.value.widthRatio,fill:e.isBullish?M.value.gradient.show?`url(#bullish_gradient_${D.value})`:M.value.colors.bullish:M.value.gradient.show?`url(#bearish_gradient_${D.value})`:M.value.colors.bearish,rx:M.value.borderRadius,stroke:M.value.stroke,"stroke-width":M.value.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:_({"vue-data-ui-transition":E.value&&!S(L)})},null,10,kt))),256))])],64)):m(``,!0),j.value.type===`ohlc`?(v(!0),h(f,{key:5},b(Q.value,(e,t)=>(v(),h(`g`,{key:`ohlc_${e.absoluteIndex}`},[g(`path`,{d:`M ${e.high.x},${e.high.y} ${e.low.x},${e.low.y} M${e.open.x-Math.min(6,X.value/3)},${e.open.y} ${e.open.x},${e.open.y} M${e.close.x},${e.close.y} ${e.close.x+Math.min(6,X.value/3)},${e.close.y}`,stroke:e.isBullish?M.value.colors.bullish:M.value.colors.bearish,"stroke-width":1,class:_({"vue-data-ui-transition":S(vn)}),"stroke-linecap":`round`,"stroke-linejoin":`round`},null,10,At)]))),128)):m(``,!0),g(`g`,null,[(v(!0),h(f,null,b(Q.value,(e,t)=>(v(),h(`rect`,{x:H.value.left+t*X.value,y:H.value.top,height:H.value.height<=0?1e-4:H.value.height,width:X.value<=0?1e-4:X.value,fill:O.value===t||mn.value===t?S(a)(P.value.selector.color,P.value.selector.opacity):`transparent`,onMouseover:()=>jr(t,e,`pointer`),onMouseleave:()=>Ar(t,e),onClick:()=>kr(t,e)},null,40,jt))),256))])])):m(``,!0),ui.value?(v(),h(`rect`,{key:2,x:ui.value.x,y:ui.value.y,width:ui.value.width,height:ui.value.height,fill:Yn.value.selection.fill,"fill-opacity":Yn.value.selection.fillOpacity,stroke:Yn.value.selection.stroke,"stroke-opacity":Yn.value.selection.strokeOpacity,"stroke-width":Yn.value.selection.strokeWidth,"stroke-dasharray":Yn.value.selection.strokeDasharray,"stroke-linecap":`round`,"stroke-linejoin":`round`,"pointer-events":`none`},null,8,Mt)):m(``,!0),Qn.value?(v(),h(`rect`,Ke({key:3},Un.value,{"data-start":W.value.start,"data-end":W.value.end}),null,16,Nt)):m(``,!0),x(e.$slots,`svg`,{svg:{...B.value,data:Q.value,drawingArea:H.value,isPrintingImg:S(Nn)||S(Pn)||S(ti),isPrintingSvg:S(ni)}},void 0,!0)],46,ct)),e.$slots.hint?(v(),h(`div`,Pt,[x(e.$slots,`hint`,Je(Ge({hint:j.value.a11y.translations.keyboardNavigation,isVisible:_n.value})),void 0,!0)])):m(``,!0)]),e.$slots.watermark?(v(),h(`div`,Ft,[x(e.$slots,`watermark`,Je(Ge({isPrinting:S(Nn)||S(Pn)||S(ti)||S(ni)})),void 0,!0)])):m(``,!0),F.value.zoom.show&&U.value>6&&Xt.value&&Ir.value?(v(),Be(Fe,{key:6,ref_key:`chartSlicer`,ref:rn,"data-dom-to-png-ignore-layout":``,allMinimaps:pr.value,background:F.value.zoom.color,borderColor:F.value.backgroundColor,customFormat:F.value.zoom.customFormat,cutNullValues:!1,enableRangeHandles:F.value.zoom.enableRangeHandles,enableSelectionDrag:F.value.zoom.enableSelectionDrag,end:W.value.end,focusOnDrag:F.value.zoom.focusOnDrag,focusRangeRatio:F.value.zoom.focusRangeRatio,fontSize:F.value.zoom.fontSize,immediate:!F.value.zoom.preview.enable,inputColor:F.value.zoom.color,isPreview:Qn.value,labelLeft:Dr.value.start||``,labelRight:Dr.value.end||``,max:U.value,min:0,minimap:F.value.zoom.minimap.show?S(R).map(e=>e[2]):[],minimapCompact:F.value.zoom.minimap.compact,minimapFrameColor:F.value.zoom.minimap.frameColor,minimapIndicatorColor:F.value.zoom.minimap.indicatorColor,minimapMerged:!1,minimapSelectedColor:F.value.zoom.minimap.selectedColor,minimapSelectedColorOpacity:F.value.zoom.minimap.selectedColorOpacity,minimapSelectedIndex:O.value,minimapSelectionRadius:1,preciseLabels:wr.value,refreshEndPoint:F.value.zoom.endIndex===null?U.value:F.value.zoom.endIndex+1,refreshStartPoint:F.value.zoom.startIndex===null?0:F.value.zoom.startIndex,selectColor:F.value.zoom.highlightColor,selectedSeries:S(R),smoothMinimap:!1,start:W.value.start,textColor:F.value.color,timeLabels:_r.value,usePreciseLabels:N.value.xAxis.dataLabels.datetimeFormatter.enable&&!F.value.zoom.useDefaultFormat,useResetSlot:F.value.zoom.useResetSlot,valueEnd:W.value.end,valueStart:W.value.start,verticalHandles:F.value.zoom.minimap.verticalHandles,minScale:N.value.yAxis.scale.min,maxScale:N.value.yAxis.scale.max,maxWidth:F.value.zoom.maxWidth,minimapLeftInsetRatio:B.value.width>0&&F.value.zoom.autoFit?H.value.left/B.value.width:null,minimapRightInsetRatio:B.value.width>0&&F.value.zoom.autoFit?(B.value.width-H.value.right)/B.value.width:null,additionalMinimapHeight:F.value.zoom.minimap.additionalHeight,handleType:F.value.zoom.minimap.handleType,handleIconColor:F.value.zoom.minimap.handleIconColor,handleBorderWidth:F.value.zoom.minimap.handleBorderWidth,handleBorderColor:F.value.zoom.minimap.handleBorderColor,handleFill:F.value.zoom.minimap.handleFill,handleWidth:F.value.zoom.minimap.handleWidth,"onUpdate:end":ci,"onUpdate:start":si,onTrapMouse:ai,onReset:t[0]||=()=>Pr({force:!0,publish:!0}),onFutureEnd:t[1]||=e=>$n(`end`,e),onFutureStart:t[2]||=e=>$n(`start`,e)},{"reset-action":C(({reset:t})=>[x(e.$slots,`reset-action`,Je(Ge({reset:t})),void 0,!0)]),slotMap:C(({height:e,unitW:t})=>[(v(!0),h(f,null,b(fr.value({minimapH:e,unitW:t}),(e,n)=>(v(),h(`g`,null,[g(`path`,{d:`M ${e.high.x},${e.high.y} ${e.low.x},${e.low.y}`,stroke:e.isBullish?M.value.colors.bullish:M.value.colors.bearish,"stroke-width":1,style:Ye({opacity:n>=G.value.start&&n<=G.value.end?1:.6})},null,12,It),g(`path`,{d:`M ${e.open.x},${e.open.y} ${e.close.x},${e.close.y}`,stroke:e.isBullish?M.value.colors.bullish:M.value.colors.bearish,"stroke-width":Math.min(6,t/1.5),style:Ye({opacity:n>=G.value.start&&n<=G.value.end?1:.6})},null,12,Lt)]))),256))]),_:3},8,/* @__PURE__ */ `allMinimaps.background.borderColor.customFormat.enableRangeHandles.enableSelectionDrag.end.focusOnDrag.focusRangeRatio.fontSize.immediate.inputColor.isPreview.labelLeft.labelRight.max.minimap.minimapCompact.minimapFrameColor.minimapIndicatorColor.minimapSelectedColor.minimapSelectedColorOpacity.minimapSelectedIndex.preciseLabels.refreshEndPoint.refreshStartPoint.selectColor.selectedSeries.start.textColor.timeLabels.usePreciseLabels.useResetSlot.valueEnd.valueStart.verticalHandles.minScale.maxScale.maxWidth.minimapLeftInsetRatio.minimapRightInsetRatio.additionalMinimapHeight.handleType.handleIconColor.handleBorderWidth.handleBorderColor.handleFill.handleWidth`.split(`.`))):m(``,!0),g(`div`,{ref_key:`chartLegend`,ref:nn},[x(e.$slots,`legend`,{legend:Q.value},void 0,!0)],512),e.$slots.source?(v(),h(`div`,{key:7,ref_key:`source`,ref:an,dir:`auto`},[x(e.$slots,`source`,{},void 0,!0)],512)):m(``,!0),Ue(S(Bt),{teleportTo:F.value.tooltip.teleportTo,show:V.value.showTooltip&&Qt.value,backgroundColor:F.value.tooltip.backgroundColor,color:F.value.tooltip.color,borderRadius:F.value.tooltip.borderRadius,borderColor:F.value.tooltip.borderColor,borderWidth:F.value.tooltip.borderWidth,fontSize:F.value.tooltip.fontSize,backgroundOpacity:F.value.tooltip.backgroundOpacity,position:F.value.tooltip.position,offsetX:F.value.tooltip.offsetX,offsetY:F.value.tooltip.offsetY,parent:k.value,content:$t.value,isFullscreen:Hr.value,isCustom:F.value.tooltip.customFormat&&typeof F.value.tooltip.customFormat==`function`,smooth:F.value.tooltip.smooth,backdropFilter:F.value.tooltip.backdropFilter,smoothForce:F.value.tooltip.smoothForce,smoothSnapThreshold:F.value.tooltip.smoothSnapThreshold,isA11yMode:gn.value===`keyboard`,a11yPosition:hn.value},{"tooltip-before":C(()=>[x(e.$slots,`tooltip-before`,Je(Ge({...Or.value})),void 0,!0)]),tooltip:C(()=>[x(e.$slots,`tooltip`,Je(Ge({...Or.value})),void 0,!0)]),"tooltip-after":C(()=>[x(e.$slots,`tooltip-after`,Je(Ge({...Or.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),Xt.value&&I.value.buttons.table?(v(),Be(Qe(Zr.value.component),Ke({key:8},Zr.value.props,{ref_key:`tableUnit`,ref:fn,onClose:Qr}),Ve({content:C(()=>[(v(),Be(S(Ht),{key:`table_${cn.value}`,colNames:Vr.value.colNames,head:Vr.value.head,body:Vr.value.body,config:Vr.value.config,title:j.value.table.useDialog?``:Zr.value.title,withCloseButton:!j.value.table.useDialog,isCursorPointer:yn.value,onClose:Qr},{th:C(({th:e})=>[He(et(e),1)]),td:C(({td:e})=>[g(`div`,{innerHTML:e},null,8,Rt)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[j.value.table.useDialog?{name:`title`,fn:C(()=>[He(et(Zr.value.title),1)]),key:`0`}:void 0,j.value.table.useDialog?{name:`actions`,fn:C(()=>[g(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[3]||=e=>Br(I.value.callbacks.csv),style:Ye({cursor:yn.value?`pointer`:`default`})},[Ue(S(zt),{name:`fileCsv`,stroke:Zr.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):m(``,!0),x(e.$slots,`skeleton`,{},()=>[S(L)?(v(),Be(de,{key:0})):m(``,!0)],!0)],46,at))}},[[`__scopeId`,`data-v-6283295e`]]);export{it as n,zt as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{D as n,Jt as r,X as i,at as a,nt as ee,zt as o}from"./lib-DqD8nbyX.js";import{n as te,t as ne}from"./useHints-BH9r_0Vd.js";import{t as re}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as ie}from"./useNestedProp-DrLnzyHO.js";import{n as ae,t as oe}from"./userOptionsSlots-DYuo-E5m.js";import{t as se}from"./usePrinter-Cj4eIYC_.js";import{t as ce}from"./useUserOptionState-CXlFnwPv.js";import{t as le}from"./usePrefersMotion-XLHwega2.js";import{Fragment as s,computed as c,createBlock as ue,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createSlots as de,createTextVNode as f,defineAsyncComponent as fe,guardReactiveProps as pe,mergeProps as me,nextTick as he,normalizeClass as ge,normalizeProps as _e,normalizeStyle as p,onBeforeUnmount as m,onMounted as h,openBlock as g,ref as _,renderList as v,renderSlot as y,shallowRef as ve,toDisplayString as b,unref as x,useSlots as ye,watch as S,withCtx as be}from"vue";var C=/* @__PURE__ */ e({default:()=>w}),xe=[`id`],Se=[`aria-labelledby`],Ce=[`id`],we=[`height`],Te=[`id`],Ee=[`data-cell`,`aria-label`,`height`],De={key:2,ref:`source`,dir:`auto`},w=/*#__PURE__*/ re({__name:`vue-ui-carousel-table`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:re,emit:C}){let w=fe(()=>import(`./vue-ui-skeleton-DTn7uIui.js`).then(e=>e.n)),Oe=fe(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),{vue_ui_carousel_table:ke}=t(),Ae=le(),T=e,je=C,E=_(i()),Me=_(!1),D=_(!!T.dataset),Ne=ye();h(()=>{Pe()});let O=c({get:()=>N(),set:e=>e}),k=c(()=>O.value.debug);h(()=>{Ne[`chart-background`]&&k.value&&console.warn(`VueUiCarouselTable does not support the #chart-background slot.`)});function Pe(){o(T.dataset)?a({componentName:`VueUiCarouselTable`,type:`dataset`,debug:k.value}):((!T.dataset.head||o(T.dataset.head))&&(a({componentName:`VueUiCarouselTable`,type:`datasetAttribute`,property:`head`,debug:k.value}),D.value=!1),(!T.dataset.body||o(T.dataset.body))&&(a({componentName:`VueUiCarouselTable`,type:`datasetAttribute`,property:`body`,debug:k.value}),D.value=!1)),Ae.value&&(O.value.userOptions.buttons.animation=!1)}te({config:()=>O.value,dataset:()=>T.dataset,component:`VueUiCarouselTable`,rules:[ne.noHint]});let Fe=c(()=>O.value.userOptions.useCursorPointer),{userOptionsVisible:A,setUserOptionsVisibility:j,keepUserOptionState:M}=ce({config:O.value});function N(){return ie({userConfig:T.config,defaultConfig:ke})}S(()=>T.config,e=>{O.value=N(),A.value=!O.value.userOptions.showOnChartHover,Pe()},{deep:!0}),S(()=>T.dataset,e=>{G()},{deep:!0});let{isPrinting:P,isImaging:Ie,generatePdf:Le,generateImage:Re}=se({elementId:`carousel-table_${E.value}`,fileName:O.value.caption.text||`vue-ui-carousel-table`,options:O.value.userOptions.print}),F=_({showAnimation:O.value.animation.use}),I=_(null),ze=_(null),L=_(null),R=_(null),z=_(0),B=_(0),V=_(!1),H=_(null),U=_(null),W=_(0);function G(){H.value&&(U.value={elements:H.value.getElementsByTagName(`tr`),heights:Array.from(H.value.getElementsByTagName(`tr`)).map(e=>e.getBoundingClientRect().height)})}h(G);let Be=c(()=>!U.value||!U.value.heights.length?0:Math.max(...U.value.heights)+z.value+B.value),Ve=c(()=>T.dataset.body?O.value.tbody.tr.visible<=T.dataset.body.length?O.value.tbody.tr.visible:T.dataset.body.length:0),He=c(()=>(O.value.tbody.tr.height+O.value.tbody.tr.td.padding.top+O.value.tbody.tr.td.padding.bottom+O.value.tbody.tr.border.size*2)*Ve.value+z.value+B.value),K=_(0),q=_(null),J=_(0),Y=_(!1),Ue=_(0);h(()=>{L.value&&(z.value=L.value.getBoundingClientRect().height),R.value&&(B.value=R.value.getBoundingClientRect().height),F.value.showAnimation&&U.value&&Ge()}),h(()=>{if(I.value){let e=I.value.querySelector(`thead`),t=Array.from(H.value.querySelectorAll(`tr`));function n(){let n=e.getBoundingClientRect().bottom;t.forEach(e=>{e.getBoundingClientRect().top<n?e.style.visibility=`hidden`:e.style.visibility=`visible`})}I.value.addEventListener(`scroll`,n),n(),m(()=>{I.value.removeEventListener(`scroll`,n)})}});function We(e){Me.value=e,Ue.value+=1}function Ge(){Ae.value||!q.value&&!Y.value&&(O.value.animation.type===`scroll`?q.value=requestAnimationFrame(qe):q.value=requestAnimationFrame(Je))}function Ke(){if(!I.value)return!1;let{scrollTop:e,scrollHeight:t,clientHeight:n}=I.value;return e+n>=t}function qe(e){Y.value||(J.value||=e,e-J.value>=O.value.animation.speedMs&&(K.value+=U.value.heights[W.value],(Ke()||W.value>=U.value.heights.length)&&(K.value=0,W.value=-1),W.value+=1,I.value&&I.value.scrollTo({top:K.value,behavior:`smooth`}),J.value=e),q.value=requestAnimationFrame(qe))}function Je(e){if(Y.value)return;J.value||=e;let t=e-J.value,n=O.value.animation.speedMs/4/1e3;t>=n&&(K.value+=n,K.value>=I.value.scrollHeight-I.value.clientHeight&&(K.value=0),I.value&&I.value.scrollTo({top:K.value,behavior:`auto`}),J.value=e),q.value=requestAnimationFrame(Je)}function X(){Y.value=!0,cancelAnimationFrame(q.value),q.value=null}m(X);function Z(){Y.value&&F.value.showAnimation&&(Y.value=!1,J.value=0,Ge())}function Ye(){O.value.animation.pauseOnHover&&X()}let Q=_(null);function Xe(){X(),clearTimeout(Q.value)}function Ze(){clearTimeout(Q.value),Q.value=setTimeout(Z,1e3)}S(()=>O.value.animation.use,e=>{e?(F.value.showAnimation=!0,Z()):(F.value.showAnimation=!1,X())}),S(()=>O.value.animation.type,e=>{X(),K.value=0,W.value=0,I.value.scrollTo({top:0,behavior:`auto`}),Z()});let Qe=c(()=>O.value.responsiveBreakpoint),$=ve(null);h(()=>{$.value=new ResizeObserver(e=>{e.forEach(e=>{V.value=e.contentRect.width<Qe.value}),z.value=L.value?L.value.getBoundingClientRect().height:0,B.value=R.value?R.value.getBoundingClientRect().height:0,W.value=0,he(()=>{X(),J.value=0,K.value=0,G(),Z()})}),I.value&&$.value.observe(I.value)}),m(()=>{$.value&&$.value.disconnect()});function $e(){Le()}function et(){F.value.showAnimation=!F.value.showAnimation,F.value.showAnimation?Z():X()}function tt(e=null){he(()=>{let t=T.dataset.head.map((e,t)=>[[T.dataset.body[t]]]),r=[[O.value.caption.text],[T.dataset.head.map(e=>[e])]].concat(t),i=n(r);e?e(i):ee({csvContent:i,title:O.value.caption.text||`vue-ui-carousel-table`})})}async function nt(){if(je(`copyAlt`,{config:O.value,dataset:T.dataset}),!O.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(O.value.userOptions.callbacks.altCopy({config:O.value,dataset:T.dataset}))}return re({pauseAnimation:X,resumeAnimation:Z,toggleAnimation:et,generateCsv:tt,generatePdf:$e,generateImage:Re,copyAlt:nt}),(t,n)=>(g(),u(`div`,{class:`vue-data-ui-component vue-ui-carousel-table`,style:{position:`relative`,overflow:`visible`},ref_key:`chartContainer`,ref:ze,onMouseenter:n[5]||=()=>x(j)(!0),onMouseleave:n[6]||=()=>x(j)(!1)},[d(`div`,{ref_key:`tableContainer`,ref:I,id:`carousel-table_${E.value}`,style:p({height:x(P)||x(Ie)?`auto`:`${Math.max(He.value,Be.value)}px`,containerType:`inline-size`,position:`relative`,overflow:`auto`,fontFamily:O.value.fontFamily}),class:ge({"vue-ui-responsive":V.value,"is-playing":O.value.scrollbar.hide||!Y.value&&O.value.scrollbar.showOnlyOnHover}),onMouseover:n[0]||=e=>Ye(),onMouseleave:n[1]||=e=>Z(),onTouchstart:n[2]||=e=>Xe(),onTouchend:n[3]||=e=>Ze(),onTouchcancel:n[4]||=e=>Ze()},[D.value?(g(),u(`table`,{key:0,class:`vue-data-ui-carousel-table`,"aria-labelledby":`carousel-caption-${E.value}`,style:p({...O.value.style,border:`${O.value.border.size}px solid ${O.value.border.color}`,width:`100%`,borderCollapse:`collapse`,backgroundColor:O.value.tbody.backgroundColor})},[d(`caption`,{ref_key:`caption`,ref:L,class:`vue-data-ui-carousel-table-caption`,id:`carousel-caption-${E.value}`,style:p({...O.value.caption.style,fontFamily:`inherit`,position:`sticky`,top:0,zIndex:2,paddingTop:O.value.caption.padding.top+`px`,paddingRight:O.value.caption.padding.right+`px`,paddingBottom:O.value.caption.padding.bottom+`px`,paddingLeft:O.value.caption.padding.left+`px`,boxShadow:V.value?O.value.thead.tr.style.boxShadow:`none`,minHeight:`36px`,display:t.$slots.caption||O.value.caption.text||O.value.userOptions.show?``:`none`})},[f(b(O.value.caption.text&&!t.$slots.caption?O.value.caption.text:``)+` `,1),y(t.$slots,`caption`,{},void 0,!0)],12,Ce),d(`thead`,{role:`rowgroup`,style:p({...O.value.thead.style,position:`sticky`,top:`${t.$slots.caption||O.value.caption.text||O.value.userOptions.show?z.value:0}px`,zIndex:1})},[d(`tr`,{ref_key:`tableRow`,ref:R,role:`row`,style:p({...O.value.thead.tr.style,border:O.value.thead.tr.border.size?`${O.value.thead.tr.border.size}px solid ${O.value.thead.tr.border.color}`:`none`,boxShadow:V.value?`none`:O.value.thead.tr.style.boxShadow}),height:`${O.value.thead.tr.height}px`},[(g(!0),u(s,null,v(e.dataset.head,(e,n)=>(g(),u(`th`,{role:`cell`,key:`th_${n}`,id:`col-${n}`,scope:`col`,style:p({...O.value.thead.tr.th.style,border:O.value.thead.tr.th.border.size?`${O.value.thead.tr.th.border.size}px solid ${O.value.thead.tr.th.border.color}`:`none`,paddingTop:O.value.thead.tr.th.padding.top+`px`,paddingRight:O.value.thead.tr.th.padding.right+`px`,paddingBottom:O.value.thead.tr.th.padding.bottom+`px`,paddingLeft:O.value.thead.tr.th.padding.left+`px`})},[f(b(t.$slots.th?``:e)+` `,1),y(t.$slots,`th`,me({ref_for:!0},{th:e,colIndex:n}),void 0,!0)],12,Te))),128))],12,we)],4),e.dataset.body&&e.dataset.head?(g(),u(`tbody`,{key:0,ref_key:`tbody`,ref:H,"aria-live":`polite`,style:{clipPath:`inset(0,0,0,0)`}},[(g(!0),u(s,null,v(e.dataset.body,(n,i)=>(g(),u(`tr`,{style:p({...O.value.tbody.tr.style,border:`${O.value.tbody.tr.border.size}px solid ${O.value.tbody.tr.border.color}`,verticalAlign:`middle`})},[(g(!0),u(s,null,v(n,(n,a)=>(g(),u(`td`,{role:`cell`,"data-cell":e.dataset.head[a]||``,"aria-label":`${e.dataset.head[a]}: ${n}`,style:p({...O.value.tbody.tr.td.style,border:`${O.value.tbody.tr.td.border.size}px solid ${O.value.tbody.tr.td.border.color}`,backgroundColor:x(r)(O.value.tbody.tr.td.style.backgroundColor,i%2==0&&O.value.tbody.tr.td.alternateColor?O.value.tbody.tr.td.alternateOpacity*100:100),paddingTop:O.value.tbody.tr.td.padding.top+`px`,paddingRight:O.value.tbody.tr.td.padding.right+`px`,paddingBottom:O.value.tbody.tr.td.padding.bottom+`px`,paddingLeft:O.value.tbody.tr.td.padding.left+`px`,verticalAlign:`middle`}),height:`${O.value.tbody.tr.height}px`},[f(b(t.$slots.td?``:n)+` `,1),y(t.$slots,`td`,me({ref_for:!0},{td:n,rowIndex:i,colIndex:a}),void 0,!0)],12,Ee))),256))],4))),256))],512)):l(``,!0)],12,Se)):l(``,!0)],46,xe),D.value?l(``,!0):(g(),ue(x(w),{key:0,config:{type:`table`}})),O.value.userOptions.show&&D.value&&(x(M)||x(A))?(g(),ue(x(Oe),{ref:`details`,key:`user_option_${Ue.value}`,backgroundColor:O.value.style.backgroundColor,color:O.value.style.color,isPrinting:x(P),isImaging:x(Ie),uid:E.value,hasTooltip:!1,hasPdf:O.value.userOptions.buttons.pdf,hasImg:O.value.userOptions.buttons.img,hasXls:O.value.userOptions.buttons.csv,hasTable:!1,hasLabel:!1,hasAnimation:O.value.userOptions.buttons.animation,isAnimation:!F.value.showAnimation,hasFullscreen:O.value.userOptions.buttons.fullscreen,hasAltCopy:O.value.userOptions.buttons.altCopy,isFullscreen:Me.value,chartElement:ze.value,position:O.value.userOptions.position,titles:{...O.value.userOptions.buttonTitles},zIndex:3,offsetX:12,callbacks:O.value.userOptions.callbacks,printScale:O.value.userOptions.print.scale,isCursorPointer:Fe.value,onGeneratePdf:$e,onGenerateCsv:tt,onGenerateImage:x(Re),onToggleAnimation:et,onToggleFullscreen:We,onCopyAlt:nt,style:p({visibility:x(M)?x(A)?`visible`:`hidden`:`visible`})},de({_:2},[v(x(ae)(t.$slots,`menuIcon optionPdf optionCsv optionImg optionSvg optionAnimation optionFullscreen optionAltCopy custom-menu-before custom-menu-after`),e=>({name:e,fn:be(n=>[y(t.$slots,e,_e(pe(x(oe)(e,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasImg`,`hasXls`,`hasAnimation`,`isAnimation`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`chartElement`,`position`,`titles`,`callbacks`,`printScale`,`isCursorPointer`,`onGenerateImage`,`style`])):l(``,!0),t.$slots.source?(g(),u(`div`,De,[y(t.$slots,`source`,{},void 0,!0)],512)):l(``,!0)],544))}},[[`__scopeId`,`data-v-f8c6267a`]]);export{C as n,w as t};