vue-data-ui 3.25.3 → 3.25.4

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