vue-data-ui 3.22.4 → 3.22.6

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 (196) hide show
  1. package/dist/{Arrow-CgzmXCW_.js → Arrow-Ds4xmpiQ.js} +1 -1
  2. package/dist/{BaseDraggableDialog-DjzNWkiE.js → BaseDraggableDialog-VbypEaAa.js} +2 -2
  3. package/dist/{BaseIcon-xBuW2jjI.js → BaseIcon-DcUvOfxf.js} +1 -1
  4. package/dist/{BaseLegendToggle-C4Usj0LI.js → BaseLegendToggle-DFwIY5bE.js} +1 -1
  5. package/dist/{BaseZoomControls-Cg9o2J-q.js → BaseZoomControls-DwolSINF.js} +2 -2
  6. package/dist/{ColorPicker-Usv7badH.js → ColorPicker-UVDPcrjE.js} +2 -2
  7. package/dist/{DataTable-PidUPOit.js → DataTable-CXfvIulC.js} +2 -2
  8. package/dist/{Legend-DXOzbXb-.js → Legend-D-635Kag.js} +2 -2
  9. package/dist/{NonSvgPenAndPaper-OIs8I25K.js → NonSvgPenAndPaper-pR_1qp3s.js} +29 -29
  10. package/dist/{PackageVersion-Cm-3hwIF.js → PackageVersion-Da7hl-34.js} +1 -1
  11. package/dist/{PenAndPaper-ISUbDKXq.js → PenAndPaper-Bk2-E7V4.js} +18 -18
  12. package/dist/{Shape-BnF9aMPX.js → Shape-BSetplwm.js} +1 -1
  13. package/dist/{Slicer-hEvKOLw3.js → Slicer-ClIGOuoX.js} +2 -2
  14. package/dist/{SlicerPreview-BDI-aCXE.js → SlicerPreview-D1n9AW39.js} +4 -4
  15. package/dist/{SparkTooltip-DaWSTzfA.js → SparkTooltip-CjDAyolg.js} +1 -1
  16. package/dist/{Title-DDEEO-Nr.js → Title-C-p0ilWB.js} +1 -1
  17. package/dist/{Tooltip-BhKov422.js → Tooltip-YabpoXo1.js} +1 -1
  18. package/dist/{UserOptions-BxT1XHzN.js → UserOptions-BO4VFL8O.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-history-plot.js +1 -1
  46. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  47. package/dist/components/vue-ui-icon.js +1 -1
  48. package/dist/components/vue-ui-kpi.js +1 -1
  49. package/dist/components/vue-ui-mini-loader.js +1 -1
  50. package/dist/components/vue-ui-molecule.js +1 -1
  51. package/dist/components/vue-ui-mood-radar.js +1 -1
  52. package/dist/components/vue-ui-nested-donuts.js +1 -1
  53. package/dist/components/vue-ui-onion.js +1 -1
  54. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  55. package/dist/components/vue-ui-quadrant.js +1 -1
  56. package/dist/components/vue-ui-quick-chart.js +1 -1
  57. package/dist/components/vue-ui-radar.js +1 -1
  58. package/dist/components/vue-ui-rating.js +1 -1
  59. package/dist/components/vue-ui-relation-circle.js +1 -1
  60. package/dist/components/vue-ui-ridgeline.js +1 -1
  61. package/dist/components/vue-ui-rings.js +1 -1
  62. package/dist/components/vue-ui-scatter.js +1 -1
  63. package/dist/components/vue-ui-skeleton.js +1 -1
  64. package/dist/components/vue-ui-smiley.js +1 -1
  65. package/dist/components/vue-ui-spark-trend.js +1 -1
  66. package/dist/components/vue-ui-sparkbar.js +1 -1
  67. package/dist/components/vue-ui-sparkgauge.js +1 -1
  68. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  69. package/dist/components/vue-ui-sparkline.js +1 -1
  70. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  71. package/dist/components/vue-ui-stackbar.js +1 -1
  72. package/dist/components/vue-ui-stackline.js +1 -1
  73. package/dist/components/vue-ui-strip-plot.js +1 -1
  74. package/dist/components/vue-ui-table-heatmap.js +1 -1
  75. package/dist/components/vue-ui-table-sparkline.js +1 -1
  76. package/dist/components/vue-ui-table.js +1 -1
  77. package/dist/components/vue-ui-thermometer.js +1 -1
  78. package/dist/components/vue-ui-timer.js +1 -1
  79. package/dist/components/vue-ui-tiremarks.js +1 -1
  80. package/dist/components/vue-ui-treemap.js +1 -1
  81. package/dist/components/vue-ui-vertical-bar.js +1 -1
  82. package/dist/components/vue-ui-waffle.js +1 -1
  83. package/dist/components/vue-ui-wheel.js +1 -1
  84. package/dist/components/vue-ui-word-cloud.js +1 -1
  85. package/dist/components/vue-ui-world.js +1 -1
  86. package/dist/components/vue-ui-xy-canvas.js +1 -1
  87. package/dist/components/vue-ui-xy.js +1 -1
  88. package/dist/{dom-to-png-ZOysoMwu.js → dom-to-png-CVJfsfwL.js} +1 -1
  89. package/dist/exposedLib-CjwriUaG.js +19 -0
  90. package/dist/{img-B29J8tV5.js → img-B_y5qDdm.js} +1 -1
  91. package/dist/{labelUtils-BFcL_t-A.js → labelUtils-CyVwqXSh.js} +1 -1
  92. package/dist/{lib-CuwHGt1j.js → lib-DRBJCmHW.js} +6 -9
  93. package/dist/{package-CRlwXCDr.js → package-DyQ_PQis.js} +1 -1
  94. package/dist/{pdf-ymYt9Lee.js → pdf-CG02qhAH.js} +1 -1
  95. package/dist/{render-common-D6ny-Fwu.js → render-common-CUAlQvAQ.js} +22 -22
  96. package/dist/ssr/vue-ui-donut.js +1 -1
  97. package/dist/ssr/vue-ui-xy.js +1 -1
  98. package/dist/ssr.js +2 -2
  99. package/dist/style.css +1 -1
  100. package/dist/types/vue-data-ui.d.ts +14 -0
  101. package/dist/types/vue-ui-treemap.d.ts +3 -0
  102. package/dist/{useAutoSizeLabelsInsideViewbox-DzAZ-MeY.js → useAutoSizeLabelsInsideViewbox-DPMOys9n.js} +1 -1
  103. package/dist/{useConfig-pVLia3dt.js → useConfig-DYM3f6EI.js} +5 -3
  104. package/dist/{useNestedProp-BjkuFaz1.js → useNestedProp-BEo2N1Db.js} +1 -1
  105. package/dist/{useObjectBindings-C1XuDxFr.js → useObjectBindings-CD31syQb.js} +1 -1
  106. package/dist/{usePrinter-C0wAS8yc.js → usePrinter-CRp5IW3v.js} +2 -2
  107. package/dist/utils.js +10 -10
  108. package/dist/{vue-data-ui-DTWqd0R2.js → vue-data-ui-Bpu4kxlm.js} +68 -68
  109. package/dist/vue-data-ui.js +73 -73
  110. package/dist/vue-ui-3d-bar-BAH0jNtT.js +1757 -0
  111. package/dist/{vue-ui-accordion-B64IJyPU.js → vue-ui-accordion-CfMrbDoq.js} +4 -4
  112. package/dist/vue-ui-age-pyramid-BF5ZuuyI.js +1238 -0
  113. package/dist/{vue-ui-annotator-CU4CdKMm.js → vue-ui-annotator-CG6rhFpy.js} +68 -68
  114. package/dist/{vue-ui-bullet-tlj5_z_z.js → vue-ui-bullet-C_oBS1cr.js} +18 -18
  115. package/dist/{vue-ui-bump-BD0Uq3As.js → vue-ui-bump-BZB1Na8h.js} +243 -243
  116. package/dist/{vue-ui-candlestick-CZxsNGKS.js → vue-ui-candlestick-8d_1xO8X.js} +27 -27
  117. package/dist/{vue-ui-carousel-table-ycbcmBKt.js → vue-ui-carousel-table-BfZNcwmY.js} +43 -43
  118. package/dist/vue-ui-chestnut-Cx8T3NEl.js +2010 -0
  119. package/dist/vue-ui-chord-B-sauvLo.js +1391 -0
  120. package/dist/{vue-ui-circle-pack-BPC6zUis.js → vue-ui-circle-pack-BLh8HnGK.js} +32 -32
  121. package/dist/{vue-ui-cursor-DF_e5k1s.js → vue-ui-cursor-DVsEm_4l.js} +4 -4
  122. package/dist/{vue-ui-dag-BIo4-Oa8.js → vue-ui-dag-Cfi0b9qm.js} +24 -24
  123. package/dist/{vue-ui-dashboard-BEtF6UX2.js → vue-ui-dashboard-F_NZ1xoQ.js} +70 -70
  124. package/dist/{vue-ui-digits-07IxTlNO.js → vue-ui-digits-BfP1kbj3.js} +4 -4
  125. package/dist/vue-ui-donut-BwAyvV3-.js +2410 -0
  126. package/dist/{vue-ui-donut-C5oRCxAO.js → vue-ui-donut-DlVRnVr_.js} +120 -120
  127. package/dist/{vue-ui-donut-evolution-BSeyPC9k.js → vue-ui-donut-evolution-D1k4u6cA.js} +419 -419
  128. package/dist/vue-ui-dumbbell-DgmvPpK2.js +1530 -0
  129. package/dist/{vue-ui-flow-R_dLE1WS.js → vue-ui-flow-D_7Idmmw.js} +84 -84
  130. package/dist/vue-ui-funnel-BYCFV5TD.js +777 -0
  131. package/dist/vue-ui-galaxy-Bjxbg5_B.js +1077 -0
  132. package/dist/{vue-ui-gauge-AbzY-7Gg.js → vue-ui-gauge-Dt0H7DgC.js} +217 -217
  133. package/dist/{vue-ui-geo-DVT9XEC3.js → vue-ui-geo-89DEQb5l.js} +18 -18
  134. package/dist/{vue-ui-gizmo-DJTRXao8.js → vue-ui-gizmo-CQyLK18v.js} +62 -62
  135. package/dist/{vue-ui-heatmap-BCFId15K.js → vue-ui-heatmap-o6MvoxBK.js} +247 -247
  136. package/dist/vue-ui-history-plot-B7zuCfdg.js +1715 -0
  137. package/dist/{vue-ui-horizontal-bar-j3jszojt.js → vue-ui-horizontal-bar-CwB4sc6M.js} +275 -275
  138. package/dist/{vue-ui-kpi-DJjF6tcf.js → vue-ui-kpi-4C-j92D-.js} +4 -4
  139. package/dist/{vue-ui-mini-loader-nOsOsA2V.js → vue-ui-mini-loader-Bj4Wv-i8.js} +3 -3
  140. package/dist/vue-ui-molecule-BDrRmwmm.js +925 -0
  141. package/dist/{vue-ui-mood-radar-DP_4LHfZ.js → vue-ui-mood-radar-B5W35Fvp.js} +30 -30
  142. package/dist/{vue-ui-nested-donuts-DFsLZEqx.js → vue-ui-nested-donuts-wfesrzle.js} +105 -105
  143. package/dist/{vue-ui-onion-CzXx3Rme.js → vue-ui-onion-B8-psLbF.js} +40 -40
  144. package/dist/vue-ui-parallel-coordinate-plot-DBpHCFxa.js +1416 -0
  145. package/dist/vue-ui-quadrant-BzyGOJR2.js +1978 -0
  146. package/dist/{vue-ui-quick-chart-CnIFPFPv.js → vue-ui-quick-chart-so_8PzvS.js} +663 -663
  147. package/dist/{vue-ui-radar-CNwKFbHc.js → vue-ui-radar-5fQ5AAWD.js} +63 -63
  148. package/dist/{vue-ui-rating-CRziryE2.js → vue-ui-rating-CKWHDKOT.js} +34 -34
  149. package/dist/vue-ui-relation-circle-Bd_ONHCz.js +924 -0
  150. package/dist/{vue-ui-ridgeline-Kw50zROq.js → vue-ui-ridgeline-DVbYznRz.js} +102 -102
  151. package/dist/vue-ui-rings-c-yLWFHr.js +1246 -0
  152. package/dist/{vue-ui-scatter-DoL5Kh1Y.js → vue-ui-scatter-QhmE7n1H.js} +87 -87
  153. package/dist/{vue-ui-skeleton-BOHwJSdz.js → vue-ui-skeleton-BkxB6Dik.js} +4 -4
  154. package/dist/{vue-ui-smiley-BTvDy8Fm.js → vue-ui-smiley-C4g0iaF7.js} +10 -10
  155. package/dist/{vue-ui-spark-trend-OgSFIFh0.js → vue-ui-spark-trend-0FELlq4x.js} +98 -98
  156. package/dist/{vue-ui-sparkbar-D8FdqMB_.js → vue-ui-sparkbar-D-i_VLO6.js} +87 -87
  157. package/dist/{vue-ui-sparkgauge-CBpPbVkw.js → vue-ui-sparkgauge-CWw6w_ng.js} +48 -48
  158. package/dist/{vue-ui-sparkhistogram-BQjbLa2k.js → vue-ui-sparkhistogram-DuGpkfma.js} +105 -105
  159. package/dist/{vue-ui-sparkline-BJfh5Lje.js → vue-ui-sparkline-Bi06lHQd.js} +252 -252
  160. package/dist/vue-ui-sparkstackbar-DrKgBUmt.js +662 -0
  161. package/dist/{vue-ui-stackbar-Dqs7_g8D.js → vue-ui-stackbar-DDvuDGQ_.js} +85 -85
  162. package/dist/vue-ui-stackline-C0NHBUaE.js +2416 -0
  163. package/dist/{vue-ui-strip-plot-B7D6Hk8R.js → vue-ui-strip-plot-_6LL45i9.js} +369 -369
  164. package/dist/{vue-ui-table-Bqi9XNvY.js → vue-ui-table-DBlZswRi.js} +26 -26
  165. package/dist/{vue-ui-table-heatmap-D38YSxhJ.js → vue-ui-table-heatmap-3xYIDKcP.js} +6 -6
  166. package/dist/{vue-ui-table-sparkline-0Ffb2jdf.js → vue-ui-table-sparkline-BH5PzEnJ.js} +201 -201
  167. package/dist/{vue-ui-thermometer-Di5PXtEO.js → vue-ui-thermometer-BxMzAqoT.js} +119 -119
  168. package/dist/{vue-ui-timer-9CDcd-gP.js → vue-ui-timer-ONSitYDm.js} +30 -30
  169. package/dist/{vue-ui-tiremarks-BAQ-cCSq.js → vue-ui-tiremarks-DWXM-9nR.js} +15 -15
  170. package/dist/vue-ui-treemap-B03c4RIy.js +1713 -0
  171. package/dist/{vue-ui-waffle-DG2IfACo.js → vue-ui-waffle-afa8HSxz.js} +160 -160
  172. package/dist/{vue-ui-wheel-BfXJFCjv.js → vue-ui-wheel-DRP7X8S2.js} +37 -37
  173. package/dist/{vue-ui-word-cloud-3NJy1z6d.js → vue-ui-word-cloud-AKpMO97a.js} +38 -38
  174. package/dist/{vue-ui-world-vrGT5g1H.js → vue-ui-world-CqS-HhZl.js} +400 -400
  175. package/dist/{vue-ui-xy-Dg0wxSeC.js → vue-ui-xy-Bmd11BxR.js} +656 -656
  176. package/dist/{vue-ui-xy-Cb7u46JN.js → vue-ui-xy-DJ8YKPgs.js} +244 -244
  177. package/dist/{vue-ui-xy-canvas-CjbjJ70r.js → vue-ui-xy-canvas-DO_PDGKf.js} +47 -47
  178. package/package.json +1 -1
  179. package/dist/exposedLib-C2U48XK7.js +0 -19
  180. package/dist/vue-ui-3d-bar-DBpSRV-C.js +0 -1757
  181. package/dist/vue-ui-age-pyramid-e09oK-Fp.js +0 -1238
  182. package/dist/vue-ui-chestnut-CnEsjvh4.js +0 -2010
  183. package/dist/vue-ui-chord-BZhXsZXp.js +0 -1391
  184. package/dist/vue-ui-donut-C4FcvXm3.js +0 -2410
  185. package/dist/vue-ui-dumbbell-Cykw4WYn.js +0 -1530
  186. package/dist/vue-ui-funnel-Ct5xQdak.js +0 -777
  187. package/dist/vue-ui-galaxy-B5BkdIt5.js +0 -1077
  188. package/dist/vue-ui-history-plot-DCeroetw.js +0 -1700
  189. package/dist/vue-ui-molecule-2pfoR63d.js +0 -925
  190. package/dist/vue-ui-parallel-coordinate-plot-BY6dptUG.js +0 -1416
  191. package/dist/vue-ui-quadrant-Br_iZmcw.js +0 -1978
  192. package/dist/vue-ui-relation-circle-BVDIikGi.js +0 -924
  193. package/dist/vue-ui-rings-BDJyoWvT.js +0 -1246
  194. package/dist/vue-ui-sparkstackbar-1WUQrqd7.js +0 -662
  195. package/dist/vue-ui-stackline-IRjugedp.js +0 -2416
  196. package/dist/vue-ui-treemap-CLOlWiDE.js +0 -1587
@@ -0,0 +1,1530 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { Dt as t, It as n, K as r, Q as i, W as a, Wt as o, X as s, h as ee, i as c, lt as te, q as l, t as ne, v as re, w as ie, wt as u } from "./lib-DRBJCmHW.js";
3
+ import { t as ae } from "./useConfig-DYM3f6EI.js";
4
+ import { t as oe } from "./usePrinter-CRp5IW3v.js";
5
+ import { n as se, t as ce } from "./BaseScanner-DZvpgOjM.js";
6
+ import { t as le } from "./useSvgExport-SVIsDot8.js";
7
+ import { t as ue } from "./useNestedProp-BEo2N1Db.js";
8
+ import { t as de } from "./useThemeCheck-C43Tcqmk.js";
9
+ import { t as fe } from "./useTimeLabelCollider-AEcY4Ioe.js";
10
+ import { t as pe } from "./img-B_y5qDdm.js";
11
+ import { n as me } from "./Title-C-p0ilWB.js";
12
+ import { t as he } from "./_plugin-vue_export-helper-B3ysoDQm.js";
13
+ import { c as ge } from "./canvas-lib-BOP_HS11.js";
14
+ import { t as _e } from "./useResponsive-BfnK0KxU.js";
15
+ import { t as ve } from "./A11yDataTable-DdRsVULz.js";
16
+ import { t as ye } from "./useUserOptionState-DK-_1ddE.js";
17
+ import { t as be } from "./useChartAccessibility-DYqac8yF.js";
18
+ import { t as xe } from "./Legend-D-635Kag.js";
19
+ import { t as Se } from "./vue_ui_dumbbell-Bfe_jFyi.js";
20
+ import { Fragment as d, Teleport as Ce, computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createSlots as we, createTextVNode as Te, createVNode as Ee, defineAsyncComponent as _, guardReactiveProps as v, mergeProps as De, nextTick as Oe, normalizeClass as ke, normalizeProps as y, normalizeStyle as b, onBeforeUnmount as Ae, onMounted as je, openBlock as x, ref as S, renderList as C, renderSlot as w, resolveDynamicComponent as Me, shallowRef as Ne, toDisplayString as T, toRefs as Pe, unref as E, vShow as D, watch as Fe, watchEffect as Ie, withCtx as O, withDirectives as k } from "vue";
21
+ //#region src/components/vue-ui-dumbbell.vue
22
+ var Le = /* @__PURE__ */ e({ default: () => Jt }), Re = ["id"], ze = ["id"], Be = ["id"], Ve = { style: { position: "relative" } }, He = [
23
+ "xmlns",
24
+ "viewBox",
25
+ "aria-describedby"
26
+ ], Ue = [
27
+ "x",
28
+ "y",
29
+ "width",
30
+ "height"
31
+ ], We = { key: 1 }, Ge = [
32
+ "x1",
33
+ "x2",
34
+ "y1",
35
+ "y2",
36
+ "stroke",
37
+ "stroke-width",
38
+ "stroke-dasharray"
39
+ ], Ke = { key: 2 }, qe = [
40
+ "x1",
41
+ "x2",
42
+ "y1",
43
+ "y2",
44
+ "stroke",
45
+ "stroke-width",
46
+ "stroke-dasharray"
47
+ ], Je = [
48
+ "x1",
49
+ "x2",
50
+ "y1",
51
+ "y2",
52
+ "stroke",
53
+ "stroke-width",
54
+ "stroke-dasharray"
55
+ ], Ye = [
56
+ "transform",
57
+ "font-size",
58
+ "fill"
59
+ ], Xe = [
60
+ "x",
61
+ "y",
62
+ "font-size",
63
+ "fill",
64
+ "font-weight",
65
+ "onMouseenter",
66
+ "onMouseleave",
67
+ "onClick"
68
+ ], Ze = [
69
+ "x",
70
+ "y",
71
+ "font-size",
72
+ "fill",
73
+ "onMouseenter",
74
+ "onMouseleave",
75
+ "onClick"
76
+ ], Qe = [
77
+ "x",
78
+ "y",
79
+ "font-size",
80
+ "fill"
81
+ ], $e = [
82
+ "transform",
83
+ "font-size",
84
+ "fill",
85
+ "font-weight",
86
+ "text-anchor"
87
+ ], et = [
88
+ "d",
89
+ "stroke",
90
+ "stroke-width",
91
+ "stroke-dasharray"
92
+ ], tt = [
93
+ "d",
94
+ "stroke",
95
+ "stroke-width",
96
+ "stroke-dasharray"
97
+ ], nt = [
98
+ "x",
99
+ "y",
100
+ "height",
101
+ "width",
102
+ "fill"
103
+ ], rt = [
104
+ "transform",
105
+ "fill",
106
+ "font-size"
107
+ ], it = ["id"], at = ["stop-color"], ot = ["stop-color"], st = ["stop-color"], ct = ["id"], lt = ["stop-color"], ut = ["stop-color"], dt = ["stop-color"], ft = ["id"], pt = ["stop-color"], mt = ["stop-color"], ht = ["stop-color"], gt = ["id"], _t = ["stop-color"], vt = ["stop-color"], yt = ["stop-color"], bt = ["id"], xt = ["stop-color"], St = ["stop-color"], Ct = ["stop-color"], wt = ["id"], Tt = ["stop-color"], Et = ["stop-color"], Dt = ["id"], Ot = ["stop-color"], kt = ["stop-color"], At = { key: 0 }, jt = { key: 0 }, Mt = ["d", "fill"], Nt = { key: 1 }, Pt = [
108
+ "x",
109
+ "y",
110
+ "height",
111
+ "width",
112
+ "fill"
113
+ ], Ft = [
114
+ "cx",
115
+ "cy",
116
+ "r",
117
+ "fill",
118
+ "stroke",
119
+ "stroke-width"
120
+ ], It = [
121
+ "cx",
122
+ "cy",
123
+ "r",
124
+ "fill",
125
+ "stroke",
126
+ "stroke-width"
127
+ ], Lt = { key: 7 }, Rt = [
128
+ "x",
129
+ "y",
130
+ "fill",
131
+ "font-size"
132
+ ], zt = { key: 8 }, Bt = [
133
+ "x",
134
+ "y",
135
+ "fill",
136
+ "font-size"
137
+ ], Vt = [
138
+ "x",
139
+ "y",
140
+ "width",
141
+ "height",
142
+ "fill",
143
+ "onMouseenter",
144
+ "onMouseleave",
145
+ "onClick"
146
+ ], Ht = {
147
+ key: 0,
148
+ style: {
149
+ position: "absolute",
150
+ top: "100%",
151
+ left: "0",
152
+ width: "100%"
153
+ },
154
+ "data-dom-to-png-ignore": "",
155
+ "aria-hidden": "true"
156
+ }, Ut = {
157
+ key: 5,
158
+ class: "vue-data-ui-watermark"
159
+ }, Wt = ["id"], Gt = [
160
+ "xmlns",
161
+ "height",
162
+ "width"
163
+ ], Kt = ["fill"], qt = ["innerHTML"], Jt = /*#__PURE__*/ he({
164
+ __name: "vue-ui-dumbbell",
165
+ props: {
166
+ config: {
167
+ type: Object,
168
+ default() {
169
+ return {};
170
+ }
171
+ },
172
+ dataset: {
173
+ type: Array,
174
+ default() {
175
+ return [];
176
+ }
177
+ }
178
+ },
179
+ emits: ["selectDatapoint", "copyAlt"],
180
+ setup(e, { expose: he, emit: Le }) {
181
+ let Jt = _(() => import("./BaseIcon-DcUvOfxf.js").then((e) => e.n)), Yt = _(() => import("./vue-ui-accordion-CfMrbDoq.js").then((e) => e.n)), Xt = _(() => import("./DataTable-CXfvIulC.js")), Zt = _(() => import("./PenAndPaper-Bk2-E7V4.js").then((e) => e.t)), Qt = _(() => import("./UserOptions-BO4VFL8O.js").then((e) => e.n)), $t = _(() => import("./PackageVersion-Da7hl-34.js").then((e) => e.t)), en = _(() => import("./BaseDraggableDialog-VbypEaAa.js").then((e) => e.n)), { vue_ui_dumbbell: tn } = ae(), { isThemeValid: nn, warnInvalidTheme: rn } = de(), A = e, an = Le, on = f({
182
+ get() {
183
+ return !!A.dataset && A.dataset.length;
184
+ },
185
+ set(e) {
186
+ return e;
187
+ }
188
+ }), j = S(a()), sn = S(0), M = S(null), cn = S(null), ln = S(null), un = S(null), dn = S(null), fn = S(0), pn = S(0), mn = S(0), hn = S(!1), gn = S(null), _n = S(null), vn = S(!1), yn = S(!1), bn = S(null), xn = S(null), Sn = S(null), Cn = S(null), N = S(null), P = S(null), F = S(null), wn = S(!1), I = S(!1), L = S(Mn()), R = f(() => L.value.userOptions.useCursorPointer), Tn = f(() => o({
189
+ defaultConfig: {
190
+ userOptions: { show: !1 },
191
+ table: { show: !1 },
192
+ useAnimation: !1,
193
+ style: { chart: {
194
+ backgroundColor: "#99999930",
195
+ padding: {
196
+ top: 12,
197
+ right: 12,
198
+ bottom: 12,
199
+ left: 12
200
+ },
201
+ grid: {
202
+ horizontalGrid: { stroke: "#6A6A6A" },
203
+ verticalGrid: { stroke: "#6A6A6A" }
204
+ },
205
+ labels: {
206
+ axis: {
207
+ yLabel: "",
208
+ xLabel: ""
209
+ },
210
+ xAxisLabels: { show: !1 },
211
+ yAxisLabels: { show: !1 },
212
+ endLabels: { show: !1 },
213
+ startLabels: { show: !1 }
214
+ },
215
+ legend: { backgroundColor: "transparent" },
216
+ plots: {
217
+ endColor: "#969696",
218
+ startColor: "#DBDBDB",
219
+ stroke: "#6A6A6A",
220
+ evaluationColors: { enable: !1 }
221
+ }
222
+ } }
223
+ },
224
+ userConfig: L.value.skeletonConfig ?? {}
225
+ })), { loading: En, FINAL_DATASET: Dn, manualLoading: On } = se({
226
+ ...Pe(A),
227
+ FINAL_CONFIG: L,
228
+ prepareConfig: Mn,
229
+ skeletonDataset: A.config?.skeletonDataset ?? [
230
+ {
231
+ name: "_",
232
+ start: 21,
233
+ end: 34
234
+ },
235
+ {
236
+ name: "_",
237
+ start: 13,
238
+ end: 21
239
+ },
240
+ {
241
+ name: "_",
242
+ start: 8,
243
+ end: 13
244
+ },
245
+ {
246
+ name: "_",
247
+ start: 5,
248
+ end: 8
249
+ },
250
+ {
251
+ name: "_",
252
+ start: 3,
253
+ end: 5
254
+ }
255
+ ],
256
+ skeletonConfig: o({
257
+ defaultConfig: L.value,
258
+ userConfig: Tn.value
259
+ })
260
+ }), { userOptionsVisible: kn, setUserOptionsVisibility: An, keepUserOptionState: jn } = ye({ config: L.value }), { svgRef: z } = be({ config: L.value.style.chart.title });
261
+ function Mn() {
262
+ let e = ue({
263
+ userConfig: A.config,
264
+ defaultConfig: tn
265
+ }), t = e.theme;
266
+ if (!t) return e;
267
+ if (!nn.value(e)) return rn(e), e;
268
+ let n = ue({
269
+ userConfig: Se[t] || A.config,
270
+ defaultConfig: e
271
+ });
272
+ return ue({
273
+ userConfig: A.config,
274
+ defaultConfig: n
275
+ });
276
+ }
277
+ Fe(() => A.config, (e) => {
278
+ En.value || (L.value = Mn()), kn.value = !L.value.userOptions.showOnChartHover, Pn(), fn.value += 1, pn.value += 1, mn.value += 1, G.value = L.value.style.chart.rowHeight, K.value = L.value.style.chart.width, H.value.showTable = L.value.table.show;
279
+ }, { deep: !0 }), Fe(() => Dn.value, (e) => {
280
+ Array.isArray(e) && e.length > 0 && (On.value = !1), Jn(), Yn();
281
+ }, { deep: !0 });
282
+ let B = Ne(null), V = Ne(null);
283
+ je(() => {
284
+ hn.value = !0, Pn();
285
+ });
286
+ let Nn = f(() => !!L.value.debug);
287
+ function Pn() {
288
+ if (t(A.dataset) ? i({
289
+ componentName: "VueUiDumbbell",
290
+ type: "dataset",
291
+ debug: Nn.value
292
+ }) : A.dataset.forEach((e, t) => {
293
+ te({
294
+ datasetObject: e,
295
+ requiredAttributes: [
296
+ "name",
297
+ "start",
298
+ "end"
299
+ ]
300
+ }).forEach((e) => {
301
+ on.value = !1, i({
302
+ componentName: "VueUiDumbbell",
303
+ type: "datasetSerieAttribute",
304
+ property: e,
305
+ index: t,
306
+ debug: Nn.value
307
+ });
308
+ });
309
+ }), L.value.responsive) {
310
+ let e = ge(() => {
311
+ let { width: e, height: t } = _e({
312
+ chart: M.value,
313
+ title: L.value.style.chart.title.text ? cn.value : null,
314
+ legend: L.value.style.chart.legend.show ? ln.value : null,
315
+ source: un.value,
316
+ noTitle: dn.value
317
+ }), n = L.value.style.chart.title.text ? 24 : 0, r = L.value.style.chart.legend.show ? 24 : 0;
318
+ requestAnimationFrame(async () => {
319
+ K.value = Math.max(.1, e), G.value = Math.max(.1, (Math.max(.1, t) - (n + r)) / Dn.value.length), cr();
320
+ });
321
+ });
322
+ B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect()), B.value = new ResizeObserver(e), V.value = M.value.parentNode, B.value.observe(V.value);
323
+ }
324
+ cr();
325
+ }
326
+ Ae(() => {
327
+ X.value != null && (cancelAnimationFrame(X.value), X.value = null), B.value && (V.value && B.value.unobserve(V.value), B.value.disconnect());
328
+ });
329
+ let { isPrinting: Fn, isImaging: In, generatePdf: Ln, generateImage: Rn } = oe({
330
+ elementId: `dumbbell_${j.value}`,
331
+ fileName: L.value.style.chart.title.text || "vue-ui-dumbbell",
332
+ options: L.value.userOptions.print
333
+ }), zn = f(() => L.value.userOptions.show && !L.value.style.chart.title.text), H = S({ showTable: L.value.table.show });
334
+ Fe(L, () => {
335
+ H.value = { showTable: L.value.table.show };
336
+ }, { immediate: !0 });
337
+ let U = f(() => Dn.value.map((e, t) => ({
338
+ ...e,
339
+ start: re(e.start),
340
+ end: re(e.end),
341
+ id: e.id ?? `${String(e.name)}__${String(e.start)}__${String(e.end)}__${a()}`
342
+ }))), Bn = f(() => {
343
+ let e = L.value.style.chart.grid, t = U.value.flatMap((e) => [e.start, e.end]).map((e) => Number(e)).filter((e) => Number.isFinite(e)), n = t.length ? Math.min(...t) : 0, r = t.length ? Math.max(...t) : 0;
344
+ return {
345
+ min: e.scaleMin ?? Math.min(n, 0),
346
+ max: e.scaleMax ?? r
347
+ };
348
+ }), W = f(() => ee(Bn.value.min, Bn.value.max, L.value.style.chart.grid.scaleSteps)), G = S(L.value.style.chart.rowHeight), K = S(L.value.style.chart.width);
349
+ function Vn() {
350
+ let e = 0;
351
+ xn.value && (e = Array.from(xn.value.querySelectorAll("text")).reduce((e, t) => {
352
+ let n = t.getComputedTextLength();
353
+ return n > e ? n : e;
354
+ }, 0));
355
+ let t = bn.value ? bn.value.getBoundingClientRect().width : 0;
356
+ return e + t + (t ? 24 + L.value.style.chart.labels.axis.yLabelOffsetX : 0);
357
+ }
358
+ let Hn = S(0), Un = ge((e) => {
359
+ Hn.value = e;
360
+ }, 100);
361
+ Ie((e) => {
362
+ let t = Sn.value;
363
+ if (!t) return;
364
+ let n = new ResizeObserver((e) => {
365
+ Un(e[0].contentRect.height);
366
+ });
367
+ n.observe(t), e(() => n.disconnect());
368
+ }), Ae(() => {
369
+ Hn.value = 0;
370
+ });
371
+ let Wn = f(() => {
372
+ I.value;
373
+ let e = 0;
374
+ Cn.value && (e = Cn.value.getBBox().height);
375
+ let t = 0;
376
+ return Sn.value && (t = Hn.value), e + t;
377
+ }), Gn = f(() => U.value.length);
378
+ function Kn(e, t, n) {
379
+ let r = Number(e), i = Number(t.min), a = Number(t.max), o = Number(n.width);
380
+ if (!Number.isFinite(r) || !Number.isFinite(i) || !Number.isFinite(a) || !Number.isFinite(o)) return n.left;
381
+ let s = a - i;
382
+ return s <= 0 ? n.left : n.left + (r - i) / s * o;
383
+ }
384
+ let q = f(() => {
385
+ I.value;
386
+ let e = Vn(), t = L.value.style.chart.padding, n = L.value.style.chart.labels.axis.xLabel ? L.value.style.chart.labels.axis.xLabelOffsetY : 0, r = G.value * Gn.value - Wn.value - t.top - t.bottom - n, i = r / Gn.value, a = G.value * Gn.value, o = K.value - e - t.left - t.right, s = W.value.ticks.length * (o / W.value.ticks.length);
387
+ return {
388
+ left: L.value.style.chart.padding.left + e,
389
+ right: K.value - L.value.style.chart.padding.right,
390
+ top: L.value.style.chart.padding.top,
391
+ bottom: a - L.value.style.chart.padding.bottom - Wn.value - n,
392
+ width: o,
393
+ height: r,
394
+ rowHeight: i,
395
+ absoluteHeight: a,
396
+ widthPlotReference: s
397
+ };
398
+ }), J = f(() => Math.min(G.value / 2 * .7, L.value.style.chart.plots.radius)), qn = S([]), Y = f({
399
+ get() {
400
+ let e = q.value, t = W.value;
401
+ return qn.value.map((n, r) => {
402
+ let i = Kn(n.start, t, e), a = Kn(n.endVal, t, e), o = i + (a - i) / 2, s = ![null, void 0].includes(n.start) && ![null, void 0].includes(n.end) && n.end > n.start, ee = ![null, void 0].includes(n.start) && ![null, void 0].includes(n.end) && n.end < n.start, c = ![null, void 0].includes(n.start) && ![null, void 0].includes(n.end) && n.end === n.start || [null, void 0].includes(n.start) || [null, void 0].includes(n.end), te = s ? L.value.style.chart.plots.evaluationColors.positive : ee ? L.value.style.chart.plots.evaluationColors.negative : L.value.style.chart.plots.evaluationColors.neutral;
403
+ return {
404
+ ...n,
405
+ isPositive: s,
406
+ isNegative: ee,
407
+ isNeutral: c,
408
+ evaluationColor: te,
409
+ evaluationGrad: `url(#${s ? "positive" : ee ? "negative" : "neutral"}_grad_${j.value})`,
410
+ startX: i,
411
+ endX: a,
412
+ centerX: o,
413
+ y: e.top + r * e.rowHeight + e.rowHeight / 2
414
+ };
415
+ });
416
+ },
417
+ set(e) {
418
+ qn.value = e;
419
+ }
420
+ });
421
+ function Jn() {
422
+ qn.value = U.value.map((e) => {
423
+ let t = Number(e.start);
424
+ return {
425
+ ...e,
426
+ endVal: Number.isFinite(t) ? t : 0
427
+ };
428
+ });
429
+ }
430
+ let X = S(null);
431
+ je(() => {
432
+ Yn();
433
+ });
434
+ function Yn() {
435
+ if (X.value != null && (cancelAnimationFrame(X.value), X.value = null), Jn(), !L.value.useAnimation) {
436
+ Y.value = qn.value.map((e) => {
437
+ let t = Number(e.end);
438
+ return {
439
+ ...e,
440
+ endVal: Number.isFinite(t) ? t : e.endVal
441
+ };
442
+ });
443
+ return;
444
+ }
445
+ let e = Math.max(1, Math.min(100, L.value.animationSpeed || 100)) / 100, t = U.value.map((e) => {
446
+ let t = Number(e.start), n = Number(e.end), r = Number.isFinite(t) ? t : 0;
447
+ return (Number.isFinite(n) ? n : r) - r;
448
+ }), n = () => {
449
+ let r = !0;
450
+ Y.value = qn.value.map((n, i) => {
451
+ let a = Number.isFinite(Number(n.end)) ? Number(n.end) : n.endVal, o = n.endVal + t[i] * e, s = t[i] >= 0 ? Math.min(o, a) : Math.max(o, a);
452
+ return s !== a && (r = !1), {
453
+ ...n,
454
+ endVal: s
455
+ };
456
+ }), r ? X.value = null : X.value = requestAnimationFrame(n);
457
+ };
458
+ X.value = requestAnimationFrame(n);
459
+ }
460
+ let Xn = f(() => L.value.style.chart.plots.evaluationColors.enable ? [
461
+ {
462
+ name: L.value.style.chart.legend.labelNegative,
463
+ color: L.value.style.chart.plots.gradient.show ? `url(#negative_grad_${j.value})` : L.value.style.chart.plots.evaluationColors.negative
464
+ },
465
+ {
466
+ name: L.value.style.chart.legend.labelNeutral,
467
+ color: L.value.style.chart.plots.gradient.show ? `url(#neutral_grad_${j.value})` : L.value.style.chart.plots.evaluationColors.neutral
468
+ },
469
+ {
470
+ name: L.value.style.chart.legend.labelPositive,
471
+ color: L.value.style.chart.plots.gradient.show ? `url(#positive_grad_${j.value})` : L.value.style.chart.plots.evaluationColors.positive
472
+ }
473
+ ] : [{
474
+ name: L.value.style.chart.legend.labelStart,
475
+ color: L.value.style.chart.plots.gradient.show ? `url(#start_grad_${j.value})` : L.value.style.chart.plots.startColor
476
+ }, {
477
+ name: L.value.style.chart.legend.labelEnd,
478
+ color: L.value.style.chart.plots.gradient.show ? `url(#end_grad_${j.value})` : L.value.style.chart.plots.endColor
479
+ }]), Zn = f(() => ({
480
+ cy: "donut-div-legend",
481
+ backgroundColor: L.value.style.chart.legend.backgroundColor,
482
+ color: L.value.style.chart.legend.color,
483
+ fontSize: L.value.style.chart.legend.fontSize,
484
+ paddingBottom: 12,
485
+ paddingTop: 12,
486
+ fontWeight: L.value.style.chart.legend.bold ? "bold" : ""
487
+ })), Z = f(() => ({
488
+ head: Y.value.map((e) => ({ name: e.name })),
489
+ body: Y.value.map((e) => ({
490
+ start: e.start,
491
+ end: e.end
492
+ }))
493
+ })), Q = f(() => {
494
+ let e = [
495
+ L.value.table.columnNames.series,
496
+ L.value.table.columnNames.start,
497
+ L.value.table.columnNames.end,
498
+ L.value.table.columnNames.progression
499
+ ], t = Z.value.head.map((e, t) => {
500
+ let n = l({
501
+ p: L.value.style.chart.labels.prefix,
502
+ v: Z.value.body[t].start,
503
+ s: L.value.style.chart.labels.suffix,
504
+ r: L.value.table.td.roundingValue
505
+ }), r = l({
506
+ p: L.value.style.chart.labels.prefix,
507
+ v: Z.value.body[t].end,
508
+ s: L.value.style.chart.labels.suffix,
509
+ r: L.value.table.td.roundingValue
510
+ }), i = l({
511
+ v: 100 * (Z.value.body[t].end / Z.value.body[t].start - 1),
512
+ s: "%",
513
+ r: L.value.table.td.roundingPercentage
514
+ });
515
+ return [
516
+ { name: e.name },
517
+ n,
518
+ r,
519
+ i
520
+ ];
521
+ }), n = {
522
+ th: {
523
+ backgroundColor: L.value.table.th.backgroundColor,
524
+ color: L.value.table.th.color,
525
+ outline: L.value.table.th.outline
526
+ },
527
+ td: {
528
+ backgroundColor: L.value.table.td.backgroundColor,
529
+ color: L.value.table.td.color,
530
+ outline: L.value.table.td.outline
531
+ },
532
+ breakpoint: L.value.table.responsiveBreakpoint
533
+ };
534
+ return {
535
+ colNames: [
536
+ L.value.table.columnNames.series,
537
+ L.value.table.columnNames.start,
538
+ L.value.table.columnNames.end,
539
+ L.value.table.columnNames.progression
540
+ ],
541
+ head: e,
542
+ body: t,
543
+ config: n
544
+ };
545
+ });
546
+ function Qn(e = null) {
547
+ Oe(() => {
548
+ let t = Z.value.head.map((e, t) => [
549
+ [e.name],
550
+ [Z.value.body[t].start],
551
+ [Z.value.body[t].end]
552
+ ]), n = ie([
553
+ [L.value.style.chart.title.text],
554
+ [L.value.style.chart.title.subtitle.text],
555
+ [
556
+ [L.value.table.columnNames.series],
557
+ [L.value.table.columnNames.start],
558
+ [L.value.table.columnNames.end]
559
+ ]
560
+ ].concat(t));
561
+ e ? e(n) : s({
562
+ csvContent: n,
563
+ title: L.value.style.chart.title.text || "vue-ui-dumbbell"
564
+ });
565
+ });
566
+ }
567
+ let $ = S(!1);
568
+ function $n(e) {
569
+ $.value = e, sn.value += 1;
570
+ }
571
+ function er() {
572
+ return U.value;
573
+ }
574
+ function tr() {
575
+ H.value.showTable = !H.value.showTable;
576
+ }
577
+ let nr = S(!1);
578
+ function rr() {
579
+ nr.value = !nr.value;
580
+ }
581
+ async function ir({ scale: e = 2 } = {}) {
582
+ if (!M.value) return;
583
+ let { width: t, height: n } = M.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await pe({
584
+ domElement: M.value,
585
+ base64: !0,
586
+ img: !0,
587
+ scale: e
588
+ });
589
+ return {
590
+ imageUri: i,
591
+ base64: a,
592
+ title: L.value.style.chart.title.text,
593
+ width: t,
594
+ height: n,
595
+ aspectRatio: r
596
+ };
597
+ }
598
+ let ar = f(() => W.value.ticks);
599
+ fe({
600
+ timeLabelsEls: Sn,
601
+ timeLabels: ar,
602
+ slicer: f(() => ({
603
+ start: 0,
604
+ end: ar.value.length
605
+ })),
606
+ configRef: L,
607
+ rotationPath: [
608
+ "style",
609
+ "chart",
610
+ "labels",
611
+ "xAxisLabels",
612
+ "rotation"
613
+ ],
614
+ autoRotatePath: [
615
+ "style",
616
+ "chart",
617
+ "labels",
618
+ "xAxisLabels",
619
+ "autoRotate",
620
+ "enable"
621
+ ],
622
+ isAutoSize: !1,
623
+ width: K,
624
+ height: G,
625
+ targetClass: ".vue-ui-dumbbell-scale-label",
626
+ rotation: L.value.style.chart.labels.xAxisLabels.autoRotate.angle
627
+ });
628
+ function or({ rowHeight: e, fontSize: t, showProgression: n }) {
629
+ if (!n) return !1;
630
+ let r = e / 3, i = e / 1.3;
631
+ return Math.abs(i - r) < t * 1.2;
632
+ }
633
+ let sr = (() => {
634
+ let e = null, t = 0;
635
+ return (n) => {
636
+ if (n === I.value) {
637
+ e = null, t = 0;
638
+ return;
639
+ }
640
+ e === null || e !== n ? (e = n, t = 1) : (t += 1, t >= 1 && (I.value = n, e = null, t = 0));
641
+ };
642
+ })(), cr = ge(() => {
643
+ requestAnimationFrame(() => {
644
+ requestAnimationFrame(() => {
645
+ sr(or({
646
+ rowHeight: q.value.rowHeight,
647
+ fontSize: L.value.style.chart.labels.yAxisLabels.fontSize,
648
+ showProgression: L.value.style.chart.labels.yAxisLabels.showProgression
649
+ }));
650
+ });
651
+ });
652
+ }, 100);
653
+ function lr({ datapoint: e, seriesIndex: t }) {
654
+ N.value = t, P.value = e, L.value.events.datapointEnter && L.value.events.datapointEnter({
655
+ datapoint: e,
656
+ seriesIndex: t
657
+ });
658
+ }
659
+ function ur({ datapoint: e, seriesIndex: t }) {
660
+ N.value = null, P.value = null, L.value.events.datapointLeave && L.value.events.datapointLeave({
661
+ datapoint: e,
662
+ seriesIndex: t
663
+ });
664
+ }
665
+ function dr({ datapoint: e, seriesIndex: t }) {
666
+ L.value.events.datapointClick && L.value.events.datapointClick({
667
+ datapoint: e,
668
+ seriesIndex: t
669
+ }), an("selectDatapoint", {
670
+ ...e,
671
+ seriesIndex: t
672
+ });
673
+ }
674
+ let fr = f(() => {
675
+ if (P.value === null) return 0;
676
+ let e = ![null, void 0].includes(P.value.start), t = ![null, void 0].includes(P.value.end);
677
+ return e && t ? Math.min(P.value.startX, P.value.endX) + Math.abs(P.value.startX - P.value.endX) / 2 : e && !t ? P.value.startX : t && !e ? P.value.endX : null;
678
+ }), pr = f(() => {
679
+ if (P.value === null) return "";
680
+ let e = ![null, void 0].includes(P.value.start), t = ![null, void 0].includes(P.value.end), n = "", r = "";
681
+ return e && (n = c(L.value.style.chart.labels.formatter, P.value.start, l({
682
+ p: L.value.style.chart.labels.prefix,
683
+ v: P.value.start,
684
+ s: L.value.style.chart.labels.suffix,
685
+ r: L.value.style.chart.labels.startLabels.rounding
686
+ }), {
687
+ datapoint: P.value,
688
+ seriesIndex: N.value
689
+ })), t && (r = c(L.value.style.chart.labels.formatter, P.value.end, l({
690
+ p: L.value.style.chart.labels.prefix,
691
+ v: P.value.end,
692
+ s: L.value.style.chart.labels.suffix,
693
+ r: L.value.style.chart.labels.startLabels.rounding
694
+ }), {
695
+ datapoint: P.value,
696
+ seriesIndex: N.value
697
+ })), e && t ? `${n} → ${r}` : e && !t ? n : t && !e ? r : "";
698
+ }), mr = f(() => {
699
+ let e = L.value.table.useDialog && !L.value.table.show, t = H.value.showTable;
700
+ return {
701
+ component: e ? en : Yt,
702
+ title: `${L.value.style.chart.title.text}${L.value.style.chart.title.subtitle.text ? `: ${L.value.style.chart.title.subtitle.text}` : ""}`,
703
+ props: e ? {
704
+ backgroundColor: L.value.table.th.backgroundColor,
705
+ color: L.value.table.th.color,
706
+ headerColor: L.value.table.th.color,
707
+ headerBg: L.value.table.th.backgroundColor,
708
+ isFullscreen: $.value,
709
+ fullscreenParent: M.value,
710
+ forcedWidth: Math.min(800, window.innerWidth * .8),
711
+ isCursorPointer: R.value
712
+ } : {
713
+ hideDetails: !0,
714
+ config: {
715
+ open: t,
716
+ maxHeight: 1e4,
717
+ body: {
718
+ backgroundColor: L.value.style.chart.backgroundColor,
719
+ color: L.value.style.chart.color
720
+ },
721
+ head: {
722
+ backgroundColor: L.value.style.chart.backgroundColor,
723
+ color: L.value.style.chart.color
724
+ }
725
+ }
726
+ }
727
+ };
728
+ });
729
+ Fe(() => H.value.showTable, (e) => {
730
+ L.value.table.show || (e && L.value.table.useDialog && gn.value ? gn.value.open() : "close" in gn.value && gn.value.close());
731
+ });
732
+ function hr() {
733
+ H.value.showTable = !1, _n.value && _n.value.setTableIconState(!1);
734
+ }
735
+ let gr = f(() => Xn.value.map((e) => ({
736
+ ...e,
737
+ shape: "circle"
738
+ }))), _r = f(() => L.value.style.chart.backgroundColor), vr = f(() => L.value.style.chart.legend), { exportSvg: yr, getSvg: br } = le({
739
+ svg: z,
740
+ title: f(() => L.value.style.chart.title),
741
+ legend: vr,
742
+ legendItems: gr,
743
+ backgroundColor: _r
744
+ });
745
+ async function xr({ isCb: e }) {
746
+ yn.value = !0, await Oe();
747
+ try {
748
+ if (e) {
749
+ let { blob: e, url: t, text: n, dataUrl: r } = await br();
750
+ await Promise.resolve(L.value.userOptions.callbacks.svg({
751
+ blob: e,
752
+ url: t,
753
+ text: n,
754
+ dataUrl: r
755
+ }));
756
+ } else await Promise.resolve(yr());
757
+ } finally {
758
+ yn.value = !1;
759
+ }
760
+ }
761
+ function Sr(e) {
762
+ if (e?.stage === "start") {
763
+ vn.value = !0;
764
+ return;
765
+ }
766
+ if (e?.stage === "end") {
767
+ vn.value = !1;
768
+ return;
769
+ }
770
+ Rn();
771
+ }
772
+ async function Cr() {
773
+ if (an("copyAlt", {
774
+ config: L.value,
775
+ dataset: Y.value
776
+ }), !L.value.userOptions.callbacks.altCopy) {
777
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
778
+ return;
779
+ }
780
+ await Promise.resolve(L.value.userOptions.callbacks.altCopy({
781
+ config: L.value,
782
+ dataset: Y.value
783
+ }));
784
+ }
785
+ function wr(e) {
786
+ let t = Y.value.length;
787
+ return t ? (e % t + t) % t : null;
788
+ }
789
+ function Tr() {
790
+ if (F.value !== null) {
791
+ let e = Y.value[F.value];
792
+ e && ur({
793
+ datapoint: e,
794
+ seriesIndex: F.value
795
+ });
796
+ }
797
+ F.value = null, N.value = null, P.value = null;
798
+ }
799
+ function Er() {
800
+ F.value = null, wn.value = !0;
801
+ }
802
+ function Dr() {
803
+ Tr(), wn.value = !1;
804
+ }
805
+ function Or(e) {
806
+ if (!z.value || nr.value || document.activeElement !== z.value || !Y.value.length) return;
807
+ let t = ["ArrowUp", "ArrowLeft"].includes(e.key), n = ["ArrowDown", "ArrowRight"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
808
+ if (!t && !n && !r && !i) return;
809
+ if (e.preventDefault(), e.stopPropagation(), i) {
810
+ Tr();
811
+ return;
812
+ }
813
+ if (r) {
814
+ if (F.value === null) return;
815
+ let e = Y.value[F.value];
816
+ if (!e) return;
817
+ dr({
818
+ datapoint: e,
819
+ seriesIndex: F.value
820
+ });
821
+ return;
822
+ }
823
+ let a = F.value;
824
+ a = a === null ? n ? 0 : Y.value.length - 1 : wr(a + (n ? 1 : -1));
825
+ let o = Y.value[a];
826
+ o && (F.value = a, lr({
827
+ datapoint: o,
828
+ seriesIndex: a
829
+ }));
830
+ }
831
+ let kr = f(() => ({
832
+ head: Q.value.head,
833
+ body: Q.value.body.map((e) => [
834
+ e[0]?.name ?? "",
835
+ e[1],
836
+ e[2],
837
+ e[3]
838
+ ]),
839
+ caption: L.value.a11y.translations.tableCaption,
840
+ notice: L.value.a11y.translations.tableAvailable
841
+ }));
842
+ return he({
843
+ getData: er,
844
+ getImage: ir,
845
+ generatePdf: Ln,
846
+ generateCsv: Qn,
847
+ generateImage: Rn,
848
+ generateSvg: xr,
849
+ toggleTable: tr,
850
+ toggleAnnotator: rr,
851
+ toggleFullscreen: $n,
852
+ copyAlt: Cr
853
+ }), (e, t) => (x(), h("div", {
854
+ ref_key: "dumbbellChart",
855
+ ref: M,
856
+ class: ke(`vue-data-ui-component vue-ui-dumbbell ${$.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
857
+ style: b(`font-family:${L.value.style.fontFamily};width:100%; text-align:center;background:${L.value.style.chart.backgroundColor};${L.value.responsive ? "height:100%" : ""}`),
858
+ id: `dumbbell_${j.value}`,
859
+ onMouseenter: t[1] ||= () => E(An)(!0),
860
+ onMouseleave: t[2] ||= () => E(An)(!1)
861
+ }, [
862
+ g("div", {
863
+ id: `chart-instructions-${j.value}`,
864
+ class: "sr-only"
865
+ }, [g("p", null, T(L.value.a11y.translations.keyboardNavigation), 1)], 8, ze),
866
+ kr.value.body.length ? (x(), p(ve, {
867
+ key: 0,
868
+ uid: j.value,
869
+ head: kr.value.head,
870
+ body: kr.value.body,
871
+ caption: kr.value.caption,
872
+ notice: kr.value.notice
873
+ }, null, 8, [
874
+ "uid",
875
+ "head",
876
+ "body",
877
+ "caption",
878
+ "notice"
879
+ ])) : m("", !0),
880
+ L.value.userOptions.buttons.annotator ? (x(), p(E(Zt), {
881
+ key: 1,
882
+ svgRef: E(z),
883
+ backgroundColor: L.value.style.chart.backgroundColor,
884
+ color: L.value.style.chart.color,
885
+ active: nr.value,
886
+ isCursorPointer: R.value,
887
+ onClose: rr
888
+ }, {
889
+ "annotator-action-close": O(() => [w(e.$slots, "annotator-action-close", {}, void 0, !0)]),
890
+ "annotator-action-color": O(({ color: t }) => [w(e.$slots, "annotator-action-color", y(v({ color: t })), void 0, !0)]),
891
+ "annotator-action-draw": O(({ mode: t }) => [w(e.$slots, "annotator-action-draw", y(v({ mode: t })), void 0, !0)]),
892
+ "annotator-action-undo": O(({ disabled: t }) => [w(e.$slots, "annotator-action-undo", y(v({ disabled: t })), void 0, !0)]),
893
+ "annotator-action-redo": O(({ disabled: t }) => [w(e.$slots, "annotator-action-redo", y(v({ disabled: t })), void 0, !0)]),
894
+ "annotator-action-delete": O(({ disabled: t }) => [w(e.$slots, "annotator-action-delete", y(v({ disabled: t })), void 0, !0)]),
895
+ _: 3
896
+ }, 8, [
897
+ "svgRef",
898
+ "backgroundColor",
899
+ "color",
900
+ "active",
901
+ "isCursorPointer"
902
+ ])) : m("", !0),
903
+ zn.value ? (x(), h("div", {
904
+ key: 2,
905
+ ref_key: "noTitle",
906
+ ref: dn,
907
+ class: "vue-data-ui-no-title-space",
908
+ style: "height:36px; width: 100%;background:transparent"
909
+ }, null, 512)) : m("", !0),
910
+ L.value.style.chart.title.text ? (x(), h("div", {
911
+ key: 3,
912
+ ref_key: "chartTitle",
913
+ ref: cn,
914
+ style: "width:100%;background:transparent;padding-bottom:24px"
915
+ }, [(x(), p(me, {
916
+ key: `title_${fn.value}`,
917
+ config: {
918
+ title: {
919
+ cy: "donut-div-title",
920
+ ...L.value.style.chart.title
921
+ },
922
+ subtitle: {
923
+ cy: "donut-div-subtitle",
924
+ ...L.value.style.chart.title.subtitle
925
+ }
926
+ }
927
+ }, null, 8, ["config"]))], 512)) : m("", !0),
928
+ g("div", { id: `legend-top-${j.value}` }, null, 8, Be),
929
+ L.value.userOptions.show && on.value && (E(jn) || E(kn)) ? (x(), p(E(Qt), {
930
+ ref_key: "userOptionsRef",
931
+ ref: _n,
932
+ key: `user_option_${sn.value}`,
933
+ backgroundColor: L.value.style.chart.backgroundColor,
934
+ color: L.value.style.chart.color,
935
+ isPrinting: E(Fn),
936
+ isImaging: E(In),
937
+ uid: j.value,
938
+ hasPdf: L.value.userOptions.buttons.pdf,
939
+ hasXls: L.value.userOptions.buttons.csv,
940
+ hasImg: L.value.userOptions.buttons.img,
941
+ hasSvg: L.value.userOptions.buttons.svg,
942
+ hasTable: L.value.userOptions.buttons.table,
943
+ hasFullscreen: L.value.userOptions.buttons.fullscreen,
944
+ hasAltCopy: L.value.userOptions.buttons.altCopy,
945
+ isFullscreen: $.value,
946
+ titles: { ...L.value.userOptions.buttonTitles },
947
+ chartElement: M.value,
948
+ position: L.value.userOptions.position,
949
+ hasAnnotator: L.value.userOptions.buttons.annotator,
950
+ isAnnotation: nr.value,
951
+ callbacks: L.value.userOptions.callbacks,
952
+ printScale: L.value.userOptions.print.scale,
953
+ tableDialog: L.value.table.useDialog,
954
+ isCursorPointer: R.value,
955
+ onToggleFullscreen: $n,
956
+ onGeneratePdf: E(Ln),
957
+ onGenerateCsv: Qn,
958
+ onGenerateImage: Sr,
959
+ onGenerateSvg: xr,
960
+ onToggleTable: tr,
961
+ onToggleAnnotator: rr,
962
+ onCopyAlt: Cr,
963
+ style: b({ visibility: E(jn) ? E(kn) ? "visible" : "hidden" : "visible" })
964
+ }, we({ _: 2 }, [
965
+ e.$slots.menuIcon ? {
966
+ name: "menuIcon",
967
+ fn: O(({ isOpen: t, color: n }) => [w(e.$slots, "menuIcon", y(v({
968
+ isOpen: t,
969
+ color: n
970
+ })), void 0, !0)]),
971
+ key: "0"
972
+ } : void 0,
973
+ e.$slots.optionPdf ? {
974
+ name: "optionPdf",
975
+ fn: O(() => [w(e.$slots, "optionPdf", {}, void 0, !0)]),
976
+ key: "1"
977
+ } : void 0,
978
+ e.$slots.optionCsv ? {
979
+ name: "optionCsv",
980
+ fn: O(() => [w(e.$slots, "optionCsv", {}, void 0, !0)]),
981
+ key: "2"
982
+ } : void 0,
983
+ e.$slots.optionImg ? {
984
+ name: "optionImg",
985
+ fn: O(() => [w(e.$slots, "optionImg", {}, void 0, !0)]),
986
+ key: "3"
987
+ } : void 0,
988
+ e.$slots.optionSvg ? {
989
+ name: "optionSvg",
990
+ fn: O(() => [w(e.$slots, "optionSvg", {}, void 0, !0)]),
991
+ key: "4"
992
+ } : void 0,
993
+ e.$slots.optionTable ? {
994
+ name: "optionTable",
995
+ fn: O(() => [w(e.$slots, "optionTable", {}, void 0, !0)]),
996
+ key: "5"
997
+ } : void 0,
998
+ e.$slots.optionFullscreen ? {
999
+ name: "optionFullscreen",
1000
+ fn: O(({ toggleFullscreen: t, isFullscreen: n }) => [w(e.$slots, "optionFullscreen", y(v({
1001
+ toggleFullscreen: t,
1002
+ isFullscreen: n
1003
+ })), void 0, !0)]),
1004
+ key: "6"
1005
+ } : void 0,
1006
+ e.$slots.optionAnnotator ? {
1007
+ name: "optionAnnotator",
1008
+ fn: O(({ toggleAnnotator: t, isAnnotator: n }) => [w(e.$slots, "optionAnnotator", y(v({
1009
+ toggleAnnotator: t,
1010
+ isAnnotator: n
1011
+ })), void 0, !0)]),
1012
+ key: "7"
1013
+ } : void 0,
1014
+ e.$slots.optionAltCopy ? {
1015
+ name: "optionAltCopy",
1016
+ fn: O(({ altCopy: t }) => [w(e.$slots, "optionAltCopy", y(v({ altCopy: t })), void 0, !0)]),
1017
+ key: "8"
1018
+ } : void 0,
1019
+ e.$slots["custom-menu-before"] ? {
1020
+ name: "custom-menu-before",
1021
+ fn: O(() => [w(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1022
+ key: "9"
1023
+ } : void 0,
1024
+ e.$slots["custom-menu-after"] ? {
1025
+ name: "custom-menu-after",
1026
+ fn: O(() => [w(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1027
+ key: "10"
1028
+ } : void 0
1029
+ ]), 1032, [
1030
+ "backgroundColor",
1031
+ "color",
1032
+ "isPrinting",
1033
+ "isImaging",
1034
+ "uid",
1035
+ "hasPdf",
1036
+ "hasXls",
1037
+ "hasImg",
1038
+ "hasSvg",
1039
+ "hasTable",
1040
+ "hasFullscreen",
1041
+ "hasAltCopy",
1042
+ "isFullscreen",
1043
+ "titles",
1044
+ "chartElement",
1045
+ "position",
1046
+ "hasAnnotator",
1047
+ "isAnnotation",
1048
+ "callbacks",
1049
+ "printScale",
1050
+ "tableDialog",
1051
+ "isCursorPointer",
1052
+ "onGeneratePdf",
1053
+ "style"
1054
+ ])) : m("", !0),
1055
+ g("div", Ve, [(x(), h("svg", {
1056
+ ref_key: "svgRef",
1057
+ ref: z,
1058
+ xmlns: E(ne),
1059
+ class: ke({
1060
+ "vue-data-ui-fullscreen--on": $.value,
1061
+ "vue-data-ui-fulscreen--off": !$.value
1062
+ }),
1063
+ viewBox: `0 0 ${K.value} ${q.value.absoluteHeight <= 0 ? 10 : q.value.absoluteHeight}`,
1064
+ style: b(`max-width:100%; overflow: visible; background:transparent;color:${L.value.style.chart.color}`),
1065
+ "aria-describedby": `chart-instructions-${j.value}`,
1066
+ tabindex: "0",
1067
+ onFocus: Er,
1068
+ onBlur: Dr,
1069
+ onKeydown: Or
1070
+ }, [
1071
+ Ee(E($t)),
1072
+ e.$slots["chart-background"] ? (x(), h("foreignObject", {
1073
+ key: 0,
1074
+ x: q.value.left,
1075
+ y: q.value.top,
1076
+ width: Math.max(.1, q.value.width),
1077
+ height: Math.max(.1, q.value.height),
1078
+ style: { pointerEvents: "none" }
1079
+ }, [w(e.$slots, "chart-background", {}, void 0, !0)], 8, Ue)) : m("", !0),
1080
+ L.value.style.chart.grid.verticalGrid.show ? (x(), h("g", We, [(x(!0), h(d, null, C(W.value.ticks, (e, t) => (x(), h("line", {
1081
+ x1: q.value.left + t * q.value.width / (W.value.ticks.length - 1),
1082
+ x2: q.value.left + t * q.value.width / (W.value.ticks.length - 1),
1083
+ y1: q.value.top,
1084
+ y2: q.value.bottom,
1085
+ stroke: L.value.style.chart.grid.verticalGrid.stroke,
1086
+ "stroke-width": L.value.style.chart.grid.verticalGrid.strokeWidth,
1087
+ "stroke-dasharray": L.value.style.chart.grid.verticalGrid.strokeDasharray
1088
+ }, null, 8, Ge))), 256))])) : m("", !0),
1089
+ L.value.style.chart.grid.horizontalGrid.show ? (x(), h("g", Ke, [(x(!0), h(d, null, C(U.value, (e, t) => (x(), h("line", {
1090
+ x1: q.value.left,
1091
+ x2: q.value.right,
1092
+ y1: q.value.top + t * q.value.rowHeight,
1093
+ y2: q.value.top + t * q.value.rowHeight,
1094
+ stroke: L.value.style.chart.grid.horizontalGrid.stroke,
1095
+ "stroke-width": L.value.style.chart.grid.horizontalGrid.strokeWidth,
1096
+ "stroke-dasharray": L.value.style.chart.grid.horizontalGrid.strokeDasharray
1097
+ }, null, 8, qe))), 256)), g("line", {
1098
+ x1: q.value.left,
1099
+ x2: q.value.right,
1100
+ y1: q.value.bottom,
1101
+ y2: q.value.bottom,
1102
+ stroke: L.value.style.chart.grid.horizontalGrid.stroke,
1103
+ "stroke-width": L.value.style.chart.grid.horizontalGrid.strokeWidth,
1104
+ "stroke-dasharray": L.value.style.chart.grid.horizontalGrid.strokeDasharray
1105
+ }, null, 8, Je)])) : m("", !0),
1106
+ L.value.style.chart.labels.axis.yLabel ? (x(), h("text", {
1107
+ key: 3,
1108
+ ref_key: "yAxisLabel",
1109
+ ref: bn,
1110
+ transform: `translate(${L.value.style.chart.labels.axis.fontSize}, ${q.value.absoluteHeight / 2}), rotate(-90)`,
1111
+ "font-size": L.value.style.chart.labels.axis.fontSize,
1112
+ fill: L.value.style.chart.labels.axis.color,
1113
+ "text-anchor": "middle"
1114
+ }, T(L.value.style.chart.labels.axis.yLabel), 9, Ye)) : m("", !0),
1115
+ L.value.style.chart.labels.yAxisLabels.show ? (x(), h("g", {
1116
+ key: 4,
1117
+ ref_key: "serieLabels",
1118
+ ref: xn
1119
+ }, [(x(!0), h(d, null, C(Y.value, (e, t) => (x(), h("text", {
1120
+ class: "vue-ui-dumbbell-serie-name",
1121
+ key: `serieLabel_${e.id}_${t}`,
1122
+ x: q.value.left - 6 + L.value.style.chart.labels.yAxisLabels.offsetX,
1123
+ y: q.value.top + t * q.value.rowHeight + (!L.value.style.chart.labels.yAxisLabels.showProgression || I.value ? q.value.rowHeight / 2 : q.value.rowHeight / 3) + L.value.style.chart.labels.yAxisLabels.fontSize / 3,
1124
+ "font-size": L.value.style.chart.labels.yAxisLabels.fontSize,
1125
+ fill: L.value.style.chart.labels.yAxisLabels.color,
1126
+ "font-weight": L.value.style.chart.labels.yAxisLabels.bold ? "bold" : "normal",
1127
+ "text-anchor": "end",
1128
+ onMouseenter: (n) => lr({
1129
+ datapoint: e,
1130
+ seriesIndex: t
1131
+ }),
1132
+ onMouseleave: (n) => ur({
1133
+ datapoint: e,
1134
+ seriesIndex: t
1135
+ }),
1136
+ onClick: (n) => dr({
1137
+ datapoint: e,
1138
+ seriesIndex: t
1139
+ })
1140
+ }, T(e.name) + " " + T(I.value && L.value.style.chart.labels.yAxisLabels.showProgression ? [null, void 0].includes(e.start) || [null, void 0].includes(e.end) ? "" : `(${E(c)(L.value.style.chart.labels.yAxisLabels.formatter, 100 * (e.end / e.start - 1), E(l)({
1141
+ v: 100 * (e.end / e.start - 1),
1142
+ s: "%",
1143
+ r: L.value.style.chart.labels.yAxisLabels.rounding
1144
+ }), { datapoint: e })})` : ""), 41, Xe))), 128)), L.value.style.chart.labels.yAxisLabels.showProgression && !I.value ? (x(!0), h(d, { key: 0 }, C(Y.value, (e, t) => (x(), h("text", {
1145
+ class: "vue-ui-dumbbell-serie-value",
1146
+ x: q.value.left - 6 + L.value.style.chart.labels.yAxisLabels.offsetX,
1147
+ y: q.value.top + t * q.value.rowHeight + q.value.rowHeight / 1.3 + L.value.style.chart.labels.yAxisLabels.fontSize / 3,
1148
+ "font-size": L.value.style.chart.labels.yAxisLabels.fontSize,
1149
+ fill: L.value.style.chart.labels.yAxisLabels.color,
1150
+ "text-anchor": "end",
1151
+ onMouseenter: (n) => lr({
1152
+ datapoint: e,
1153
+ seriesIndex: t
1154
+ }),
1155
+ onMouseleave: (n) => ur({
1156
+ datapoint: e,
1157
+ seriesIndex: t
1158
+ }),
1159
+ onClick: (n) => dr({
1160
+ datapoint: e,
1161
+ seriesIndex: t
1162
+ })
1163
+ }, T([null, void 0].includes(e.start) || [null, void 0].includes(e.end) ? "" : E(c)(L.value.style.chart.labels.yAxisLabels.formatter, 100 * (e.end / e.start - 1), E(l)({
1164
+ v: 100 * (e.end / e.start - 1),
1165
+ s: "%",
1166
+ r: L.value.style.chart.labels.yAxisLabels.rounding
1167
+ }), { datapoint: e })), 41, Ze))), 256)) : m("", !0)], 512)) : m("", !0),
1168
+ L.value.style.chart.labels.axis.xLabel ? (x(), h("text", {
1169
+ key: 5,
1170
+ ref_key: "xAxisLabel",
1171
+ ref: Cn,
1172
+ x: q.value.left + q.value.width / 2,
1173
+ y: q.value.absoluteHeight - L.value.style.chart.labels.axis.fontSize / 3,
1174
+ "font-size": L.value.style.chart.labels.axis.fontSize,
1175
+ fill: L.value.style.chart.labels.axis.color,
1176
+ "text-anchor": "middle"
1177
+ }, T(L.value.style.chart.labels.axis.xLabel), 9, Qe)) : m("", !0),
1178
+ L.value.style.chart.labels.xAxisLabels.show ? (x(), h("g", {
1179
+ key: 6,
1180
+ ref_key: "scaleLabels",
1181
+ ref: Sn
1182
+ }, [(x(!0), h(d, null, C(W.value.ticks, (e, t) => (x(), h("text", {
1183
+ class: "vue-ui-dumbbell-scale-label",
1184
+ key: `tick_${t}`,
1185
+ transform: `translate(${q.value.left + t * (q.value.width / (W.value.ticks.length - 1))}, ${q.value.bottom + L.value.style.chart.labels.xAxisLabels.fontSize + L.value.style.chart.labels.xAxisLabels.offsetY}), rotate(${L.value.style.chart.labels.xAxisLabels.rotation})`,
1186
+ "font-size": L.value.style.chart.labels.xAxisLabels.fontSize,
1187
+ fill: L.value.style.chart.labels.xAxisLabels.color,
1188
+ "font-weight": L.value.style.chart.labels.xAxisLabels.bold ? "bold" : "normal",
1189
+ "text-anchor": L.value.style.chart.labels.xAxisLabels.rotation > 0 ? "start" : L.value.style.chart.labels.xAxisLabels.rotation < 0 ? "end" : "middle"
1190
+ }, T(E(c)(L.value.style.chart.labels.formatter, e, E(l)({
1191
+ p: L.value.style.chart.labels.prefix,
1192
+ v: e,
1193
+ s: L.value.style.chart.labels.suffix,
1194
+ r: L.value.style.chart.labels.xAxisLabels.rounding
1195
+ }), {
1196
+ datapoint: e,
1197
+ seriesIndex: t
1198
+ })), 9, $e))), 128))], 512)) : m("", !0),
1199
+ k(g("g", null, [
1200
+ k(g("path", {
1201
+ d: `M ${P.value ? P.value.startX : q.value.left},${q.value.top} ${P.value ? P.value.startX : q.value.left},${q.value.bottom}`,
1202
+ stroke: P.value ? L.value.style.chart.plots.evaluationColors.enable ? P.value.evaluationColor : L.value.style.chart.plots.startColor : "transparent",
1203
+ "stroke-width": L.value.style.chart.comparisonLines.strokeWidth,
1204
+ "stroke-dasharray": L.value.style.chart.comparisonLines.strokeDasharray,
1205
+ style: { transition: "all 0.3s ease-in-out" }
1206
+ }, null, 8, et), [[D, P.value !== null && ![null, void 0].includes(P.value.start)]]),
1207
+ k(g("path", {
1208
+ d: `M ${P.value ? P.value.endX : q.value.left},${q.value.top} ${P.value ? P.value.endX : q.value.left},${q.value.bottom}`,
1209
+ stroke: P.value ? L.value.style.chart.plots.evaluationColors.enable ? P.value.evaluationColor : L.value.style.chart.plots.endColor : "transparent",
1210
+ "stroke-width": L.value.style.chart.comparisonLines.strokeWidth,
1211
+ "stroke-dasharray": L.value.style.chart.comparisonLines.strokeDasharray,
1212
+ style: { transition: "all 0.3s ease-in-out" }
1213
+ }, null, 8, tt), [[D, P.value !== null && ![null, void 0].includes(P.value.end)]]),
1214
+ k(g("rect", {
1215
+ x: P.value ? Math.min(P.value.startX, P.value.endX) : q.value.left,
1216
+ y: q.value.top,
1217
+ height: Math.max(.1, q.value.height),
1218
+ width: P.value ? Math.max(.1, Math.abs(P.value.endX - P.value.startX)) : 0,
1219
+ fill: P.value ? E(n)(L.value.style.chart.comparisonLines.rectColor, L.value.style.chart.comparisonLines.rectOpacity) : "transparent",
1220
+ style: { transition: "all 0.3s ease-in-out" }
1221
+ }, null, 8, nt), [[D, L.value.style.chart.comparisonLines.showRect && P.value !== null && ![null, void 0].includes(P.value.start) && ![null, void 0].includes(P.value.end)]]),
1222
+ k(g("text", {
1223
+ transform: `translate(${fr.value == null ? 0 : fr.value}, ${q.value.top - 6})`,
1224
+ fill: L.value.style.chart.comparisonLines.labelColor,
1225
+ "font-size": L.value.style.chart.comparisonLines.labelFontSize,
1226
+ "text-anchor": "middle",
1227
+ style: { transition: "all 0.3s ease-in-out" }
1228
+ }, T(pr.value), 9, rt), [[D, P.value !== null && fr.value !== null && L.value.style.chart.comparisonLines.showLabel]])
1229
+ ], 512), [[D, L.value.style.chart.comparisonLines.show && N.value !== null]]),
1230
+ g("defs", null, [
1231
+ g("radialGradient", {
1232
+ id: `start_grad_${j.value}`,
1233
+ fy: "30%"
1234
+ }, [
1235
+ g("stop", {
1236
+ offset: "10%",
1237
+ "stop-color": E(u)(L.value.style.chart.plots.startColor, L.value.style.chart.plots.gradient.intensity / 100)
1238
+ }, null, 8, at),
1239
+ g("stop", {
1240
+ offset: "90%",
1241
+ "stop-color": E(r)(L.value.style.chart.plots.startColor, .1)
1242
+ }, null, 8, ot),
1243
+ g("stop", {
1244
+ offset: "100%",
1245
+ "stop-color": L.value.style.chart.plots.startColor
1246
+ }, null, 8, st)
1247
+ ], 8, it),
1248
+ g("radialGradient", {
1249
+ id: `end_grad_${j.value}`,
1250
+ fy: "30%"
1251
+ }, [
1252
+ g("stop", {
1253
+ offset: "10%",
1254
+ "stop-color": E(u)(L.value.style.chart.plots.endColor, L.value.style.chart.plots.gradient.intensity / 100)
1255
+ }, null, 8, lt),
1256
+ g("stop", {
1257
+ offset: "90%",
1258
+ "stop-color": E(r)(L.value.style.chart.plots.endColor, .1)
1259
+ }, null, 8, ut),
1260
+ g("stop", {
1261
+ offset: "100%",
1262
+ "stop-color": L.value.style.chart.plots.endColor
1263
+ }, null, 8, dt)
1264
+ ], 8, ct),
1265
+ g("radialGradient", {
1266
+ id: `positive_grad_${j.value}`,
1267
+ fy: "30%"
1268
+ }, [
1269
+ g("stop", {
1270
+ offset: "10%",
1271
+ "stop-color": E(u)(L.value.style.chart.plots.evaluationColors.positive, L.value.style.chart.plots.gradient.intensity / 100)
1272
+ }, null, 8, pt),
1273
+ g("stop", {
1274
+ offset: "90%",
1275
+ "stop-color": E(r)(L.value.style.chart.plots.evaluationColors.positive, .1)
1276
+ }, null, 8, mt),
1277
+ g("stop", {
1278
+ offset: "100%",
1279
+ "stop-color": L.value.style.chart.plots.evaluationColors.positive
1280
+ }, null, 8, ht)
1281
+ ], 8, ft),
1282
+ g("radialGradient", {
1283
+ id: `negative_grad_${j.value}`,
1284
+ fy: "30%"
1285
+ }, [
1286
+ g("stop", {
1287
+ offset: "10%",
1288
+ "stop-color": E(u)(L.value.style.chart.plots.evaluationColors.negative, L.value.style.chart.plots.gradient.intensity / 100)
1289
+ }, null, 8, _t),
1290
+ g("stop", {
1291
+ offset: "90%",
1292
+ "stop-color": E(r)(L.value.style.chart.plots.evaluationColors.negative, .1)
1293
+ }, null, 8, vt),
1294
+ g("stop", {
1295
+ offset: "100%",
1296
+ "stop-color": L.value.style.chart.plots.evaluationColors.negative
1297
+ }, null, 8, yt)
1298
+ ], 8, gt),
1299
+ g("radialGradient", {
1300
+ id: `neutral_grad_${j.value}`,
1301
+ fy: "30%"
1302
+ }, [
1303
+ g("stop", {
1304
+ offset: "10%",
1305
+ "stop-color": E(u)(L.value.style.chart.plots.evaluationColors.neutral, L.value.style.chart.plots.gradient.intensity / 100)
1306
+ }, null, 8, xt),
1307
+ g("stop", {
1308
+ offset: "90%",
1309
+ "stop-color": E(r)(L.value.style.chart.plots.evaluationColors.neutral, .1)
1310
+ }, null, 8, St),
1311
+ g("stop", {
1312
+ offset: "100%",
1313
+ "stop-color": L.value.style.chart.plots.evaluationColors.neutral
1314
+ }, null, 8, Ct)
1315
+ ], 8, bt)
1316
+ ]),
1317
+ (x(!0), h(d, null, C(Y.value, (e, t) => (x(), h("g", { key: `plot_${t}_${e.id}` }, [
1318
+ g("defs", null, [g("linearGradient", {
1319
+ id: `grad_pos_${j.value}`,
1320
+ x1: "0%",
1321
+ x2: "100%",
1322
+ y1: "0%",
1323
+ y2: "0%"
1324
+ }, [g("stop", {
1325
+ offset: "0%",
1326
+ "stop-color": L.value.style.chart.plots.startColor
1327
+ }, null, 8, Tt), g("stop", {
1328
+ offset: "100%",
1329
+ "stop-color": L.value.style.chart.plots.endColor
1330
+ }, null, 8, Et)], 8, wt), g("linearGradient", {
1331
+ id: `grad_neg_${j.value}`,
1332
+ x1: "0%",
1333
+ x2: "100%",
1334
+ y1: "0%",
1335
+ y2: "0%"
1336
+ }, [g("stop", {
1337
+ offset: "0%",
1338
+ "stop-color": L.value.style.chart.plots.endColor
1339
+ }, null, 8, Ot), g("stop", {
1340
+ offset: "100%",
1341
+ "stop-color": L.value.style.chart.plots.startColor
1342
+ }, null, 8, kt)], 8, Dt)]),
1343
+ ![void 0, null].includes(e.end) && ![void 0, null].includes(e.start) ? (x(), h("g", At, [L.value.style.chart.plots.link.type === "curved" ? (x(), h("g", jt, [g("path", {
1344
+ d: `M
1345
+ ${e.startX},${e.y + J.value / 2}
1346
+ C ${e.centerX},${e.y} ${e.centerX},${e.y}
1347
+ ${e.endX},${e.y + J.value / 2}
1348
+ L ${e.endX},${e.y - J.value / 2}
1349
+ C ${e.centerX},${e.y} ${e.centerX},${e.y}
1350
+ ${e.startX},${e.y - J.value / 2}
1351
+ Z
1352
+ `,
1353
+ fill: L.value.style.chart.plots.evaluationColors.enable ? e.evaluationColor : e.endX > e.startX ? `url(#grad_pos_${j.value})` : `url(#grad_neg_${j.value})`
1354
+ }, null, 8, Mt)])) : (x(), h("g", Nt, [g("rect", {
1355
+ x: e.endX > e.startX ? e.startX : e.endX,
1356
+ y: e.y - L.value.style.chart.plots.link.strokeWidth / 2,
1357
+ height: Math.max(.01, L.value.style.chart.plots.link.strokeWidth),
1358
+ width: Math.max(.01, Math.abs(e.endX - e.startX)),
1359
+ fill: L.value.style.chart.plots.evaluationColors.enable ? e.evaluationColor : e.endX > e.startX ? `url(#grad_pos_${j.value})` : `url(#grad_neg_${j.value})`
1360
+ }, null, 8, Pt)]))])) : m("", !0),
1361
+ [null, void 0].includes(e.start) ? m("", !0) : (x(), h("circle", {
1362
+ key: 1,
1363
+ cx: e.startX,
1364
+ cy: e.y,
1365
+ r: J.value,
1366
+ fill: L.value.style.chart.plots.gradient.show ? L.value.style.chart.plots.evaluationColors.enable ? e.evaluationGrad : `url(#start_grad_${j.value})` : L.value.style.chart.plots.evaluationColors.enable ? e.evaluationColor : L.value.style.chart.plots.startColor,
1367
+ stroke: L.value.style.chart.plots.stroke,
1368
+ "stroke-width": L.value.style.chart.plots.strokeWidth
1369
+ }, null, 8, Ft)),
1370
+ [null, void 0].includes(e.end) ? m("", !0) : (x(), h("circle", {
1371
+ key: 2,
1372
+ cx: e.endX,
1373
+ cy: e.y,
1374
+ r: J.value,
1375
+ fill: L.value.style.chart.plots.gradient.show ? L.value.style.chart.plots.evaluationColors.enable ? e.evaluationGrad : `url(#end_grad_${j.value})` : L.value.style.chart.plots.evaluationColors.enable ? e.evaluationColor : L.value.style.chart.plots.endColor,
1376
+ stroke: L.value.style.chart.plots.stroke,
1377
+ "stroke-width": L.value.style.chart.plots.strokeWidth
1378
+ }, null, 8, It))
1379
+ ]))), 128)),
1380
+ L.value.style.chart.labels.startLabels.show ? (x(), h("g", Lt, [(x(!0), h(d, null, C(Y.value, (e, t) => (x(), h("g", { key: `start_label_${t}_${e.id}` }, [[null, void 0].includes(e.start) ? m("", !0) : (x(), h("text", {
1381
+ key: 0,
1382
+ x: e.startX,
1383
+ y: e.y + J.value * 2 + L.value.style.chart.labels.startLabels.fontSize / 2,
1384
+ fill: L.value.style.chart.plots.evaluationColors.enable && L.value.style.chart.labels.startLabels.useEvaluationColor ? e.evaluationColor : L.value.style.chart.labels.startLabels.useStartColor ? L.value.style.chart.plots.startColor : L.value.style.chart.labels.startLabels.color,
1385
+ "font-size": L.value.style.chart.labels.startLabels.fontSize,
1386
+ "text-anchor": "middle"
1387
+ }, T(E(c)(L.value.style.chart.labels.formatter, e.start, E(l)({
1388
+ p: L.value.style.chart.labels.prefix,
1389
+ v: e.start,
1390
+ s: L.value.style.chart.labels.suffix,
1391
+ r: L.value.style.chart.labels.startLabels.rounding
1392
+ }), {
1393
+ datapoint: e,
1394
+ seriesIndex: t
1395
+ })), 9, Rt))]))), 128))])) : m("", !0),
1396
+ L.value.style.chart.labels.endLabels.show ? (x(), h("g", zt, [(x(!0), h(d, null, C(Y.value, (e, t) => (x(), h("g", { key: `end_label_${t}_${e.id}` }, [[null, void 0].includes(e.end) ? m("", !0) : (x(), h("text", {
1397
+ key: 0,
1398
+ x: e.endX,
1399
+ y: e.y - (J.value * 2 - L.value.style.chart.labels.startLabels.fontSize / 3),
1400
+ fill: L.value.style.chart.plots.evaluationColors.enable && L.value.style.chart.labels.endLabels.useEvaluationColor ? e.evaluationColor : L.value.style.chart.labels.endLabels.useEndColor ? L.value.style.chart.plots.endColor : L.value.style.chart.labels.endLabels.color,
1401
+ "font-size": L.value.style.chart.labels.endLabels.fontSize,
1402
+ "text-anchor": "middle"
1403
+ }, T(E(c)(L.value.style.chart.labels.formatter, e.end, E(l)({
1404
+ p: L.value.style.chart.labels.prefix,
1405
+ v: e.end,
1406
+ s: L.value.style.chart.labels.suffix,
1407
+ r: L.value.style.chart.labels.endLabels.rounding
1408
+ }), {
1409
+ datapoint: e,
1410
+ seriesIndex: t
1411
+ })), 9, Bt))]))), 128))])) : m("", !0),
1412
+ g("g", null, [(x(!0), h(d, null, C(Y.value, (e, t) => (x(), h("rect", {
1413
+ x: q.value.left,
1414
+ y: q.value.top + t * Math.max(.1, q.value.rowHeight),
1415
+ width: Math.max(.1, q.value.width),
1416
+ height: Math.max(.1, q.value.rowHeight),
1417
+ fill: N.value === null ? "transparent" : N.value === t ? E(n)(L.value.style.chart.highlighter.color, L.value.style.chart.highlighter.opacity) : "transparent",
1418
+ onMouseenter: (n) => lr({
1419
+ datapoint: e,
1420
+ seriesIndex: t
1421
+ }),
1422
+ onMouseleave: (n) => ur({
1423
+ datapoint: e,
1424
+ seriesIndex: t
1425
+ }),
1426
+ onClick: (n) => dr({
1427
+ datapoint: e,
1428
+ seriesIndex: t
1429
+ })
1430
+ }, null, 40, Vt))), 256))]),
1431
+ w(e.$slots, "svg", { svg: {
1432
+ ...q.value,
1433
+ isPrintingImg: E(Fn) || E(In) || vn.value,
1434
+ isPrintingSvg: yn.value
1435
+ } }, void 0, !0)
1436
+ ], 46, He)), e.$slots.hint ? (x(), h("div", Ht, [w(e.$slots, "hint", y(v({
1437
+ hint: L.value.a11y.translations.keyboardNavigation,
1438
+ isVisible: wn.value
1439
+ })), void 0, !0)])) : m("", !0)]),
1440
+ e.$slots.watermark ? (x(), h("div", Ut, [w(e.$slots, "watermark", y(v({ isPrinting: E(Fn) || E(In) || vn.value || yn.value })), void 0, !0)])) : m("", !0),
1441
+ g("div", { id: `legend-bottom-${j.value}` }, null, 8, Wt),
1442
+ hn.value && (L.value.style.chart.legend.show || e.$slots.legend) ? (x(), p(Ce, {
1443
+ key: 6,
1444
+ to: L.value.style.chart.legend.position === "top" ? `#legend-top-${j.value}` : `#legend-bottom-${j.value}`
1445
+ }, [g("div", {
1446
+ ref_key: "chartLegend",
1447
+ ref: ln
1448
+ }, [w(e.$slots, "legend", { legend: Xn.value }, () => [L.value.style.chart.legend.show && on.value ? (x(), p(xe, {
1449
+ key: `legend_${mn.value}`,
1450
+ legendSet: Xn.value,
1451
+ config: Zn.value,
1452
+ clickable: !1
1453
+ }, {
1454
+ item: O(({ legend: e }) => [g("div", { style: b(`display:flex;align-items:center;gap:4px;font-size:${L.value.style.chart.legend.fontSize}px`) }, [(x(), h("svg", {
1455
+ xmlns: E(ne),
1456
+ viewBox: "0 0 20 20",
1457
+ height: L.value.style.chart.legend.fontSize,
1458
+ width: L.value.style.chart.legend.fontSize
1459
+ }, [g("circle", {
1460
+ cx: 10,
1461
+ cy: 10,
1462
+ r: 9,
1463
+ fill: e.color
1464
+ }, null, 8, Kt)], 8, Gt)), E(En) ? m("", !0) : (x(), h(d, { key: 0 }, [Te(T(e.name), 1)], 64))], 4)]),
1465
+ _: 1
1466
+ }, 8, ["legendSet", "config"])) : m("", !0)], !0)], 512)], 8, ["to"])) : m("", !0),
1467
+ e.$slots.source ? (x(), h("div", {
1468
+ key: 7,
1469
+ ref_key: "source",
1470
+ ref: un,
1471
+ dir: "auto"
1472
+ }, [w(e.$slots, "source", {}, void 0, !0)], 512)) : m("", !0),
1473
+ on.value && L.value.userOptions.buttons.table ? (x(), p(Me(mr.value.component), De({ key: 8 }, mr.value.props, {
1474
+ ref_key: "tableUnit",
1475
+ ref: gn,
1476
+ onClose: hr
1477
+ }), we({
1478
+ content: O(() => [(x(), p(E(Xt), {
1479
+ key: `table_${pn.value}`,
1480
+ colNames: Q.value.colNames,
1481
+ head: Q.value.head,
1482
+ body: Q.value.body,
1483
+ config: Q.value.config,
1484
+ title: L.value.table.useDialog ? "" : mr.value.title,
1485
+ withCloseButton: !L.value.table.useDialog,
1486
+ isCursorPointer: R.value,
1487
+ onClose: hr
1488
+ }, {
1489
+ th: O(({ th: e }) => [g("div", {
1490
+ innerHTML: e,
1491
+ style: {
1492
+ display: "flex",
1493
+ "align-items": "center"
1494
+ }
1495
+ }, null, 8, qt)]),
1496
+ td: O(({ td: e }) => [Te(T(e.name || e), 1)]),
1497
+ _: 1
1498
+ }, 8, [
1499
+ "colNames",
1500
+ "head",
1501
+ "body",
1502
+ "config",
1503
+ "title",
1504
+ "withCloseButton",
1505
+ "isCursorPointer"
1506
+ ]))]),
1507
+ _: 2
1508
+ }, [L.value.table.useDialog ? {
1509
+ name: "title",
1510
+ fn: O(() => [Te(T(mr.value.title), 1)]),
1511
+ key: "0"
1512
+ } : void 0, L.value.table.useDialog ? {
1513
+ name: "actions",
1514
+ fn: O(() => [g("button", {
1515
+ tabindex: "0",
1516
+ class: "vue-ui-user-options-button",
1517
+ onClick: t[0] ||= (e) => Qn(L.value.userOptions.callbacks.csv),
1518
+ style: b({ cursor: R.value ? "pointer" : "default" })
1519
+ }, [Ee(E(Jt), {
1520
+ name: "fileCsv",
1521
+ stroke: mr.value.props.color
1522
+ }, null, 8, ["stroke"])], 4)]),
1523
+ key: "1"
1524
+ } : void 0]), 1040)) : m("", !0),
1525
+ w(e.$slots, "skeleton", {}, () => [E(En) ? (x(), p(ce, { key: 0 })) : m("", !0)], !0)
1526
+ ], 46, Re));
1527
+ }
1528
+ }, [["__scopeId", "data-v-2898a824"]]);
1529
+ //#endregion
1530
+ export { Le as n, Jt as t };