vue-data-ui 3.3.3 → 3.4.1

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 (160) hide show
  1. package/dist/{Arrow-ayTeSvpe.js → Arrow-CRe_nKB4.js} +1 -1
  2. package/dist/{BaseDraggableDialog-Cysanw8-.js → BaseDraggableDialog-CbuLbfrc.js} +2 -2
  3. package/dist/{BaseIcon-DG6cvf2h.js → BaseIcon-B5KaGWWC.js} +1 -1
  4. package/dist/{ColorPicker-CA8kKZjZ.js → ColorPicker-BMztHpBp.js} +10 -10
  5. package/dist/{DataTable-DUpZ_s2c.js → DataTable-DOx3zgih.js} +2 -2
  6. package/dist/{Legend-CCBZ2x8T.js → Legend-C8u37J42.js} +2 -2
  7. package/dist/{NonSvgPenAndPaper-D2IMGwaN.js → NonSvgPenAndPaper-BcxfJ-r2.js} +3 -3
  8. package/dist/{PackageVersion-CQvYRebC.js → PackageVersion-VpPtLYhK.js} +1 -1
  9. package/dist/{PenAndPaper-D9LruJaM.js → PenAndPaper-Dj2diYr0.js} +3 -3
  10. package/dist/{Shape-BS9UGhNq.js → Shape-BhNvlGIN.js} +1 -1
  11. package/dist/{Slicer-BOki89CB.js → Slicer-BHgEsIBU.js} +111 -111
  12. package/dist/SlicerPreview-Cobmb_1S.js +1148 -0
  13. package/dist/{SparkTooltip-svd8Hb6c.js → SparkTooltip-CL3cNRQ_.js} +1 -1
  14. package/dist/{Title-B6rAo9Oz.js → Title-CFmv95In.js} +1 -1
  15. package/dist/{Tooltip-DaInVNiV.js → Tooltip-Cs4v8OnI.js} +1 -1
  16. package/dist/{UserOptions-CJXSEhan.js → UserOptions-C0YT60JN.js} +2 -2
  17. package/dist/components/arrow.js +1 -1
  18. package/dist/components/vue-ui-3d-bar.js +1 -1
  19. package/dist/components/vue-ui-accordion.js +1 -1
  20. package/dist/components/vue-ui-age-pyramid.js +1 -1
  21. package/dist/components/vue-ui-annotator.js +1 -1
  22. package/dist/components/vue-ui-bullet.js +1 -1
  23. package/dist/components/vue-ui-candlestick.js +1 -1
  24. package/dist/components/vue-ui-carousel-table.js +1 -1
  25. package/dist/components/vue-ui-chestnut.js +1 -1
  26. package/dist/components/vue-ui-chord.js +1 -1
  27. package/dist/components/vue-ui-circle-pack.js +1 -1
  28. package/dist/components/vue-ui-cursor.js +1 -1
  29. package/dist/components/vue-ui-dashboard.js +1 -1
  30. package/dist/components/vue-ui-digits.js +1 -1
  31. package/dist/components/vue-ui-donut-evolution.js +1 -1
  32. package/dist/components/vue-ui-donut.js +1 -1
  33. package/dist/components/vue-ui-dumbbell.js +1 -1
  34. package/dist/components/vue-ui-flow.js +1 -1
  35. package/dist/components/vue-ui-funnel.js +1 -1
  36. package/dist/components/vue-ui-galaxy.js +1 -1
  37. package/dist/components/vue-ui-gauge.js +1 -1
  38. package/dist/components/vue-ui-gizmo.js +1 -1
  39. package/dist/components/vue-ui-heatmap.js +1 -1
  40. package/dist/components/vue-ui-history-plot.js +1 -1
  41. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  42. package/dist/components/vue-ui-icon.js +1 -1
  43. package/dist/components/vue-ui-kpi.js +1 -1
  44. package/dist/components/vue-ui-mini-loader.js +1 -1
  45. package/dist/components/vue-ui-molecule.js +1 -1
  46. package/dist/components/vue-ui-mood-radar.js +1 -1
  47. package/dist/components/vue-ui-nested-donuts.js +1 -1
  48. package/dist/components/vue-ui-onion.js +1 -1
  49. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  50. package/dist/components/vue-ui-quadrant.js +1 -1
  51. package/dist/components/vue-ui-quick-chart.js +1 -1
  52. package/dist/components/vue-ui-radar.js +1 -1
  53. package/dist/components/vue-ui-rating.js +1 -1
  54. package/dist/components/vue-ui-relation-circle.js +1 -1
  55. package/dist/components/vue-ui-ridgeline.js +1 -1
  56. package/dist/components/vue-ui-rings.js +1 -1
  57. package/dist/components/vue-ui-scatter.js +1 -1
  58. package/dist/components/vue-ui-skeleton.js +1 -1
  59. package/dist/components/vue-ui-smiley.js +1 -1
  60. package/dist/components/vue-ui-spark-trend.js +1 -1
  61. package/dist/components/vue-ui-sparkbar.js +1 -1
  62. package/dist/components/vue-ui-sparkgauge.js +1 -1
  63. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  64. package/dist/components/vue-ui-sparkline.js +1 -1
  65. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  66. package/dist/components/vue-ui-stackbar.js +1 -1
  67. package/dist/components/vue-ui-strip-plot.js +1 -1
  68. package/dist/components/vue-ui-table-heatmap.js +1 -1
  69. package/dist/components/vue-ui-table-sparkline.js +1 -1
  70. package/dist/components/vue-ui-table.js +1 -1
  71. package/dist/components/vue-ui-thermometer.js +1 -1
  72. package/dist/components/vue-ui-timer.js +1 -1
  73. package/dist/components/vue-ui-tiremarks.js +1 -1
  74. package/dist/components/vue-ui-treemap.js +1 -1
  75. package/dist/components/vue-ui-vertical-bar.js +1 -1
  76. package/dist/components/vue-ui-waffle.js +1 -1
  77. package/dist/components/vue-ui-wheel.js +1 -1
  78. package/dist/components/vue-ui-word-cloud.js +1 -1
  79. package/dist/components/vue-ui-world.js +1 -1
  80. package/dist/components/vue-ui-xy-canvas.js +1 -1
  81. package/dist/components/vue-ui-xy.js +1 -1
  82. package/dist/{dom-to-png-Tq92GZKA.js → dom-to-png-xQ7LXrxp.js} +1 -1
  83. package/dist/{img-DI-W68vp.js → img-CFY3JivG.js} +1 -1
  84. package/dist/{lib-CSDxt1Zh.js → lib-BcBZIm6u.js} +439 -395
  85. package/dist/{pdf-BzVpWnNO.js → pdf-O34i6EQX.js} +1 -1
  86. package/dist/style.css +1 -1
  87. package/dist/types/vue-data-ui.d.ts +82 -8
  88. package/dist/{useAutoSizeLabelsInsideViewbox-CtQ7pJ8G.js → useAutoSizeLabelsInsideViewbox-BHq4FD8x.js} +1 -1
  89. package/dist/{useNestedProp-Dh-ldrr5.js → useNestedProp-B7CiTRDS.js} +327 -240
  90. package/dist/{usePrinter-Cq8Pt6Lh.js → usePrinter-C1GiglOH.js} +2 -2
  91. package/dist/{vue-data-ui-CDY7snWF.js → vue-data-ui-oDJui39L.js} +64 -64
  92. package/dist/vue-data-ui.js +100 -100
  93. package/dist/{vue-ui-3d-bar-DbpiTjGu.js → vue-ui-3d-bar-wycTM073.js} +56 -56
  94. package/dist/{vue-ui-accordion-CaClZrCp.js → vue-ui-accordion-BKkTS12x.js} +3 -3
  95. package/dist/{vue-ui-age-pyramid-DuIxXz5p.js → vue-ui-age-pyramid-C5NUZ_Y7.js} +39 -39
  96. package/dist/{vue-ui-annotator-C2efSKQK.js → vue-ui-annotator-DkSYrnwb.js} +7 -7
  97. package/dist/{vue-ui-bullet-qpcqLKmp.js → vue-ui-bullet-CIsX5UJw.js} +7 -7
  98. package/dist/vue-ui-candlestick-BRFx3_KK.js +1334 -0
  99. package/dist/{vue-ui-carousel-table-CCTtArFX.js → vue-ui-carousel-table-hJySHJTu.js} +29 -29
  100. package/dist/{vue-ui-chestnut-CbvxJ8hy.js → vue-ui-chestnut-D4GjvQh0.js} +70 -70
  101. package/dist/{vue-ui-chord-Cp9nyIdv.js → vue-ui-chord-By2NOs0N.js} +35 -35
  102. package/dist/{vue-ui-circle-pack-kHzd0UYO.js → vue-ui-circle-pack-OCmAkTNs.js} +59 -59
  103. package/dist/{vue-ui-cursor-DEvkJRCz.js → vue-ui-cursor-iuati4v1.js} +2 -2
  104. package/dist/{vue-ui-dashboard-k_mz9iwy.js → vue-ui-dashboard-C7fwU9xb.js} +67 -67
  105. package/dist/{vue-ui-digits-CqWCkEu2.js → vue-ui-digits-eYxf3UFN.js} +2 -2
  106. package/dist/{vue-ui-donut-CDKS6sVu.js → vue-ui-donut-dVVBUQJz.js} +189 -189
  107. package/dist/{vue-ui-donut-evolution-C6cGI_P3.js → vue-ui-donut-evolution-BoWGaQP0.js} +82 -82
  108. package/dist/{vue-ui-dumbbell-ZjJst3xs.js → vue-ui-dumbbell-YMPZ3CVA.js} +66 -66
  109. package/dist/{vue-ui-flow-sX1PYIkr.js → vue-ui-flow-BE62rVS3.js} +75 -75
  110. package/dist/{vue-ui-funnel--VViM9gH.js → vue-ui-funnel-kNpDFAWo.js} +63 -63
  111. package/dist/{vue-ui-galaxy-Du0V9GF8.js → vue-ui-galaxy-BBBiXXyk.js} +62 -62
  112. package/dist/{vue-ui-gauge-BAe4p2g-.js → vue-ui-gauge-PQNTTl3Y.js} +58 -58
  113. package/dist/{vue-ui-gizmo-CfjwAt38.js → vue-ui-gizmo-D3gQxQz3.js} +3 -3
  114. package/dist/{vue-ui-heatmap-Q0jrPM5h.js → vue-ui-heatmap-CKWQButF.js} +104 -104
  115. package/dist/{vue-ui-history-plot-CLSN3mPy.js → vue-ui-history-plot-DYFzdR4Z.js} +91 -91
  116. package/dist/{vue-ui-kpi-CBRgXD1s.js → vue-ui-kpi-N8s0i48S.js} +3 -3
  117. package/dist/{vue-ui-mini-loader-3yCeDEPK.js → vue-ui-mini-loader-Db-9iQcC.js} +2 -2
  118. package/dist/{vue-ui-molecule-Ddh4hbX0.js → vue-ui-molecule-Cklyb74B.js} +102 -102
  119. package/dist/{vue-ui-mood-radar-CK8UF-ka.js → vue-ui-mood-radar-Cvq4ZuLe.js} +28 -28
  120. package/dist/{vue-ui-nested-donuts-DO0FV0tU.js → vue-ui-nested-donuts-Bm78P1ES.js} +60 -60
  121. package/dist/{vue-ui-onion-DXLqoj-4.js → vue-ui-onion-Bh5jTb31.js} +46 -46
  122. package/dist/{vue-ui-parallel-coordinate-plot-BlffHAHB.js → vue-ui-parallel-coordinate-plot-BKdN2OsW.js} +64 -64
  123. package/dist/{vue-ui-quadrant-pw2ALj7p.js → vue-ui-quadrant-BPhJzots.js} +8 -8
  124. package/dist/{vue-ui-quick-chart-9oGbV593.js → vue-ui-quick-chart-DbJR9CN3.js} +86 -86
  125. package/dist/vue-ui-radar-CrenQprr.js +938 -0
  126. package/dist/{vue-ui-rating-C4yZY1sb.js → vue-ui-rating-fR2WRHYO.js} +2 -2
  127. package/dist/{vue-ui-relation-circle-Duxv-A4H.js → vue-ui-relation-circle-BJ5RuZ0j.js} +31 -31
  128. package/dist/{vue-ui-ridgeline-B-q7J-C0.js → vue-ui-ridgeline-CKuom5Bu.js} +97 -97
  129. package/dist/{vue-ui-rings-PRAcmP1H.js → vue-ui-rings-B84GAEf4.js} +50 -50
  130. package/dist/{vue-ui-scatter-BLW4MJtJ.js → vue-ui-scatter-CBX-g9w3.js} +100 -100
  131. package/dist/{vue-ui-skeleton-D0PF0jxa.js → vue-ui-skeleton-CZ8xxpEU.js} +3 -3
  132. package/dist/{vue-ui-smiley-Be44gMTh.js → vue-ui-smiley-BKXuAviQ.js} +2 -2
  133. package/dist/{vue-ui-spark-trend-B2XY2dRa.js → vue-ui-spark-trend-DOf7-cIf.js} +18 -18
  134. package/dist/{vue-ui-sparkbar-DWQN4gvR.js → vue-ui-sparkbar-D-MPA2zf.js} +3 -3
  135. package/dist/{vue-ui-sparkgauge-fDhQGQ12.js → vue-ui-sparkgauge-B9xRiVSU.js} +6 -6
  136. package/dist/{vue-ui-sparkhistogram-f7Acvipt.js → vue-ui-sparkhistogram-BWb0lqQP.js} +4 -4
  137. package/dist/{vue-ui-sparkline-Ys3JW7Ap.js → vue-ui-sparkline-BF-qr8Ti.js} +23 -23
  138. package/dist/{vue-ui-sparkstackbar-Dv0HeSna.js → vue-ui-sparkstackbar-DnCUpk50.js} +17 -17
  139. package/dist/vue-ui-stackbar-DvJ8Hahn.js +1695 -0
  140. package/dist/{vue-ui-strip-plot-DN13ntF-.js → vue-ui-strip-plot-SAh1gIs5.js} +52 -52
  141. package/dist/{vue-ui-table-Qb5tDX1n.js → vue-ui-table-BJdDfMYD.js} +18 -18
  142. package/dist/{vue-ui-table-heatmap-hMrgJ25a.js → vue-ui-table-heatmap-DU6GKPVy.js} +32 -32
  143. package/dist/{vue-ui-table-sparkline-CdkFyJjv.js → vue-ui-table-sparkline-BBFEJ8c6.js} +28 -28
  144. package/dist/{vue-ui-thermometer-D7U2C7kJ.js → vue-ui-thermometer-D8DH6QSN.js} +22 -22
  145. package/dist/{vue-ui-timer-KtA4M2mV.js → vue-ui-timer-CaUdAHBE.js} +29 -29
  146. package/dist/{vue-ui-tiremarks-C6GTGszq.js → vue-ui-tiremarks-_sUH1d3J.js} +14 -14
  147. package/dist/{vue-ui-treemap-rhnl1TW9.js → vue-ui-treemap-DXduzuW4.js} +78 -78
  148. package/dist/{vue-ui-vertical-bar-n_Lvbd_X.js → vue-ui-vertical-bar-JdjmgwQj.js} +94 -94
  149. package/dist/{vue-ui-waffle-D-4whGLN.js → vue-ui-waffle-h8zoi4Rc.js} +68 -68
  150. package/dist/{vue-ui-wheel-D92HLjfr.js → vue-ui-wheel-Ck1Mx37j.js} +21 -21
  151. package/dist/{vue-ui-word-cloud-Df9AMw6v.js → vue-ui-word-cloud-CjWvuukM.js} +47 -47
  152. package/dist/{vue-ui-world-Bg9S35ug.js → vue-ui-world-Dw71_Mu2.js} +6 -6
  153. package/dist/vue-ui-xy-canvas-Dct7tf8w.js +1548 -0
  154. package/dist/vue-ui-xy-tSMgXqqb.js +3375 -0
  155. package/package.json +2 -2
  156. package/dist/vue-ui-candlestick-DTWbbdGH.js +0 -1073
  157. package/dist/vue-ui-radar-Csznqw19.js +0 -891
  158. package/dist/vue-ui-stackbar-DUlN5QiM.js +0 -1457
  159. package/dist/vue-ui-xy-Da6oy2rm.js +0 -4527
  160. package/dist/vue-ui-xy-canvas-0CLSIKpO.js +0 -1305
