vue-data-ui 2.9.2 → 2.9.4

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 (167) hide show
  1. package/dist/{Arrow-KvKZ2SBJ.cjs → Arrow-CgYR3FXj.cjs} +1 -1
  2. package/dist/{Arrow-DIEvl571.js → Arrow-CyxG4Ftp.js} +1 -1
  3. package/dist/{BaseIcon-BH4bJe82.js → BaseIcon-CnzdK8aV.js} +1 -1
  4. package/dist/{BaseIcon-C6L3qbQ8.cjs → BaseIcon-DKFlmXEr.cjs} +1 -1
  5. package/dist/{ColorPicker-Dnjy6olA.js → ColorPicker-CYa3DFQB.js} +3 -3
  6. package/dist/{ColorPicker-BmVm6Lqe.cjs → ColorPicker-PNrzRxPw.cjs} +1 -1
  7. package/dist/{DataTable-Cz1SDtvT.cjs → DataTable-CW5aC-bf.cjs} +1 -1
  8. package/dist/{DataTable-CaUgku7o.js → DataTable-aPT7Gaka.js} +2 -2
  9. package/dist/{Legend-Bl_MrORk.cjs → Legend-CUqaARo5.cjs} +1 -1
  10. package/dist/{Legend-BxZxsJCp.js → Legend-Cfm0ctX6.js} +2 -2
  11. package/dist/{PackageVersion-BEE_4baV.js → PackageVersion-BEjIamIO.js} +1 -1
  12. package/dist/{PackageVersion-BrUdYdIC.cjs → PackageVersion-DDIH1bP5.cjs} +1 -1
  13. package/dist/{PenAndPaper-DyGcaflS.cjs → PenAndPaper-B8Lcd-xn.cjs} +1 -1
  14. package/dist/{PenAndPaper-B3WdOAcZ.js → PenAndPaper-hBDvj9b2.js} +3 -3
  15. package/dist/{Shape-DuVb3Mev.cjs → Shape-Ca8AZL7o.cjs} +1 -1
  16. package/dist/{Shape-Hrc-BQkc.js → Shape-WIhUvB3A.js} +1 -1
  17. package/dist/{Slicer-2ZyRAred.js → Slicer-YYOuyiYz.js} +2 -2
  18. package/dist/{Slicer-DVYmI2V1.cjs → Slicer-yLatG2Q8.cjs} +1 -1
  19. package/dist/{Title-BGh0hWb2.cjs → Title-D7uuc4dY.cjs} +1 -1
  20. package/dist/{Title-CGY0WlAI.js → Title-DBZSWCMO.js} +1 -1
  21. package/dist/{Tooltip-DckFFIYj.cjs → Tooltip-D--0gUVq.cjs} +1 -1
  22. package/dist/{Tooltip-BfEhZz9k.js → Tooltip-DokmjO-n.js} +1 -1
  23. package/dist/{dom-to-png-BgJJyI6M.js → dom-to-png-DsYwe1no.js} +1 -1
  24. package/dist/{dom-to-png-DnnnXKpR.cjs → dom-to-png-J1vxOmp_.cjs} +1 -1
  25. package/dist/{img-DkpJ0ciT.js → img-COrXIjCE.js} +1 -1
  26. package/dist/{img-DT7UDEPk.cjs → img-CU6TyX57.cjs} +1 -1
  27. package/dist/{index-9ZicrZWM.js → index-Ldu7K4PE.js} +47 -40
  28. package/dist/index-SCeiWj92.cjs +9 -0
  29. package/dist/{pdf-zqw8E-me.js → pdf-B9y2xWfS.js} +18 -18
  30. package/dist/pdf-BujZw1ZQ.cjs +1 -0
  31. package/dist/style.css +1 -1
  32. package/dist/types/vue-data-ui.d.cts +2 -0
  33. package/dist/types/vue-data-ui.d.ts +2 -0
  34. package/dist/{useNestedProp-BS9eJthK.cjs → useNestedProp-BV2kijyF.cjs} +1 -1
  35. package/dist/{useNestedProp-s1XZrtPS.js → useNestedProp-WCQEv2hV.js} +1 -1
  36. package/dist/{usePrinter-D7IXLE53.js → usePrinter-Bca_ZkY4.js} +3 -3
  37. package/dist/{usePrinter-vFXYgZiT.cjs → usePrinter-CWjBWUyP.cjs} +1 -1
  38. package/dist/{vue-data-ui-gEqI-hOT.js → vue-data-ui-BQay3z7m.js} +61 -61
  39. package/dist/{vue-data-ui-CNieT2ov.cjs → vue-data-ui-BmmN2NNv.cjs} +1 -1
  40. package/dist/vue-data-ui.cjs +1 -1
  41. package/dist/vue-data-ui.js +18 -18
  42. package/dist/{vue-ui-3d-bar-DX5baNUz.cjs → vue-ui-3d-bar-BRTXPLII.cjs} +1 -1
  43. package/dist/{vue-ui-3d-bar-Sbk5MT1S.js → vue-ui-3d-bar-CB7Pf9zo.js} +9 -9
  44. package/dist/{vue-ui-accordion-DIMalTE4.cjs → vue-ui-accordion-BL41vY_P.cjs} +1 -1
  45. package/dist/{vue-ui-accordion-62KnRfCb.js → vue-ui-accordion-BeqSE4u4.js} +3 -3
  46. package/dist/{vue-ui-age-pyramid-DfuEC7WE.cjs → vue-ui-age-pyramid-Cyryx6dt.cjs} +1 -1
  47. package/dist/{vue-ui-age-pyramid-BkhVyOTM.js → vue-ui-age-pyramid-DXOH1De2.js} +10 -10
  48. package/dist/vue-ui-annotator-47R4n6BM.cjs +371 -0
  49. package/dist/{vue-ui-annotator-CrwbL3rn.js → vue-ui-annotator-pqbJ1XeI.js} +43 -43
  50. package/dist/{vue-ui-bullet-BVr_zBo7.js → vue-ui-bullet-C4nINrVz.js} +8 -8
  51. package/dist/{vue-ui-bullet-TmXeLFPZ.cjs → vue-ui-bullet-CrWSjpKP.cjs} +1 -1
  52. package/dist/{vue-ui-candlestick-BArypZ1A.js → vue-ui-candlestick-B7BBpXBZ.js} +11 -11
  53. package/dist/{vue-ui-candlestick-BFJ8I4sb.cjs → vue-ui-candlestick-CwCEV4Dk.cjs} +1 -1
  54. package/dist/{vue-ui-carousel-table-B1i5b5xU.cjs → vue-ui-carousel-table-8pfD4UOc.cjs} +1 -1
  55. package/dist/{vue-ui-carousel-table-CqWp06Xz.js → vue-ui-carousel-table-Dmcbfq6Q.js} +4 -4
  56. package/dist/{vue-ui-chestnut-B8oiuRgc.cjs → vue-ui-chestnut-VcW4bYRK.cjs} +1 -1
  57. package/dist/{vue-ui-chestnut-EHo3sSMv.js → vue-ui-chestnut-nOXmtueI.js} +8 -8
  58. package/dist/{vue-ui-circle-pack-kx10AVM0.js → vue-ui-circle-pack-Dbqw_xRR.js} +9 -9
  59. package/dist/{vue-ui-circle-pack-BGLhSNyo.cjs → vue-ui-circle-pack-XI4kOOSC.cjs} +1 -1
  60. package/dist/{vue-ui-cursor-C8qofYJh.js → vue-ui-cursor-BXXcSCXO.js} +2 -2
  61. package/dist/{vue-ui-cursor-H77Z-m2e.cjs → vue-ui-cursor-DOZ1d1Gv.cjs} +1 -1
  62. package/dist/{vue-ui-dashboard-4YFqFygh.cjs → vue-ui-dashboard-CDWd7y-K.cjs} +1 -1
  63. package/dist/{vue-ui-dashboard-Bn2slDQx.js → vue-ui-dashboard-Dj5UeEUe.js} +62 -62
  64. package/dist/{vue-ui-digits-DbSV0D-j.cjs → vue-ui-digits-CMBdp5dX.cjs} +1 -1
  65. package/dist/{vue-ui-digits-Cv__rzXF.js → vue-ui-digits-DOX9plTt.js} +2 -2
  66. package/dist/{vue-ui-donut-Bno5POxU.cjs → vue-ui-donut-DCjz_RJx.cjs} +1 -1
  67. package/dist/{vue-ui-donut-D_CLR29p.js → vue-ui-donut-V6slQS8W.js} +28 -28
  68. package/dist/{vue-ui-donut-evolution-BgNwQ1J8.js → vue-ui-donut-evolution-BHBEHaBz.js} +40 -40
  69. package/dist/{vue-ui-donut-evolution-Dg6laY3D.cjs → vue-ui-donut-evolution-DJQiBc2K.cjs} +1 -1
  70. package/dist/{vue-ui-dumbbell-C5Z8rSTk.js → vue-ui-dumbbell-c6ZUS2gn.js} +10 -10
  71. package/dist/{vue-ui-dumbbell-DWQl4sxh.cjs → vue-ui-dumbbell-qP17lDtS.cjs} +1 -1
  72. package/dist/{vue-ui-flow-DKS1oZHc.js → vue-ui-flow-BftL5SCF.js} +36 -36
  73. package/dist/{vue-ui-flow-D0t3MSCU.cjs → vue-ui-flow-NFVQYGwe.cjs} +1 -1
  74. package/dist/{vue-ui-funnel-CqhhBoYG.cjs → vue-ui-funnel-Bm78Fuif.cjs} +1 -1
  75. package/dist/{vue-ui-funnel-r57KM4Wi.js → vue-ui-funnel-BxnyO-cX.js} +9 -9
  76. package/dist/{vue-ui-galaxy-CLIAdqkr.js → vue-ui-galaxy-ErKBaW-Q.js} +35 -35
  77. package/dist/{vue-ui-galaxy-BeQSEKLG.cjs → vue-ui-galaxy-PqPqi1rL.cjs} +1 -1
  78. package/dist/{vue-ui-gauge-CcTneeaQ.cjs → vue-ui-gauge-5uNTa5st.cjs} +1 -1
  79. package/dist/{vue-ui-gauge-BQ4S55FH.js → vue-ui-gauge-CC4gRmiU.js} +19 -19
  80. package/dist/{vue-ui-gizmo-B_rVeweF.cjs → vue-ui-gizmo-Cke9n_3I.cjs} +1 -1
  81. package/dist/{vue-ui-gizmo-DACB7BcV.js → vue-ui-gizmo-DeeQXNxB.js} +3 -3
  82. package/dist/{vue-ui-heatmap-DBtRfAWr.cjs → vue-ui-heatmap-DIkfrZTI.cjs} +1 -1
  83. package/dist/{vue-ui-heatmap-DNvbR504.js → vue-ui-heatmap-DVmGDa29.js} +33 -33
  84. package/dist/{vue-ui-history-plot-MfnR_Gg0.js → vue-ui-history-plot-BdH6ipQR.js} +11 -11
  85. package/dist/{vue-ui-history-plot-B1zXFmOc.cjs → vue-ui-history-plot-Bg9LcJ-j.cjs} +1 -1
  86. package/dist/{vue-ui-kpi-DDMCa5qe.js → vue-ui-kpi-DZm8eIsy.js} +3 -3
  87. package/dist/{vue-ui-kpi-Dm71j1ZP.cjs → vue-ui-kpi-O8tB2EAC.cjs} +1 -1
  88. package/dist/{vue-ui-mini-loader-CROjVz1w.cjs → vue-ui-mini-loader-B74fpNsK.cjs} +1 -1
  89. package/dist/{vue-ui-mini-loader-mMxdW73Y.js → vue-ui-mini-loader-CF9PEaSJ.js} +2 -2
  90. package/dist/{vue-ui-molecule-BHUWRS5i.js → vue-ui-molecule-BzTuiwZn.js} +22 -22
  91. package/dist/{vue-ui-molecule-BulwtJre.cjs → vue-ui-molecule-CWTtY72k.cjs} +1 -1
  92. package/dist/{vue-ui-mood-radar-CUWTjV4S.js → vue-ui-mood-radar-Dc_RBdIt.js} +11 -11
  93. package/dist/{vue-ui-mood-radar-BhS9UcqE.cjs → vue-ui-mood-radar-DqpXi_vx.cjs} +1 -1
  94. package/dist/{vue-ui-nested-donuts-Db_lFOB1.cjs → vue-ui-nested-donuts-C9aOv8cV.cjs} +1 -1
  95. package/dist/{vue-ui-nested-donuts-BQk9K-uM.js → vue-ui-nested-donuts-DRMKAx-K.js} +11 -11
  96. package/dist/{vue-ui-onion-C38MS0We.cjs → vue-ui-onion-CQlidixa.cjs} +1 -1
  97. package/dist/{vue-ui-onion-CEP_SVGa.js → vue-ui-onion-DIp0iWEm.js} +11 -11
  98. package/dist/{vue-ui-parallel-coordinate-plot-DOER4ePV.cjs → vue-ui-parallel-coordinate-plot-BEJ7Hjd_.cjs} +1 -1
  99. package/dist/{vue-ui-parallel-coordinate-plot-DlIPqsBr.js → vue-ui-parallel-coordinate-plot-D2gzzyV6.js} +12 -12
  100. package/dist/{vue-ui-quadrant-BzA3R8WL.cjs → vue-ui-quadrant-BOaaj6gv.cjs} +1 -1
  101. package/dist/{vue-ui-quadrant-hEW2euTx.js → vue-ui-quadrant-DHRPPQzH.js} +40 -40
  102. package/dist/{vue-ui-quick-chart-D43_sxe7.js → vue-ui-quick-chart-Nf2FEMS_.js} +37 -37
  103. package/dist/{vue-ui-quick-chart-vCYn3Ycg.cjs → vue-ui-quick-chart-qDpGCH4Q.cjs} +1 -1
  104. package/dist/{vue-ui-radar-ea-S6hNo.js → vue-ui-radar-BhLZ-5X_.js} +12 -12
  105. package/dist/{vue-ui-radar-CrPGLRgF.cjs → vue-ui-radar-D9u86iM_.cjs} +1 -1
  106. package/dist/{vue-ui-rating-Cr7OYhms.js → vue-ui-rating-B1kvbIOJ.js} +10 -10
  107. package/dist/{vue-ui-rating-DQhxPqnC.cjs → vue-ui-rating-hXwiZ658.cjs} +1 -1
  108. package/dist/{vue-ui-relation-circle-BD63yYPk.js → vue-ui-relation-circle-DlegAoHJ.js} +7 -7
  109. package/dist/{vue-ui-relation-circle-Ci_zTDv6.cjs → vue-ui-relation-circle-DvAO3fkO.cjs} +1 -1
  110. package/dist/{vue-ui-rings-Dup7cJhU.js → vue-ui-rings-DTILCifX.js} +22 -22
  111. package/dist/{vue-ui-rings-o_5TelyF.cjs → vue-ui-rings-ZsNoADO7.cjs} +1 -1
  112. package/dist/{vue-ui-scatter-CpUvuCj4.js → vue-ui-scatter-CVn7AqGT.js} +44 -44
  113. package/dist/{vue-ui-scatter-D1p3fd_k.cjs → vue-ui-scatter-DS8YLaTC.cjs} +1 -1
  114. package/dist/{vue-ui-skeleton-BjminQzl.js → vue-ui-skeleton-CLrl96Gp.js} +57 -57
  115. package/dist/{vue-ui-skeleton-BGykkjYQ.cjs → vue-ui-skeleton-D4hXCz3m.cjs} +1 -1
  116. package/dist/{vue-ui-smiley-BtpjYEEP.cjs → vue-ui-smiley-BKEs5-OT.cjs} +1 -1
  117. package/dist/{vue-ui-smiley-CFKscwS7.js → vue-ui-smiley-CoyijT0I.js} +2 -2
  118. package/dist/{vue-ui-spark-trend-CRcDMTzh.cjs → vue-ui-spark-trend-DTwDre2O.cjs} +1 -1
  119. package/dist/{vue-ui-spark-trend-wAANMLZ4.js → vue-ui-spark-trend-JmorBpIp.js} +5 -5
  120. package/dist/{vue-ui-sparkbar-BTUT-uco.js → vue-ui-sparkbar-BcwjiTbk.js} +4 -4
  121. package/dist/{vue-ui-sparkbar-BVh9AOEX.cjs → vue-ui-sparkbar-CV3V99Ed.cjs} +1 -1
  122. package/dist/{vue-ui-sparkgauge-B_N07sh6.cjs → vue-ui-sparkgauge-BZyFxTJ1.cjs} +1 -1
  123. package/dist/{vue-ui-sparkgauge-DXxoZfG0.js → vue-ui-sparkgauge-CCMnqCx0.js} +9 -9
  124. package/dist/{vue-ui-sparkhistogram-cSUQzQ6o.js → vue-ui-sparkhistogram-BxpQOwco.js} +5 -5
  125. package/dist/{vue-ui-sparkhistogram-CHbsbOtx.cjs → vue-ui-sparkhistogram-vlx7Cb26.cjs} +1 -1
  126. package/dist/{vue-ui-sparkline-Cr5KANZ_.cjs → vue-ui-sparkline-BHjhZFcb.cjs} +1 -1
  127. package/dist/{vue-ui-sparkline-_wbJMVVr.js → vue-ui-sparkline-CkEtaWH1.js} +15 -15
  128. package/dist/{vue-ui-sparkstackbar-SRvQImaw.cjs → vue-ui-sparkstackbar-BKXkw6NY.cjs} +1 -1
  129. package/dist/{vue-ui-sparkstackbar-D93-i-tg.js → vue-ui-sparkstackbar-Eip-31FE.js} +5 -5
  130. package/dist/{vue-ui-stackbar-CnZsiebh.js → vue-ui-stackbar-B6taUxpU.js} +13 -13
  131. package/dist/{vue-ui-stackbar-D3KicC2k.cjs → vue-ui-stackbar-CYZcA9l8.cjs} +1 -1
  132. package/dist/{vue-ui-strip-plot-Dz8doRxV.cjs → vue-ui-strip-plot-Cz75jy3H.cjs} +1 -1
  133. package/dist/{vue-ui-strip-plot-Dv-C246v.js → vue-ui-strip-plot-h63h6xVb.js} +13 -14
  134. package/dist/vue-ui-table-BfACPcxW.cjs +14 -0
  135. package/dist/vue-ui-table-DF8MfQ59.js +1482 -0
  136. package/dist/{vue-ui-table-heatmap-C8Vi0yvC.cjs → vue-ui-table-heatmap-CDgDaJqX.cjs} +1 -1
  137. package/dist/{vue-ui-table-heatmap-CYuY_cv8.js → vue-ui-table-heatmap-mEcSMZHP.js} +4 -4
  138. package/dist/{vue-ui-table-sparkline-C4REu4fs.cjs → vue-ui-table-sparkline-Heo61EuM.cjs} +1 -1
  139. package/dist/{vue-ui-table-sparkline-B76wcNNt.js → vue-ui-table-sparkline-hJtU88Q0.js} +5 -5
  140. package/dist/{vue-ui-thermometer-DvNlCnAL.cjs → vue-ui-thermometer-BbzxbL6e.cjs} +1 -1
  141. package/dist/{vue-ui-thermometer-DiZILoae.js → vue-ui-thermometer-b_eOMDGK.js} +7 -7
  142. package/dist/{vue-ui-timer-DxYKc_c7.js → vue-ui-timer-CuXuiuA_.js} +5 -5
  143. package/dist/{vue-ui-timer-DUN6vOs9.cjs → vue-ui-timer-bfXj2Xo1.cjs} +1 -1
  144. package/dist/{vue-ui-tiremarks-D52pzq2N.js → vue-ui-tiremarks-BRcnMsCk.js} +7 -7
  145. package/dist/{vue-ui-tiremarks-BV7MTnlS.cjs → vue-ui-tiremarks-_io5f_yy.cjs} +1 -1
  146. package/dist/{vue-ui-treemap-gQhTSE_P.cjs → vue-ui-treemap-6-kgqJkN.cjs} +1 -1
  147. package/dist/{vue-ui-treemap-CNbw7CLO.js → vue-ui-treemap-B1udyPJO.js} +12 -12
  148. package/dist/{vue-ui-vertical-bar-ClJttiMf.cjs → vue-ui-vertical-bar-BBiuT_QA.cjs} +1 -1
  149. package/dist/{vue-ui-vertical-bar-B_nsQpZa.js → vue-ui-vertical-bar-DdxNhCdC.js} +12 -12
  150. package/dist/{vue-ui-waffle-CLfNk30s.js → vue-ui-waffle-Bkvw0dyy.js} +37 -37
  151. package/dist/{vue-ui-waffle-BYBctA3T.cjs → vue-ui-waffle-Dqy7BytZ.cjs} +1 -1
  152. package/dist/{vue-ui-wheel-4Yit1iRJ.js → vue-ui-wheel-B5M90GQn.js} +7 -7
  153. package/dist/{vue-ui-wheel-Bj6lxA5M.cjs → vue-ui-wheel-DM6r0w_a.cjs} +1 -1
  154. package/dist/{vue-ui-word-cloud-D94M5Lsf.js → vue-ui-word-cloud-B1u5uWI-.js} +10 -10
  155. package/dist/{vue-ui-word-cloud-AZ1OJrxo.cjs → vue-ui-word-cloud-BeLBUUGY.cjs} +1 -1
  156. package/dist/{vue-ui-world-rkzHCxBG.js → vue-ui-world-CdCSnlhK.js} +12 -12
  157. package/dist/{vue-ui-world-BwcOIaHG.cjs → vue-ui-world-UyenY3MD.cjs} +2 -2
  158. package/dist/{vue-ui-xy-DJiY5DSr.cjs → vue-ui-xy-B-NzV2X6.cjs} +2 -2
  159. package/dist/{vue-ui-xy-DXgpQ8zr.js → vue-ui-xy-CFq6SBzu.js} +34 -35
  160. package/dist/{vue-ui-xy-canvas-CAfAcJWj.js → vue-ui-xy-canvas-CWsJDLOK.js} +12 -12
  161. package/dist/{vue-ui-xy-canvas-DsuvSNM3.cjs → vue-ui-xy-canvas-Df-vG-MU.cjs} +1 -1
  162. package/package.json +1 -1
  163. package/dist/index-DjDcQ8pe.cjs +0 -9
  164. package/dist/pdf-DuohwkFu.cjs +0 -1
  165. package/dist/vue-ui-annotator-BGWZZUN7.cjs +0 -371
  166. package/dist/vue-ui-table-Dkoj_poY.js +0 -1466
  167. package/dist/vue-ui-table-iE1t-zP9.cjs +0 -14
