vue-data-ui 2.4.58 → 2.4.60

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 (202) hide show
  1. package/README.md +82 -51
  2. package/dist/{Arrow-gAjHZoeI.js → Arrow-BLYi22nR.js} +1 -1
  3. package/dist/{Arrow-DyvFEpcu.cjs → Arrow-BoAS4IQq.cjs} +1 -1
  4. package/dist/{BaseIcon-DKQOeA_7.cjs → BaseIcon-BHIQREMO.cjs} +1 -1
  5. package/dist/{BaseIcon-B0g_Fksl.js → BaseIcon-EWtqg17H.js} +1 -1
  6. package/dist/{DataTable-BloVsNyj.js → DataTable-DO8KGCcE.js} +2 -2
  7. package/dist/{DataTable-Bju6hUOX.cjs → DataTable-Dtq94CxH.cjs} +1 -1
  8. package/dist/{Legend-BsPIe_nG.cjs → Legend-CMyzYtIb.cjs} +1 -1
  9. package/dist/{Legend-CdpH9pz7.js → Legend-DGWOCyLt.js} +1 -1
  10. package/dist/{PackageVersion-W3d_oNMs.js → PackageVersion-BSLNI6kk.js} +1 -1
  11. package/dist/{PackageVersion-Bmujq1-q.cjs → PackageVersion-B_1OHk5A.cjs} +1 -1
  12. package/dist/{PenAndPaper-xuFs3BqZ.js → PenAndPaper-CxMtGtJt.js} +3 -3
  13. package/dist/{PenAndPaper-Be8tn5wI.cjs → PenAndPaper-DhXsAnuf.cjs} +1 -1
  14. package/dist/{Shape-CXTDY_Vo.js → Shape-DnqZey62.js} +1 -1
  15. package/dist/{Shape-Cx89w9Ul.cjs → Shape-y66NSXKp.cjs} +1 -1
  16. package/dist/{Slicer-HGyFRIya.cjs → Slicer-CkI4c7ft.cjs} +1 -1
  17. package/dist/{Slicer-ENfxtrty.js → Slicer-D9bKLcPd.js} +2 -2
  18. package/dist/{Title-1u-GspsX.js → Title-CSqO5Y62.js} +1 -1
  19. package/dist/{Title-CNO85jNx.cjs → Title-DjAOcuWO.cjs} +1 -1
  20. package/dist/{Tooltip-DQOeAhx3.cjs → Tooltip-AHTiRuWB.cjs} +1 -1
  21. package/dist/{Tooltip-B-1Q-Tts.js → Tooltip-D_6iYZSH.js} +1 -1
  22. package/dist/documentation/installation.md +48 -48
  23. package/dist/index-CgZGelSi.cjs +9 -0
  24. package/dist/{index-BSzkwF5n.js → index-D7dTQAhm.js} +2 -2
  25. package/dist/style.css +1 -1
  26. package/dist/{useNestedProp-CSKuqs0C.cjs → useNestedProp-BxCE3J3Z.cjs} +1 -1
  27. package/dist/{useNestedProp-BWC_DPZ5.js → useNestedProp-Dqsj7eUX.js} +1 -1
  28. package/dist/{usePrinter-DtwWejoO.js → usePrinter-B_Ihuvge.js} +1 -1
  29. package/dist/{usePrinter-D-iwyLyE.cjs → usePrinter-sTw1FdN_.cjs} +1 -1
  30. package/dist/{vue-data-ui-Com866XF.cjs → vue-data-ui-BttN99Pm.cjs} +1 -1
  31. package/dist/{vue-data-ui-jb1K_VTO.js → vue-data-ui-CcmpjOfT.js} +60 -60
  32. package/dist/vue-data-ui.cjs +1 -1
  33. package/dist/vue-data-ui.js +1 -1
  34. package/dist/vue-ui-3d-bar-8ewYobNj.cjs +19 -0
  35. package/dist/{vue-ui-3d-bar-Cqc5gqnb.js → vue-ui-3d-bar-TVrDBG5I.js} +170 -158
  36. package/dist/{vue-ui-accordion-lCjQo2kd.cjs → vue-ui-accordion-BZH6cz4t.cjs} +1 -1
  37. package/dist/{vue-ui-accordion-CJdfn7N-.js → vue-ui-accordion-lCiFhb8k.js} +3 -3
  38. package/dist/vue-ui-age-pyramid-BqL8zDjt.cjs +1 -0
  39. package/dist/{vue-ui-age-pyramid-D89kDZnF.js → vue-ui-age-pyramid-rHtMf5-R.js} +176 -164
  40. package/dist/{vue-ui-annotator-Cf-zFFmT.js → vue-ui-annotator-DHgSReIY.js} +1 -1
  41. package/dist/{vue-ui-annotator-muK3_F6c.cjs → vue-ui-annotator-fZIPfk7y.cjs} +1 -1
  42. package/dist/vue-ui-bullet-48af9PqJ.cjs +34 -0
  43. package/dist/{vue-ui-bullet-CT5Gkoot.js → vue-ui-bullet-BwhlvcvA.js} +155 -143
  44. package/dist/vue-ui-candlestick-Ce3tBGpX.cjs +2 -0
  45. package/dist/{vue-ui-candlestick-DmsHITZF.js → vue-ui-candlestick-dMIrnPD6.js} +96 -84
  46. package/dist/{vue-ui-carousel-table-N7QL7jRR.js → vue-ui-carousel-table-EcwgqGoI.js} +97 -95
  47. package/dist/vue-ui-carousel-table-ZhjRbt5-.cjs +1 -0
  48. package/dist/vue-ui-chestnut-VbrVVUon.cjs +6 -0
  49. package/dist/{vue-ui-chestnut-C7b1puxs.js → vue-ui-chestnut-vnOyc43k.js} +160 -148
  50. package/dist/{vue-ui-cursor-BOS7Yvio.cjs → vue-ui-cursor-BdXcdH2e.cjs} +1 -1
  51. package/dist/{vue-ui-cursor-CAnOat4M.js → vue-ui-cursor-nMbvzf_R.js} +2 -2
  52. package/dist/{vue-ui-dashboard-OzgTaY3n.js → vue-ui-dashboard-BtaQn50h.js} +2 -2
  53. package/dist/{vue-ui-dashboard-DI22fn9M.cjs → vue-ui-dashboard-CboN2WC8.cjs} +1 -1
  54. package/dist/{vue-ui-digits-DGP4EmpQ.cjs → vue-ui-digits-CUvrlpPz.cjs} +1 -1
  55. package/dist/{vue-ui-digits-DCm2stj-.js → vue-ui-digits-CVfceh4-.js} +2 -2
  56. package/dist/vue-ui-donut-BckYXDZJ.cjs +1 -0
  57. package/dist/{vue-ui-donut-BilWHtZy.js → vue-ui-donut-CgYNthls.js} +292 -280
  58. package/dist/vue-ui-donut-evolution-BhlBp6R-.cjs +1 -0
  59. package/dist/{vue-ui-donut-evolution-DKmnEHH_.js → vue-ui-donut-evolution-Bose25D6.js} +285 -273
  60. package/dist/vue-ui-dumbbell-C2iT17s8.cjs +9 -0
  61. package/dist/{vue-ui-dumbbell-KwkTK5_q.js → vue-ui-dumbbell-CzSlukSu.js} +159 -147
  62. package/dist/vue-ui-flow-DDlFrtkk.cjs +1 -0
  63. package/dist/{vue-ui-flow-BShJPhpa.js → vue-ui-flow-DoDWK84L.js} +162 -150
  64. package/dist/vue-ui-funnel-BfJoFIfh.cjs +1 -0
  65. package/dist/{vue-ui-funnel-D4xk_DsA.js → vue-ui-funnel-CM_ixf98.js} +229 -215
  66. package/dist/vue-ui-galaxy-CP71UAF5.cjs +1 -0
  67. package/dist/{vue-ui-galaxy-Ch3QRiP6.js → vue-ui-galaxy-DlwjTJCx.js} +148 -136
  68. package/dist/{vue-ui-gauge-DZUv5beK.js → vue-ui-gauge-ByfGCK6z.js} +119 -107
  69. package/dist/vue-ui-gauge-LqhfOqH-.cjs +1 -0
  70. package/dist/{vue-ui-gizmo-B39J58Zm.js → vue-ui-gizmo-D8Rq5vzL.js} +45 -43
  71. package/dist/vue-ui-gizmo-DFnOaVHf.cjs +1 -0
  72. package/dist/vue-ui-heatmap-A8qDlc58.cjs +1 -0
  73. package/dist/{vue-ui-heatmap-z8KMf1yo.js → vue-ui-heatmap-BLjVXXW4.js} +138 -126
  74. package/dist/vue-ui-history-plot-Bxi5QRP8.cjs +1 -0
  75. package/dist/{vue-ui-history-plot--Lw1-910.js → vue-ui-history-plot-DXoNlRFZ.js} +127 -115
  76. package/dist/vue-ui-kpi-5cGZ0OBJ.cjs +1 -0
  77. package/dist/{vue-ui-kpi-BgNONvkD.js → vue-ui-kpi-Bbot_WSI.js} +36 -33
  78. package/dist/{vue-ui-mini-loader-BrCuKpE6.js → vue-ui-mini-loader-DOE9WO73.js} +2 -2
  79. package/dist/{vue-ui-mini-loader-DjEyKAQe.cjs → vue-ui-mini-loader-DWX9tRhG.cjs} +1 -1
  80. package/dist/{vue-ui-molecule-C_eF6tga.js → vue-ui-molecule-0TReXB2j.js} +212 -200
  81. package/dist/vue-ui-molecule-CxeFzXS5.cjs +1 -0
  82. package/dist/vue-ui-mood-radar-1jLzXLXZ.cjs +1 -0
  83. package/dist/{vue-ui-mood-radar-Ch_Qkx9d.js → vue-ui-mood-radar-BMFn685U.js} +123 -111
  84. package/dist/vue-ui-nested-donuts-4FVj04vI.cjs +17 -0
  85. package/dist/{vue-ui-nested-donuts-uqfXLRGX.js → vue-ui-nested-donuts-B9rWg9V8.js} +156 -144
  86. package/dist/vue-ui-onion-Br97OxbL.cjs +5 -0
  87. package/dist/{vue-ui-onion-CbYOkmrF.js → vue-ui-onion-CnIF_tv7.js} +125 -113
  88. package/dist/vue-ui-parallel-coordinate-plot-Bi_h0H7e.cjs +8 -0
  89. package/dist/{vue-ui-parallel-coordinate-plot-aLNOckoo.js → vue-ui-parallel-coordinate-plot-D9iHCwiA.js} +159 -147
  90. package/dist/{vue-ui-quadrant-CuPCDHgS.js → vue-ui-quadrant-4wjbqumK.js} +211 -199
  91. package/dist/vue-ui-quadrant-DHDToQ9a.cjs +1 -0
  92. package/dist/vue-ui-quick-chart-CJKM6r9X.cjs +15 -0
  93. package/dist/{vue-ui-quick-chart-DBCH5qM1.js → vue-ui-quick-chart-s6FHOZf8.js} +576 -540
  94. package/dist/vue-ui-radar-DBR2qBM5.cjs +1 -0
  95. package/dist/{vue-ui-radar-BamYIcPL.js → vue-ui-radar-DpT9w1N-.js} +183 -171
  96. package/dist/vue-ui-rating-D1Mbw1G8.cjs +1 -0
  97. package/dist/{vue-ui-rating-DxaSXiPx.js → vue-ui-rating-D31vSe7a.js} +102 -98
  98. package/dist/vue-ui-relation-circle-BNJbqK_A.cjs +1 -0
  99. package/dist/{vue-ui-relation-circle-C9_8YW0u.js → vue-ui-relation-circle-DfP6BpVn.js} +129 -117
  100. package/dist/{vue-ui-rings-DFzPi4m9.js → vue-ui-rings-ChcGuwL9.js} +150 -138
  101. package/dist/vue-ui-rings-CjB8a3kO.cjs +2 -0
  102. package/dist/vue-ui-scatter-jk0N3EwD.cjs +1 -0
  103. package/dist/{vue-ui-scatter-n_jHEngt.js → vue-ui-scatter-wUZ2CBpp.js} +320 -308
  104. package/dist/{vue-ui-screenshot-1_OHWjZv.js → vue-ui-screenshot-Blg3Suvg.js} +1 -1
  105. package/dist/{vue-ui-screenshot-BzY_uB1R.cjs → vue-ui-screenshot-DAFpjSWg.cjs} +1 -1
  106. package/dist/{vue-ui-skeleton-Ojz7f2oH.js → vue-ui-skeleton-BObG0eVD.js} +3 -3
  107. package/dist/{vue-ui-skeleton-DKtNfORj.cjs → vue-ui-skeleton-m4l9jfqA.cjs} +1 -1
  108. package/dist/{vue-ui-smiley-CXvJ3sXA.js → vue-ui-smiley-DuQ3M02e.js} +208 -206
  109. package/dist/vue-ui-smiley-rh3J3TRY.cjs +2 -0
  110. package/dist/vue-ui-spark-trend-DlNNTu2c.cjs +1 -0
  111. package/dist/{vue-ui-spark-trend-uyDT9RJC.js → vue-ui-spark-trend-SMpnQ3VV.js} +124 -112
  112. package/dist/{vue-ui-sparkbar-CxW1vMP2.js → vue-ui-sparkbar-BB6fvRXK.js} +100 -96
  113. package/dist/vue-ui-sparkbar-chnu8aw9.cjs +1 -0
  114. package/dist/{vue-ui-sparkgauge-NmLBla47.js → vue-ui-sparkgauge-Bk_78-YB.js} +60 -48
  115. package/dist/vue-ui-sparkgauge-FONvy7z9.cjs +1 -0
  116. package/dist/vue-ui-sparkhistogram--uyRru2f.cjs +1 -0
  117. package/dist/{vue-ui-sparkhistogram-B8SukBWt.js → vue-ui-sparkhistogram-CIsN7kQ2.js} +116 -104
  118. package/dist/{vue-ui-sparkline-CokyAm9w.js → vue-ui-sparkline-CFvUW--O.js} +124 -112
  119. package/dist/vue-ui-sparkline-i6LHjMJR.cjs +1 -0
  120. package/dist/vue-ui-sparkstackbar-1RvV2xwt.cjs +1 -0
  121. package/dist/{vue-ui-sparkstackbar-QgZq1O55.js → vue-ui-sparkstackbar-DDMsCq0l.js} +85 -81
  122. package/dist/{vue-ui-stackbar-CTvPYXjb.js → vue-ui-stackbar-BSo9t-88.js} +219 -207
  123. package/dist/vue-ui-stackbar-CQgtC1I4.cjs +6 -0
  124. package/dist/vue-ui-strip-plot-BOSoKxsk.cjs +1 -0
  125. package/dist/{vue-ui-strip-plot-DXPoWvNA.js → vue-ui-strip-plot-C99LsMeZ.js} +113 -101
  126. package/dist/{vue-ui-table-Bb3BBVjm.js → vue-ui-table-3M-aoEc7.js} +1 -1
  127. package/dist/{vue-ui-table-8M1ctuqL.cjs → vue-ui-table-M-6G46br.cjs} +1 -1
  128. package/dist/{vue-ui-table-heatmap-Bv0EfTut.js → vue-ui-table-heatmap-BuYlqsq9.js} +82 -78
  129. package/dist/vue-ui-table-heatmap-CoozQ9bU.cjs +1 -0
  130. package/dist/{vue-ui-table-sparkline-Bs72Df0-.js → vue-ui-table-sparkline-Dm5kErGp.js} +78 -74
  131. package/dist/vue-ui-table-sparkline-u0a2YCwp.cjs +1 -0
  132. package/dist/vue-ui-thermometer-DAz_NjaN.cjs +1 -0
  133. package/dist/{vue-ui-thermometer-DRGjTOIy.js → vue-ui-thermometer-DrY5FsCD.js} +132 -120
  134. package/dist/vue-ui-timer-dCCTsApx.cjs +64 -0
  135. package/dist/{vue-ui-timer-DCA2Dkfi.js → vue-ui-timer-meFVXDUZ.js} +94 -82
  136. package/dist/vue-ui-tiremarks-CRKQklZh.cjs +1 -0
  137. package/dist/{vue-ui-tiremarks-CTqweMbJ.js → vue-ui-tiremarks-PaZ-lr2D.js} +104 -94
  138. package/dist/vue-ui-treemap-Bce1C9jk.cjs +1 -0
  139. package/dist/{vue-ui-treemap-tz9AdMu0.js → vue-ui-treemap-RjHcVtc6.js} +336 -332
  140. package/dist/{vue-ui-vertical-bar-BEkWSr_A.js → vue-ui-vertical-bar-C8rC-QBl.js} +188 -176
  141. package/dist/vue-ui-vertical-bar-e7zR_v0M.cjs +4 -0
  142. package/dist/{vue-ui-waffle-DQPO5aOU.js → vue-ui-waffle-BT8Yn0cl.js} +140 -136
  143. package/dist/vue-ui-waffle-BZLPoVht.cjs +1 -0
  144. package/dist/{vue-ui-wheel-B0u6LKiw.js → vue-ui-wheel-Bq75N1i7.js} +100 -88
  145. package/dist/vue-ui-wheel-CT6r7EQR.cjs +1 -0
  146. package/dist/{vue-ui-word-cloud-CEns9_NI.js → vue-ui-word-cloud-BGh6DY8P.js} +132 -120
  147. package/dist/vue-ui-word-cloud-PcOI8TCE.cjs +1 -0
  148. package/dist/vue-ui-xy-BmNqzUPR.cjs +3 -0
  149. package/dist/{vue-ui-xy-DxpIt6dh.js → vue-ui-xy-DuCsguVf.js} +139 -127
  150. package/dist/{vue-ui-xy-canvas-D_Qiy2N1.js → vue-ui-xy-canvas-6qf3rgfa.js} +231 -227
  151. package/dist/{vue-ui-xy-canvas--zS_4x6O.cjs → vue-ui-xy-canvas-BnJBE19B.cjs} +2 -2
  152. package/package.json +1 -1
  153. package/dist/index-DHwfzZfj.cjs +0 -9
  154. package/dist/vue-ui-3d-bar-Dif8_wHk.cjs +0 -19
  155. package/dist/vue-ui-age-pyramid-DHxsu2a1.cjs +0 -1
  156. package/dist/vue-ui-bullet-CKbrouCq.cjs +0 -34
  157. package/dist/vue-ui-candlestick-C3YNgFyO.cjs +0 -2
  158. package/dist/vue-ui-carousel-table-BU1bmZWZ.cjs +0 -1
  159. package/dist/vue-ui-chestnut-BEALHSS3.cjs +0 -6
  160. package/dist/vue-ui-donut-Jjz58SJJ.cjs +0 -1
  161. package/dist/vue-ui-donut-evolution-BtfRmlIq.cjs +0 -1
  162. package/dist/vue-ui-dumbbell-C2LYuBRx.cjs +0 -9
  163. package/dist/vue-ui-flow-3vjkptJR.cjs +0 -1
  164. package/dist/vue-ui-funnel-DyJdIi_i.cjs +0 -1
  165. package/dist/vue-ui-galaxy-BmGIzIeD.cjs +0 -1
  166. package/dist/vue-ui-gauge-LeMSJBEk.cjs +0 -1
  167. package/dist/vue-ui-gizmo-B7Kum6eT.cjs +0 -1
  168. package/dist/vue-ui-heatmap-CqPuEjJ1.cjs +0 -1
  169. package/dist/vue-ui-history-plot-bjMvk_4h.cjs +0 -1
  170. package/dist/vue-ui-kpi-DIuPP4R7.cjs +0 -1
  171. package/dist/vue-ui-molecule-C3wtpoCr.cjs +0 -1
  172. package/dist/vue-ui-mood-radar-BomqP0zI.cjs +0 -1
  173. package/dist/vue-ui-nested-donuts-KRq3Fcqy.cjs +0 -17
  174. package/dist/vue-ui-onion-G4p7rA61.cjs +0 -5
  175. package/dist/vue-ui-parallel-coordinate-plot-B2OIBraO.cjs +0 -8
  176. package/dist/vue-ui-quadrant-DoWeGQSC.cjs +0 -1
  177. package/dist/vue-ui-quick-chart-DR1qF9kr.cjs +0 -15
  178. package/dist/vue-ui-radar-B6M2ZChR.cjs +0 -1
  179. package/dist/vue-ui-rating-HSL7IrbQ.cjs +0 -1
  180. package/dist/vue-ui-relation-circle-CM_QkigI.cjs +0 -1
  181. package/dist/vue-ui-rings-CmD8g04s.cjs +0 -2
  182. package/dist/vue-ui-scatter-D_WxNGoY.cjs +0 -1
  183. package/dist/vue-ui-smiley-sKWpgakD.cjs +0 -2
  184. package/dist/vue-ui-spark-trend-ByxJmVE5.cjs +0 -1
  185. package/dist/vue-ui-sparkbar-DYHuBv3f.cjs +0 -1
  186. package/dist/vue-ui-sparkgauge-CCvUn2R2.cjs +0 -1
  187. package/dist/vue-ui-sparkhistogram-FU-uE07T.cjs +0 -1
  188. package/dist/vue-ui-sparkline-9LU8yp1t.cjs +0 -1
  189. package/dist/vue-ui-sparkstackbar-9k6C-g_r.cjs +0 -1
  190. package/dist/vue-ui-stackbar-Drqz1of9.cjs +0 -6
  191. package/dist/vue-ui-strip-plot-UYP2fk1H.cjs +0 -1
  192. package/dist/vue-ui-table-heatmap-BqQpJ_Ou.cjs +0 -1
  193. package/dist/vue-ui-table-sparkline-D5xemE-q.cjs +0 -1
  194. package/dist/vue-ui-thermometer-DzynFkq0.cjs +0 -1
  195. package/dist/vue-ui-timer-W5dIiOew.cjs +0 -64
  196. package/dist/vue-ui-tiremarks-BbAzwE5q.cjs +0 -1
  197. package/dist/vue-ui-treemap-CEVP7-S2.cjs +0 -1
  198. package/dist/vue-ui-vertical-bar-D_2WzLxJ.cjs +0 -4
  199. package/dist/vue-ui-waffle-BAvqVwhK.cjs +0 -1
  200. package/dist/vue-ui-wheel-Cjnheeql.cjs +0 -1
  201. package/dist/vue-ui-word-cloud-bxF8a7TI.cjs +0 -1
  202. package/dist/vue-ui-xy-BBvVOSPm.cjs +0 -3
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),u=require("./index-DHwfzZfj.cjs"),c=require("./useResponsive-BJ7DTGpm.cjs"),at=require("./Tooltip-DQOeAhx3.cjs"),ot=require("./Legend-BsPIe_nG.cjs"),rt=require("./Title-CNO85jNx.cjs"),nt=require("./Slicer-HGyFRIya.cjs"),Ee=require("./usePrinter-D-iwyLyE.cjs"),ut=require("./vue-ui-accordion-lCjQo2kd.cjs"),st=require("./DataTable-Bju6hUOX.cjs"),it=require("./vue-ui-skeleton-DKtNfORj.cjs"),Ne=require("./useNestedProp-CSKuqs0C.cjs"),ct=require("./PenAndPaper-Be8tn5wI.cjs"),vt=require("./useUserOptionState-BgepsfED.cjs"),dt=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ht=["id"],ft=["onClick"],yt={key:2,class:"vue-data-ui-watermark"},gt=["innerHTML"],pt={__name:"vue-ui-xy-canvas",props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}}},emits:["selectLegend"],setup(re,{expose:Be,emit:Fe}){const p=re,{vue_ui_xy_canvas:De}=u.useConfig(),Z=l.ref(u.createUid()),N=l.ref(null),S=l.ref(null),B=l.ref(null),i=l.ref(null),g=l.ref(1),T=l.ref(1),H=l.ref(!1),f=l.ref(null),V=l.ref(""),ne=l.ref(null),C=l.ref([]),O=l.ref(1),M=l.ref(!0),z=l.ref(!0),G=l.ref(null),ue=l.ref(0),se=l.ref(0),_=l.ref(!1),ie=l.ref(null),ce=l.ref(null),ve=l.ref(null),de=l.ref(null),j=l.ref(0),J=l.ref(0),K=l.ref(0),Q=l.computed(()=>!!p.dataset&&p.dataset.length),t=l.computed({get:()=>ye(),set:e=>e}),{userOptionsVisible:ee,setUserOptionsVisibility:he,keepUserOptionState:fe}=vt.useUserOptionState({config:t.value});function ye(){const e=Ne.useNestedProp({userConfig:p.config,defaultConfig:De});let a={};return e.theme?a={...Ne.useNestedProp({userConfig:u.themes.vue_ui_xy_canvas[e.theme]||p.config,defaultConfig:e}),customPalette:u.themePalettes[e.theme]||u.palette}:a=e,p.config&&u.hasDeepProperty(p.config,"style.chart.scale.min")?a.style.chart.scale.min=p.config.style.chart.scale.min:a.style.chart.scale.min=null,p.config&&u.hasDeepProperty(p.config,"style.chart.scale.max")?a.style.chart.scale.max=p.config.style.chart.scale.max:a.style.chart.scale.max=null,p.config&&u.hasDeepProperty(p.config,"style.chart.zoom.startIndex")?a.style.chart.zoom.startIndex=p.config.style.chart.zoom.startIndex:a.style.chart.zoom.startIndex=null,p.config&&u.hasDeepProperty(p.config,"style.chart.zoom.endIndex")?a.style.chart.zoom.endIndex=p.config.style.chart.zoom.endIndex:a.style.chart.zoom.endIndex=null,a}l.watch(()=>p.config,e=>{t.value=ye(),ee.value=!t.value.showOnChartHover,le(),j.value+=1,J.value+=1,K.value+=1},{deep:!0}),l.watch(()=>p.dataset,()=>{le(),j.value+=1,J.value+=1,K.value+=1},{deep:!0});const ge=l.ref(t.value.style.chart.aspectRatio),{isPrinting:pe,isImaging:me,generatePdf:be,generateImage:xe}=Ee.usePrinter({elementId:`xy_canvas_${Z.value}`,fileName:t.value.style.chart.title.text||"vue-ui-xy-canvas"}),s=l.ref({showTable:t.value.table.show,showDataLabels:t.value.style.chart.dataLabels.show,stacked:t.value.style.chart.stacked,showTooltip:t.value.style.chart.tooltip.show});function Ae(e){_.value=e,se.value+=1}const ke=l.computed(()=>u.convertCustomPalette(t.value.customPalette)),w=l.computed(()=>R.value?Math.max(...R.value.filter((e,a)=>!C.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0),o=l.computed(()=>{const e=g.value-g.value*(t.value.style.chart.paddingProportions.left+t.value.style.chart.paddingProportions.right);return{canvasWidth:g.value,canvasHeight:T.value,left:g.value*t.value.style.chart.paddingProportions.left,top:T.value*t.value.style.chart.paddingProportions.top,right:g.value-g.value*t.value.style.chart.paddingProportions.right,bottom:T.value-T.value*t.value.style.chart.paddingProportions.bottom,width:e,height:T.value-T.value*(t.value.style.chart.paddingProportions.top+t.value.style.chart.paddingProportions.bottom),slot:e/(n.value.end-n.value.start)}});function Le(e,a){return e/a}function He({hasAutoScale:e,series:a,min:r,max:d,scale:h,yOffset:m,individualHeight:v,stackIndex:b=null}){return a.map((L,oe)=>{const $=h.min<0?Math.abs(h.min):0,I=Le(L+$,$+h.max);let P,F;e&&(P=Math.abs(h.min),F=Le(L+P,h.max+P));let D=0;return b===null?D=o.value.bottom-o.value.height*(e?F:I):D=o.value.bottom-m-v*(e?F:I),{x:o.value.left+o.value.slot*oe+o.value.slot/2,y:D,value:L}})}const x=l.computed(()=>{const e=t.value.style.chart.scale.min!==null?t.value.style.chart.scale.min:Math.min(...R.value.filter((v,b)=>!C.value.includes(v.absoluteIndex)).flatMap(v=>v.series.slice(n.value.start,n.value.end))),a=t.value.style.chart.scale.max!==null?t.value.style.chart.scale.max:Math.max(...R.value.filter((v,b)=>!C.value.includes(v.absoluteIndex)).flatMap(v=>v.series.slice(n.value.start,n.value.end))),r=u.calculateNiceScale(e<0?e:0,a===e?e+1<0?0:e+1:a<0?0:a,t.value.style.chart.scale.ticks),d=r.min<0?Math.abs(r.min):0,h=o.value.bottom-o.value.height*(d/(r.max+d)),m=r.ticks.map(v=>({y:o.value.bottom-o.value.height*((v+d)/(r.max+d)),x:o.value.left-8,value:v}));return{absoluteMin:d,max:a,min:e,scale:r,yLabels:m,zero:h}}),Ve=l.computed(()=>y.value.map(e=>`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),u=require("./index-CgZGelSi.cjs"),c=require("./useResponsive-BJ7DTGpm.cjs"),ot=require("./Tooltip-AHTiRuWB.cjs"),rt=require("./Legend-CMyzYtIb.cjs"),nt=require("./Title-DjAOcuWO.cjs"),ut=require("./Slicer-CkI4c7ft.cjs"),Ee=require("./usePrinter-sTw1FdN_.cjs"),st=require("./vue-ui-accordion-BZH6cz4t.cjs"),it=require("./DataTable-Dtq94CxH.cjs"),ct=require("./vue-ui-skeleton-m4l9jfqA.cjs"),Ne=require("./useNestedProp-BxCE3J3Z.cjs"),vt=require("./PenAndPaper-DhXsAnuf.cjs"),dt=require("./useUserOptionState-BgepsfED.cjs"),ht=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ft=["id"],yt=["onClick"],gt={key:2,class:"vue-data-ui-watermark"},pt=["innerHTML"],mt={__name:"vue-ui-xy-canvas",props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}}},emits:["selectLegend"],setup(re,{expose:Be,emit:Fe}){const p=re,{vue_ui_xy_canvas:De}=u.useConfig(),Z=l.ref(u.createUid()),N=l.ref(null),S=l.ref(null),B=l.ref(null),i=l.ref(null),g=l.ref(1),T=l.ref(1),H=l.ref(!1),f=l.ref(null),V=l.ref(""),ne=l.ref(null),C=l.ref([]),O=l.ref(1),M=l.ref(!0),z=l.ref(!0),G=l.ref(null),ue=l.ref(0),se=l.ref(0),U=l.ref(!1),ie=l.ref(null),ce=l.ref(null),ve=l.ref(null),de=l.ref(null),j=l.ref(0),J=l.ref(0),K=l.ref(0),Q=l.computed(()=>!!p.dataset&&p.dataset.length),Ae=l.useSlots();l.onMounted(()=>{Ae["chart-background"]&&console.warn("VueUiXyCanvas does not support the #chart-background slot.")});const t=l.computed({get:()=>ye(),set:e=>e}),{userOptionsVisible:ee,setUserOptionsVisibility:he,keepUserOptionState:fe}=dt.useUserOptionState({config:t.value});function ye(){const e=Ne.useNestedProp({userConfig:p.config,defaultConfig:De});let a={};return e.theme?a={...Ne.useNestedProp({userConfig:u.themes.vue_ui_xy_canvas[e.theme]||p.config,defaultConfig:e}),customPalette:u.themePalettes[e.theme]||u.palette}:a=e,p.config&&u.hasDeepProperty(p.config,"style.chart.scale.min")?a.style.chart.scale.min=p.config.style.chart.scale.min:a.style.chart.scale.min=null,p.config&&u.hasDeepProperty(p.config,"style.chart.scale.max")?a.style.chart.scale.max=p.config.style.chart.scale.max:a.style.chart.scale.max=null,p.config&&u.hasDeepProperty(p.config,"style.chart.zoom.startIndex")?a.style.chart.zoom.startIndex=p.config.style.chart.zoom.startIndex:a.style.chart.zoom.startIndex=null,p.config&&u.hasDeepProperty(p.config,"style.chart.zoom.endIndex")?a.style.chart.zoom.endIndex=p.config.style.chart.zoom.endIndex:a.style.chart.zoom.endIndex=null,a}l.watch(()=>p.config,e=>{t.value=ye(),ee.value=!t.value.showOnChartHover,le(),j.value+=1,J.value+=1,K.value+=1},{deep:!0}),l.watch(()=>p.dataset,()=>{le(),j.value+=1,J.value+=1,K.value+=1},{deep:!0});const ge=l.ref(t.value.style.chart.aspectRatio),{isPrinting:pe,isImaging:me,generatePdf:be,generateImage:xe}=Ee.usePrinter({elementId:`xy_canvas_${Z.value}`,fileName:t.value.style.chart.title.text||"vue-ui-xy-canvas"}),s=l.ref({showTable:t.value.table.show,showDataLabels:t.value.style.chart.dataLabels.show,stacked:t.value.style.chart.stacked,showTooltip:t.value.style.chart.tooltip.show});function He(e){U.value=e,se.value+=1}const ke=l.computed(()=>u.convertCustomPalette(t.value.customPalette)),w=l.computed(()=>R.value?Math.max(...R.value.filter((e,a)=>!C.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0),o=l.computed(()=>{const e=g.value-g.value*(t.value.style.chart.paddingProportions.left+t.value.style.chart.paddingProportions.right);return{canvasWidth:g.value,canvasHeight:T.value,left:g.value*t.value.style.chart.paddingProportions.left,top:T.value*t.value.style.chart.paddingProportions.top,right:g.value-g.value*t.value.style.chart.paddingProportions.right,bottom:T.value-T.value*t.value.style.chart.paddingProportions.bottom,width:e,height:T.value-T.value*(t.value.style.chart.paddingProportions.top+t.value.style.chart.paddingProportions.bottom),slot:e/(n.value.end-n.value.start)}});function Le(e,a){return e/a}function Ve({hasAutoScale:e,series:a,min:r,max:d,scale:h,yOffset:m,individualHeight:v,stackIndex:b=null}){return a.map((L,oe)=>{const $=h.min<0?Math.abs(h.min):0,I=Le(L+$,$+h.max);let P,F;e&&(P=Math.abs(h.min),F=Le(L+P,h.max+P));let D=0;return b===null?D=o.value.bottom-o.value.height*(e?F:I):D=o.value.bottom-m-v*(e?F:I),{x:o.value.left+o.value.slot*oe+o.value.slot/2,y:D,value:L}})}const x=l.computed(()=>{const e=t.value.style.chart.scale.min!==null?t.value.style.chart.scale.min:Math.min(...R.value.filter((v,b)=>!C.value.includes(v.absoluteIndex)).flatMap(v=>v.series.slice(n.value.start,n.value.end))),a=t.value.style.chart.scale.max!==null?t.value.style.chart.scale.max:Math.max(...R.value.filter((v,b)=>!C.value.includes(v.absoluteIndex)).flatMap(v=>v.series.slice(n.value.start,n.value.end))),r=u.calculateNiceScale(e<0?e:0,a===e?e+1<0?0:e+1:a<0?0:a,t.value.style.chart.scale.ticks),d=r.min<0?Math.abs(r.min):0,h=o.value.bottom-o.value.height*(d/(r.max+d)),m=r.ticks.map(v=>({y:o.value.bottom-o.value.height*((v+d)/(r.max+d)),x:o.value.left-8,value:v}));return{absoluteMin:d,max:a,min:e,scale:r,yLabels:m,zero:h}}),Ue=l.computed(()=>y.value.map(e=>`
2
2
  <div style="display:flex;flex-direction:row;gap:6px;align-items:center;">
3
3
  <svg viewBox="0 0 10 10" height="12" width="12">
4
4
  <circle cx="5" cy="5" r="5" fill="${e.color}"/>
@@ -6,4 +6,4 @@
6
6
  <span>${e.name?e.name+": ":""}</span>
7
7
  <span>${u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.series[f.value],u.dataLabel({p:e.prefix||"",v:e.series[f.value],s:e.suffix||"",r:e.rounding||0}),{datapoint:e,seriesIndex:f.value})}</span>
8
8
  </div>
9
- `)),R=l.computed(()=>p.dataset.map((e,a)=>({...e,series:u.largestTriangleThreeBucketsArray({data:u.sanitizeArray(e.series),threshold:t.value.downsample.threshold}),absoluteIndex:a,color:u.convertColorToHex(e.color||ke.value[a]||u.palette[a]||u.palette[a%u.palette.length])})));l.watch(w,e=>{e&&Ce()});const y=l.computed(()=>u.assignStackRatios(R.value.filter((e,a)=>!C.value.includes(e.absoluteIndex))).map((e,a)=>({...e,series:e.series.slice(n.value.start,n.value.end)})).map((e,a)=>{let r=[null,void 0].includes(e.scaleMin)?Math.min(...e.series)||0:e.scaleMin,d=[null,void 0].includes(e.scaleMax)?Math.max(...e.series)||1:e.scaleMax;r===d&&(r=r>=0?d-1:r,d=d>=0?d:r+1);const m={ratios:e.series.filter(A=>![null,void 0].includes(A)).map(A=>(A-r)/(d-r)),valueMin:r,valueMax:d},v=e.scaleSteps||t.value.style.chart.scale.ticks;let b;e.autoScaling?b=u.calculateNiceScale(m.valueMin,m.valueMax,v):b=u.calculateNiceScale(m.valueMin<0?m.valueMin:0,m.valueMax<=0?0:m.valueMax,v);const L=s.value.stacked?o.value.height*(1-e.cumulatedStackRatio):0,oe=s.value.stacked?o.value.height/t.value.style.chart.stackGap:0,$=s.value.stacked?o.value.height*e.stackRatio-oe:o.value.height,I=b.min<0?Math.abs(b.min):0;let P;e.autoScaling&&s.value.stacked&&d<=0?P=o.value.bottom-L-$:P=o.value.bottom-L-$*(I/(b.max+I));const F=b.ticks.map((A,lt)=>({y:o.value.bottom-L-$*(lt/(b.ticks.length-1)),x:o.value.left-8,value:A})),D=He({hasAutoScale:s.value.stacked&&e.autoScaling,series:e.series,min:s.value.stacked?r:x.value.min,max:s.value.stacked?d:x.value.max,scale:s.value.stacked?b:x.value.scale,yOffset:L,individualHeight:$,stackIndex:s.value.stacked?a:null});return{...e,coordinatesLine:D,min:r,max:d,localScale:b,localZero:P,localMin:I,localYLabels:F,yOffset:L,individualHeight:$}})),n=l.ref({start:0,end:w.value});function Ce(){we()}const E=l.ref(null);async function we(){(t.value.style.chart.zoom.startIndex!==null||t.value.style.chart.zoom.endIndex!==null)&&E.value?(t.value.style.chart.zoom.startIndex!==null&&(await l.nextTick(),await l.nextTick(),E.value&&E.value.setStartValue(t.value.style.chart.zoom.startIndex)),t.value.style.chart.zoom.endIndex!==null&&(await l.nextTick(),await l.nextTick(),E.value&&E.value.setEndValue(_e(t.value.style.chart.zoom.endIndex+1)))):(n.value={start:0,end:w.value},ue.value+=1)}function _e(e){const a=w.value;return e>a?a:e<0||t.value.style.chart.zoom.startIndex!==null&&e<t.value.style.chart.zoom.startIndex?t.value.style.chart.zoom.startIndex!==null?t.value.style.chart.zoom.startIndex+1:1:e}const Ue=l.computed(()=>y.value.filter(e=>["line","plot",void 0].includes(e.type))),k=l.computed(()=>y.value.filter(e=>e.type==="bar"));function qe(){if(!S.value)return;const e=B.value.offsetWidth,a=B.value.offsetHeight;S.value.width=e*O.value*2,S.value.height=a*O.value*2,g.value=e*O.value*2,T.value=a*O.value*2,i.value.scale(O.value,O.value),te()}function We(){if(i.value.clearRect(0,0,1e4,1e4),i.value.fillStyle=t.value.style.chart.backgroundColor,i.value.fillRect(0,0,o.value.canvasWidth,o.value.canvasHeight),s.value.stacked)t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start<t.value.style.chart.grid.y.verticalLines.hideUnderXLength?y.value.forEach(e=>{for(let a=0;a<n.value.end-n.value.start+1;a+=1)c.line(i.value,[{x:o.value.left+o.value.slot*a,y:o.value.bottom-e.yOffset-e.individualHeight},{x:o.value.left+o.value.slot*a,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.y.verticalLines.color})}):t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start>=t.value.style.chart.grid.y.verticalLines.hideUnderXLength&&y.value.forEach(e=>{for(let a=n.value.start;a<n.value.end;a+=1)a%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0&&c.line(i.value,[{x:o.value.left+o.value.slot*(a-n.value.start)+o.value.slot/2,y:o.value.bottom-e.yOffset-e.individualHeight},{x:o.value.left+o.value.slot*(a-n.value.start)+o.value.slot/2,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.y.verticalLines.color})}),t.value.style.chart.grid.x.horizontalLines.show&&(t.value.style.chart.grid.x.horizontalLines.alternate?y.value.forEach(e=>{e.localYLabels.forEach((a,r)=>{r<e.localYLabels.length-1&&c.rect(i.value,[{x:o.value.left,y:a.y},{x:o.value.right,y:a.y},{x:o.value.right,y:e.localYLabels[r+1].y},{x:o.value.left,y:e.localYLabels[r+1].y}],{fillColor:r%2===0?"transparent":u.setOpacity(t.value.style.chart.grid.x.horizontalLines.color,t.value.style.chart.grid.x.horizontalLines.opacity),strokeColor:"transparent"})})}):y.value.forEach(e=>{e.localYLabels.slice(n.value.start,n.value.end).forEach(a=>{c.line(i.value,[{x:o.value.left,y:a.y},{x:o.value.right,y:a.y}],{color:t.value.style.chart.grid.x.horizontalLines.color})})})),t.value.style.chart.grid.zeroLine.show&&y.value.forEach(e=>{c.line(i.value,[{x:o.value.left,y:e.localZero},{x:o.value.right,y:e.localZero}],{color:t.value.style.chart.grid.zeroLine.color,lineDash:t.value.style.chart.grid.zeroLine.dashed?[10,10]:[0,0]})}),t.value.style.chart.grid.y.axisLabels.show&&y.value.forEach(e=>{c.line(i.value,[{x:o.value.left,y:o.value.bottom-e.yOffset},{x:o.value.left,y:o.value.bottom-e.yOffset-e.individualHeight}],{color:e.color}),c.line(i.value,[{x:o.value.right,y:o.value.bottom-e.yOffset},{x:o.value.right,y:o.value.bottom-e.yOffset-e.individualHeight}],{color:e.color}),e.localYLabels.forEach((a,r)=>{c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,a.value,u.dataLabel({p:e.prefix||t.value.style.chart.grid.y.axisLabels.prefix||"",v:a.value,s:e.suffix||t.value.style.chart.grid.y.axisLabels.suffix||"",r:e.rounding||t.value.style.chart.grid.y.axisLabels.rounding||0}),{datapoint:a,seriesIndex:r}),a.x+t.value.style.chart.grid.y.axisLabels.offsetX,a.y,{align:"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:e.color})})}),y.value.forEach(e=>{c.text(i.value,e.name,g.value/35,o.value.bottom-e.yOffset-e.individualHeight/2,{align:"center",rotation:-90,color:e.color,font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`})});else{if(t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start<t.value.style.chart.grid.y.verticalLines.hideUnderXLength)for(let e=0;e<n.value.end-n.value.start+1;e+=1)c.line(i.value,[{x:o.value.left+o.value.slot*e,y:o.value.top},{x:o.value.left+o.value.slot*e,y:o.value.bottom}],{color:t.value.style.chart.grid.y.verticalLines.color});else if(t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start>=t.value.style.chart.grid.y.verticalLines.hideUnderXLength)for(let e=n.value.start;e<n.value.end;e+=1)e%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0&&c.line(i.value,[{x:o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,y:o.value.top},{x:o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,y:o.value.bottom}],{color:t.value.style.chart.grid.y.verticalLines.color});t.value.style.chart.grid.x.horizontalLines.show&&(t.value.style.chart.grid.x.horizontalLines.alternate?x.value.yLabels.forEach((e,a)=>{a<x.value.yLabels.length-1&&c.rect(i.value,[{x:o.value.left,y:e.y},{x:o.value.right,y:e.y},{x:o.value.right,y:x.value.yLabels[a+1].y},{x:o.value.left,y:x.value.yLabels[a+1].y}],{fillColor:a%2===0?"transparent":u.setOpacity(t.value.style.chart.grid.x.horizontalLines.color,t.value.style.chart.grid.x.horizontalLines.opacity),strokeColor:"transparent"})}):x.value.yLabels.forEach(e=>{c.line(i.value,[{x:o.value.left,y:e.y},{x:o.value.right,y:e.y}],{color:t.value.style.chart.grid.x.horizontalLines.color})})),t.value.style.chart.grid.y.showAxis&&c.line(i.value,[{x:o.value.left,y:o.value.top},{x:o.value.left,y:o.value.bottom}],{color:t.value.style.chart.grid.y.axisColor,lineWidth:t.value.style.chart.grid.y.axisThickness}),t.value.style.chart.grid.x.showAxis&&c.line(i.value,[{x:o.value.left,y:o.value.bottom},{x:o.value.right,y:o.value.bottom}],{color:t.value.style.chart.grid.x.axisColor,lineWidth:t.value.style.chart.grid.x.axisThickness}),t.value.style.chart.grid.zeroLine.show&&c.line(i.value,[{x:o.value.left,y:x.value.zero},{x:o.value.right,y:x.value.zero}],{color:t.value.style.chart.grid.zeroLine.color,lineDash:t.value.style.chart.grid.zeroLine.dashed?[10,10]:[0,0]}),t.value.style.chart.grid.y.axisLabels.show&&x.value.yLabels.forEach((e,a)=>{c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.value,u.dataLabel({p:t.value.style.chart.grid.y.axisLabels.prefix||"",v:e.value,s:t.value.style.chart.grid.y.axisLabels.suffix||"",r:t.value.style.chart.grid.y.axisLabels.rounding||0}),{datapoint:e,seriesIndex:a}),e.x+t.value.style.chart.grid.y.axisLabels.offsetX,e.y,{align:"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.grid.y.axisLabels.color})})}t.value.style.chart.grid.y.axisName&&c.text(i.value,t.value.style.chart.grid.y.axisName,g.value-g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio*1.2,o.value.bottom-o.value.height/2,{font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.color,align:"center",rotation:90}),t.value.style.chart.grid.x.axisName&&c.text(i.value,t.value.style.chart.grid.x.axisName,g.value/2,T.value,{font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.color,align:"center"})}function Xe(e){for(let a=0;a<e.coordinatesLine.length;a+=1){const r=(f.value===a?g.value/150:t.value.style.chart.line.plots.show?g.value/200:0)*t.value.style.chart.line.plots.radiusRatio;c.circle(i.value,{x:e.coordinatesLine[a].x,y:e.coordinatesLine[a].y},r,{color:t.value.style.chart.backgroundColor,fillStyle:e.color,strokeColor:"transparent"})}}function Ye(e){for(let a=0;a<e.coordinatesLine.length;a+=1)c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.coordinatesLine[a].value,u.dataLabel({p:e.prefix||"",v:e.coordinatesLine[a].value,s:e.suffix||"",r:e.rounding||0}),{datapoint:e.coordinatesLine[a],seriesIndex:a}),e.coordinatesLine[a].x,e.coordinatesLine[a].y+t.value.style.chart.dataLabels.offsetY,{align:"center",font:`${Math.round(g.value/40*t.value.style.chart.dataLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.dataLabels.useSerieColor?e.color:t.value.style.chart.dataLabels.color,strokeColor:t.value.style.chart.backgroundColor,lineWidth:.8})}function Ze(){for(let e=n.value.start;e<n.value.end;e+=1)(n.value.end-n.value.start<t.value.style.chart.grid.y.timeLabels.modulo||n.value.end-n.value.start>=t.value.style.chart.grid.y.timeLabels.modulo&&(e%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0||e===f.value+n.value.start))&&c.text(i.value,t.value.style.chart.grid.y.timeLabels.values[e]||e+1,o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,o.value.bottom+g.value/t.value.style.chart.grid.y.timeLabels.offsetY,{align:t.value.style.chart.grid.y.timeLabels.rotation===0?"center":t.value.style.chart.grid.y.timeLabels.rotation>0?"left":"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.timeLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:u.setOpacity(t.value.style.chart.grid.y.timeLabels.color,f.value!==null?f.value+n.value.start===e?100:20:100),rotation:t.value.style.chart.grid.y.timeLabels.rotation})}function Se(){c.line(i.value,[{x:o.value.left+o.value.slot*f.value+o.value.slot/2,y:o.value.top},{x:o.value.left+o.value.slot*f.value+o.value.slot/2,y:o.value.bottom}],{color:t.value.style.chart.selector.color,lineDash:t.value.style.chart.selector.dashed?[8,8]:[0,0],lineWidth:2,linceCap:"round"})}function Ge(){k.value.forEach((e,a)=>{for(let r=0;r<e.coordinatesLine.length;r+=1)c.rect(i.value,[{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a)),y:s.value.stacked?e.localZero:x.value.zero},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.8/(s.value.stacked?1:k.value.length),y:s.value.stacked?e.localZero:x.value.zero},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.8/(s.value.stacked?1:k.value.length),y:e.coordinatesLine[r].y},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a)),y:e.coordinatesLine[r].y}],{strokeColor:t.value.style.chart.backgroundColor,gradient:{type:"linear",start:{x:e.coordinatesLine[r].x,y:e.coordinatesLine[r].y},end:{x:e.coordinatesLine[r].x,y:s.value.stacked?e.localZero:x.value.zero},stops:[{offset:0,color:e.color},{offset:1,color:u.lightenHexColor(e.color,.5)}]}}),s.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.coordinatesLine[r].value,u.dataLabel({p:e.prefix||"",v:e.coordinatesLine[r].value,s:e.suffix||"",r:e.rounding||0}),{datapoint:e.coordinatesLine[r],seriesIndex:r}),o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.4/(s.value.stacked?1:k.value.length),(e.coordinatesLine[r].value<0?s.value.stacked?e.localZero:x.value.zero:e.coordinatesLine[r].y)+t.value.style.chart.dataLabels.offsetY,{align:"center",font:`${Math.round(g.value/40*t.value.style.chart.dataLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.dataLabels.useSerieColor?e.color:t.value.style.chart.dataLabels.color,strokeColor:t.value.style.chart.backgroundColor,lineWidth:.8})})}function je(e){e.useArea?s.value.stacked?c.polygon(i.value,[{x:e.coordinatesLine[0].x,y:e.localZero},...e.coordinatesLine,{x:e.coordinatesLine.at(-1).x,y:e.localZero}],{fillColor:u.setOpacity(e.color,t.value.style.chart.area.opacity),strokeColor:"transparent"}):c.polygon(i.value,[{x:e.coordinatesLine[0].x,y:x.value.zero},...e.coordinatesLine,{x:e.coordinatesLine.at(-1).x,y:x.value.zero}],{fillColor:u.setOpacity(e.color,t.value.style.chart.area.opacity),strokeColor:"transparent"}):c.line(i.value,e.coordinatesLine,{color:e.color,lineWidth:3})}function Je(){y.value.forEach((e,a)=>{c.line(i.value,[{x:o.value.left,y:o.value.bottom-e.yOffset},{x:o.value.right,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.x.horizontalLines.color,lineWidth:1})})}function te(){We(),M.value?(z.value&&f.value!==null&&t.value.style.chart.selector.show&&Se(),Ge(),s.value.stacked&&t.value.style.chart.grid.x.showAxis&&Je(),Ue.value.forEach(e=>{(e.type==="line"||!e.type)&&je(e),z.value&&(Xe(e),s.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&Ye(e))}),G.value=c.cloneCanvas(S.value)):(G.value&&(i.value.clearRect(0,0,1e4,1e4),i.value.drawImage(G.value,0,0)),z.value&&f.value!==null&&t.value.style.chart.selector.show&&Se(),z.value&&f.value!==null&&y.value.forEach(e=>{if(e.type==="line"||!e.type||e.type==="plot"){if(!e.coordinatesLine[f.value])return;e.coordinatesLine[f.value].x!==void 0&&e.coordinatesLine[f.value].y!==void 0&&c.circle(i.value,{x:e.coordinatesLine[f.value].x,y:e.coordinatesLine[f.value].y},g.value/150*t.value.style.chart.line.plots.radiusRatio,{color:t.value.style.chart.backgroundColor,fillStyle:e.color,strokeColor:"transparent"})}})),t.value.style.chart.grid.y.timeLabels.show&&Ze(),M.value=!1}const U=c.debounce(()=>{z.value=!0,qe()},w.value>200?10:1,!z.value);function Ke(e){const{left:a}=S.value.getBoundingClientRect(),r=e.clientX-a;if(r*2<o.value.left||r*2>o.value.right){H.value=!1,f.value=null;return}const d=r*2-o.value.left;if(f.value=Math.floor(d/o.value.slot),H.value=!0,!z.value)return;let h="";const m=t.value.style.chart.tooltip.customFormat;u.isFunction(m)&&u.functionReturnsString(()=>m({seriesIndex:f.value,datapoint:y.value.map(v=>({shape:v.shape||null,name:v.name,color:v.color,type:v.type||"line",value:v.series.find((b,L)=>L===f.value)})),series:y.value,config:t.value}))?V.value=m({seriesIndex:f.value,datapoint:y.value.map(v=>({shape:v.shape||null,name:v.name,color:v.color,type:v.type||"line",value:v.series.find((b,L)=>L===f.value)})),series:y.value,config:t.value}):(t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[f.value]&&(h+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${t.value.style.chart.tooltip.borderColor}; width:100%">${t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[f.value]}</div>`),h+=Ve.value.join(""),V.value=h),z.value=!1}l.watch(()=>f.value,e=>{U()}),l.watch(()=>n.value,e=>{M.value=!0,te()},{deep:!0}),l.watch(()=>s.value.showDataLabels,e=>{M.value=!0,te()}),l.watch(()=>s.value.stacked,e=>{M.value=!0,z.value=!0,U()});function Qe(){H.value=!1,f.value=null,V.value=""}const q=l.ref(null),W=l.ref(null);l.onMounted(()=>{le()});function le(){if(u.objectIsEmpty(p.dataset)?u.error({componentName:"VueUiXyCanvas",type:"dataset"}):S.value&&(i.value=S.value.getContext("2d",{willReadFrequently:!0})),t.value.responsive){const e=c.throttle(()=>{const{width:a,height:r}=c.useResponsive({chart:N.value,title:t.value.style.chart.title.text?ie.value:null,legend:t.value.style.chart.legend.show?ce.value:null,slicer:t.value.style.chart.zoom.show&&w.value>1?ve.value:null,source:de.value});ge.value=`${a} / ${r}`});q.value=new ResizeObserver(e),q.value.observe(N.value.parentNode)}W.value=new ResizeObserver(e=>{for(const a of e)a.contentBoxSize&&B.value&&(M.value=!0,U())}),W.value.observe(B.value),we()}l.onBeforeUnmount(()=>{W.value&&W.value.disconnect(),q.value&&q.value.disconnect()});function ze(e){Fe("selectLegend",y.value.find(a=>a.absoluteIndex===e)),C.value.includes(e)?C.value=C.value.filter(a=>a!==e):C.value.push(e),M.value=!0,U()}const $e=l.computed(()=>R.value.map((e,a)=>({...e,name:e.name,color:u.convertColorToHex(e.color)||ke.value[a]||u.palette[a]||u.palette[a%u.palette.length],shape:e.shape||"circle",prefix:e.prefix||"",suffix:e.suffix||"",rounding:e.rounding||0})).map(e=>({...e,opacity:C.value.includes(e.absoluteIndex)?.5:1,segregate:()=>ze(e.absoluteIndex),isSegregated:C.value.includes(e.absoluteIndex)}))),et=l.computed(()=>({cy:"donut-div-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""})),X=l.computed(()=>{const e=[""].concat(y.value.map(h=>h.name)).concat(' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>');let a=[];for(let h=0;h<w.value;h+=1){const m=y.value.map(v=>v.series[h]??0).reduce((v,b)=>v+b,0);a.push([t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[h]??h+1].concat(y.value.map(v=>(v.series[h]??0).toFixed(t.value.table.rounding))).concat((m??0).toFixed(t.value.table.rounding)))}const r={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},d=[t.value.table.columnNames.period].concat(y.value.map(h=>h.name)).concat(t.value.table.columnNames.total);return{head:e,body:a.slice(0,n.value.end-n.value.start),config:r,colNames:d}}),Te=l.computed(()=>{if(y.value.length===0)return{head:[],body:[],config:{},columnNames:[]};const e=y.value.map(r=>({label:r.name,color:r.color,type:r.type})),a=[];for(let r=n.value.start;r<n.value.end;r+=1){const d=[t.value.style.chart.grid.y.timeLabels.values[r]||r+1];y.value.forEach(h=>{d.push(Number((h.series[r]||0).toFixed(t.value.table.rounding)))}),a.push(d)}return{head:e,body:a}});function Ie(){const e=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[""]],a=["",...Te.value.head.map(m=>m.label)],r=Te.value.body,d=e.concat([a]).concat(r),h=u.createCsvContent(d);u.downloadCsv({csvContent:h,title:t.value.style.chart.title.text||"vue-ui-xy-canvas"})}function tt(){return y.value}function Pe(){s.value.showTable=!s.value.showTable}function Me(){s.value.showDataLabels=!s.value.showDataLabels}function Oe(){s.value.stacked=!s.value.stacked}function Re(){s.value.showTooltip=!s.value.showTooltip}const Y=l.ref(!1);function ae(){Y.value=!Y.value}return Be({getData:tt,generateCsv:Ie,generatePdf:be,generateImage:xe,toggleTable:Pe,toggleLabels:Me,toggleStack:Oe,toggleTooltip:Re,toggleAnnotator:ae}),(e,a)=>(l.openBlock(),l.createElementBlock("div",{style:l.normalizeStyle(`width:100%; position:relative; ${t.value.responsive?"height: 100%":""}`),ref_key:"xy",ref:N,id:`xy_canvas_${Z.value}`,class:l.normalizeClass(`vue-ui-donut ${_.value?"vue-data-ui-wrapper-fullscreen":""}`),onMouseenter:a[5]||(a[5]=()=>l.unref(he)(!0)),onMouseleave:a[6]||(a[6]=()=>l.unref(he)(!1))},[t.value.style.chart.title.text?(l.openBlock(),l.createElementBlock("div",{key:0,ref_key:"chartTitle",ref:ie,style:l.normalizeStyle(`width:100%;background:${t.value.style.chart.backgroundColor};`)},[(l.openBlock(),l.createBlock(rt._sfc_main,{key:`title_${j.value}`,config:{title:{cy:"xy-canvas-title",...t.value.style.chart.title},subtitle:{cy:"xy-canvas-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"]))],4)):l.createCommentVNode("",!0),t.value.userOptions.show&&Q.value&&(l.unref(fe)||l.unref(ee))?(l.openBlock(),l.createBlock(Ee.UserOptions,{ref:"details",key:`user_option_${se.value}`,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:l.unref(pe),isImaging:l.unref(me),uid:Z.value,hasTooltip:t.value.userOptions.buttons.tooltip&&t.value.style.chart.tooltip.show,hasPdf:t.value.userOptions.buttons.pdf,hasImg:t.value.userOptions.buttons.img,hasXls:t.value.userOptions.buttons.csv,hasLabel:t.value.userOptions.buttons.labels,hasStack:re.dataset.length>1&&t.value.userOptions.buttons.stack,hasFullscreen:t.value.userOptions.buttons.fullscreen,hasTable:n.value.end-n.value.start<200&&t.value.userOptions.buttons.table,isFullscreen:_.value,isTooltip:s.value.showTooltip,isStacked:s.value.stacked,titles:{...t.value.userOptions.buttonTitles},chartElement:N.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:Y.value,onToggleFullscreen:Ae,onGeneratePdf:l.unref(be),onGenerateCsv:Ie,onGenerateImage:l.unref(xe),onToggleTable:Pe,onToggleLabels:Me,onToggleStack:Oe,onToggleTooltip:Re,onToggleAnnotator:ae,style:l.normalizeStyle({visibility:l.unref(fe)?l.unref(ee)?"visible":"hidden":"visible"})},l.createSlots({_:2},[e.$slots.optionTooltip?{name:"optionTooltip",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionTooltip",{},void 0,!0)]),key:"0"}:void 0,e.$slots.optionPdf?{name:"optionPdf",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,e.$slots.optionCsv?{name:"optionCsv",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,e.$slots.optionImg?{name:"optionImg",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,e.$slots.optionTable?{name:"optionTable",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,e.$slots.optionLabels?{name:"optionLabels",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionLabels",{},void 0,!0)]),key:"5"}:void 0,e.$slots.optionStack?{name:"optionStack",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionStack",{},void 0,!0)]),key:"6"}:void 0,e.$slots.optionFullscreen?{name:"optionFullscreen",fn:l.withCtx(({toggleFullscreen:r,isFullscreen:d})=>[l.renderSlot(e.$slots,"optionFullscreen",l.normalizeProps(l.guardReactiveProps({toggleFullscreen:r,isFullscreen:d})),void 0,!0)]),key:"7"}:void 0,e.$slots.optionAnnotator?{name:"optionAnnotator",fn:l.withCtx(({toggleAnnotator:r,isAnnotator:d})=>[l.renderSlot(e.$slots,"optionAnnotator",l.normalizeProps(l.guardReactiveProps({toggleAnnotator:r,isAnnotator:d})),void 0,!0)]),key:"8"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasTooltip","hasPdf","hasImg","hasXls","hasLabel","hasStack","hasFullscreen","hasTable","isFullscreen","isTooltip","isStacked","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):l.createCommentVNode("",!0),l.createElementVNode("div",{class:"vue-ui-xy-canvas",style:l.normalizeStyle(`position: relative; aspect-ratio: ${ge.value}`),ref_key:"container",ref:B},[Q.value?(l.openBlock(),l.createElementBlock("canvas",{key:0,ref_key:"canvas",ref:S,style:{width:"100%",height:"100%"},onMousemove:a[0]||(a[0]=r=>Ke(r)),onMouseleave:Qe},null,544)):(l.openBlock(),l.createBlock(it.default,{key:1,config:{type:"line",style:{backgroundColor:t.value.style.chart.backgroundColor,line:{axis:{color:"#CCCCCC"},path:{color:"#CCCCCC",strokeWidth:.5}}}}},null,8,["config"])),l.createVNode(at._sfc_main,{show:s.value.showTooltip&&H.value,backgroundColor:t.value.style.chart.tooltip.backgroundColor,color:t.value.style.chart.tooltip.color,fontSize:t.value.style.chart.tooltip.fontSize,borderRadius:t.value.style.chart.tooltip.borderRadius,borderColor:t.value.style.chart.tooltip.borderColor,borderWidth:t.value.style.chart.tooltip.borderWidth,position:t.value.style.chart.tooltip.position,offsetY:t.value.style.chart.tooltip.offsetY,parent:S.value,content:V.value,isFullscreen:_.value,backgroundOpacity:t.value.style.chart.tooltip.backgroundOpacity,isCustom:l.unref(u.isFunction)(t.value.style.chart.tooltip.customFormat)},{"tooltip-before":l.withCtx(()=>[l.renderSlot(e.$slots,"tooltip-before",l.normalizeProps(l.guardReactiveProps({...ne.value})),void 0,!0)]),"tooltip-after":l.withCtx(()=>[l.renderSlot(e.$slots,"tooltip-after",l.normalizeProps(l.guardReactiveProps({...ne.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","fontSize","borderRadius","borderColor","borderWidth","position","offsetY","parent","content","isFullscreen","backgroundOpacity","isCustom"])],4),l.createElementVNode("div",{ref_key:"chartSlicer",ref:ve,style:l.normalizeStyle(`width:100%;background:${t.value.style.chart.backgroundColor}`),"data-html2canvas-ignore":""},[t.value.style.chart.zoom.show&&w.value>1?(l.openBlock(),l.createBlock(nt.Slicer,{ref_key:"slicerComponent",ref:E,key:`slicer_${ue.value}`,background:t.value.style.chart.zoom.color,borderColor:t.value.style.chart.backgroundColor,fontSize:t.value.style.chart.zoom.fontSize,useResetSlot:t.value.style.chart.zoom.useResetSlot,labelLeft:t.value.style.chart.grid.y.timeLabels.values[n.value.start]?t.value.style.chart.grid.y.timeLabels.values[n.value.start]:"",labelRight:t.value.style.chart.grid.y.timeLabels.values[n.value.end-1]?t.value.style.chart.grid.y.timeLabels.values[n.value.end-1]:"",textColor:t.value.style.chart.color,inputColor:t.value.style.chart.zoom.color,selectColor:t.value.style.chart.zoom.highlightColor,max:w.value,min:0,valueStart:n.value.start,valueEnd:n.value.end,start:n.value.start,"onUpdate:start":a[1]||(a[1]=r=>n.value.start=r),end:n.value.end,"onUpdate:end":a[2]||(a[2]=r=>n.value.end=r),refreshStartPoint:t.value.style.chart.zoom.startIndex!==null?t.value.style.chart.zoom.startIndex:0,refreshEndPoint:t.value.style.chart.zoom.endIndex!==null?t.value.style.chart.zoom.endIndex+1:w.value,onReset:Ce},{"reset-action":l.withCtx(({reset:r})=>[l.renderSlot(e.$slots,"reset-action",l.normalizeProps(l.guardReactiveProps({reset:r})),void 0,!0)]),_:3},8,["background","borderColor","fontSize","useResetSlot","labelLeft","labelRight","textColor","inputColor","selectColor","max","valueStart","valueEnd","start","end","refreshStartPoint","refreshEndPoint"])):l.createCommentVNode("",!0)],4),l.createElementVNode("div",{ref_key:"chartLegend",ref:ce},[t.value.style.chart.legend.show&&Q.value?(l.openBlock(),l.createBlock(ot.Legend,{legendSet:$e.value,config:et.value,key:`legend_${K.value}`,onClickMarker:a[3]||(a[3]=({i:r})=>ze(r))},{item:l.withCtx(({legend:r,index:d})=>[l.createElementVNode("div",{onClick:h=>r.segregate(),style:l.normalizeStyle(`opacity:${C.value.includes(d)?.5:1}`)},l.toDisplayString(r.name),13,ft)]),_:1},8,["legendSet","config"])):l.renderSlot(e.$slots,"legend",{key:1,legend:$e.value},void 0,!0)],512),e.$slots.watermark?(l.openBlock(),l.createElementBlock("div",yt,[l.renderSlot(e.$slots,"watermark",l.normalizeProps(l.guardReactiveProps({isPrinting:l.unref(pe)||l.unref(me)})),void 0,!0)])):l.createCommentVNode("",!0),e.$slots.source?(l.openBlock(),l.createElementBlock("div",{key:3,ref_key:"source",ref:de,dir:"auto"},[l.renderSlot(e.$slots,"source",{},void 0,!0)],512)):l.createCommentVNode("",!0),n.value.end-n.value.start<200?(l.openBlock(),l.createBlock(ut.default,{key:4,hideDetails:"",config:{open:s.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:l.withCtx(()=>[(l.openBlock(),l.createBlock(st.DataTable,{key:`table_${J.value}`,colNames:X.value.colNames,head:X.value.head,body:X.value.body,config:X.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:a[4]||(a[4]=r=>s.value.showTable=!1)},{th:l.withCtx(({th:r})=>[l.createElementVNode("div",{innerHTML:r},null,8,gt)]),td:l.withCtx(({td:r})=>[l.createTextVNode(l.toDisplayString(r),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):l.createCommentVNode("",!0),t.value.userOptions.buttons.annotator&&y.value.length?(l.openBlock(),l.createBlock(ct.PenAndPaper,{key:5,parent:N.value,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:Y.value,onClose:ae},null,8,["parent","backgroundColor","color","active"])):l.createCommentVNode("",!0)],46,ht))}},mt=dt._export_sfc(pt,[["__scopeId","data-v-eda1aecb"]]);exports.default=mt;
9
+ `)),R=l.computed(()=>p.dataset.map((e,a)=>({...e,series:u.largestTriangleThreeBucketsArray({data:u.sanitizeArray(e.series),threshold:t.value.downsample.threshold}),absoluteIndex:a,color:u.convertColorToHex(e.color||ke.value[a]||u.palette[a]||u.palette[a%u.palette.length])})));l.watch(w,e=>{e&&Ce()});const y=l.computed(()=>u.assignStackRatios(R.value.filter((e,a)=>!C.value.includes(e.absoluteIndex))).map((e,a)=>({...e,series:e.series.slice(n.value.start,n.value.end)})).map((e,a)=>{let r=[null,void 0].includes(e.scaleMin)?Math.min(...e.series)||0:e.scaleMin,d=[null,void 0].includes(e.scaleMax)?Math.max(...e.series)||1:e.scaleMax;r===d&&(r=r>=0?d-1:r,d=d>=0?d:r+1);const m={ratios:e.series.filter(A=>![null,void 0].includes(A)).map(A=>(A-r)/(d-r)),valueMin:r,valueMax:d},v=e.scaleSteps||t.value.style.chart.scale.ticks;let b;e.autoScaling?b=u.calculateNiceScale(m.valueMin,m.valueMax,v):b=u.calculateNiceScale(m.valueMin<0?m.valueMin:0,m.valueMax<=0?0:m.valueMax,v);const L=s.value.stacked?o.value.height*(1-e.cumulatedStackRatio):0,oe=s.value.stacked?o.value.height/t.value.style.chart.stackGap:0,$=s.value.stacked?o.value.height*e.stackRatio-oe:o.value.height,I=b.min<0?Math.abs(b.min):0;let P;e.autoScaling&&s.value.stacked&&d<=0?P=o.value.bottom-L-$:P=o.value.bottom-L-$*(I/(b.max+I));const F=b.ticks.map((A,at)=>({y:o.value.bottom-L-$*(at/(b.ticks.length-1)),x:o.value.left-8,value:A})),D=Ve({hasAutoScale:s.value.stacked&&e.autoScaling,series:e.series,min:s.value.stacked?r:x.value.min,max:s.value.stacked?d:x.value.max,scale:s.value.stacked?b:x.value.scale,yOffset:L,individualHeight:$,stackIndex:s.value.stacked?a:null});return{...e,coordinatesLine:D,min:r,max:d,localScale:b,localZero:P,localMin:I,localYLabels:F,yOffset:L,individualHeight:$}})),n=l.ref({start:0,end:w.value});function Ce(){we()}const E=l.ref(null);async function we(){(t.value.style.chart.zoom.startIndex!==null||t.value.style.chart.zoom.endIndex!==null)&&E.value?(t.value.style.chart.zoom.startIndex!==null&&(await l.nextTick(),await l.nextTick(),E.value&&E.value.setStartValue(t.value.style.chart.zoom.startIndex)),t.value.style.chart.zoom.endIndex!==null&&(await l.nextTick(),await l.nextTick(),E.value&&E.value.setEndValue(_e(t.value.style.chart.zoom.endIndex+1)))):(n.value={start:0,end:w.value},ue.value+=1)}function _e(e){const a=w.value;return e>a?a:e<0||t.value.style.chart.zoom.startIndex!==null&&e<t.value.style.chart.zoom.startIndex?t.value.style.chart.zoom.startIndex!==null?t.value.style.chart.zoom.startIndex+1:1:e}const qe=l.computed(()=>y.value.filter(e=>["line","plot",void 0].includes(e.type))),k=l.computed(()=>y.value.filter(e=>e.type==="bar"));function We(){if(!S.value)return;const e=B.value.offsetWidth,a=B.value.offsetHeight;S.value.width=e*O.value*2,S.value.height=a*O.value*2,g.value=e*O.value*2,T.value=a*O.value*2,i.value.scale(O.value,O.value),te()}function Xe(){if(i.value.clearRect(0,0,1e4,1e4),i.value.fillStyle=t.value.style.chart.backgroundColor,i.value.fillRect(0,0,o.value.canvasWidth,o.value.canvasHeight),s.value.stacked)t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start<t.value.style.chart.grid.y.verticalLines.hideUnderXLength?y.value.forEach(e=>{for(let a=0;a<n.value.end-n.value.start+1;a+=1)c.line(i.value,[{x:o.value.left+o.value.slot*a,y:o.value.bottom-e.yOffset-e.individualHeight},{x:o.value.left+o.value.slot*a,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.y.verticalLines.color})}):t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start>=t.value.style.chart.grid.y.verticalLines.hideUnderXLength&&y.value.forEach(e=>{for(let a=n.value.start;a<n.value.end;a+=1)a%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0&&c.line(i.value,[{x:o.value.left+o.value.slot*(a-n.value.start)+o.value.slot/2,y:o.value.bottom-e.yOffset-e.individualHeight},{x:o.value.left+o.value.slot*(a-n.value.start)+o.value.slot/2,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.y.verticalLines.color})}),t.value.style.chart.grid.x.horizontalLines.show&&(t.value.style.chart.grid.x.horizontalLines.alternate?y.value.forEach(e=>{e.localYLabels.forEach((a,r)=>{r<e.localYLabels.length-1&&c.rect(i.value,[{x:o.value.left,y:a.y},{x:o.value.right,y:a.y},{x:o.value.right,y:e.localYLabels[r+1].y},{x:o.value.left,y:e.localYLabels[r+1].y}],{fillColor:r%2===0?"transparent":u.setOpacity(t.value.style.chart.grid.x.horizontalLines.color,t.value.style.chart.grid.x.horizontalLines.opacity),strokeColor:"transparent"})})}):y.value.forEach(e=>{e.localYLabels.slice(n.value.start,n.value.end).forEach(a=>{c.line(i.value,[{x:o.value.left,y:a.y},{x:o.value.right,y:a.y}],{color:t.value.style.chart.grid.x.horizontalLines.color})})})),t.value.style.chart.grid.zeroLine.show&&y.value.forEach(e=>{c.line(i.value,[{x:o.value.left,y:e.localZero},{x:o.value.right,y:e.localZero}],{color:t.value.style.chart.grid.zeroLine.color,lineDash:t.value.style.chart.grid.zeroLine.dashed?[10,10]:[0,0]})}),t.value.style.chart.grid.y.axisLabels.show&&y.value.forEach(e=>{c.line(i.value,[{x:o.value.left,y:o.value.bottom-e.yOffset},{x:o.value.left,y:o.value.bottom-e.yOffset-e.individualHeight}],{color:e.color}),c.line(i.value,[{x:o.value.right,y:o.value.bottom-e.yOffset},{x:o.value.right,y:o.value.bottom-e.yOffset-e.individualHeight}],{color:e.color}),e.localYLabels.forEach((a,r)=>{c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,a.value,u.dataLabel({p:e.prefix||t.value.style.chart.grid.y.axisLabels.prefix||"",v:a.value,s:e.suffix||t.value.style.chart.grid.y.axisLabels.suffix||"",r:e.rounding||t.value.style.chart.grid.y.axisLabels.rounding||0}),{datapoint:a,seriesIndex:r}),a.x+t.value.style.chart.grid.y.axisLabels.offsetX,a.y,{align:"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:e.color})})}),y.value.forEach(e=>{c.text(i.value,e.name,g.value/35,o.value.bottom-e.yOffset-e.individualHeight/2,{align:"center",rotation:-90,color:e.color,font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`})});else{if(t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start<t.value.style.chart.grid.y.verticalLines.hideUnderXLength)for(let e=0;e<n.value.end-n.value.start+1;e+=1)c.line(i.value,[{x:o.value.left+o.value.slot*e,y:o.value.top},{x:o.value.left+o.value.slot*e,y:o.value.bottom}],{color:t.value.style.chart.grid.y.verticalLines.color});else if(t.value.style.chart.grid.y.verticalLines.show&&n.value.end-n.value.start>=t.value.style.chart.grid.y.verticalLines.hideUnderXLength)for(let e=n.value.start;e<n.value.end;e+=1)e%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0&&c.line(i.value,[{x:o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,y:o.value.top},{x:o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,y:o.value.bottom}],{color:t.value.style.chart.grid.y.verticalLines.color});t.value.style.chart.grid.x.horizontalLines.show&&(t.value.style.chart.grid.x.horizontalLines.alternate?x.value.yLabels.forEach((e,a)=>{a<x.value.yLabels.length-1&&c.rect(i.value,[{x:o.value.left,y:e.y},{x:o.value.right,y:e.y},{x:o.value.right,y:x.value.yLabels[a+1].y},{x:o.value.left,y:x.value.yLabels[a+1].y}],{fillColor:a%2===0?"transparent":u.setOpacity(t.value.style.chart.grid.x.horizontalLines.color,t.value.style.chart.grid.x.horizontalLines.opacity),strokeColor:"transparent"})}):x.value.yLabels.forEach(e=>{c.line(i.value,[{x:o.value.left,y:e.y},{x:o.value.right,y:e.y}],{color:t.value.style.chart.grid.x.horizontalLines.color})})),t.value.style.chart.grid.y.showAxis&&c.line(i.value,[{x:o.value.left,y:o.value.top},{x:o.value.left,y:o.value.bottom}],{color:t.value.style.chart.grid.y.axisColor,lineWidth:t.value.style.chart.grid.y.axisThickness}),t.value.style.chart.grid.x.showAxis&&c.line(i.value,[{x:o.value.left,y:o.value.bottom},{x:o.value.right,y:o.value.bottom}],{color:t.value.style.chart.grid.x.axisColor,lineWidth:t.value.style.chart.grid.x.axisThickness}),t.value.style.chart.grid.zeroLine.show&&c.line(i.value,[{x:o.value.left,y:x.value.zero},{x:o.value.right,y:x.value.zero}],{color:t.value.style.chart.grid.zeroLine.color,lineDash:t.value.style.chart.grid.zeroLine.dashed?[10,10]:[0,0]}),t.value.style.chart.grid.y.axisLabels.show&&x.value.yLabels.forEach((e,a)=>{c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.value,u.dataLabel({p:t.value.style.chart.grid.y.axisLabels.prefix||"",v:e.value,s:t.value.style.chart.grid.y.axisLabels.suffix||"",r:t.value.style.chart.grid.y.axisLabels.rounding||0}),{datapoint:e,seriesIndex:a}),e.x+t.value.style.chart.grid.y.axisLabels.offsetX,e.y,{align:"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.grid.y.axisLabels.color})})}t.value.style.chart.grid.y.axisName&&c.text(i.value,t.value.style.chart.grid.y.axisName,g.value-g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio*1.2,o.value.bottom-o.value.height/2,{font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.color,align:"center",rotation:90}),t.value.style.chart.grid.x.axisName&&c.text(i.value,t.value.style.chart.grid.x.axisName,g.value/2,T.value,{font:`${Math.round(g.value/40*t.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.color,align:"center"})}function Ye(e){for(let a=0;a<e.coordinatesLine.length;a+=1){const r=(f.value===a?g.value/150:t.value.style.chart.line.plots.show?g.value/200:0)*t.value.style.chart.line.plots.radiusRatio;c.circle(i.value,{x:e.coordinatesLine[a].x,y:e.coordinatesLine[a].y},r,{color:t.value.style.chart.backgroundColor,fillStyle:e.color,strokeColor:"transparent"})}}function Ze(e){for(let a=0;a<e.coordinatesLine.length;a+=1)c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.coordinatesLine[a].value,u.dataLabel({p:e.prefix||"",v:e.coordinatesLine[a].value,s:e.suffix||"",r:e.rounding||0}),{datapoint:e.coordinatesLine[a],seriesIndex:a}),e.coordinatesLine[a].x,e.coordinatesLine[a].y+t.value.style.chart.dataLabels.offsetY,{align:"center",font:`${Math.round(g.value/40*t.value.style.chart.dataLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.dataLabels.useSerieColor?e.color:t.value.style.chart.dataLabels.color,strokeColor:t.value.style.chart.backgroundColor,lineWidth:.8})}function Ge(){for(let e=n.value.start;e<n.value.end;e+=1)(n.value.end-n.value.start<t.value.style.chart.grid.y.timeLabels.modulo||n.value.end-n.value.start>=t.value.style.chart.grid.y.timeLabels.modulo&&(e%Math.floor((n.value.end-n.value.start)/t.value.style.chart.grid.y.timeLabels.modulo)===0||e===f.value+n.value.start))&&c.text(i.value,t.value.style.chart.grid.y.timeLabels.values[e]||e+1,o.value.left+o.value.slot*(e-n.value.start)+o.value.slot/2,o.value.bottom+g.value/t.value.style.chart.grid.y.timeLabels.offsetY,{align:t.value.style.chart.grid.y.timeLabels.rotation===0?"center":t.value.style.chart.grid.y.timeLabels.rotation>0?"left":"right",font:`${Math.round(g.value/40*t.value.style.chart.grid.y.timeLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:u.setOpacity(t.value.style.chart.grid.y.timeLabels.color,f.value!==null?f.value+n.value.start===e?100:20:100),rotation:t.value.style.chart.grid.y.timeLabels.rotation})}function Se(){c.line(i.value,[{x:o.value.left+o.value.slot*f.value+o.value.slot/2,y:o.value.top},{x:o.value.left+o.value.slot*f.value+o.value.slot/2,y:o.value.bottom}],{color:t.value.style.chart.selector.color,lineDash:t.value.style.chart.selector.dashed?[8,8]:[0,0],lineWidth:2,linceCap:"round"})}function je(){k.value.forEach((e,a)=>{for(let r=0;r<e.coordinatesLine.length;r+=1)c.rect(i.value,[{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a)),y:s.value.stacked?e.localZero:x.value.zero},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.8/(s.value.stacked?1:k.value.length),y:s.value.stacked?e.localZero:x.value.zero},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.8/(s.value.stacked?1:k.value.length),y:e.coordinatesLine[r].y},{x:o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a)),y:e.coordinatesLine[r].y}],{strokeColor:t.value.style.chart.backgroundColor,gradient:{type:"linear",start:{x:e.coordinatesLine[r].x,y:e.coordinatesLine[r].y},end:{x:e.coordinatesLine[r].x,y:s.value.stacked?e.localZero:x.value.zero},stops:[{offset:0,color:e.color},{offset:1,color:u.lightenHexColor(e.color,.5)}]}}),s.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&c.text(i.value,u.applyDataLabel(t.value.style.chart.dataLabels.formatter,e.coordinatesLine[r].value,u.dataLabel({p:e.prefix||"",v:e.coordinatesLine[r].value,s:e.suffix||"",r:e.rounding||0}),{datapoint:e.coordinatesLine[r],seriesIndex:r}),o.value.left+o.value.slot*r+o.value.slot/10+(s.value.stacked?0:o.value.slot/k.value.length*a-(a===0?0:o.value.slot/(5*k.value.length)*a))+o.value.slot*.4/(s.value.stacked?1:k.value.length),(e.coordinatesLine[r].value<0?s.value.stacked?e.localZero:x.value.zero:e.coordinatesLine[r].y)+t.value.style.chart.dataLabels.offsetY,{align:"center",font:`${Math.round(g.value/40*t.value.style.chart.dataLabels.fontSizeRatio)}px ${t.value.style.fontFamily}`,color:t.value.style.chart.dataLabels.useSerieColor?e.color:t.value.style.chart.dataLabels.color,strokeColor:t.value.style.chart.backgroundColor,lineWidth:.8})})}function Je(e){e.useArea?s.value.stacked?c.polygon(i.value,[{x:e.coordinatesLine[0].x,y:e.localZero},...e.coordinatesLine,{x:e.coordinatesLine.at(-1).x,y:e.localZero}],{fillColor:u.setOpacity(e.color,t.value.style.chart.area.opacity),strokeColor:"transparent"}):c.polygon(i.value,[{x:e.coordinatesLine[0].x,y:x.value.zero},...e.coordinatesLine,{x:e.coordinatesLine.at(-1).x,y:x.value.zero}],{fillColor:u.setOpacity(e.color,t.value.style.chart.area.opacity),strokeColor:"transparent"}):c.line(i.value,e.coordinatesLine,{color:e.color,lineWidth:3})}function Ke(){y.value.forEach((e,a)=>{c.line(i.value,[{x:o.value.left,y:o.value.bottom-e.yOffset},{x:o.value.right,y:o.value.bottom-e.yOffset}],{color:t.value.style.chart.grid.x.horizontalLines.color,lineWidth:1})})}function te(){Xe(),M.value?(z.value&&f.value!==null&&t.value.style.chart.selector.show&&Se(),je(),s.value.stacked&&t.value.style.chart.grid.x.showAxis&&Ke(),qe.value.forEach(e=>{(e.type==="line"||!e.type)&&Je(e),z.value&&(Ye(e),s.value.showDataLabels&&[!0,void 0].includes(e.dataLabels)&&Ze(e))}),G.value=c.cloneCanvas(S.value)):(G.value&&(i.value.clearRect(0,0,1e4,1e4),i.value.drawImage(G.value,0,0)),z.value&&f.value!==null&&t.value.style.chart.selector.show&&Se(),z.value&&f.value!==null&&y.value.forEach(e=>{if(e.type==="line"||!e.type||e.type==="plot"){if(!e.coordinatesLine[f.value])return;e.coordinatesLine[f.value].x!==void 0&&e.coordinatesLine[f.value].y!==void 0&&c.circle(i.value,{x:e.coordinatesLine[f.value].x,y:e.coordinatesLine[f.value].y},g.value/150*t.value.style.chart.line.plots.radiusRatio,{color:t.value.style.chart.backgroundColor,fillStyle:e.color,strokeColor:"transparent"})}})),t.value.style.chart.grid.y.timeLabels.show&&Ge(),M.value=!1}const _=c.debounce(()=>{z.value=!0,We()},w.value>200?10:1,!z.value);function Qe(e){const{left:a}=S.value.getBoundingClientRect(),r=e.clientX-a;if(r*2<o.value.left||r*2>o.value.right){H.value=!1,f.value=null;return}const d=r*2-o.value.left;if(f.value=Math.floor(d/o.value.slot),H.value=!0,!z.value)return;let h="";const m=t.value.style.chart.tooltip.customFormat;u.isFunction(m)&&u.functionReturnsString(()=>m({seriesIndex:f.value,datapoint:y.value.map(v=>({shape:v.shape||null,name:v.name,color:v.color,type:v.type||"line",value:v.series.find((b,L)=>L===f.value)})),series:y.value,config:t.value}))?V.value=m({seriesIndex:f.value,datapoint:y.value.map(v=>({shape:v.shape||null,name:v.name,color:v.color,type:v.type||"line",value:v.series.find((b,L)=>L===f.value)})),series:y.value,config:t.value}):(t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[f.value]&&(h+=`<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${t.value.style.chart.tooltip.borderColor}; width:100%">${t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[f.value]}</div>`),h+=Ue.value.join(""),V.value=h),z.value=!1}l.watch(()=>f.value,e=>{_()}),l.watch(()=>n.value,e=>{M.value=!0,te()},{deep:!0}),l.watch(()=>s.value.showDataLabels,e=>{M.value=!0,te()}),l.watch(()=>s.value.stacked,e=>{M.value=!0,z.value=!0,_()});function et(){H.value=!1,f.value=null,V.value=""}const q=l.ref(null),W=l.ref(null);l.onMounted(()=>{le()});function le(){if(u.objectIsEmpty(p.dataset)?u.error({componentName:"VueUiXyCanvas",type:"dataset"}):S.value&&(i.value=S.value.getContext("2d",{willReadFrequently:!0})),t.value.responsive){const e=c.throttle(()=>{const{width:a,height:r}=c.useResponsive({chart:N.value,title:t.value.style.chart.title.text?ie.value:null,legend:t.value.style.chart.legend.show?ce.value:null,slicer:t.value.style.chart.zoom.show&&w.value>1?ve.value:null,source:de.value});ge.value=`${a} / ${r}`});q.value=new ResizeObserver(e),q.value.observe(N.value.parentNode)}W.value=new ResizeObserver(e=>{for(const a of e)a.contentBoxSize&&B.value&&(M.value=!0,_())}),W.value.observe(B.value),we()}l.onBeforeUnmount(()=>{W.value&&W.value.disconnect(),q.value&&q.value.disconnect()});function ze(e){Fe("selectLegend",y.value.find(a=>a.absoluteIndex===e)),C.value.includes(e)?C.value=C.value.filter(a=>a!==e):C.value.push(e),M.value=!0,_()}const $e=l.computed(()=>R.value.map((e,a)=>({...e,name:e.name,color:u.convertColorToHex(e.color)||ke.value[a]||u.palette[a]||u.palette[a%u.palette.length],shape:e.shape||"circle",prefix:e.prefix||"",suffix:e.suffix||"",rounding:e.rounding||0})).map(e=>({...e,opacity:C.value.includes(e.absoluteIndex)?.5:1,segregate:()=>ze(e.absoluteIndex),isSegregated:C.value.includes(e.absoluteIndex)}))),tt=l.computed(()=>({cy:"donut-div-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""})),X=l.computed(()=>{const e=[""].concat(y.value.map(h=>h.name)).concat(' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>');let a=[];for(let h=0;h<w.value;h+=1){const m=y.value.map(v=>v.series[h]??0).reduce((v,b)=>v+b,0);a.push([t.value.style.chart.grid.y.timeLabels.values.slice(n.value.start,n.value.end)[h]??h+1].concat(y.value.map(v=>(v.series[h]??0).toFixed(t.value.table.rounding))).concat((m??0).toFixed(t.value.table.rounding)))}const r={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},d=[t.value.table.columnNames.period].concat(y.value.map(h=>h.name)).concat(t.value.table.columnNames.total);return{head:e,body:a.slice(0,n.value.end-n.value.start),config:r,colNames:d}}),Te=l.computed(()=>{if(y.value.length===0)return{head:[],body:[],config:{},columnNames:[]};const e=y.value.map(r=>({label:r.name,color:r.color,type:r.type})),a=[];for(let r=n.value.start;r<n.value.end;r+=1){const d=[t.value.style.chart.grid.y.timeLabels.values[r]||r+1];y.value.forEach(h=>{d.push(Number((h.series[r]||0).toFixed(t.value.table.rounding)))}),a.push(d)}return{head:e,body:a}});function Ie(){const e=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[""]],a=["",...Te.value.head.map(m=>m.label)],r=Te.value.body,d=e.concat([a]).concat(r),h=u.createCsvContent(d);u.downloadCsv({csvContent:h,title:t.value.style.chart.title.text||"vue-ui-xy-canvas"})}function lt(){return y.value}function Pe(){s.value.showTable=!s.value.showTable}function Me(){s.value.showDataLabels=!s.value.showDataLabels}function Oe(){s.value.stacked=!s.value.stacked}function Re(){s.value.showTooltip=!s.value.showTooltip}const Y=l.ref(!1);function ae(){Y.value=!Y.value}return Be({getData:lt,generateCsv:Ie,generatePdf:be,generateImage:xe,toggleTable:Pe,toggleLabels:Me,toggleStack:Oe,toggleTooltip:Re,toggleAnnotator:ae}),(e,a)=>(l.openBlock(),l.createElementBlock("div",{style:l.normalizeStyle(`width:100%; position:relative; ${t.value.responsive?"height: 100%":""}`),ref_key:"xy",ref:N,id:`xy_canvas_${Z.value}`,class:l.normalizeClass(`vue-ui-donut ${U.value?"vue-data-ui-wrapper-fullscreen":""}`),onMouseenter:a[5]||(a[5]=()=>l.unref(he)(!0)),onMouseleave:a[6]||(a[6]=()=>l.unref(he)(!1))},[t.value.style.chart.title.text?(l.openBlock(),l.createElementBlock("div",{key:0,ref_key:"chartTitle",ref:ie,style:l.normalizeStyle(`width:100%;background:${t.value.style.chart.backgroundColor};`)},[(l.openBlock(),l.createBlock(nt._sfc_main,{key:`title_${j.value}`,config:{title:{cy:"xy-canvas-title",...t.value.style.chart.title},subtitle:{cy:"xy-canvas-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"]))],4)):l.createCommentVNode("",!0),t.value.userOptions.show&&Q.value&&(l.unref(fe)||l.unref(ee))?(l.openBlock(),l.createBlock(Ee.UserOptions,{ref:"details",key:`user_option_${se.value}`,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:l.unref(pe),isImaging:l.unref(me),uid:Z.value,hasTooltip:t.value.userOptions.buttons.tooltip&&t.value.style.chart.tooltip.show,hasPdf:t.value.userOptions.buttons.pdf,hasImg:t.value.userOptions.buttons.img,hasXls:t.value.userOptions.buttons.csv,hasLabel:t.value.userOptions.buttons.labels,hasStack:re.dataset.length>1&&t.value.userOptions.buttons.stack,hasFullscreen:t.value.userOptions.buttons.fullscreen,hasTable:n.value.end-n.value.start<200&&t.value.userOptions.buttons.table,isFullscreen:U.value,isTooltip:s.value.showTooltip,isStacked:s.value.stacked,titles:{...t.value.userOptions.buttonTitles},chartElement:N.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:Y.value,onToggleFullscreen:He,onGeneratePdf:l.unref(be),onGenerateCsv:Ie,onGenerateImage:l.unref(xe),onToggleTable:Pe,onToggleLabels:Me,onToggleStack:Oe,onToggleTooltip:Re,onToggleAnnotator:ae,style:l.normalizeStyle({visibility:l.unref(fe)?l.unref(ee)?"visible":"hidden":"visible"})},l.createSlots({_:2},[e.$slots.optionTooltip?{name:"optionTooltip",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionTooltip",{},void 0,!0)]),key:"0"}:void 0,e.$slots.optionPdf?{name:"optionPdf",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,e.$slots.optionCsv?{name:"optionCsv",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,e.$slots.optionImg?{name:"optionImg",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,e.$slots.optionTable?{name:"optionTable",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,e.$slots.optionLabels?{name:"optionLabels",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionLabels",{},void 0,!0)]),key:"5"}:void 0,e.$slots.optionStack?{name:"optionStack",fn:l.withCtx(()=>[l.renderSlot(e.$slots,"optionStack",{},void 0,!0)]),key:"6"}:void 0,e.$slots.optionFullscreen?{name:"optionFullscreen",fn:l.withCtx(({toggleFullscreen:r,isFullscreen:d})=>[l.renderSlot(e.$slots,"optionFullscreen",l.normalizeProps(l.guardReactiveProps({toggleFullscreen:r,isFullscreen:d})),void 0,!0)]),key:"7"}:void 0,e.$slots.optionAnnotator?{name:"optionAnnotator",fn:l.withCtx(({toggleAnnotator:r,isAnnotator:d})=>[l.renderSlot(e.$slots,"optionAnnotator",l.normalizeProps(l.guardReactiveProps({toggleAnnotator:r,isAnnotator:d})),void 0,!0)]),key:"8"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasTooltip","hasPdf","hasImg","hasXls","hasLabel","hasStack","hasFullscreen","hasTable","isFullscreen","isTooltip","isStacked","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):l.createCommentVNode("",!0),l.createElementVNode("div",{class:"vue-ui-xy-canvas",style:l.normalizeStyle(`position: relative; aspect-ratio: ${ge.value}`),ref_key:"container",ref:B},[Q.value?(l.openBlock(),l.createElementBlock("canvas",{key:0,ref_key:"canvas",ref:S,style:{width:"100%",height:"100%"},onMousemove:a[0]||(a[0]=r=>Qe(r)),onMouseleave:et},null,544)):(l.openBlock(),l.createBlock(ct.default,{key:1,config:{type:"line",style:{backgroundColor:t.value.style.chart.backgroundColor,line:{axis:{color:"#CCCCCC"},path:{color:"#CCCCCC",strokeWidth:.5}}}}},null,8,["config"])),l.createVNode(ot._sfc_main,{show:s.value.showTooltip&&H.value,backgroundColor:t.value.style.chart.tooltip.backgroundColor,color:t.value.style.chart.tooltip.color,fontSize:t.value.style.chart.tooltip.fontSize,borderRadius:t.value.style.chart.tooltip.borderRadius,borderColor:t.value.style.chart.tooltip.borderColor,borderWidth:t.value.style.chart.tooltip.borderWidth,position:t.value.style.chart.tooltip.position,offsetY:t.value.style.chart.tooltip.offsetY,parent:S.value,content:V.value,isFullscreen:U.value,backgroundOpacity:t.value.style.chart.tooltip.backgroundOpacity,isCustom:l.unref(u.isFunction)(t.value.style.chart.tooltip.customFormat)},{"tooltip-before":l.withCtx(()=>[l.renderSlot(e.$slots,"tooltip-before",l.normalizeProps(l.guardReactiveProps({...ne.value})),void 0,!0)]),"tooltip-after":l.withCtx(()=>[l.renderSlot(e.$slots,"tooltip-after",l.normalizeProps(l.guardReactiveProps({...ne.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","fontSize","borderRadius","borderColor","borderWidth","position","offsetY","parent","content","isFullscreen","backgroundOpacity","isCustom"])],4),l.createElementVNode("div",{ref_key:"chartSlicer",ref:ve,style:l.normalizeStyle(`width:100%;background:${t.value.style.chart.backgroundColor}`),"data-html2canvas-ignore":""},[t.value.style.chart.zoom.show&&w.value>1?(l.openBlock(),l.createBlock(ut.Slicer,{ref_key:"slicerComponent",ref:E,key:`slicer_${ue.value}`,background:t.value.style.chart.zoom.color,borderColor:t.value.style.chart.backgroundColor,fontSize:t.value.style.chart.zoom.fontSize,useResetSlot:t.value.style.chart.zoom.useResetSlot,labelLeft:t.value.style.chart.grid.y.timeLabels.values[n.value.start]?t.value.style.chart.grid.y.timeLabels.values[n.value.start]:"",labelRight:t.value.style.chart.grid.y.timeLabels.values[n.value.end-1]?t.value.style.chart.grid.y.timeLabels.values[n.value.end-1]:"",textColor:t.value.style.chart.color,inputColor:t.value.style.chart.zoom.color,selectColor:t.value.style.chart.zoom.highlightColor,max:w.value,min:0,valueStart:n.value.start,valueEnd:n.value.end,start:n.value.start,"onUpdate:start":a[1]||(a[1]=r=>n.value.start=r),end:n.value.end,"onUpdate:end":a[2]||(a[2]=r=>n.value.end=r),refreshStartPoint:t.value.style.chart.zoom.startIndex!==null?t.value.style.chart.zoom.startIndex:0,refreshEndPoint:t.value.style.chart.zoom.endIndex!==null?t.value.style.chart.zoom.endIndex+1:w.value,onReset:Ce},{"reset-action":l.withCtx(({reset:r})=>[l.renderSlot(e.$slots,"reset-action",l.normalizeProps(l.guardReactiveProps({reset:r})),void 0,!0)]),_:3},8,["background","borderColor","fontSize","useResetSlot","labelLeft","labelRight","textColor","inputColor","selectColor","max","valueStart","valueEnd","start","end","refreshStartPoint","refreshEndPoint"])):l.createCommentVNode("",!0)],4),l.createElementVNode("div",{ref_key:"chartLegend",ref:ce},[t.value.style.chart.legend.show&&Q.value?(l.openBlock(),l.createBlock(rt.Legend,{legendSet:$e.value,config:tt.value,key:`legend_${K.value}`,onClickMarker:a[3]||(a[3]=({i:r})=>ze(r))},{item:l.withCtx(({legend:r,index:d})=>[l.createElementVNode("div",{onClick:h=>r.segregate(),style:l.normalizeStyle(`opacity:${C.value.includes(d)?.5:1}`)},l.toDisplayString(r.name),13,yt)]),_:1},8,["legendSet","config"])):l.renderSlot(e.$slots,"legend",{key:1,legend:$e.value},void 0,!0)],512),e.$slots.watermark?(l.openBlock(),l.createElementBlock("div",gt,[l.renderSlot(e.$slots,"watermark",l.normalizeProps(l.guardReactiveProps({isPrinting:l.unref(pe)||l.unref(me)})),void 0,!0)])):l.createCommentVNode("",!0),e.$slots.source?(l.openBlock(),l.createElementBlock("div",{key:3,ref_key:"source",ref:de,dir:"auto"},[l.renderSlot(e.$slots,"source",{},void 0,!0)],512)):l.createCommentVNode("",!0),n.value.end-n.value.start<200?(l.openBlock(),l.createBlock(st.default,{key:4,hideDetails:"",config:{open:s.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:l.withCtx(()=>[(l.openBlock(),l.createBlock(it.DataTable,{key:`table_${J.value}`,colNames:X.value.colNames,head:X.value.head,body:X.value.body,config:X.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:a[4]||(a[4]=r=>s.value.showTable=!1)},{th:l.withCtx(({th:r})=>[l.createElementVNode("div",{innerHTML:r},null,8,pt)]),td:l.withCtx(({td:r})=>[l.createTextVNode(l.toDisplayString(r),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):l.createCommentVNode("",!0),t.value.userOptions.buttons.annotator&&y.value.length?(l.openBlock(),l.createBlock(vt.PenAndPaper,{key:5,parent:N.value,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:Y.value,onClose:ae},null,8,["parent","backgroundColor","color","active"])):l.createCommentVNode("",!0)],46,ft))}},bt=ht._export_sfc(mt,[["__scopeId","data-v-c9593b73"]]);exports.default=bt;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vue-data-ui",
3
3
  "private": false,
4
- "version": "2.4.58",
4
+ "version": "2.4.60",
5
5
  "type": "module",
6
6
  "description": "A user-empowering data visualization Vue 3 components library for eloquent data storytelling",
7
7
  "keywords": [