vue-data-ui 3.22.0 → 3.22.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/dist/{Arrow-_pDGXl76.js → Arrow-BGhJI-qh.js} +1 -1
  2. package/dist/{BaseDraggableDialog-O8jn9Lvi.js → BaseDraggableDialog-a9xCKjW-.js} +2 -2
  3. package/dist/{BaseIcon-CWXbczu_.js → BaseIcon-DEtwcvEH.js} +1 -1
  4. package/dist/{BaseLegendToggle-CUYal8mC.js → BaseLegendToggle-B-lM0iV1.js} +1 -1
  5. package/dist/{BaseZoomControls-JwSGzoKi.js → BaseZoomControls-BjjT6vtB.js} +2 -2
  6. package/dist/{ColorPicker-CCqmzGGo.js → ColorPicker-DMLahA2S.js} +2 -2
  7. package/dist/{DataTable-G9aclxhk.js → DataTable-DJZgdnIn.js} +2 -2
  8. package/dist/{Legend-CAStwHdx.js → Legend-BVDhEEsC.js} +2 -2
  9. package/dist/{NonSvgPenAndPaper-BLy8zMox.js → NonSvgPenAndPaper-Dwq_M6Bz.js} +13 -13
  10. package/dist/{PackageVersion-DxBQctV8.js → PackageVersion-Dx81ZIAL.js} +1 -1
  11. package/dist/{PenAndPaper-z1woaB1V.js → PenAndPaper-DJIIG6dv.js} +13 -13
  12. package/dist/{Shape-BubavoqO.js → Shape-C5OvuwII.js} +1 -1
  13. package/dist/{Slicer-JCOpjPU7.js → Slicer-ClR833cP.js} +2 -2
  14. package/dist/{SlicerPreview-BA_RDgVn.js → SlicerPreview-CAhqG_ZQ.js} +12 -12
  15. package/dist/{SparkTooltip-DMFXQmFi.js → SparkTooltip-DTzo8Sah.js} +6 -6
  16. package/dist/{Title-DH6G8_cZ.js → Title-CVYf1f8m.js} +1 -1
  17. package/dist/{Tooltip-979Ytd8R.js → Tooltip-BmGCBJuU.js} +1 -1
  18. package/dist/{UserOptions-rx9hUnOy.js → UserOptions-xqbNpHi2.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-CtV3uxDJ.js → dom-to-png-rjAIVHxa.js} +1 -1
  89. package/dist/exposedLib-CffbQxjN.js +19 -0
  90. package/dist/{img-C_RNNswI.js → img-BCAOkqfM.js} +1 -1
  91. package/dist/{labelUtils-Bycs-017.js → labelUtils-C0D1tjig.js} +1 -1
  92. package/dist/{lib-AJRHFE5U.js → lib-CXicicWN.js} +155 -126
  93. package/dist/{package-0oRlvBuX.js → package-CILLITOI.js} +1 -1
  94. package/dist/{pdf-CdX23zf1.js → pdf-ChYv2jb6.js} +1 -1
  95. package/dist/{render-common-DSiH7qj-.js → render-common-bMAFQ_qf.js} +2 -2
  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 +7 -10
  101. package/dist/{useAutoSizeLabelsInsideViewbox-kjVKQz36.js → useAutoSizeLabelsInsideViewbox-B4-0yo3K.js} +1 -1
  102. package/dist/{useConfig-Br1uzq_L.js → useConfig-Bf_EBbe3.js} +4 -1
  103. package/dist/{useNestedProp-DtcXIg7n.js → useNestedProp-APyFoLCQ.js} +1 -1
  104. package/dist/{useObjectBindings-CxQ6A5pi.js → useObjectBindings-Byts-nf-.js} +1 -1
  105. package/dist/{usePrinter-6n2MzVyV.js → usePrinter-Dng0UK-G.js} +2 -2
  106. package/dist/utils.js +3 -3
  107. package/dist/{vue-data-ui-DoViN_4r.js → vue-data-ui-DD-txoS1.js} +68 -68
  108. package/dist/vue-data-ui.js +72 -72
  109. package/dist/vue-ui-3d-bar-DxfNdF2e.js +1757 -0
  110. package/dist/{vue-ui-accordion-HvsT8_RM.js → vue-ui-accordion-Di_givzQ.js} +4 -4
  111. package/dist/vue-ui-age-pyramid-CTwMfsqS.js +1238 -0
  112. package/dist/{vue-ui-annotator-7s5ly6XJ.js → vue-ui-annotator-tRkLFMQ9.js} +60 -60
  113. package/dist/{vue-ui-bullet-B-bWGz6d.js → vue-ui-bullet-9gtGJaGb.js} +23 -23
  114. package/dist/{vue-ui-bump-DM-hF-AK.js → vue-ui-bump-BJ5O8Mps.js} +400 -400
  115. package/dist/{vue-ui-candlestick-BfOvntqR.js → vue-ui-candlestick-CJ_VVYbJ.js} +50 -50
  116. package/dist/vue-ui-carousel-table-8s8BSy-K.js +455 -0
  117. package/dist/vue-ui-chestnut-D3-ck2h2.js +2010 -0
  118. package/dist/vue-ui-chord-1BitQtEw.js +1391 -0
  119. package/dist/{vue-ui-circle-pack-BBaRLELd.js → vue-ui-circle-pack-DVMhDFKU.js} +44 -44
  120. package/dist/{vue-ui-cursor-DWlKtcab.js → vue-ui-cursor-D7yh10hX.js} +61 -61
  121. package/dist/{vue-ui-dag-BAKU4jBj.js → vue-ui-dag--LFEAAf_.js} +18 -18
  122. package/dist/{vue-ui-dashboard-DE4R55nU.js → vue-ui-dashboard-COeO878g.js} +70 -70
  123. package/dist/{vue-ui-digits-B416Mj46.js → vue-ui-digits-C50FVr7C.js} +4 -4
  124. package/dist/{vue-ui-donut-BuGSF4pM.js → vue-ui-donut-BzKXqQA2.js} +160 -160
  125. package/dist/{vue-ui-donut-BugVAUHv.js → vue-ui-donut-NHjQzFO5.js} +474 -474
  126. package/dist/vue-ui-donut-evolution-lPkwit2C.js +1510 -0
  127. package/dist/vue-ui-dumbbell-hlEfvbbf.js +1530 -0
  128. package/dist/{vue-ui-flow-BoEP6hmg.js → vue-ui-flow-Bg_OSszc.js} +43 -43
  129. package/dist/vue-ui-funnel-B_bK0jJB.js +777 -0
  130. package/dist/{vue-ui-galaxy-CB5F8Q-u.js → vue-ui-galaxy-WVCUzcYc.js} +301 -301
  131. package/dist/vue-ui-gauge-Cqeko0wA.js +920 -0
  132. package/dist/{vue-ui-geo-BAy4kNv-.js → vue-ui-geo-DtzXRvmx.js} +22 -22
  133. package/dist/{vue-ui-gizmo-DjA8cqcl.js → vue-ui-gizmo-hIFd7qck.js} +4 -4
  134. package/dist/{vue-ui-heatmap-CMlxUI7Q.js → vue-ui-heatmap-yPlwc3l_.js} +95 -95
  135. package/dist/vue-ui-history-plot-BGmcDg2w.js +1554 -0
  136. package/dist/{vue-ui-horizontal-bar-XgzEVwOK.js → vue-ui-horizontal-bar-CJciNHpT.js} +264 -264
  137. package/dist/{vue-ui-kpi-B5Lu5U1S.js → vue-ui-kpi-DmSe1QGb.js} +4 -4
  138. package/dist/{vue-ui-mini-loader-CyYpLcrt.js → vue-ui-mini-loader-CqxI6DwN.js} +3 -3
  139. package/dist/{vue-ui-molecule-DzpgAmZn.js → vue-ui-molecule-w-94Uktn.js} +181 -181
  140. package/dist/{vue-ui-mood-radar-DMgYQtOw.js → vue-ui-mood-radar-B3OGWGHR.js} +29 -29
  141. package/dist/{vue-ui-nested-donuts-BHX0QqvR.js → vue-ui-nested-donuts-Dv_yE5EV.js} +211 -211
  142. package/dist/{vue-ui-onion-CYh7tdS0.js → vue-ui-onion-BQbI0Vxd.js} +34 -34
  143. package/dist/{vue-ui-parallel-coordinate-plot-BTaG92hV.js → vue-ui-parallel-coordinate-plot-ColST3Jj.js} +40 -40
  144. package/dist/vue-ui-quadrant-BB7qdXK0.js +1978 -0
  145. package/dist/{vue-ui-quick-chart-CHSUGLTx.js → vue-ui-quick-chart-CGDeo3Fx.js} +358 -358
  146. package/dist/vue-ui-radar-DqDn14DL.js +1281 -0
  147. package/dist/{vue-ui-rating-BoBLJm55.js → vue-ui-rating-ChDwpol2.js} +34 -34
  148. package/dist/vue-ui-relation-circle-BvfZqcK0.js +924 -0
  149. package/dist/{vue-ui-ridgeline-q_UhtM4M.js → vue-ui-ridgeline-Cq8z57xB.js} +219 -219
  150. package/dist/{vue-ui-rings-VOjUZu2b.js → vue-ui-rings-Ds-sgNPK.js} +36 -36
  151. package/dist/{vue-ui-scatter-DETMofE2.js → vue-ui-scatter-BgOVUzQ3.js} +75 -75
  152. package/dist/{vue-ui-skeleton-D36VILNm.js → vue-ui-skeleton-DJ5KAbfV.js} +42 -42
  153. package/dist/{vue-ui-smiley-CPbUSUTQ.js → vue-ui-smiley-fFrNX-Gl.js} +17 -17
  154. package/dist/{vue-ui-spark-trend-XpEbgNeK.js → vue-ui-spark-trend-D6OBWxmg.js} +92 -92
  155. package/dist/{vue-ui-sparkbar-Dq1hnBhL.js → vue-ui-sparkbar-CtCP8O44.js} +78 -78
  156. package/dist/{vue-ui-sparkgauge-CbAakuhB.js → vue-ui-sparkgauge-CZDkyViI.js} +38 -38
  157. package/dist/vue-ui-sparkhistogram-DgruLf33.js +560 -0
  158. package/dist/vue-ui-sparkline-CJKE7Xcl.js +1547 -0
  159. package/dist/{vue-ui-sparkstackbar-OprYrGQQ.js → vue-ui-sparkstackbar-BSV0M-2u.js} +162 -162
  160. package/dist/{vue-ui-stackbar-Bt0FKlf7.js → vue-ui-stackbar-pnlYCnTj.js} +67 -67
  161. package/dist/vue-ui-stackline-DS_MPmc1.js +2398 -0
  162. package/dist/{vue-ui-strip-plot-DdzflSOm.js → vue-ui-strip-plot-DSKOrJZX.js} +49 -49
  163. package/dist/{vue-ui-table-BZbLau0d.js → vue-ui-table-c1FPEwLM.js} +87 -87
  164. package/dist/{vue-ui-table-heatmap-DX80uRHe.js → vue-ui-table-heatmap-CMQJXnP8.js} +17 -17
  165. package/dist/vue-ui-table-sparkline-CAS9Pk60.js +712 -0
  166. package/dist/vue-ui-thermometer-w3eeJv9s.js +763 -0
  167. package/dist/{vue-ui-timer-smc39MBP.js → vue-ui-timer-CSP48eS-.js} +6 -6
  168. package/dist/{vue-ui-tiremarks-MwPUc9H4.js → vue-ui-tiremarks-DJvXj1P3.js} +19 -19
  169. package/dist/vue-ui-treemap-BaOMXTR1.js +1587 -0
  170. package/dist/vue-ui-waffle-Bo22Ph8n.js +1362 -0
  171. package/dist/{vue-ui-wheel-VQ5Sc_Kt.js → vue-ui-wheel-CbL52G-w.js} +51 -51
  172. package/dist/vue-ui-word-cloud-BqOCyp7c.js +1723 -0
  173. package/dist/{vue-ui-world-Dq9I3omC.js → vue-ui-world-BkjzCcVh.js} +445 -445
  174. package/dist/{vue-ui-xy-BRITAMZZ.js → vue-ui-xy-CVDNhnDY.js} +162 -162
  175. package/dist/{vue-ui-xy-D4D9tjiY.js → vue-ui-xy-DuwLRfr4.js} +537 -534
  176. package/dist/{vue-ui-xy-canvas-CYQF5hVa.js → vue-ui-xy-canvas-CXqGVMeQ.js} +65 -65
  177. package/package.json +2 -2
  178. package/dist/exposedLib-BJbE_A8E.js +0 -19
  179. package/dist/vue-ui-3d-bar-BUEcrSrc.js +0 -1757
  180. package/dist/vue-ui-age-pyramid-Zw5otO78.js +0 -1238
  181. package/dist/vue-ui-carousel-table-CrmVyfym.js +0 -455
  182. package/dist/vue-ui-chestnut-BQq65pNh.js +0 -2010
  183. package/dist/vue-ui-chord-BA2jFRMP.js +0 -1391
  184. package/dist/vue-ui-donut-evolution-C6fXP7QH.js +0 -1510
  185. package/dist/vue-ui-dumbbell-1K5kOirf.js +0 -1530
  186. package/dist/vue-ui-funnel-CheSqvyj.js +0 -777
  187. package/dist/vue-ui-gauge-Cjtovl1s.js +0 -920
  188. package/dist/vue-ui-history-plot-PkrNUPpp.js +0 -1554
  189. package/dist/vue-ui-quadrant-C00cEk5o.js +0 -1978
  190. package/dist/vue-ui-radar-jNxRTIur.js +0 -1281
  191. package/dist/vue-ui-relation-circle-Ne_rI2jS.js +0 -924
  192. package/dist/vue-ui-sparkhistogram-DpPjIA7n.js +0 -560
  193. package/dist/vue-ui-sparkline-DLay6Hog.js +0 -1513
  194. package/dist/vue-ui-stackline-CrUTz-k1.js +0 -2398
  195. package/dist/vue-ui-table-sparkline-C3_J575b.js +0 -707
  196. package/dist/vue-ui-thermometer-Bo32hwAO.js +0 -763
  197. package/dist/vue-ui-treemap-BNG7Zc04.js +0 -1587
  198. package/dist/vue-ui-waffle-D-9Ny9vN.js +0 -1362
  199. package/dist/vue-ui-word-cloud-BqsUdsCY.js +0 -1656