@@ -1,17 +1,17 @@
1
- import { Q as H, Y as U, a7 as te, a8 as J, a9 as le, aa as ae, ab as re, ac as ie, ad as se, c as Z, A as ne, F as ce, w as oe, s as he, o as ue, $ as de, ae as ge, x as fe, C as Ie, y as Ne, a5 as me, e as xe, r as be, f as Q, af as Fe, S as _e, T as ye, q as Ae, b as Le, z as Ce, d as Se, ag as ke, v as we, ah as Oe, a3 as Ge, ai as ve, i as pe, G as ze, L as Me, u as Te, p as Pe, B as Ve, a as Re, t as He } from "./index-9ZicrZWM.js";
2
- import { D as De } from "./DataTable-CaUgku7o.js";
3
- import { _ as We } from "./Title-CGY0WlAI.js";
4
- import { u as Be, _ as Ee } from "./Tooltip-BfEhZz9k.js";
5
- import { U as Ye } from "./usePrinter-D7IXLE53.js";
6
- import { _ as qe } from "./Shape-Hrc-BQkc.js";
7
- import Xe from "./BaseIcon-BH4bJe82.js";
8
- import Ue from "./vue-ui-table-sparkline-B76wcNNt.js";
9
- import Ze from "./vue-ui-skeleton-BjminQzl.js";
10
- import { S as Je } from "./Slicer-2ZyRAred.js";
11
- import Qe from "./vue-ui-accordion-62KnRfCb.js";
12
- import { u as K } from "./useNestedProp-s1XZrtPS.js";
13
- import { _ as Ke } from "./PackageVersion-BEE_4baV.js";
14
- import { _ as je } from "./PenAndPaper-B3WdOAcZ.js";
1
+ import { P as H, W as U, a6 as te, a7 as J, a8 as le, a9 as ae, aa as re, ab as ie, ac as se, c as Z, A as ne, F as ce, w as oe, s as he, o as ue, $ as de, ad as ge, x as fe, C as Ie, y as Ne, a5 as me, e as xe, r as be, f as K, ae as Fe, R as _e, S as ye, q as Ae, b as Le, z as Ce, d as Se, af as ke, v as we, ag as Oe, a3 as Ge, ah as ve, i as pe, G as ze, J as Me, u as Te, p as Pe, B as Ve, a as Re, t as He } from "./index-Ldu7K4PE.js";
2
+ import { D as De } from "./DataTable-aPT7Gaka.js";
3
+ import { _ as We } from "./Title-DBZSWCMO.js";
4
+ import { u as Be, _ as Ee } from "./Tooltip-DokmjO-n.js";
5
+ import { U as Ye } from "./usePrinter-Bca_ZkY4.js";
6
+ import { _ as qe } from "./Shape-WIhUvB3A.js";
7
+ import Xe from "./BaseIcon-CnzdK8aV.js";
8
+ import Ue from "./vue-ui-table-sparkline-hJtU88Q0.js";
9
+ import Ze from "./vue-ui-skeleton-CLrl96Gp.js";
10
+ import { S as Je } from "./Slicer-YYOuyiYz.js";
11
+ import Ke from "./vue-ui-accordion-BeqSE4u4.js";
12
+ import { u as Q } from "./useNestedProp-WCQEv2hV.js";
13
+ import { _ as Qe } from "./PackageVersion-BEjIamIO.js";
14
+ import { _ as je } from "./PenAndPaper-hBDvj9b2.js";
15
15
  import { resolveComponent as R, createElementBlock as i, openBlock as r, normalizeStyle as b, normalizeClass as B, createBlock as W, createCommentVNode as d, createVNode as X, createSlots as $e, withCtx as V, renderSlot as S, normalizeProps as E, guardReactiveProps as Y, createElementVNode as f, createTextVNode as j, Fragment as u, renderList as I, toDisplayString as T, mergeProps as $, withDirectives as et, vModelCheckbox as tt } from "vue";
