vue-data-ui 2.3.84 → 2.3.86

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 (180) hide show
  1. package/dist/{Arrow-CQ1ubni5.js → Arrow-CJ7hmWgf.js} +1 -1
  2. package/dist/{Arrow-Uk_vwKtL.cjs → Arrow-CebZn6E4.cjs} +1 -1
  3. package/dist/{BaseIcon-B9ZZ6wkT.js → BaseIcon-B9istAKo.js} +1 -1
  4. package/dist/{BaseIcon-CF1HQdM0.cjs → BaseIcon-DnG75_Ol.cjs} +1 -1
  5. package/dist/{DataTable-CEtr89Og.cjs → DataTable-BA_BCbHC.cjs} +1 -1
  6. package/dist/{DataTable-C-iU_7h7.js → DataTable-tSDSY14n.js} +2 -2
  7. package/dist/{Legend-D2ZBCCXe.cjs → Legend-BOY57qwA.cjs} +1 -1
  8. package/dist/{Legend-pU_BwhaW.js → Legend-D3hovFqM.js} +1 -1
  9. package/dist/{Shape-BO_KyCq8.cjs → Shape-D6jrLLku.cjs} +1 -1
  10. package/dist/{Shape-CyM44biU.js → Shape-XiTBfhJM.js} +1 -1
  11. package/dist/{Slicer-CZobytqL.js → Slicer-BMvzmCKt.js} +2 -2
  12. package/dist/{Slicer-BAMZ4wsl.cjs → Slicer-sZ-DArc4.cjs} +1 -1
  13. package/dist/{Title-B1_d29Eh.cjs → Title-Ahj4TYHa.cjs} +1 -1
  14. package/dist/{Title-Bk3h09h9.js → Title-DJ2FNrSN.js} +1 -1
  15. package/dist/{Tooltip-CdB80DsD.js → Tooltip-CQpXRqRC.js} +1 -1
  16. package/dist/{Tooltip-BU4cSEF0.cjs → Tooltip-XhevgJmm.cjs} +1 -1
  17. package/dist/index-CVgBMJU6.cjs +4 -0
  18. package/dist/{index-DI4DaxVG.js → index-D2epy0rJ.js} +4 -1
  19. package/dist/style.css +1 -1
  20. package/dist/types/vue-data-ui.d.cts +3 -0
  21. package/dist/types/vue-data-ui.d.ts +3 -0
  22. package/dist/{useNestedProp-BdsfyHWU.cjs → useNestedProp-B-NmF2LO.cjs} +1 -1
  23. package/dist/{useNestedProp-COsQo-tX.js → useNestedProp-C_ZrJBd9.js} +1 -1
  24. package/dist/usePrinter-B6qtXaHk.js +527 -0
  25. package/dist/usePrinter-DN-6Hoh5.cjs +1 -0
  26. package/dist/{vue-data-ui-kGaLyV0o.cjs → vue-data-ui-DlNasA0G.cjs} +1 -1
  27. package/dist/{vue-data-ui-9nofTL7J.js → vue-data-ui-vegY0BJm.js} +57 -57
  28. package/dist/vue-data-ui.cjs +1 -1
  29. package/dist/vue-data-ui.js +1 -1
  30. package/dist/vue-ui-3d-bar-CqRRjlUU.cjs +19 -0
  31. package/dist/{vue-ui-3d-bar-lKgwKkVj.js → vue-ui-3d-bar-D-0SSMOt.js} +165 -164
  32. package/dist/{vue-ui-accordion-C8ka_Ot0.cjs → vue-ui-accordion-BaV9R6cy.cjs} +1 -1
  33. package/dist/{vue-ui-accordion-DsN9lxvc.js → vue-ui-accordion-DzTB2FL0.js} +3 -3
  34. package/dist/vue-ui-age-pyramid-Bx4BuL3K.cjs +1 -0
  35. package/dist/{vue-ui-age-pyramid-D2lSXDX6.js → vue-ui-age-pyramid-_eo2DGen.js} +68 -67
  36. package/dist/{vue-ui-annotator-DoLG0N5e.js → vue-ui-annotator-8j2dJ0CU.js} +1 -1
  37. package/dist/{vue-ui-annotator-DmfAqbqB.cjs → vue-ui-annotator-CDZtr6tp.cjs} +1 -1
  38. package/dist/{vue-ui-candlestick-vhHV9d6O.js → vue-ui-candlestick-CsF7OSvJ.js} +83 -82
  39. package/dist/vue-ui-candlestick-NypxP0Uu.cjs +2 -0
  40. package/dist/{vue-ui-carousel-table-BmyArloA.js → vue-ui-carousel-table-CMHd2i-6.js} +7 -7
  41. package/dist/{vue-ui-carousel-table-DaQV2SlJ.cjs → vue-ui-carousel-table-CV0eVeRd.cjs} +1 -1
  42. package/dist/{vue-ui-chestnut-DvNW2Y0z.cjs → vue-ui-chestnut-B9miwyAN.cjs} +2 -2
  43. package/dist/{vue-ui-chestnut-DgbbDtL0.js → vue-ui-chestnut-CVftKftk.js} +11 -10
  44. package/dist/{vue-ui-cursor-zXDNHCZv.cjs → vue-ui-cursor-Bsrt107X.cjs} +1 -1
  45. package/dist/{vue-ui-cursor-7-jKCnOY.js → vue-ui-cursor-wujy8n_T.js} +2 -2
  46. package/dist/{vue-ui-dashboard-DMossMh1.cjs → vue-ui-dashboard-BCN0BhjL.cjs} +1 -1
  47. package/dist/{vue-ui-dashboard-B_pnIQ5P.js → vue-ui-dashboard-Cvy0gI52.js} +2 -2
  48. package/dist/{vue-ui-digits-BL8Vyod-.cjs → vue-ui-digits-CnHgzHPI.cjs} +1 -1
  49. package/dist/{vue-ui-digits-C-lpZ-rg.js → vue-ui-digits-J-WrKKHg.js} +2 -2
  50. package/dist/{vue-ui-donut-e-p-l-_7.js → vue-ui-donut-BOhWcHY_.js} +91 -90
  51. package/dist/vue-ui-donut-CZ1iKZq6.cjs +1 -0
  52. package/dist/{vue-ui-donut-evolution-Ol1YS2OF.js → vue-ui-donut-evolution-CSSYuoti.js} +83 -82
  53. package/dist/vue-ui-donut-evolution-DuY2883r.cjs +1 -0
  54. package/dist/{vue-ui-dumbbell-BjTXdj83.js → vue-ui-dumbbell-Cm0Rp_6W.js} +23 -22
  55. package/dist/{vue-ui-dumbbell-CMFNfda1.cjs → vue-ui-dumbbell-i9QcsSVO.cjs} +2 -2
  56. package/dist/{vue-ui-flow-B4mdXrld.js → vue-ui-flow-0m7a1NP7.js} +54 -53
  57. package/dist/vue-ui-flow-DXCBGdQT.cjs +1 -0
  58. package/dist/vue-ui-galaxy-D6GyjAnX.cjs +1 -0
  59. package/dist/{vue-ui-galaxy-Eg1e5SG7.js → vue-ui-galaxy-DCHEdZAl.js} +87 -86
  60. package/dist/{vue-ui-gauge-BTt63SCn.js → vue-ui-gauge-HcM2JJpg.js} +78 -77
  61. package/dist/vue-ui-gauge-wbHQGQro.cjs +1 -0
  62. package/dist/{vue-ui-gizmo-bFlUFJa8.cjs → vue-ui-gizmo-B-zMyi1m.cjs} +1 -1
  63. package/dist/{vue-ui-gizmo-C0aF0qVF.js → vue-ui-gizmo-Bfo_nUnZ.js} +2 -2
  64. package/dist/{vue-ui-heatmap-kiVWYvjC.js → vue-ui-heatmap-CxIHmv0t.js} +170 -169
  65. package/dist/vue-ui-heatmap-Du2vI5Ae.cjs +1 -0
  66. package/dist/{vue-ui-kpi-qw5ofS-z.cjs → vue-ui-kpi-BOe7-M9V.cjs} +1 -1
  67. package/dist/{vue-ui-kpi-DdtZLwfi.js → vue-ui-kpi-DibULfkp.js} +3 -3
  68. package/dist/{vue-ui-mini-loader-B8YrB3X-.cjs → vue-ui-mini-loader-Bv7l-Kx3.cjs} +1 -1
  69. package/dist/{vue-ui-mini-loader-DcL5v-Tv.js → vue-ui-mini-loader-qFRhERid.js} +2 -2
  70. package/dist/{vue-ui-molecule-BpomHzqe.js → vue-ui-molecule-4cIGPnWg.js} +282 -278
  71. package/dist/vue-ui-molecule-eOj3ZjvT.cjs +1 -0
  72. package/dist/{vue-ui-mood-radar-BV9xC9xF.js → vue-ui-mood-radar-BTe21WKk.js} +144 -143
  73. package/dist/vue-ui-mood-radar-tUFqqekd.cjs +1 -0
  74. package/dist/{vue-ui-nested-donuts-D7D20nJu.js → vue-ui-nested-donuts-BVzabOga.js} +65 -64
  75. package/dist/vue-ui-nested-donuts-BigBLrFR.cjs +17 -0
  76. package/dist/{vue-ui-onion-4wR10l5H.js → vue-ui-onion-C3TAKqro.js} +90 -89
  77. package/dist/vue-ui-onion-_ZC3vbIS.cjs +5 -0
  78. package/dist/vue-ui-parallel-coordinate-plot-BiXGkfj7.cjs +8 -0
  79. package/dist/{vue-ui-parallel-coordinate-plot-DA3byJV2.js → vue-ui-parallel-coordinate-plot-CKoCQXqj.js} +40 -39
  80. package/dist/vue-ui-quadrant-B67wGTic.cjs +1 -0
  81. package/dist/{vue-ui-quadrant-D5wvd5h3.js → vue-ui-quadrant-CKnyfJoi.js} +51 -50
  82. package/dist/vue-ui-quick-chart-DEjdx0AB.cjs +15 -0
  83. package/dist/{vue-ui-quick-chart-CTSq5JJE.js → vue-ui-quick-chart-DZDYYnsI.js} +63 -62
  84. package/dist/vue-ui-radar-Cm_QkYGb.cjs +1 -0
  85. package/dist/{vue-ui-radar-OW6awckj.js → vue-ui-radar-v9yayJxu.js} +44 -43
  86. package/dist/{vue-ui-rating-C6gyJWJF.js → vue-ui-rating-Cc_N7qbe.js} +2 -2
  87. package/dist/{vue-ui-rating-3ZVG38br.cjs → vue-ui-rating-DV4cCZbB.cjs} +1 -1
  88. package/dist/{vue-ui-relation-circle-Dr9-ozKG.js → vue-ui-relation-circle-Clqo4kkb.js} +74 -73
  89. package/dist/vue-ui-relation-circle-DcpIVbI6.cjs +1 -0
  90. package/dist/{vue-ui-rings-Ce6tFKrN.js → vue-ui-rings-D27xNq9q.js} +78 -77
  91. package/dist/vue-ui-rings-DTn3t8Ku.cjs +2 -0
  92. package/dist/{vue-ui-scatter-C_3WQPMf.js → vue-ui-scatter-C07Mon-6.js} +53 -52
  93. package/dist/vue-ui-scatter-CXbrqLFm.cjs +1 -0
  94. package/dist/{vue-ui-screenshot-BvE2dsvU.js → vue-ui-screenshot-CsxqbqlJ.js} +1 -1
  95. package/dist/{vue-ui-screenshot-D6N4GbAL.cjs → vue-ui-screenshot-D8TAvQYN.cjs} +1 -1
  96. package/dist/{vue-ui-skeleton-DH4t1hrL.js → vue-ui-skeleton-BLiYyX95.js} +2 -2
  97. package/dist/{vue-ui-skeleton-CkSlhfsB.cjs → vue-ui-skeleton-Br1K3exH.cjs} +1 -1
  98. package/dist/{vue-ui-smiley-C-92SyPZ.js → vue-ui-smiley-BUHatT3Z.js} +2 -2
  99. package/dist/{vue-ui-smiley-CSA28QLT.cjs → vue-ui-smiley-CR_TkSYT.cjs} +1 -1
  100. package/dist/vue-ui-spark-trend-CnUz6s1m.cjs +1 -0
  101. package/dist/{vue-ui-spark-trend-CrElvUcG.js → vue-ui-spark-trend-GY2CfYRt.js} +29 -29
  102. package/dist/vue-ui-sparkbar-DaFwUA6Z.cjs +1 -0
  103. package/dist/{vue-ui-sparkbar-DrbkUcOX.js → vue-ui-sparkbar-tdgek1gv.js} +27 -27
  104. package/dist/{vue-ui-sparkgauge-PSRf_u0V.js → vue-ui-sparkgauge-1zu5KmTA.js} +22 -22
  105. package/dist/vue-ui-sparkgauge-D8P01Hem.cjs +1 -0
  106. package/dist/{vue-ui-sparkhistogram-pZslBri7.js → vue-ui-sparkhistogram-b68QStxA.js} +52 -52
  107. package/dist/vue-ui-sparkhistogram-mg6yuwLH.cjs +1 -0
  108. package/dist/{vue-ui-sparkline-CqgArzCs.cjs → vue-ui-sparkline-CAqav9Gn.cjs} +1 -1
  109. package/dist/{vue-ui-sparkline-BPExupWx.js → vue-ui-sparkline-CMmtp8MK.js} +3 -3
  110. package/dist/{vue-ui-sparkstackbar-i02y9FzO.js → vue-ui-sparkstackbar-Cz8tOM3m.js} +6 -6
  111. package/dist/vue-ui-sparkstackbar-DOrquZvw.cjs +1 -0
  112. package/dist/vue-ui-stackbar-DUa5F_Zl.cjs +6 -0
  113. package/dist/{vue-ui-stackbar-DfXxN_P3.js → vue-ui-stackbar-DeQkP1dj.js} +64 -63
  114. package/dist/vue-ui-strip-plot-KNL9ToYG.cjs +1 -0
  115. package/dist/{vue-ui-strip-plot-BZ-we0b1.js → vue-ui-strip-plot-vqOCzdFV.js} +73 -72
  116. package/dist/{vue-ui-table-Dy26T2oy.cjs → vue-ui-table-BCdHNku5.cjs} +1 -1
  117. package/dist/{vue-ui-table-BqLbMTHt.js → vue-ui-table-DDdVqdHt.js} +1 -1
  118. package/dist/vue-ui-table-heatmap-BJDnZMZN.cjs +1 -0
  119. package/dist/{vue-ui-table-heatmap-KzoqT8nX.js → vue-ui-table-heatmap-DQg_jtYq.js} +27 -26
  120. package/dist/{vue-ui-table-sparkline-BakiSjV4.js → vue-ui-table-sparkline-Bg-VFq7X.js} +25 -24
  121. package/dist/{vue-ui-table-sparkline-BBEsDDnN.cjs → vue-ui-table-sparkline-D8DJxb5J.cjs} +1 -1
  122. package/dist/{vue-ui-thermometer-D7cgRJoy.js → vue-ui-thermometer-CajBbbYc.js} +60 -59
  123. package/dist/vue-ui-thermometer-eYM8DX7u.cjs +1 -0
  124. package/dist/{vue-ui-timer-r4VFny9D.js → vue-ui-timer-D3VRVK-8.js} +4 -4
  125. package/dist/{vue-ui-timer-COLXZ1J1.cjs → vue-ui-timer-RclP4Tql.cjs} +1 -1
  126. package/dist/{vue-ui-tiremarks-DNQpuz8A.js → vue-ui-tiremarks-BT0k_3xi.js} +93 -92
  127. package/dist/vue-ui-tiremarks-Bc8bBBAw.cjs +1 -0
  128. package/dist/{vue-ui-treemap-CsHaQjwu.cjs → vue-ui-treemap-BjWDt2b2.cjs} +1 -1
  129. package/dist/{vue-ui-treemap-CD5GoXrU.js → vue-ui-treemap-DMhe3zCm.js} +14 -13
  130. package/dist/vue-ui-vertical-bar-DWzafNBH.cjs +4 -0
  131. package/dist/{vue-ui-vertical-bar-DRH98pOw.js → vue-ui-vertical-bar-hH9R9V-K.js} +180 -179
  132. package/dist/vue-ui-waffle-BvYE9hAY.cjs +1 -0
  133. package/dist/{vue-ui-waffle-l9NGD_0B.js → vue-ui-waffle-DnNd6Iba.js} +85 -84
  134. package/dist/{vue-ui-wheel-BpqWo_KY.js → vue-ui-wheel-Bx9_m-7W.js} +72 -71
  135. package/dist/vue-ui-wheel-CVBmY6h7.cjs +1 -0
  136. package/dist/vue-ui-word-cloud-3R-mYkIW.cjs +1 -0
  137. package/dist/{vue-ui-word-cloud-DLaAm8t8.js → vue-ui-word-cloud-DUk0Xt8q.js} +109 -108
  138. package/dist/{vue-ui-xy-Ct-9OxiZ.js → vue-ui-xy-FtaqoNK8.js} +401 -405
  139. package/dist/{vue-ui-xy-canvas-BU3nj2M1.js → vue-ui-xy-canvas-Bp4PTl_E.js} +54 -53
  140. package/dist/{vue-ui-xy-canvas-Bub1qCm9.cjs → vue-ui-xy-canvas-Ctw_3PzN.cjs} +2 -2
  141. package/dist/vue-ui-xy-rX-aml0b.cjs +3 -0
  142. package/package.json +1 -1
  143. package/dist/index-Cx-40Fnz.cjs +0 -4
  144. package/dist/usePrinter-D9bNzUQP.js +0 -513
  145. package/dist/usePrinter-DbhL59iY.cjs +0 -1
  146. package/dist/vue-ui-3d-bar-1aTroDle.cjs +0 -19
  147. package/dist/vue-ui-age-pyramid-D8Tr8jvT.cjs +0 -1
  148. package/dist/vue-ui-candlestick-BAuWAMct.cjs +0 -2
  149. package/dist/vue-ui-donut-evolution-DsdzjA88.cjs +0 -1
  150. package/dist/vue-ui-donut-w1eqaTu0.cjs +0 -1
  151. package/dist/vue-ui-flow-oBnzNN4s.cjs +0 -1
  152. package/dist/vue-ui-galaxy-DgxKqf6u.cjs +0 -1
  153. package/dist/vue-ui-gauge-B64pcc54.cjs +0 -1
  154. package/dist/vue-ui-heatmap-cjY0mi4a.cjs +0 -1
  155. package/dist/vue-ui-molecule-B8cYtnHq.cjs +0 -1
  156. package/dist/vue-ui-mood-radar-BA2VVPO5.cjs +0 -1
  157. package/dist/vue-ui-nested-donuts-C3CMWjgk.cjs +0 -17
  158. package/dist/vue-ui-onion-CVp0g8MP.cjs +0 -5
  159. package/dist/vue-ui-parallel-coordinate-plot-CmaHQR6-.cjs +0 -8
  160. package/dist/vue-ui-quadrant-B8ffMNIS.cjs +0 -1
  161. package/dist/vue-ui-quick-chart-hnVT9GKL.cjs +0 -15
  162. package/dist/vue-ui-radar-ySl7KzoX.cjs +0 -1
  163. package/dist/vue-ui-relation-circle-CMW26dvv.cjs +0 -1
  164. package/dist/vue-ui-rings-CR1t6iss.cjs +0 -2
  165. package/dist/vue-ui-scatter-CKtgbptk.cjs +0 -1
  166. package/dist/vue-ui-spark-trend-D4d4Mr24.cjs +0 -1
  167. package/dist/vue-ui-sparkbar-DDqy0UBm.cjs +0 -1
  168. package/dist/vue-ui-sparkgauge-D6cG2rb8.cjs +0 -1
  169. package/dist/vue-ui-sparkhistogram-B9sVdLfh.cjs +0 -1
  170. package/dist/vue-ui-sparkstackbar-BbGJ75_9.cjs +0 -1
  171. package/dist/vue-ui-stackbar-CRbcnnwn.cjs +0 -6
  172. package/dist/vue-ui-strip-plot-oZBXDxc-.cjs +0 -1
  173. package/dist/vue-ui-table-heatmap-BnwiB4id.cjs +0 -1
  174. package/dist/vue-ui-thermometer-E0mrvP4G.cjs +0 -1
  175. package/dist/vue-ui-tiremarks-C15sglnJ.cjs +0 -1
  176. package/dist/vue-ui-vertical-bar-DucujxOR.cjs +0 -4
  177. package/dist/vue-ui-waffle-DhroAZB3.cjs +0 -1
  178. package/dist/vue-ui-wheel-Bd87HcGT.cjs +0 -1
  179. package/dist/vue-ui-word-cloud-D5JLdr9g.cjs +0 -1
  180. package/dist/vue-ui-xy-BHzOpYm9.cjs +0 -3