@@ -0,0 +1,2398 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { Bt as t, Ct as n, D as r, Et as i, Ft as a, G as o, H as s, I as c, J as l, P as u, S as d, Ut as f, Vt as p, X as m, _t as h, ct as g, g as _, gt as ee, h as v, i as y, it as te, k as ne, kt as re, nt as ie, s as ae, t as oe, v as se, x as ce, y as le, zt as ue } from "./lib-CXicicWN.js";
3
+ import { n as de, r as fe, t as pe } from "./useTimeLabels-BmBRv27Y.js";
4
+ import { t as me } from "./useConfig-Bf_EBbe3.js";
5
+ import { t as he } from "./usePrinter-Dng0UK-G.js";
6
+ import { n as ge, t as _e } from "./BaseScanner-DZvpgOjM.js";
7
+ import { t as ve } from "./useSvgExport-SVIsDot8.js";
8
+ import { t as ye } from "./useNestedProp-APyFoLCQ.js";
9
+ import { t as be } from "./useThemeCheck-C43Tcqmk.js";
10
+ import { t as xe } from "./useStableElementSize-C7KADDKj.js";
11
+ import { t as Se } from "./useTimeLabelCollider-AEcY4Ioe.js";
12
+ import { t as Ce } from "./img-BCAOkqfM.js";
13
+ import { n as we } from "./Title-CVYf1f8m.js";
14
+ import { t as Te } from "./Shape-C5OvuwII.js";
15
+ import { t as Ee } from "./_plugin-vue_export-helper-B3ysoDQm.js";
16
+ import { c as De } from "./canvas-lib-BOP_HS11.js";
17
+ import { t as Oe } from "./useResponsive-BfnK0KxU.js";
18
+ import { t as ke } from "./SlicerPreview-CAhqG_ZQ.js";
19
+ import { t as Ae } from "./BaseLegendToggle-B-lM0iV1.js";
20
+ import { t as je } from "./A11yDataTable-DdRsVULz.js";
21
+ import { t as Me } from "./useUserOptionState-DK-_1ddE.js";
22
+ import { t as Ne } from "./useChartAccessibility-DYqac8yF.js";
23
+ import { t as Pe } from "./Legend-BVDhEEsC.js";
24
+ import { t as Fe } from "./vue_ui_stackline-DQqKPA9z.js";
25
+ import { Fragment as b, Teleport as Ie, computed as x, createBlock as S, createCommentVNode as C, createElementBlock as w, createElementVNode as T, createSlots as Le, createTextVNode as Re, createVNode as ze, defineAsyncComponent as Be, guardReactiveProps as E, mergeProps as Ve, nextTick as He, normalizeClass as Ue, normalizeProps as D, normalizeStyle as We, onBeforeUnmount as Ge, onMounted as Ke, openBlock as O, ref as k, renderList as A, renderSlot as j, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as M, toRefs as Ye, unref as N, useSlots as Xe, watch as Ze, watchEffect as Qe, withCtx as P } from "vue";
26
+ //#region src/components/vue-ui-stackline.vue
27
+ var $e = /* @__PURE__ */ e({ default: () => zt }), et = ["id"], tt = ["id"], nt = ["id"], rt = { style: { position: "relative" } }, it = [
28
+ "aria-describedby",
29
+ "xmlns",
30
+ "viewBox"
31
+ ], at = { key: 0 }, ot = [
32
+ "x",
33
+ "y",
34
+ "width",
35
+ "height"
36
+ ], st = { key: 1 }, ct = ["id"], lt = ["stop-color"], ut = ["stop-color"], dt = [
37
+ "x1",
38
+ "x2",
39
+ "y1",
40
+ "y2",
41
+ "stroke",
42
+ "stroke-width",
43
+ "stroke-dasharray"
44
+ ], ft = [
45
+ "x1",
46
+ "x2",
47
+ "y1",
48
+ "y2",
49
+ "stroke",
50
+ "stroke-width",
51
+ "stroke-dasharray"
52
+ ], pt = [
53
+ "x1",
54
+ "x2",
55
+ "y1",
56
+ "y2",
57
+ "stroke",
58
+ "stroke-width"
59
+ ], mt = [
60
+ "x1",
61
+ "x2",
62
+ "y1",
63
+ "y2",
64
+ "stroke",
65
+ "stroke-width"
66
+ ], ht = [
67
+ "x",
68
+ "y",
69
+ "font-size",
70
+ "fill",
71
+ "font-weight"
72
+ ], gt = [
73
+ "transform",
74
+ "font-size",
75
+ "fill",
76
+ "font-weight"
77
+ ], _t = [
78
+ "x",
79
+ "y",
80
+ "width",
81
+ "height",
82
+ "stroke",
83
+ "stroke-width",
84
+ "stroke-linecap",
85
+ "stroke-linejoin",
86
+ "stroke-dasharray"
87
+ ], vt = [
88
+ "d",
89
+ "fill",
90
+ "opacity"
91
+ ], yt = [
92
+ "d",
93
+ "stroke",
94
+ "stroke-width"
95
+ ], bt = [
96
+ "x1",
97
+ "x2",
98
+ "y1",
99
+ "y2",
100
+ "stroke"
101
+ ], xt = [
102
+ "x",
103
+ "y",
104
+ "font-size",
105
+ "font-weight",
106
+ "fill",
107
+ "text-anchor"
108
+ ], St = { key: 0 }, Ct = { key: 1 }, wt = [
109
+ "text-anchor",
110
+ "font-size",
111
+ "font-weight",
112
+ "fill",
113
+ "transform",
114
+ "onClick"
115
+ ], Tt = [
116
+ "text-anchor",
117
+ "font-size",
118
+ "fill",
119
+ "transform",
120
+ "innerHTML",
121
+ "onClick"
122
+ ], Et = [
123
+ "x",
124
+ "y",
125
+ "height",
126
+ "width",
127
+ "fill"
128
+ ], Dt = { key: 0 }, Ot = [
129
+ "x1",
130
+ "x2",
131
+ "y1",
132
+ "y2",
133
+ "stroke",
134
+ "stroke-width",
135
+ "stroke-dasharray"
136
+ ], kt = { key: 0 }, At = [
137
+ "x",
138
+ "y",
139
+ "font-size",
140
+ "fill",
141
+ "font-weight"
142
+ ], jt = [
143
+ "x",
144
+ "y",
145
+ "font-size",
146
+ "font-weight",
147
+ "fill"
148
+ ], Mt = ["data-start", "data-end"], Nt = {
149
+ key: 0,
150
+ style: {
151
+ position: "absolute",
152
+ top: "100%",
153
+ left: "0",
154
+ width: "100%"
155
+ },
156
+ "data-dom-to-png-ignore": "",
157
+ "aria-hidden": "true"
158
+ }, Pt = {
159
+ key: 5,
160
+ class: "vue-data-ui-watermark"
161
+ }, Ft = ["onClick"], It = ["innerHTML"], Lt = ["innerHTML"], Rt = ["id"], zt = /*#__PURE__*/ Ee({
162
+ __name: "vue-ui-stackline",
163
+ props: {
164
+ config: {
165
+ type: Object,
166
+ default() {
167
+ return {};
168
+ }
169
+ },
170
+ dataset: {
171
+ type: Array,
172
+ default() {
173
+ return [];
174
+ }
175
+ },
176
+ selectedXIndex: {
177
+ type: Number,
178
+ default: void 0
179
+ }
180
+ },
181
+ emits: [
182
+ "selectDatapoint",
183
+ "selectLegend",
184
+ "selectTimeLabel",
185
+ "selectX",
186
+ "copyAlt"
187
+ ],
188
+ setup(e, { expose: Ee, emit: $e }) {
189
+ let zt = Be(() => import("./Tooltip-BmGCBJuU.js")), Bt = Be(() => import("./BaseIcon-DEtwcvEH.js").then((e) => e.n)), Vt = Be(() => import("./vue-ui-accordion-Di_givzQ.js").then((e) => e.n)), Ht = Be(() => import("./DataTable-DJZgdnIn.js")), Ut = Be(() => import("./PenAndPaper-DJIIG6dv.js").then((e) => e.t)), Wt = Be(() => import("./UserOptions-xqbNpHi2.js").then((e) => e.n)), Gt = Be(() => import("./PackageVersion-Dx81ZIAL.js").then((e) => e.t)), Kt = Be(() => import("./BaseDraggableDialog-a9xCKjW-.js").then((e) => e.n)), { vue_ui_stackline: qt } = me(), { isThemeValid: Jt, warnInvalidTheme: Yt } = be(), Xt = Xe(), F = e, I = $e, Zt = x({
190
+ get() {
191
+ return !!F.dataset && F.dataset.length;
192
+ },
193
+ set(e) {
194
+ return e;
195
+ }
196
+ }), L = k(null), R = k(s()), Qt = k(!1), z = k([]), $t = k(0), en = k(null), tn = k(null), nn = k(null), rn = k(null), an = k(null), on = k(!1), sn = k(!1), cn = k(0), ln = k(0), un = k(0), dn = k(!1), fn = k(null), pn = k(null), mn = k(!1), hn = k(!1), gn = k(!1), _n = k(null), vn = k(null), yn = k(null), bn = k(null), xn = k(null), Sn = Je(null), Cn = k(!1), wn = k(0), Tn = k(0), En = k(null), Dn = k({
197
+ x: 0,
198
+ y: 0
199
+ }), On = k("pointer"), kn = xe({
200
+ elementRef: Sn,
201
+ minimumWidth: 2,
202
+ minimumHeight: 2,
203
+ stableFramesRequired: 2,
204
+ once: !1,
205
+ onSizeAccepted: () => {
206
+ Mn();
207
+ }
208
+ });
209
+ function An() {
210
+ Sn.value = L.value?.parentNode ?? null;
211
+ }
212
+ function jn() {
213
+ return new Promise((e) => {
214
+ requestAnimationFrame(() => {
215
+ requestAnimationFrame(e);
216
+ });
217
+ });
218
+ }
219
+ async function Mn() {
220
+ let e = ++Tn.value;
221
+ Cn.value = !1, await He(), await jn(), await jn(), e === Tn.value && (wn.value += 1, Cn.value = !0);
222
+ }
223
+ let Nn = k(null), Pn = k(!1);
224
+ function Fn() {
225
+ Pn.value = !Pn.value;
226
+ }
227
+ Ke(() => {
228
+ An(), kn.start(), dn.value = !0, ar(), Mn();
229
+ });
230
+ let B = k(Kn()), In = x(() => B.value.userOptions.useCursorPointer), Ln = x(() => f({
231
+ defaultConfig: {
232
+ userOptions: { show: !1 },
233
+ useCssAnimation: !1,
234
+ table: { show: !1 },
235
+ tooltip: { show: !1 },
236
+ style: { chart: {
237
+ backgroundColor: "#99999930",
238
+ lines: {
239
+ totalValues: { show: !1 },
240
+ dataLabels: { show: !1 }
241
+ },
242
+ grid: {
243
+ frame: { stroke: "#6A6A6A" },
244
+ scale: {
245
+ scaleMin: 0,
246
+ scaleMax: 144
247
+ },
248
+ x: {
249
+ axisColor: "#6A6A6A",
250
+ linesColor: "#6A6A6A",
251
+ axisName: { show: !1 },
252
+ timeLabels: { show: !1 }
253
+ },
254
+ y: {
255
+ axisColor: "#6A6A6A",
256
+ linesColor: "#6A6A6A",
257
+ axisName: { show: !1 },
258
+ axisLabels: { show: !1 }
259
+ }
260
+ },
261
+ legend: { backgroundColor: "transparent" },
262
+ padding: {
263
+ left: 24,
264
+ right: 24,
265
+ bottom: 12
266
+ },
267
+ zoom: {
268
+ show: !1,
269
+ startIndex: null,
270
+ endIndex: null,
271
+ keepState: !1
272
+ }
273
+ } }
274
+ },
275
+ userConfig: B.value.skeletonConfig ?? {}
276
+ })), { loading: Rn, FINAL_DATASET: zn, manualLoading: Bn } = ge({
277
+ ...Ye(F),
278
+ FINAL_CONFIG: B,
279
+ prepareConfig: Kn,
280
+ callback: () => {
281
+ Promise.resolve().then(async () => {
282
+ (!B.value.style.chart.zoom.keepState || !Zr.value || q.value.start === 0 && q.value.end === 0) && await $r();
283
+ });
284
+ },
285
+ skeletonDataset: F.config?.skeletonDataset ?? [{
286
+ name: "",
287
+ series: [
288
+ 3,
289
+ 2,
290
+ 1,
291
+ 5,
292
+ 13,
293
+ 21,
294
+ 8,
295
+ 89,
296
+ 34,
297
+ 55
298
+ ],
299
+ color: "#8A8A8A"
300
+ }, {
301
+ name: "",
302
+ series: [
303
+ 1,
304
+ 2,
305
+ 3,
306
+ 5,
307
+ 8,
308
+ 13,
309
+ 21,
310
+ 34,
311
+ 55,
312
+ 89
313
+ ],
314
+ color: "#CACACA"
315
+ }],
316
+ skeletonConfig: f({
317
+ defaultConfig: B.value,
318
+ userConfig: Ln.value
319
+ })
320
+ }), { userOptionsVisible: Vn, setUserOptionsVisibility: Hn, keepUserOptionState: Un } = Me({ config: B.value }), { svgRef: V } = Ne({ config: B.value.style.chart.title });
321
+ function Wn() {
322
+ mn.value = !0, Hn(!0);
323
+ }
324
+ function Gn() {
325
+ Hn(!1), mn.value = !1, En.value = null, On.value = "pointer", Qt.value = !1, $.value = null, I("selectX", {
326
+ index: null,
327
+ indexLabel: null,
328
+ dataset: null
329
+ });
330
+ }
331
+ function Kn() {
332
+ let e = ye({
333
+ userConfig: F.config,
334
+ defaultConfig: qt
335
+ }), t = {}, n = e.theme;
336
+ if (n) if (!Jt.value(e)) Yt(e), t = e;
337
+ else {
338
+ let r = ye({
339
+ userConfig: Fe[n] || F.config,
340
+ defaultConfig: e
341
+ });
342
+ t = {
343
+ ...ye({
344
+ userConfig: F.config,
345
+ defaultConfig: r
346
+ }),
347
+ customPalette: e.customPalette.length ? e.customPalette : p[n] || re
348
+ };
349
+ }
350
+ else t = e;
351
+ return t;
352
+ }
353
+ let qn = x(() => B.value.style.chart.lines.dataLabels.hideUnderValue !== null), Jn = x(() => B.value.style.chart.lines.dataLabels.hideUnderPercentage !== null);
354
+ Ze(() => F.config, (e) => {
355
+ Rn.value || (B.value = Kn()), Vn.value = !B.value.userOptions.showOnChartHover, ar({ resetSlicer: !B.value.style.chart.zoom.keepState }), cn.value += 1, ln.value += 1, un.value += 1, H.value.dataLabels.show = B.value.style.chart.lines.dataLabels.show, H.value.showTable = B.value.table.show, H.value.showTooltip = B.value.style.chart.tooltip.show, U.value.width = B.value.style.chart.width, U.value.height = B.value.style.chart.height, U.value.paddingRatio = {
356
+ top: B.value.style.chart.padding.top / B.value.style.chart.height,
357
+ right: B.value.style.chart.padding.right / B.value.style.chart.width,
358
+ bottom: B.value.style.chart.padding.bottom / B.value.style.chart.height,
359
+ left: B.value.style.chart.padding.left / B.value.style.chart.width
360
+ }, An(), Mn(), !B.value.style.chart.zoom.keepState || !Zr.value || q.value.start === 0 && q.value.end === 0 ? $r() : xr();
361
+ }, { deep: !0 }), Ze(() => F.dataset, (e) => {
362
+ Array.isArray(e) && e.length > 0 && (Bn.value = !1), B.value.style.chart.zoom.keepState ? xr() : wr(), An(), Mn();
363
+ }, { deep: !0 });
364
+ let H = k({
365
+ dataLabels: { show: B.value.style.chart.lines.dataLabels.show },
366
+ showTable: B.value.table.show,
367
+ showTooltip: B.value.style.chart.tooltip.show
368
+ });
369
+ Ze(B, () => {
370
+ H.value = {
371
+ dataLabels: { show: B.value.style.chart.lines.dataLabels.show },
372
+ showTable: B.value.table.show,
373
+ showTooltip: B.value.style.chart.tooltip.show
374
+ };
375
+ }, { immediate: !0 });
376
+ let { isPrinting: Yn, isImaging: Xn, generatePdf: Zn, generateImage: Qn } = he({
377
+ elementId: `stackline_${R.value}`,
378
+ fileName: B.value.style.chart.title.text || "vue-ui-stackline",
379
+ options: B.value.userOptions.print
380
+ }), $n = x(() => B.value.userOptions.show && !B.value.style.chart.title.text), U = k({
381
+ width: B.value.style.chart.width,
382
+ height: B.value.style.chart.height,
383
+ paddingRatio: {
384
+ top: B.value.style.chart.padding.top / B.value.style.chart.height,
385
+ right: B.value.style.chart.padding.right / B.value.style.chart.width,
386
+ bottom: B.value.style.chart.padding.bottom / B.value.style.chart.height,
387
+ left: B.value.style.chart.padding.left / B.value.style.chart.width
388
+ }
389
+ }), er = x(() => ce(B.value.customPalette)), tr = Je(null), nr = Je(null), rr = k(null), ir = x(() => !!B.value.debug);
390
+ function ar({ resetSlicer: e = !0 } = {}) {
391
+ if (i(F.dataset) ? (m({
392
+ componentName: "VueUiStackline",
393
+ type: "dataset",
394
+ debug: ir.value
395
+ }), Bn.value = !0) : F.dataset.forEach((e, t) => {
396
+ g({
397
+ datasetObject: e,
398
+ requiredAttributes: ["name", "series"]
399
+ }).forEach((e) => {
400
+ Zt.value = !1, m({
401
+ componentName: "VueUiStackline",
402
+ type: "datasetSerieAttribute",
403
+ property: e,
404
+ index: t,
405
+ debug: ir.value
406
+ }), Bn.value = !0;
407
+ });
408
+ }), i(F.dataset) || (Bn.value = B.value.loading), setTimeout(() => {
409
+ sn.value = !0;
410
+ }, 10), B.value.responsive) {
411
+ let e = De(() => {
412
+ sn.value = !1;
413
+ let { width: e, height: t } = Oe({
414
+ chart: L.value,
415
+ noTitle: rn.value,
416
+ title: B.value.style.chart.title.text ? en.value : null,
417
+ legend: B.value.style.chart.legend.show ? tn.value : null,
418
+ slicer: B.value.style.chart.zoom.show && K.value > 6 ? nn.value.$el : null,
419
+ source: an.value
420
+ });
421
+ requestAnimationFrame(() => {
422
+ U.value.width = e, U.value.height = t - 12, clearTimeout(rr.value), rr.value = setTimeout(() => {
423
+ sn.value = !0;
424
+ }, 10);
425
+ });
426
+ });
427
+ tr.value && (nr.value && tr.value.unobserve(nr.value), tr.value.disconnect()), tr.value = new ResizeObserver(e), nr.value = L.value.parentNode, tr.value.observe(nr.value);
428
+ }
429
+ e && $r();
430
+ }
431
+ Ge(() => {
432
+ kn.stop(), tr.value && (nr.value && tr.value.unobserve(nr.value), tr.value.disconnect());
433
+ });
434
+ let or = x(() => B.value.style.chart.grid.y.position === "right");
435
+ function sr() {
436
+ let e = 0;
437
+ yn.value && (e = Array.from(yn.value.querySelectorAll("text")).reduce((e, t) => {
438
+ let n = t.getComputedTextLength();
439
+ return n > e ? n : e;
440
+ }, 0));
441
+ let t = vn.value ? vn.value.getBoundingClientRect().width + B.value.style.chart.grid.y.axisName.fontSize + B.value.style.chart.grid.y.axisName.offsetX : 0;
442
+ return {
443
+ left: or.value ? 0 : e + t,
444
+ right: or.value ? e + t : 0,
445
+ scaleLabelsWidth: e,
446
+ yAxisLabelWidth: t
447
+ };
448
+ }
449
+ let cr = k(0), lr = k(0), ur = k(0);
450
+ function dr() {
451
+ let e = bn.value;
452
+ if (!e) {
453
+ lr.value = 0;
454
+ return;
455
+ }
456
+ try {
457
+ let t = e.getBBox();
458
+ lr.value = Number.isFinite(t?.height) ? t.height : 0;
459
+ } catch {
460
+ lr.value = 0;
461
+ }
462
+ }
463
+ function fr() {
464
+ ur.value && cancelAnimationFrame(ur.value), ur.value = requestAnimationFrame(() => {
465
+ requestAnimationFrame(() => {
466
+ dr();
467
+ });
468
+ });
469
+ }
470
+ Ge(() => {
471
+ ur.value && cancelAnimationFrame(ur.value), lr.value = 0, cr.value = 0;
472
+ });
473
+ let pr = x(() => {
474
+ let e = 0;
475
+ if (_n.value) try {
476
+ e = _n.value.getBBox().height;
477
+ } catch {
478
+ e = 0;
479
+ }
480
+ let t = B.value.style.chart.grid.x.timeLabels.show ? lr.value : 0;
481
+ return e + t;
482
+ }), W = x(() => {
483
+ wn.value;
484
+ let { height: e, width: t } = U.value, { right: n } = U.value.paddingRatio, r = B.value.style.chart.lines.totalValues.show && F.dataset && F.dataset.length > 1 ? B.value.style.chart.lines.totalValues.fontSize * 1.3 : 0, i = 0, a = 0, o = 0, s = 0;
485
+ if (B.value.style.chart.grid.y.axisLabels.show) {
486
+ let e = sr();
487
+ i = e.left, a = e.right, o = e.scaleLabelsWidth, s = e.yAxisLabelWidth;
488
+ }
489
+ let c = B.value.style.chart.padding.top + r, l = t - t * n - cr.value - a, u = e - B.value.style.chart.padding.bottom - pr.value - r, d = B.value.style.chart.padding.left + i, f = t - d - t * n - cr.value - a, p = e - c - B.value.style.chart.padding.bottom - pr.value - r;
490
+ return {
491
+ chartHeight: Math.max(0, e),
492
+ chartWidth: Math.max(0, t),
493
+ top: c,
494
+ right: Math.max(0, l),
495
+ bottom: Math.max(0, u),
496
+ left: Math.max(0, d),
497
+ width: Math.max(0, f),
498
+ height: Math.max(0, p),
499
+ offsetLeftAxis: i,
500
+ offsetRightAxis: a,
501
+ scaleLabelsWidth: o,
502
+ yAxisLabelWidth: s
503
+ };
504
+ }), mr = x(() => {
505
+ let { left: e, top: t, width: n, height: r } = W.value, i = q.value.start, a = q.value.end, o = Math.max(1, a - i), s = Math.max(0, Math.min(o, (J.value.start ?? i) - i)), c = Math.max(0, Math.min(o, (J.value.end ?? a) - i)), l = Math.max(0, c - s), u = {
506
+ fill: B.value.style.chart.zoom.preview.fill,
507
+ stroke: B.value.style.chart.zoom.preview.stroke,
508
+ "stroke-width": B.value.style.chart.zoom.preview.strokeWidth,
509
+ "stroke-dasharray": B.value.style.chart.zoom.preview.strokeDasharray,
510
+ "stroke-linecap": "round",
511
+ "stroke-linejoin": "round",
512
+ style: {
513
+ pointerEvents: "none",
514
+ transition: "none !important",
515
+ animation: "none !important"
516
+ }
517
+ }, d = n / o;
518
+ return {
519
+ x: e + s * d,
520
+ y: t,
521
+ width: l * d,
522
+ height: r,
523
+ ...u
524
+ };
525
+ }), G = x(() => zn.value.map((e, t) => {
526
+ let n = `stackline_serie_${t}`, r = le(e.color) || er.value[t] || re[t] || re[t % re.length];
527
+ return {
528
+ ...e,
529
+ shape: e.shape || "circle",
530
+ standalone: !!e.standalone,
531
+ series: JSON.parse(JSON.stringify(e.series)).map((e) => B.value.style.chart.lines.distributed ? Math.abs(e) : e),
532
+ seriesSource: e.series,
533
+ signedSeries: e.series.map((e) => e >= 0 ? 1 : -1),
534
+ absoluteIndex: t,
535
+ id: n,
536
+ color: r
537
+ };
538
+ })), hr = x(() => G.value.filter((e) => !z.value.includes(e.id) && !e.standalone)), gr = x(() => G.value.filter((e) => !z.value.includes(e.id) && e.standalone)), K = x(() => {
539
+ let e = Math.max(...G.value.filter((e) => !z.value.includes(e.id)).map((e) => e.series.length));
540
+ return isFinite(e) ? e : Math.max(...G.value.map((e) => e.series.length));
541
+ });
542
+ function _r(e) {
543
+ Nn.value = e;
544
+ }
545
+ let q = k({
546
+ start: 0,
547
+ end: Math.max(...zn.value.map((e) => e.series.length))
548
+ }), J = k({
549
+ start: 0,
550
+ end: Math.max(...zn.value.map((e) => e.series.length))
551
+ });
552
+ function vr(e) {
553
+ return (q.value.start ?? 0) + (e ?? 0);
554
+ }
555
+ let yr = x(() => B.value.style.chart.zoom.preview.enable && (J.value.start !== q.value.start || J.value.end !== q.value.end));
556
+ function br(e, t) {
557
+ J.value[e] = t;
558
+ }
559
+ function xr() {
560
+ let e = K.value, t = Math.max(0, Math.min(q.value.start ?? 0, e - 1)), n = Math.max(t + 1, Math.min(q.value.end ?? e, e));
561
+ (!Number.isFinite(t) || !Number.isFinite(n) || n <= t) && (t = 0, n = e), q.value.start = t, q.value.end = n, J.value.start = t, J.value.end = n, nn.value && (nn.value.setStartValue(t), nn.value.setEndValue(n));
562
+ }
563
+ let Sr = k(null);
564
+ function Cr() {
565
+ return new Promise((e) => requestAnimationFrame(() => requestAnimationFrame(() => e())));
566
+ }
567
+ Ge(() => {
568
+ Sr.value && cancelAnimationFrame(Sr.value);
569
+ });
570
+ async function wr({ force: e = !1 } = {}) {
571
+ if (B.value.style.chart.zoom.keepState && !e && Zr.value && !(q.value.start === 0 && q.value.end === 0)) {
572
+ xr();
573
+ return;
574
+ }
575
+ $r(), await He(), Sr.value && cancelAnimationFrame(Sr.value), Sr.value = requestAnimationFrame(async () => {
576
+ await Cr(), $r();
577
+ });
578
+ }
579
+ let Tr = x(() => Math.max(0, W.value.width / (q.value.end - q.value.start))), Er = x(() => ue(hr.value.map((e) => ({
580
+ ...e,
581
+ series: e.series.map((e) => e ?? 0)
582
+ }))).slice(q.value.start, q.value.end)), Dr = x(() => z.value.length === G.value.length), Or = x(() => {
583
+ if (!B.value.style.chart.zoom.minimap.show) return [];
584
+ let e = G.value.filter((e) => Dr.value ? !0 : !z.value.includes(e.id) && !e.standalone);
585
+ if (e.length) return ue(e.map((e) => ({
586
+ ...e,
587
+ series: (e.series || []).map((e) => e ?? 0)
588
+ })));
589
+ let t = gr.value;
590
+ if (!t.length) return [];
591
+ let n = Math.max(...t.map((e) => e.series.length || 0));
592
+ return Array.from({ length: n }, (e, n) => t.reduce((e, t) => e + Math.abs(t.series[n] ?? 0), 0));
593
+ }), kr = x(() => {
594
+ if (!B.value.style.chart.zoom.minimap.show) return [];
595
+ let e = G.value.filter((e) => Dr.value ? !0 : !z.value.includes(e.id) && !e.standalone), t = gr.value, n = e.length ? [{
596
+ name: "",
597
+ series: Or.value,
598
+ color: "#000000",
599
+ isVisible: !0
600
+ }] : [], r = t.map((e) => ({
601
+ name: e.name || "",
602
+ series: (e.series || []).map((e) => e ?? 0),
603
+ color: e.color,
604
+ isVisible: !0
605
+ }));
606
+ return n.concat(r);
607
+ }), Ar = x(() => ue(hr.value.filter((e) => !z.value.includes(e.id)).map((e) => ({
608
+ ...e,
609
+ series: e.series.map((t, n) => {
610
+ let r = t ?? 0;
611
+ return e.signedSeries[n] === -1 && r >= 0 ? -r : r;
612
+ })
613
+ }))).slice(q.value.start, q.value.end)), jr = x(() => {
614
+ let e = hr.value.filter((e) => !z.value.includes(e.id));
615
+ return {
616
+ positive: ue(e.map((e) => ({
617
+ ...e,
618
+ series: e.series.slice(q.value.start, q.value.end).map((e) => (e ?? 0) >= 0 ? e ?? 0 : 0)
619
+ }))),
620
+ negative: ue(e.map((e) => ({
621
+ ...e,
622
+ series: e.series.slice(q.value.start, q.value.end).map((e) => (e ?? 0) < 0 ? e ?? 0 : 0)
623
+ })))
624
+ };
625
+ }), Mr = x(() => {
626
+ let e = Math.max(0, q.value.end - q.value.start), t = Array(e).fill(0), n = Array(e).fill(0);
627
+ return gr.value.forEach((r) => {
628
+ for (let i = 0; i < e; i += 1) {
629
+ let e = r.series[q.value.start + i] ?? 0;
630
+ e > 0 && (t[i] = Math.max(t[i], e)), e < 0 && (n[i] = Math.min(n[i], e));
631
+ }
632
+ }), {
633
+ positive: t,
634
+ negative: n
635
+ };
636
+ }), Nr = x(() => Ar.value.map((e, t) => ({
637
+ value: e,
638
+ sign: e >= 0 ? 1 : -1
639
+ })));
640
+ function Pr() {
641
+ return { y0: Ir.value?.[0]?.zero ?? W.value.bottom };
642
+ }
643
+ function Fr(e) {
644
+ let { y0: t } = Pr(), n = B.value.style.chart.lines.totalValues, r = Math.max(2, n.fontSize * 1.3 + n.offsetY), i = (e) => Math.min(Math.max(e, W.value.top - B.value.style.chart.lines.totalValues.fontSize * 1.3), W.value.bottom + B.value.style.chart.lines.totalValues.fontSize * 2);
645
+ if ((Nr.value?.[e]?.value ?? 0) >= 0 || B.value.style.chart.lines.distributed) {
646
+ let n = Infinity;
647
+ for (let t of Y.value || []) {
648
+ let r = t?.series?.[e], i = t?.topY?.[e];
649
+ (r ?? 0) > 0 && Number.isFinite(i) && i < n && (n = i);
650
+ }
651
+ return i((Number.isFinite(n) ? n : t) - r - B.value.style.chart.lines.totalValues.offsetY);
652
+ } else {
653
+ let a = -Infinity;
654
+ for (let t of Y.value || []) {
655
+ let n = t?.series?.[e], r = t?.topY?.[e];
656
+ (n ?? 0) < 0 && Number.isFinite(r) && r > a && (a = r);
657
+ }
658
+ return i((Number.isFinite(a) ? a : t) + r + n.fontSize * .7 + B.value.style.chart.lines.totalValues.offsetY);
659
+ }
660
+ }
661
+ let Ir = x(() => {
662
+ let e = Math.max(...jr.value.positive, 0), t = Math.min(...jr.value.negative, 0), n = Math.max(...Mr.value.positive, 0), r = Math.min(...Mr.value.negative, 0), i = Math.max(e, n), a = Math.min(t, r), o = [
663
+ -Infinity,
664
+ Infinity,
665
+ NaN,
666
+ void 0,
667
+ null
668
+ ].includes(a) ? 0 : a, s = B.value.style.chart.grid.scale.scaleMin, c = B.value.style.chart.grid.scale.scaleMax, l = !B.value.style.chart.lines.distributed && (s !== null || c !== null), u = s !== null && !B.value.style.chart.lines.distributed ? s : o > 0 ? 0 : o, d = c !== null && !B.value.style.chart.lines.distributed ? c : i < 0 ? 0 : i, f = l ? _(u, d, B.value.style.chart.grid.scale.ticks) : v(u, d, B.value.style.chart.grid.scale.ticks), p = Math.abs(Number(f.min) || 0), m = (Number(f.max) || 0) + p, h = m === 0 || !Number.isFinite(m) ? 1 : m, g = Array.isArray(f.ticks) && f.ticks.length ? f.ticks : [0], ee = W.value.bottom - W.value.height * (p / h);
669
+ return g.map((e) => {
670
+ let t = Number(e) || 0;
671
+ return {
672
+ zero: ee,
673
+ y: W.value.bottom - W.value.height * ((t + p) / h),
674
+ x: or.value ? X.value.right + 8 : X.value.left - 8,
675
+ value: t
676
+ };
677
+ });
678
+ }), Lr = k([]), Rr = k([]), zr = 0;
679
+ Qe(() => {
680
+ let e = ++zr;
681
+ (async () => {
682
+ let t = await pe({
683
+ values: B.value.style.chart.grid.x.timeLabels.values,
684
+ maxDatapoints: K.value,
685
+ formatter: B.value.style.chart.grid.x.timeLabels.datetimeFormatter,
686
+ start: q.value.start,
687
+ end: q.value.end
688
+ });
689
+ e === zr && (Lr.value = t);
690
+ })();
691
+ });
692
+ let Br = 0;
693
+ Qe(() => {
694
+ let e = ++Br;
695
+ (async () => {
696
+ let t = await pe({
697
+ values: B.value.style.chart.grid.x.timeLabels.values,
698
+ maxDatapoints: K.value,
699
+ formatter: B.value.style.chart.grid.x.timeLabels.datetimeFormatter,
700
+ start: 0,
701
+ end: K.value
702
+ });
703
+ e === Br && (Rr.value = t);
704
+ })();
705
+ });
706
+ let Vr = x(() => {
707
+ let e = B.value.style.chart.grid.x.timeLabels.modulo;
708
+ return Lr.value.length ? Math.min(e, [...new Set(Lr.value.map((e) => e.text))].length) : e;
709
+ }), Hr = x(() => {
710
+ let e = B.value.style.chart.grid.x.timeLabels, t = Lr.value || [], n = Rr.value || [], r = q.value.start ?? 0, i = $.value, a = K.value, o = t.map((e) => e?.text ?? ""), s = n.map((e) => e?.text ?? "");
711
+ return ae(!!e.showOnlyFirstAndLast, !!e.showOnlyAtModulo, Math.max(1, Vr.value || 1), o, s, r, i, a);
712
+ });
713
+ Qe(() => {
714
+ B.value.style.chart.grid.x.timeLabels.show, B.value.style.chart.grid.x.timeLabels.fontSize, B.value.style.chart.grid.x.timeLabels.rotation, B.value.style.chart.grid.x.timeLabels.offsetY, (Hr.value || []).map((e) => e?.text ?? "").join("|"), U.value.width, U.value.height, bn.value, _n.value, fr();
715
+ }, { flush: "post" });
716
+ let Ur = k({
717
+ months: [],
718
+ shortMonths: [],
719
+ days: [],
720
+ shortDays: []
721
+ }), Wr = 0;
722
+ Qe(() => {
723
+ let e = ++Wr, t = B.value.style.chart.grid.x.timeLabels.datetimeFormatter;
724
+ (async () => {
725
+ let n = await fe(t.locale).catch(() => fe("en"));
726
+ e === Wr && (Ur.value = n.data);
727
+ })();
728
+ });
729
+ let Gr = x(() => {
730
+ let e = B.value.style.chart.grid.x.timeLabels.datetimeFormatter, t = de({
731
+ useUTC: e.useUTC,
732
+ locale: Ur.value,
733
+ januaryAsYear: e.januaryAsYear
734
+ });
735
+ return (e, n) => {
736
+ let r = B.value.style.chart.grid.x.timeLabels.values?.[e];
737
+ return r == null ? "" : t.formatDate(new Date(r), n);
738
+ };
739
+ }), Kr = x(() => (B.value.style.chart.grid.x.timeLabels.values || []).map((e, t) => ({
740
+ text: Gr.value(t, B.value.style.chart.zoom.timeFormat),
741
+ absoluteIndex: t
742
+ }))), qr = x(() => (B.value.style.chart.grid.x.timeLabels.values || []).map((e, t) => ({
743
+ text: Gr.value(t, B.value.style.chart.tooltip.timeFormat),
744
+ absoluteIndex: t
745
+ }))), Jr = x(() => {
746
+ if (!Zt.value && !Rn.value) return [];
747
+ let e = W.value.height, t = Ir.value[0] ? Ir.value[0].zero : W.value.bottom, n = q.value.start ?? 0, r = q.value.end ?? 0, i = Math.max(1, r - n), a = Math.max(...jr.value.positive, 0), o = Math.min(...jr.value.negative, 0), s = Math.max(...Mr.value.positive, 0), c = Math.min(...Mr.value.negative, 0), l = Math.max(a, s), u = Math.min(o, c), { min: d, max: f } = !B.value.style.chart.lines.distributed && (B.value.style.chart.grid.scale.scaleMax !== null || B.value.style.chart.grid.scale.scaleMin !== null) ? _(B.value.style.chart.grid.scale.scaleMin === null ? u > 0 ? 0 : u : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? l < 0 ? 0 : l : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks) : v(B.value.style.chart.grid.scale.scaleMin === null ? u > 0 ? 0 : u : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? l < 0 ? 0 : l : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks), p = f + (d >= 0 ? 0 : Math.abs(d)) || 1, m = Array(i).fill(0), h = Array(i).fill(0), g = (e) => i <= 1 ? W.value.left + W.value.width / 2 : W.value.left + e / (i - 1) * W.value.width;
748
+ return G.value.filter((e) => !z.value.includes(e.id)).map((r) => {
749
+ let a = [], o = [], s = [], c = Array(i).fill(null), l = Array(i).fill(null);
750
+ for (let u = 0; u < i; u += 1) {
751
+ let i = n + u, d = r.series?.[i], f = r.signedSeries?.[i], g = d == null || Number.isNaN(d) ? 0 : d, _ = r.standalone ? g / p : B.value.style.chart.lines.distributed ? g / (Er.value[u] || 1) : g / p;
752
+ if (g >= 0) {
753
+ let n = e * Math.abs(_);
754
+ if (r.standalone) c[u] = t, l[u] = t - n;
755
+ else {
756
+ let e = m[u], r = e + n;
757
+ c[u] = t - e, l[u] = t - r, m[u] = r;
758
+ }
759
+ } else {
760
+ let n = e * Math.abs(_);
761
+ if (r.standalone) c[u] = t, l[u] = t + n;
762
+ else {
763
+ let e = h[u], r = e + n;
764
+ c[u] = t + e, l[u] = t + r, h[u] = r;
765
+ }
766
+ }
767
+ a.push(u), o.push(g), s.push(f ?? (g >= 0 ? 1 : -1));
768
+ }
769
+ let u = a.map((e) => ({
770
+ x: g(e),
771
+ y: l[e]
772
+ })), d = u.map((e) => e.x), f = o.reduce((e, t) => e + Math.abs(t || 0), 0), _ = f === 0 ? 1 : f, ee = o.map((e, t) => {
773
+ if (B.value.style.chart.lines.distributed && !r.standalone) {
774
+ let n = a[t], r = Er.value[n] || 1;
775
+ return (e || 0) / r;
776
+ }
777
+ return (e || 0) / _;
778
+ });
779
+ return {
780
+ ...r,
781
+ x: d,
782
+ points: u,
783
+ baseY: a.map((e) => c[e]),
784
+ topY: a.map((e) => l[e]),
785
+ series: o,
786
+ signedSeries: s,
787
+ proportions: ee,
788
+ rel: a,
789
+ fullSeries: Array.isArray(r.fullSeries) ? r.fullSeries : r.series
790
+ };
791
+ });
792
+ }), Y = x(() => {
793
+ let e = (e) => typeof e == "string" ? e.replace(/^M\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*,?\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*/i, "").trim() : "", t = Math.max(...jr.value.positive, 0), n = Math.min(...jr.value.negative, 0), r = Math.max(...Mr.value.positive, 0), i = Math.min(...Mr.value.negative, 0), a = Math.max(t, r), o = Math.min(n, i), s = !B.value.style.chart.lines.distributed && (B.value.style.chart.grid.scale.scaleMax !== null || B.value.style.chart.grid.scale.scaleMin !== null) ? _(B.value.style.chart.grid.scale.scaleMin === null ? o > 0 ? 0 : o : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? a < 0 ? 0 : a : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks) : v(B.value.style.chart.grid.scale.scaleMin === null ? o > 0 ? 0 : o : B.value.style.chart.grid.scale.scaleMin, B.value.style.chart.grid.scale.scaleMax === null ? a < 0 ? 0 : a : B.value.style.chart.grid.scale.scaleMax, B.value.style.chart.grid.scale.ticks), l = Number(s.min) || 0, u = Number(s.max) || 0, d = Math.abs(l), f = u + d || 1, p = (e) => {
794
+ if (B.value.style.chart.lines.distributed) {
795
+ let t = Math.max(0, Math.min(1, e));
796
+ return minimapH - minimapH * t;
797
+ }
798
+ return clampY(minimapH - minimapH * (((e ?? 0) + d) / f));
799
+ };
800
+ return Jr.value.map((t) => {
801
+ let n = t.x.length, r = Array.isArray(t.fullSeries) ? t.fullSeries : t.series, i = ({ left: e = 0, unitW: t }) => {
802
+ let n = r.length;
803
+ return !Number.isFinite(t) || t <= 0 || n <= 0 ? [] : n === 1 ? [e + t * .5] : r.map((n, r) => e + r * t);
804
+ }, a = ({ minimapH: e }) => !Number.isFinite(e) || e <= 0 ? [] : r.map((t) => p(t || 0, e)), o = ({ minimapH: e }) => {
805
+ if (!Number.isFinite(e) || e <= 0) return [];
806
+ let t = p(0, e);
807
+ return r.map(() => t);
808
+ };
809
+ if (n === 0) return {
810
+ ...t,
811
+ points: [],
812
+ smoothPath: "",
813
+ straightPath: "",
814
+ smoothArea: "",
815
+ straightArea: "",
816
+ xMinimap: i,
817
+ yMinimap: a,
818
+ yMinimapBase: o
819
+ };
820
+ let s = t.x.map((e, n) => ({
821
+ x: e,
822
+ y: t.topY[n]
823
+ })), l = t.x.map((e, n) => ({
824
+ x: e,
825
+ y: t.baseY[n]
826
+ })), u = n >= 2 ? ne(s) : `M${s[0].x},${s[0].y}`, d = n >= 2 ? c(s) : `M${s[0].x},${s[0].y}`, f = n >= 2 ? `M${e(u)}` : u, m = n >= 2 ? `M${e(d)}` : d, h = "", g = "";
827
+ if (B.value.style.chart.lines.useArea && n >= 2) {
828
+ let t = ne([...l].reverse()), n = c([...l].reverse()), r = l[l.length - 1];
829
+ h = `M${s[0].x},${s[0].y} ${e(u)} L${r.x},${r.y} ${e(t)} Z`, g = `M${s[0].x},${s[0].y} ${e(d)} L${r.x},${r.y} ${e(n)} Z`;
830
+ }
831
+ return {
832
+ ...t,
833
+ points: s,
834
+ smoothPath: f,
835
+ straightPath: m,
836
+ smoothArea: h,
837
+ straightArea: g,
838
+ xMinimap: i,
839
+ yMinimap: a,
840
+ yMinimapBase: o
841
+ };
842
+ });
843
+ }), Yr = x(() => $.value === null || $.value === void 0 ? null : {
844
+ timeLabel: pi($.value),
845
+ absoluteIndex: $.value + q.value.start,
846
+ seriesIndex: $.value,
847
+ datapoint: fi.value,
848
+ series: Y.value,
849
+ config: B.value
850
+ }), Xr = k(!1), Zr = k(!1);
851
+ function Qr(e) {
852
+ let t = K.value;
853
+ return e > t ? t : e < 0 || e < q.value.start ? B.value.style.chart.zoom.startIndex === null ? 1 : q.value.start + 1 : e;
854
+ }
855
+ function $r() {
856
+ if (!Xr.value) {
857
+ Xr.value = !0;
858
+ try {
859
+ let { startIndex: e, endIndex: t, keepState: n } = B.value.style.chart.zoom, r = n ? Math.max(0, K.value) : K.value;
860
+ if (n && r <= 0) return;
861
+ let i = e ?? 0, a = t == null ? r : Math.min(Qr(t + 1), r);
862
+ ni.value = !0, q.value.start = i, q.value.end = a, J.value.start = i, J.value.end = a, xr(), Zr.value = !0;
863
+ } finally {
864
+ queueMicrotask(() => {
865
+ ni.value = !1;
866
+ }), Xr.value = !1;
867
+ }
868
+ }
869
+ }
870
+ function ei(e) {
871
+ Xr.value || ni.value || e !== q.value.start && (q.value.start = e, J.value.start = e, xr());
872
+ }
873
+ function ti(e) {
874
+ if (Xr.value || ni.value) return;
875
+ let t = Qr(e);
876
+ t !== q.value.end && (q.value.end = t, J.value.end = t, xr());
877
+ }
878
+ let X = x(() => ({
879
+ left: W.value.left,
880
+ right: W.value.right,
881
+ width: W.value.width
882
+ })), ni = k(!1);
883
+ Se({
884
+ timeLabelsEls: bn,
885
+ timeLabels: Lr,
886
+ slicer: q,
887
+ configRef: B,
888
+ rotationPath: [
889
+ "style",
890
+ "chart",
891
+ "grid",
892
+ "x",
893
+ "timeLabels",
894
+ "rotation"
895
+ ],
896
+ autoRotatePath: [
897
+ "style",
898
+ "chart",
899
+ "grid",
900
+ "x",
901
+ "timeLabels",
902
+ "autoRotate",
903
+ "enable"
904
+ ],
905
+ isAutoSize: !1,
906
+ width: x(() => U.value.width),
907
+ height: x(() => U.value.height),
908
+ rotation: B.value.style.chart.grid.x.timeLabels.autoRotate.angle
909
+ });
910
+ let ri = k(null);
911
+ function ii(e) {
912
+ let t = V.value;
913
+ if (!t) return null;
914
+ if (t.createSVGPoint && t.getScreenCTM) {
915
+ let n = t.createSVGPoint();
916
+ n.x = e.clientX, n.y = e.clientY;
917
+ let r = t.getScreenCTM();
918
+ if (r) {
919
+ let e = n.matrixTransform(r.inverse());
920
+ return {
921
+ x: e.x,
922
+ y: e.y,
923
+ ok: !0
924
+ };
925
+ }
926
+ }
927
+ let n = t.getBoundingClientRect(), r = t.viewBox?.baseVal || {
928
+ x: 0,
929
+ y: 0,
930
+ width: n.width,
931
+ height: n.height
932
+ }, i = Math.min(n.width / r.width, n.height / r.height), a = r.width * i, o = r.height * i, s = (n.width - a) / 2, c = (n.height - o) / 2;
933
+ return {
934
+ x: (e.clientX - n.left - s) / i + r.x,
935
+ y: (e.clientY - n.top - c) / i + r.y,
936
+ ok: !0
937
+ };
938
+ }
939
+ let ai = 0, Z = x(() => Math.max(1, q.value.end - q.value.start)), oi = x(() => Z.value > 1 ? W.value.width / (Z.value - 1) : 0);
940
+ function Q(e) {
941
+ return Z.value <= 1 ? W.value.left + W.value.width / 2 : W.value.left + e * oi.value;
942
+ }
943
+ function si(e) {
944
+ if (Z.value <= 1) return {
945
+ x: W.value.left,
946
+ width: W.value.width
947
+ };
948
+ let t = e === 0 ? W.value.left : (Q(e - 1) + Q(e)) / 2, n = e === Z.value - 1 ? W.value.left + W.value.width : (Q(e) + Q(e + 1)) / 2;
949
+ return {
950
+ x: t,
951
+ width: Math.max(0, n - t)
952
+ };
953
+ }
954
+ function ci(e) {
955
+ Pn.value || (ai && cancelAnimationFrame(ai), ai = requestAnimationFrame(() => {
956
+ ai = 0;
957
+ let t = ii(e);
958
+ if (!t || !V.value) {
959
+ di();
960
+ return;
961
+ }
962
+ let { left: n, right: r, top: i, bottom: a } = W.value;
963
+ if (t.x < n || t.x > r || t.y < i || t.y > a) {
964
+ di();
965
+ return;
966
+ }
967
+ let o = 0;
968
+ if (Z.value > 1) {
969
+ let e = (t.x - n) / oi.value;
970
+ o = Math.round(e);
971
+ } else o = 0;
972
+ o < 0 && (o = 0), o > Z.value - 1 && (o = Z.value - 1), ri.value !== o && (ri.value = o, hi(!0, o));
973
+ }));
974
+ }
975
+ function li(e) {
976
+ let t = ii(e);
977
+ if (!t || !V.value) return;
978
+ let { left: n, right: r, top: i, bottom: a } = W.value;
979
+ if (t.x < n || t.x > r || t.y < i || t.y > a) return;
980
+ let o = 0;
981
+ if (Z.value > 1) {
982
+ let e = (t.x - n) / oi.value;
983
+ o = Math.round(e);
984
+ } else o = 0;
985
+ o < 0 && (o = 0), o > Z.value - 1 && (o = Z.value - 1), Ji({
986
+ seriesIndex: o,
987
+ datapoint: Bi(o)
988
+ }), ui(o);
989
+ }
990
+ function ui(e) {
991
+ let t = JSON.parse(JSON.stringify(Y.value)).map((t) => ({
992
+ name: t.name,
993
+ value: t.series[e] === 0 ? 0 : t.series[e] || null,
994
+ proportion: t.proportions[e] || null,
995
+ color: t.color,
996
+ id: t.id
997
+ }));
998
+ B.value.events.datapointClick && B.value.events.datapointClick({
999
+ datapoint: t,
1000
+ seriesIndex: e + q.value.start
1001
+ }), I("selectDatapoint", {
1002
+ datapoint: t,
1003
+ period: Lr.value[e]
1004
+ });
1005
+ }
1006
+ Ze(() => [
1007
+ q.value.start,
1008
+ q.value.end,
1009
+ Y.value.length
1010
+ ], () => {
1011
+ let e = Z.value;
1012
+ if ($.value != null) {
1013
+ if (e <= 0) {
1014
+ $.value = null;
1015
+ return;
1016
+ }
1017
+ $.value < 0 && ($.value = 0), $.value > e - 1 && ($.value = e - 1);
1018
+ }
1019
+ });
1020
+ function di() {
1021
+ ai &&= (cancelAnimationFrame(ai), 0), ri.value = null, hi(!1, null);
1022
+ }
1023
+ let $ = k(null), fi = x(() => {
1024
+ let e = $.value, t = e == null ? null : vr(e);
1025
+ return Y.value.map((n) => ({
1026
+ slotAbsoluteIndex: n.absoluteIndex,
1027
+ shape: n.shape || "circle",
1028
+ name: n.name,
1029
+ color: n.color,
1030
+ value: e == null ? null : n.series.find((t, n) => n === e),
1031
+ sourceValue: t == null ? null : n.seriesSource?.[t],
1032
+ comments: n.comments || [],
1033
+ id: n.id,
1034
+ standalone: !!n.standalone
1035
+ }));
1036
+ });
1037
+ function pi(e) {
1038
+ if (e == null || !B.value.style.chart.tooltip.showTimeLabel) return null;
1039
+ let t = Lr.value?.[e]?.text || null, n = qr.value?.[e]?.text || null, r = Rr.value?.[e]?.text || null;
1040
+ return B.value.style.chart.tooltip.useDefaultTimeFormat ? t : n || r;
1041
+ }
1042
+ let mi = x(() => {
1043
+ let e = B.value.style.chart.tooltip.customFormat, t = [...fi.value].reverse(), n = t.filter((e) => !e.standalone), i = t.filter((e) => e.standalone), a = n.map((e) => e.value).filter((e) => h(e) && e !== null).reduce((e, t) => Math.abs(e) + Math.abs(t), 0);
1044
+ if (ee(e) && te(() => e({
1045
+ absoluteIndex: $.value + q.value.start,
1046
+ seriesIndex: $.value,
1047
+ datapoint: fi.value,
1048
+ series: G.value,
1049
+ config: B.value
1050
+ }))) return e({
1051
+ absoluteIndex: $.value + q.value.start,
1052
+ seriesIndex: $.value,
1053
+ datapoint: fi.value,
1054
+ series: G.value,
1055
+ config: B.value
1056
+ });
1057
+ let { showValue: s, showTotal: c, totalTranslation: l, showPercentage: d, borderColor: f, roundingValue: p, roundingPercentage: m } = B.value.style.chart.tooltip, g = (e) => !e.shape || ![
1058
+ "star",
1059
+ "triangle",
1060
+ "square",
1061
+ "diamond",
1062
+ "pentagon",
1063
+ "hexagon"
1064
+ ].includes(e.shape) ? `<svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" fill="${e.color}" /></svg>` : e.shape === "star" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><polygon stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" fill="${e.color}" points="${u({
1065
+ plot: {
1066
+ x: 6,
1067
+ y: 6
1068
+ },
1069
+ radius: 5
1070
+ })}" /></svg>` : e.shape === "triangle" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${r({
1071
+ plot: {
1072
+ x: 6,
1073
+ y: 6
1074
+ },
1075
+ radius: 6,
1076
+ sides: 3,
1077
+ rotation: .52
1078
+ }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "square" ? `<svg viewBox="0 0 12 12" height="14" width="14"><path d="${r({
1079
+ plot: {
1080
+ x: 6,
1081
+ y: 6
1082
+ },
1083
+ radius: 6,
1084
+ sides: 4,
1085
+ rotation: .8
1086
+ }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "diamond" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${r({
1087
+ plot: {
1088
+ x: 6,
1089
+ y: 6
1090
+ },
1091
+ radius: 5,
1092
+ sides: 4,
1093
+ rotation: 0
1094
+ }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : e.shape === "pentagon" ? `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${r({
1095
+ plot: {
1096
+ x: 6,
1097
+ y: 6
1098
+ },
1099
+ radius: 5,
1100
+ sides: 5,
1101
+ rotation: .95
1102
+ }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>` : `<svg viewBox="0 0 12 12" height="14" width="14" style="overflow:visible"><path d="${r({
1103
+ plot: {
1104
+ x: 6,
1105
+ y: 6
1106
+ },
1107
+ radius: 5,
1108
+ sides: 6,
1109
+ rotation: 0
1110
+ }).path}" fill="${e.color}" stroke="${B.value.style.chart.tooltip.backgroundColor}" stroke-width="1" /></svg>`, _ = (e, t) => {
1111
+ let n = t ? o({
1112
+ v: isNaN((e.value ?? 0) / (a || 1)) ? 0 : Math.abs(e.value ?? 0) / (a || 1) * 100,
1113
+ s: "%",
1114
+ r: m
1115
+ }) : "", r = s && t ? "(" : "", i = s && t ? ")" : "";
1116
+ return `
1117
+ <div style="display:flex;flex-direction:row;align-items:center;gap:4px">
1118
+ <div style="width:20px;height:20px;display:flex;align-items:center;justify-content:center;">${g(e)}</div>
1119
+ ${e.name}${s || t ? ":" : ""}
1120
+ ${s ? y(B.value.style.chart.lines.dataLabels.formatter, e.sourceValue, o({
1121
+ p: B.value.style.chart.lines.dataLabels.prefix,
1122
+ v: e.sourceValue,
1123
+ s: B.value.style.chart.lines.dataLabels.suffix,
1124
+ r: p
1125
+ }, { datapoint: e })) : ""} ${r}${n}${i}
1126
+ </div>
1127
+ `;
1128
+ }, v = "", ne = pi($.value);
1129
+ return ne && (v += `<div style="width:100%;text-align:center;border-bottom:1px solid ${f};padding-bottom:6px;margin-bottom:3px;">${ne}</div>`), c && n.length > 1 && (v += `<div class="vue-data-ui-tooltip-total" style="display:flex;flex-direction:row;align-items:center;gap:4px">
1130
+ <span>${l}:</span>
1131
+ <span>${y(B.value.style.chart.lines.dataLabels.formatter, ie(a), o({
1132
+ p: B.value.style.chart.lines.dataLabels.prefix,
1133
+ v: ie(a),
1134
+ s: B.value.style.chart.lines.dataLabels.suffix,
1135
+ r: p
1136
+ }), { datapoint: {
1137
+ name: l,
1138
+ value: ie(a)
1139
+ } })}</span>
1140
+ </div>`), n.forEach((e) => {
1141
+ v += _(e, d);
1142
+ }), i.length && (v += `<div style="border-top:1px solid ${hr.value.length ? f : "transparent"}; margin:${hr.value.length ? "6px 0" : "0"};"></div>`, i.forEach((e) => {
1143
+ v += _(e, !1);
1144
+ })), `<div>${v}</div>`;
1145
+ });
1146
+ function hi(e, t = null, n = "pointer") {
1147
+ if (Dr.value) return;
1148
+ On.value = n, Qt.value = e;
1149
+ let r = Y.value.map((e) => ({
1150
+ name: e.name,
1151
+ value: [
1152
+ null,
1153
+ void 0,
1154
+ NaN
1155
+ ].includes(e.series[t]) ? null : e.series[t],
1156
+ color: e.color
1157
+ }));
1158
+ e ? (En.value = t, $.value = t, Ji({
1159
+ seriesIndex: t,
1160
+ datapoint: r
1161
+ }), B.value.events.datapointEnter && B.value.events.datapointEnter({
1162
+ datapoint: r,
1163
+ seriesIndex: t + q.value.start
1164
+ })) : (En.value = null, $.value = null, I("selectX", {
1165
+ index: null,
1166
+ indexLabel: null,
1167
+ dataset: null
1168
+ }), B.value.events.datapointLeave && B.value.events.datapointLeave({
1169
+ datapoint: r,
1170
+ seriesIndex: t + q.value.start
1171
+ }));
1172
+ }
1173
+ function gi(e, t) {
1174
+ I("selectTimeLabel", {
1175
+ datapoint: JSON.parse(JSON.stringify(Y.value)).map((e) => ({
1176
+ name: e.name,
1177
+ value: e.series[t] === 0 ? 0 : (e.signedSeries[t] === -1 && e.series[t] >= 0 ? -e.series[t] : e.series[t]) || null,
1178
+ proportion: e.proportions[t] || null,
1179
+ color: e.color,
1180
+ id: e.id
1181
+ })),
1182
+ absoluteIndex: e.absoluteIndex,
1183
+ label: e.text
1184
+ });
1185
+ }
1186
+ function _i() {
1187
+ z.value.length ? z.value = [] : yi.value.forEach((e) => {
1188
+ z.value.push(e.id);
1189
+ }), I("selectLegend", Y.value);
1190
+ }
1191
+ function vi(e) {
1192
+ if (z.value.includes(e.id)) z.value = z.value.filter((t) => t !== e.id);
1193
+ else {
1194
+ if (z.value.length === G.value.length - 1) return;
1195
+ z.value.push(e.id);
1196
+ }
1197
+ I("selectLegend", Y.value);
1198
+ }
1199
+ let yi = x(() => G.value.map((e) => ({
1200
+ ...e,
1201
+ opacity: z.value.includes(e.id) ? .5 : 1,
1202
+ segregate: () => vi(e),
1203
+ isSegregated: z.value.includes(e.id)
1204
+ }))), bi = x(() => ({
1205
+ cy: "stackline-legend",
1206
+ backgroundColor: B.value.style.chart.legend.backgroundColor,
1207
+ color: B.value.style.chart.legend.color,
1208
+ fontSize: B.value.style.chart.legend.fontSize,
1209
+ paddingBottom: 12,
1210
+ fontWeight: B.value.style.chart.legend.bold ? "bold" : ""
1211
+ }));
1212
+ function xi(e) {
1213
+ return G.value.length ? G.value.find((t) => t.name === e) || (B.value.debug && console.warn(`VueUiStackline - Series name not found "${e}"`), null) : (B.value.debug && console.warn("VueUiStackline - There are no series to show."), null);
1214
+ }
1215
+ function Si(e) {
1216
+ let t = xi(e);
1217
+ t !== null && z.value.includes(t.id) && vi({ id: t.id });
1218
+ }
1219
+ function Ci(e) {
1220
+ let t = xi(e);
1221
+ t !== null && (z.value.includes(t.id) || vi({ id: t.id }));
1222
+ }
1223
+ let wi = x(() => {
1224
+ if (Y.value.length === 0) return {
1225
+ head: [],
1226
+ body: [],
1227
+ config: {},
1228
+ columnNames: []
1229
+ };
1230
+ let e = Y.value.map(({ name: e, color: t }) => ({
1231
+ label: e,
1232
+ color: t
1233
+ })), t = [];
1234
+ return Hr.value.forEach((e) => {
1235
+ let n = e.absoluteIndex, r = [B.value.style.chart.grid.x.timeLabels.values?.[n] ? e.text : n + 1];
1236
+ G.value.forEach((e) => {
1237
+ let t = e.series?.[n], i = Number((t ?? 0).toFixed(B.value.table.td.roundingValue));
1238
+ r.push(i);
1239
+ }), t.push(r);
1240
+ }), {
1241
+ head: e,
1242
+ body: t
1243
+ };
1244
+ });
1245
+ function Ti(e = null) {
1246
+ let t = [
1247
+ [B.value.style.chart.title.text],
1248
+ [B.value.style.chart.title.subtitle.text],
1249
+ [""]
1250
+ ], n = ["", ...wi.value.head.map((e) => e.label)], r = wi.value.body, i = d(t.concat([n]).concat(r));
1251
+ e ? e(i) : l({
1252
+ csvContent: i,
1253
+ title: B.value.style.chart.title.text || "vue-ui-stackline"
1254
+ });
1255
+ }
1256
+ let Ei = x(() => {
1257
+ let e = [""].concat(Y.value.map((e) => e.name), " <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2\" /></svg>"), t = [], n = Math.max(0, q.value.end - q.value.start);
1258
+ for (let e = 0; e < n; e += 1) {
1259
+ let n = vr(e), r = B.value.style.chart.grid.x.timeLabels.values?.[n] ? Lr.value?.[e]?.text ?? n + 1 : n + 1, i = Y.value.map((t) => {
1260
+ let n = t.series?.[e] ?? 0;
1261
+ return Number(n.toFixed(B.value.table.td.roundingValue));
1262
+ }), a = Y.value.filter((e) => !e.standalone).map((t) => t.series?.[e] ?? 0).reduce((e, t) => e + t, 0);
1263
+ t.push([r].concat(i, Number(a.toFixed(B.value.table.td.roundingValue))));
1264
+ }
1265
+ return {
1266
+ head: e,
1267
+ body: t,
1268
+ config: {
1269
+ th: {
1270
+ backgroundColor: B.value.table.th.backgroundColor,
1271
+ color: B.value.table.th.color,
1272
+ outline: B.value.table.th.outline
1273
+ },
1274
+ td: {
1275
+ backgroundColor: B.value.table.td.backgroundColor,
1276
+ color: B.value.table.td.color,
1277
+ outline: B.value.table.td.outline
1278
+ },
1279
+ breakpoint: B.value.table.responsiveBreakpoint
1280
+ },
1281
+ colNames: [B.value.table.columnNames.period].concat(Y.value.map((e) => e.name), B.value.table.columnNames.total)
1282
+ };
1283
+ }), Di = x(() => B.value.style.chart.backgroundColor), Oi = x(() => B.value.style.chart.legend), { exportSvg: ki, getSvg: Ai } = ve({
1284
+ svg: V,
1285
+ title: x(() => B.value.style.chart.title),
1286
+ legend: Oi,
1287
+ legendItems: yi,
1288
+ backgroundColor: Di
1289
+ });
1290
+ async function ji({ isCb: e }) {
1291
+ gn.value = !0, await He();
1292
+ try {
1293
+ if (e) {
1294
+ let { blob: e, url: t, text: n, dataUrl: r } = await Ai();
1295
+ await Promise.resolve(B.value.userOptions.callbacks.svg({
1296
+ blob: e,
1297
+ url: t,
1298
+ text: n,
1299
+ dataUrl: r
1300
+ }));
1301
+ } else await Promise.resolve(ki());
1302
+ } finally {
1303
+ gn.value = !1;
1304
+ }
1305
+ }
1306
+ async function Mi({ scale: e = 2 } = {}) {
1307
+ if (!L.value) return;
1308
+ let { width: t, height: n } = L.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await Ce({
1309
+ domElement: L.value,
1310
+ base64: !0,
1311
+ img: !0,
1312
+ scale: e
1313
+ });
1314
+ return {
1315
+ imageUri: i,
1316
+ base64: a,
1317
+ title: B.value.style.chart.title.text,
1318
+ width: t,
1319
+ height: n,
1320
+ aspectRatio: r
1321
+ };
1322
+ }
1323
+ let Ni = x(() => {
1324
+ let e = B.value.table.useDialog && !B.value.table.show, t = H.value.showTable;
1325
+ return {
1326
+ component: e ? Kt : Vt,
1327
+ title: `${B.value.style.chart.title.text}${B.value.style.chart.title.subtitle.text ? `: ${B.value.style.chart.title.subtitle.text}` : ""}`,
1328
+ props: e ? {
1329
+ backgroundColor: B.value.table.th.backgroundColor,
1330
+ color: B.value.table.th.color,
1331
+ headerColor: B.value.table.th.color,
1332
+ headerBg: B.value.table.th.backgroundColor,
1333
+ isFullscreen: on.value,
1334
+ fullscreenParent: L.value,
1335
+ forcedWidth: Math.min(800, window.innerWidth * .8),
1336
+ isCursorPointer: In.value
1337
+ } : {
1338
+ hideDetails: !0,
1339
+ config: {
1340
+ open: t,
1341
+ maxHeight: 1e4,
1342
+ body: {
1343
+ backgroundColor: B.value.style.chart.backgroundColor,
1344
+ color: B.value.style.chart.color
1345
+ },
1346
+ head: {
1347
+ backgroundColor: B.value.style.chart.backgroundColor,
1348
+ color: B.value.style.chart.color
1349
+ }
1350
+ }
1351
+ }
1352
+ };
1353
+ });
1354
+ Ze(() => H.value.showTable, (e) => {
1355
+ B.value.table.show || (e && B.value.table.useDialog && fn.value ? fn.value.open() : "close" in fn.value && fn.value.close());
1356
+ });
1357
+ function Pi() {
1358
+ H.value.showTable = !1, pn.value && pn.value.setTableIconState(!1);
1359
+ }
1360
+ function Fi(e) {
1361
+ on.value = e, $t.value += 1;
1362
+ }
1363
+ function Ii() {
1364
+ H.value.showTable = !H.value.showTable;
1365
+ }
1366
+ function Li() {
1367
+ H.value.dataLabels.show = !H.value.dataLabels.show;
1368
+ }
1369
+ function Ri() {
1370
+ H.value.showTooltip = !H.value.showTooltip;
1371
+ }
1372
+ function zi() {
1373
+ return Y.value;
1374
+ }
1375
+ function Bi(e) {
1376
+ let t = e ?? 0, n = vr(t);
1377
+ return JSON.parse(JSON.stringify(Y.value)).map((e) => {
1378
+ let r = e.series[t], i = e.signedSeries?.[t], a = r === 0 ? 0 : (i === -1 && r >= 0 ? -r : r) || null;
1379
+ return {
1380
+ name: e.name,
1381
+ absoluteIndex: e.absoluteIndex,
1382
+ value: a,
1383
+ proportion: e.proportions?.[t] || null,
1384
+ color: e.color,
1385
+ id: e.id,
1386
+ timeLabel: Rr.value?.[n] || null
1387
+ };
1388
+ });
1389
+ }
1390
+ let Vi = x(() => Array(K.value).fill(0).map((e, t) => Bi(t)));
1391
+ Ze(() => F.selectedXIndex, (e) => {
1392
+ if ([null, void 0].includes(F.selectedXIndex)) {
1393
+ $.value = null;
1394
+ return;
1395
+ }
1396
+ let t = e - q.value.start;
1397
+ t < 0 || e >= q.value.end ? $.value = null : $.value = t ?? null;
1398
+ }, { immediate: !0 });
1399
+ let Hi = x(() => {
1400
+ if (B.value.style.chart.lines.distributed) return {
1401
+ min: -1,
1402
+ max: 1
1403
+ };
1404
+ let e = hr.value, t = gr.value, n = Math.max(1, ...[...e, ...t].map((e) => e.series?.length || 0)), r = Array(n).fill(0), i = Array(n).fill(0);
1405
+ e.forEach((e) => {
1406
+ for (let t = 0; t < n; t += 1) {
1407
+ let n = e.series[t] ?? 0;
1408
+ n >= 0 ? r[t] += n : i[t] += n;
1409
+ }
1410
+ });
1411
+ let a = Array(n).fill(0), o = Array(n).fill(0);
1412
+ t.forEach((e) => {
1413
+ for (let t = 0; t < n; t += 1) {
1414
+ let n = e.series[t] ?? 0;
1415
+ n > 0 && (a[t] = Math.max(a[t], n)), n < 0 && (o[t] = Math.min(o[t], n));
1416
+ }
1417
+ });
1418
+ let s = Math.max(0, ...r, ...a), c = Math.min(0, ...i, ...o), l = B.value.style.chart.grid.scale.scaleMin, u = B.value.style.chart.grid.scale.scaleMax, d = B.value.style.chart.grid.scale.ticks, f = !B.value.style.chart.lines.distributed && (l !== null || u !== null) ? _(l === null ? c > 0 ? 0 : c : l, u === null ? s < 0 ? 0 : s : u, d) : v(l === null ? c > 0 ? 0 : c : l, u === null ? s < 0 ? 0 : s : u, d);
1419
+ return {
1420
+ min: Number(f.min) || 0,
1421
+ max: Number(f.max) || 0
1422
+ };
1423
+ });
1424
+ function Ui({ minimapH: e, unitW: t }) {
1425
+ let n = (e) => typeof e == "string" ? e.replace(/^M\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*,?\s*[-+]?[\d.]+(?:e[-+]?\d+)?\s*/i, "").trim() : "";
1426
+ if (!Number.isFinite(e) || e <= 0 || !Number.isFinite(t) || t <= 0) return "";
1427
+ let r = Y.value.filter((e) => !e.standalone), i = Y.value.filter((e) => e.standalone), a = Math.max(0, ...Y.value.map((e) => Array.isArray(e.fullSeries) ? e.fullSeries.length : e.series.length));
1428
+ if (a <= 0) return "";
1429
+ let o = a === 1 ? [t * .5] : Array.from({ length: a }, (e, n) => n * t);
1430
+ if (B.value.style.chart.lines.distributed) {
1431
+ let t = Array.from({ length: a }, (e, t) => {
1432
+ let n = 0;
1433
+ return r.forEach((e) => {
1434
+ let r = (Array.isArray(e.fullSeries) ? e.fullSeries : e.series)?.[t];
1435
+ r != null && !Number.isNaN(r) && (n += Math.abs(r));
1436
+ }), n || 1;
1437
+ }), s = (t) => e - e * Math.max(0, Math.min(1, t || 0)), l = [], u = Array(a).fill(0);
1438
+ return r.forEach((e) => {
1439
+ let r = Array.isArray(e.fullSeries) ? e.fullSeries : e.series, i = Array(a), d = Array(a);
1440
+ for (let e = 0; e < a; e += 1) {
1441
+ let n = r?.[e], a = n == null || Number.isNaN(n) ? 0 : Math.abs(n) / t[e];
1442
+ d[e] = u[e], u[e] += a, i[e] = u[e];
1443
+ }
1444
+ let f = i.map(s), p = d.map(s), m = o.map((e, t) => ({
1445
+ x: e,
1446
+ y: f[t]
1447
+ })), h = o.map((e, t) => ({
1448
+ x: e,
1449
+ y: p[t]
1450
+ })), g = ne(m), _ = ne([...h].reverse()), ee = c(m), v = c([...h].reverse()), y = h[h.length - 1];
1451
+ if (B.value.style.chart.lines.useArea) {
1452
+ let t = B.value.style.chart.lines.smooth ? `M${m[0].x},${m[0].y} ${n(g)} L${y.x},${y.y} ${n(_)} Z` : `M${m[0].x},${m[0].y} ${n(ee)} L${y.x},${y.y} ${n(v)} Z`;
1453
+ l.push(`<path d="${t}"
1454
+ fill="${Xt.pattern ? `url(#pattern_${R.value}_${e.absoluteIndex})` : (B.value.style.chart.lines.gradient.show, e.color)}"
1455
+ opacity="${B.value.style.chart.lines.areaOpacity}"
1456
+ stroke="none" />`);
1457
+ }
1458
+ let te = B.value.style.chart.lines.smooth ? `M${m[0].x},${m[0].y} ${n(g)}` : `M${m[0].x},${m[0].y} ${n(ee)}`;
1459
+ l.push(`<path d="${te}"
1460
+ fill="none"
1461
+ stroke="${e.color}"
1462
+ stroke-width="${B.value.style.chart.lines.strokeWidth}"
1463
+ stroke-linecap="round" />`);
1464
+ }), i.length && i.forEach((e) => {
1465
+ let r = Array.isArray(e.fullSeries) ? e.fullSeries : e.series, i = Array.from({ length: a }, (e, n) => s(Math.abs(r?.[n] ?? 0) / t[n])), u = o.map((e, t) => ({
1466
+ x: e,
1467
+ y: i[t]
1468
+ })), d = ne(u), f = c(u), p = B.value.style.chart.lines.smooth ? `M${u[0].x},${u[0].y} ${n(d)}` : `M${u[0].x},${u[0].y} ${n(f)}`;
1469
+ l.push(`<path d="${p}"
1470
+ fill="none"
1471
+ stroke="${e.color}"
1472
+ stroke-width="${B.value.style.chart.lines.strokeWidth}"
1473
+ stroke-linecap="round" />`);
1474
+ }), l.join("");
1475
+ }
1476
+ let s = Hi.value.min, l = Hi.value.max, u = Math.abs(s), d = l + u || 1, f = (t) => Math.max(0, Math.min(e, t)), p = (t) => f(e - e * (((t ?? 0) + u) / d)), m = [];
1477
+ if (r.length) {
1478
+ let e = Array(a).fill(0), t = Array(a).fill(0);
1479
+ r.forEach((r) => {
1480
+ let i = Array.isArray(r.fullSeries) ? r.fullSeries : r.series, s = Array(a), l = Array(a);
1481
+ for (let n = 0; n < a; n += 1) {
1482
+ let r = i?.[n] ?? 0;
1483
+ r >= 0 ? (l[n] = e[n], e[n] += r, s[n] = e[n]) : (l[n] = t[n], t[n] += r, s[n] = t[n]);
1484
+ }
1485
+ let u = s.map(p), d = l.map(p), f = o.map((e, t) => ({
1486
+ x: e,
1487
+ y: u[t]
1488
+ })), h = o.map((e, t) => ({
1489
+ x: e,
1490
+ y: d[t]
1491
+ })), g = ne(f), _ = ne([...h].reverse()), ee = c(f), v = c([...h].reverse()), y = h[h.length - 1];
1492
+ if (B.value.style.chart.lines.useArea) {
1493
+ let e = B.value.style.chart.lines.smooth ? `M${f[0].x},${f[0].y} ${n(g)} L${y.x},${y.y} ${n(_)} Z` : `M${f[0].x},${f[0].y} ${n(ee)} L${y.x},${y.y} ${n(v)} Z`;
1494
+ m.push(`<path d="${e}"
1495
+ fill="${Xt.pattern ? `url(#pattern_${R.value}_${r.absoluteIndex})` : (B.value.style.chart.lines.gradient.show, r.color)}"
1496
+ opacity="${B.value.style.chart.lines.areaOpacity}"
1497
+ stroke="none" />`);
1498
+ }
1499
+ let te = B.value.style.chart.lines.smooth ? `M${f[0].x},${f[0].y} ${n(g)}` : `M${f[0].x},${f[0].y} ${n(ee)}`;
1500
+ m.push(`<path d="${te}"
1501
+ fill="none"
1502
+ stroke="${r.color}"
1503
+ stroke-width="${B.value.style.chart.lines.strokeWidth}"
1504
+ stroke-linecap="round" />`);
1505
+ });
1506
+ }
1507
+ return i.length && i.forEach((e) => {
1508
+ let t = (Array.isArray(e.fullSeries) ? e.fullSeries : e.series).map(p), r = o.map((e, n) => ({
1509
+ x: e,
1510
+ y: t[n]
1511
+ })), i = ne(r), a = c(r), s = B.value.style.chart.lines.smooth ? `M${r[0].x},${r[0].y} ${n(i)}` : `M${r[0].x},${r[0].y} ${n(a)}`;
1512
+ m.push(`<path d="${s}"
1513
+ fill="none"
1514
+ stroke="${e.color}"
1515
+ stroke-width="${B.value.style.chart.lines.strokeWidth}"
1516
+ stroke-linecap="round" />`);
1517
+ }), m.join("");
1518
+ }
1519
+ function Wi(e, t) {
1520
+ let n = B.value.style.chart.lines, r = n.dataLabels;
1521
+ return n.showDistributedPercentage && n.distributed ? Jn.value ? t === 0 ? !r.hideEmptyPercentages : Math.abs(t) * 100 >= r.hideUnderPercentage : r.hideEmptyPercentages ? Math.abs(t) > 0 : !0 : Jn.value ? (qn.value && ir.value && console.warn("Vue Data UI - VueUiStackline - You cannot set both dataLabels.hideUnderPercentage and dataLabels.hideUnderValue. Note that dataLabels.hideUnderPercentage takes precedence in this case."), Math.abs(e) > Gi.value * r.hideUnderPercentage / 100) : qn.value ? Math.abs(e) >= r.hideUnderValue : r.hideEmptyValues ? e !== 0 : !0;
1522
+ }
1523
+ let Gi = x(() => Math.max(...Y.value.flatMap((e) => e.series)));
1524
+ function Ki(e, t, n, r, i) {
1525
+ let a = i === -1 && e >= 0 ? -e : e;
1526
+ return y(B.value.style.chart.lines.dataLabels.formatter, a, o({
1527
+ p: B.value.style.chart.lines.dataLabels.prefix,
1528
+ v: a,
1529
+ s: B.value.style.chart.lines.dataLabels.suffix,
1530
+ r: B.value.style.chart.lines.dataLabels.rounding
1531
+ }), {
1532
+ datapoint: t,
1533
+ seriesIndex: n,
1534
+ datapointIndex: r
1535
+ });
1536
+ }
1537
+ function qi(e, t, n, r) {
1538
+ return y(B.value.style.chart.lines.dataLabels.formatter, e, o({
1539
+ v: isNaN(e) ? 0 : e,
1540
+ s: "%",
1541
+ r: B.value.style.chart.lines.dataLabels.rounding
1542
+ }), {
1543
+ datapoint: t,
1544
+ seriesIndex: n,
1545
+ datapointIndex: r
1546
+ });
1547
+ }
1548
+ function Ji({ seriesIndex: e, datapoint: t }) {
1549
+ let n = q.value.start + e;
1550
+ I("selectX", {
1551
+ dataset: t,
1552
+ index: n,
1553
+ indexLabel: B.value.style.chart.grid.x.timeLabels.values[n]
1554
+ });
1555
+ }
1556
+ function Yi(e) {
1557
+ if (e?.stage === "start") {
1558
+ hn.value = !0;
1559
+ return;
1560
+ }
1561
+ if (e?.stage === "end") {
1562
+ hn.value = !1;
1563
+ return;
1564
+ }
1565
+ Qn();
1566
+ }
1567
+ async function Xi() {
1568
+ if (I("copyAlt", {
1569
+ config: B.value,
1570
+ dataset: Y.value
1571
+ }), !B.value.userOptions.callbacks.altCopy) {
1572
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
1573
+ return;
1574
+ }
1575
+ await Promise.resolve(B.value.userOptions.callbacks.altCopy({
1576
+ config: B.value,
1577
+ dataset: Y.value
1578
+ }));
1579
+ }
1580
+ let Zi = k(!1);
1581
+ function Qi() {
1582
+ En.value = null, Zi.value = !0;
1583
+ }
1584
+ function $i() {
1585
+ En.value = null, On.value = "pointer", Qt.value = !1, $.value = null, I("selectX", {
1586
+ index: null,
1587
+ indexLabel: null,
1588
+ dataset: null
1589
+ }), Zi.value = !1;
1590
+ }
1591
+ function ea(e) {
1592
+ if (!V.value || Pn.value || document.activeElement !== V.value || Dr.value || !Z.value) return;
1593
+ let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1594
+ if (!t && !n && !r && !i) return;
1595
+ if (e.preventDefault(), e.stopPropagation(), i) {
1596
+ En.value = null, On.value = "pointer", Qt.value = !1, $.value = null, I("selectX", {
1597
+ index: null,
1598
+ indexLabel: null,
1599
+ dataset: null
1600
+ });
1601
+ return;
1602
+ }
1603
+ if (r) {
1604
+ if (En.value === null) return;
1605
+ ui(En.value);
1606
+ return;
1607
+ }
1608
+ let a = En.value, o = ri.value, s = a !== null && a >= 0 && a < Z.value, c = o !== null && o >= 0 && o < Z.value;
1609
+ s ? n ? (a += 1, a >= Z.value && (a = 0)) : t && (--a, a < 0 && (a = Z.value - 1)) : c ? (a = n ? o + 1 : o - 1, a >= Z.value && (a = 0), a < 0 && (a = Z.value - 1)) : a = n ? 0 : Z.value - 1, En.value = a, ta(a), hi(!0, a, "keyboard");
1610
+ }
1611
+ function ta(e) {
1612
+ if (!Number.isFinite(e) || !V.value) return;
1613
+ let n = t(W.value.left + e * oi.value, W.value.top + W.value.height / 2, V.value);
1614
+ n && (Dn.value = n);
1615
+ }
1616
+ let na = x(() => ({
1617
+ headers: Ei.value?.colNames ?? [],
1618
+ rows: Ei.value?.body ?? []
1619
+ }));
1620
+ return Ee({
1621
+ getData: zi,
1622
+ getImage: Mi,
1623
+ generatePdf: Zn,
1624
+ generateCsv: Ti,
1625
+ generateImage: Qn,
1626
+ generateSvg: ji,
1627
+ hideSeries: Ci,
1628
+ showSeries: Si,
1629
+ toggleTable: Ii,
1630
+ toggleLabels: Li,
1631
+ toggleTooltip: Ri,
1632
+ toggleAnnotator: Fn,
1633
+ toggleFullscreen: Fi,
1634
+ copyAlt: Xi
1635
+ }), (t, r) => (O(), w("div", {
1636
+ id: `stackline_${R.value}`,
1637
+ ref_key: "stacklineChart",
1638
+ ref: L,
1639
+ class: Ue({
1640
+ "vue-data-ui-component": !0,
1641
+ "vue-ui-stackline": !0,
1642
+ "vue-data-ui-wrapper-fullscreen": on.value
1643
+ }),
1644
+ style: We(`background:${B.value.style.chart.backgroundColor};color:${B.value.style.chart.color};font-family:${B.value.style.fontFamily}; position: relative; ${B.value.responsive ? "height: 100%" : ""}`),
1645
+ onMouseenter: Wn,
1646
+ onMouseleave: Gn
1647
+ }, [
1648
+ T("div", {
1649
+ id: `chart-instructions-${R.value}`,
1650
+ class: "sr-only"
1651
+ }, [T("p", null, M(B.value.a11y.translations.keyboardNavigation), 1)], 8, tt),
1652
+ na.value?.rows?.length ? (O(), S(je, {
1653
+ key: 0,
1654
+ uid: R.value,
1655
+ head: na.value.headers,
1656
+ body: na.value.rows,
1657
+ notice: B.value.a11y.translations.tableAvailable,
1658
+ caption: B.value.a11y.translations.tableCaption
1659
+ }, null, 8, [
1660
+ "uid",
1661
+ "head",
1662
+ "body",
1663
+ "notice",
1664
+ "caption"
1665
+ ])) : C("", !0),
1666
+ B.value.userOptions.buttons.annotator ? (O(), S(N(Ut), {
1667
+ key: 1,
1668
+ svgRef: N(V),
1669
+ backgroundColor: B.value.style.chart.backgroundColor,
1670
+ color: B.value.style.chart.color,
1671
+ active: Pn.value,
1672
+ isCursorPointer: In.value,
1673
+ onClose: Fn
1674
+ }, {
1675
+ "annotator-action-close": P(() => [j(t.$slots, "annotator-action-close", {}, void 0, !0)]),
1676
+ "annotator-action-color": P(({ color: e }) => [j(t.$slots, "annotator-action-color", D(E({ color: e })), void 0, !0)]),
1677
+ "annotator-action-draw": P(({ mode: e }) => [j(t.$slots, "annotator-action-draw", D(E({ mode: e })), void 0, !0)]),
1678
+ "annotator-action-undo": P(({ disabled: e }) => [j(t.$slots, "annotator-action-undo", D(E({ disabled: e })), void 0, !0)]),
1679
+ "annotator-action-redo": P(({ disabled: e }) => [j(t.$slots, "annotator-action-redo", D(E({ disabled: e })), void 0, !0)]),
1680
+ "annotator-action-delete": P(({ disabled: e }) => [j(t.$slots, "annotator-action-delete", D(E({ disabled: e })), void 0, !0)]),
1681
+ _: 3
1682
+ }, 8, [
1683
+ "svgRef",
1684
+ "backgroundColor",
1685
+ "color",
1686
+ "active",
1687
+ "isCursorPointer"
1688
+ ])) : C("", !0),
1689
+ j(t.$slots, "userConfig", {}, void 0, !0),
1690
+ $n.value ? (O(), w("div", {
1691
+ key: 2,
1692
+ ref_key: "noTitle",
1693
+ ref: rn,
1694
+ class: "vue-data-ui-no-title-space",
1695
+ style: "height:36px; width: 100%;background:transparent"
1696
+ }, null, 512)) : C("", !0),
1697
+ B.value.style.chart.title.text ? (O(), w("div", {
1698
+ key: 3,
1699
+ ref_key: "chartTitle",
1700
+ ref: en,
1701
+ style: "width:100%;background:transparent;"
1702
+ }, [(O(), S(we, {
1703
+ key: `title_${cn.value}`,
1704
+ config: {
1705
+ title: {
1706
+ cy: "stackline-title",
1707
+ ...B.value.style.chart.title
1708
+ },
1709
+ subtitle: {
1710
+ cy: "stackline-subtitle",
1711
+ ...B.value.style.chart.title.subtitle
1712
+ }
1713
+ }
1714
+ }, null, 8, ["config"]))], 512)) : C("", !0),
1715
+ T("div", { id: `legend-top-${R.value}` }, null, 8, nt),
1716
+ B.value.userOptions.show && Zt.value && (N(Un) || N(Vn)) ? (O(), S(N(Wt), {
1717
+ ref_key: "userOptionsRef",
1718
+ ref: pn,
1719
+ key: `user_option_${$t.value}`,
1720
+ backgroundColor: B.value.style.chart.backgroundColor,
1721
+ color: B.value.style.chart.color,
1722
+ isPrinting: N(Yn),
1723
+ isImaging: N(Xn),
1724
+ uid: R.value,
1725
+ hasTooltip: B.value.style.chart.tooltip.show && B.value.userOptions.buttons.tooltip,
1726
+ hasPdf: B.value.userOptions.buttons.pdf,
1727
+ hasImg: B.value.userOptions.buttons.img,
1728
+ hasSvg: B.value.userOptions.buttons.svg,
1729
+ hasXls: B.value.userOptions.buttons.csv,
1730
+ hasTable: B.value.userOptions.buttons.table,
1731
+ hasLabel: B.value.userOptions.buttons.labels,
1732
+ hasFullscreen: B.value.userOptions.buttons.fullscreen,
1733
+ hasAltCopy: B.value.userOptions.buttons.altCopy,
1734
+ isFullscreen: on.value,
1735
+ chartElement: L.value,
1736
+ position: B.value.userOptions.position,
1737
+ isTooltip: H.value.showTooltip,
1738
+ titles: { ...B.value.userOptions.buttonTitles },
1739
+ hasAnnotator: B.value.userOptions.buttons.annotator,
1740
+ isAnnotation: Pn.value,
1741
+ callbacks: B.value.userOptions.callbacks,
1742
+ printScale: B.value.userOptions.print.scale,
1743
+ tableDialog: B.value.table.useDialog,
1744
+ isCursorPointer: In.value,
1745
+ onToggleFullscreen: Fi,
1746
+ onGeneratePdf: N(Zn),
1747
+ onGenerateCsv: Ti,
1748
+ onGenerateImage: Yi,
1749
+ onGenerateSvg: ji,
1750
+ onToggleTable: Ii,
1751
+ onToggleLabels: Li,
1752
+ onToggleTooltip: Ri,
1753
+ onToggleAnnotator: Fn,
1754
+ onCopyAlt: Xi,
1755
+ style: We({ visibility: N(Un) ? N(Vn) ? "visible" : "hidden" : "visible" })
1756
+ }, Le({ _: 2 }, [
1757
+ t.$slots.menuIcon ? {
1758
+ name: "menuIcon",
1759
+ fn: P(({ isOpen: e, color: n }) => [j(t.$slots, "menuIcon", D(E({
1760
+ isOpen: e,
1761
+ color: n
1762
+ })), void 0, !0)]),
1763
+ key: "0"
1764
+ } : void 0,
1765
+ t.$slots.optionTooltip ? {
1766
+ name: "optionTooltip",
1767
+ fn: P(() => [j(t.$slots, "optionTooltip", {}, void 0, !0)]),
1768
+ key: "1"
1769
+ } : void 0,
1770
+ t.$slots.optionPdf ? {
1771
+ name: "optionPdf",
1772
+ fn: P(() => [j(t.$slots, "optionPdf", {}, void 0, !0)]),
1773
+ key: "2"
1774
+ } : void 0,
1775
+ t.$slots.optionCsv ? {
1776
+ name: "optionCsv",
1777
+ fn: P(() => [j(t.$slots, "optionCsv", {}, void 0, !0)]),
1778
+ key: "3"
1779
+ } : void 0,
1780
+ t.$slots.optionImg ? {
1781
+ name: "optionImg",
1782
+ fn: P(() => [j(t.$slots, "optionImg", {}, void 0, !0)]),
1783
+ key: "4"
1784
+ } : void 0,
1785
+ t.$slots.optionSvg ? {
1786
+ name: "optionSvg",
1787
+ fn: P(() => [j(t.$slots, "optionSvg", {}, void 0, !0)]),
1788
+ key: "5"
1789
+ } : void 0,
1790
+ t.$slots.optionTable ? {
1791
+ name: "optionTable",
1792
+ fn: P(() => [j(t.$slots, "optionTable", {}, void 0, !0)]),
1793
+ key: "6"
1794
+ } : void 0,
1795
+ t.$slots.optionLabels ? {
1796
+ name: "optionLabels",
1797
+ fn: P(() => [j(t.$slots, "optionLabels", {}, void 0, !0)]),
1798
+ key: "7"
1799
+ } : void 0,
1800
+ t.$slots.optionFullscreen ? {
1801
+ name: "optionFullscreen",
1802
+ fn: P(({ toggleFullscreen: e, isFullscreen: n }) => [j(t.$slots, "optionFullscreen", D(E({
1803
+ toggleFullscreen: e,
1804
+ isFullscreen: n
1805
+ })), void 0, !0)]),
1806
+ key: "8"
1807
+ } : void 0,
1808
+ t.$slots.optionAnnotator ? {
1809
+ name: "optionAnnotator",
1810
+ fn: P(({ toggleAnnotator: e, isAnnotator: n }) => [j(t.$slots, "optionAnnotator", D(E({
1811
+ toggleAnnotator: e,
1812
+ isAnnotator: n
1813
+ })), void 0, !0)]),
1814
+ key: "9"
1815
+ } : void 0,
1816
+ t.$slots.optionAltCopy ? {
1817
+ name: "optionAltCopy",
1818
+ fn: P(({ altCopy: e }) => [j(t.$slots, "optionAltCopy", D(E({ altCopy: e })), void 0, !0)]),
1819
+ key: "10"
1820
+ } : void 0,
1821
+ t.$slots["custom-menu-before"] ? {
1822
+ name: "custom-menu-before",
1823
+ fn: P(() => [j(t.$slots, "custom-menu-before", {}, void 0, !0)]),
1824
+ key: "11"
1825
+ } : void 0,
1826
+ t.$slots["custom-menu-after"] ? {
1827
+ name: "custom-menu-after",
1828
+ fn: P(() => [j(t.$slots, "custom-menu-after", {}, void 0, !0)]),
1829
+ key: "12"
1830
+ } : void 0
1831
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasLabel.hasFullscreen.hasAltCopy.isFullscreen.chartElement.position.isTooltip.titles.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.style".split("."))) : C("", !0),
1832
+ T("div", rt, [(O(), w("svg", {
1833
+ ref_key: "svgRef",
1834
+ ref: V,
1835
+ "aria-describedby": `chart-instructions-${R.value}`,
1836
+ xmlns: N(oe),
1837
+ viewBox: `0 0 ${W.value.chartWidth <= 0 ? 10 : W.value.chartWidth} ${W.value.chartHeight <= 0 ? 10 : W.value.chartHeight}`,
1838
+ class: Ue({
1839
+ "vue-data-ui-loading": N(Rn),
1840
+ "no-transition": !B.value.useCssAnimation
1841
+ }),
1842
+ style: We(`max-width:100%;overflow:visible;background:transparent;color:${B.value.style.chart.color}`),
1843
+ role: "img",
1844
+ "aria-live": "polite",
1845
+ tabindex: "0",
1846
+ preserveAspectRatio: "xMidYMid",
1847
+ onMousemove: ci,
1848
+ onMouseleave: di,
1849
+ onClick: li,
1850
+ onFocus: Qi,
1851
+ onBlur: $i,
1852
+ onKeydown: ea
1853
+ }, [
1854
+ ze(N(Gt)),
1855
+ (O(!0), w(b, null, A(hr.value, (e) => (O(), w(b, null, [t.$slots.pattern ? (O(), w("defs", at, [j(t.$slots, "pattern", Ve({ ref_for: !0 }, {
1856
+ seriesIndex: e.absoluteIndex,
1857
+ patternId: `pattern_${R.value}_${e.absoluteIndex}`
1858
+ }), void 0, !0)])) : C("", !0)], 64))), 256)),
1859
+ t.$slots["chart-background"] ? (O(), w("foreignObject", {
1860
+ key: 0,
1861
+ x: X.value.left,
1862
+ y: W.value.top,
1863
+ width: X.value.width,
1864
+ height: W.value.height,
1865
+ style: { pointerEvents: "none" }
1866
+ }, [j(t.$slots, "chart-background", {}, void 0, !0)], 8, ot)) : C("", !0),
1867
+ B.value.style.chart.lines.gradient.show ? (O(), w("defs", st, [(O(!0), w(b, null, A(Y.value, (e, t) => (O(), w("linearGradient", {
1868
+ id: `gradient_${e.id}`,
1869
+ x1: "0%",
1870
+ y1: "0%",
1871
+ x2: "0%",
1872
+ y2: "100%"
1873
+ }, [T("stop", {
1874
+ offset: "0%",
1875
+ "stop-color": e.color
1876
+ }, null, 8, lt), T("stop", {
1877
+ offset: "100%",
1878
+ "stop-color": N(n)(e.color, B.value.style.chart.lines.gradient.intensity / 100)
1879
+ }, null, 8, ut)], 8, ct))), 256))])) : C("", !0),
1880
+ B.value.style.chart.grid.x.showHorizontalLines ? (O(!0), w(b, { key: 2 }, A(Ir.value, (e, t) => (O(), w("line", {
1881
+ x1: X.value.left,
1882
+ x2: X.value.right,
1883
+ y1: e.y,
1884
+ y2: e.y,
1885
+ stroke: B.value.style.chart.grid.x.linesColor,
1886
+ "stroke-width": B.value.style.chart.grid.x.linesThickness,
1887
+ "stroke-dasharray": B.value.style.chart.grid.x.linesStrokeDasharray,
1888
+ "stroke-linecap": "round"
1889
+ }, null, 8, dt))), 256)) : C("", !0),
1890
+ B.value.style.chart.grid.y.showVerticalLines ? (O(!0), w(b, { key: 3 }, A(q.value.end - q.value.start, (e, t) => (O(), w("line", {
1891
+ x1: Q(t),
1892
+ x2: Q(t),
1893
+ y1: W.value.top,
1894
+ y2: W.value.bottom,
1895
+ stroke: B.value.style.chart.grid.y.linesColor,
1896
+ "stroke-width": B.value.style.chart.grid.y.linesThickness,
1897
+ "stroke-dasharray": B.value.style.chart.grid.y.linesStrokeDasharray,
1898
+ "stroke-linecap": "round"
1899
+ }, null, 8, ft))), 256)) : C("", !0),
1900
+ B.value.style.chart.grid.x.showAxis ? (O(), w("line", {
1901
+ key: 4,
1902
+ x1: X.value.left,
1903
+ x2: X.value.right,
1904
+ y1: W.value.bottom,
1905
+ y2: W.value.bottom,
1906
+ stroke: B.value.style.chart.grid.x.axisColor,
1907
+ "stroke-width": B.value.style.chart.grid.x.axisThickness,
1908
+ "stroke-linecap": "round",
1909
+ "stroke-linejoin": "round"
1910
+ }, null, 8, pt)) : C("", !0),
1911
+ B.value.style.chart.grid.y.showAxis && !B.value.style.chart.lines.distributed ? (O(), w("line", {
1912
+ key: 5,
1913
+ x1: or.value ? X.value.right : X.value.left,
1914
+ x2: or.value ? X.value.right : X.value.left,
1915
+ y1: W.value.top,
1916
+ y2: W.value.bottom,
1917
+ stroke: B.value.style.chart.grid.y.axisColor,
1918
+ "stroke-width": B.value.style.chart.grid.y.axisThickness,
1919
+ "stroke-linecap": "round",
1920
+ "stroke-linejoin": "round"
1921
+ }, null, 8, mt)) : C("", !0),
1922
+ B.value.style.chart.grid.x.axisName.show && B.value.style.chart.grid.x.axisName.text ? (O(), w("text", {
1923
+ key: 6,
1924
+ ref_key: "xAxisLabel",
1925
+ ref: _n,
1926
+ x: W.value.left + W.value.width / 2,
1927
+ y: W.value.chartHeight - 3,
1928
+ "font-size": B.value.style.chart.grid.x.axisName.fontSize,
1929
+ fill: B.value.style.chart.grid.x.axisName.color,
1930
+ "font-weight": B.value.style.chart.grid.x.axisName.bold ? "bold" : "normal",
1931
+ "text-anchor": "middle"
1932
+ }, M(B.value.style.chart.grid.x.axisName.text), 9, ht)) : C("", !0),
1933
+ B.value.style.chart.grid.y.axisName.show && B.value.style.chart.grid.y.axisName.text ? (O(), w("text", {
1934
+ key: 7,
1935
+ ref_key: "yAxisLabel",
1936
+ ref: vn,
1937
+ transform: `translate(${or.value ? W.value.chartWidth - B.value.style.chart.grid.y.axisName.fontSize / 2 - B.value.style.chart.grid.y.axisName.offsetX : B.value.style.chart.grid.y.axisName.fontSize + B.value.style.chart.grid.y.axisName.offsetX}, ${W.value.top + W.value.height / 2}) rotate(-90)`,
1938
+ "font-size": B.value.style.chart.grid.y.axisName.fontSize,
1939
+ fill: B.value.style.chart.grid.y.axisName.color,
1940
+ "font-weight": B.value.style.chart.grid.y.axisName.bold ? "bold" : "normal",
1941
+ "text-anchor": "middle"
1942
+ }, M(B.value.style.chart.grid.y.axisName.text), 9, gt)) : C("", !0),
1943
+ B.value.style.chart.grid.frame.show ? (O(), w("rect", {
1944
+ key: 8,
1945
+ style: {
1946
+ pointerEvents: "none",
1947
+ transition: "none",
1948
+ animation: "none !important"
1949
+ },
1950
+ x: X.value.left,
1951
+ y: W.value.top,
1952
+ width: X.value.width,
1953
+ height: W.value.height,
1954
+ fill: "transparent",
1955
+ stroke: B.value.style.chart.grid.frame.stroke,
1956
+ "stroke-width": B.value.style.chart.grid.frame.strokeWidth,
1957
+ "stroke-linecap": B.value.style.chart.grid.frame.strokeLinecap,
1958
+ "stroke-linejoin": B.value.style.chart.grid.frame.strokeLinejoin,
1959
+ "stroke-dasharray": B.value.style.chart.grid.frame.strokeDasharray
1960
+ }, null, 8, _t)) : C("", !0),
1961
+ (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [B.value.style.chart.lines.useArea && !e.standalone ? (O(), w("path", {
1962
+ key: 0,
1963
+ d: B.value.style.chart.lines.smooth ? e.smoothArea : e.straightArea,
1964
+ fill: t.$slots.pattern ? `url(#pattern_${R.value}_${e.absoluteIndex})` : B.value.style.chart.lines.gradient.show ? `url(#gradient_${e.id})` : e.color,
1965
+ opacity: B.value.style.chart.lines.areaOpacity,
1966
+ style: We({ transition: N(Rn) || !B.value.useCssAnimation ? void 0 : "all 0.3s ease-in-out" })
1967
+ }, null, 12, vt)) : C("", !0)], 64))), 256)),
1968
+ (O(!0), w(b, null, A(Y.value, (e) => (O(), w("path", {
1969
+ d: B.value.style.chart.lines.smooth ? e.smoothPath : e.straightPath,
1970
+ stroke: B.value.style.chart.lines.path.useSerieColor ? e.color : B.value.style.chart.lines.path.stroke,
1971
+ "stroke-width": B.value.style.chart.lines.strokeWidth,
1972
+ fill: "none",
1973
+ "stroke-linecap": "round",
1974
+ style: We({ transition: N(Rn) || !B.value.useCssAnimation ? void 0 : "all 0.3s ease-in-out" })
1975
+ }, null, 12, yt))), 256)),
1976
+ B.value.style.chart.grid.y.axisLabels.show && !B.value.style.chart.lines.distributed ? (O(), w("g", {
1977
+ key: 9,
1978
+ ref_key: "scaleLabels",
1979
+ ref: yn
1980
+ }, [(O(!0), w(b, null, A(Ir.value, (e, t) => (O(), w("line", {
1981
+ x1: or.value ? X.value.right : X.value.left,
1982
+ x2: or.value ? X.value.right + 6 : X.value.left - 6,
1983
+ y1: e.y,
1984
+ y2: e.y,
1985
+ stroke: B.value.style.chart.grid.x.axisColor,
1986
+ "stroke-width": 1
1987
+ }, null, 8, bt))), 256)), (O(!0), w(b, null, A(Ir.value, (e, t) => (O(), w("text", {
1988
+ x: e.x,
1989
+ y: e.y + B.value.style.chart.grid.y.axisLabels.fontSize / 3,
1990
+ "font-size": B.value.style.chart.grid.y.axisLabels.fontSize,
1991
+ "font-weight": B.value.style.chart.grid.y.axisLabels.bold ? "bold" : "normal",
1992
+ fill: B.value.style.chart.grid.y.axisLabels.color,
1993
+ "text-anchor": or.value ? "start" : "end"
1994
+ }, M(N(y)(B.value.style.chart.grid.y.axisLabels.formatter, e.value, N(o)({
1995
+ p: B.value.style.chart.lines.dataLabels.prefix,
1996
+ v: e.value,
1997
+ s: B.value.style.chart.lines.dataLabels.suffix,
1998
+ r: B.value.style.chart.grid.y.axisLabels.rounding
1999
+ }), { datapoint: e })), 9, xt))), 256))], 512)) : C("", !0),
2000
+ B.value.style.chart.grid.x.timeLabels.show ? (O(), w("g", {
2001
+ key: 10,
2002
+ ref_key: "timeLabelsEls",
2003
+ ref: bn
2004
+ }, [t.$slots["time-label"] ? (O(), w("g", St, [(O(!0), w(b, null, A(Hr.value, (e, n) => (O(), w("g", null, [j(t.$slots, "time-label", Ve({ ref_for: !0 }, {
2005
+ x: W.value.left + Tr.value * n + Tr.value / 2,
2006
+ y: W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY,
2007
+ fontSize: B.value.style.chart.grid.x.timeLabels.fontSize,
2008
+ fill: B.value.style.chart.grid.x.timeLabels.color,
2009
+ transform: `translate(${W.value.left + Tr.value * n + Tr.value / 2}, ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${B.value.style.chart.grid.x.timeLabels.rotation})`,
2010
+ absoluteIndex: e.absoluteIndex,
2011
+ content: e.text,
2012
+ textAnchor: B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2013
+ show: !0
2014
+ }), void 0, !0)]))), 256))])) : (O(), w("g", Ct, [(O(!0), w(b, null, A(Hr.value, (e, n) => (O(), w("g", null, [String(e.text).includes("\n") ? (O(), w("text", {
2015
+ key: n + "-multi",
2016
+ "text-anchor": B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2017
+ "font-size": B.value.style.chart.grid.x.timeLabels.fontSize,
2018
+ fill: B.value.style.chart.grid.x.timeLabels.color,
2019
+ transform: `
2020
+ translate(
2021
+ ${Q(n)},
2022
+ ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}
2023
+ ),
2024
+ rotate(${B.value.style.chart.grid.x.timeLabels.rotation})
2025
+ `,
2026
+ style: We({ cursor: In.value ? "pointer" : "default" }),
2027
+ innerHTML: t.createTSpansFromLineBreaksOnX({
2028
+ content: String(e.text),
2029
+ fontSize: B.value.style.chart.grid.x.timeLabels.fontSize,
2030
+ fill: B.value.style.chart.grid.x.timeLabels.color,
2031
+ x: 0,
2032
+ y: 0
2033
+ }),
2034
+ onClick: () => gi(e, n)
2035
+ }, null, 12, Tt)) : (O(), w("text", {
2036
+ class: "vue-data-ui-time-label",
2037
+ key: n,
2038
+ "text-anchor": B.value.style.chart.grid.x.timeLabels.rotation > 0 ? "start" : B.value.style.chart.grid.x.timeLabels.rotation < 0 ? "end" : "middle",
2039
+ "font-size": B.value.style.chart.grid.x.timeLabels.fontSize,
2040
+ "font-weight": B.value.style.chart.grid.x.timeLabels.bold ? "bold" : "normal",
2041
+ fill: B.value.style.chart.grid.x.timeLabels.color,
2042
+ transform: `translate(${Q(n)}, ${W.value.bottom + B.value.style.chart.grid.x.timeLabels.fontSize * 1.3 + B.value.style.chart.grid.x.timeLabels.offsetY}), rotate(${B.value.style.chart.grid.x.timeLabels.rotation})`,
2043
+ style: We({ cursor: In.value ? "pointer" : "default" }),
2044
+ onClick: () => gi(e, n)
2045
+ }, M(e.text), 13, wt))]))), 256))]))], 512)) : C("", !0),
2046
+ (mn.value || ![null, void 0].includes($.value)) && !B.value.style.chart.highlighter.useLine ? (O(!0), w(b, { key: 11 }, A(q.value.end - q.value.start, (e, t) => (O(), w("g", { key: `tooltip_trap_highlighter_${t}` }, [T("rect", {
2047
+ x: si(t).x,
2048
+ y: W.value.top,
2049
+ height: W.value.height,
2050
+ width: si(t).width,
2051
+ fill: [Nn.value, $.value].includes(t) ? N(a)(B.value.style.chart.highlighter.color, B.value.style.chart.highlighter.opacity) : "transparent",
2052
+ style: {
2053
+ transition: "none !important",
2054
+ animation: "none !important"
2055
+ }
2056
+ }, null, 8, Et)]))), 128)) : C("", !0),
2057
+ (mn.value || ![null, void 0].includes($.value)) && B.value.style.chart.highlighter.useLine ? (O(), w(b, { key: 12 }, [![null, void 0].includes($.value) || ![null, void 0].includes(Nn.value) ? (O(), w("g", Dt, [T("line", {
2058
+ x1: Q(($.value ?? Nn.value) || 0),
2059
+ x2: Q(($.value ?? Nn.value) || 0),
2060
+ y1: N(ie)(W.value.top),
2061
+ y2: N(ie)(W.value.bottom),
2062
+ stroke: B.value.style.chart.highlighter.color,
2063
+ "stroke-width": B.value.style.chart.highlighter.lineWidth,
2064
+ "stroke-dasharray": B.value.style.chart.highlighter.lineDasharray,
2065
+ "stroke-linecap": "round",
2066
+ style: {
2067
+ transition: "none !important",
2068
+ animation: "none !important",
2069
+ "pointer-events": "none"
2070
+ }
2071
+ }, null, 8, Ot)])) : C("", !0)], 64)) : C("", !0),
2072
+ (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [mn.value && q.value.end - q.value.start > B.value.style.chart.lines.dot.hideAboveMaxSerieLength ? (O(), w("g", kt, [$.value == null ? C("", !0) : (O(), w(b, { key: 0 }, [e.rel.includes($.value) && e.fullSeries?.[q.value.start + $.value] != null && !Number.isNaN(e.fullSeries?.[q.value.start + $.value]) ? (O(), S(Te, {
2073
+ key: 0,
2074
+ shape: [
2075
+ "triangle",
2076
+ "square",
2077
+ "diamond",
2078
+ "pentagon",
2079
+ "hexagon",
2080
+ "star"
2081
+ ].includes(e.shape) ? e.shape : "circle",
2082
+ color: B.value.style.chart.lines.dot.useSerieColor ? e.color : B.value.style.chart.lines.dot.fill,
2083
+ plot: {
2084
+ x: N(se)(e.points[e.rel.indexOf($.value)].x),
2085
+ y: N(se)(e.points[e.rel.indexOf($.value)].y)
2086
+ },
2087
+ radius: B.value.style.chart.lines.dot.radius * 1.3,
2088
+ stroke: B.value.style.chart.lines.dot.useSerieColor ? B.value.style.chart.lines.dot.stroke : e.color,
2089
+ strokeWidth: B.value.style.chart.lines.dot.strokeWidth,
2090
+ transition: N(Rn) ? void 0 : `all ${B.value.style.chart.lines.transitionDurationMs}ms ease-in-out`
2091
+ }, null, 8, [
2092
+ "shape",
2093
+ "color",
2094
+ "plot",
2095
+ "radius",
2096
+ "stroke",
2097
+ "strokeWidth",
2098
+ "transition"
2099
+ ])) : C("", !0)], 64))])) : C("", !0)], 64))), 256)),
2100
+ (O(!0), w(b, null, A(Y.value, (e) => (O(), w(b, null, [q.value.end - q.value.start < B.value.style.chart.lines.dot.hideAboveMaxSerieLength ? (O(!0), w(b, { key: 0 }, A(e.points, (t, n) => (O(), w("g", { key: n }, [e.fullSeries?.[q.value.start + e.rel[n]] != null && !Number.isNaN(e.fullSeries?.[q.value.start + e.rel[n]]) ? (O(), S(Te, {
2101
+ key: 0,
2102
+ shape: [
2103
+ "triangle",
2104
+ "square",
2105
+ "diamond",
2106
+ "pentagon",
2107
+ "hexagon",
2108
+ "star"
2109
+ ].includes(e.shape) ? e.shape : "circle",
2110
+ color: B.value.style.chart.lines.dot.useSerieColor ? e.color : B.value.style.chart.lines.dot.fill,
2111
+ plot: {
2112
+ x: t.x,
2113
+ y: t.y
2114
+ },
2115
+ radius: mn.value && $.value === e.rel[n] ? B.value.style.chart.lines.dot.radius * 1.3 : B.value.style.chart.lines.dot.radius,
2116
+ stroke: B.value.style.chart.lines.dot.useSerieColor ? B.value.style.chart.lines.dot.stroke : e.color,
2117
+ strokeWidth: B.value.style.chart.lines.dot.strokeWidth,
2118
+ transition: N(Rn) ? void 0 : `all ${B.value.style.chart.lines.transitionDurationMs}ms ease-in-out`
2119
+ }, null, 8, [
2120
+ "shape",
2121
+ "color",
2122
+ "plot",
2123
+ "radius",
2124
+ "stroke",
2125
+ "strokeWidth",
2126
+ "transition"
2127
+ ])) : C("", !0)]))), 128)) : C("", !0)], 64))), 256)),
2128
+ H.value.dataLabels.show && B.value.style.chart.lines.dataLabels.hideAboveMaxSerieLength > q.value.end - q.value.start ? (O(), w(b, { key: 13 }, [(O(!0), w(b, null, A(Y.value, (e, t) => (O(), w("g", { key: t }, [(O(!0), w(b, null, A(e.points, (n, r) => (O(), w(b, { key: r }, [Wi(e.series[r], e.proportions[r]) ? (O(), w("text", {
2129
+ key: 0,
2130
+ x: n.x,
2131
+ y: n.y + (e.series[r] >= 0 ? -B.value.style.chart.lines.dataLabels.fontSize / 2 + B.value.style.chart.lines.dataLabels.offsetY : B.value.style.chart.lines.dataLabels.fontSize * 1.2 - B.value.style.chart.lines.dataLabels.offsetY),
2132
+ "font-size": B.value.style.chart.lines.dataLabels.fontSize,
2133
+ fill: B.value.style.chart.lines.dataLabels.color,
2134
+ "font-weight": B.value.style.chart.lines.dataLabels.bold ? "bold" : "normal",
2135
+ "text-anchor": "middle"
2136
+ }, M(B.value.style.chart.lines.showDistributedPercentage && B.value.style.chart.lines.distributed ? qi(e.proportions[r] * 100, e, t, e.rel[r]) : Ki(e.series[r], e, t, e.rel[r], e.signedSeries[r])), 9, At)) : C("", !0)], 64))), 128))]))), 128)), B.value.style.chart.lines.totalValues.show && Y.value.length > 1 ? (O(), w("g", {
2137
+ key: 0,
2138
+ ref_key: "sumTop",
2139
+ ref: xn
2140
+ }, [(O(!0), w(b, null, A(Nr.value, (e, t) => (O(), w(b, null, [!B.value.style.chart.lines.dataLabels.hideEmptyValues || e.value !== 0 ? (O(), w("text", {
2141
+ key: 0,
2142
+ x: Q(t),
2143
+ y: Fr(t),
2144
+ "text-anchor": "middle",
2145
+ "font-size": B.value.style.chart.lines.totalValues.fontSize,
2146
+ "font-weight": B.value.style.chart.lines.totalValues.bold ? "bold" : "normal",
2147
+ fill: B.value.style.chart.lines.totalValues.color
2148
+ }, M(Ki(e.value, e, t, t, e.sign)), 9, jt)) : C("", !0)], 64))), 256))], 512)) : C("", !0)], 64)) : C("", !0),
2149
+ yr.value ? (O(), w("rect", Ve({ key: 14 }, mr.value, {
2150
+ "data-start": q.value.start,
2151
+ "data-end": q.value.end
2152
+ }), null, 16, Mt)) : C("", !0),
2153
+ j(t.$slots, "svg", { svg: {
2154
+ drawingArea: W.value,
2155
+ data: Y.value,
2156
+ isPrintingImg: N(Yn) || N(Xn) || hn.value,
2157
+ isPrintingSvg: gn.value
2158
+ } }, void 0, !0)
2159
+ ], 46, it)), t.$slots.hint ? (O(), w("div", Nt, [j(t.$slots, "hint", D(E({
2160
+ hint: B.value.a11y.translations.keyboardNavigation,
2161
+ isVisible: Zi.value
2162
+ })), void 0, !0)])) : C("", !0)]),
2163
+ t.$slots.watermark ? (O(), w("div", Pt, [j(t.$slots, "watermark", D(E({ isPrinting: N(Yn) || N(Xn) || hn.value || gn.value })), void 0, !0)])) : C("", !0),
2164
+ dn.value && (B.value.style.chart.legend.show || t.$slots.legend) ? (O(), S(Ie, {
2165
+ key: 6,
2166
+ to: B.value.style.chart.legend.position === "top" ? `#legend-top-${R.value}` : `#legend-bottom-${R.value}`
2167
+ }, [T("div", {
2168
+ ref_key: "chartLegend",
2169
+ ref: tn
2170
+ }, [j(t.$slots, "legend", { legend: yi.value }, () => [B.value.style.chart.legend.show ? (O(), S(Pe, {
2171
+ key: 0,
2172
+ legendSet: yi.value,
2173
+ config: bi.value,
2174
+ isCursorPointer: In.value,
2175
+ onClickMarker: r[0] ||= ({ legend: e }) => e.segregate()
2176
+ }, Le({
2177
+ item: P(({ legend: e }) => [N(Rn) ? C("", !0) : (O(), w("div", {
2178
+ key: 0,
2179
+ onClick: (t) => e.segregate(),
2180
+ style: We(`opacity:${z.value.includes(e.id) ? .5 : 1}`)
2181
+ }, M(e.name), 13, Ft))]),
2182
+ legendToggle: P(() => [yi.value.length > 2 && B.value.style.chart.legend.selectAllToggle.show && !N(Rn) ? (O(), S(Ae, {
2183
+ key: 0,
2184
+ backgroundColor: B.value.style.chart.legend.selectAllToggle.backgroundColor,
2185
+ color: B.value.style.chart.legend.selectAllToggle.color,
2186
+ fontSize: B.value.style.chart.legend.fontSize,
2187
+ checked: z.value.length > 0,
2188
+ isCursorPointer: In.value,
2189
+ onToggle: _i
2190
+ }, null, 8, [
2191
+ "backgroundColor",
2192
+ "color",
2193
+ "fontSize",
2194
+ "checked",
2195
+ "isCursorPointer"
2196
+ ])) : C("", !0)]),
2197
+ _: 2
2198
+ }, [t.$slots.pattern ? {
2199
+ name: "legend-pattern",
2200
+ fn: P(({ legend: e, index: t }) => [ze(Te, {
2201
+ shape: e.shape,
2202
+ radius: 30,
2203
+ stroke: "none",
2204
+ plot: {
2205
+ x: 30,
2206
+ y: 30
2207
+ },
2208
+ fill: `url(#pattern_${R.value}_${t})`
2209
+ }, null, 8, ["shape", "fill"])]),
2210
+ key: "0"
2211
+ } : void 0]), 1032, [
2212
+ "legendSet",
2213
+ "config",
2214
+ "isCursorPointer"
2215
+ ])) : C("", !0)], !0)], 512)], 8, ["to"])) : C("", !0),
2216
+ Zt.value && B.value.userOptions.buttons.table ? (O(), S(qe(Ni.value.component), Ve({ key: 7 }, Ni.value.props, {
2217
+ ref_key: "tableUnit",
2218
+ ref: fn,
2219
+ onClose: Pi
2220
+ }), Le({
2221
+ content: P(() => [ze(N(Ht), {
2222
+ colNames: Ei.value.colNames,
2223
+ head: Ei.value.head,
2224
+ body: Ei.value.body,
2225
+ config: Ei.value.config,
2226
+ title: B.value.table.useDialog ? "" : Ni.value.title,
2227
+ withCloseButton: !B.value.table.useDialog,
2228
+ isCursorPointer: In.value,
2229
+ onClose: Pi
2230
+ }, {
2231
+ th: P(({ th: e }) => [T("div", { innerHTML: e }, null, 8, It)]),
2232
+ td: P(({ td: e }) => [Re(M(isNaN(Number(e)) ? e : N(o)({
2233
+ p: B.value.style.chart.lines.dataLabels.prefix,
2234
+ v: e,
2235
+ s: B.value.style.chart.lines.dataLabels.suffix,
2236
+ r: B.value.table.td.roundingValue
2237
+ })), 1)]),
2238
+ _: 1
2239
+ }, 8, [
2240
+ "colNames",
2241
+ "head",
2242
+ "body",
2243
+ "config",
2244
+ "title",
2245
+ "withCloseButton",
2246
+ "isCursorPointer"
2247
+ ])]),
2248
+ _: 2
2249
+ }, [B.value.table.useDialog ? {
2250
+ name: "title",
2251
+ fn: P(() => [Re(M(Ni.value.title), 1)]),
2252
+ key: "0"
2253
+ } : void 0, B.value.table.useDialog ? {
2254
+ name: "actions",
2255
+ fn: P(() => [T("button", {
2256
+ tabindex: "0",
2257
+ class: "vue-ui-user-options-button",
2258
+ onClick: r[1] ||= (e) => Ti(B.value.userOptions.callbacks.csv),
2259
+ style: We({ cursor: In.value ? "pointer" : "default" })
2260
+ }, [ze(N(Bt), {
2261
+ name: "fileCsv",
2262
+ stroke: Ni.value.props.color
2263
+ }, null, 8, ["stroke"])], 4)]),
2264
+ key: "1"
2265
+ } : void 0]), 1040)) : C("", !0),
2266
+ B.value.style.chart.zoom.show && Zt.value && Zr.value && K.value > 6 ? (O(), S(ke, {
2267
+ key: 8,
2268
+ ref_key: "chartSlicer",
2269
+ ref: nn,
2270
+ allMinimaps: kr.value,
2271
+ background: B.value.style.chart.zoom.color,
2272
+ borderColor: B.value.style.chart.backgroundColor,
2273
+ customFormat: B.value.style.chart.zoom.customFormat,
2274
+ cutNullValues: !1,
2275
+ enableRangeHandles: B.value.style.chart.zoom.enableRangeHandles,
2276
+ enableSelectionDrag: B.value.style.chart.zoom.enableSelectionDrag,
2277
+ end: q.value.end,
2278
+ focusOnDrag: B.value.style.chart.zoom.focusOnDrag,
2279
+ focusRangeRatio: B.value.style.chart.zoom.focusRangeRatio,
2280
+ fontSize: B.value.style.chart.zoom.fontSize,
2281
+ immediate: !B.value.style.chart.zoom.preview.enable,
2282
+ inputColor: B.value.style.chart.zoom.color,
2283
+ isPreview: yr.value,
2284
+ labelLeft: B.value.style.chart.grid.x.timeLabels.values[q.value.start] ? Lr.value?.[0]?.text ?? "" : "",
2285
+ labelRight: B.value.style.chart.grid.x.timeLabels.values[q.value.end - 1] ? Lr.value?.at(-1)?.text ?? "" : "",
2286
+ max: Math.max(...e.dataset.map((e) => e.series.length)),
2287
+ min: 0,
2288
+ minimap: Or.value,
2289
+ minimapCompact: B.value.style.chart.zoom.minimap.compact,
2290
+ minimapFrameColor: B.value.style.chart.zoom.minimap.frameColor,
2291
+ minimapIndicatorColor: B.value.style.chart.zoom.minimap.indicatorColor,
2292
+ minimapMerged: !1,
2293
+ minimapSelectedColor: B.value.style.chart.zoom.minimap.selectedColor,
2294
+ minimapSelectedColorOpacity: B.value.style.chart.zoom.minimap.selectedColorOpacity,
2295
+ minimapSelectedIndex: $.value,
2296
+ minimapSelectionRadius: 1,
2297
+ preciseLabels: Kr.value.length ? Kr.value : Rr.value,
2298
+ refreshEndPoint: B.value.style.chart.zoom.endIndex === null ? Math.max(...e.dataset.map((e) => e.series.length)) : B.value.style.chart.zoom.endIndex + 1,
2299
+ refreshStartPoint: B.value.style.chart.zoom.startIndex === null ? 0 : B.value.style.chart.zoom.startIndex,
2300
+ selectColor: B.value.style.chart.zoom.highlightColor,
2301
+ selectedSeries: Vi.value,
2302
+ smoothMinimap: !1,
2303
+ start: q.value.start,
2304
+ textColor: B.value.style.chart.color,
2305
+ timeLabels: Rr.value,
2306
+ usePreciseLabels: B.value.style.chart.grid.x.timeLabels.datetimeFormatter.enable && !B.value.style.chart.zoom.useDefaultFormat,
2307
+ valueEnd: q.value.end,
2308
+ valueStart: q.value.start,
2309
+ verticalHandles: B.value.style.chart.zoom.minimap.verticalHandles,
2310
+ maxWidth: B.value.style.chart.zoom.maxWidth,
2311
+ isCursorPointer: In.value,
2312
+ additionalMinimapHeight: B.value.style.chart.zoom.minimap.additionalHeight,
2313
+ handleType: B.value.style.chart.zoom.minimap.handleType,
2314
+ handleIconColor: B.value.style.chart.zoom.minimap.handleIconColor,
2315
+ handleBorderWidth: B.value.style.chart.zoom.minimap.handleBorderWidth,
2316
+ handleBorderColor: B.value.style.chart.zoom.minimap.handleBorderColor,
2317
+ handleFill: B.value.style.chart.zoom.minimap.handleFill,
2318
+ handleWidth: B.value.style.chart.zoom.minimap.handleWidth,
2319
+ "onUpdate:end": ti,
2320
+ "onUpdate:start": ei,
2321
+ onTrapMouse: _r,
2322
+ onReset: r[2] ||= () => wr({ force: !0 }),
2323
+ onFutureEnd: r[3] ||= (e) => br("end", e),
2324
+ onFutureStart: r[4] ||= (e) => br("start", e)
2325
+ }, {
2326
+ "reset-action": P(({ reset: e }) => [j(t.$slots, "reset-action", D(E({ reset: e })), void 0, !0)]),
2327
+ slotMap: P(({ width: e, height: t, unitW: n }) => [T("g", { innerHTML: Ui({
2328
+ minimapW: e,
2329
+ minimapH: t,
2330
+ unitW: n
2331
+ }) }, null, 8, Lt)]),
2332
+ _: 3
2333
+ }, 8, /* @__PURE__ */ "allMinimaps.background.borderColor.customFormat.enableRangeHandles.enableSelectionDrag.end.focusOnDrag.focusRangeRatio.fontSize.immediate.inputColor.isPreview.labelLeft.labelRight.max.minimap.minimapCompact.minimapFrameColor.minimapIndicatorColor.minimapSelectedColor.minimapSelectedColorOpacity.minimapSelectedIndex.preciseLabels.refreshEndPoint.refreshStartPoint.selectColor.selectedSeries.start.textColor.timeLabels.usePreciseLabels.valueEnd.valueStart.verticalHandles.maxWidth.isCursorPointer.additionalMinimapHeight.handleType.handleIconColor.handleBorderWidth.handleBorderColor.handleFill.handleWidth".split("."))) : C("", !0),
2334
+ T("div", { id: `legend-bottom-${R.value}` }, null, 8, Rt),
2335
+ ze(N(zt), {
2336
+ teleportTo: B.value.style.chart.tooltip.teleportTo,
2337
+ show: H.value.showTooltip && Qt.value,
2338
+ backgroundColor: B.value.style.chart.tooltip.backgroundColor,
2339
+ color: B.value.style.chart.tooltip.color,
2340
+ fontSize: B.value.style.chart.tooltip.fontSize,
2341
+ borderRadius: B.value.style.chart.tooltip.borderRadius,
2342
+ borderColor: B.value.style.chart.tooltip.borderColor,
2343
+ borderWidth: B.value.style.chart.tooltip.borderWidth,
2344
+ backgroundOpacity: B.value.style.chart.tooltip.backgroundOpacity,
2345
+ position: B.value.style.chart.tooltip.position,
2346
+ offsetX: B.value.style.chart.tooltip.offsetX,
2347
+ offsetY: B.value.style.chart.tooltip.offsetY,
2348
+ parent: L.value,
2349
+ content: mi.value,
2350
+ isFullscreen: on.value,
2351
+ isCustom: B.value.style.chart.tooltip.customFormat && typeof B.value.style.chart.tooltip.customFormat == "function",
2352
+ smooth: B.value.style.chart.tooltip.smooth,
2353
+ backdropFilter: B.value.style.chart.tooltip.backdropFilter,
2354
+ smoothForce: B.value.style.chart.tooltip.smoothForce,
2355
+ smoothSnapThreshold: B.value.style.chart.tooltip.smoothSnapThreshold,
2356
+ isA11yMode: On.value === "keyboard",
2357
+ a11yPosition: Dn.value
2358
+ }, {
2359
+ "tooltip-before": P(() => [j(t.$slots, "tooltip-before", D(E({ ...Yr.value })), void 0, !0)]),
2360
+ tooltip: P(() => [j(t.$slots, "tooltip", D(E({ ...Yr.value })), void 0, !0)]),
2361
+ "tooltip-after": P(() => [j(t.$slots, "tooltip-after", D(E({ ...Yr.value })), void 0, !0)]),
2362
+ _: 3
2363
+ }, 8, [
2364
+ "teleportTo",
2365
+ "show",
2366
+ "backgroundColor",
2367
+ "color",
2368
+ "fontSize",
2369
+ "borderRadius",
2370
+ "borderColor",
2371
+ "borderWidth",
2372
+ "backgroundOpacity",
2373
+ "position",
2374
+ "offsetX",
2375
+ "offsetY",
2376
+ "parent",
2377
+ "content",
2378
+ "isFullscreen",
2379
+ "isCustom",
2380
+ "smooth",
2381
+ "backdropFilter",
2382
+ "smoothForce",
2383
+ "smoothSnapThreshold",
2384
+ "isA11yMode",
2385
+ "a11yPosition"
2386
+ ]),
2387
+ t.$slots.source ? (O(), w("div", {
2388
+ key: 9,
2389
+ ref_key: "source",
2390
+ ref: an,
2391
+ dir: "auto"
2392
+ }, [j(t.$slots, "source", {}, void 0, !0)], 512)) : C("", !0),
2393
+ j(t.$slots, "skeleton", {}, () => [N(Rn) ? (O(), S(_e, { key: 0 })) : C("", !0)], !0)
2394
+ ], 46, et));
2395
+ }
2396
+ }, [["__scopeId", "data-v-ad320f18"]]);
2397
+ //#endregion
2398
+ export { $e as n, zt as t };