16
16
  import { _ as lt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
17
17
  const at = Z(), rt = {
@@ -40,8 +40,8 @@ const at = Z(), rt = {
40
40
  TableSparkline: Ue,
41
41
  Skeleton: Ze,
42
42
  Slicer: Je,
43
- Accordion: Qe,
44
- PackageVersion: Ke,
43
+ Accordion: Ke,
44
+ PackageVersion: Qe,
45
45
  PenAndPaper: je
46
46
  },
47
47
  data() {
@@ -773,7 +773,7 @@ const at = Z(), rt = {
773
773
  r: this.FINAL_CONFIG.chart.tooltip.roundingValue
774
774
  }),
775
775
  { datapoint: l }
776
- ) : ""}</b> ${this.FINAL_CONFIG.chart.tooltip.showPercentage ? `(${Q({
776
+ ) : ""}</b> ${this.FINAL_CONFIG.chart.tooltip.showPercentage ? `(${K({
777
777
  v: this.checkNaN(Math.abs(l.value) / n * 100),
778
778
  s: "%",
779
779
  r: this.FINAL_CONFIG.chart.tooltip.roundingPercentage
@@ -826,7 +826,7 @@ const at = Z(), rt = {
826
826
  createSmoothPath: ye,
827
827
  createStraightPath: _e,
828
828
  createTSpans: Fe,
829
- dataLabel: Q,
829
+ dataLabel: K,
830
830
  downloadCsv: be,
831
831
  error: xe,
832
832
  forceValidValue: me,
@@ -841,7 +841,7 @@ const at = Z(), rt = {
841
841
  translateSize: ce,
842
842
  treeShake: ne,
843
843
  useMouse: Be,
844
- useNestedProp: K,
844
+ useNestedProp: Q,
845
845
  createUid: Z,
846
846
  placeXYTag: se,
847
847
  createSmoothPathWithCuts: ie,
@@ -896,7 +896,7 @@ const at = Z(), rt = {
896
896
  defaultConfig: t
897
897
  });
898
898
  return this.config && this.hasDeepProperty(this.config, "chart.highlightArea") && (Array.isArray(this.config.chart.highlightArea) ? n.chart.highlightArea = this.config.chart.highlightArea : n.chart.highlightArea = [this.config.chart.highlightArea]), this.config && this.hasDeepProperty(this.config, "chart.grid.labels.yAxis.scaleMin") ? n.chart.grid.labels.yAxis.scaleMin = this.config.chart.grid.labels.yAxis.scaleMin : n.chart.grid.labels.yAxis.scaleMin = null, this.config && this.hasDeepProperty(this.config, "chart.grid.labels.yAxis.scaleMax") ? n.chart.grid.labels.yAxis.scaleMax = this.config.chart.grid.labels.yAxis.scaleMax : n.chart.grid.labels.yAxis.scaleMax = null, this.config && this.hasDeepProperty(this.config, "chart.zoom.startIndex") ? n.chart.zoom.startIndex = this.config.chart.zoom.startIndex : n.chart.zoom.startIndex = null, this.config && this.hasDeepProperty(this.config, "chart.zoom.endIndex") ? n.chart.zoom.endIndex = this.config.chart.zoom.endIndex : n.chart.zoom.endIndex = null, this.config && this.hasDeepProperty(this.config, "chart.grid.labels.yAxis.groupColor") ? n.chart.grid.labels.yAxis.groupColor = this.config.chart.grid.labels.yAxis.groupColor : n.chart.grid.labels.yAxis.groupColor = null, n.theme ? {
899
- ...K({
899
+ ...Q({
900
900
  userConfig: this.themes.vue_ui_xy[n.theme] || this.config,
901
901
  defaultConfig: n
902
902
  }),
@@ -1115,7 +1115,7 @@ const at = Z(), rt = {
1115
1115
  async generatePdf() {
1116
1116
  this.showSpinnerPdf(), clearTimeout(this.__to__), this.isPrinting = !0, this.__to__ = setTimeout(async () => {
1117
1117
  try {
1118
- const { default: t } = await import("./pdf-zqw8E-me.js");
1118
+ const { default: t } = await import("./pdf-B9y2xWfS.js");
1119
1119
  await t({
1120
1120
  domElement: document.getElementById(`vue-ui-xy_${this.uniqueId}`),
1121
1121
  fileName: this.FINAL_CONFIG.chart.title.text || "vue-ui-xy",
@@ -1138,7 +1138,7 @@ const at = Z(), rt = {
1138
1138
  async generateImage() {
1139
1139
  this.showSpinnerImage(), clearTimeout(this.__to__), this.isImaging = !0, this.__to__ = setTimeout(async () => {
1140
1140
  try {
1141
- const { default: t } = await import("./img-DkpJ0ciT.js");
1141
+ const { default: t } = await import("./img-COrXIjCE.js");
1142
1142
  await t({
1143
1143
  domElement: document.getElementById(`vue-ui-xy_${this.uniqueId}`),
1144
1144
  fileName: this.FINAL_CONFIG.chart.title.text || "vue-ui-xy",
@@ -1158,7 +1158,7 @@ const at = Z(), rt = {
1158
1158
  ref: "noTitle",
1159
1159
  class: "vue-data-ui-no-title-space",
1160
1160
  style: "height:36px; width: 100%; background:transparent"
1161
- }, nt = ["viewBox", "aria-label"], ct = ["x", "y", "width", "height"], ot = { key: 1 }, ht = { class: "vue-ui-xy-grid" }, ut = ["stroke", "x1", "x2", "y1", "y2"], dt = ["stroke", "x1", "x2", "y1", "y2"], gt = { key: 1 }, ft = ["x1", "x2", "y1", "y2", "stroke"], It = ["x1", "x2", "y1", "y2", "stroke"], Nt = ["x1", "x2", "y1", "y2", "stroke"], mt = { key: 3 }, xt = ["x1", "x2", "y1", "y2", "stroke"], bt = ["id"], Ft = ["stop-color"], _t = ["stop-color"], yt = ["stop-color"], At = ["id"], Lt = ["stop-color"], Ct = ["stop-color"], St = ["stop-color"], kt = ["id"], wt = ["stop-color"], Ot = ["stop-color"], Gt = ["id"], vt = ["stop-color"], pt = ["stop-color"], zt = ["id"], Mt = ["stop-color"], Tt = ["stop-color"], Pt = ["x", "y", "height", "width", "fill"], Vt = ["x", "y", "width"], Rt = ["x", "y", "height", "width", "fill"], Ht = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], Dt = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], Wt = ["width", "x", "y"], Bt = { key: 0 }, Et = ["id"], Yt = ["fill"], qt = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], Xt = ["x", "y", "font-size", "fill"], Ut = ["stroke", "x1", "x2", "y1", "y2"], Zt = { key: 2 }, Jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], Qt = ["x", "y", "width", "height", "stroke", "stroke-width", "stroke-linecap", "stroke-linejoin", "stroke-dasharray"], Kt = { key: 4 }, jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], $t = ["fill", "font-size", "transform"], el = ["x1", "x2", "y1", "y2", "stroke"], tl = ["x", "y", "font-size", "fill"], ll = ["x1", "x2", "y1", "y2", "stroke"], al = ["x", "y", "font-size", "fill"], rl = ["width", "x", "y"], il = { style: { width: "100%" } }, sl = { key: 0 }, nl = ["id"], cl = ["fill"], ol = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], hl = ["x", "y", "font-size", "fill"], ul = ["d", "stroke", "stroke-width", "stroke-dasharray"], dl = ["d", "stroke", "stroke-width", "stroke-dasharray"], gl = { key: 5 }, fl = { key: 0 }, Il = ["d", "fill"], Nl = ["d", "fill"], ml = ["d", "fill"], xl = ["d", "fill"], bl = ["d", "stroke", "stroke-width", "stroke-dasharray"], Fl = ["d", "stroke", "stroke-width", "stroke-dasharray"], _l = ["width", "x", "y"], yl = { style: { width: "100%" } }, Al = { key: 3 }, Ll = ["id"], Cl = ["fill"], Sl = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], kl = ["x", "y", "font-size", "fill"], wl = { key: 6 }, Ol = ["x", "y", "font-size", "fill"], Gl = ["x", "y", "font-size", "fill", "font-weight"], vl = { key: 7 }, pl = ["x", "y", "font-size", "fill"], zl = { key: 8 }, Ml = ["x", "y"], Tl = ["innerHTML"], Pl = ["x", "y"], Vl = ["innerHTML"], Rl = ["x1", "x2", "y1", "y2", "stroke"], Hl = { key: 9 }, Dl = ["x", "y", "font-size", "fill"], Wl = { key: 10 }, Bl = ["x", "y"], El = ["innerHTML"], Yl = ["x", "y"], ql = ["innerHTML"], Xl = ["x1", "x2", "y1", "y2", "stroke"], Ul = ["x", "y", "font-size", "fill", "innerHTML"], Zl = ["x", "y", "font-size", "fill", "innerHTML"], Jl = ["x", "y", "font-size", "fill", "innerHTML"], Ql = ["x", "y", "font-size", "fill", "innerHTML"], Kl = ["id"], jl = ["stop-color"], $l = ["stop-color"], ea = ["x", "y", "width", "height", "fill", "onMouseenter"], ta = ["font-size", "fill", "transform"], la = ["x", "y", "font-size", "fill"], aa = { key: 12 }, ra = ["text-anchor", "font-size", "fill", "transform", "onClick"], ia = ["x", "y", "height", "width", "onMouseenter", "onClick"], sa = {
1161
+ }, nt = ["viewBox", "aria-label"], ct = ["x", "y", "width", "height"], ot = { key: 1 }, ht = { class: "vue-ui-xy-grid" }, ut = ["stroke", "x1", "x2", "y1", "y2"], dt = ["stroke", "x1", "x2", "y1", "y2"], gt = { key: 1 }, ft = ["x1", "x2", "y1", "y2", "stroke"], It = ["x1", "x2", "y1", "y2", "stroke"], Nt = ["x1", "x2", "y1", "y2", "stroke"], mt = { key: 3 }, xt = ["x1", "x2", "y1", "y2", "stroke"], bt = ["id"], Ft = ["stop-color"], _t = ["stop-color"], yt = ["stop-color"], At = ["id"], Lt = ["stop-color"], Ct = ["stop-color"], St = ["stop-color"], kt = ["id"], wt = ["stop-color"], Ot = ["stop-color"], Gt = ["id"], vt = ["stop-color"], pt = ["stop-color"], zt = ["id"], Mt = ["stop-color"], Tt = ["stop-color"], Pt = ["x", "y", "height", "width", "fill"], Vt = ["x", "y", "width"], Rt = ["x", "y", "height", "width", "fill"], Ht = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], Dt = ["x", "y", "height", "width", "rx", "fill", "stroke", "stroke-width"], Wt = ["width", "x", "y"], Bt = { key: 0 }, Et = ["id"], Yt = ["fill"], qt = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], Xt = ["x", "y", "font-size", "fill"], Ut = ["stroke", "x1", "x2", "y1", "y2"], Zt = { key: 2 }, Jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], Kt = ["x", "y", "width", "height", "stroke", "stroke-width", "stroke-linecap", "stroke-linejoin", "stroke-dasharray"], Qt = { key: 4 }, jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], $t = ["fill", "font-size", "transform"], el = ["x1", "x2", "y1", "y2", "stroke"], tl = ["x", "y", "font-size", "fill"], ll = ["x1", "x2", "y1", "y2", "stroke"], al = ["x", "y", "font-size", "fill"], rl = ["width", "x", "y"], il = { style: { width: "100%" } }, sl = { key: 0 }, nl = ["id"], cl = ["fill"], ol = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], hl = ["x", "y", "font-size", "fill"], ul = ["d", "stroke", "stroke-width", "stroke-dasharray"], dl = ["d", "stroke", "stroke-width", "stroke-dasharray"], gl = { key: 5 }, fl = { key: 0 }, Il = ["d", "fill"], Nl = ["d", "fill"], ml = ["d", "fill"], xl = ["d", "fill"], bl = ["d", "stroke", "stroke-width", "stroke-dasharray"], Fl = ["d", "stroke", "stroke-width", "stroke-dasharray"], _l = ["width", "x", "y"], yl = { style: { width: "100%" } }, Al = { key: 3 }, Ll = ["id"], Cl = ["fill"], Sl = ["x1", "x2", "y1", "y2", "stroke", "marker-end"], kl = ["x", "y", "font-size", "fill"], wl = { key: 6 }, Ol = ["x", "y", "font-size", "fill"], Gl = ["x", "y", "font-size", "fill", "font-weight"], vl = { key: 7 }, pl = ["x", "y", "font-size", "fill"], zl = { key: 8 }, Ml = ["x", "y"], Tl = ["innerHTML"], Pl = ["x", "y"], Vl = ["innerHTML"], Rl = ["x1", "x2", "y1", "y2", "stroke"], Hl = { key: 9 }, Dl = ["x", "y", "font-size", "fill"], Wl = { key: 10 }, Bl = ["x", "y"], El = ["innerHTML"], Yl = ["x", "y"], ql = ["innerHTML"], Xl = ["x1", "x2", "y1", "y2", "stroke"], Ul = ["x", "y", "font-size", "fill", "innerHTML"], Zl = ["x", "y", "font-size", "fill", "innerHTML"], Jl = ["x", "y", "font-size", "fill", "innerHTML"], Kl = ["x", "y", "font-size", "fill", "innerHTML"], Ql = ["id"], jl = ["stop-color"], $l = ["stop-color"], ea = ["x", "y", "width", "height", "fill", "onMouseenter"], ta = ["font-size", "fill", "transform"], la = ["x", "y", "font-size", "fill"], aa = { key: 12 }, ra = ["text-anchor", "font-size", "fill", "transform", "onClick"], ia = ["x", "y", "height", "width", "onMouseenter", "onClick"], sa = {
1162
1162
  key: 13,
1163
1163
  style: { "pointer-events": "none" }
1164
1164
  }, na = ["x", "y"], ca = ["cx", "cy", "r", "fill"], oa = {
@@ -1649,8 +1649,8 @@ function za(t, n, o, g, l, e) {
1649
1649
  ]),
1650
1650
  a.plots.length > 1 ? (r(), i("line", {
1651
1651
  key: 0,
1652
- x1: e.calcLinearProgression(a.plots).x1,
1653
- x2: e.calcLinearProgression(a.plots).x2,
1652
+ x1: e.calcLinearProgression(a.plots).x1 + e.calcRectWidth(),
1653
+ x2: e.calcLinearProgression(a.plots).x2 + e.calcRectWidth(),
1654
1654
  y1: e.forceValidValue(e.calcLinearProgression(a.plots).y1),
1655
1655
  y2: e.forceValidValue(e.calcLinearProgression(a.plots).y2),
1656
1656
  "stroke-width": 1,
@@ -1661,7 +1661,7 @@ function za(t, n, o, g, l, e) {
1661
1661
  a.plots.length > 1 ? (r(), i("text", {
1662
1662
  key: 1,
1663
1663
  "text-anchor": "middle",
1664
- x: e.calcLinearProgression(a.plots).x2,
1664
+ x: e.calcLinearProgression(a.plots).x2 + e.calcRectWidth(),
1665
1665
  y: e.calcLinearProgression(a.plots).y2 - 6,
1666
1666
  "font-size": l.fontSizes.plotLabels,
1667
1667
  fill: a.color
@@ -1708,8 +1708,8 @@ function za(t, n, o, g, l, e) {
1708
1708
  "stroke-linecap": e.FINAL_CONFIG.chart.grid.frame.strokeLinecap,
1709
1709
  "stroke-linejoin": e.FINAL_CONFIG.chart.grid.frame.strokeLinejoin,
1710
1710
  "stroke-dasharray": e.FINAL_CONFIG.chart.grid.frame.strokeDasharray
1711
- }, null, 8, Qt)) : d("", !0),
1712
- e.FINAL_CONFIG.chart.grid.labels.show ? (r(), i("g", Kt, [
1711
+ }, null, 8, Kt)) : d("", !0),
1712
+ e.FINAL_CONFIG.chart.grid.labels.show ? (r(), i("g", Qt, [
1713
1713
  l.mutableConfig.useIndividualScale ? (r(), i(u, { key: 0 }, [
1714
1714
  (r(!0), i(u, null, I(e.allScales, (a) => (r(), i("g", null, [
1715
1715
  f("line", {
@@ -1889,9 +1889,8 @@ function za(t, n, o, g, l, e) {
1889
1889
  ], 6))), 128)),
1890
1890
  t.$slots.pattern ? (r(), i("defs", gl, [
1891
1891
  (r(!0), i(u, null, I(e.safeDataset, (a, c) => S(t.$slots, "pattern", $({
1892
- key: `serie_pattern_slot_${c}`,
1893
- ref_for: !0
1894
- }, { ...a, seriesIndex: a.slotAbsoluteIndex, patternId: `pattern_${l.uniqueId}_${c}` }), void 0, !0)), 128))
1892
+ key: `serie_pattern_slot_${c}`
1893
+ }, { ref_for: !0 }, { ...a, seriesIndex: a.slotAbsoluteIndex, patternId: `pattern_${l.uniqueId}_${c}` }), void 0, !0)), 128))
1895
1894
  ])) : d("", !0),
1896
1895
  (r(!0), i(u, null, I(e.lineSet, (a, c) => (r(), i("g", {
1897
1896
  key: `serie_line_${c}`,
@@ -2330,7 +2329,7 @@ function za(t, n, o, g, l, e) {
2330
2329
  maxWords: 2
2331
2330
  }),
2332
2331
  style: b(`opacity:${l.selectedScale ? l.selectedScale === a.groupId ? 1 : 0.2 : 1};transition:opacity 0.2s ease-in-out`)
2333
- }, null, 12, Ql)) : d("", !0)
2332
+ }, null, 12, Kl)) : d("", !0)
2334
2333
  ], 64))), 128))
2335
2334
  ], 64))), 128)),
2336
2335
  l.mutableConfig.useIndividualScale && !l.mutableConfig.isStacked ? (r(), i(u, { key: 11 }, [
@@ -2352,7 +2351,7 @@ function za(t, n, o, g, l, e) {
2352
2351
  "stop-color": a.color,
2353
2352
  "stop-opacity": "0.2"
2354
2353
  }, null, 8, $l)
2355
- ], 8, Kl))), 256))
2354
+ ], 8, Ql))), 256))
2356
2355
  ]),