@@ -50,6 +50,7 @@ declare module 'vue-data-ui' {
50
50
 
51
51
  export type ChartUserOptions = {
52
52
  show?: boolean;
53
+ position?: 'left' | 'right';
53
54
  buttons?: {
54
55
  tooltip?: boolean;
55
56
  pdf?: boolean;
@@ -968,6 +969,7 @@ declare module 'vue-data-ui' {
968
969
  rounded?: boolean;
969
970
  inactiveColor?: string;
970
971
  activeColor?: string;
972
+ sizeRatio?: number;
971
973
  gradient?: {
972
974
  show?: boolean;
973
975
  shiftHueIntensity?: number;
@@ -4400,6 +4402,7 @@ declare module 'vue-data-ui' {
4400
4402
  zoomFontSize?: number;
4401
4403
  zoomUseResetSlot?: boolean;
4402
4404
  zoomMinimap?: ZoomMinimap;
4405
+ userOptionsPosition?: 'right' | 'left';
4403
4406
  userOptionsButtons?: {
4404
4407
  tooltip?: boolean;
4405
4408
  pdf?: boolean;
@@ -50,6 +50,7 @@ declare module 'vue-data-ui' {
50
50
 
51
51
  export type ChartUserOptions = {
52
52
  show?: boolean;
53
+ position?: 'left' | 'right';
53
54
  buttons?: {
54
55
  tooltip?: boolean;
55
56
  pdf?: boolean;
@@ -968,6 +969,7 @@ declare module 'vue-data-ui' {
968
969
  rounded?: boolean;
969
970
  inactiveColor?: string;
970
971
  activeColor?: string;
972
+ sizeRatio?: number;
971
973
  gradient?: {
972
974
  show?: boolean;
973
975
  shiftHueIntensity?: number;
@@ -4400,6 +4402,7 @@ declare module 'vue-data-ui' {
4400
4402
  zoomFontSize?: number;
4401
4403
  zoomUseResetSlot?: boolean;
4402
4404
  zoomMinimap?: ZoomMinimap;
4405
+ userOptionsPosition?: 'right' | 'left';
4403
4406
  userOptionsButtons?: {
4404
4407
  tooltip?: boolean;
4405
4408
  pdf?: boolean;
@@ -1 +1 @@
1
- "use strict";const r=require("./index-Cx-40Fnz.cjs");function o({defaultConfig:e,userConfig:t}){if(!Object.keys(t||{}).length)return e;const n=r.treeShake({defaultConfig:e,userConfig:t});return r.convertConfigColors(n)}exports.useNestedProp=o;
1
+ "use strict";const r=require("./index-CVgBMJU6.cjs");function o({defaultConfig:e,userConfig:t}){if(!Object.keys(t||{}).length)return e;const n=r.treeShake({defaultConfig:e,userConfig:t});return r.convertConfigColors(n)}exports.useNestedProp=o;
@@ -1,4 +1,4 @@
1
- import { A as o, B as n } from "./index-DI4DaxVG.js";
1
+ import { A as o, B as n } from "./index-D2epy0rJ.js";
2
2
  function c({ defaultConfig: e, userConfig: r }) {
3
3
  if (!Object.keys(r || {}).length)
4
4
  return e;
@@ -0,0 +1,527 @@
1
+ import { ref as d, onMounted as q, onBeforeUnmount as H, withDirectives as R, openBlock as t, createElementBlock as i, normalizeStyle as g, createElementVNode as w, withModifiers as G, withKeys as J, createVNode as Q, normalizeClass as c, renderSlot as m, Fragment as T, createBlock as v, toDisplayString as $, createCommentVNode as s, normalizeProps as z, mergeProps as D, unref as Y } from "vue";
2
+ import f from "./BaseIcon-B9istAKo.js";
3
+ import { _ as Z } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
+ import { p } from "./pdf-97UbtKC2.js";
5
+ import _ from "./html2canvas.esm-d2sM-0Wm.js";
6
+ const ee = {
7
+ beforeMount(e, r) {
8
+ e.clickOutsideEvent = function(a) {
9
+ e === a.target || e.contains(a.target) || r.value(a);
10
+ }, document.addEventListener("click", e.clickOutsideEvent);
11
+ },
12
+ unmounted(e) {
13
+ document.removeEventListener("click", e.clickOutsideEvent);
14
+ }
15
+ }, te = ["title", "onClick", "onKeypress"], oe = ["data-open"], ne = {
16
+ __name: "UserOptions",
17
+ props: {
18
+ hasPdf: {
19
+ type: Boolean,
20
+ default: !0
21
+ },
22
+ hasXls: {
23
+ type: Boolean,
24
+ default: !0
25
+ },
26
+ hasImg: {
27
+ type: Boolean,
28
+ default: !1
29
+ },
30
+ hasLabel: {
31
+ type: Boolean,
32
+ default: !1
33
+ },
34
+ isLabelActive: {
35
+ type: Boolean,
36
+ default: !1
37
+ },
38
+ hasTable: {
39
+ type: Boolean,
40
+ default: !1
41
+ },
42
+ hasSort: {
43
+ type: Boolean,
44
+ default: !1
45
+ },
46
+ hasStack: {
47
+ type: Boolean,
48
+ default: !1
49
+ },
50
+ hasTooltip: {
51
+ type: Boolean,
52
+ default: !1
53
+ },
54
+ color: {
55
+ type: String
56
+ },
57
+ backgroundColor: {
58
+ type: String
59
+ },
60
+ isPrinting: {
61
+ type: Boolean,
62
+ default: !1
63
+ },
64
+ isImaging: {
65
+ type: Boolean,
66
+ default: !1
67
+ },
68
+ title: {
69
+ type: String
70
+ },
71
+ uid: {
72
+ type: String
73
+ },
74
+ hasFullscreen: {
75
+ type: Boolean,
76
+ default: !1
77
+ },
78
+ chartElement: {
79
+ type: HTMLElement,
80
+ default: null
81
+ },
82
+ isFullscreen: {
83
+ type: Boolean,
84
+ default: !1
85
+ },
86
+ isStacked: {
87
+ type: Boolean,
88
+ default: !1
89
+ },
90
+ isTooltip: {
91
+ type: Boolean,
92
+ default: !1
93
+ },
94
+ hasAnimation: {
95
+ type: Boolean,
96
+ default: !1
97
+ },
98
+ isAnimation: {
99
+ type: Boolean,
100
+ default: !1
101
+ },
102
+ titles: {
103
+ type: Object,
104
+ default() {
105
+ return {};
106
+ }
107
+ },
108
+ showTooltips: {
109
+ type: Boolean,
110
+ default: !0
111
+ },
112
+ zIndex: {
113
+ type: Number,
114
+ default: 1
115
+ },
116
+ noOffset: {
117
+ type: Boolean,
118
+ default: !0
119
+ },
120
+ position: {
121
+ type: String,
122
+ default: "right"
123
+ }
124
+ },
125
+ emits: ["generatePdf", "generateCsv", "generateImage", "toggleTable", "toggleLabels", "toggleSort", "toggleFullscreen", "toggleStack", "toggleTooltip", "toggleAnimation"],
126
+ setup(e, { emit: r }) {
127
+ const a = e;
128
+ function B() {
129
+ r("generatePdf");
130
+ }
131
+ function C() {
132
+ r("generateCsv");
133
+ }
134
+ function h() {
135
+ r("generateImage");
136
+ }
137
+ const y = d(!1);
138
+ function U() {
139
+ y.value = !y.value, r("toggleTable");
140
+ }
141
+ const S = d(!1), x = d(!0);
142
+ function F() {
143
+ k.value = window.innerWidth > 600, S.value = !S.value, S.value && (x.value = !1);
144
+ }
145
+ function K() {
146
+ a.isPrinting || a.isImaging || (S.value = !1);
147
+ }
148
+ function N() {
149
+ S.value && K();
150
+ }
151
+ const I = d(a.isLabelActive);
152
+ function V() {
153
+ I.value = !I.value, r("toggleLabels");
154
+ }
155
+ const M = d(a.isAnimation);
156
+ function O() {
157
+ M.value = !M.value, r("toggleAnimation");
158
+ }
159
+ function j() {
160
+ r("toggleSort");
161
+ }
162
+ const E = d(a.isStacked);
163
+ function W() {
164
+ E.value = !E.value, r("toggleStack");
165
+ }
166
+ const L = d(a.isTooltip);
167
+ function X() {
168
+ L.value = !L.value, r("toggleTooltip");
169
+ }
170
+ const b = d(!1);
171
+ function P(l) {
172
+ a.chartElement && (l === "in" ? (b.value = !0, a.chartElement.requestFullscreen(), r("toggleFullscreen", !0)) : (b.value = !1, document && document.exitFullscreen(), r("toggleFullscreen", !1)));
173
+ }
174
+ function A(l) {
175
+ document.fullscreenElement ? b.value = !0 : b.value = !1;
176
+ }
177
+ q(() => {
178
+ document.addEventListener("fullscreenchange", A);
179
+ }), H(() => {
180
+ document.removeEventListener("fullscreenchange", A);
181
+ });
182
+ const k = d(window.innerWidth > 600), n = d({
183
+ tooltip: !1,
184
+ pdf: !1,
185
+ csv: !1,
186
+ img: !1,
187
+ table: !1,
188
+ labels: !1,
189
+ sort: !1,
190
+ stack: !1,
191
+ fullscreen: !1,
192
+ animation: !1
193
+ });
194
+ return (l, o) => R((t(), i("div", {
195
+ "data-html2canvas-ignore": "",
196
+ class: "vue-ui-user-options",
197
+ style: g(`z-index: ${e.zIndex}; height: 34px; position: ${b.value ? "fixed" : "absolute"}; top: 0; ${e.position === "right" ? `right:${b.value ? "12px" : "0"}` : `left:${b.value ? "12px" : "0"}`}; padding: 4px; background:transparent;`)
198
+ }, [
199
+ w("div", {
200
+ tabindex: "0",
201
+ title: S.value ? e.titles.close || "" : e.titles.open || "",
202
+ style: g(`width:32px; position: absolute; top: 0;${e.position === "right" ? `right: ${e.noOffset ? 0 : 4}px` : `left: ${e.noOffset ? 0 : 4}px`}; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; cursor:pointer; background:transparent`),
203
+ onClick: G(F, ["stop"]),
204
+ onKeypress: J(F, ["enter"])
205
+ }, [
206
+ Q(f, {
207
+ name: S.value ? "close" : "menu",
208
+ stroke: e.color,
209
+ "stroke-width": 2
210
+ }, null, 8, ["name", "stroke"])
211
+ ], 44, te),
212
+ w("div", {
213
+ "data-open": S.value,
214
+ class: c({ "vue-ui-user-options-drawer": !0 }),
215
+ style: g(`background:${e.backgroundColor}; ${e.position === "right" ? `right: ${e.noOffset ? 0 : 4}px` : `left: ${e.noOffset ? 0 : 4}px`}`)
216
+ }, [
217
+ e.hasTooltip ? (t(), i("button", {
218
+ key: 0,
219
+ tabindex: "0",
220
+ class: "vue-ui-user-options-button",
221
+ onClick: X,
222
+ onMouseenter: o[0] || (o[0] = (u) => n.value.tooltip = !0),
223
+ onMouseout: o[1] || (o[1] = (u) => n.value.tooltip = !1)
224
+ }, [
225
+ l.$slots.optionTooltip ? m(l.$slots, "optionTooltip", { key: 0 }, void 0, !0) : (t(), i(T, { key: 1 }, [
226
+ L.value ? (t(), v(f, {
227
+ key: 0,
228
+ name: "tooltip",
229
+ stroke: e.color,
230
+ style: { "pointer-events": "none" }
231
+ }, null, 8, ["stroke"])) : (t(), v(f, {
232
+ key: 1,
233
+ name: "tooltipDisabled",
234
+ stroke: e.color,
235
+ style: { "pointer-events": "none" }
236
+ }, null, 8, ["stroke"]))
237
+ ], 64)),
238
+ k.value && e.titles.tooltip && !l.$slots.optionTooltip ? (t(), i("div", {
239
+ key: 2,
240
+ dir: "auto",
241
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-left-visible": e.position === "left" && n.value.tooltip, "button-info-right-visible": e.position === "right" && n.value.tooltip }),
242
+ style: g({ background: e.backgroundColor, color: e.color })
243
+ }, $(e.titles.tooltip), 7)) : s("", !0)
244
+ ], 32)) : s("", !0),
245
+ e.hasPdf ? (t(), i("button", {
246
+ key: 1,
247
+ tabindex: "0",
248
+ class: "vue-ui-user-options-button",
249
+ onClick: B,
250
+ onMouseenter: o[2] || (o[2] = (u) => n.value.pdf = !0),
251
+ onMouseout: o[3] || (o[3] = (u) => n.value.pdf = !1)
252
+ }, [
253
+ l.$slots.optionPdf ? m(l.$slots, "optionPdf", { key: 0 }, void 0, !0) : (t(), i(T, { key: 1 }, [
254
+ e.isPrinting ? (t(), v(f, {
255
+ key: 0,
256
+ name: "spin",
257
+ isSpin: "",
258
+ stroke: e.color,
259
+ style: { "pointer-events": "none" }
260
+ }, null, 8, ["stroke"])) : (t(), v(f, {
261
+ key: 1,
262
+ name: "pdf",
263
+ stroke: e.color,
264
+ style: { "pointer-events": "none" }
265
+ }, null, 8, ["stroke"]))
266
+ ], 64)),
267
+ k.value && e.titles.pdf && !l.$slots.optionPdf ? (t(), i("div", {
268
+ key: 2,
269
+ dir: "auto",
270
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.pdf, "button-info-left-visible": e.position === "left" && n.value.pdf }),
271
+ style: g({ background: e.backgroundColor, color: e.color })
272
+ }, $(e.titles.pdf), 7)) : s("", !0)
273
+ ], 32)) : s("", !0),
274
+ e.hasXls ? (t(), i("button", {
275
+ key: 2,
276
+ tabindex: "0",
277
+ class: "vue-ui-user-options-button",
278
+ onClick: C,
279
+ onMouseenter: o[4] || (o[4] = (u) => n.value.csv = !0),
280
+ onMouseout: o[5] || (o[5] = (u) => n.value.csv = !1)
281
+ }, [
282
+ l.$slots.optionCsv ? m(l.$slots, "optionCsv", { key: 0 }, void 0, !0) : (t(), v(f, {
283
+ key: 1,
284
+ name: "excel",
285
+ stroke: e.color,
286
+ style: { "pointer-events": "none" }
287
+ }, null, 8, ["stroke"])),
288
+ k.value && e.titles.csv && !l.$slots.optionCsv ? (t(), i("div", {
289
+ key: 2,
290
+ dir: "auto",
291
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.csv, "button-info-left-visible": e.position === "left" && n.value.csv }),
292
+ style: g({ background: e.backgroundColor, color: e.color })
293
+ }, $(e.titles.csv), 7)) : s("", !0)
294
+ ], 32)) : s("", !0),
295
+ e.hasImg ? (t(), i("button", {
296
+ key: 3,
297
+ tabindex: "0",
298
+ class: "vue-ui-user-options-button",
299
+ onClick: h,
300
+ onMouseenter: o[6] || (o[6] = (u) => n.value.img = !0),
301
+ onMouseout: o[7] || (o[7] = (u) => n.value.img = !1)
302
+ }, [
303
+ l.$slots.optionImg ? m(l.$slots, "optionImg", { key: 0 }, void 0, !0) : (t(), i(T, { key: 1 }, [
304
+ e.isImaging ? (t(), v(f, {
305
+ key: 0,
306
+ name: "spin",
307
+ isSpin: "",
308
+ stroke: e.color,
309
+ style: { "pointer-events": "none" }
310
+ }, null, 8, ["stroke"])) : (t(), v(f, {
311
+ key: 1,
312
+ name: "image",
313
+ stroke: e.color,
314
+ style: { "pointer-events": "none" }
315
+ }, null, 8, ["stroke"]))
316
+ ], 64)),
317
+ k.value && e.titles.img && !l.$slots.optionImg ? (t(), i("div", {
318
+ key: 2,
319
+ dir: "auto",
320
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.img, "button-info-left-visible": e.position === "left" && n.value.img }),
321
+ style: g({ background: e.backgroundColor, color: e.color })
322
+ }, $(e.titles.img), 7)) : s("", !0)
323
+ ], 32)) : s("", !0),
324
+ e.hasTable ? (t(), i("button", {
325
+ key: 4,
326
+ tabindex: "0",
327
+ class: "vue-ui-user-options-button",
328
+ onClick: U,
329
+ onMouseenter: o[8] || (o[8] = (u) => n.value.table = !0),
330
+ onMouseout: o[9] || (o[9] = (u) => n.value.table = !1)
331
+ }, [
332
+ l.$slots.optionTable ? m(l.$slots, "optionTable", { key: 0 }, void 0, !0) : (t(), v(f, {
333
+ key: 1,
334
+ name: y.value ? "tableClose" : "tableOpen",
335
+ stroke: e.color,
336
+ style: { "pointer-events": "none" }
337
+ }, null, 8, ["name", "stroke"])),
338
+ k.value && e.titles.table && !l.$slots.optionTable ? (t(), i("div", {
339
+ key: 2,
340
+ dir: "auto",
341
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.table, "button-info-left-visible": e.position === "left" && n.value.table }),
342
+ style: g({ background: e.backgroundColor, color: e.color })
343
+ }, $(e.titles.table), 7)) : s("", !0)
344
+ ], 32)) : s("", !0),
345
+ e.hasLabel ? (t(), i("button", {
346
+ key: 5,
347
+ tabindex: "0",
348
+ class: "vue-ui-user-options-button",
349
+ onClick: V,
350
+ onMouseenter: o[10] || (o[10] = (u) => n.value.labels = !0),
351
+ onMouseout: o[11] || (o[11] = (u) => n.value.labels = !1)
352
+ }, [
353
+ l.$slots.optionLabels ? m(l.$slots, "optionLabels", { key: 0 }, void 0, !0) : (t(), v(f, {
354
+ key: 1,
355
+ name: I.value ? "labelClose" : "labelOpen",
356
+ stroke: e.color,
357
+ style: { "pointer-events": "none" }
358
+ }, null, 8, ["name", "stroke"])),
359
+ k.value && e.titles.labels && !l.$slots.optionLabels ? (t(), i("div", {
360
+ key: 2,
361
+ dir: "auto",
362
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.labels, "button-info-left-visible": e.position === "left" && n.value.labels }),
363
+ style: g({ background: e.backgroundColor, color: e.color })
364
+ }, $(e.titles.labels), 7)) : s("", !0)
365
+ ], 32)) : s("", !0),
366
+ e.hasSort ? (t(), i("button", {
367
+ key: 6,
368
+ tabindex: "0",
369
+ class: "vue-ui-user-options-button",
370
+ onClick: j,
371
+ onMouseenter: o[12] || (o[12] = (u) => n.value.sort = !0),
372
+ onMouseout: o[13] || (o[13] = (u) => n.value.sort = !1)
373
+ }, [
374
+ l.$slots.optionSort ? m(l.$slots, "optionSort", { key: 0 }, void 0, !0) : (t(), v(f, {
375
+ key: 1,
376
+ name: "sort",
377
+ stroke: e.color,
378
+ style: { "pointer-events": "none" }
379
+ }, null, 8, ["stroke"])),
380
+ k.value && e.titles.sort && !l.$slots.optionSort ? (t(), i("div", {
381
+ key: 2,
382
+ dir: "auto",
383
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.sort, "button-info-left-visible": e.position === "left" && n.value.sort }),
384
+ style: g({ background: e.backgroundColor, color: e.color })
385
+ }, $(e.titles.sort), 7)) : s("", !0)
386
+ ], 32)) : s("", !0),
387
+ e.hasStack ? (t(), i("button", {
388
+ key: 7,
389
+ tabindex: "0",
390
+ class: "vue-ui-user-options-button",
391
+ onClick: W,
392
+ onMouseenter: o[14] || (o[14] = (u) => n.value.stack = !0),
393
+ onMouseout: o[15] || (o[15] = (u) => n.value.stack = !1)
394
+ }, [
395
+ l.$slots.optionStack ? m(l.$slots, "optionStack", { key: 0 }, void 0, !0) : (t(), i(T, { key: 1 }, [
396
+ E.value ? (t(), v(f, {
397
+ key: 0,
398
+ name: "unstack",
399
+ stroke: e.color,
400
+ style: { "pointer-events": "none" }
401
+ }, null, 8, ["stroke"])) : (t(), v(f, {
402
+ key: 1,
403
+ name: "stack",
404
+ stroke: e.color,
405
+ style: { "pointer-events": "none" }
406
+ }, null, 8, ["stroke"]))
407
+ ], 64)),
408
+ k.value && e.titles.stack && !l.$slots.optionStack ? (t(), i("div", {
409
+ key: 2,
410
+ dir: "auto",
411
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.stack, "button-info-left-visible": e.position === "left" && n.value.stack }),
412
+ style: g({ background: e.backgroundColor, color: e.color })
413
+ }, $(e.titles.stack), 7)) : s("", !0)
414
+ ], 32)) : s("", !0),
415
+ e.hasFullscreen ? (t(), i("button", {
416
+ key: 8,
417
+ tabindex: "0",
418
+ class: "vue-ui-user-options-button",
419
+ onMouseenter: o[16] || (o[16] = (u) => n.value.fullscreen = !0),
420
+ onMouseout: o[17] || (o[17] = (u) => n.value.fullscreen = !1),
421
+ onClick: o[18] || (o[18] = (u) => P(b.value ? "out" : "in"))
422
+ }, [
423
+ l.$slots.optionFullscreen ? m(l.$slots, "optionFullscreen", z(D({ key: 0 }, { toggleFullscreen: P, isFullscreen: b.value })), void 0, !0) : (t(), i(T, { key: 1 }, [
424
+ b.value ? (t(), v(f, {
425
+ key: 0,
426
+ name: "exitFullscreen",
427
+ stroke: e.color,
428
+ style: { "pointer-events": "none" }
429
+ }, null, 8, ["stroke"])) : s("", !0),
430
+ b.value ? s("", !0) : (t(), v(f, {
431
+ key: 1,
432
+ name: "fullscreen",
433
+ stroke: e.color,
434
+ style: { "pointer-events": "none" }
435
+ }, null, 8, ["stroke"]))
436
+ ], 64)),
437
+ k.value && e.titles.fullscreen && !l.$slots.optionFullscreen ? (t(), i("div", {
438
+ key: 2,
439
+ dir: "auto",
440
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.fullscreen, "button-info-left-visible": e.position === "left" && n.value.fullscreen }),
441
+ style: g({ background: e.backgroundColor, color: e.color })
442
+ }, $(e.titles.fullscreen), 7)) : s("", !0)
443
+ ], 32)) : s("", !0),
444
+ e.hasAnimation ? (t(), i("button", {
445
+ key: 9,
446
+ tabindex: "0",
447
+ class: "vue-ui-user-options-button",
448
+ onMouseenter: o[19] || (o[19] = (u) => n.value.animation = !0),
449
+ onMouseout: o[20] || (o[20] = (u) => n.value.animation = !1),
450
+ onClick: O
451
+ }, [
452
+ l.$slots.optionAnimation ? m(l.$slots, "optionAnimation", z(D({ key: 0 }, { toggleAnimation: O, isAnimated: M.value })), void 0, !0) : (t(), i(T, { key: 1 }, [
453
+ M.value ? (t(), v(f, {
454
+ key: 0,
455
+ name: "play",
456
+ stroke: e.color,
457
+ style: { "pointer-events": "none" }
458
+ }, null, 8, ["stroke"])) : s("", !0),
459
+ M.value ? s("", !0) : (t(), v(f, {
460
+ key: 1,
461
+ name: "pause",
462
+ stroke: e.color,
463
+ style: { "pointer-events": "none" }
464
+ }, null, 8, ["stroke"]))
465
+ ], 64)),
466
+ k.value && e.titles.fullscreen && !l.$slots.optionAnimation ? (t(), i("div", {
467
+ key: 2,
468
+ dir: "auto",
469
+ class: c({ "button-info-left": e.position === "left", "button-info-right": e.position === "right", "button-info-right-visible": e.position === "right" && n.value.animation, "button-info-left-visible": e.position === "left" && n.value.animation }),
470
+ style: g({ background: e.backgroundColor, color: e.color })
471
+ }, $(e.titles.animation), 7)) : s("", !0)
472
+ ], 32)) : s("", !0)
473
+ ], 12, oe)
474
+ ], 4)), [
475
+ [Y(ee), N]
476
+ ]);
477
+ }
478
+ }, fe = /* @__PURE__ */ Z(ne, [["__scopeId", "data-v-202b6e85"]]);
479
+ function le({ domElement: e, fileName: r, format: a = "png" }) {
480
+ if (e)
481
+ return new Promise((B, C) => {
482
+ const h = document.createElement("a");
483
+ _(e, { scale: 2 }).then((y) => {
484
+ h.href = y.toDataURL(`image/${a}`), h.download = `${r}.${a}`, h.click(), h && h.remove(), B();
485
+ }).catch((y) => {
486
+ console.error("Error generating image:", y), C(y);
487
+ });
488
+ });
489
+ }
490
+ function ve({
491
+ elementId: e,
492
+ fileName: r
493
+ }) {
494
+ const a = d(!1), B = d(!1), C = d(null);
495
+ function h() {
496
+ a.value = !0, clearTimeout(C.value), C.value = setTimeout(() => {
497
+ p({
498
+ domElement: document.getElementById(e),
499
+ fileName: r
500
+ }).finally(() => {
501
+ a.value = !1;
502
+ });
503
+ }, 100);
504
+ }
505
+ function y() {
506
+ B.value = !0, clearTimeout(C.value), C.value = setTimeout(() => {
507
+ le({
508
+ domElement: document.getElementById(e),
509
+ fileName: r,
510
+ format: "png"
511
+ }).finally(() => {
512
+ B.value = !1;
513
+ }, 100);
514
+ });
515
+ }
516
+ return {
517
+ generatePdf: h,
518
+ generateImage: y,
519
+ isPrinting: a,
520
+ isImaging: B
521
+ };
522
+ }
523
+ export {
524
+ fe as U,
525
+ le as s,
526
+ ve as u
527
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("vue"),u=require("./BaseIcon-DnG75_Ol.cjs"),P=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),L=require("./pdf-Cz3729tZ.cjs"),O=require("./html2canvas.esm-BA_v9SIU.cjs"),A={beforeMount(t,s){t.clickOutsideEvent=function(a){t===a.target||t.contains(a.target)||s.value(a)},document.addEventListener("click",t.clickOutsideEvent)},unmounted(t){document.removeEventListener("click",t.clickOutsideEvent)}},w=["title","onClick","onKeypress"],D=["data-open"],q={__name:"UserOptions",props:{hasPdf:{type:Boolean,default:!0},hasXls:{type:Boolean,default:!0},hasImg:{type:Boolean,default:!1},hasLabel:{type:Boolean,default:!1},isLabelActive:{type:Boolean,default:!1},hasTable:{type:Boolean,default:!1},hasSort:{type:Boolean,default:!1},hasStack:{type:Boolean,default:!1},hasTooltip:{type:Boolean,default:!1},color:{type:String},backgroundColor:{type:String},isPrinting:{type:Boolean,default:!1},isImaging:{type:Boolean,default:!1},title:{type:String},uid:{type:String},hasFullscreen:{type:Boolean,default:!1},chartElement:{type:HTMLElement,default:null},isFullscreen:{type:Boolean,default:!1},isStacked:{type:Boolean,default:!1},isTooltip:{type:Boolean,default:!1},hasAnimation:{type:Boolean,default:!1},isAnimation:{type:Boolean,default:!1},titles:{type:Object,default(){return{}}},showTooltips:{type:Boolean,default:!0},zIndex:{type:Number,default:1},noOffset:{type:Boolean,default:!0},position:{type:String,default:"right"}},emits:["generatePdf","generateCsv","generateImage","toggleTable","toggleLabels","toggleSort","toggleFullscreen","toggleStack","toggleTooltip","toggleAnimation"],setup(t,{emit:s}){const a=t;function g(){s("generatePdf")}function d(){s("generateCsv")}function k(){s("generateImage")}const f=e.ref(!1);function p(){f.value=!f.value,s("toggleTable")}const v=e.ref(!1),z=e.ref(!0);function C(){c.value=window.innerWidth>600,v.value=!v.value,v.value&&(z.value=!1)}function V(){a.isPrinting||a.isImaging||(v.value=!1)}function N(){v.value&&V()}const b=e.ref(a.isLabelActive);function T(){b.value=!b.value,s("toggleLabels")}const m=e.ref(a.isAnimation);function $(){m.value=!m.value,s("toggleAnimation")}function I(){s("toggleSort")}const y=e.ref(a.isStacked);function M(){y.value=!y.value,s("toggleStack")}const B=e.ref(a.isTooltip);function F(){B.value=!B.value,s("toggleTooltip")}const r=e.ref(!1);function S(n){a.chartElement&&(n==="in"?(r.value=!0,a.chartElement.requestFullscreen(),s("toggleFullscreen",!0)):(r.value=!1,document&&document.exitFullscreen(),s("toggleFullscreen",!1)))}function h(n){document.fullscreenElement?r.value=!0:r.value=!1}e.onMounted(()=>{document.addEventListener("fullscreenchange",h)}),e.onBeforeUnmount(()=>{document.removeEventListener("fullscreenchange",h)});const c=e.ref(window.innerWidth>600),l=e.ref({tooltip:!1,pdf:!1,csv:!1,img:!1,table:!1,labels:!1,sort:!1,stack:!1,fullscreen:!1,animation:!1});return(n,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{"data-html2canvas-ignore":"",class:"vue-ui-user-options",style:e.normalizeStyle(`z-index: ${t.zIndex}; height: 34px; position: ${r.value?"fixed":"absolute"}; top: 0; ${t.position==="right"?`right:${r.value?"12px":"0"}`:`left:${r.value?"12px":"0"}`}; padding: 4px; background:transparent;`)},[e.createElementVNode("div",{tabindex:"0",title:v.value?t.titles.close||"":t.titles.open||"",style:e.normalizeStyle(`width:32px; position: absolute; top: 0;${t.position==="right"?`right: ${t.noOffset?0:4}px`:`left: ${t.noOffset?0:4}px`}; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; cursor:pointer; background:transparent`),onClick:e.withModifiers(C,["stop"]),onKeypress:e.withKeys(C,["enter"])},[e.createVNode(u.default,{name:v.value?"close":"menu",stroke:t.color,"stroke-width":2},null,8,["name","stroke"])],44,w),e.createElementVNode("div",{"data-open":v.value,class:e.normalizeClass({"vue-ui-user-options-drawer":!0}),style:e.normalizeStyle(`background:${t.backgroundColor}; ${t.position==="right"?`right: ${t.noOffset?0:4}px`:`left: ${t.noOffset?0:4}px`}`)},[t.hasTooltip?(e.openBlock(),e.createElementBlock("button",{key:0,tabindex:"0",class:"vue-ui-user-options-button",onClick:F,onMouseenter:o[0]||(o[0]=i=>l.value.tooltip=!0),onMouseout:o[1]||(o[1]=i=>l.value.tooltip=!1)},[n.$slots.optionTooltip?e.renderSlot(n.$slots,"optionTooltip",{key:0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[B.value?(e.openBlock(),e.createBlock(u.default,{key:0,name:"tooltip",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):(e.openBlock(),e.createBlock(u.default,{key:1,name:"tooltipDisabled",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.tooltip&&!n.$slots.optionTooltip?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-left-visible":t.position==="left"&&l.value.tooltip,"button-info-right-visible":t.position==="right"&&l.value.tooltip}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.tooltip),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasPdf?(e.openBlock(),e.createElementBlock("button",{key:1,tabindex:"0",class:"vue-ui-user-options-button",onClick:g,onMouseenter:o[2]||(o[2]=i=>l.value.pdf=!0),onMouseout:o[3]||(o[3]=i=>l.value.pdf=!1)},[n.$slots.optionPdf?e.renderSlot(n.$slots,"optionPdf",{key:0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.isPrinting?(e.openBlock(),e.createBlock(u.default,{key:0,name:"spin",isSpin:"",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):(e.openBlock(),e.createBlock(u.default,{key:1,name:"pdf",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.pdf&&!n.$slots.optionPdf?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.pdf,"button-info-left-visible":t.position==="left"&&l.value.pdf}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.pdf),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasXls?(e.openBlock(),e.createElementBlock("button",{key:2,tabindex:"0",class:"vue-ui-user-options-button",onClick:d,onMouseenter:o[4]||(o[4]=i=>l.value.csv=!0),onMouseout:o[5]||(o[5]=i=>l.value.csv=!1)},[n.$slots.optionCsv?e.renderSlot(n.$slots,"optionCsv",{key:0},void 0,!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:"excel",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])),c.value&&t.titles.csv&&!n.$slots.optionCsv?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.csv,"button-info-left-visible":t.position==="left"&&l.value.csv}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.csv),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasImg?(e.openBlock(),e.createElementBlock("button",{key:3,tabindex:"0",class:"vue-ui-user-options-button",onClick:k,onMouseenter:o[6]||(o[6]=i=>l.value.img=!0),onMouseout:o[7]||(o[7]=i=>l.value.img=!1)},[n.$slots.optionImg?e.renderSlot(n.$slots,"optionImg",{key:0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.isImaging?(e.openBlock(),e.createBlock(u.default,{key:0,name:"spin",isSpin:"",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):(e.openBlock(),e.createBlock(u.default,{key:1,name:"image",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.img&&!n.$slots.optionImg?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.img,"button-info-left-visible":t.position==="left"&&l.value.img}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.img),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasTable?(e.openBlock(),e.createElementBlock("button",{key:4,tabindex:"0",class:"vue-ui-user-options-button",onClick:p,onMouseenter:o[8]||(o[8]=i=>l.value.table=!0),onMouseout:o[9]||(o[9]=i=>l.value.table=!1)},[n.$slots.optionTable?e.renderSlot(n.$slots,"optionTable",{key:0},void 0,!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:f.value?"tableClose":"tableOpen",stroke:t.color,style:{"pointer-events":"none"}},null,8,["name","stroke"])),c.value&&t.titles.table&&!n.$slots.optionTable?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.table,"button-info-left-visible":t.position==="left"&&l.value.table}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.table),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasLabel?(e.openBlock(),e.createElementBlock("button",{key:5,tabindex:"0",class:"vue-ui-user-options-button",onClick:T,onMouseenter:o[10]||(o[10]=i=>l.value.labels=!0),onMouseout:o[11]||(o[11]=i=>l.value.labels=!1)},[n.$slots.optionLabels?e.renderSlot(n.$slots,"optionLabels",{key:0},void 0,!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:b.value?"labelClose":"labelOpen",stroke:t.color,style:{"pointer-events":"none"}},null,8,["name","stroke"])),c.value&&t.titles.labels&&!n.$slots.optionLabels?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.labels,"button-info-left-visible":t.position==="left"&&l.value.labels}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.labels),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasSort?(e.openBlock(),e.createElementBlock("button",{key:6,tabindex:"0",class:"vue-ui-user-options-button",onClick:I,onMouseenter:o[12]||(o[12]=i=>l.value.sort=!0),onMouseout:o[13]||(o[13]=i=>l.value.sort=!1)},[n.$slots.optionSort?e.renderSlot(n.$slots,"optionSort",{key:0},void 0,!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:"sort",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])),c.value&&t.titles.sort&&!n.$slots.optionSort?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.sort,"button-info-left-visible":t.position==="left"&&l.value.sort}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.sort),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasStack?(e.openBlock(),e.createElementBlock("button",{key:7,tabindex:"0",class:"vue-ui-user-options-button",onClick:M,onMouseenter:o[14]||(o[14]=i=>l.value.stack=!0),onMouseout:o[15]||(o[15]=i=>l.value.stack=!1)},[n.$slots.optionStack?e.renderSlot(n.$slots,"optionStack",{key:0},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[y.value?(e.openBlock(),e.createBlock(u.default,{key:0,name:"unstack",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):(e.openBlock(),e.createBlock(u.default,{key:1,name:"stack",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.stack&&!n.$slots.optionStack?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.stack,"button-info-left-visible":t.position==="left"&&l.value.stack}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.stack),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasFullscreen?(e.openBlock(),e.createElementBlock("button",{key:8,tabindex:"0",class:"vue-ui-user-options-button",onMouseenter:o[16]||(o[16]=i=>l.value.fullscreen=!0),onMouseout:o[17]||(o[17]=i=>l.value.fullscreen=!1),onClick:o[18]||(o[18]=i=>S(r.value?"out":"in"))},[n.$slots.optionFullscreen?e.renderSlot(n.$slots,"optionFullscreen",e.normalizeProps(e.mergeProps({key:0},{toggleFullscreen:S,isFullscreen:r.value})),void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[r.value?(e.openBlock(),e.createBlock(u.default,{key:0,name:"exitFullscreen",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):e.createCommentVNode("",!0),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:"fullscreen",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.fullscreen&&!n.$slots.optionFullscreen?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.fullscreen,"button-info-left-visible":t.position==="left"&&l.value.fullscreen}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.fullscreen),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0),t.hasAnimation?(e.openBlock(),e.createElementBlock("button",{key:9,tabindex:"0",class:"vue-ui-user-options-button",onMouseenter:o[19]||(o[19]=i=>l.value.animation=!0),onMouseout:o[20]||(o[20]=i=>l.value.animation=!1),onClick:$},[n.$slots.optionAnimation?e.renderSlot(n.$slots,"optionAnimation",e.normalizeProps(e.mergeProps({key:0},{toggleAnimation:$,isAnimated:m.value})),void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[m.value?(e.openBlock(),e.createBlock(u.default,{key:0,name:"play",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"])):e.createCommentVNode("",!0),m.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u.default,{key:1,name:"pause",stroke:t.color,style:{"pointer-events":"none"}},null,8,["stroke"]))],64)),c.value&&t.titles.fullscreen&&!n.$slots.optionAnimation?(e.openBlock(),e.createElementBlock("div",{key:2,dir:"auto",class:e.normalizeClass({"button-info-left":t.position==="left","button-info-right":t.position==="right","button-info-right-visible":t.position==="right"&&l.value.animation,"button-info-left-visible":t.position==="left"&&l.value.animation}),style:e.normalizeStyle({background:t.backgroundColor,color:t.color})},e.toDisplayString(t.titles.animation),7)):e.createCommentVNode("",!0)],32)):e.createCommentVNode("",!0)],12,D)],4)),[[e.unref(A),N]])}},U=P._export_sfc(q,[["__scopeId","data-v-202b6e85"]]);function E({domElement:t,fileName:s,format:a="png"}){if(t)return new Promise((g,d)=>{const k=document.createElement("a");O.default(t,{scale:2}).then(f=>{k.href=f.toDataURL(`image/${a}`),k.download=`${s}.${a}`,k.click(),k&&k.remove(),g()}).catch(f=>{console.error("Error generating image:",f),d(f)})})}function x({elementId:t,fileName:s}){const a=e.ref(!1),g=e.ref(!1),d=e.ref(null);function k(){a.value=!0,clearTimeout(d.value),d.value=setTimeout(()=>{L.pdf({domElement:document.getElementById(t),fileName:s}).finally(()=>{a.value=!1})},100)}function f(){g.value=!0,clearTimeout(d.value),d.value=setTimeout(()=>{E({domElement:document.getElementById(t),fileName:s,format:"png"}).finally(()=>{g.value=!1},100)})}return{generatePdf:k,generateImage:f,isPrinting:a,isImaging:g}}exports.UserOptions=U;exports.saveAsImage=E;exports.usePrinter=x;