@@ -0,0 +1,1548 @@
1
+ import { defineAsyncComponent as pe, ref as d, computed as g, useSlots as Ml, onMounted as Ta, toRefs as $l, watch as O, nextTick as be, onBeforeUnmount as Aa, shallowRef as Ye, createElementBlock as Ae, openBlock as F, normalizeClass as Il, normalizeStyle as xe, createCommentVNode as W, createElementVNode as J, createBlock as Y, unref as L, createSlots as Fa, withCtx as b, renderSlot as M, normalizeProps as K, guardReactiveProps as ee, createVNode as Ra, Teleport as Tl, toDisplayString as Ve, resolveDynamicComponent as Al, mergeProps as Fl, createTextVNode as Oa } from "vue";
2
+ import { c as Rl, t as Ol, b as Pl, p as ae, O as Le, e as Dl, m as Ge, a as se, d as re, h as Pa, u as El, a1 as Nl, w as _l, o as Hl, f as Bl, G as Da, s as ke, S as Xl, P as Ul, Q as Wl, H as Yl } from "./lib-BcBZIm6u.js";
3
+ import { c as Vl, a as qe, d as Gl, t as ql, u as Zl, l as C, r as Fe, b as V, p as Ea } from "./useResponsive-DfdjqQps.js";
4
+ import { u as jl, a as Ze } from "./useNestedProp-B7CiTRDS.js";
5
+ import { u as Jl, B as Ql } from "./BaseScanner-BgWxam9d.js";
6
+ import { u as Kl } from "./usePrinter-C1GiglOH.js";
7
+ import { u as et, a as at, l as lt } from "./useTimeLabels-BGFjWgrv.js";
8
+ import { u as tt } from "./useUserOptionState-BIvW1Kz7.js";
9
+ import { u as ot } from "./useChartAccessibility-9icAAmYg.js";
10
+ import ut from "./img-CFY3JivG.js";
11
+ import { t as st } from "./themes-Dw-dDudK.js";
12
+ import rt from "./Legend-C8u37J42.js";
13
+ import nt from "./Title-CFmv95In.js";
14
+ import it from "./BaseIcon-B5KaGWWC.js";
15
+ import vt from "./vue-ui-accordion-BKkTS12x.js";
16
+ import { S as ct } from "./SlicerPreview-Cobmb_1S.js";
17
+ import { _ as dt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
18
+ const ht = ["id"], ft = ["id"], yt = ["id"], mt = ["onClick"], gt = {
19
+ key: 4,
20
+ class: "vue-data-ui-watermark"
21
+ }, pt = ["innerHTML"], bt = {
22
+ __name: "vue-ui-xy-canvas",
23
+ props: {
24
+ dataset: {
25
+ type: Array,
26
+ default() {
27
+ return [];
28
+ }
29
+ },
30
+ config: {
31
+ type: Object,
32
+ default() {
33
+ return {};
34
+ }
35
+ },
36
+ selectedXIndex: {
37
+ type: Number,
38
+ default: void 0
39
+ }
40
+ },
41
+ emits: ["selectLegend", "selectX"],
42
+ setup(je, { expose: Na, emit: _a }) {
43
+ const Ha = pe(() => import("./Tooltip-Cs4v8OnI.js")), Ba = pe(() => import("./DataTable-DOx3zgih.js")), Xa = pe(() => import("./UserOptions-C0YT60JN.js")), Ua = pe(() => import("./NonSvgPenAndPaper-BcxfJ-r2.js")), Wa = pe(() => import("./BaseDraggableDialog-CbuLbfrc.js")), { vue_ui_xy_canvas: Ya } = jl(), p = je, Q = d(Rl()), H = d(null), le = d(null), v = d(null), m = d(1), G = d(1), ne = d(!1), h = d(null), Ce = d(""), Je = d(null), A = d([]), te = d(1), D = d(!0), B = d(!0), we = d(null), Qe = d(0), ie = d(!1), Ke = d(null), ea = d(null), q = d(null), aa = d(null), Re = d(0), Oe = d(0), Pe = d(0), E = d(null), la = d(!1), ve = d(null), De = d(null), ce = d(!1), ta = d(!1), Se = d(!1), w = d(null), X = g(() => Array.isArray(_e.value) && _e.value.length > 0), Ee = _a, Va = Ml();
44
+ Ta(() => {
45
+ Va["chart-background"] && console.warn("VueUiXyCanvas does not support the #chart-background slot.");
46
+ });
47
+ const a = d(Be()), Ga = g(() => !!a.value.debug), { loading: Ne, FINAL_DATASET: _e } = Jl({
48
+ ...$l(p),
49
+ FINAL_CONFIG: a,
50
+ prepareConfig: Be,
51
+ skeletonDataset: [
52
+ {
53
+ name: "",
54
+ series: [0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 134],
55
+ type: "line",
56
+ smooth: !0,
57
+ color: "#BABABA"
58
+ },
59
+ {
60
+ name: "",
61
+ series: [0, 0.5, 1, 1.5, 2.5, 4, 6.5, 10.5, 17, 27.5, 44.5, 67],
62
+ type: "bar",
63
+ color: "#AAAAAA"
64
+ }
65
+ ],
66
+ skeletonConfig: Ol({
67
+ defaultConfig: a.value,
68
+ userConfig: {
69
+ userOptions: { show: !1 },
70
+ table: { show: !1 },
71
+ style: {
72
+ chart: {
73
+ backgroundColor: "#99999930",
74
+ grid: {
75
+ x: {
76
+ axisColor: "#6A6A6A",
77
+ timeLabels: { show: !1 },
78
+ axisName: "",
79
+ horizontalLines: {
80
+ color: "#6A6A6A"
81
+ }
82
+ },
83
+ y: {
84
+ axisColor: "#6A6A6A",
85
+ axisLabels: { show: !1 },
86
+ axisName: "",
87
+ verticalLines: {
88
+ color: "#6A6A6A"
89
+ }
90
+ },
91
+ zeroLine: {
92
+ color: "#6A6A6A"
93
+ }
94
+ },
95
+ legend: {
96
+ backgroundColor: "#99999930"
97
+ },
98
+ paddingProportions: {
99
+ left: 0.05
100
+ }
101
+ }
102
+ }
103
+ }
104
+ })
105
+ }), { userOptionsVisible: He, setUserOptionsVisibility: oa, keepUserOptionState: ua } = tt({ config: a.value }), { svgRef: S } = ot({ config: a.value.style.chart.title });
106
+ function qa() {
107
+ oa(!0);
108
+ }
109
+ function Za() {
110
+ oa(!1), Ee("selectX", { seriesIndex: null, datapoint: null }), h.value = null;
111
+ }
112
+ function Be() {
113
+ const e = Ze({
114
+ userConfig: p.config,
115
+ defaultConfig: Ya
116
+ });
117
+ let l = {};
118
+ return e.theme ? l = {
119
+ ...Ze({
120
+ userConfig: st.vue_ui_xy_canvas[e.theme] || p.config,
121
+ defaultConfig: e
122
+ }),
123
+ customPalette: Pl[e.theme] || ae
124
+ } : l = e, p.config && Le(p.config, "style.chart.scale.min") ? l.style.chart.scale.min = p.config.style.chart.scale.min : l.style.chart.scale.min = null, p.config && Le(p.config, "style.chart.scale.max") ? l.style.chart.scale.max = p.config.style.chart.scale.max : l.style.chart.scale.max = null, p.config && Le(p.config, "style.chart.zoom.startIndex") ? l.style.chart.zoom.startIndex = p.config.style.chart.zoom.startIndex : l.style.chart.zoom.startIndex = null, p.config && Le(p.config, "style.chart.zoom.endIndex") ? l.style.chart.zoom.endIndex = p.config.style.chart.zoom.endIndex : l.style.chart.zoom.endIndex = null, p.config && Le(p.config, "style.chart.grid.y.timeLabels") && (console.warn("VueUiXyCanvas: you are using the deprecated config.style.chart.grid.y.timeLabels. It is recommended to move this configuration to config.style.chart.grid.x.timeLabels."), l.style.chart.grid.x.timeLabels = Ze({
125
+ defaultConfig: l.style.chart.grid.x.timeLabels,
126
+ userConfig: p.config.style.chart.grid.y.timeLabels
127
+ })), l;
128
+ }
129
+ O(() => p.config, (e) => {
130
+ Ne.value || (a.value = Be()), He.value = !a.value.userOptions.showOnChartHover, La(), Re.value += 1, Oe.value += 1, Pe.value += 1, c.value.showTable = a.value.table.show, c.value.showDataLabels = a.value.style.chart.dataLabels.show, c.value.stacked = a.value.style.chart.stacked, c.value.showTooltip = a.value.style.chart.tooltip.show;
131
+ }, { deep: !0 }), O(() => p.dataset, async (e) => {
132
+ !Array.isArray(e) || e.length === 0 || (await be(), S.value && !v.value && (v.value = S.value.getContext("2d", { willReadFrequently: !0 })), D.value = !0, B.value = !0, await he(), Me(), Re.value += 1, Oe.value += 1, Pe.value += 1);
133
+ }, { deep: !0 });
134
+ const sa = d(a.value.style.chart.aspectRatio), { isPrinting: ra, isImaging: na, generatePdf: ia, generateImage: va } = Kl({
135
+ elementId: `xy_canvas_${Q.value}`,
136
+ fileName: a.value.style.chart.title.text || "vue-ui-xy-canvas",
137
+ options: a.value.userOptions.print
138
+ }), c = d({
139
+ showTable: a.value.table.show,
140
+ showDataLabels: a.value.style.chart.dataLabels.show,
141
+ stacked: a.value.style.chart.stacked,
142
+ showTooltip: a.value.style.chart.tooltip.show
143
+ });
144
+ function ca(e) {
145
+ ie.value = e, Qe.value += 1;
146
+ }
147
+ const da = g(() => Dl(a.value.customPalette)), R = g(() => P.value ? Math.max(...P.value.filter((e, l) => !A.value.includes(e.absoluteIndex)).map((e) => e.series.length)) : 0);
148
+ function ja(e) {
149
+ w.value = e, Z();
150
+ }
151
+ const o = g(() => {
152
+ const e = m.value - m.value * (a.value.style.chart.paddingProportions.left + a.value.style.chart.paddingProportions.right);
153
+ return {
154
+ canvasWidth: m.value,
155
+ canvasHeight: G.value,
156
+ left: m.value * a.value.style.chart.paddingProportions.left,
157
+ top: G.value * a.value.style.chart.paddingProportions.top,
158
+ right: m.value - m.value * a.value.style.chart.paddingProportions.right,
159
+ bottom: G.value - G.value * a.value.style.chart.paddingProportions.bottom,
160
+ width: e,
161
+ height: G.value - G.value * (a.value.style.chart.paddingProportions.top + a.value.style.chart.paddingProportions.bottom),
162
+ slot: e / (u.value.end - u.value.start)
163
+ };
164
+ });
165
+ function ha(e, l) {
166
+ return e / l;
167
+ }
168
+ function Ja({ hasAutoScale: e, series: l, min: t, max: r, scale: s, yOffset: i, individualHeight: n, stackIndex: f = null }) {
169
+ return l.map((x, T) => {
170
+ const k = s.min < 0 ? Math.abs(s.min) : 0, _ = ha(x + k, k + s.max);
171
+ let me, ge;
172
+ e && (me = s.min, ge = ha(x - me, s.max - me));
173
+ let U = 0;
174
+ return f === null ? U = o.value.bottom - o.value.height * (e ? ge : _) : U = o.value.bottom - i - n * (e ? ge : _), {
175
+ x: o.value.left + o.value.slot * T + o.value.slot / 2,
176
+ y: U,
177
+ value: x
178
+ };
179
+ });
180
+ }
181
+ const z = g(() => {
182
+ const e = a.value.style.chart.scale.min !== null ? a.value.style.chart.scale.min : Math.min(...P.value.filter((n, f) => !A.value.includes(n.absoluteIndex)).flatMap((n) => n.series.slice(u.value.start, u.value.end))), l = a.value.style.chart.scale.max !== null ? a.value.style.chart.scale.max : Math.max(...P.value.filter((n, f) => !A.value.includes(n.absoluteIndex)).flatMap((n) => n.series.slice(u.value.start, u.value.end))), t = Ge(e < 0 ? e : 0, l === e ? e + 1 < 0 ? 0 : e + 1 : l < 0 ? 0 : l, a.value.style.chart.scale.ticks), r = t.min < 0 ? Math.abs(t.min) : 0, s = o.value.bottom - o.value.height * (r / (t.max + r)), i = t.ticks.map((n) => ({
183
+ y: o.value.bottom - o.value.height * ((n + r) / (t.max + r)),
184
+ x: o.value.left - 8,
185
+ value: n
186
+ }));
187
+ return {
188
+ absoluteMin: r,
189
+ max: l,
190
+ min: e,
191
+ scale: t,
192
+ yLabels: i,
193
+ zero: s
194
+ };
195
+ }), Qa = g(() => y.value.map((e) => `
196
+ <div style="display:flex;flex-direction:row;gap:6px;align-items:center;">
197
+ <svg viewBox="0 0 10 10" height="12" width="12">
198
+ <circle cx="5" cy="5" r="5" fill="${e.color}"/>
199
+ </svg>
200
+ <span>${e.name ? e.name + ": " : ""}</span>
201
+ <span>${se(
202
+ a.value.style.chart.dataLabels.formatter,
203
+ e.series[h.value] ?? "-",
204
+ re({
205
+ p: e.prefix || "",
206
+ v: e.series[h.value] ?? "-",
207
+ s: e.suffix || "",
208
+ r: e.rounding || 0
209
+ }),
210
+ { datapoint: e, seriesIndex: h.value }
211
+ )}</span>
212
+ </div>
213
+ `)), ze = g(() => a.value.style.chart.line.cutNullValues), P = g(() => _e.value.map((e, l) => ({
214
+ ...e,
215
+ series: El({
216
+ data: Nl(e.series, [], ze.value),
217
+ threshold: a.value.downsample.threshold
218
+ }),
219
+ absoluteIndex: l,
220
+ color: Pa(e.color || da.value[l] || ae[l] || ae[l % ae.length])
221
+ }))), Ka = g(() => {
222
+ if (!a.value.style.chart.zoom.minimap.show) return [];
223
+ const e = P.value.filter((s) => !A.value.includes(s.absoluteIndex)), l = Math.max(...e.map((s) => s.series.length)), t = [];
224
+ for (let s = 0; s < l; s += 1)
225
+ t.push(e.map((i) => i.series[s] || 0).reduce((i, n) => (i || 0) + (n || 0), 0));
226
+ const r = Math.min(...t);
227
+ return t.map((s) => s + (r < 0 ? Math.abs(r) : 0));
228
+ }), el = g(() => a.value.style.chart.zoom.minimap.show ? P.value.map((l) => ({
229
+ ...l,
230
+ isVisible: !A.value.includes(l.absoluteIndex)
231
+ })) : []);
232
+ O(R, (e) => {
233
+ e && he();
234
+ });
235
+ const y = g(() => _l(P.value.filter((e, l) => !A.value.includes(e.absoluteIndex))).map((e, l) => ({
236
+ ...e,
237
+ series: e.series.slice(u.value.start, u.value.end)
238
+ })).map((e, l) => {
239
+ let t = [null, void 0].includes(e.scaleMin) ? Math.min(...e.series) || 0 : e.scaleMin, r = [null, void 0].includes(e.scaleMax) ? Math.max(...e.series) || 1 : e.scaleMax;
240
+ t === r && (t = t >= 0 ? r - 1 : t, r = r >= 0 ? r : t + 1), e.series.filter((U) => ![null, void 0].includes(U)).map((U) => (U - t) / (r - t));
241
+ const s = {
242
+ valueMin: t,
243
+ valueMax: r
244
+ }, i = e.scaleSteps || a.value.style.chart.scale.ticks;
245
+ let n;
246
+ e.autoScaling ? n = Ge(s.valueMin, s.valueMax, i) : n = Ge(s.valueMin < 0 ? s.valueMin : 0, s.valueMax <= 0 ? 0 : s.valueMax, i);
247
+ const f = c.value.stacked ? o.value.height * (1 - e.cumulatedStackRatio) : 0, x = c.value.stacked ? o.value.height / a.value.style.chart.stackGap : 0, T = c.value.stacked ? o.value.height * e.stackRatio - x : o.value.height, k = n.min < 0 ? Math.abs(n.min) : 0;
248
+ let _;
249
+ e.autoScaling && c.value.stacked && r <= 0 ? _ = o.value.bottom - f - T : _ = o.value.bottom - f - T * (k / (n.max + k));
250
+ const me = n.ticks.map((U, zl) => ({
251
+ y: o.value.bottom - f - T * (zl / (n.ticks.length - 1)),
252
+ x: o.value.left - 8,
253
+ value: U
254
+ })), ge = Ja({
255
+ hasAutoScale: c.value.stacked && e.autoScaling,
256
+ series: e.series,
257
+ min: c.value.stacked ? t : z.value.min,
258
+ max: c.value.stacked ? r : z.value.max,
259
+ scale: c.value.stacked ? n : z.value.scale,
260
+ yOffset: f,
261
+ individualHeight: T,
262
+ stackIndex: c.value.stacked ? l : null
263
+ });
264
+ return {
265
+ ...e,
266
+ coordinatesLine: ge,
267
+ min: t,
268
+ max: r,
269
+ localScale: n,
270
+ localZero: _,
271
+ localMin: k,
272
+ localYLabels: me,
273
+ yOffset: f,
274
+ individualHeight: T
275
+ };
276
+ })), u = d({
277
+ start: 0,
278
+ end: R.value
279
+ }), $ = d({ start: 0, end: R.value }), de = d(null);
280
+ function al() {
281
+ return new Promise((e) => requestAnimationFrame(
282
+ () => requestAnimationFrame(() => e())
283
+ ));
284
+ }
285
+ Aa(() => {
286
+ de.value && cancelAnimationFrame(de.value);
287
+ });
288
+ async function he() {
289
+ ya(), await be(), de.value && cancelAnimationFrame(de.value), de.value = requestAnimationFrame(async () => {
290
+ await al(), ya();
291
+ });
292
+ }
293
+ const ll = g(() => a.value.style.chart.zoom.preview.enable && ($.value.start !== u.value.start || $.value.end !== u.value.end));
294
+ function fa(e, l) {
295
+ $.value[e] = l;
296
+ }
297
+ async function ya() {
298
+ if (!ce.value) {
299
+ ce.value = !0;
300
+ try {
301
+ const { startIndex: e, endIndex: l } = a.value.style.chart.zoom, t = Math.max(...P.value.map((i) => i.series.length)), r = e ?? 0, s = l != null ? Math.min(ma(l + 1), t) : t;
302
+ Se.value = !0, u.value.start = r, u.value.end = s, $.value.start = r, $.value.end = s, Xe(), ta.value = !0, await be(), q.value && (q.value.setStartValue(u.value.start), q.value.setEndValue(u.value.end));
303
+ } finally {
304
+ queueMicrotask(() => {
305
+ Se.value = !1;
306
+ }), ce.value = !1;
307
+ }
308
+ }
309
+ }
310
+ function tl(e) {
311
+ ce.value || Se.value || e !== u.value.start && (u.value.start = e, $.value.start = e, Xe());
312
+ }
313
+ function ol(e) {
314
+ if (ce.value || Se.value) return;
315
+ const l = ma(e);
316
+ l !== u.value.end && (u.value.end = l, $.value.end = l, Xe());
317
+ }
318
+ function ma(e) {
319
+ const l = R.value;
320
+ return e > l ? l : e < 0 || e < u.value.start ? a.value.style.chart.zoom.startIndex !== null ? a.value.style.chart.zoom.startIndex + 1 : 1 : e;
321
+ }
322
+ function Xe() {
323
+ const e = Math.max(
324
+ 1,
325
+ Math.max(...P.value.map((r) => r.series.length))
326
+ );
327
+ let l = Math.max(0, Math.min(u.value.start ?? 0, e - 1)), t = Math.max(l + 1, Math.min(u.value.end ?? e, e));
328
+ (!Number.isFinite(l) || !Number.isFinite(t) || t <= l) && (l = 0, t = e), u.value = { start: l, end: t }, $.value.start = l, $.value.end = t, q.value && (q.value.setStartValue(l), q.value.setEndValue(t));
329
+ }
330
+ const ul = g(() => y.value.filter((e) => ["line", "plot", void 0].includes(e.type))), I = g(() => y.value.filter((e) => e.type === "bar"));
331
+ function Me() {
332
+ if (!S.value || !le.value) return;
333
+ const e = le.value.offsetWidth, l = le.value.offsetHeight;
334
+ S.value.width = e * te.value * 2, S.value.height = l * te.value * 2, m.value = e * te.value * 2, G.value = l * te.value * 2, v.value?.scale(te.value, te.value), Z();
335
+ }
336
+ O(X, async (e) => {
337
+ if (!e) {
338
+ we.value = null, ne.value = !1, h.value = null, E.value = null;
339
+ return;
340
+ }
341
+ await be(), S.value && !v.value && (v.value = S.value.getContext("2d", { willReadFrequently: !0 })), D.value = !0, B.value = !0, await he(), Me(), Z();
342
+ });
343
+ function sl() {
344
+ if (v.value && (v.value.clearRect(0, 0, 1e4, 1e4), v.value.fillStyle = a.value.style.chart.backgroundColor, v.value.fillRect(0, 0, o.value.canvasWidth, o.value.canvasHeight), !!X.value)) {
345
+ if (c.value.stacked)
346
+ a.value.style.chart.grid.y.verticalLines.show && u.value.end - u.value.start < a.value.style.chart.grid.y.verticalLines.hideUnderXLength ? y.value.forEach((e) => {
347
+ for (let l = 0; l < u.value.end - u.value.start + 1; l += 1)
348
+ C(
349
+ v.value,
350
+ [
351
+ {
352
+ x: o.value.left + o.value.slot * l,
353
+ y: o.value.bottom - e.yOffset - e.individualHeight
354
+ },
355
+ {
356
+ x: o.value.left + o.value.slot * l,
357
+ y: o.value.bottom - e.yOffset
358
+ }
359
+ ],
360
+ {
361
+ color: a.value.style.chart.grid.y.verticalLines.color
362
+ }
363
+ );
364
+ }) : a.value.style.chart.grid.y.verticalLines.show && u.value.end - u.value.start >= a.value.style.chart.grid.y.verticalLines.hideUnderXLength && y.value.forEach((e) => {
365
+ for (let l = u.value.start; l < u.value.end; l += 1)
366
+ l % Math.floor((u.value.end - u.value.start) / a.value.style.chart.grid.x.timeLabels.modulo) === 0 && C(
367
+ v.value,
368
+ [
369
+ {
370
+ x: o.value.left + o.value.slot * (l - u.value.start) + o.value.slot / 2,
371
+ y: o.value.bottom - e.yOffset - e.individualHeight
372
+ },
373
+ {
374
+ x: o.value.left + o.value.slot * (l - u.value.start) + o.value.slot / 2,
375
+ y: o.value.bottom - e.yOffset
376
+ }
377
+ ],
378
+ {
379
+ color: a.value.style.chart.grid.y.verticalLines.color
380
+ }
381
+ );
382
+ }), a.value.style.chart.grid.x.horizontalLines.show && (a.value.style.chart.grid.x.horizontalLines.alternate ? y.value.forEach((e) => {
383
+ e.localYLabels.forEach((l, t) => {
384
+ t < e.localYLabels.length - 1 && Fe(
385
+ v.value,
386
+ [
387
+ { x: o.value.left, y: l.y },
388
+ { x: o.value.right, y: l.y },
389
+ { x: o.value.right, y: e.localYLabels[t + 1].y },
390
+ { x: o.value.left, y: e.localYLabels[t + 1].y }
391
+ ],
392
+ {
393
+ fillColor: t % 2 === 0 ? "transparent" : ke(a.value.style.chart.grid.x.horizontalLines.color, a.value.style.chart.grid.x.horizontalLines.opacity),
394
+ strokeColor: "transparent"
395
+ }
396
+ );
397
+ });
398
+ }) : y.value.forEach((e) => {
399
+ e.localYLabels.slice(u.value.start, u.value.end).forEach((l) => {
400
+ C(
401
+ v.value,
402
+ [
403
+ { x: o.value.left, y: l.y },
404
+ { x: o.value.right, y: l.y }
405
+ ],
406
+ {
407
+ color: a.value.style.chart.grid.x.horizontalLines.color
408
+ }
409
+ );
410
+ });
411
+ })), a.value.style.chart.grid.zeroLine.show && y.value.forEach((e) => {
412
+ C(
413
+ v.value,
414
+ [
415
+ { x: o.value.left, y: e.localZero },
416
+ { x: o.value.right, y: e.localZero }
417
+ ],
418
+ {
419
+ color: a.value.style.chart.grid.zeroLine.color,
420
+ lineDash: a.value.style.chart.grid.zeroLine.dashed ? [10, 10] : [0, 0]
421
+ }
422
+ );
423
+ }), a.value.style.chart.grid.y.axisLabels.show && y.value.forEach((e) => {
424
+ C(
425
+ v.value,
426
+ [
427
+ { x: o.value.left, y: o.value.bottom - e.yOffset },
428
+ { x: o.value.left, y: o.value.bottom - e.yOffset - e.individualHeight }
429
+ ],
430
+ {
431
+ color: e.color
432
+ }
433
+ ), C(
434
+ v.value,
435
+ [
436
+ { x: o.value.right, y: o.value.bottom - e.yOffset },
437
+ { x: o.value.right, y: o.value.bottom - e.yOffset - e.individualHeight }
438
+ ],
439
+ {
440
+ color: e.color
441
+ }
442
+ );
443
+ }), y.value.forEach((e) => {
444
+ V(
445
+ v.value,
446
+ e.name,
447
+ m.value / 35,
448
+ o.value.bottom - e.yOffset - e.individualHeight / 2,
449
+ {
450
+ align: "center",
451
+ rotation: -90,
452
+ color: e.color,
453
+ font: `${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`
454
+ }
455
+ );
456
+ });
457
+ else {
458
+ if (a.value.style.chart.grid.y.verticalLines.show && u.value.end - u.value.start < a.value.style.chart.grid.y.verticalLines.hideUnderXLength)
459
+ for (let e = 0; e < u.value.end - u.value.start + 1; e += 1)
460
+ C(
461
+ v.value,
462
+ [
463
+ { x: o.value.left + o.value.slot * e, y: o.value.top },
464
+ { x: o.value.left + o.value.slot * e, y: o.value.bottom }
465
+ ],
466
+ {
467
+ color: a.value.style.chart.grid.y.verticalLines.color
468
+ }
469
+ );
470
+ else if (a.value.style.chart.grid.y.verticalLines.show && u.value.end - u.value.start >= a.value.style.chart.grid.y.verticalLines.hideUnderXLength)
471
+ for (let e = u.value.start; e < u.value.end; e += 1)
472
+ e % Math.floor((u.value.end - u.value.start) / a.value.style.chart.grid.x.timeLabels.modulo) === 0 && C(
473
+ v.value,
474
+ [
475
+ { x: o.value.left + o.value.slot * (e - u.value.start) + o.value.slot / 2, y: o.value.top },
476
+ { x: o.value.left + o.value.slot * (e - u.value.start) + o.value.slot / 2, y: o.value.bottom }
477
+ ],
478
+ {
479
+ color: a.value.style.chart.grid.y.verticalLines.color
480
+ }
481
+ );
482
+ a.value.style.chart.grid.x.horizontalLines.show && (a.value.style.chart.grid.x.horizontalLines.alternate ? z.value.yLabels.forEach((e, l) => {
483
+ l < z.value.yLabels.length - 1 && Fe(
484
+ v.value,
485
+ [
486
+ { x: o.value.left, y: e.y },
487
+ { x: o.value.right, y: e.y },
488
+ { x: o.value.right, y: z.value.yLabels[l + 1].y },
489
+ { x: o.value.left, y: z.value.yLabels[l + 1].y }
490
+ ],
491
+ {
492
+ fillColor: l % 2 === 0 ? "transparent" : ke(a.value.style.chart.grid.x.horizontalLines.color, a.value.style.chart.grid.x.horizontalLines.opacity),
493
+ strokeColor: "transparent"
494
+ }
495
+ );
496
+ }) : z.value.yLabels.forEach((e) => {
497
+ C(
498
+ v.value,
499
+ [
500
+ { x: o.value.left, y: e.y },
501
+ { x: o.value.right, y: e.y }
502
+ ],
503
+ {
504
+ color: a.value.style.chart.grid.x.horizontalLines.color
505
+ }
506
+ );
507
+ })), a.value.style.chart.grid.y.showAxis && C(
508
+ v.value,
509
+ [
510
+ { x: o.value.left, y: o.value.top },
511
+ { x: o.value.left, y: o.value.bottom }
512
+ ],
513
+ {
514
+ color: a.value.style.chart.grid.y.axisColor,
515
+ lineWidth: a.value.style.chart.grid.y.axisThickness
516
+ }
517
+ ), a.value.style.chart.grid.x.showAxis && C(
518
+ v.value,
519
+ [
520
+ { x: o.value.left, y: o.value.bottom },
521
+ { x: o.value.right, y: o.value.bottom }
522
+ ],
523
+ {
524
+ color: a.value.style.chart.grid.x.axisColor,
525
+ lineWidth: a.value.style.chart.grid.x.axisThickness
526
+ }
527
+ ), a.value.style.chart.grid.zeroLine.show && C(
528
+ v.value,
529
+ [
530
+ { x: o.value.left, y: z.value.zero },
531
+ { x: o.value.right, y: z.value.zero }
532
+ ],
533
+ {
534
+ color: a.value.style.chart.grid.zeroLine.color,
535
+ lineDash: a.value.style.chart.grid.zeroLine.dashed ? [10, 10] : [0, 0]
536
+ }
537
+ );
538
+ }
539
+ a.value.style.chart.grid.y.axisName && V(
540
+ v.value,
541
+ a.value.style.chart.grid.y.axisName,
542
+ m.value - m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio * 1.2,
543
+ o.value.bottom - o.value.height / 2,
544
+ {
545
+ font: `${a.value.style.chart.grid.y.axisLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
546
+ color: a.value.style.chart.color,
547
+ align: "center",
548
+ rotation: 90
549
+ }
550
+ ), a.value.style.chart.grid.x.axisName && V(
551
+ v.value,
552
+ a.value.style.chart.grid.x.axisName,
553
+ m.value / 2,
554
+ G.value,
555
+ {
556
+ font: `${a.value.style.chart.grid.y.axisLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
557
+ color: a.value.style.chart.color,
558
+ align: "center"
559
+ }
560
+ );
561
+ }
562
+ }
563
+ function rl(e) {
564
+ for (let l = 0; l < e.coordinatesLine.length; l += 1) {
565
+ const t = (h.value === l || w.value === l ? m.value / 150 : a.value.style.chart.line.plots.show || e.type === "plot" ? m.value / 200 : 0) * a.value.style.chart.line.plots.radiusRatio;
566
+ qe(
567
+ v.value,
568
+ { x: e.coordinatesLine[l].x, y: e.coordinatesLine[l].y },
569
+ t,
570
+ {
571
+ color: a.value.style.chart.backgroundColor,
572
+ fillStyle: e.color
573
+ }
574
+ );
575
+ }
576
+ }
577
+ function nl() {
578
+ y.value.forEach((e) => {
579
+ e.showYMarker && fe(e) && V(
580
+ v.value,
581
+ se(
582
+ a.value.style.chart.dataLabels.formatter,
583
+ fe(e).value,
584
+ re({
585
+ p: e.prefix || a.value.style.chart.grid.y.axisLabels.prefix || "",
586
+ v: fe(e).value,
587
+ s: e.suffix || a.value.style.chart.grid.y.axisLabels.suffix || "",
588
+ r: e.rounding || a.value.style.chart.grid.y.axisLabels.rounding || 0
589
+ }),
590
+ { datapoint: fe(e), seriesIndex: null }
591
+ ),
592
+ o.value.left - 8 + a.value.style.chart.grid.y.axisLabels.offsetX,
593
+ fe(e).y,
594
+ {
595
+ align: "right",
596
+ font: `${a.value.style.chart.grid.y.axisLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
597
+ color: e.color
598
+ }
599
+ );
600
+ });
601
+ }
602
+ function il() {
603
+ a.value.style.chart.grid.y.axisLabels.show && (c.value.stacked ? y.value.forEach((e) => {
604
+ e.localYLabels.forEach((l, t) => {
605
+ V(
606
+ v.value,
607
+ se(
608
+ a.value.style.chart.dataLabels.formatter,
609
+ l.value,
610
+ re({
611
+ p: e.prefix || a.value.style.chart.grid.y.axisLabels.prefix || "",
612
+ v: l.value,
613
+ s: e.suffix || a.value.style.chart.grid.y.axisLabels.suffix || "",
614
+ r: e.rounding || a.value.style.chart.grid.y.axisLabels.rounding || 0
615
+ }),
616
+ { datapoint: l, seriesIndex: t }
617
+ ),
618
+ l.x + a.value.style.chart.grid.y.axisLabels.offsetX,
619
+ l.y,
620
+ {
621
+ align: "right",
622
+ font: `${a.value.style.chart.grid.y.axisLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
623
+ color: e.color,
624
+ globalAlpha: e.showYMarker && ![null, void 0].includes(h.value ?? w.value) ? 0.2 : 1
625
+ }
626
+ );
627
+ });
628
+ }) : z.value.yLabels.forEach((e, l) => {
629
+ V(
630
+ v.value,
631
+ se(
632
+ a.value.style.chart.dataLabels.formatter,
633
+ e.value,
634
+ re({
635
+ p: a.value.style.chart.grid.y.axisLabels.prefix || "",
636
+ v: e.value,
637
+ s: a.value.style.chart.grid.y.axisLabels.suffix || "",
638
+ r: a.value.style.chart.grid.y.axisLabels.rounding || 0
639
+ }),
640
+ { datapoint: e, seriesIndex: l }
641
+ ),
642
+ e.x + a.value.style.chart.grid.y.axisLabels.offsetX,
643
+ e.y,
644
+ {
645
+ align: "right",
646
+ font: `${a.value.style.chart.grid.y.axisLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.y.axisLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
647
+ color: a.value.style.chart.grid.y.axisLabels.color,
648
+ globalAlpha: y.value.some((t) => t.showYMarker) && ![null, void 0].includes(h.value ?? w.value) ? 0.2 : 1
649
+ }
650
+ );
651
+ }));
652
+ }
653
+ function vl(e) {
654
+ for (let l = 0; l < e.coordinatesLine.length; l += 1)
655
+ V(
656
+ v.value,
657
+ se(
658
+ a.value.style.chart.dataLabels.formatter,
659
+ e.coordinatesLine[l].value,
660
+ re({
661
+ p: e.prefix || "",
662
+ v: e.coordinatesLine[l].value,
663
+ s: e.suffix || "",
664
+ r: e.rounding || 0
665
+ }),
666
+ { datapoint: e.coordinatesLine[l], seriesIndex: l }
667
+ ),
668
+ e.coordinatesLine[l].x,
669
+ e.coordinatesLine[l].y + a.value.style.chart.dataLabels.offsetY,
670
+ {
671
+ align: "center",
672
+ font: `${a.value.style.chart.dataLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.dataLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
673
+ color: a.value.style.chart.dataLabels.useSerieColor ? e.color : a.value.style.chart.dataLabels.color,
674
+ strokeColor: a.value.style.chart.backgroundColor,
675
+ lineWidth: 0.5
676
+ }
677
+ );
678
+ }
679
+ const N = g(() => et({
680
+ values: a.value.style.chart.grid.x.timeLabels.values,
681
+ maxDatapoints: R.value,
682
+ formatter: a.value.style.chart.grid.x.timeLabels.datetimeFormatter,
683
+ start: 0,
684
+ end: R.value
685
+ })), ga = g(() => {
686
+ const e = a.value.style.chart.grid.x.timeLabels.datetimeFormatter, l = at({
687
+ useUTC: e.useUTC,
688
+ locale: lt[e.locale] || { months: [], shortMonths: [], days: [], shortDays: [] },
689
+ januaryAsYear: e.januaryAsYear
690
+ });
691
+ return (t, r) => {
692
+ const i = a.value.style.chart.grid.x.timeLabels.values?.[t];
693
+ return i == null ? "" : l.formatDate(new Date(i), r);
694
+ };
695
+ }), pa = g(() => (a.value.style.chart.grid.x.timeLabels.values || []).map((l, t) => ({
696
+ text: ga.value(t, a.value.style.chart.zoom.timeFormat),
697
+ absoluteIndex: t
698
+ }))), cl = g(() => (a.value.style.chart.grid.x.timeLabels.values || []).map((l, t) => ({
699
+ text: ga.value(t, a.value.style.chart.tooltip.timeFormat),
700
+ absoluteIndex: t
701
+ })));
702
+ function dl() {
703
+ for (let e = u.value.start; e < u.value.end; e += 1)
704
+ (u.value.end - u.value.start < a.value.style.chart.grid.x.timeLabels.modulo || u.value.end - u.value.start >= a.value.style.chart.grid.x.timeLabels.modulo && (e % Math.floor((u.value.end - u.value.start) / a.value.style.chart.grid.x.timeLabels.modulo) === 0 || (e === h.value + u.value.start || e === w.value) && a.value.style.chart.grid.x.timeLabels.showMarker)) && V(
705
+ v.value,
706
+ N.value[e] ? N.value[e].text : e + 1,
707
+ o.value.left + o.value.slot * (e - u.value.start) + o.value.slot / 2,
708
+ o.value.bottom + m.value / a.value.style.chart.grid.x.timeLabels.offsetY,
709
+ {
710
+ align: a.value.style.chart.grid.x.timeLabels.rotation === 0 ? "center" : a.value.style.chart.grid.x.timeLabels.rotation > 0 ? "left" : "right",
711
+ font: `${a.value.style.chart.grid.x.timeLabels.bold ? "bold " : ""}${Math.round(m.value / 40 * a.value.style.chart.grid.x.timeLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
712
+ color: a.value.style.chart.grid.x.timeLabels.showMarker ? ke(a.value.style.chart.grid.x.timeLabels.color, h.value !== null || w.value !== null ? h.value + u.value.start === e || w.value === e ? 100 : 20 : 100) : a.value.style.chart.grid.x.timeLabels.color,
713
+ rotation: a.value.style.chart.grid.x.timeLabels.rotation
714
+ }
715
+ );
716
+ }
717
+ function ba() {
718
+ C(
719
+ v.value,
720
+ [
721
+ { x: o.value.left + o.value.slot * (h.value ?? w.value) + o.value.slot / 2, y: o.value.top },
722
+ { x: o.value.left + o.value.slot * (h.value ?? w.value) + o.value.slot / 2, y: o.value.bottom }
723
+ ],
724
+ {
725
+ color: a.value.style.chart.selector.color,
726
+ lineDash: a.value.style.chart.selector.dashed ? [8, 8] : [0, 0],
727
+ lineWidth: 2
728
+ }
729
+ );
730
+ }
731
+ function hl() {
732
+ E.value && C(
733
+ v.value,
734
+ [
735
+ { x: o.value.left, y: E.value },
736
+ { x: o.value.right, y: E.value }
737
+ ],
738
+ {
739
+ color: a.value.style.chart.selector.color,
740
+ lineDash: a.value.style.chart.selector.dashed ? [8, 8] : [0, 0],
741
+ lineWidth: 2
742
+ }
743
+ );
744
+ }
745
+ function fl() {
746
+ I.value.forEach((e, l) => {
747
+ for (let t = 0; t < e.coordinatesLine.length; t += 1)
748
+ Fe(
749
+ v.value,
750
+ [
751
+ {
752
+ x: o.value.left + o.value.slot * t + o.value.slot / 10 + (c.value.stacked ? 0 : o.value.slot / I.value.length * l - (l === 0 ? 0 : o.value.slot / (5 * I.value.length) * l)),
753
+ y: c.value.stacked ? e.localZero : z.value.zero
754
+ },
755
+ {
756
+ x: o.value.left + o.value.slot * t + o.value.slot / 10 + (c.value.stacked ? 0 : o.value.slot / I.value.length * l - (l === 0 ? 0 : o.value.slot / (5 * I.value.length) * l)) + o.value.slot * 0.8 / (c.value.stacked ? 1 : I.value.length),
757
+ y: c.value.stacked ? e.localZero : z.value.zero
758
+ },
759
+ {
760
+ x: o.value.left + o.value.slot * t + o.value.slot / 10 + (c.value.stacked ? 0 : o.value.slot / I.value.length * l - (l === 0 ? 0 : o.value.slot / (5 * I.value.length) * l)) + o.value.slot * 0.8 / (c.value.stacked ? 1 : I.value.length),
761
+ y: e.coordinatesLine[t].y
762
+ },
763
+ {
764
+ x: o.value.left + o.value.slot * t + o.value.slot / 10 + (c.value.stacked ? 0 : o.value.slot / I.value.length * l - (l === 0 ? 0 : o.value.slot / (5 * I.value.length) * l)),
765
+ y: e.coordinatesLine[t].y
766
+ }
767
+ ],
768
+ {
769
+ strokeColor: a.value.style.chart.backgroundColor,
770
+ gradient: {
771
+ type: "linear",
772
+ start: {
773
+ x: e.coordinatesLine[t].x,
774
+ y: e.coordinatesLine[t].y
775
+ },
776
+ end: {
777
+ x: e.coordinatesLine[t].x,
778
+ y: c.value.stacked ? e.localZero : z.value.zero
779
+ },
780
+ stops: [
781
+ { offset: 0, color: e.color },
782
+ { offset: 1, color: a.value.style.chart.bar.gradient.show ? Xl(e.color, 0.5) : e.color }
783
+ ]
784
+ }
785
+ }
786
+ ), c.value.showDataLabels && [!0, void 0].includes(e.dataLabels) && V(
787
+ v.value,
788
+ se(
789
+ a.value.style.chart.dataLabels.formatter,
790
+ e.coordinatesLine[t].value,
791
+ re({
792
+ p: e.prefix || "",
793
+ v: e.coordinatesLine[t].value,
794
+ s: e.suffix || "",
795
+ r: e.rounding || 0
796
+ }),
797
+ { datapoint: e.coordinatesLine[t], seriesIndex: t }
798
+ ),
799
+ o.value.left + o.value.slot * t + o.value.slot / 10 + (c.value.stacked ? 0 : o.value.slot / I.value.length * l - (l === 0 ? 0 : o.value.slot / (5 * I.value.length) * l)) + o.value.slot * 0.4 / (c.value.stacked ? 1 : I.value.length),
800
+ (e.coordinatesLine[t].value < 0 ? c.value.stacked ? e.localZero : z.value.zero : e.coordinatesLine[t].y) + a.value.style.chart.dataLabels.offsetY,
801
+ {
802
+ align: "center",
803
+ font: `${Math.round(m.value / 40 * a.value.style.chart.dataLabels.fontSizeRatio)}px ${a.value.style.fontFamily}`,
804
+ color: a.value.style.chart.dataLabels.useSerieColor ? e.color : a.value.style.chart.dataLabels.color,
805
+ strokeColor: a.value.style.chart.backgroundColor,
806
+ lineWidth: 0.8
807
+ }
808
+ );
809
+ });
810
+ }
811
+ function yl(e, l) {
812
+ const t = e.coordinatesLine.map((n, f) => {
813
+ const x = e.series[f];
814
+ return x != null && Number.isFinite(n?.y) ? n : null;
815
+ }), r = [], s = [];
816
+ let i = [];
817
+ for (let n = 0; n < t.length; n += 1) {
818
+ const f = t[n];
819
+ if (f)
820
+ i.push(f);
821
+ else {
822
+ if (i.length >= 2) {
823
+ const x = i[0], T = i[i.length - 1];
824
+ r.push([
825
+ { x: x.x, y: l },
826
+ ...i,
827
+ { x: T.x, y: l }
828
+ ]);
829
+ } else i.length === 1 && s.push(i[0]);
830
+ i = [];
831
+ }
832
+ }
833
+ if (i.length >= 2) {
834
+ const n = i[0], f = i[i.length - 1];
835
+ r.push([
836
+ { x: n.x, y: l },
837
+ ...i,
838
+ { x: f.x, y: l }
839
+ ]);
840
+ } else i.length === 1 && s.push(i[0]);
841
+ return { polygons: r, singles: s };
842
+ }
843
+ function ml(e) {
844
+ const l = e.coordinatesLine.map((s, i) => {
845
+ const n = e.series[i];
846
+ return n != null && Number.isFinite(s?.y) ? s : null;
847
+ }), t = [];
848
+ let r = [];
849
+ for (let s = 0; s < l.length; s += 1) {
850
+ const i = l[s];
851
+ i ? r.push(i) : (r.length >= 2 && t.push(r), r = []);
852
+ }
853
+ return r.length >= 2 && t.push(r), t;
854
+ }
855
+ function xa(e) {
856
+ if (ze.value) {
857
+ const l = ml(e);
858
+ for (const t of l)
859
+ C(v.value, t, {
860
+ color: e.color,
861
+ lineWidth: 3
862
+ });
863
+ } else
864
+ C(v.value, e.coordinatesLine, {
865
+ color: e.color,
866
+ lineWidth: 3
867
+ });
868
+ }
869
+ function gl(e) {
870
+ const l = !!ze.value;
871
+ if (e.useArea) {
872
+ const t = c.value.stacked ? e.localZero : z.value.zero;
873
+ if (l) {
874
+ const { polygons: r, singles: s } = yl(e, t);
875
+ for (const n of r)
876
+ Ea(v.value, n, {
877
+ fillColor: ke(e.color, a.value.style.chart.area.opacity),
878
+ strokeColor: "transparent"
879
+ });
880
+ const i = m.value / 200 * a.value.style.chart.line.plots.radiusRatio;
881
+ for (const n of s)
882
+ qe(
883
+ v.value,
884
+ { x: n.x, y: n.y },
885
+ i,
886
+ {
887
+ color: a.value.style.chart.backgroundColor,
888
+ fillStyle: e.color
889
+ }
890
+ );
891
+ } else {
892
+ const r = { x: e.coordinatesLine[0].x, y: t }, s = { x: e.coordinatesLine.at(-1).x, y: t };
893
+ Ea(
894
+ v.value,
895
+ [r, ...e.coordinatesLine, s],
896
+ {
897
+ fillColor: ke(e.color, a.value.style.chart.area.opacity),
898
+ strokeColor: "transparent"
899
+ }
900
+ );
901
+ }
902
+ xa(e);
903
+ return;
904
+ }
905
+ xa(e);
906
+ }
907
+ function pl() {
908
+ y.value.forEach((e, l) => {
909
+ C(
910
+ v.value,
911
+ [
912
+ { x: o.value.left, y: o.value.bottom - e.yOffset },
913
+ { x: o.value.right, y: o.value.bottom - e.yOffset }
914
+ ],
915
+ {
916
+ color: a.value.style.chart.grid.x.horizontalLines.color,
917
+ lineWidth: 1
918
+ }
919
+ );
920
+ });
921
+ }
922
+ function bl() {
923
+ const { left: e, top: l, width: t, height: r } = o.value, s = u.value.start, n = u.value.end - s, f = t / n, x = $.value.start - s, T = $.value.end - s, k = Math.max(0, Math.min(n, x)), _ = Math.max(0, Math.min(n, T));
924
+ Fe(
925
+ v.value,
926
+ [
927
+ { x: e + k * f, y: l },
928
+ { x: e + k * f + (_ - k) * f, y: l },
929
+ { x: e + k * f + (_ - k) * f, y: l + r },
930
+ { x: e + k * f, y: l + r }
931
+ ],
932
+ {
933
+ fillColor: a.value.style.chart.zoom.preview.fill,
934
+ strokeColor: a.value.style.chart.zoom.preview.stroke,
935
+ lineDash: Array(4).fill(a.value.style.chart.zoom.preview.strokeDasharray),
936
+ lineWidth: a.value.style.chart.zoom.preview.strokeWidth
937
+ }
938
+ );
939
+ }
940
+ function Z() {
941
+ !X.value || !S.value || !v.value || (sl(), D.value ? ((h.value !== null || w.value !== null) && a.value.style.chart.selector.show && ba(), fl(), c.value.stacked && a.value.style.chart.grid.x.showAxis && pl(), ul.value.forEach((e) => {
942
+ (e.type === "line" || !e.type) && gl(e), B.value && (rl(e), c.value.showDataLabels && [!0, void 0].includes(e.dataLabels) && vl(e));
943
+ }), S.value && (we.value = Vl(S.value))) : (we.value && (v.value.clearRect(0, 0, 1e4, 1e4), v.value.drawImage(we.value, 0, 0)), (h.value !== null || w.value !== null) && a.value.style.chart.selector.show && ba(), (h.value !== null || w.value !== null) && y.value.forEach((e) => {
944
+ const l = h.value ?? w.value, t = e.coordinatesLine[l];
945
+ (e.type === "line" || !e.type || e.type === "plot") && t && Number.isFinite(t.x) && Number.isFinite(t.y) && qe(
946
+ v.value,
947
+ { x: t.x, y: t.y },
948
+ m.value / 150 * a.value.style.chart.line.plots.radiusRatio,
949
+ {
950
+ color: a.value.style.chart.backgroundColor,
951
+ fillStyle: e.color
952
+ }
953
+ );
954
+ })), a.value.style.chart.grid.x.timeLabels.show && dl(), a.value.style.chart.selector.show && a.value.style.chart.selector.showHorizontalSelector && hl(), il(), nl(), a.value.style.chart.zoom.preview.enable && (u.value.start !== $.value.start || u.value.end !== $.value.end) && bl(), D.value = !1);
955
+ }
956
+ const $e = Gl(() => {
957
+ B.value = !0, Me();
958
+ }, R.value > 200 ? 10 : 1, !B.value);
959
+ function fe(e) {
960
+ if ([null, void 0].includes(h.value ?? w.value) || !e.coordinatesLine[h.value ?? w.value]) return !1;
961
+ const { y: l, value: t } = e.coordinatesLine[h.value ?? w.value];
962
+ return { y: l, value: t };
963
+ }
964
+ function xl(e) {
965
+ if (!X.value || !S.value) return;
966
+ const { left: l, top: t } = S.value.getBoundingClientRect(), r = e.clientX - l;
967
+ if (E.value = (e.clientY - t) * 2, (E.value < o.value.top || E.value > o.value.bottom) && (E.value = null), r * 2 < o.value.left || r * 2 > o.value.right) {
968
+ ne.value = !1, h.value = null;
969
+ return;
970
+ }
971
+ const s = r * 2 - o.value.left;
972
+ if (h.value = Math.floor(s / o.value.slot), ne.value = !0, !B.value) return;
973
+ let i = "";
974
+ const n = a.value.style.chart.tooltip.customFormat, f = y.value.map((x) => ({
975
+ shape: x.shape || null,
976
+ name: x.name,
977
+ color: x.color,
978
+ type: x.type || "line",
979
+ value: x.series.find((T, k) => k === h.value)
980
+ }));
981
+ Ll({ seriesIndex: h.value, datapoint: f }), Da(n) && Yl(() => n({
982
+ seriesIndex: h.value,
983
+ datapoint: f,
984
+ series: y.value,
985
+ config: a.value
986
+ })) ? Ce.value = n({
987
+ seriesIndex: h.value,
988
+ datapoint: f,
989
+ series: y.value,
990
+ config: a.value
991
+ }) : (a.value.style.chart.grid.x.timeLabels.values.slice(u.value.start, u.value.end)[h.value] ? i += `<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${a.value.style.chart.tooltip.borderColor}; width:100%">${a.value.style.chart.tooltip.useDefaultTimeFormat ? N.value.slice(u.value.start, u.value.end)[h.value]?.text : cl.value[h.value]?.text}</div>` : i += `<div style="padding-bottom: 6px; margin-bottom: 4px; border-bottom: 1px solid ${a.value.style.chart.tooltip.borderColor}; width:100%">${N.value[h.value + u.value.start]?.text ?? ""}</div>`, i += Qa.value.join(""), Ce.value = i), B.value = !1;
992
+ }
993
+ function Ll({ seriesIndex: e, datapoint: l }) {
994
+ const t = u.value.start + e;
995
+ Ee("selectX", {
996
+ dataset: l,
997
+ index: t,
998
+ indexLabel: ""
999
+ });
1000
+ }
1001
+ O(() => p.selectedXIndex, (e) => {
1002
+ if ([null, void 0].includes(p.selectedXIndex)) {
1003
+ h.value = null;
1004
+ return;
1005
+ }
1006
+ const l = e - u.value.start;
1007
+ l < 0 || e >= u.value.end ? h.value = null : h.value = l ?? null;
1008
+ }, { immediate: !0 }), O(() => h.value, (e) => {
1009
+ $e();
1010
+ }), O(() => u.value, (e) => {
1011
+ D.value = !0, Z();
1012
+ }, {
1013
+ deep: !0
1014
+ }), O(() => $.value, (e) => {
1015
+ Z();
1016
+ }, { deep: !0 }), O(() => c.value.showDataLabels, (e) => {
1017
+ D.value = !0, Z();
1018
+ }), O(() => E.value, (e) => {
1019
+ e && Z();
1020
+ }), O(() => c.value.stacked, (e) => {
1021
+ D.value = !0, B.value = !0, $e();
1022
+ });
1023
+ function kl() {
1024
+ ne.value = !1, h.value = null, Ce.value = "", E.value = null, Z();
1025
+ }
1026
+ const j = Ye(null), oe = Ye(null), ue = Ye(null);
1027
+ Ta(() => {
1028
+ la.value = !0, La();
1029
+ });
1030
+ function La() {
1031
+ if (Hl(p.dataset) && Ga.value && Bl({ componentName: "VueUiXyCanvas", type: "dataset" }), be(() => {
1032
+ S.value && !v.value && (v.value = S.value.getContext("2d", { willReadFrequently: !0 })), v.value && X.value && (D.value = !0, B.value = !0, Me());
1033
+ }), a.value.responsive) {
1034
+ const e = ql(() => {
1035
+ const { width: l, height: t } = Zl({
1036
+ chart: H.value,
1037
+ title: a.value.style.chart.title.text ? Ke.value : null,
1038
+ legend: a.value.style.chart.legend.show ? ea.value : null,
1039
+ slicer: a.value.style.chart.zoom.show && R.value > 6 ? q.value?.$el : null,
1040
+ source: aa.value
1041
+ });
1042
+ requestAnimationFrame(() => {
1043
+ sa.value = `${l} / ${t}`;
1044
+ });
1045
+ });
1046
+ j.value && (oe.value && j.value.unobserve(oe.value), j.value.disconnect()), j.value = new ResizeObserver(e), oe.value = H.value.parentNode, j.value.observe(oe.value);
1047
+ }
1048
+ ue.value && ue.value.disconnect(), ue.value = new ResizeObserver((e) => {
1049
+ for (const l of e)
1050
+ l.contentBoxSize && le.value && (D.value = !0, $e());
1051
+ }), ue.value.observe(le.value), he();
1052
+ }
1053
+ Aa(() => {
1054
+ ue.value && ue.value.disconnect(), j.value && (oe.value && j.value.unobserve(oe.value), j.value.disconnect());
1055
+ });
1056
+ function ka(e) {
1057
+ Ee("selectLegend", y.value.find((l) => l.absoluteIndex === e)), A.value.includes(e) ? A.value = A.value.filter((l) => l !== e) : A.value.push(e), D.value = !0, $e();
1058
+ }
1059
+ const Ca = g(() => P.value.map((e, l) => ({
1060
+ ...e,
1061
+ name: e.name,
1062
+ color: Pa(e.color) || da.value[l] || ae[l] || ae[l % ae.length],
1063
+ shape: e.shape || "circle",
1064
+ prefix: e.prefix || "",
1065
+ suffix: e.suffix || "",
1066
+ rounding: e.rounding || 0
1067
+ })).map((e) => ({
1068
+ ...e,
1069
+ opacity: A.value.includes(e.absoluteIndex) ? 0.5 : 1,
1070
+ segregate: () => ka(e.absoluteIndex),
1071
+ isSegregated: A.value.includes(e.absoluteIndex)
1072
+ }))), Cl = g(() => ({
1073
+ cy: "donut-div-legend",
1074
+ backgroundColor: a.value.style.chart.legend.backgroundColor,
1075
+ color: a.value.style.chart.legend.color,
1076
+ fontSize: a.value.style.chart.legend.fontSize,
1077
+ paddingBottom: 12,
1078
+ fontWeight: a.value.style.chart.legend.bold ? "bold" : ""
1079
+ })), Ie = g(() => {
1080
+ const e = [""].concat(y.value.map((s) => s.name)).concat(' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>');
1081
+ let l = [];
1082
+ for (let s = 0; s < R.value; s += 1) {
1083
+ const i = y.value.map((n) => n.series[s] ?? 0).reduce((n, f) => n + f, 0);
1084
+ l.push([a.value.style.chart.grid.x.timeLabels.values.slice(u.value.start, u.value.end)[s] ? N.value.slice(u.value.start, u.value.end)[s].text : s + 1].concat(y.value.map((n) => (n.series[s] ?? 0).toFixed(a.value.table.rounding))).concat((i ?? 0).toFixed(a.value.table.rounding)));
1085
+ }
1086
+ const t = {
1087
+ th: {
1088
+ backgroundColor: a.value.table.th.backgroundColor,
1089
+ color: a.value.table.th.color,
1090
+ outline: a.value.table.th.outline
1091
+ },
1092
+ td: {
1093
+ backgroundColor: a.value.table.td.backgroundColor,
1094
+ color: a.value.table.td.color,
1095
+ outline: a.value.table.td.outline
1096
+ },
1097
+ breakpoint: a.value.table.responsiveBreakpoint
1098
+ }, r = [a.value.table.columnNames.period].concat(y.value.map((s) => s.name)).concat(a.value.table.columnNames.total);
1099
+ return { head: e, body: l.slice(0, u.value.end - u.value.start), config: t, colNames: r };
1100
+ }), wa = g(() => {
1101
+ if (y.value.length === 0) return { head: [], body: [], config: {}, columnNames: [] };
1102
+ const e = y.value.map((t) => ({
1103
+ label: t.name,
1104
+ color: t.color,
1105
+ type: t.type
1106
+ })), l = [];
1107
+ for (let t = u.value.start; t < u.value.end; t += 1) {
1108
+ const r = [a.value.style.chart.grid.x.timeLabels.values[t] ? N.value[t].text : t + 1];
1109
+ y.value.forEach((s) => {
1110
+ r.push(Number((s.series[t] || 0).toFixed(a.value.table.rounding)));
1111
+ }), l.push(r);
1112
+ }
1113
+ return { head: e, body: l };
1114
+ });
1115
+ function Ue(e = null) {
1116
+ const l = [[a.value.style.chart.title.text], [a.value.style.chart.title.subtitle.text], [""]], t = ["", ...wa.value.head.map((n) => n.label)], r = wa.value.body, s = l.concat([t]).concat(r), i = Ul(s);
1117
+ e ? e(i) : Wl({ csvContent: i, title: a.value.style.chart.title.text || "vue-ui-xy-canvas" });
1118
+ }
1119
+ function wl() {
1120
+ return y.value;
1121
+ }
1122
+ function Sa() {
1123
+ c.value.showTable = !c.value.showTable;
1124
+ }
1125
+ function za() {
1126
+ c.value.showDataLabels = !c.value.showDataLabels;
1127
+ }
1128
+ function Ma() {
1129
+ c.value.stacked = !c.value.stacked;
1130
+ }
1131
+ function $a() {
1132
+ c.value.showTooltip = !c.value.showTooltip;
1133
+ }
1134
+ const Te = d(!1);
1135
+ function We() {
1136
+ Te.value = !Te.value;
1137
+ }
1138
+ async function Sl({ scale: e = 2 } = {}) {
1139
+ if (!H.value) return;
1140
+ const { width: l, height: t } = H.value.getBoundingClientRect(), r = l / t, { imageUri: s, base64: i } = await ut({ domElement: H.value, base64: !0, img: !0, scale: e });
1141
+ return {
1142
+ imageUri: s,
1143
+ base64: i,
1144
+ title: a.value.style.chart.title.text,
1145
+ width: l,
1146
+ height: t,
1147
+ aspectRatio: r
1148
+ };
1149
+ }
1150
+ const ye = g(() => {
1151
+ const e = a.value.table.useDialog && !a.value.table.show, l = c.value.showTable;
1152
+ return {
1153
+ component: e ? Wa : vt,
1154
+ title: `${a.value.style.chart.title.text}${a.value.style.chart.title.subtitle.text ? `: ${a.value.style.chart.title.subtitle.text}` : ""}`,
1155
+ props: e ? {
1156
+ backgroundColor: a.value.table.th.backgroundColor,
1157
+ color: a.value.table.th.color,
1158
+ headerColor: a.value.table.th.color,
1159
+ headerBg: a.value.table.th.backgroundColor,
1160
+ isFullscreen: ie.value,
1161
+ fullscreenParent: H.value,
1162
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
1163
+ } : {
1164
+ hideDetails: !0,
1165
+ config: {
1166
+ open: l,
1167
+ maxHeight: 1e4,
1168
+ body: {
1169
+ backgroundColor: a.value.style.chart.backgroundColor,
1170
+ color: a.value.style.chart.color
1171
+ },
1172
+ head: {
1173
+ backgroundColor: a.value.style.chart.backgroundColor,
1174
+ color: a.value.style.chart.color
1175
+ }
1176
+ }
1177
+ }
1178
+ };
1179
+ });
1180
+ O(() => c.value.showTable, (e) => {
1181
+ a.value.table.show || (e && a.value.table.useDialog && ve.value ? ve.value.open() : "close" in ve.value && ve.value.close());
1182
+ });
1183
+ function Ia() {
1184
+ c.value.showTable = !1, De.value && De.value.setTableIconState(!1);
1185
+ }
1186
+ return Na({
1187
+ getData: wl,
1188
+ getImage: Sl,
1189
+ generateCsv: Ue,
1190
+ generatePdf: ia,
1191
+ generateImage: va,
1192
+ toggleTable: Sa,
1193
+ toggleLabels: za,
1194
+ toggleStack: Ma,
1195
+ toggleTooltip: $a,
1196
+ toggleAnnotator: We,
1197
+ toggleFullscreen: ca
1198
+ }), (e, l) => (F(), Ae("div", {
1199
+ style: xe(`width:100%; position:relative; ${a.value.responsive ? "height: 100%" : ""}; background:${a.value.style.chart.backgroundColor};`),
1200
+ ref_key: "xy",
1201
+ ref: H,
1202
+ id: `xy_canvas_${Q.value}`,
1203
+ class: Il(`vue-data-ui-component vue-ui-xy-canvas ${ie.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
1204
+ onMouseenter: qa,
1205
+ onMouseleave: Za
1206
+ }, [
1207
+ a.value.style.chart.title.text ? (F(), Ae("div", {
1208
+ key: 0,
1209
+ ref_key: "chartTitle",
1210
+ ref: Ke,
1211
+ style: xe(`width:100%;background:${a.value.style.chart.backgroundColor};`)
1212
+ }, [
1213
+ (F(), Y(nt, {
1214
+ key: `title_${Re.value}`,
1215
+ config: {
1216
+ title: {
1217
+ cy: "xy-canvas-title",
1218
+ ...a.value.style.chart.title
1219
+ },
1220
+ subtitle: {
1221
+ cy: "xy-canvas-subtitle",
1222
+ ...a.value.style.chart.title.subtitle
1223
+ }
1224
+ }
1225
+ }, null, 8, ["config"]))
1226
+ ], 4)) : W("", !0),
1227
+ J("div", {
1228
+ id: `legend-top-${Q.value}`
1229
+ }, null, 8, ft),
1230
+ a.value.userOptions.show && X.value && (L(ua) || L(He)) ? (F(), Y(L(Xa), {
1231
+ ref_key: "userOptionsRef",
1232
+ ref: De,
1233
+ key: `user_option_${Qe.value}`,
1234
+ backgroundColor: a.value.style.chart.backgroundColor,
1235
+ color: a.value.style.chart.color,
1236
+ isPrinting: L(ra),
1237
+ isImaging: L(na),
1238
+ uid: Q.value,
1239
+ hasTooltip: a.value.userOptions.buttons.tooltip && a.value.style.chart.tooltip.show,
1240
+ hasPdf: a.value.userOptions.buttons.pdf,
1241
+ hasImg: a.value.userOptions.buttons.img,
1242
+ hasXls: a.value.userOptions.buttons.csv,
1243
+ hasLabel: a.value.userOptions.buttons.labels,
1244
+ hasStack: je.dataset.length > 1 && a.value.userOptions.buttons.stack,
1245
+ hasFullscreen: a.value.userOptions.buttons.fullscreen,
1246
+ hasTable: u.value.end - u.value.start <= 730 && a.value.userOptions.buttons.table,
1247
+ isFullscreen: ie.value,
1248
+ isTooltip: c.value.showTooltip,
1249
+ isStacked: c.value.stacked,
1250
+ titles: { ...a.value.userOptions.buttonTitles },
1251
+ chartElement: H.value,
1252
+ position: a.value.userOptions.position,
1253
+ hasAnnotator: a.value.userOptions.buttons.annotator,
1254
+ isAnnotation: Te.value,
1255
+ callbacks: a.value.userOptions.callbacks,
1256
+ printScale: a.value.userOptions.print.scale,
1257
+ tableDialog: a.value.table.useDialog,
1258
+ onToggleFullscreen: ca,
1259
+ onGeneratePdf: L(ia),
1260
+ onGenerateCsv: Ue,
1261
+ onGenerateImage: L(va),
1262
+ onToggleTable: Sa,
1263
+ onToggleLabels: za,
1264
+ onToggleStack: Ma,
1265
+ onToggleTooltip: $a,
1266
+ onToggleAnnotator: We,
1267
+ style: xe({
1268
+ visibility: L(ua) ? L(He) ? "visible" : "hidden" : "visible"
1269
+ })
1270
+ }, Fa({ _: 2 }, [
1271
+ e.$slots.menuIcon ? {
1272
+ name: "menuIcon",
1273
+ fn: b(({ isOpen: t, color: r }) => [
1274
+ M(e.$slots, "menuIcon", K(ee({ isOpen: t, color: r })), void 0, !0)
1275
+ ]),
1276
+ key: "0"
1277
+ } : void 0,
1278
+ e.$slots.optionTooltip ? {
1279
+ name: "optionTooltip",
1280
+ fn: b(() => [
1281
+ M(e.$slots, "optionTooltip", {}, void 0, !0)
1282
+ ]),
1283
+ key: "1"
1284
+ } : void 0,
1285
+ e.$slots.optionPdf ? {
1286
+ name: "optionPdf",
1287
+ fn: b(() => [
1288
+ M(e.$slots, "optionPdf", {}, void 0, !0)
1289
+ ]),
1290
+ key: "2"
1291
+ } : void 0,
1292
+ e.$slots.optionCsv ? {
1293
+ name: "optionCsv",
1294
+ fn: b(() => [
1295
+ M(e.$slots, "optionCsv", {}, void 0, !0)
1296
+ ]),
1297
+ key: "3"
1298
+ } : void 0,
1299
+ e.$slots.optionImg ? {
1300
+ name: "optionImg",
1301
+ fn: b(() => [
1302
+ M(e.$slots, "optionImg", {}, void 0, !0)
1303
+ ]),
1304
+ key: "4"
1305
+ } : void 0,
1306
+ e.$slots.optionTable ? {
1307
+ name: "optionTable",
1308
+ fn: b(() => [
1309
+ M(e.$slots, "optionTable", {}, void 0, !0)
1310
+ ]),
1311
+ key: "5"
1312
+ } : void 0,
1313
+ e.$slots.optionLabels ? {
1314
+ name: "optionLabels",
1315
+ fn: b(() => [
1316
+ M(e.$slots, "optionLabels", {}, void 0, !0)
1317
+ ]),
1318
+ key: "6"
1319
+ } : void 0,
1320
+ e.$slots.optionStack ? {
1321
+ name: "optionStack",
1322
+ fn: b(() => [
1323
+ M(e.$slots, "optionStack", {}, void 0, !0)
1324
+ ]),
1325
+ key: "7"
1326
+ } : void 0,
1327
+ e.$slots.optionFullscreen ? {
1328
+ name: "optionFullscreen",
1329
+ fn: b(({ toggleFullscreen: t, isFullscreen: r }) => [
1330
+ M(e.$slots, "optionFullscreen", K(ee({ toggleFullscreen: t, isFullscreen: r })), void 0, !0)
1331
+ ]),
1332
+ key: "8"
1333
+ } : void 0,
1334
+ e.$slots.optionAnnotator ? {
1335
+ name: "optionAnnotator",
1336
+ fn: b(({ toggleAnnotator: t, isAnnotator: r }) => [
1337
+ M(e.$slots, "optionAnnotator", K(ee({ toggleAnnotator: t, isAnnotator: r })), void 0, !0)
1338
+ ]),
1339
+ key: "9"
1340
+ } : void 0
1341
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasImg", "hasXls", "hasLabel", "hasStack", "hasFullscreen", "hasTable", "isFullscreen", "isTooltip", "isStacked", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : W("", !0),
1342
+ J("div", {
1343
+ class: "vue-ui-xy-canvas",
1344
+ style: xe(`position: relative; aspect-ratio: ${sa.value}`),
1345
+ ref_key: "container",
1346
+ ref: le
1347
+ }, [
1348
+ J("canvas", {
1349
+ ref_key: "canvas",
1350
+ ref: S,
1351
+ style: { width: "100%", height: "100%" },
1352
+ onMousemove: l[0] || (l[0] = (t) => xl(t)),
1353
+ onMouseleave: kl
1354
+ }, null, 544),
1355
+ L(Ne) ? (F(), Y(Ql, { key: 0 })) : W("", !0),
1356
+ Ra(L(Ha), {
1357
+ show: c.value.showTooltip && ne.value,
1358
+ backgroundColor: a.value.style.chart.tooltip.backgroundColor,
1359
+ color: a.value.style.chart.tooltip.color,
1360
+ fontSize: a.value.style.chart.tooltip.fontSize,
1361
+ borderRadius: a.value.style.chart.tooltip.borderRadius,
1362
+ borderColor: a.value.style.chart.tooltip.borderColor,
1363
+ borderWidth: a.value.style.chart.tooltip.borderWidth,
1364
+ position: a.value.style.chart.tooltip.position,
1365
+ offsetY: a.value.style.chart.tooltip.offsetY,
1366
+ parent: L(S),
1367
+ content: Ce.value,
1368
+ isFullscreen: ie.value,
1369
+ backgroundOpacity: a.value.style.chart.tooltip.backgroundOpacity,
1370
+ isCustom: L(Da)(a.value.style.chart.tooltip.customFormat),
1371
+ smooth: a.value.style.chart.tooltip.smooth,
1372
+ backdropFilter: a.value.style.chart.tooltip.backdropFilter,
1373
+ smoothForce: a.value.style.chart.tooltip.smoothForce,
1374
+ smoothSnapThreshold: a.value.style.chart.tooltip.smoothSnapThreshold
1375
+ }, {
1376
+ "tooltip-before": b(() => [
1377
+ M(e.$slots, "tooltip-before", K(ee({ ...Je.value })), void 0, !0)
1378
+ ]),
1379
+ "tooltip-after": b(() => [
1380
+ M(e.$slots, "tooltip-after", K(ee({ ...Je.value })), void 0, !0)
1381
+ ]),
1382
+ _: 3
1383
+ }, 8, ["show", "backgroundColor", "color", "fontSize", "borderRadius", "borderColor", "borderWidth", "position", "offsetY", "parent", "content", "isFullscreen", "backgroundOpacity", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"])
1384
+ ], 4),
1385
+ a.value.style.chart.zoom.show && R.value > 6 && X.value && ta.value && !L(Ne) ? (F(), Y(ct, {
1386
+ key: 2,
1387
+ ref_key: "chartSlicer",
1388
+ ref: q,
1389
+ allMinimaps: el.value,
1390
+ background: a.value.style.chart.zoom.color,
1391
+ borderColor: a.value.style.chart.backgroundColor,
1392
+ customFormat: a.value.style.chart.zoom.customFormat,
1393
+ cutNullValues: ze.value,
1394
+ enableRangeHandles: a.value.style.chart.zoom.enableRangeHandles,
1395
+ enableSelectionDrag: a.value.style.chart.zoom.enableSelectionDrag,
1396
+ end: u.value.end,
1397
+ focusOnDrag: a.value.style.chart.zoom.focusOnDrag,
1398
+ focusRangeRatio: a.value.style.chart.zoom.focusRangeRatio,
1399
+ fontSize: a.value.style.chart.zoom.fontSize,
1400
+ immediate: !a.value.style.chart.zoom.preview.enable,
1401
+ inputColor: a.value.style.chart.zoom.color,
1402
+ isPreview: ll.value,
1403
+ labelLeft: a.value.style.chart.grid.x.timeLabels.values[u.value.start] ? N.value[u.value.start].text : "",
1404
+ labelRight: a.value.style.chart.grid.x.timeLabels.values[u.value.end - 1] ? N.value[u.value.end - 1].text : "",
1405
+ max: R.value,
1406
+ min: 0,
1407
+ minimap: Ka.value,
1408
+ minimapCompact: a.value.style.chart.zoom.minimap.compact,
1409
+ minimapFrameColor: a.value.style.chart.zoom.minimap.frameColor,
1410
+ minimapIndicatorColor: a.value.style.chart.zoom.minimap.indicatorColor,
1411
+ minimapLineColor: a.value.style.chart.zoom.minimap.lineColor,
1412
+ minimapMerged: a.value.style.chart.zoom.minimap.merged,
1413
+ minimapSelectedColor: a.value.style.chart.zoom.minimap.selectedColor,
1414
+ minimapSelectedColorOpacity: a.value.style.chart.zoom.minimap.selectedColorOpacity,
1415
+ minimapSelectedIndex: h.value,
1416
+ minimapSelectionRadius: a.value.style.chart.zoom.minimap.selectionRadius,
1417
+ preciseLabels: pa.value.length ? pa.value : N.value,
1418
+ refreshEndPoint: a.value.style.chart.zoom.endIndex !== null ? a.value.style.chart.zoom.endIndex + 1 : R.value,
1419
+ refreshStartPoint: a.value.style.chart.zoom.startIndex !== null ? a.value.style.chart.zoom.startIndex : 0,
1420
+ selectColor: a.value.style.chart.zoom.highlightColor,
1421
+ selectedSeries: P.value,
1422
+ smoothMinimap: a.value.style.chart.zoom.minimap.smooth,
1423
+ start: u.value.start,
1424
+ timeLabels: N.value,
1425
+ usePreciseLabels: a.value.style.chart.grid.x.timeLabels.datetimeFormatter.enable && !a.value.style.chart.zoom.useDefaultFormat,
1426
+ textColor: a.value.style.chart.color,
1427
+ useResetSlot: a.value.style.chart.zoom.useResetSlot,
1428
+ valueEnd: u.value.end,
1429
+ valueStart: u.value.start,
1430
+ verticalHandles: a.value.style.chart.zoom.minimap.verticalHandles,
1431
+ onFutureEnd: l[1] || (l[1] = (t) => fa("end", t)),
1432
+ onFutureStart: l[2] || (l[2] = (t) => fa("start", t)),
1433
+ onReset: he,
1434
+ onTrapMouse: ja,
1435
+ "onUpdate:end": ol,
1436
+ "onUpdate:start": tl
1437
+ }, {
1438
+ "reset-action": b(({ reset: t }) => [
1439
+ M(e.$slots, "reset-action", K(ee({ reset: t })), void 0, !0)
1440
+ ]),
1441
+ _: 3
1442
+ }, 8, ["allMinimaps", "background", "borderColor", "customFormat", "cutNullValues", "enableRangeHandles", "enableSelectionDrag", "end", "focusOnDrag", "focusRangeRatio", "fontSize", "immediate", "inputColor", "isPreview", "labelLeft", "labelRight", "max", "minimap", "minimapCompact", "minimapFrameColor", "minimapIndicatorColor", "minimapLineColor", "minimapMerged", "minimapSelectedColor", "minimapSelectedColorOpacity", "minimapSelectedIndex", "minimapSelectionRadius", "preciseLabels", "refreshEndPoint", "refreshStartPoint", "selectColor", "selectedSeries", "smoothMinimap", "start", "timeLabels", "usePreciseLabels", "textColor", "useResetSlot", "valueEnd", "valueStart", "verticalHandles"])) : W("", !0),
1443
+ J("div", {
1444
+ id: `legend-bottom-${Q.value}`
1445
+ }, null, 8, yt),
1446
+ la.value ? (F(), Y(Tl, {
1447
+ key: 3,
1448
+ to: a.value.style.chart.legend.position === "top" ? `#legend-top-${Q.value}` : `#legend-bottom-${Q.value}`
1449
+ }, [
1450
+ J("div", {
1451
+ ref_key: "chartLegend",
1452
+ ref: ea
1453
+ }, [
1454
+ a.value.style.chart.legend.show && X.value ? (F(), Y(rt, {
1455
+ legendSet: Ca.value,
1456
+ config: Cl.value,
1457
+ key: `legend_${Pe.value}`,
1458
+ onClickMarker: l[3] || (l[3] = ({ i: t }) => ka(t))
1459
+ }, {
1460
+ item: b(({ legend: t, index: r }) => [
1461
+ J("div", {
1462
+ onClick: (s) => t.segregate(),
1463
+ style: xe(`opacity:${A.value.includes(r) ? 0.5 : 1}`)
1464
+ }, Ve(t.name), 13, mt)
1465
+ ]),
1466
+ _: 1
1467
+ }, 8, ["legendSet", "config"])) : M(e.$slots, "legend", {
1468
+ key: 1,
1469
+ legend: Ca.value
1470
+ }, void 0, !0)
1471
+ ], 512)
1472
+ ], 8, ["to"])) : W("", !0),
1473
+ e.$slots.watermark ? (F(), Ae("div", gt, [
1474
+ M(e.$slots, "watermark", K(ee({ isPrinting: L(ra) || L(na) })), void 0, !0)
1475
+ ])) : W("", !0),
1476
+ e.$slots.source ? (F(), Ae("div", {
1477
+ key: 5,
1478
+ ref_key: "source",
1479
+ ref: aa,
1480
+ dir: "auto"
1481
+ }, [
1482
+ M(e.$slots, "source", {}, void 0, !0)
1483
+ ], 512)) : W("", !0),
1484
+ X.value && a.value.userOptions.buttons.table ? (F(), Y(Al(ye.value.component), Fl({ key: 6 }, ye.value.props, {
1485
+ ref_key: "tableUnit",
1486
+ ref: ve,
1487
+ onClose: Ia
1488
+ }), Fa({
1489
+ content: b(() => [
1490
+ (F(), Y(L(Ba), {
1491
+ key: `table_${Oe.value}`,
1492
+ colNames: Ie.value.colNames,
1493
+ head: Ie.value.head,
1494
+ body: Ie.value.body,
1495
+ config: Ie.value.config,
1496
+ title: a.value.table.useDialog ? "" : ye.value.title,
1497
+ withCloseButton: !a.value.table.useDialog,
1498
+ onClose: Ia
1499
+ }, {
1500
+ th: b(({ th: t }) => [
1501
+ J("div", { innerHTML: t }, null, 8, pt)
1502
+ ]),
1503
+ td: b(({ td: t }) => [
1504
+ Oa(Ve(t), 1)
1505
+ ]),
1506
+ _: 1
1507
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
1508
+ ]),
1509
+ _: 2
1510
+ }, [
1511
+ a.value.table.useDialog ? {
1512
+ name: "title",
1513
+ fn: b(() => [
1514
+ Oa(Ve(ye.value.title), 1)
1515
+ ]),
1516
+ key: "0"
1517
+ } : void 0,
1518
+ a.value.table.useDialog ? {
1519
+ name: "actions",
1520
+ fn: b(() => [
1521
+ J("button", {
1522
+ tabindex: "0",
1523
+ class: "vue-ui-user-options-button",
1524
+ onClick: l[4] || (l[4] = (t) => Ue(a.value.userOptions.callbacks.csv))
1525
+ }, [
1526
+ Ra(it, {
1527
+ name: "excel",
1528
+ stroke: ye.value.props.color
1529
+ }, null, 8, ["stroke"])
1530
+ ])
1531
+ ]),
1532
+ key: "1"
1533
+ } : void 0
1534
+ ]), 1040)) : W("", !0),
1535
+ a.value.userOptions.buttons.annotator && y.value.length ? (F(), Y(L(Ua), {
1536
+ key: 7,
1537
+ parent: H.value,
1538
+ backgroundColor: a.value.style.chart.backgroundColor,
1539
+ color: a.value.style.chart.color,
1540
+ active: Te.value,
1541
+ onClose: We
1542
+ }, null, 8, ["parent", "backgroundColor", "color", "active"])) : W("", !0)
1543
+ ], 46, ht));
1544
+ }
1545
+ }, Et = /* @__PURE__ */ dt(bt, [["__scopeId", "data-v-8c17f74b"]]);
1546
+ export {
1547
+ Et as default
1548
+ };