2357
2356
  (r(!0), i(u, null, I(e.allScales, (a, c) => (r(), i("rect", {
2358
2357
  x: a.x - e.FINAL_CONFIG.chart.grid.labels.yAxis.labelWidth + e.xPadding,
@@ -2898,7 +2897,7 @@ function za(t, n, o, g, l, e) {
2898
2897
  }, 8, ["config"])) : d("", !0)
2899
2898
  ], 46, it);
2900
2899
  }
2901
- const Qa = /* @__PURE__ */ lt(rt, [["render", za], ["__scopeId", "data-v-66de1da2"]]);
2900
+ const Ka = /* @__PURE__ */ lt(rt, [["render", za], ["__scopeId", "data-v-0ac0eb6b"]]);
2902
2901
  export {
2903
- Qa as default
2902
+ Ka as default
2904
2903
  };
@@ -1,19 +1,19 @@
1
1
  import { ref as c, computed as R, onMounted as ot, nextTick as Oe, onBeforeUnmount as $t, watch as _, createElementBlock as M, openBlock as w, Fragment as je, createCommentVNode as Z, normalizeStyle as N, normalizeClass as ve, createElementVNode as W, withDirectives as gt, createVNode as me, toDisplayString as Qe, unref as D, vModelText as pt, withModifiers as mt, renderList as bt, useSlots as Gt, createBlock as ie, createSlots as Zt, withCtx as A, renderSlot as P, normalizeProps as ye, guardReactiveProps as ge, createTextVNode as qt } from "vue";
2
- import { l as St, f as be, X as jt, u as Kt, c as Qt, t as _t, p as pe, a as Jt, C as Ke, b as el, D as lt, i as Le, d as xt, $ as tl, J as ll, ai as al, o as ol, e as nl, x as kt, q as rl, r as ul, y as sl, s as Re } from "./index-9ZicrZWM.js";
2
+ import { l as St, f as be, X as jt, u as Kt, c as Qt, t as _t, p as pe, a as Jt, C as Ke, b as el, D as lt, i as Le, d as xt, $ as tl, H as ll, ah as al, o as ol, e as nl, x as kt, q as rl, r as ul, y as sl, s as Re } from "./index-Ldu7K4PE.js";
3
3
  import { d as il, t as vl, u as cl, c as dl, a as Lt, l as F, r as at, b as ne, p as wt } from "./useResponsive-Cw4oZ8sQ.js";
4
- import { _ as hl } from "./Tooltip-BfEhZz9k.js";
5
- import { L as fl } from "./Legend-BxZxsJCp.js";
6
- import { _ as yl } from "./Title-CGY0WlAI.js";
7
- import { S as gl } from "./Slicer-2ZyRAred.js";
8
- import { u as pl, U as ml } from "./usePrinter-D7IXLE53.js";
9
- import bl from "./vue-ui-accordion-62KnRfCb.js";
10
- import { D as xl } from "./DataTable-CaUgku7o.js";
11
- import kl from "./vue-ui-skeleton-BjminQzl.js";
12
- import { u as Ct } from "./useNestedProp-s1XZrtPS.js";
4
+ import { _ as hl } from "./Tooltip-DokmjO-n.js";
5
+ import { L as fl } from "./Legend-Cfm0ctX6.js";
6
+ import { _ as yl } from "./Title-DBZSWCMO.js";
7
+ import { S as gl } from "./Slicer-YYOuyiYz.js";
8
+ import { u as pl, U as ml } from "./usePrinter-Bca_ZkY4.js";
9
+ import bl from "./vue-ui-accordion-BeqSE4u4.js";
10
+ import { D as xl } from "./DataTable-aPT7Gaka.js";
11
+ import kl from "./vue-ui-skeleton-CLrl96Gp.js";
12
+ import { u as Ct } from "./useNestedProp-WCQEv2hV.js";
13
13
  import { u as Ll } from "./useUserOptionState-BIvW1Kz7.js";
14
14
  import { u as wl } from "./useChartAccessibility-BWojgys7.js";
15
- import De from "./BaseIcon-BH4bJe82.js";
16
- import { C as Cl } from "./ColorPicker-Dnjy6olA.js";
15
+ import De from "./BaseIcon-CnzdK8aV.js";
16
+ import { C as Cl } from "./ColorPicker-CYa3DFQB.js";
17
17
  import { _ as zt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
18
18
  const $l = {
19
19
  class: /* @__PURE__ */ ve({
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),d=require("./index-DjDcQ8pe.cjs"),x=require("./useResponsive-DQmBAoBf.cjs"),vt=require("./Tooltip-DckFFIYj.cjs"),dt=require("./Legend-Bl_MrORk.cjs"),ht=require("./Title-BGh0hWb2.cjs"),ft=require("./Slicer-DVYmI2V1.cjs"),Ue=require("./usePrinter-vFXYgZiT.cjs"),yt=require("./vue-ui-accordion-DIMalTE4.cjs"),pt=require("./DataTable-Cz1SDtvT.cjs"),gt=require("./vue-ui-skeleton-BGykkjYQ.cjs"),qe=require("./useNestedProp-BS9eJthK.cjs"),mt=require("./useUserOptionState-BgepsfED.cjs"),bt=require("./useChartAccessibility-Cm7nkzTG.cjs"),ge=require("./BaseIcon-C6L3qbQ8.cjs"),xt=require("./ColorPicker-BmVm6Lqe.cjs"),We=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),kt={class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0}),style:{padding:"0 !important"}},Ct=["disabled"],Lt=["data-mode","xmlns","viewBox"],wt=["cx","cy","r","fill"],St=["d","stroke","stroke-width"],zt=["x","y","fill","font-size"],$t=["x","dy"],Tt=["d","stroke","stroke-width"],Et={__name:"NonSvgPenAndPaper",props:{parent:{type:HTMLElement},backgroundColor:{type:String,default:"#FFFFFF"},color:{type:String,default:"#2D353C"},active:{type:Boolean,default:!1}},emits:["close"],setup(z,{emit:Ee}){const U=z,Be=Ee,L=t.ref([]),V=t.ref([]),K=t.ref("0 0 0 0"),D=t.ref(U.color),y=t.ref(1),m=t.ref("draw"),w=t.ref(null),q=t.ref(!1),h=t.ref(null),Y=t.ref({x:0,y:0}),X=t.ref([""]),E=t.ref({row:0,col:0}),P=t.ref(16);let W=1;function G(){return W++}function ne(i){var a;const r=R.value;if(!r)return{x:0,y:0};const o=r.createSVGPoint();let u=i.clientX,v=i.clientY;i.touches&&i.touches.length&&(u=i.touches[0].clientX,v=i.touches[0].clientY),o.x=u,o.y=v;const f=(a=r.getScreenCTM())==null?void 0:a.inverse();return f?o.matrixTransform(f):{x:0,y:0}}function re(i){if(!w.value||m.value!=="text"||q.value)return;const{x:r,y:o}=ne(i);Y.value={x:r,y:o},X.value=[""],E.value={row:0,col:0};const u=document.createElementNS("http://www.w3.org/2000/svg","text");u.setAttribute("x",r),u.setAttribute("y",o),u.setAttribute("fill",D.value),u.setAttribute("font-size",P.value),u.setAttribute("font-family","sans-serif"),u.setAttribute("class","vue-data-ui-doodle"),u.setAttribute("dominant-baseline","hanging"),u.setAttribute("pointer-events","all");const v=document.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttribute("x",r),v.setAttribute("dy","0"),v.textContent="",u.appendChild(v),u.style.pointerEvents="none",u.style.userSelect="none",w.value.appendChild(u),h.value=u,q.value=!0,window.addEventListener("keydown",ue),window.addEventListener("mousedown",ie,!0),J(),se()}function ue(i){if(!q.value)return;let{row:r,col:o}=E.value,u=X.value.slice(),v=!1;if(i.key==="Enter"){const f=u[r],a=f.slice(0,o),T=f.slice(o);u.splice(r,1,a,T),r+=1,o=0,v=!0,i.preventDefault()}else if(i.key==="Backspace"){if(o>0)u[r]=u[r].slice(0,o-1)+u[r].slice(o),o-=1,v=!0;else if(r>0){const f=u[r-1].length;u[r-1]+=u[r],u.splice(r,1),r-=1,o=f,v=!0}i.preventDefault()}else if(i.key==="Delete")o<u[r].length?(u[r]=u[r].slice(0,o)+u[r].slice(o+1),v=!0):r<u.length-1&&(u[r]+=u[r+1],u.splice(r+1,1),v=!0),i.preventDefault();else if(i.key==="ArrowLeft")o>0?o-=1:r>0&&(r-=1,o=u[r].length),v=!0,i.preventDefault();else if(i.key==="ArrowRight")o<u[r].length?o+=1:r<u.length-1&&(r+=1,o=0),v=!0,i.preventDefault();else if(i.key==="ArrowUp")r>0&&(r-=1,o=Math.min(o,u[r].length),v=!0),i.preventDefault();else if(i.key==="ArrowDown")r<u.length-1&&(r+=1,o=Math.min(o,u[r].length),v=!0),i.preventDefault();else if(i.key.length===1&&!i.ctrlKey&&!i.metaKey&&!i.altKey)u[r]=u[r].slice(0,o)+i.key+u[r].slice(o),o+=1,v=!0,i.preventDefault();else if(i.key==="Escape"){ce(!0);return}else i.key==="Tab"&&i.preventDefault();v&&(X.value=u,E.value={row:r,col:o},J(),se())}function J(){const i=h.value,{x:r,y:o}=Y.value;for(;i.firstChild;)i.removeChild(i.firstChild);X.value.forEach((u,v)=>{const f=document.createElementNS("http://www.w3.org/2000/svg","tspan");f.setAttribute("x",r),f.setAttribute("dy",v===0?"0":`${P.value*1.2}`),f.textContent=u.length?u:"​",i.appendChild(f)})}function se(){const i=w.value.querySelector(".vue-data-ui-svg-caret");i&&w.value.removeChild(i);const r=h.value;if(!r)return;const{x:o,y:u}=Y.value,{row:v,col:f}=E.value,a=P.value,T=r.childNodes[v];if(!T)return;let B=T.textContent.slice(0,f);B.endsWith(" ")&&(B+=" ");const p=document.createElementNS("http://www.w3.org/2000/svg","text");p.setAttribute("x",o),p.setAttribute("y",u),p.setAttribute("font-size",a),p.setAttribute("font-family","sans-serif"),p.textContent=B||"",w.value.appendChild(p);const M=p.getBBox();w.value.removeChild(p);let $=u+v*a*1.2,g=o+M.width;const c=document.createElementNS("http://www.w3.org/2000/svg","rect");c.setAttribute("x",g),c.setAttribute("y",$),c.setAttribute("width",1),c.setAttribute("height",a),c.setAttribute("fill",D.value),c.setAttribute("class","vue-data-ui-svg-caret"),w.value.appendChild(c)}function ie(i){if(h.value&&!h.value.contains(i.target)){const r=h.value.children;r.length===1&&(r[0].textContent===""||r[0].textContent==="​")&&h.value.remove(),ce(!1)}}function ce(i=!1){var u;window.removeEventListener("keydown",ue),window.removeEventListener("mousedown",ie,!0);const r=(u=w.value)==null?void 0:u.querySelector(".vue-data-ui-svg-caret");r&&w.value.removeChild(r);const o=X.value.every(v=>!v||v==="​");i||o||L.value.push({id:G(),type:"text",x:Y.value.x,y:Y.value.y,color:D.value,fontSize:P.value,lines:X.value.map(v=>v)}),h.value&&w.value&&w.value.contains(h.value)&&w.value.removeChild(h.value),q.value=!1,h.value=null,X.value=[""],E.value={row:0,col:0}}const H=t.computed(()=>d.lightenHexColor(U.color,.6));function ee({width:i,height:r}){K.value=`0 0 ${i} ${r}`}const _=t.ref(null);t.onMounted(()=>{t.nextTick(()=>{if(U.parent){_.value=new ResizeObserver(o=>{for(const u of o){const{width:v,height:f}=u.contentRect;ee({width:v,height:f})}}),_.value.observe(U.parent);const{width:i,height:r}=U.parent.getBoundingClientRect();ee({width:i,height:r})}}),w.value=R.value.querySelector("g")}),t.onBeforeUnmount(()=>{_.value&&_.value.disconnect()}),t.watch(()=>U.parent,i=>{if(!i)return;const{width:r,height:o}=U.parent.getBoundingClientRect();ee({width:r,height:o})},{immediate:!0}),t.watch(m,i=>{var r,o;i==="text"?(r=R.value)==null||r.addEventListener("mousedown",re):(o=R.value)==null||o.removeEventListener("mousedown",re)});const Z=t.ref(!1),N=t.ref(""),R=t.ref(null);function me(i){if(m.value!=="draw"||!R.value)return;Z.value=!0;const{x:r,y:o}=F(i);N.value=`M ${r} ${o}`}function be(i){if(!Z.value||!R.value)return;const{x:r,y:o}=F(i);N.value+=` ${r} ${o}`}function l(i){const r=i.trim().split(/\s+/);if(r.length<4)return i;const o=r.slice(1).map(Number);if(o.length%2!==0)return i;const u=ve(o),v=[`M ${u[0]} ${u[1]}`];for(let T=2;T<u.length-2;T+=2){const B=u[T-2],p=u[T-1],M=u[T],$=u[T+1],g=(B+M)/2,c=(p+$)/2;v.push(`Q ${B} ${p} ${g} ${c}`)}const f=u[u.length-2],a=u[u.length-1];return v.push(`L ${f} ${a}`),v.join(" ")}function ve(i,r=1){const o=[...i];for(let u=2;u<i.length-2;u+=2){const v=i[u],f=i[u+1],a=i[u-2],T=i[u-1],B=i[u+2],p=i[u+3];o[u]=v+r*((a+B)/2-v),o[u+1]=f+r*((T+p)/2-f)}return o}function xe(i){const r=i.trim().split(/\s+/);let o="",u="",v=null,f=null;for(let a=0;a<r.length;a+=1){const T=r[a];if(isNaN(T)){if(u=T,u==="M"||u==="L")v=parseFloat(r[++a]),f=parseFloat(r[++a]),o+=`${u}${v} ${f}`;else if(u==="Q"){const B=parseFloat(r[++a]),p=parseFloat(r[++a]),M=parseFloat(r[++a]),$=parseFloat(r[++a]);B===v&&p===f?o+=`t${M-v} ${$-f}`:o+=`q${B-v} ${p-f} ${M-v} ${$-f}`,v=M,f=$}}else{const B=parseFloat(T),p=parseFloat(r[++a]);if(u==="L"){const M=B-v,$=p-f;M===0?o+=`v${$}`:$===0?o+=`h${M}`:o+=`l${M} ${$}`,v=B,f=p}else if(u==="Q"){const M=B,$=p,g=parseFloat(r[++a]),c=parseFloat(r[++a]);M===v&&$===f?o+=`t${g-v} ${c-f}`:o+=`q${M-v} ${$-f} ${g-v} ${c-f}`,v=g,f=c}}}return o}function ae(){Z.value&&(L.value.push({id:G(),strokeWidth:y.value,path:xe(l(N.value)),color:D.value}),V.value=[],N.value=""),Z.value=!1}function F(i){if(!R.value)return{x:0,y:0};const r=R.value.getBoundingClientRect();let o,u;return i.touches&&i.touches.length?(o=i.touches[0].clientX,u=i.touches[0].clientY):(o=i.clientX,u=i.clientY),{x:o-r.left,y:u-r.top}}function ke(){if(L.value.length>0){const i=L.value.pop();V.value.push(i)}}function Ce(){if(V.value.length>0){const i=V.value.pop();L.value.push(i)}}function Le(){L.value=[],V.value=[]}const de=t.ref(null);return(i,r)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[z.active?(t.openBlock(),t.createElementBlock("div",{key:0,"data-dom-to-png-ignore":"",class:t.normalizeClass({"vue-ui-pen-and-paper-actions":!0,visible:z.active}),style:t.normalizeStyle({backgroundColor:z.backgroundColor})},[t.createElementVNode("button",{class:"vue-ui-pen-and-paper-action",style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:r[0]||(r[0]=o=>Be("close"))},[t.createVNode(ge.default,{name:"close",stroke:z.color},null,8,["stroke"])],4),t.createElementVNode("button",kt,[t.createVNode(xt.ColorPicker,{value:D.value,"onUpdate:value":r[1]||(r[1]=o=>D.value=o),backgroundColor:z.backgroundColor,buttonBorderColor:H.value},null,8,["value","backgroundColor","buttonBorderColor"])]),t.createElementVNode("button",{class:t.normalizeClass(["vue-ui-pen-and-paper-action",{"vue-ui-pen-and-paper-action-active":m.value==="text"}]),onClick:r[2]||(r[2]=o=>m.value=m.value==="text"?"draw":"text"),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`})},[t.createVNode(ge.default,{name:m.value==="draw"?"annotator":"text",stroke:z.color},null,8,["name","stroke"]),t.createElementVNode("div",{style:t.normalizeStyle({position:"absolute",bottom:"-20px",color:H.value,width:"100%",textAlign:"center",fontSize:"12px"})},t.toDisplayString(t.unref(d.dataLabel)({v:m.value==="draw"?y.value:P.value,s:"px",r:1})),5)],6),t.createElementVNode("button",{class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!L.value.length}),disabled:!L.value.length,style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`,marginTop:"20px"}),onClick:ke},[t.createVNode(ge.default,{name:"restart",stroke:z.color},null,8,["stroke"])],14,Ct),t.createElementVNode("button",{class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!V.value.length}),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:Ce},[t.createVNode(ge.default,{name:"restart",stroke:z.color,style:{transform:"scaleX(-1)"}},null,8,["stroke"])],6),t.createElementVNode("button",{class:t.normalizeClass([{"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!L.value.length},"vue-ui-pen-and-paper-action"]),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:Le},[t.createVNode(ge.default,{name:"trash",stroke:z.color},null,8,["stroke"])],6),m.value==="draw"?t.withDirectives((t.openBlock(),t.createElementBlock("input",{key:0,ref_key:"range",ref:de,type:"range",class:"vertical-range",min:.5,max:12,step:.1,"onUpdate:modelValue":r[3]||(r[3]=o=>y.value=o),style:t.normalizeStyle({accentColor:z.color})},null,4)),[[t.vModelText,y.value]]):t.createCommentVNode("",!0),m.value==="text"?t.withDirectives((t.openBlock(),t.createElementBlock("input",{key:1,ref_key:"range",ref:de,type:"range",class:"vertical-range",min:3,max:48,step:.1,"onUpdate:modelValue":r[4]||(r[4]=o=>P.value=o),style:t.normalizeStyle({accentColor:z.color})},null,4)),[[t.vModelText,P.value]]):t.createCommentVNode("",!0)],6)):t.createCommentVNode("",!0),(t.openBlock(),t.createElementBlock("svg",{"data-mode":m.value,ref_key:"svgElement",ref:R,xmlns:t.unref(d.XMLNS),viewBox:K.value,class:t.normalizeClass({"vue-ui-pen-and-paper":!0,inactive:!z.active}),onMousedown:me,onMousemove:be,onMouseup:ae,onMouseleave:ae,onTouchstart:t.withModifiers(me,["prevent"]),onTouchmove:t.withModifiers(be,["prevent"]),onTouchend:ae},[t.createElementVNode("g",{ref_key:"G",ref:w},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(L.value,o=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:o.id},[o.path&&o.path.replace("M","").split(" ").length===2?(t.openBlock(),t.createElementBlock("circle",{key:0,cx:o.path.replace("M","").split(" ")[0],cy:o.path.replace("M","").split(" ")[1],r:o.strokeWidth/2,fill:o.color},null,8,wt)):o.path?(t.openBlock(),t.createElementBlock("path",{key:1,class:"vue-ui-pen-and-paper-path",d:o.path,stroke:o.color,"stroke-width":o.strokeWidth,fill:"none"},null,8,St)):o.type==="text"?(t.openBlock(),t.createElementBlock("text",{key:2,x:o.x,y:o.y,fill:o.color,"font-size":o.fontSize,"font-family":"sans-serif","dominant-baseline":"hanging",class:"vue-ui-pen-and-paper-text"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.lines,(u,v)=>(t.openBlock(),t.createElementBlock("tspan",{key:v,x:o.x,dy:v===0?"0":o.fontSize*1.2},t.toDisplayString(u.length?u:"​"),9,$t))),128))],8,zt)):t.createCommentVNode("",!0)],64))),128))],512),Z.value?(t.openBlock(),t.createElementBlock("path",{key:0,class:"vue-ui-pen-and-paper-path vue-ui-pen-and-paper-path-drawing",d:l(N.value),stroke:D.value,"stroke-width":y.value*1.1,fill:"none"},null,8,Tt)):t.createCommentVNode("",!0)],42,Lt))],64))}},Bt=We._export_sfc(Et,[["__scopeId","data-v-14478ba4"]]),Mt=["id"],Nt=["onClick"],Pt={key:2,class:"vue-data-ui-watermark"},It=["innerHTML"],At={__name:"vue-ui-xy-canvas",props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}}},emits:["selectLegend"],setup(z,{expose:Ee,emit:U}){const{vue_ui_xy_canvas:Be}=d.useConfig(),L=z,V=t.ref(d.createUid()),K=t.ref(null),D=t.ref(null),y=t.ref(null),m=t.ref(1),w=t.ref(1),q=t.ref(!1),h=t.ref(null),Y=t.ref(""),X=t.ref(null),E=t.ref([]),P=t.ref(1),W=t.ref(!0),G=t.ref(!0),ne=t.ref(null),re=t.ref(0),ue=t.ref(0),J=t.ref(!1),se=t.ref(null),ie=t.ref(null),ce=t.ref(null),H=t.ref(null),ee=t.ref(0),_=t.ref(0),Z=t.ref(0),N=t.ref(null),R=t.computed(()=>!!L.dataset&&L.dataset.length),me=U,be=t.useSlots();t.onMounted(()=>{be["chart-background"]&&console.warn("VueUiXyCanvas does not support the #chart-background slot.")});const l=t.computed({get:()=>ke(),set:e=>e}),{userOptionsVisible:ve,setUserOptionsVisibility:xe,keepUserOptionState:ae}=mt.useUserOptionState({config:l.value}),{svgRef:F}=bt.useChartAccessibility({config:l.value.style.chart.title});function ke(){const e=qe.useNestedProp({userConfig:L.config,defaultConfig:Be});let n={};return e.theme?n={...qe.useNestedProp({userConfig:d.themes.vue_ui_xy_canvas[e.theme]||L.config,defaultConfig:e}),customPalette:d.themePalettes[e.theme]||d.palette}:n=e,L.config&&d.hasDeepProperty(L.config,"style.chart.scale.min")?n.style.chart.scale.min=L.config.style.chart.scale.min:n.style.chart.scale.min=null,L.config&&d.hasDeepProperty(L.config,"style.chart.scale.max")?n.style.chart.scale.max=L.config.style.chart.scale.max:n.style.chart.scale.max=null,L.config&&d.hasDeepProperty(L.config,"style.chart.zoom.startIndex")?n.style.chart.zoom.startIndex=L.config.style.chart.zoom.startIndex:n.style.chart.zoom.startIndex=null,L.config&&d.hasDeepProperty(L.config,"style.chart.zoom.endIndex")?n.style.chart.zoom.endIndex=L.config.style.chart.zoom.endIndex:n.style.chart.zoom.endIndex=null,n}t.watch(()=>L.config,e=>{l.value=ke(),ve.value=!l.value.userOptions.showOnChartHover,Me(),ee.value+=1,_.value+=1,Z.value+=1,o.value.showTable=l.value.table.show,o.value.showDataLabels=l.value.style.chart.dataLabels.show,o.value.stacked=l.value.style.chart.stacked,o.value.showTooltip=l.value.style.chart.tooltip.show},{deep:!0}),t.watch(()=>L.dataset,()=>{Me(),ee.value+=1,_.value+=1,Z.value+=1},{deep:!0});const Ce=t.ref(l.value.style.chart.aspectRatio),{isPrinting:Le,isImaging:de,generatePdf:i,generateImage:r}=Ue.usePrinter({elementId:`xy_canvas_${V.value}`,fileName:l.value.style.chart.title.text||"vue-ui-xy-canvas",options:l.value.userOptions.print}),o=t.ref({showTable:l.value.table.show,showDataLabels:l.value.style.chart.dataLabels.show,stacked:l.value.style.chart.stacked,showTooltip:l.value.style.chart.tooltip.show});function u(e){J.value=e,ue.value+=1}const v=t.computed(()=>d.convertCustomPalette(l.value.customPalette)),f=t.computed(()=>$.value?Math.max(...$.value.filter((e,n)=>!E.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0),a=t.computed(()=>{const e=m.value-m.value*(l.value.style.chart.paddingProportions.left+l.value.style.chart.paddingProportions.right);return{canvasWidth:m.value,canvasHeight:w.value,left:m.value*l.value.style.chart.paddingProportions.left,top:w.value*l.value.style.chart.paddingProportions.top,right:m.value-m.value*l.value.style.chart.paddingProportions.right,bottom:w.value-w.value*l.value.style.chart.paddingProportions.bottom,width:e,height:w.value-w.value*(l.value.style.chart.paddingProportions.top+l.value.style.chart.paddingProportions.bottom),slot:e/(c.value.end-c.value.start)}});function T(e,n){return e/n}function B({hasAutoScale:e,series:n,min:s,max:b,scale:C,yOffset:A,individualHeight:k,stackIndex:S=null}){return n.map((te,O)=>{const Q=C.min<0?Math.abs(C.min):0,le=T(te+Q,Q+C.max);let ye,pe;e&&(ye=C.min,pe=T(te-ye,C.max-ye));let j=0;return S===null?j=a.value.bottom-a.value.height*(e?pe:le):j=a.value.bottom-A-k*(e?pe:le),{x:a.value.left+a.value.slot*O+a.value.slot/2,y:j,value:te}})}const p=t.computed(()=>{const e=l.value.style.chart.scale.min!==null?l.value.style.chart.scale.min:Math.min(...$.value.filter((k,S)=>!E.value.includes(k.absoluteIndex)).flatMap(k=>k.series.slice(c.value.start,c.value.end))),n=l.value.style.chart.scale.max!==null?l.value.style.chart.scale.max:Math.max(...$.value.filter((k,S)=>!E.value.includes(k.absoluteIndex)).flatMap(k=>k.series.slice(c.value.start,c.value.end))),s=d.calculateNiceScale(e<0?e:0,n===e?e+1<0?0:e+1:n<0?0:n,l.value.style.chart.scale.ticks),b=s.min<0?Math.abs(s.min):0,C=a.value.bottom-a.value.height*(b/(s.max+b)),A=s.ticks.map(k=>({y:a.value.bottom-a.value.height*((k+b)/(s.max+b)),x:a.value.left-8,value:k}));return{absoluteMin:b,max:n,min:e,scale:s,yLabels:A,zero:C}}),M=t.computed(()=>g.value.map(e=>`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),d=require("./index-SCeiWj92.cjs"),x=require("./useResponsive-DQmBAoBf.cjs"),vt=require("./Tooltip-D--0gUVq.cjs"),dt=require("./Legend-CUqaARo5.cjs"),ht=require("./Title-D7uuc4dY.cjs"),ft=require("./Slicer-yLatG2Q8.cjs"),Ue=require("./usePrinter-CWjBWUyP.cjs"),yt=require("./vue-ui-accordion-BL41vY_P.cjs"),pt=require("./DataTable-CW5aC-bf.cjs"),gt=require("./vue-ui-skeleton-D4hXCz3m.cjs"),qe=require("./useNestedProp-BV2kijyF.cjs"),mt=require("./useUserOptionState-BgepsfED.cjs"),bt=require("./useChartAccessibility-Cm7nkzTG.cjs"),ge=require("./BaseIcon-DKFlmXEr.cjs"),xt=require("./ColorPicker-PNrzRxPw.cjs"),We=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),kt={class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0}),style:{padding:"0 !important"}},Ct=["disabled"],Lt=["data-mode","xmlns","viewBox"],wt=["cx","cy","r","fill"],St=["d","stroke","stroke-width"],zt=["x","y","fill","font-size"],$t=["x","dy"],Tt=["d","stroke","stroke-width"],Et={__name:"NonSvgPenAndPaper",props:{parent:{type:HTMLElement},backgroundColor:{type:String,default:"#FFFFFF"},color:{type:String,default:"#2D353C"},active:{type:Boolean,default:!1}},emits:["close"],setup(z,{emit:Ee}){const U=z,Be=Ee,L=t.ref([]),V=t.ref([]),K=t.ref("0 0 0 0"),D=t.ref(U.color),y=t.ref(1),m=t.ref("draw"),w=t.ref(null),q=t.ref(!1),h=t.ref(null),Y=t.ref({x:0,y:0}),X=t.ref([""]),E=t.ref({row:0,col:0}),P=t.ref(16);let W=1;function G(){return W++}function ne(i){var a;const r=R.value;if(!r)return{x:0,y:0};const o=r.createSVGPoint();let u=i.clientX,v=i.clientY;i.touches&&i.touches.length&&(u=i.touches[0].clientX,v=i.touches[0].clientY),o.x=u,o.y=v;const f=(a=r.getScreenCTM())==null?void 0:a.inverse();return f?o.matrixTransform(f):{x:0,y:0}}function re(i){if(!w.value||m.value!=="text"||q.value)return;const{x:r,y:o}=ne(i);Y.value={x:r,y:o},X.value=[""],E.value={row:0,col:0};const u=document.createElementNS("http://www.w3.org/2000/svg","text");u.setAttribute("x",r),u.setAttribute("y",o),u.setAttribute("fill",D.value),u.setAttribute("font-size",P.value),u.setAttribute("font-family","sans-serif"),u.setAttribute("class","vue-data-ui-doodle"),u.setAttribute("dominant-baseline","hanging"),u.setAttribute("pointer-events","all");const v=document.createElementNS("http://www.w3.org/2000/svg","tspan");v.setAttribute("x",r),v.setAttribute("dy","0"),v.textContent="",u.appendChild(v),u.style.pointerEvents="none",u.style.userSelect="none",w.value.appendChild(u),h.value=u,q.value=!0,window.addEventListener("keydown",ue),window.addEventListener("mousedown",ie,!0),J(),se()}function ue(i){if(!q.value)return;let{row:r,col:o}=E.value,u=X.value.slice(),v=!1;if(i.key==="Enter"){const f=u[r],a=f.slice(0,o),T=f.slice(o);u.splice(r,1,a,T),r+=1,o=0,v=!0,i.preventDefault()}else if(i.key==="Backspace"){if(o>0)u[r]=u[r].slice(0,o-1)+u[r].slice(o),o-=1,v=!0;else if(r>0){const f=u[r-1].length;u[r-1]+=u[r],u.splice(r,1),r-=1,o=f,v=!0}i.preventDefault()}else if(i.key==="Delete")o<u[r].length?(u[r]=u[r].slice(0,o)+u[r].slice(o+1),v=!0):r<u.length-1&&(u[r]+=u[r+1],u.splice(r+1,1),v=!0),i.preventDefault();else if(i.key==="ArrowLeft")o>0?o-=1:r>0&&(r-=1,o=u[r].length),v=!0,i.preventDefault();else if(i.key==="ArrowRight")o<u[r].length?o+=1:r<u.length-1&&(r+=1,o=0),v=!0,i.preventDefault();else if(i.key==="ArrowUp")r>0&&(r-=1,o=Math.min(o,u[r].length),v=!0),i.preventDefault();else if(i.key==="ArrowDown")r<u.length-1&&(r+=1,o=Math.min(o,u[r].length),v=!0),i.preventDefault();else if(i.key.length===1&&!i.ctrlKey&&!i.metaKey&&!i.altKey)u[r]=u[r].slice(0,o)+i.key+u[r].slice(o),o+=1,v=!0,i.preventDefault();else if(i.key==="Escape"){ce(!0);return}else i.key==="Tab"&&i.preventDefault();v&&(X.value=u,E.value={row:r,col:o},J(),se())}function J(){const i=h.value,{x:r,y:o}=Y.value;for(;i.firstChild;)i.removeChild(i.firstChild);X.value.forEach((u,v)=>{const f=document.createElementNS("http://www.w3.org/2000/svg","tspan");f.setAttribute("x",r),f.setAttribute("dy",v===0?"0":`${P.value*1.2}`),f.textContent=u.length?u:"​",i.appendChild(f)})}function se(){const i=w.value.querySelector(".vue-data-ui-svg-caret");i&&w.value.removeChild(i);const r=h.value;if(!r)return;const{x:o,y:u}=Y.value,{row:v,col:f}=E.value,a=P.value,T=r.childNodes[v];if(!T)return;let B=T.textContent.slice(0,f);B.endsWith(" ")&&(B+=" ");const p=document.createElementNS("http://www.w3.org/2000/svg","text");p.setAttribute("x",o),p.setAttribute("y",u),p.setAttribute("font-size",a),p.setAttribute("font-family","sans-serif"),p.textContent=B||"",w.value.appendChild(p);const M=p.getBBox();w.value.removeChild(p);let $=u+v*a*1.2,g=o+M.width;const c=document.createElementNS("http://www.w3.org/2000/svg","rect");c.setAttribute("x",g),c.setAttribute("y",$),c.setAttribute("width",1),c.setAttribute("height",a),c.setAttribute("fill",D.value),c.setAttribute("class","vue-data-ui-svg-caret"),w.value.appendChild(c)}function ie(i){if(h.value&&!h.value.contains(i.target)){const r=h.value.children;r.length===1&&(r[0].textContent===""||r[0].textContent==="​")&&h.value.remove(),ce(!1)}}function ce(i=!1){var u;window.removeEventListener("keydown",ue),window.removeEventListener("mousedown",ie,!0);const r=(u=w.value)==null?void 0:u.querySelector(".vue-data-ui-svg-caret");r&&w.value.removeChild(r);const o=X.value.every(v=>!v||v==="​");i||o||L.value.push({id:G(),type:"text",x:Y.value.x,y:Y.value.y,color:D.value,fontSize:P.value,lines:X.value.map(v=>v)}),h.value&&w.value&&w.value.contains(h.value)&&w.value.removeChild(h.value),q.value=!1,h.value=null,X.value=[""],E.value={row:0,col:0}}const H=t.computed(()=>d.lightenHexColor(U.color,.6));function ee({width:i,height:r}){K.value=`0 0 ${i} ${r}`}const _=t.ref(null);t.onMounted(()=>{t.nextTick(()=>{if(U.parent){_.value=new ResizeObserver(o=>{for(const u of o){const{width:v,height:f}=u.contentRect;ee({width:v,height:f})}}),_.value.observe(U.parent);const{width:i,height:r}=U.parent.getBoundingClientRect();ee({width:i,height:r})}}),w.value=R.value.querySelector("g")}),t.onBeforeUnmount(()=>{_.value&&_.value.disconnect()}),t.watch(()=>U.parent,i=>{if(!i)return;const{width:r,height:o}=U.parent.getBoundingClientRect();ee({width:r,height:o})},{immediate:!0}),t.watch(m,i=>{var r,o;i==="text"?(r=R.value)==null||r.addEventListener("mousedown",re):(o=R.value)==null||o.removeEventListener("mousedown",re)});const Z=t.ref(!1),N=t.ref(""),R=t.ref(null);function me(i){if(m.value!=="draw"||!R.value)return;Z.value=!0;const{x:r,y:o}=F(i);N.value=`M ${r} ${o}`}function be(i){if(!Z.value||!R.value)return;const{x:r,y:o}=F(i);N.value+=` ${r} ${o}`}function l(i){const r=i.trim().split(/\s+/);if(r.length<4)return i;const o=r.slice(1).map(Number);if(o.length%2!==0)return i;const u=ve(o),v=[`M ${u[0]} ${u[1]}`];for(let T=2;T<u.length-2;T+=2){const B=u[T-2],p=u[T-1],M=u[T],$=u[T+1],g=(B+M)/2,c=(p+$)/2;v.push(`Q ${B} ${p} ${g} ${c}`)}const f=u[u.length-2],a=u[u.length-1];return v.push(`L ${f} ${a}`),v.join(" ")}function ve(i,r=1){const o=[...i];for(let u=2;u<i.length-2;u+=2){const v=i[u],f=i[u+1],a=i[u-2],T=i[u-1],B=i[u+2],p=i[u+3];o[u]=v+r*((a+B)/2-v),o[u+1]=f+r*((T+p)/2-f)}return o}function xe(i){const r=i.trim().split(/\s+/);let o="",u="",v=null,f=null;for(let a=0;a<r.length;a+=1){const T=r[a];if(isNaN(T)){if(u=T,u==="M"||u==="L")v=parseFloat(r[++a]),f=parseFloat(r[++a]),o+=`${u}${v} ${f}`;else if(u==="Q"){const B=parseFloat(r[++a]),p=parseFloat(r[++a]),M=parseFloat(r[++a]),$=parseFloat(r[++a]);B===v&&p===f?o+=`t${M-v} ${$-f}`:o+=`q${B-v} ${p-f} ${M-v} ${$-f}`,v=M,f=$}}else{const B=parseFloat(T),p=parseFloat(r[++a]);if(u==="L"){const M=B-v,$=p-f;M===0?o+=`v${$}`:$===0?o+=`h${M}`:o+=`l${M} ${$}`,v=B,f=p}else if(u==="Q"){const M=B,$=p,g=parseFloat(r[++a]),c=parseFloat(r[++a]);M===v&&$===f?o+=`t${g-v} ${c-f}`:o+=`q${M-v} ${$-f} ${g-v} ${c-f}`,v=g,f=c}}}return o}function ae(){Z.value&&(L.value.push({id:G(),strokeWidth:y.value,path:xe(l(N.value)),color:D.value}),V.value=[],N.value=""),Z.value=!1}function F(i){if(!R.value)return{x:0,y:0};const r=R.value.getBoundingClientRect();let o,u;return i.touches&&i.touches.length?(o=i.touches[0].clientX,u=i.touches[0].clientY):(o=i.clientX,u=i.clientY),{x:o-r.left,y:u-r.top}}function ke(){if(L.value.length>0){const i=L.value.pop();V.value.push(i)}}function Ce(){if(V.value.length>0){const i=V.value.pop();L.value.push(i)}}function Le(){L.value=[],V.value=[]}const de=t.ref(null);return(i,r)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[z.active?(t.openBlock(),t.createElementBlock("div",{key:0,"data-dom-to-png-ignore":"",class:t.normalizeClass({"vue-ui-pen-and-paper-actions":!0,visible:z.active}),style:t.normalizeStyle({backgroundColor:z.backgroundColor})},[t.createElementVNode("button",{class:"vue-ui-pen-and-paper-action",style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:r[0]||(r[0]=o=>Be("close"))},[t.createVNode(ge.default,{name:"close",stroke:z.color},null,8,["stroke"])],4),t.createElementVNode("button",kt,[t.createVNode(xt.ColorPicker,{value:D.value,"onUpdate:value":r[1]||(r[1]=o=>D.value=o),backgroundColor:z.backgroundColor,buttonBorderColor:H.value},null,8,["value","backgroundColor","buttonBorderColor"])]),t.createElementVNode("button",{class:t.normalizeClass(["vue-ui-pen-and-paper-action",{"vue-ui-pen-and-paper-action-active":m.value==="text"}]),onClick:r[2]||(r[2]=o=>m.value=m.value==="text"?"draw":"text"),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`})},[t.createVNode(ge.default,{name:m.value==="draw"?"annotator":"text",stroke:z.color},null,8,["name","stroke"]),t.createElementVNode("div",{style:t.normalizeStyle({position:"absolute",bottom:"-20px",color:H.value,width:"100%",textAlign:"center",fontSize:"12px"})},t.toDisplayString(t.unref(d.dataLabel)({v:m.value==="draw"?y.value:P.value,s:"px",r:1})),5)],6),t.createElementVNode("button",{class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!L.value.length}),disabled:!L.value.length,style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`,marginTop:"20px"}),onClick:ke},[t.createVNode(ge.default,{name:"restart",stroke:z.color},null,8,["stroke"])],14,Ct),t.createElementVNode("button",{class:t.normalizeClass({"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!V.value.length}),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:Ce},[t.createVNode(ge.default,{name:"restart",stroke:z.color,style:{transform:"scaleX(-1)"}},null,8,["stroke"])],6),t.createElementVNode("button",{class:t.normalizeClass([{"vue-ui-pen-and-paper-action":!0,"vue-ui-pen-and-paper-action-disabled":!L.value.length},"vue-ui-pen-and-paper-action"]),style:t.normalizeStyle({backgroundColor:z.backgroundColor,border:`1px solid ${H.value}`}),onClick:Le},[t.createVNode(ge.default,{name:"trash",stroke:z.color},null,8,["stroke"])],6),m.value==="draw"?t.withDirectives((t.openBlock(),t.createElementBlock("input",{key:0,ref_key:"range",ref:de,type:"range",class:"vertical-range",min:.5,max:12,step:.1,"onUpdate:modelValue":r[3]||(r[3]=o=>y.value=o),style:t.normalizeStyle({accentColor:z.color})},null,4)),[[t.vModelText,y.value]]):t.createCommentVNode("",!0),m.value==="text"?t.withDirectives((t.openBlock(),t.createElementBlock("input",{key:1,ref_key:"range",ref:de,type:"range",class:"vertical-range",min:3,max:48,step:.1,"onUpdate:modelValue":r[4]||(r[4]=o=>P.value=o),style:t.normalizeStyle({accentColor:z.color})},null,4)),[[t.vModelText,P.value]]):t.createCommentVNode("",!0)],6)):t.createCommentVNode("",!0),(t.openBlock(),t.createElementBlock("svg",{"data-mode":m.value,ref_key:"svgElement",ref:R,xmlns:t.unref(d.XMLNS),viewBox:K.value,class:t.normalizeClass({"vue-ui-pen-and-paper":!0,inactive:!z.active}),onMousedown:me,onMousemove:be,onMouseup:ae,onMouseleave:ae,onTouchstart:t.withModifiers(me,["prevent"]),onTouchmove:t.withModifiers(be,["prevent"]),onTouchend:ae},[t.createElementVNode("g",{ref_key:"G",ref:w},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(L.value,o=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:o.id},[o.path&&o.path.replace("M","").split(" ").length===2?(t.openBlock(),t.createElementBlock("circle",{key:0,cx:o.path.replace("M","").split(" ")[0],cy:o.path.replace("M","").split(" ")[1],r:o.strokeWidth/2,fill:o.color},null,8,wt)):o.path?(t.openBlock(),t.createElementBlock("path",{key:1,class:"vue-ui-pen-and-paper-path",d:o.path,stroke:o.color,"stroke-width":o.strokeWidth,fill:"none"},null,8,St)):o.type==="text"?(t.openBlock(),t.createElementBlock("text",{key:2,x:o.x,y:o.y,fill:o.color,"font-size":o.fontSize,"font-family":"sans-serif","dominant-baseline":"hanging",class:"vue-ui-pen-and-paper-text"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.lines,(u,v)=>(t.openBlock(),t.createElementBlock("tspan",{key:v,x:o.x,dy:v===0?"0":o.fontSize*1.2},t.toDisplayString(u.length?u:"​"),9,$t))),128))],8,zt)):t.createCommentVNode("",!0)],64))),128))],512),Z.value?(t.openBlock(),t.createElementBlock("path",{key:0,class:"vue-ui-pen-and-paper-path vue-ui-pen-and-paper-path-drawing",d:l(N.value),stroke:D.value,"stroke-width":y.value*1.1,fill:"none"},null,8,Tt)):t.createCommentVNode("",!0)],42,Lt))],64))}},Bt=We._export_sfc(Et,[["__scopeId","data-v-14478ba4"]]),Mt=["id"],Nt=["onClick"],Pt={key:2,class:"vue-data-ui-watermark"},It=["innerHTML"],At={__name:"vue-ui-xy-canvas",props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}}},emits:["selectLegend"],setup(z,{expose:Ee,emit:U}){const{vue_ui_xy_canvas:Be}=d.useConfig(),L=z,V=t.ref(d.createUid()),K=t.ref(null),D=t.ref(null),y=t.ref(null),m=t.ref(1),w=t.ref(1),q=t.ref(!1),h=t.ref(null),Y=t.ref(""),X=t.ref(null),E=t.ref([]),P=t.ref(1),W=t.ref(!0),G=t.ref(!0),ne=t.ref(null),re=t.ref(0),ue=t.ref(0),J=t.ref(!1),se=t.ref(null),ie=t.ref(null),ce=t.ref(null),H=t.ref(null),ee=t.ref(0),_=t.ref(0),Z=t.ref(0),N=t.ref(null),R=t.computed(()=>!!L.dataset&&L.dataset.length),me=U,be=t.useSlots();t.onMounted(()=>{be["chart-background"]&&console.warn("VueUiXyCanvas does not support the #chart-background slot.")});const l=t.computed({get:()=>ke(),set:e=>e}),{userOptionsVisible:ve,setUserOptionsVisibility:xe,keepUserOptionState:ae}=mt.useUserOptionState({config:l.value}),{svgRef:F}=bt.useChartAccessibility({config:l.value.style.chart.title});function ke(){const e=qe.useNestedProp({userConfig:L.config,defaultConfig:Be});let n={};return e.theme?n={...qe.useNestedProp({userConfig:d.themes.vue_ui_xy_canvas[e.theme]||L.config,defaultConfig:e}),customPalette:d.themePalettes[e.theme]||d.palette}:n=e,L.config&&d.hasDeepProperty(L.config,"style.chart.scale.min")?n.style.chart.scale.min=L.config.style.chart.scale.min:n.style.chart.scale.min=null,L.config&&d.hasDeepProperty(L.config,"style.chart.scale.max")?n.style.chart.scale.max=L.config.style.chart.scale.max:n.style.chart.scale.max=null,L.config&&d.hasDeepProperty(L.config,"style.chart.zoom.startIndex")?n.style.chart.zoom.startIndex=L.config.style.chart.zoom.startIndex:n.style.chart.zoom.startIndex=null,L.config&&d.hasDeepProperty(L.config,"style.chart.zoom.endIndex")?n.style.chart.zoom.endIndex=L.config.style.chart.zoom.endIndex:n.style.chart.zoom.endIndex=null,n}t.watch(()=>L.config,e=>{l.value=ke(),ve.value=!l.value.userOptions.showOnChartHover,Me(),ee.value+=1,_.value+=1,Z.value+=1,o.value.showTable=l.value.table.show,o.value.showDataLabels=l.value.style.chart.dataLabels.show,o.value.stacked=l.value.style.chart.stacked,o.value.showTooltip=l.value.style.chart.tooltip.show},{deep:!0}),t.watch(()=>L.dataset,()=>{Me(),ee.value+=1,_.value+=1,Z.value+=1},{deep:!0});const Ce=t.ref(l.value.style.chart.aspectRatio),{isPrinting:Le,isImaging:de,generatePdf:i,generateImage:r}=Ue.usePrinter({elementId:`xy_canvas_${V.value}`,fileName:l.value.style.chart.title.text||"vue-ui-xy-canvas",options:l.value.userOptions.print}),o=t.ref({showTable:l.value.table.show,showDataLabels:l.value.style.chart.dataLabels.show,stacked:l.value.style.chart.stacked,showTooltip:l.value.style.chart.tooltip.show});function u(e){J.value=e,ue.value+=1}const v=t.computed(()=>d.convertCustomPalette(l.value.customPalette)),f=t.computed(()=>$.value?Math.max(...$.value.filter((e,n)=>!E.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0),a=t.computed(()=>{const e=m.value-m.value*(l.value.style.chart.paddingProportions.left+l.value.style.chart.paddingProportions.right);return{canvasWidth:m.value,canvasHeight:w.value,left:m.value*l.value.style.chart.paddingProportions.left,top:w.value*l.value.style.chart.paddingProportions.top,right:m.value-m.value*l.value.style.chart.paddingProportions.right,bottom:w.value-w.value*l.value.style.chart.paddingProportions.bottom,width:e,height:w.value-w.value*(l.value.style.chart.paddingProportions.top+l.value.style.chart.paddingProportions.bottom),slot:e/(c.value.end-c.value.start)}});function T(e,n){return e/n}function B({hasAutoScale:e,series:n,min:s,max:b,scale:C,yOffset:A,individualHeight:k,stackIndex:S=null}){return n.map((te,O)=>{const Q=C.min<0?Math.abs(C.min):0,le=T(te+Q,Q+C.max);let ye,pe;e&&(ye=C.min,pe=T(te-ye,C.max-ye));let j=0;return S===null?j=a.value.bottom-a.value.height*(e?pe:le):j=a.value.bottom-A-k*(e?pe:le),{x:a.value.left+a.value.slot*O+a.value.slot/2,y:j,value:te}})}const p=t.computed(()=>{const e=l.value.style.chart.scale.min!==null?l.value.style.chart.scale.min:Math.min(...$.value.filter((k,S)=>!E.value.includes(k.absoluteIndex)).flatMap(k=>k.series.slice(c.value.start,c.value.end))),n=l.value.style.chart.scale.max!==null?l.value.style.chart.scale.max:Math.max(...$.value.filter((k,S)=>!E.value.includes(k.absoluteIndex)).flatMap(k=>k.series.slice(c.value.start,c.value.end))),s=d.calculateNiceScale(e<0?e:0,n===e?e+1<0?0:e+1:n<0?0:n,l.value.style.chart.scale.ticks),b=s.min<0?Math.abs(s.min):0,C=a.value.bottom-a.value.height*(b/(s.max+b)),A=s.ticks.map(k=>({y:a.value.bottom-a.value.height*((k+b)/(s.max+b)),x:a.value.left-8,value:k}));return{absoluteMin:b,max:n,min:e,scale:s,yLabels:A,zero:C}}),M=t.computed(()=>g.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}"/>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vue-data-ui",
3
3
  "private": false,
4
- "version": "2.9.2",
4
+ "version": "2.9.4",
5
5
  "type": "module",
6
6
  "description": "A user-empowering data visualization Vue 3 components library for eloquent data storytelling",
7
7
  "keywords": [