vue-data-ui 3.0.0-next.7 → 3.0.0-next.71

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 (137) hide show
  1. package/dist/{Arrow-Bl8urcli.js → Arrow-BZNpld6u.js} +1 -1
  2. package/dist/{BaseDraggableDialog-CyhpaZU5.js → BaseDraggableDialog-kg-eVvXZ.js} +2 -2
  3. package/dist/{BaseIcon-BCZfTCeM.js → BaseIcon-BdOEhJar.js} +1 -1
  4. package/dist/{ColorPicker-CSJf42vx.js → ColorPicker-CWvXlPxS.js} +2 -2
  5. package/dist/{DataTable-mQ6Wd-rR.js → DataTable-B3yakHEM.js} +2 -2
  6. package/dist/{Legend-B2hrDh4G.js → Legend-DiGLrlzP.js} +2 -2
  7. package/dist/{NonSvgPenAndPaper-DQ8KsK4W.js → NonSvgPenAndPaper-C-ZjpJQd.js} +3 -3
  8. package/dist/{PackageVersion-CeEYZfaH.js → PackageVersion-6s4eI8W7.js} +1 -1
  9. package/dist/{PenAndPaper-DhSxfUrQ.js → PenAndPaper-JoUN7Ink.js} +3 -3
  10. package/dist/{Shape-C2qH26wh.js → Shape-CWIa2nta.js} +43 -37
  11. package/dist/Slicer-DYuvPkEM.js +602 -0
  12. package/dist/{SparkTooltip-BcHgW6YX.js → SparkTooltip-C_fUmbP7.js} +1 -1
  13. package/dist/{Title-B7Xb3YuE.js → Title-VLWyIYrj.js} +1 -1
  14. package/dist/{Tooltip-BidRoM5E.js → Tooltip-BS5naLS2.js} +23 -19
  15. package/dist/{UserOptions-0tvMM8PF.js → UserOptions-BV_xM-sB.js} +2 -2
  16. package/dist/{dom-to-png-CTrlbKHr.js → dom-to-png-PUk0ukSG.js} +1 -1
  17. package/dist/{img-D72yZNUg.js → img-DD_2wgY3.js} +1 -1
  18. package/dist/{index-Cg-RjxqH.js → index-DKpp7RIH.js} +2236 -1505
  19. package/dist/{pdf-DgX01_wu.js → pdf-0TQQyXWM.js} +1 -1
  20. package/dist/style.css +1 -1
  21. package/dist/types/vue-data-ui.d.cts +610 -22
  22. package/dist/types/vue-data-ui.d.ts +610 -22
  23. package/dist/useAutoSizeLabelsInsideViewbox-Qhry5WvH.js +81 -0
  24. package/dist/useFitSvgText-2crs6Fv5.js +69 -0
  25. package/dist/useLoading-D7YHNtLX.js +29 -0
  26. package/dist/useNestedProp-D-8c0o4p.js +13 -0
  27. package/dist/usePanZoom-BVca3eMk.js +122 -0
  28. package/dist/{usePrinter-BUzmyQf9.js → usePrinter-NUeckmCX.js} +2 -2
  29. package/dist/useTimeLabelCollider-CIsgDrl9.js +78 -0
  30. package/dist/{useTimeLabels-Mrr0jrpL.js → useTimeLabels-DkzmKfZn.js} +211 -152
  31. package/dist/{vue-data-ui-DpO93ey5.js → vue-data-ui-BIXXEsFZ.js} +105 -100
  32. package/dist/vue-data-ui.js +23 -22
  33. package/dist/vue-ui-3d-bar-CVUfj12F.js +1323 -0
  34. package/dist/{vue-ui-accordion-CRomxzaL.js → vue-ui-accordion-Cpovz3RE.js} +3 -3
  35. package/dist/vue-ui-age-pyramid-CQWFaHLV.js +834 -0
  36. package/dist/{vue-ui-annotator-BAOxPiFx.js → vue-ui-annotator-C49Xw5Mh.js} +2 -2
  37. package/dist/vue-ui-bullet-DED2SuIa.js +571 -0
  38. package/dist/vue-ui-candlestick-DGgbevy6.js +999 -0
  39. package/dist/{vue-ui-carousel-table-DVGlPZIa.js → vue-ui-carousel-table-DKIgSB1T.js} +29 -29
  40. package/dist/{vue-ui-chestnut-P1v4ffD0.js → vue-ui-chestnut-D1bEM91d.js} +5 -5
  41. package/dist/vue-ui-chord-CBLSqtEP.js +1038 -0
  42. package/dist/{vue-ui-circle-pack-FXmemXgl.js → vue-ui-circle-pack-g2ts9NTG.js} +24 -24
  43. package/dist/{vue-ui-cursor-CdvMgIrP.js → vue-ui-cursor-DSxmPUD8.js} +2 -2
  44. package/dist/{vue-ui-dashboard-Vke0452J.js → vue-ui-dashboard-B6FfoNjQ.js} +62 -62
  45. package/dist/{vue-ui-digits-BVhyYqCs.js → vue-ui-digits-DKffQVgr.js} +2 -2
  46. package/dist/{vue-ui-donut-BpIivKcf.js → vue-ui-donut-CJrWc4-g.js} +320 -308
  47. package/dist/vue-ui-donut-evolution-Bys6cs-D.js +1075 -0
  48. package/dist/vue-ui-dumbbell-Cb_I__qC.js +1119 -0
  49. package/dist/vue-ui-flow-BzuT3ij5.js +841 -0
  50. package/dist/{vue-ui-funnel-BbFmbsft.js → vue-ui-funnel-Ctp7GDiN.js} +16 -16
  51. package/dist/vue-ui-galaxy-CRBy0aio.js +680 -0
  52. package/dist/vue-ui-gauge-NcQq5UFr.js +791 -0
  53. package/dist/vue-ui-gizmo-Cwfb8c-0.js +210 -0
  54. package/dist/vue-ui-heatmap-DElqpFVY.js +1078 -0
  55. package/dist/vue-ui-history-plot-De1Dvnhw.js +1073 -0
  56. package/dist/{vue-ui-kpi-jN_yMnLj.js → vue-ui-kpi-_bLScmgO.js} +26 -26
  57. package/dist/{vue-ui-mini-loader-rYr76x8g.js → vue-ui-mini-loader-PsHE_2Wy.js} +2 -2
  58. package/dist/{vue-ui-molecule-BWZHOQLi.js → vue-ui-molecule-CgiahnC6.js} +53 -51
  59. package/dist/vue-ui-mood-radar-dXVOOrhl.js +785 -0
  60. package/dist/vue-ui-nested-donuts-C0X6BetT.js +1286 -0
  61. package/dist/vue-ui-onion-C7sxQzk_.js +776 -0
  62. package/dist/vue-ui-parallel-coordinate-plot-jwtnNX59.js +915 -0
  63. package/dist/{vue-ui-quadrant-BFFzfDw3.js → vue-ui-quadrant-DguDE91h.js} +512 -459
  64. package/dist/vue-ui-quick-chart-BpEDS08U.js +1761 -0
  65. package/dist/vue-ui-radar-lFrqTRqo.js +796 -0
  66. package/dist/{vue-ui-rating-BAauyqTn.js → vue-ui-rating-BHghXziv.js} +2 -2
  67. package/dist/vue-ui-relation-circle-C5W6NFOb.js +598 -0
  68. package/dist/vue-ui-ridgeline-A2DuFEDS.js +1153 -0
  69. package/dist/vue-ui-rings-BgJAm9_b.js +728 -0
  70. package/dist/vue-ui-scatter-COfpLChz.js +1178 -0
  71. package/dist/{vue-ui-skeleton-CUOhCY4p.js → vue-ui-skeleton-DMLCBUtZ.js} +3 -3
  72. package/dist/{vue-ui-smiley-B6SqWMov.js → vue-ui-smiley-ZopESYc_.js} +26 -26
  73. package/dist/vue-ui-spark-trend-CuSQ03fQ.js +315 -0
  74. package/dist/vue-ui-sparkbar-BCsX9M4q.js +351 -0
  75. package/dist/vue-ui-sparkgauge-DdyZLA0T.js +232 -0
  76. package/dist/vue-ui-sparkhistogram-CUxFgIcE.js +380 -0
  77. package/dist/vue-ui-sparkline-DOkofsLL.js +489 -0
  78. package/dist/vue-ui-sparkstackbar-Bq9PZzmH.js +421 -0
  79. package/dist/vue-ui-stackbar-B7ceoT0V.js +1370 -0
  80. package/dist/vue-ui-strip-plot-DYh-NGQN.js +915 -0
  81. package/dist/{vue-ui-table-heatmap-DazTE3fa.js → vue-ui-table-heatmap-BVTb1xuA.js} +5 -5
  82. package/dist/{vue-ui-table-Dwjl3L0p.js → vue-ui-table-pESH5KAJ.js} +11 -11
  83. package/dist/{vue-ui-table-sparkline-BXMPUEpN.js → vue-ui-table-sparkline-Bw-6l9lA.js} +14 -14
  84. package/dist/vue-ui-thermometer-BqqfmS-B.js +541 -0
  85. package/dist/{vue-ui-timer-yLvNAZL_.js → vue-ui-timer-CVisMxLS.js} +5 -5
  86. package/dist/vue-ui-tiremarks-K1dcCdpj.js +406 -0
  87. package/dist/vue-ui-treemap-Bz3c68s4.js +1035 -0
  88. package/dist/{vue-ui-vertical-bar-BrYCoVym.js → vue-ui-vertical-bar-BvtXpCjw.js} +71 -69
  89. package/dist/vue-ui-waffle-CYO7bIf1.js +910 -0
  90. package/dist/vue-ui-wheel-De1spwLh.js +379 -0
  91. package/dist/vue-ui-word-cloud-BMmVrx_T.js +765 -0
  92. package/dist/{vue-ui-world-B4Dqrk4l.js → vue-ui-world-Ccpr00nJ.js} +11 -9
  93. package/dist/vue-ui-xy-D4jaRKe3.js +3771 -0
  94. package/dist/{vue-ui-xy-canvas-D7fL36kT.js → vue-ui-xy-canvas-DE-Uu5oq.js} +265 -264
  95. package/package.json +1 -1
  96. package/dist/Slicer-BD8Z8VCW.js +0 -577
  97. package/dist/useLoading-Bt5Doa8m.js +0 -28
  98. package/dist/useNestedProp-C_G5E08Y.js +0 -13
  99. package/dist/usePanZoom-BQMvRXEQ.js +0 -115
  100. package/dist/vue-ui-3d-bar-D8imUwEz.js +0 -1227
  101. package/dist/vue-ui-age-pyramid-CV7gtFOC.js +0 -746
  102. package/dist/vue-ui-bullet-BtuMMBF7.js +0 -513
  103. package/dist/vue-ui-candlestick-BsRtXKrv.js +0 -873
  104. package/dist/vue-ui-chord-CIuzYmpM.js +0 -949
  105. package/dist/vue-ui-donut-evolution-BRlsCA4U.js +0 -903
  106. package/dist/vue-ui-dumbbell-D87Dumjh.js +0 -753
  107. package/dist/vue-ui-flow-D_L_xssL.js +0 -765
  108. package/dist/vue-ui-galaxy-Cn6vHbaw.js +0 -617
  109. package/dist/vue-ui-gauge-Ds4terqY.js +0 -738
  110. package/dist/vue-ui-gizmo-BTncpI62.js +0 -192
  111. package/dist/vue-ui-heatmap-B6GpjeWC.js +0 -877
  112. package/dist/vue-ui-history-plot-DTDzEeGq.js +0 -924
  113. package/dist/vue-ui-mood-radar-CPfS6f1L.js +0 -670
  114. package/dist/vue-ui-nested-donuts-Bsd2kGoJ.js +0 -1177
  115. package/dist/vue-ui-onion-BQ4nISXW.js +0 -701
  116. package/dist/vue-ui-parallel-coordinate-plot-BoHgVgbn.js +0 -807
  117. package/dist/vue-ui-quick-chart-oNMTeOAL.js +0 -1612
  118. package/dist/vue-ui-radar-98mXFZe-.js +0 -741
  119. package/dist/vue-ui-relation-circle-6oDCSxkO.js +0 -542
  120. package/dist/vue-ui-ridgeline-CugMGjOU.js +0 -969
  121. package/dist/vue-ui-rings-bsGXaD2m.js +0 -685
  122. package/dist/vue-ui-scatter-7ssLliGg.js +0 -1045
  123. package/dist/vue-ui-spark-trend-jauInkkN.js +0 -291
  124. package/dist/vue-ui-sparkbar-DXByIxQH.js +0 -301
  125. package/dist/vue-ui-sparkgauge-BMrV2gDi.js +0 -201
  126. package/dist/vue-ui-sparkhistogram-CoNM4G7o.js +0 -313
  127. package/dist/vue-ui-sparkline-DrN3_wS0.js +0 -459
  128. package/dist/vue-ui-sparkstackbar-W1a0JQi9.js +0 -381
  129. package/dist/vue-ui-stackbar-D1-gbUgE.js +0 -1207
  130. package/dist/vue-ui-strip-plot-KhfvrVuN.js +0 -761
  131. package/dist/vue-ui-thermometer-Cn6lJRs3.js +0 -495
  132. package/dist/vue-ui-tiremarks-BYsWePfK.js +0 -358
  133. package/dist/vue-ui-treemap-Ce7RVFG3.js +0 -965
  134. package/dist/vue-ui-waffle-CCrR2T1G.js +0 -863
  135. package/dist/vue-ui-wheel-BuxjnrDN.js +0 -352
  136. package/dist/vue-ui-word-cloud-C6fawHJE.js +0 -659
  137. package/dist/vue-ui-xy-ubRnv9iJ.js +0 -2980
@@ -1,1612 +0,0 @@
1
- import { defineAsyncComponent as he, ref as z, computed as U, watch as Ve, shallowRef as ft, onMounted as Tt, onBeforeUnmount as Pt, nextTick as Me, createElementBlock as l, openBlock as a, normalizeStyle as R, normalizeClass as fe, createBlock as Fe, createCommentVNode as g, createVNode as ge, unref as f, createSlots as Rt, withCtx as G, renderSlot as M, normalizeProps as ie, guardReactiveProps as ue, toDisplayString as O, createElementVNode as _, Fragment as m, renderList as $, mergeProps as qe } from "vue";
2
- import { u as Mt, c as Ft, t as Nt, p as q, a as Ut, C as gt, b as Bt, G as Dt, e as Vt, d as He, m as qt, D as mt, X as Ht, j as Wt, k as We, n as Le, i as X, f as D, I as jt, V as pt, v as Z, x as Ne, y as je } from "./index-Cg-RjxqH.js";
3
- import { t as Gt, u as Xt } from "./useResponsive-DfdjqQps.js";
4
- import { u as yt } from "./useNestedProp-C_G5E08Y.js";
5
- import { u as Zt } from "./usePrinter-BUzmyQf9.js";
6
- import { u as Yt } from "./useChartAccessibility-9icAAmYg.js";
7
- import { S as Jt } from "./Slicer-BD8Z8VCW.js";
8
- import { u as Qt } from "./useTimeLabels-Mrr0jrpL.js";
9
- import Kt from "./img-D72yZNUg.js";
10
- import { _ as ea } from "./_plugin-vue_export-helper-CHgC5LLL.js";
11
- const A = {
12
- LINE: "LINE",
13
- BAR: "BAR",
14
- DONUT: "DONUT"
15
- }, ta = ["SERIE", "SERIES", "DATA", "VALUE", "VALUES", "NUM"];
16
- function aa({ dataset: c, barLineSwitch: C = 6 }) {
17
- let y = null, T = null, H = 0;
18
- if ((typeof c == "number" || typeof c == "string") && console.warn(`The provided dataset (${c}) is not sufficient to build a chart`), ze(c) && (Y(c) && (c.length < C ? y = A.BAR : y = A.LINE, T = c, H = c.length), Ue(c))) {
19
- if (!oa(c))
20
- return console.warn("The objects in the dataset array have a different data structure. Either keys or value types are different."), !1;
21
- const ye = Object.keys(c[0]), $e = Object.values(c[0]);
22
- if (!ye.some((F) => na(F)))
23
- return console.warn("The data type of the dataset objects in the array must contain one of the following keys: DATA, SERIES, VALUE, VALUES, NUM. Casing is not important."), !1;
24
- xt($e, (F) => typeof F == "number") && (y = A.DONUT, T = c), xt($e, (F) => Array.isArray(F) && Y(F)) && (kt(c) > C ? y = A.LINE : y = A.BAR, H = kt(c), T = c.map((F) => ({
25
- ...F,
26
- data: ia(F, (B) => Y(B))
27
- }))), c = c.map((F) => bt(F)), T = T.map((F) => bt(F));
28
- }
29
- return ze(c) && [...new Set(c.flatMap((ye) => Array.isArray(ye)))][0], {
30
- dataset: c,
31
- type: y,
32
- usableDataset: T,
33
- maxSeriesLength: H
34
- };
35
- }
36
- function St(c) {
37
- return !c || ze(c) && !c.length;
38
- }
39
- function ze(c) {
40
- return Array.isArray(c);
41
- }
42
- function Y(c) {
43
- if (!ze(c) || St(c)) return !1;
44
- const C = c.map((y) => Number(y));
45
- return ![...new Set(C.flatMap((y) => typeof y == "number" && !isNaN(y)))].includes(!1);
46
- }
47
- function Ue(c) {
48
- return !ze(c) || St(c) || !![...new Set(c.flatMap((y) => typeof y == "object" && !Array.isArray(y)))].includes(!1) ? !1 : !c.map((y) => Object.keys(y).length > 0).includes(!1);
49
- }
50
- function la(c, C) {
51
- const y = Object.keys(c).sort(), T = Object.keys(C).sort();
52
- if (y.length !== T.length)
53
- return !1;
54
- for (let H = 0; H < y.length; H += 1) {
55
- const me = y[H], pe = T[H];
56
- if (me !== pe || typeof c[me] != typeof C[pe])
57
- return !1;
58
- }
59
- return !0;
60
- }
61
- function oa(c) {
62
- if (c.length <= 1) return !0;
63
- for (let C = 0; C < c.length; C += 1)
64
- for (let y = C + 1; y < c.length; y += 1)
65
- if (!la(c[C], c[y]))
66
- return !1;
67
- return !0;
68
- }
69
- function na(c) {
70
- return ta.includes(c.toUpperCase());
71
- }
72
- function xt(c, C) {
73
- let y = [];
74
- for (let T = 0; T < c.length; T += 1)
75
- y.push(C(c[T]));
76
- return y.includes(!0);
77
- }
78
- function kt(c) {
79
- return Math.max(...[...c].flatMap((C) => Object.values(C).filter((y) => Y(y)).map((y) => y.length)));
80
- }
81
- function ia(c, C) {
82
- return Object.values(c).filter((y) => C(y))[0];
83
- }
84
- function bt(c) {
85
- const C = {};
86
- for (let y in c)
87
- c.hasOwnProperty(y) && (C[y.toUpperCase()] = c[y]);
88
- return C;
89
- }
90
- const ua = ["id"], ra = ["xmlns", "viewBox"], sa = ["x", "y", "width", "height"], va = ["x", "y", "width", "height"], da = ["width", "height"], ca = ["id"], ha = ["id"], fa = ["id"], ga = ["flood-color"], ma = {
91
- key: 0,
92
- class: "donut-label-connectors"
93
- }, pa = ["d", "stroke", "stroke-width", "filter"], ya = ["cx", "cy", "r", "fill", "filter"], xa = { class: "donut" }, ka = ["d", "fill", "stroke", "stroke-width", "filter"], ba = ["d", "onMouseenter", "onClick"], Sa = {
94
- key: 1,
95
- class: "donut-labels quick-animation"
96
- }, wa = ["cx", "cy", "fill", "stroke", "filter"], Aa = ["text-anchor", "x", "y", "fill", "font-size", "filter"], _a = ["text-anchor", "x", "y", "fill", "font-size", "filter"], La = {
97
- key: 2,
98
- class: "donut-hollow quick-animation"
99
- }, za = ["x", "y", "font-size", "fill"], $a = ["x", "y", "font-size", "fill"], Ca = {
100
- key: 0,
101
- class: "line-grid"
102
- }, Ia = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ea = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Oa = {
103
- key: 1,
104
- class: "line-axis"
105
- }, Ta = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Pa = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ra = {
106
- key: 2,
107
- class: "yLabels"
108
- }, Ma = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Fa = ["x", "y", "font-size", "fill"], Na = {
109
- key: 3,
110
- class: "periodLabels"
111
- }, Ua = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ba = { key: 1 }, Da = ["font-size", "text-anchor", "fill", "transform"], Va = ["font-size", "text-anchor", "fill", "transform", "innerHTML"], qa = { class: "plots" }, Ha = { class: "line-plot-series" }, Wa = ["d", "stroke", "stroke-width"], ja = ["d", "stroke", "stroke-width"], Ga = ["d", "stroke", "stroke-width"], Xa = ["d", "stroke", "stroke-width"], Za = ["cx", "cy", "fill", "stroke"], Ya = {
112
- key: 4,
113
- class: "dataLabels"
114
- }, Ja = ["font-size", "fill", "x", "y"], Qa = { class: "tooltip-traps" }, Ka = ["x", "y", "height", "width", "fill", "onMouseenter", "onClick"], el = {
115
- key: 0,
116
- class: "line-grid"
117
- }, tl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], al = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ll = {
118
- key: 1,
119
- class: "line-axis"
120
- }, ol = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], nl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], il = {
121
- key: 2,
122
- class: "yLabels"
123
- }, ul = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], rl = ["x", "y", "font-size", "fill"], sl = {
124
- key: 3,
125
- class: "periodLabels"
126
- }, vl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], dl = ["font-size", "text-anchor", "transform", "fill"], cl = { class: "plots" }, hl = ["x", "width", "height", "y", "fill", "stroke", "stroke-width"], fl = ["to"], gl = ["from", "to"], ml = {
127
- key: 4,
128
- class: "dataLabels"
129
- }, pl = ["x", "y", "font-size", "fill"], yl = { class: "tooltip-traps" }, xl = ["x", "y", "height", "width", "fill", "onMouseenter", "onClick"], kl = {
130
- key: 6,
131
- class: "axis-labels"
132
- }, bl = { key: 0 }, Sl = ["font-size", "fill", "x", "y"], wl = { key: 1 }, Al = ["font-size", "fill", "x", "y"], _l = { key: 2 }, Ll = ["font-size", "fill", "transform"], zl = { key: 3 }, $l = ["font-size", "fill", "transform"], Cl = {
133
- key: 6,
134
- class: "vue-data-ui-watermark"
135
- }, Il = ["onClick"], El = ["onClick"], Ol = ["onClick"], Tl = {
136
- key: 1,
137
- class: "vue-ui-quick-chart-not-processable"
138
- }, Pl = {
139
- __name: "vue-ui-quick-chart",
140
- props: {
141
- config: {
142
- type: Object,
143
- default() {
144
- return {};
145
- }
146
- },
147
- dataset: {
148
- type: [Array, Object, String, Number],
149
- default() {
150
- return null;
151
- }
152
- }
153
- },
154
- emits: ["selectDatapoint", "selectLegend"],
155
- setup(c, { expose: C, emit: y }) {
156
- const T = he(() => import("./BaseIcon-BCZfTCeM.js")), H = he(() => import("./PackageVersion-CeEYZfaH.js")), me = he(() => import("./PenAndPaper-DhSxfUrQ.js")), pe = he(() => import("./vue-ui-skeleton-CUOhCY4p.js")), ye = he(() => import("./Tooltip-BidRoM5E.js")), $e = he(() => import("./UserOptions-0tvMM8PF.js")), { vue_ui_quick_chart: F } = Mt(), B = c, J = z(null), Ge = z(null), Xe = z(null), Ze = z(null), Q = z(Ft()), te = z(!1), xe = z(null), ae = z(""), W = z(null), Ye = z(null), Je = z(null), w = z([]), Qe = z(0), Ce = z(0), e = U({
157
- get: () => at(),
158
- set: (o) => o
159
- }), { svgRef: Ke } = Yt({ config: { text: e.value.title } }), wt = U(() => e.value.showUserOptionsOnChartHover), et = U(() => e.value.keepUserOptionsStateOnChartLeave), Ie = z(!e.value.showUserOptionsOnChartHover);
160
- function tt(o = !1) {
161
- wt.value && (Ie.value = o);
162
- }
163
- function at() {
164
- const o = yt({
165
- userConfig: B.config,
166
- defaultConfig: F
167
- });
168
- let s = {};
169
- return o.theme ? s = {
170
- ...yt({
171
- userConfig: Ut.vue_ui_quick_chart[o.theme] || B.config,
172
- defaultConfig: o
173
- }),
174
- customPalette: Nt[o.theme] || q
175
- } : s = o, B.config && gt(B.config, "zoomStartIndex") ? s.zoomStartIndex = B.config.zoomStartIndex : s.zoomStartIndex = null, B.config && gt(B.config, "zoomEndIndex") ? s.zoomEndIndex = B.config.zoomEndIndex : s.zoomEndIndex = null, s;
176
- }
177
- Ve(() => B.config, (o) => {
178
- e.value = at(), b.value.width = e.value.width, b.value.height = e.value.height, Ie.value = !e.value.showUserOptionsOnChartHover, nt(), Se.value.showTooltip = e.value.showTooltip;
179
- }, { deep: !0 }), Ve(() => B.dataset, (o) => {
180
- p.value = be.value, x.value.start = 0, x.value.end = p.value.maxSeriesLength, Ce.value += 1;
181
- }, { deep: !0 });
182
- const ke = U(() => Bt(e.value.customPalette)), re = y, be = U(() => {
183
- const o = aa({ dataset: Dt(B.dataset, [
184
- "serie",
185
- "series",
186
- "data",
187
- "value",
188
- "values",
189
- "num"
190
- ]), barLineSwitch: e.value.chartIsBarUnderDatasetLength });
191
- return o || console.error("VueUiQuickChart : Dataset is not processable"), o;
192
- }), p = z(be.value), At = U(() => !!p.value), L = U(() => p.value ? p.value.type : null);
193
- Ve(() => L.value, (o) => {
194
- o || Vt({
195
- componentName: "VueUiQuickChart",
196
- type: "dataset"
197
- });
198
- }, { immediate: !0 });
199
- const { isPrinting: Ee, isImaging: Oe, generatePdf: lt, generateImage: ot } = Zt({
200
- elementId: `${L.value}_${Q.value}`,
201
- fileName: e.value.title || L.value,
202
- options: e.value.userOptionsPrint
203
- }), _t = U(() => e.value.showUserOptions && !e.value.title), b = z({
204
- width: e.value.width,
205
- height: e.value.height
206
- }), Se = z({
207
- showTooltip: e.value.showTooltip
208
- }), K = ft(null), se = ft(null);
209
- Tt(() => {
210
- nt();
211
- });
212
- function nt() {
213
- if (e.value.responsive) {
214
- const o = Gt(() => {
215
- const { width: s, height: t } = Xt({
216
- chart: J.value,
217
- title: e.value.title ? Ge.value : null,
218
- legend: e.value.showLegend ? Xe.value : null,
219
- slicer: [A.BAR, A.LINE].includes(L.value) && e.value.zoomXy && p.value.maxSeriesLength > 1 ? Ze.value : null,
220
- source: Ye.value,
221
- noTitle: Je.value
222
- });
223
- requestAnimationFrame(() => {
224
- b.value.width = s, b.value.height = t;
225
- });
226
- });
227
- K.value && (se.value && K.value.unobserve(se.value), K.value.disconnect()), K.value = new ResizeObserver(o), se.value = J.value.parentNode, K.value.observe(se.value);
228
- }
229
- dt();
230
- }
231
- Pt(() => {
232
- K.value && (se.value && K.value.unobserve(se.value), K.value.disconnect());
233
- });
234
- const Lt = U(() => {
235
- switch (L.value) {
236
- case A.LINE:
237
- return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
238
- case A.BAR:
239
- return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
240
- case A.DONUT:
241
- return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
242
- default:
243
- return `0 0 ${b.value.width <= 0 ? 10 : b.value.width} ${b.value.height <= 0 ? 10 : b.value.height}`;
244
- }
245
- });
246
- function it(o) {
247
- return [...o].map((s) => s.value).reduce((s, t) => s + t, 0);
248
- }
249
- function we(o) {
250
- return e.value.blurOnHover && ![null, void 0].includes(W.value) && W.value !== o ? `url(#blur_${Q.value})` : "";
251
- }
252
- function ut(o, s) {
253
- w.value.includes(o) ? w.value = w.value.filter((t) => t !== o) : w.value.length < s && w.value.push(o);
254
- }
255
- const rt = z(null), st = z(null), Te = z(!1);
256
- function zt(o, s) {
257
- Te.value = !0;
258
- let t = o.value;
259
- const u = be.value.dataset.find((r, h) => o.id === `donut_${h}`).VALUE;
260
- if (w.value.includes(o.id)) {
261
- let r = function() {
262
- t > u ? (Te.value = !1, cancelAnimationFrame(st.value), p.value = {
263
- ...p.value,
264
- dataset: p.value.dataset.map((h, P) => o.id === `donut_${P}` ? {
265
- ...h,
266
- value: u,
267
- VALUE: u
268
- } : h)
269
- }) : (t += u * 0.025, p.value = {
270
- ...p.value,
271
- dataset: p.value.dataset.map((h, P) => o.id === `donut_${P}` ? {
272
- ...h,
273
- value: t,
274
- VALUE: t
275
- } : h)
276
- }, st.value = requestAnimationFrame(r));
277
- };
278
- w.value = w.value.filter((h) => h !== o.id), r();
279
- } else if (s.length > 1) {
280
- let r = function() {
281
- t < u / 100 ? (Te.value = !1, cancelAnimationFrame(rt.value), w.value.push(o.id), p.value = {
282
- ...p.value,
283
- dataset: p.value.dataset.map((h, P) => o.id === `donut_${P}` ? {
284
- ...h,
285
- value: 0,
286
- VALUE: 0
287
- } : h)
288
- }) : (t /= 1.1, p.value = {
289
- ...p.value,
290
- dataset: p.value.dataset.map((h, P) => o.id === `donut_${P}` ? {
291
- ...h,
292
- value: t,
293
- VALUE: t
294
- } : h)
295
- }, rt.value = requestAnimationFrame(r));
296
- };
297
- r();
298
- }
299
- }
300
- const j = z(null);
301
- function $t(o) {
302
- j.value = o;
303
- }
304
- const vt = U(() => e.value.donutThicknessRatio < 0.15 ? 0.15 : e.value.donutThicknessRatio > 0.4 ? 0.4 : e.value.donutThicknessRatio), I = U(() => {
305
- if (L.value !== A.DONUT) return null;
306
- const o = p.value.dataset.map((n, i) => ({
307
- ...n,
308
- value: n.VALUE || n.DATA || n.SERIE || n.VALUES || n.NUM || 0,
309
- name: n.NAME || n.DESCRIPTION || n.TITLE || n.LABEL || `Serie ${i}`,
310
- id: `donut_${i}`
311
- })).map((n, i) => ({
312
- ...n,
313
- color: n.COLOR ? He(n.COLOR) : ke.value[i + e.value.paletteStartIndex] || q[i + e.value.paletteStartIndex] || q[(i + e.value.paletteStartIndex) % q.length],
314
- immutableValue: n.value
315
- }));
316
- function s(n, i) {
317
- return D({
318
- v: isNaN(n.value / it(i)) ? 0 : n.value / it(i) * 100,
319
- s: "%",
320
- r: e.value.dataLabelRoundingPercentage
321
- });
322
- }
323
- function t(n) {
324
- return n.proportion * 100 > e.value.donutHideLabelUnderPercentage;
325
- }
326
- function u(n, i) {
327
- const S = be.value.dataset.find((E, N) => `donut_${N}` === n).VALUE;
328
- return Math.abs(String(Number(S.toFixed(0))).length - String(Number(i.toFixed(0))).length);
329
- }
330
- function r({ datapoint: n, seriesIndex: i }) {
331
- xe.value = { datapoint: n, seriesIndex: i, config: e.value, dataset: o }, W.value = n.id;
332
- const S = e.value.tooltipCustomFormat;
333
- if (Ne(S) && je(() => S({
334
- datapoint: n,
335
- seriesIndex: i,
336
- series: o,
337
- config: e.value
338
- })))
339
- ae.value = S({
340
- datapoint: n,
341
- seriesIndex: i,
342
- series: o,
343
- config: e.value
344
- });
345
- else {
346
- let k = "";
347
- k += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${n.name}</div>`, k += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${n.color}"/></svg>`, k += `<b>${X(
348
- e.value.formatter,
349
- n.value,
350
- D({
351
- p: e.value.valuePrefix,
352
- v: n.value,
353
- s: e.value.valueSuffix,
354
- r: e.value.dataLabelRoundingValue
355
- }),
356
- { datapoint: n, seriesIndex: i }
357
- )}</b>`, k += `<span>(${D({ v: n.proportion * 100, s: "%", r: e.value.dataLabelRoundingPercentage })})</span></div>`, ae.value = `<div>${k}</div>`;
358
- }
359
- te.value = !0;
360
- }
361
- function h() {
362
- te.value = !1, W.value = null, j.value = null;
363
- }
364
- const P = {
365
- centerX: b.value.width / 2,
366
- centerY: b.value.height / 2
367
- }, V = o.filter((n) => !w.value.includes(n.id)).map((n) => n.value || 0).reduce((n, i) => n + i, 0), de = o.map((n, i) => ({
368
- ...n,
369
- proportion: (n.value || 0) / V,
370
- value: n.value || 0,
371
- absoluteValue: be.value.dataset.find((S, k) => `donut_${k}` === n.id).VALUE
372
- })), le = b.value.width / 2, ce = b.value.height / 2, oe = b.value.height * e.value.donutRadiusRatio;
373
- return {
374
- dataset: de.filter((n) => !w.value.includes(n.id)),
375
- legend: de,
376
- drawingArea: P,
377
- displayArcPercentage: s,
378
- isArcBigEnough: t,
379
- useTooltip: r,
380
- killTooltip: h,
381
- getSpaces: u,
382
- total: V,
383
- cx: le,
384
- cy: ce,
385
- radius: oe,
386
- chart: qt(
387
- { series: o.filter((n) => !w.value.includes(n.id)) },
388
- le,
389
- ce,
390
- oe,
391
- oe,
392
- 1.99999,
393
- 2,
394
- 1,
395
- 360,
396
- 105.25,
397
- b.value.height * vt.value
398
- )
399
- };
400
- }), x = z({
401
- start: 0,
402
- end: p.value.maxSeriesLength
403
- });
404
- function Ct() {
405
- dt();
406
- }
407
- const ve = z(null);
408
- async function dt() {
409
- (e.value.zoomStartIndex !== null || e.value.zoomEndIndex !== null) && ve.value ? (e.value.zoomStartIndex !== null && (await Me(), await Me(), ve.value && ve.value.setStartValue(e.value.zoomStartIndex)), e.value.zoomEndIndex !== null && (await Me(), await Me(), ve.value && ve.value.setEndValue(It(e.value.zoomEndIndex + 1)))) : (x.value = {
410
- start: 0,
411
- end: p.value.maxSeriesLength
412
- }, Ce.value += 1);
413
- }
414
- function It(o) {
415
- const s = p.value.maxSeriesLength;
416
- return o > s ? s : o < 0 || e.value.zoomStartIndex !== null && o < e.value.zoomStartIndex ? e.value.zoomStartIndex !== null ? e.value.zoomStartIndex + 1 : 1 : o;
417
- }
418
- const Et = U(() => {
419
- if (!e.value.zoomMinimap.show || L.value === A.DONUT) return [];
420
- let o = [];
421
- Y(p.value.dataset) && (o = p.value.dataset), Ue(p.value.dataset) && (o = p.value.dataset.map((r, h) => ({
422
- values: r.VALUE || r.DATA || r.SERIE || r.SERIES || r.VALUES || r.NUM || 0,
423
- id: L.value === A.LINE ? `line_${h}` : `bar_${h}`
424
- })).filter((r) => !w.value.includes(r.id)));
425
- const s = Y(o) ? o.length : Math.max(...o.map((r) => r.values.length));
426
- let t = [];
427
- if (Y(o))
428
- t = o;
429
- else
430
- for (let r = 0; r < s; r += 1)
431
- t.push(o.map((h) => h.values[r] || 0).reduce((h, P) => (h || 0) + (P || 0), 0));
432
- const u = Math.min(...t);
433
- return t.map((r) => r + (u < 0 ? Math.abs(u) : 0));
434
- }), v = U(() => {
435
- if (L.value !== A.LINE) return null;
436
- const o = {
437
- height: b.value.height,
438
- width: b.value.width
439
- }, s = {
440
- left: e.value.xyPaddingLeft,
441
- top: e.value.xyPaddingTop,
442
- right: o.width - e.value.xyPaddingRight,
443
- bottom: o.height - e.value.xyPaddingBottom,
444
- width: o.width - e.value.xyPaddingLeft - e.value.xyPaddingRight,
445
- height: o.height - e.value.xyPaddingTop - e.value.xyPaddingBottom
446
- };
447
- let t = [];
448
- Y(p.value.dataset) && (t = [
449
- {
450
- values: p.value.dataset.slice(x.value.start, x.value.end),
451
- absoluteIndices: p.value.dataset.map((n, i) => i).slice(x.value.start, x.value.end),
452
- name: e.value.title,
453
- color: ke.value[e.value.paletteStartIndex] || q[e.value.paletteStartIndex],
454
- id: "line_0"
455
- }
456
- ]), Ue(p.value.dataset) && (t = p.value.dataset.map((n, i) => ({
457
- ...n,
458
- values: n.VALUE || n.DATA || n.SERIE || n.SERIES || n.VALUES || n.NUM || 0,
459
- name: n.NAME || n.DESCRIPTION || n.TITLE || n.LABEL || `Serie ${i}`,
460
- id: `line_${i}`
461
- })).map((n, i) => ({
462
- ...n,
463
- color: n.COLOR ? He(n.COLOR) : ke.value[i + e.value.paletteStartIndex] || q[i + e.value.paletteStartIndex] || q[(i + e.value.paletteStartIndex) % q.length],
464
- values: n.values.slice(x.value.start, x.value.end),
465
- absoluteIndices: n.values.map((S, k) => k).slice(x.value.start, x.value.end)
466
- })));
467
- const u = {
468
- max: Math.max(...t.filter((n) => !w.value.includes(n.id)).flatMap((n) => n.values)),
469
- min: Math.min(...t.filter((n) => !w.value.includes(n.id)).flatMap((n) => n.values)),
470
- maxSeries: Math.max(...t.map((n) => n.values.length))
471
- }, r = mt(u.min < 0 ? u.min : 0, u.max < 0 ? 0 : u.max, e.value.xyScaleSegments), h = u.min < 0 ? Math.abs(u.min) : 0, P = u.max < 0 ? s.top : s.bottom - h / (r.max + h) * s.height, V = s.width / u.maxSeries, de = r.ticks.map((n) => ({
472
- y: s.bottom - s.height * ((n + h) / (r.max + h)),
473
- x: s.left - 8,
474
- value: n
475
- })), le = t.map((n, i) => ({
476
- ...n,
477
- coordinates: n.values.map((S, k) => ({
478
- x: s.left + V * (k + 1) - V / 2,
479
- y: s.bottom - (S + h) / (r.max + h) * s.height,
480
- value: S
481
- }))
482
- })).map((n) => {
483
- let i = [];
484
- return n.coordinates.forEach((S) => {
485
- i.push(`${S.x},${S.y} `);
486
- }), {
487
- ...n,
488
- linePath: i.join(" ")
489
- };
490
- });
491
- function ce(n) {
492
- W.value = n, j.value = n;
493
- const i = t.map((k) => ({
494
- ...k,
495
- value: k.values[n],
496
- absoluteIndex: k.absoluteIndices[n]
497
- })).filter((k) => !w.value.includes(k.id));
498
- xe.value = { datapoint: i, seriesIndex: n, config: e.value, dataset: t };
499
- const S = e.value.tooltipCustomFormat;
500
- if (Ne(S) && je(() => S({
501
- datapoint: i,
502
- seriesIndex: n,
503
- series: t,
504
- config: e.value
505
- })))
506
- ae.value = S({
507
- datapoint: i,
508
- seriesIndex: n,
509
- series: t,
510
- config: e.value
511
- });
512
- else {
513
- let k = "";
514
- ee.value[i[0].absoluteIndex] && (k += `<div style="border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${ee.value[i[0].absoluteIndex].text}</div>`), i.forEach((E, N) => {
515
- k += `
516
- <div style="display:flex; flex-wrap: wrap; align-items:center; gap:3px;">
517
- <svg viewBox="0 0 12 12" height="14" width="12"><circle cx="6" cy="6" r="6" stroke="none" fill="${E.color}"/></svg>
518
- <span>${E.name}:</span>
519
- <b>${X(
520
- e.value.formatter,
521
- E.value,
522
- D({
523
- p: e.value.valuePrefix,
524
- v: E.value,
525
- s: e.value.valueSuffix,
526
- r: e.value.dataLabelRoundingValue
527
- }),
528
- { datapoint: E, seriesIndex: N }
529
- )}
530
- </b>
531
- </div>
532
- `;
533
- }), ae.value = k;
534
- }
535
- te.value = !0;
536
- }
537
- function oe() {
538
- W.value = null, j.value = null, te.value = !1;
539
- }
540
- return {
541
- absoluteZero: P,
542
- dataset: le.filter((n) => !w.value.includes(n.id)),
543
- legend: le,
544
- drawingArea: s,
545
- extremes: u,
546
- slotSize: V,
547
- yLabels: de,
548
- useTooltip: ce,
549
- killTooltip: oe
550
- };
551
- }), d = U(() => {
552
- if (L.value !== A.BAR) return null;
553
- const o = {
554
- height: b.value.height,
555
- width: b.value.width
556
- }, s = {
557
- left: e.value.xyPaddingLeft,
558
- top: e.value.xyPaddingTop,
559
- right: o.width - e.value.xyPaddingRight,
560
- bottom: o.height - e.value.xyPaddingBottom,
561
- width: o.width - e.value.xyPaddingLeft - e.value.xyPaddingRight,
562
- height: o.height - e.value.xyPaddingTop - e.value.xyPaddingBottom
563
- };
564
- let t = [];
565
- Y(p.value.dataset) && (t = [
566
- {
567
- values: p.value.dataset.slice(x.value.start, x.value.end),
568
- absoluteIndices: p.value.dataset.map((i, S) => S).slice(x.value.start, x.value.end),
569
- name: e.value.title,
570
- color: ke.value[e.value.paletteStartIndex] || q[e.value.paletteStartIndex],
571
- id: "bar_0"
572
- }
573
- ]), Ue(p.value.dataset) && (t = p.value.dataset.map((i, S) => ({
574
- ...i,
575
- values: i.VALUE || i.DATA || i.SERIE || i.SERIES || i.VALUES || i.NUM || 0,
576
- name: i.NAME || i.DESCRIPTION || i.TITLE || i.LABEL || `Serie ${S}`,
577
- id: `bar_${S}`
578
- })).map((i, S) => ({
579
- ...i,
580
- color: i.COLOR ? He(i.COLOR) : ke.value[S + e.value.paletteStartIndex] || q[S + e.value.paletteStartIndex] || q[(S + e.value.paletteStartIndex) % q.length],
581
- values: i.values.slice(x.value.start, x.value.end),
582
- absoluteIndices: i.values.map((k, E) => E).slice(x.value.start, x.value.end)
583
- })));
584
- const u = {
585
- max: Math.max(...t.filter((i) => !w.value.includes(i.id)).flatMap((i) => i.values)) < 0 ? 0 : Math.max(...t.filter((i) => !w.value.includes(i.id)).flatMap((i) => i.values)),
586
- min: Math.min(...t.filter((i) => !w.value.includes(i.id)).flatMap((i) => i.values)),
587
- maxSeries: Math.max(...t.filter((i) => !w.value.includes(i.id)).map((i) => i.values.length))
588
- }, r = mt(u.min < 0 ? u.min : 0, u.max, e.value.xyScaleSegments), h = r.min < 0 ? Math.abs(r.min) : 0, P = s.bottom - h / (r.max + h) * s.height, V = s.width / u.maxSeries, de = r.ticks.map((i) => ({
589
- y: s.bottom - s.height * ((i + h) / (r.max + h)),
590
- x: s.left - 8,
591
- value: i
592
- })), le = t.map((i, S) => ({
593
- ...i,
594
- coordinates: i.values.map((k, E) => {
595
- const N = (k + h) / (u.max + h) * s.height, Ae = Math.abs(k) / Math.abs(u.min) * (s.height - P), De = h / (u.max + h) * s.height, _e = V / t.filter((ne) => !w.value.includes(ne.id)).length - e.value.barGap / t.filter((ne) => !w.value.includes(ne.id)).length;
596
- return {
597
- x: s.left + V * E + _e * S + e.value.barGap / 2,
598
- y: k > 0 ? s.bottom - N : P,
599
- height: k > 0 ? N - De : Ae,
600
- value: k,
601
- width: _e
602
- };
603
- })
604
- })), ce = t.filter((i) => !w.value.includes(i.id)).map((i, S) => ({
605
- ...i,
606
- coordinates: i.values.map((k, E) => {
607
- const N = (k + h) / (u.max + h) * s.height, Ae = Math.abs(k) / (u.max + h) * s.height, De = h / (u.max + h) * s.height, _e = V / t.filter((ne) => !w.value.includes(ne.id)).length - e.value.barGap / t.filter((ne) => !w.value.includes(ne.id)).length;
608
- return {
609
- x: s.left + V * E + _e * S + e.value.barGap / 2,
610
- y: k > 0 ? s.bottom - N : P,
611
- height: k > 0 ? N - De : Ae,
612
- value: k,
613
- width: _e
614
- };
615
- })
616
- }));
617
- function oe(i) {
618
- W.value = i, j.value = i;
619
- const S = t.map((E) => ({
620
- ...E,
621
- value: E.values[i],
622
- absoluteIndex: E.absoluteIndices[i]
623
- })).filter((E) => !w.value.includes(E.id));
624
- xe.value = { datapoint: S, seriesIndex: i, config: e.value, dataset: t };
625
- const k = e.value.tooltipCustomFormat;
626
- if (Ne(k) && je(() => k({
627
- datapoint: S,
628
- seriesIndex: i,
629
- series: t,
630
- config: e.value
631
- })))
632
- ae.value = k({
633
- point: S,
634
- seriesIndex: i,
635
- series: t,
636
- config: e.value
637
- });
638
- else {
639
- let E = "";
640
- ee.value[S[0].absoluteIndex] && (E += `<div style="border-bottom:1px solid ${e.value.tooltipBorderColor};padding-bottom:6px;margin-bottom:3px;">${ee.value[S[0].absoluteIndex].text}</div>`), S.forEach((N, Ae) => {
641
- E += `
642
- <div style="display:flex; flex-wrap: wrap; align-items:center; gap:3px;">
643
- <svg viewBox="0 0 12 12" height="14" width="12"><rect x=0 y="0" width="12" height="12" rx="1" stroke="none" fill="${N.color}"/></svg>
644
- <span>${N.name}:</span>
645
- <b>${X(
646
- e.value.formatter,
647
- N.value,
648
- D({
649
- p: e.value.valuePrefix,
650
- v: N.value,
651
- s: e.value.valueSuffix,
652
- r: e.value.dataLabelRoundingValue
653
- }),
654
- { datapoint: N, seriesIndex: Ae }
655
- )}
656
- </b>
657
- </div>
658
- `;
659
- }), ae.value = E;
660
- }
661
- te.value = !0;
662
- }
663
- function n() {
664
- te.value = !1, W.value = null, j.value = null;
665
- }
666
- return {
667
- absoluteZero: P,
668
- dataset: ce.filter((i) => !w.value.includes(i.id)),
669
- legend: le,
670
- drawingArea: s,
671
- extremes: u,
672
- slotSize: V,
673
- yLabels: de,
674
- useTooltip: oe,
675
- killTooltip: n
676
- };
677
- }), ee = U(() => Qt({
678
- values: e.value.xyPeriods,
679
- maxDatapoints: p.value.maxSeriesLength,
680
- formatter: e.value.datetimeFormatter,
681
- start: x.value.start,
682
- end: x.value.end
683
- })), Pe = z(!1);
684
- function ct(o) {
685
- Pe.value = o, Qe.value += 1;
686
- }
687
- function ht() {
688
- Se.value.showTooltip = !Se.value.showTooltip;
689
- }
690
- const Re = z(!1);
691
- function Be() {
692
- Re.value = !Re.value;
693
- }
694
- async function Ot({ scale: o = 2 } = {}) {
695
- if (!J.value) return;
696
- const { width: s, height: t } = J.value.getBoundingClientRect(), u = s / t, { imageUri: r, base64: h } = await Kt({ domElement: J.value, base64: !0, img: !0, scale: o });
697
- return {
698
- imageUri: r,
699
- base64: h,
700
- title: e.value.title,
701
- width: s,
702
- height: t,
703
- aspectRatio: u
704
- };
705
- }
706
- return C({
707
- getImage: Ot,
708
- generatePdf: lt,
709
- generateImage: ot,
710
- toggleTooltip: ht,
711
- toggleAnnotator: Be,
712
- toggleFullscreen: ct
713
- }), (o, s) => At.value ? (a(), l("div", {
714
- key: 0,
715
- id: `${L.value}_${Q.value}`,
716
- ref_key: "quickChart",
717
- ref: J,
718
- class: fe({ "vue-ui-quick-chart": !0, "vue-data-ui-wrapper-fullscreen": Pe.value }),
719
- style: R(`background:${e.value.backgroundColor};color:${e.value.color};font-family:${e.value.fontFamily}; position: relative; ${e.value.responsive ? "height: 100%" : ""}`),
720
- onMouseenter: s[5] || (s[5] = () => tt(!0)),
721
- onMouseleave: s[6] || (s[6] = () => tt(!1))
722
- }, [
723
- e.value.userOptionsButtons.annotator ? (a(), Fe(f(me), {
724
- key: 0,
725
- svgRef: f(Ke),
726
- backgroundColor: e.value.backgroundColor,
727
- color: e.value.color,
728
- active: Re.value,
729
- onClose: Be
730
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : g("", !0),
731
- _t.value ? (a(), l("div", {
732
- key: 1,
733
- ref_key: "noTitle",
734
- ref: Je,
735
- class: "vue-data-ui-no-title-space",
736
- style: "height:36px; width: 100%;background:transparent"
737
- }, null, 512)) : g("", !0),
738
- e.value.showUserOptions && (et.value || Ie.value) ? (a(), Fe(f($e), {
739
- ref: "details",
740
- key: `user_option_${Qe.value}`,
741
- backgroundColor: e.value.backgroundColor,
742
- color: e.value.color,
743
- isPrinting: f(Ee),
744
- isImaging: f(Oe),
745
- uid: Q.value,
746
- hasTooltip: e.value.userOptionsButtons.tooltip && e.value.showTooltip,
747
- hasPdf: e.value.userOptionsButtons.pdf,
748
- hasImg: e.value.userOptionsButtons.img,
749
- hasFullscreen: e.value.userOptionsButtons.fullscreen,
750
- hasXls: !1,
751
- isTooltip: Se.value.showTooltip,
752
- isFullscreen: Pe.value,
753
- titles: { ...e.value.userOptionsButtonTitles },
754
- chartElement: J.value,
755
- position: e.value.userOptionsPosition,
756
- hasAnnotator: e.value.userOptionsButtons.annotator,
757
- isAnnotation: Re.value,
758
- callbacks: e.value.userOptionsCallbacks,
759
- printScale: e.value.userOptionsPrint.scale,
760
- onToggleFullscreen: ct,
761
- onGeneratePdf: f(lt),
762
- onGenerateImage: f(ot),
763
- onToggleTooltip: ht,
764
- onToggleAnnotator: Be,
765
- style: R({
766
- visibility: et.value ? Ie.value ? "visible" : "hidden" : "visible"
767
- })
768
- }, Rt({ _: 2 }, [
769
- o.$slots.menuIcon ? {
770
- name: "menuIcon",
771
- fn: G(({ isOpen: t, color: u }) => [
772
- M(o.$slots, "menuIcon", ie(ue({ isOpen: t, color: u })), void 0, !0)
773
- ]),
774
- key: "0"
775
- } : void 0,
776
- o.$slots.optionTooltip ? {
777
- name: "optionTooltip",
778
- fn: G(() => [
779
- M(o.$slots, "optionTooltip", {}, void 0, !0)
780
- ]),
781
- key: "1"
782
- } : void 0,
783
- o.$slots.optionPdf ? {
784
- name: "optionPdf",
785
- fn: G(() => [
786
- M(o.$slots, "optionPdf", {}, void 0, !0)
787
- ]),
788
- key: "2"
789
- } : void 0,
790
- o.$slots.optionImg ? {
791
- name: "optionImg",
792
- fn: G(() => [
793
- M(o.$slots, "optionImg", {}, void 0, !0)
794
- ]),
795
- key: "3"
796
- } : void 0,
797
- o.$slots.optionFullscreen ? {
798
- name: "optionFullscreen",
799
- fn: G(({ toggleFullscreen: t, isFullscreen: u }) => [
800
- M(o.$slots, "optionFullscreen", ie(ue({ toggleFullscreen: t, isFullscreen: u })), void 0, !0)
801
- ]),
802
- key: "4"
803
- } : void 0,
804
- o.$slots.optionAnnotator ? {
805
- name: "optionAnnotator",
806
- fn: G(({ toggleAnnotator: t, isAnnotator: u }) => [
807
- M(o.$slots, "optionAnnotator", ie(ue({ toggleAnnotator: t, isAnnotator: u })), void 0, !0)
808
- ]),
809
- key: "5"
810
- } : void 0
811
- ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasImg", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : g("", !0),
812
- e.value.title ? (a(), l("div", {
813
- key: 3,
814
- ref_key: "quickChartTitle",
815
- ref: Ge,
816
- class: "vue-ui-quick-chart-title",
817
- style: R(`background:transparent;color:${e.value.color};font-size:${e.value.titleFontSize}px;font-weight:${e.value.titleBold ? "bold" : "normal"};text-align:${e.value.titleTextAlign}`)
818
- }, O(e.value.title), 5)) : g("", !0),
819
- L.value ? (a(), l("svg", {
820
- key: 4,
821
- ref_key: "svgRef",
822
- ref: Ke,
823
- xmlns: f(Ht),
824
- viewBox: Lt.value,
825
- style: R(`max-width:100%;overflow:visible;background:transparent;color:${e.value.color}`)
826
- }, [
827
- ge(f(H)),
828
- o.$slots["chart-background"] && L.value === A.BAR ? (a(), l("foreignObject", {
829
- key: 0,
830
- x: d.value.drawingArea.left,
831
- y: d.value.drawingArea.top,
832
- width: d.value.drawingArea.width,
833
- height: d.value.drawingArea.height,
834
- style: {
835
- pointerEvents: "none"
836
- }
837
- }, [
838
- M(o.$slots, "chart-background", {}, void 0, !0)
839
- ], 8, sa)) : g("", !0),
840
- o.$slots["chart-background"] && L.value === A.LINE ? (a(), l("foreignObject", {
841
- key: 1,
842
- x: v.value.drawingArea.left,
843
- y: v.value.drawingArea.top,
844
- width: v.value.drawingArea.width,
845
- height: v.value.drawingArea.height,
846
- style: {
847
- pointerEvents: "none"
848
- }
849
- }, [
850
- M(o.$slots, "chart-background", {}, void 0, !0)
851
- ], 8, va)) : g("", !0),
852
- o.$slots["chart-background"] && L.value === A.DONUT ? (a(), l("foreignObject", {
853
- key: 2,
854
- x: 0,
855
- y: 0,
856
- width: b.value.width,
857
- height: b.value.height,
858
- style: {
859
- pointerEvents: "none"
860
- }
861
- }, [
862
- M(o.$slots, "chart-background", {}, void 0, !0)
863
- ], 8, da)) : g("", !0),
864
- _("defs", null, [
865
- _("filter", {
866
- id: `blur_${Q.value}`,
867
- x: "-50%",
868
- y: "-50%",
869
- width: "200%",
870
- height: "200%"
871
- }, [
872
- _("feGaussianBlur", {
873
- in: "SourceGraphic",
874
- stdDeviation: 2,
875
- id: `blur_std_${Q.value}`
876
- }, null, 8, ha),
877
- s[7] || (s[7] = _("feColorMatrix", {
878
- type: "saturate",
879
- values: "0"
880
- }, null, -1))
881
- ], 8, ca),
882
- _("filter", {
883
- id: `shadow_${Q.value}`,
884
- "color-interpolation-filters": "sRGB"
885
- }, [
886
- _("feDropShadow", {
887
- dx: "0",
888
- dy: "0",
889
- stdDeviation: "10",
890
- "flood-opacity": "0.5",
891
- "flood-color": e.value.donutShadowColor
892
- }, null, 8, ga)
893
- ], 8, fa)
894
- ]),
895
- L.value === A.DONUT ? (a(), l(m, { key: 3 }, [
896
- e.value.showDataLabels ? (a(), l("g", ma, [
897
- (a(!0), l(m, null, $(I.value.chart, (t, u) => (a(), l(m, null, [
898
- I.value.isArcBigEnough(t) ? (a(), l("path", {
899
- key: 0,
900
- d: f(Wt)(t, { x: b.value.width / 2, y: b.value.height / 2 }, 16, 16, !1, !1, b.value.height * vt.value),
901
- stroke: t.color,
902
- "stroke-width": e.value.donutLabelMarkerStrokeWidth,
903
- "stroke-linecap": "round",
904
- "stroke-linejoin": "round",
905
- fill: "none",
906
- filter: we(t.id)
907
- }, null, 8, pa)) : g("", !0)
908
- ], 64))), 256))
909
- ])) : g("", !0),
910
- _("circle", {
911
- cx: I.value.cx,
912
- cy: I.value.cy,
913
- r: I.value.radius,
914
- fill: e.value.backgroundColor,
915
- filter: e.value.donutUseShadow ? `url(#shadow_${Q.value})` : ""
916
- }, null, 8, ya),
917
- _("g", xa, [
918
- (a(!0), l(m, null, $(I.value.chart, (t, u) => (a(), l("path", {
919
- d: t.arcSlice,
920
- fill: t.color,
921
- stroke: e.value.backgroundColor,
922
- "stroke-width": e.value.donutStrokeWidth,
923
- filter: we(t.id)
924
- }, null, 8, ka))), 256)),
925
- (a(!0), l(m, null, $(I.value.chart, (t, u) => (a(), l("path", {
926
- d: t.arcSlice,
927
- fill: "transparent",
928
- onMouseenter: (r) => I.value.useTooltip({ datapoint: t, seriesIndex: u }),
929
- onMouseout: s[0] || (s[0] = (r) => I.value.killTooltip()),
930
- onClick: (r) => re("selectDatapoint", t)
931
- }, null, 40, ba))), 256))
932
- ]),
933
- e.value.showDataLabels ? (a(), l("g", Sa, [
934
- (a(!0), l(m, null, $(I.value.chart, (t, u) => (a(), l(m, null, [
935
- I.value.isArcBigEnough(t) ? (a(), l("circle", {
936
- key: 0,
937
- cx: f(Le)(t).x,
938
- cy: f(We)(t) - 3.7,
939
- fill: t.color,
940
- stroke: e.value.backgroundColor,
941
- "stroke-width": 1,
942
- r: 3,
943
- filter: we(t.id)
944
- }, null, 8, wa)) : g("", !0),
945
- I.value.isArcBigEnough(t) ? (a(), l("text", {
946
- key: 1,
947
- "text-anchor": f(Le)(t, !0, 20).anchor,
948
- x: f(Le)(t, !0).x,
949
- y: f(We)(t),
950
- fill: e.value.color,
951
- "font-size": e.value.dataLabelFontSize,
952
- filter: we(t.id)
953
- }, O(I.value.displayArcPercentage(t, I.value.chart)) + " (" + O(f(X)(
954
- e.value.formatter,
955
- t.value,
956
- f(D)({
957
- p: e.value.valuePrefix,
958
- v: t.value,
959
- s: e.value.valueSuffix,
960
- r: e.value.dataLabelRoundingValue
961
- }),
962
- { datapoint: t, seriesIndex: u }
963
- )) + ") ", 9, Aa)) : g("", !0),
964
- I.value.isArcBigEnough(t, !0, 20) ? (a(), l("text", {
965
- key: 2,
966
- "text-anchor": f(Le)(t).anchor,
967
- x: f(Le)(t, !0).x,
968
- y: f(We)(t) + e.value.dataLabelFontSize,
969
- fill: e.value.color,
970
- "font-size": e.value.dataLabelFontSize,
971
- filter: we(t.id)
972
- }, O(t.name), 9, _a)) : g("", !0)
973
- ], 64))), 256))
974
- ])) : g("", !0),
975
- e.value.donutShowTotal ? (a(), l("g", La, [
976
- _("text", {
977
- "text-anchor": "middle",
978
- x: I.value.drawingArea.centerX,
979
- y: I.value.drawingArea.centerY - e.value.donutTotalLabelFontSize / 2,
980
- "font-size": e.value.donutTotalLabelFontSize,
981
- fill: e.value.color
982
- }, O(e.value.donutTotalLabelText), 9, za),
983
- _("text", {
984
- "text-anchor": "middle",
985
- x: I.value.drawingArea.centerX,
986
- y: I.value.drawingArea.centerY + e.value.donutTotalLabelFontSize,
987
- "font-size": e.value.donutTotalLabelFontSize,
988
- fill: e.value.color
989
- }, O(f(D)({
990
- p: e.value.valuePrefix,
991
- v: I.value.total,
992
- s: e.value.valueSuffix,
993
- r: e.value.dataLabelRoundingValue
994
- })), 9, $a)
995
- ])) : g("", !0)
996
- ], 64)) : g("", !0),
997
- L.value === A.LINE ? (a(), l(m, { key: 4 }, [
998
- e.value.xyShowGrid ? (a(), l("g", Ca, [
999
- (a(!0), l(m, null, $(v.value.yLabels, (t) => (a(), l(m, null, [
1000
- t.y <= v.value.drawingArea.bottom ? (a(), l("line", {
1001
- key: 0,
1002
- x1: v.value.drawingArea.left,
1003
- x2: v.value.drawingArea.right,
1004
- y1: t.y,
1005
- y2: t.y,
1006
- stroke: e.value.xyGridStroke,
1007
- "stroke-width": e.value.xyGridStrokeWidth,
1008
- "stroke-linecap": "round"
1009
- }, null, 8, Ia)) : g("", !0)
1010
- ], 64))), 256)),
1011
- (a(!0), l(m, null, $(v.value.extremes.maxSeries + 1, (t, u) => (a(), l("line", {
1012
- x1: v.value.drawingArea.left + v.value.slotSize * u,
1013
- x2: v.value.drawingArea.left + v.value.slotSize * u,
1014
- y1: v.value.drawingArea.top,
1015
- y2: v.value.drawingArea.bottom,
1016
- stroke: e.value.xyGridStroke,
1017
- "stroke-width": e.value.xyGridStrokeWidth,
1018
- "stroke-linecap": "round"
1019
- }, null, 8, Ea))), 256))
1020
- ])) : g("", !0),
1021
- e.value.xyShowAxis ? (a(), l("g", Oa, [
1022
- _("line", {
1023
- x1: v.value.drawingArea.left,
1024
- x2: v.value.drawingArea.left,
1025
- y1: v.value.drawingArea.top,
1026
- y2: v.value.drawingArea.bottom,
1027
- stroke: e.value.xyAxisStroke,
1028
- "stroke-width": e.value.xyAxisStrokeWidth,
1029
- "stroke-linecap": "round"
1030
- }, null, 8, Ta),
1031
- _("line", {
1032
- x1: v.value.drawingArea.left,
1033
- x2: v.value.drawingArea.right,
1034
- y1: isNaN(v.value.absoluteZero) ? v.value.drawingArea.bottom : v.value.absoluteZero,
1035
- y2: isNaN(v.value.absoluteZero) ? v.value.drawingArea.bottom : v.value.absoluteZero,
1036
- stroke: e.value.xyAxisStroke,
1037
- "stroke-width": e.value.xyAxisStrokeWidth,
1038
- "stroke-linecap": "round"
1039
- }, null, 8, Pa)
1040
- ])) : g("", !0),
1041
- e.value.xyShowScale ? (a(), l("g", Ra, [
1042
- (a(!0), l(m, null, $(v.value.yLabels, (t, u) => (a(), l(m, null, [
1043
- t.y <= v.value.drawingArea.bottom ? (a(), l("line", {
1044
- key: 0,
1045
- x1: t.x + 4,
1046
- x2: v.value.drawingArea.left,
1047
- y1: t.y,
1048
- y2: t.y,
1049
- stroke: e.value.xyAxisStroke,
1050
- "stroke-width": e.value.xyAxisStrokeWidth,
1051
- "stroke-linecap": "round"
1052
- }, null, 8, Ma)) : g("", !0),
1053
- t.y <= v.value.drawingArea.bottom ? (a(), l("text", {
1054
- key: 1,
1055
- x: t.x,
1056
- y: t.y + e.value.xyLabelsYFontSize / 3,
1057
- "text-anchor": "end",
1058
- "font-size": e.value.xyLabelsYFontSize,
1059
- fill: e.value.color
1060
- }, O(f(X)(
1061
- e.value.formatter,
1062
- t.value,
1063
- f(D)({
1064
- p: e.value.valuePrefix,
1065
- v: t.value,
1066
- s: e.value.valueSuffix,
1067
- r: e.value.dataLabelRoundingValue
1068
- }),
1069
- { datapoint: t, seriesIndex: u }
1070
- )), 9, Fa)) : g("", !0)
1071
- ], 64))), 256))
1072
- ])) : g("", !0),
1073
- e.value.xyShowScale && e.value.xyPeriods.length ? (a(), l("g", Na, [
1074
- (a(!0), l(m, null, $(ee.value.map((t) => t.text), (t, u) => (a(), l(m, null, [
1075
- !e.value.xyPeriodsShowOnlyAtModulo || e.value.xyPeriodsShowOnlyAtModulo && u % Math.floor((x.value.end - x.value.start) / e.value.xyPeriodsModulo) === 0 || x.value.end - x.value.start <= e.value.xyPeriodsModulo ? (a(), l("line", {
1076
- key: 0,
1077
- x1: v.value.drawingArea.left + v.value.slotSize * (u + 1) - v.value.slotSize / 2,
1078
- x2: v.value.drawingArea.left + v.value.slotSize * (u + 1) - v.value.slotSize / 2,
1079
- y1: v.value.drawingArea.bottom,
1080
- y2: v.value.drawingArea.bottom + 4,
1081
- stroke: e.value.xyAxisStroke,
1082
- "stroke-width": e.value.xyAxisStrokeWidth,
1083
- "stroke-linecap": "round"
1084
- }, null, 8, Ua)) : g("", !0),
1085
- !e.value.xyPeriodsShowOnlyAtModulo || e.value.xyPeriodsShowOnlyAtModulo && u % Math.floor((x.value.end - x.value.start) / e.value.xyPeriodsModulo) === 0 || x.value.end - x.value.start <= e.value.xyPeriodsModulo ? (a(), l("g", Ba, [
1086
- String(t).includes(`
1087
- `) ? (a(), l("text", {
1088
- key: 1,
1089
- "font-size": e.value.xyLabelsXFontSize,
1090
- "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1091
- fill: e.value.color,
1092
- transform: `translate(${v.value.drawingArea.left + v.value.slotSize * (u + 1) - v.value.slotSize / 2}, ${v.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`,
1093
- innerHTML: f(jt)({
1094
- content: String(t),
1095
- fontSize: e.value.xyLabelsXFontSize,
1096
- fill: e.value.color,
1097
- x: 0,
1098
- y: 0
1099
- })
1100
- }, null, 8, Va)) : (a(), l("text", {
1101
- key: 0,
1102
- "font-size": e.value.xyLabelsXFontSize,
1103
- "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1104
- fill: e.value.color,
1105
- transform: `translate(${v.value.drawingArea.left + v.value.slotSize * (u + 1) - v.value.slotSize / 2}, ${v.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}), rotate(${e.value.xyPeriodLabelsRotation})`
1106
- }, O(t), 9, Da))
1107
- ])) : g("", !0)
1108
- ], 64))), 256))
1109
- ])) : g("", !0),
1110
- _("g", qa, [
1111
- (a(!0), l(m, null, $(v.value.dataset, (t, u) => (a(), l("g", Ha, [
1112
- e.value.lineSmooth ? (a(), l(m, { key: 0 }, [
1113
- _("path", {
1114
- d: `M ${f(pt)(t.coordinates)}`,
1115
- stroke: e.value.backgroundColor,
1116
- "stroke-width": e.value.lineStrokeWidth + 1,
1117
- "stroke-linecap": "round",
1118
- fill: "none",
1119
- class: fe({ "quick-animation": !0, "vue-data-ui-line-animated": e.value.lineAnimated }),
1120
- style: { transition: "all 0.3s ease-in-out" }
1121
- }, null, 10, Wa),
1122
- _("path", {
1123
- d: `M ${f(pt)(t.coordinates)}`,
1124
- stroke: t.color,
1125
- "stroke-width": e.value.lineStrokeWidth,
1126
- "stroke-linecap": "round",
1127
- fill: "none",
1128
- class: fe({ "quick-animation": !0, "vue-data-ui-line-animated": e.value.lineAnimated }),
1129
- style: { transition: "all 0.3s ease-in-out" }
1130
- }, null, 10, ja)
1131
- ], 64)) : (a(), l(m, { key: 1 }, [
1132
- _("path", {
1133
- d: `M ${t.linePath}`,
1134
- stroke: e.value.backgroundColor,
1135
- "stroke-width": e.value.lineStrokeWidth + 1,
1136
- "stroke-linecap": "round",
1137
- fill: "none",
1138
- class: fe({ "quick-animation": !0, "vue-data-ui-line-animated": e.value.lineAnimated }),
1139
- style: { transition: "all 0.3s ease-in-out" }
1140
- }, null, 10, Ga),
1141
- _("path", {
1142
- d: `M ${t.linePath}`,
1143
- stroke: t.color,
1144
- "stroke-width": e.value.lineStrokeWidth,
1145
- "stroke-linecap": "round",
1146
- fill: "none",
1147
- class: fe({ "quick-animation": !0, "vue-data-ui-line-animated": e.value.lineAnimated }),
1148
- style: { transition: "all 0.3s ease-in-out" }
1149
- }, null, 10, Xa)
1150
- ], 64)),
1151
- (a(!0), l(m, null, $(t.coordinates, (r, h) => (a(), l("circle", {
1152
- cx: r.x,
1153
- cy: f(Z)(r.y),
1154
- r: 3,
1155
- fill: t.color,
1156
- stroke: e.value.backgroundColor,
1157
- "stroke-width": "0.5",
1158
- class: "quick-animation",
1159
- style: { transition: "all 0.3s ease-in-out" }
1160
- }, null, 8, Za))), 256))
1161
- ]))), 256))
1162
- ]),
1163
- e.value.showDataLabels ? (a(), l("g", Ya, [
1164
- (a(!0), l(m, null, $(v.value.dataset, (t, u) => (a(), l(m, null, [
1165
- (a(!0), l(m, null, $(t.coordinates, (r, h) => (a(), l("text", {
1166
- "text-anchor": "middle",
1167
- "font-size": e.value.dataLabelFontSize,
1168
- fill: t.color,
1169
- x: r.x,
1170
- y: f(Z)(r.y) - e.value.dataLabelFontSize / 2,
1171
- class: "quick-animation",
1172
- style: { transition: "all 0.3s ease-in-out" }
1173
- }, O(f(X)(
1174
- e.value.formatter,
1175
- f(Z)(r.value),
1176
- f(D)({
1177
- p: e.value.valuePrefix,
1178
- v: f(Z)(r.value),
1179
- s: e.value.valueSuffix,
1180
- r: e.value.dataLabelRoundingValue
1181
- }),
1182
- { datapoint: r, seriesIndex: h }
1183
- )), 9, Ja))), 256))
1184
- ], 64))), 256))
1185
- ])) : g("", !0),
1186
- _("g", Qa, [
1187
- (a(!0), l(m, null, $(v.value.extremes.maxSeries, (t, u) => (a(), l("rect", {
1188
- x: v.value.drawingArea.left + u * v.value.slotSize,
1189
- y: v.value.drawingArea.top,
1190
- height: v.value.drawingArea.height <= 0 ? 1e-5 : v.value.drawingArea.height,
1191
- width: v.value.slotSize <= 0 ? 1e-5 : v.value.slotSize,
1192
- fill: [W.value, j.value].includes(u) ? e.value.xyHighlighterColor : "transparent",
1193
- style: R(`opacity:${e.value.xyHighlighterOpacity}`),
1194
- onMouseenter: (r) => v.value.useTooltip(u),
1195
- onMouseleave: s[1] || (s[1] = (r) => v.value.killTooltip()),
1196
- onClick: (r) => re("selectDatapoint", v.value.dataset.map((h) => ({
1197
- ...h,
1198
- value: h.values[u]
1199
- })))
1200
- }, null, 44, Ka))), 256))
1201
- ])
1202
- ], 64)) : g("", !0),
1203
- L.value === A.BAR ? (a(), l(m, { key: 5 }, [
1204
- e.value.xyShowGrid ? (a(), l("g", el, [
1205
- (a(!0), l(m, null, $(d.value.yLabels, (t) => (a(), l(m, null, [
1206
- t.y <= d.value.drawingArea.bottom ? (a(), l("line", {
1207
- key: 0,
1208
- x1: d.value.drawingArea.left,
1209
- x2: d.value.drawingArea.right,
1210
- y1: t.y,
1211
- y2: t.y,
1212
- stroke: e.value.xyGridStroke,
1213
- "stroke-width": e.value.xyGridStrokeWidth,
1214
- "stroke-linecap": "round"
1215
- }, null, 8, tl)) : g("", !0)
1216
- ], 64))), 256)),
1217
- (a(!0), l(m, null, $(d.value.extremes.maxSeries + 1, (t, u) => (a(), l("line", {
1218
- x1: d.value.drawingArea.left + d.value.slotSize * u,
1219
- x2: d.value.drawingArea.left + d.value.slotSize * u,
1220
- y1: d.value.drawingArea.top,
1221
- y2: d.value.drawingArea.bottom,
1222
- stroke: e.value.xyGridStroke,
1223
- "stroke-width": e.value.xyGridStrokeWidth,
1224
- "stroke-linecap": "round"
1225
- }, null, 8, al))), 256))
1226
- ])) : g("", !0),
1227
- e.value.xyShowAxis ? (a(), l("g", ll, [
1228
- _("line", {
1229
- x1: d.value.drawingArea.left,
1230
- x2: d.value.drawingArea.left,
1231
- y1: d.value.drawingArea.top,
1232
- y2: d.value.drawingArea.bottom,
1233
- stroke: e.value.xyAxisStroke,
1234
- "stroke-width": e.value.xyAxisStrokeWidth,
1235
- "stroke-linecap": "round"
1236
- }, null, 8, ol),
1237
- _("line", {
1238
- x1: d.value.drawingArea.left,
1239
- x2: d.value.drawingArea.right,
1240
- y1: isNaN(d.value.absoluteZero) ? d.value.drawingArea.bottom : d.value.absoluteZero,
1241
- y2: isNaN(d.value.absoluteZero) ? d.value.drawingArea.bottom : d.value.absoluteZero,
1242
- stroke: e.value.xyAxisStroke,
1243
- "stroke-width": e.value.xyAxisStrokeWidth,
1244
- "stroke-linecap": "round"
1245
- }, null, 8, nl)
1246
- ])) : g("", !0),
1247
- e.value.xyShowScale ? (a(), l("g", il, [
1248
- (a(!0), l(m, null, $(d.value.yLabels, (t, u) => (a(), l(m, null, [
1249
- t.y <= d.value.drawingArea.bottom ? (a(), l("line", {
1250
- key: 0,
1251
- x1: t.x + 4,
1252
- x2: d.value.drawingArea.left,
1253
- y1: t.y,
1254
- y2: t.y,
1255
- stroke: e.value.xyAxisStroke,
1256
- "stroke-width": e.value.xyAxisStrokeWidth,
1257
- "stroke-linecap": "round"
1258
- }, null, 8, ul)) : g("", !0),
1259
- t.y <= d.value.drawingArea.bottom ? (a(), l("text", {
1260
- key: 1,
1261
- x: t.x,
1262
- y: t.y + e.value.xyLabelsYFontSize / 3,
1263
- "text-anchor": "end",
1264
- "font-size": e.value.xyLabelsYFontSize,
1265
- fill: e.value.color
1266
- }, O(f(X)(
1267
- e.value.formatter,
1268
- t.value,
1269
- f(D)({
1270
- p: e.value.valuePrefix,
1271
- v: t.value,
1272
- s: e.value.valueSuffix,
1273
- r: e.value.dataLabelRoundingValue
1274
- }),
1275
- { datapoint: t, seriesIndex: u }
1276
- )), 9, rl)) : g("", !0)
1277
- ], 64))), 256))
1278
- ])) : g("", !0),
1279
- e.value.xyShowScale && e.value.xyPeriods.length ? (a(), l("g", sl, [
1280
- (a(!0), l(m, null, $(e.value.xyPeriods.slice(x.value.start, x.value.end), (t, u) => (a(), l("line", {
1281
- x1: d.value.drawingArea.left + d.value.slotSize * (u + 1) - d.value.slotSize / 2,
1282
- x2: d.value.drawingArea.left + d.value.slotSize * (u + 1) - d.value.slotSize / 2,
1283
- y1: d.value.drawingArea.bottom,
1284
- y2: d.value.drawingArea.bottom + 4,
1285
- stroke: e.value.xyAxisStroke,
1286
- "stroke-width": e.value.xyAxisStrokeWidth,
1287
- "stroke-linecap": "round"
1288
- }, null, 8, vl))), 256)),
1289
- (a(!0), l(m, null, $(ee.value.map((t) => t.text), (t, u) => (a(), l("text", {
1290
- "font-size": e.value.xyLabelsXFontSize,
1291
- "text-anchor": e.value.xyPeriodLabelsRotation > 0 ? "start" : e.value.xyPeriodLabelsRotation < 0 ? "end" : "middle",
1292
- transform: `translate(${d.value.drawingArea.left + d.value.slotSize * (u + 1) - d.value.slotSize / 2}, ${d.value.drawingArea.bottom + e.value.xyLabelsXFontSize + 6}) rotate(${e.value.xyPeriodLabelsRotation})`,
1293
- fill: e.value.color
1294
- }, O(t), 9, dl))), 256))
1295
- ])) : g("", !0),
1296
- _("g", cl, [
1297
- (a(!0), l(m, null, $(d.value.dataset, (t, u) => (a(), l(m, null, [
1298
- (a(!0), l(m, null, $(t.coordinates, (r, h) => (a(), l("rect", {
1299
- x: r.x,
1300
- width: r.width <= 0 ? 1e-5 : r.width,
1301
- height: f(Z)(r.height <= 0 ? 1e-5 : r.height),
1302
- y: f(Z)(r.y),
1303
- fill: t.color,
1304
- stroke: e.value.backgroundColor,
1305
- "stroke-width": e.value.barStrokeWidth,
1306
- "stroke-linecap": "round",
1307
- class: fe({ "vue-data-ui-bar-animated": e.value.barAnimated && r.value < 0 })
1308
- }, [
1309
- e.value.barAnimated && r.value > 0 && !f(Ee) && !f(Oe) ? (a(), l("animate", {
1310
- key: 0,
1311
- attributeName: "height",
1312
- from: 0,
1313
- to: r.height,
1314
- dur: "0.5s"
1315
- }, null, 8, fl)) : g("", !0),
1316
- e.value.barAnimated && r.value > 0 && !f(Ee) && !f(Oe) ? (a(), l("animate", {
1317
- key: 1,
1318
- attributeName: "y",
1319
- from: d.value.absoluteZero,
1320
- to: d.value.absoluteZero - r.height,
1321
- dur: "0.5s"
1322
- }, null, 8, gl)) : g("", !0)
1323
- ], 10, hl))), 256))
1324
- ], 64))), 256))
1325
- ]),
1326
- e.value.showDataLabels ? (a(), l("g", ml, [
1327
- (a(!0), l(m, null, $(d.value.dataset, (t, u) => (a(), l(m, null, [
1328
- (a(!0), l(m, null, $(t.coordinates, (r, h) => (a(), l("text", {
1329
- x: r.x + r.width / 2,
1330
- y: f(Z)(r.y) - e.value.dataLabelFontSize / 2,
1331
- "text-anchor": "middle",
1332
- "font-size": e.value.dataLabelFontSize,
1333
- fill: t.color,
1334
- class: "quick-animation"
1335
- }, O(f(X)(
1336
- e.value.formatter,
1337
- f(Z)(r.value),
1338
- f(D)({
1339
- p: e.value.valuePrefix,
1340
- v: f(Z)(r.value),
1341
- s: e.value.valueSuffix,
1342
- r: e.value.dataLabelRoundingValue
1343
- }),
1344
- { datapoint: r, seriesIndex: h }
1345
- )), 9, pl))), 256))
1346
- ], 64))), 256))
1347
- ])) : g("", !0),
1348
- _("g", yl, [
1349
- (a(!0), l(m, null, $(d.value.extremes.maxSeries, (t, u) => (a(), l("rect", {
1350
- x: d.value.drawingArea.left + u * d.value.slotSize,
1351
- y: d.value.drawingArea.top,
1352
- height: d.value.drawingArea.height <= 0 ? 1e-5 : d.value.drawingArea.height,
1353
- width: d.value.slotSize <= 0 ? 1e-5 : d.value.slotSize,
1354
- fill: [W.value, j.value].includes(u) ? e.value.xyHighlighterColor : "transparent",
1355
- style: R(`opacity:${e.value.xyHighlighterOpacity}`),
1356
- onMouseenter: (r) => d.value.useTooltip(u),
1357
- onMouseleave: s[2] || (s[2] = (r) => d.value.killTooltip()),
1358
- onClick: (r) => re("selectDatapoint", d.value.dataset.map((h) => ({
1359
- ...h,
1360
- value: h.values[u]
1361
- })))
1362
- }, null, 44, xl))), 256))
1363
- ])
1364
- ], 64)) : g("", !0),
1365
- [A.LINE, A.BAR].includes(L.value) ? (a(), l("g", kl, [
1366
- e.value.xAxisLabel && L.value === A.LINE ? (a(), l("g", bl, [
1367
- _("text", {
1368
- "font-size": e.value.axisLabelsFontSize,
1369
- fill: e.value.color,
1370
- "text-anchor": "middle",
1371
- x: v.value.drawingArea.left + v.value.drawingArea.width / 2,
1372
- y: b.value.height - e.value.axisLabelsFontSize / 3
1373
- }, O(e.value.xAxisLabel), 9, Sl)
1374
- ])) : g("", !0),
1375
- e.value.xAxisLabel && L.value === A.BAR ? (a(), l("g", wl, [
1376
- _("text", {
1377
- "font-size": e.value.axisLabelsFontSize,
1378
- fill: e.value.color,
1379
- "text-anchor": "middle",
1380
- x: d.value.drawingArea.left + d.value.drawingArea.width / 2,
1381
- y: b.value.height - e.value.axisLabelsFontSize / 3
1382
- }, O(e.value.xAxisLabel), 9, Al)
1383
- ])) : g("", !0),
1384
- e.value.yAxisLabel && L.value === A.LINE ? (a(), l("g", _l, [
1385
- _("text", {
1386
- "font-size": e.value.axisLabelsFontSize,
1387
- fill: e.value.color,
1388
- transform: `translate(${e.value.axisLabelsFontSize}, ${v.value.drawingArea.top + v.value.drawingArea.height / 2}) rotate(-90)`,
1389
- "text-anchor": "middle"
1390
- }, O(e.value.yAxisLabel), 9, Ll)
1391
- ])) : g("", !0),
1392
- e.value.yAxisLabel && L.value === A.BAR ? (a(), l("g", zl, [
1393
- _("text", {
1394
- "font-size": e.value.axisLabelsFontSize,
1395
- fill: e.value.color,
1396
- transform: `translate(${e.value.axisLabelsFontSize}, ${d.value.drawingArea.top + d.value.drawingArea.height / 2}) rotate(-90)`,
1397
- "text-anchor": "middle"
1398
- }, O(e.value.yAxisLabel), 9, $l)
1399
- ])) : g("", !0)
1400
- ])) : g("", !0)
1401
- ], 12, ra)) : g("", !0),
1402
- L.value ? g("", !0) : (a(), Fe(f(pe), {
1403
- key: 5,
1404
- config: {
1405
- type: "line",
1406
- style: {
1407
- backgroundColor: e.value.backgroundColor,
1408
- line: {
1409
- axis: {
1410
- color: e.value.xyAxisStroke
1411
- },
1412
- path: {
1413
- color: e.value.xyAxisStroke,
1414
- strokeWidth: 0.5
1415
- }
1416
- }
1417
- }
1418
- }
1419
- }, null, 8, ["config"])),
1420
- o.$slots.watermark ? (a(), l("div", Cl, [
1421
- M(o.$slots, "watermark", ie(ue({ isPrinting: f(Ee) || f(Oe) })), void 0, !0)
1422
- ])) : g("", !0),
1423
- [A.BAR, A.LINE].includes(L.value) && e.value.zoomXy && p.value.maxSeriesLength > 1 ? (a(), l("div", {
1424
- key: `slicer_${Ce.value}`,
1425
- ref_key: "quickChartSlicer",
1426
- ref: Ze
1427
- }, [
1428
- (a(), Fe(Jt, {
1429
- ref_key: "slicerComponent",
1430
- ref: ve,
1431
- key: `slicer_${Ce.value}`,
1432
- background: e.value.zoomColor,
1433
- borderColor: e.value.backgroundColor,
1434
- fontSize: e.value.zoomFontSize,
1435
- useResetSlot: e.value.zoomUseResetSlot,
1436
- labelLeft: e.value.xyPeriods[x.value.start] ? ee.value[0].text : "",
1437
- labelRight: e.value.xyPeriods[x.value.end - 1] ? ee.value.at(-1).text : "",
1438
- textColor: e.value.color,
1439
- inputColor: e.value.zoomColor,
1440
- selectColor: e.value.zoomHighlightColor,
1441
- max: p.value.maxSeriesLength,
1442
- min: 0,
1443
- valueStart: x.value.start,
1444
- valueEnd: x.value.end,
1445
- smoothMinimap: e.value.zoomMinimap.smooth,
1446
- minimapSelectedColor: e.value.zoomMinimap.selectedColor,
1447
- minimapSelectedColorOpacity: e.value.zoomMinimap.selectedColorOpacity,
1448
- minimapSelectionRadius: e.value.zoomMinimap.selectionRadius,
1449
- minimapLineColor: e.value.zoomMinimap.lineColor,
1450
- minimap: Et.value,
1451
- minimapIndicatorColor: e.value.zoomMinimap.indicatorColor,
1452
- verticalHandles: e.value.zoomMinimap.verticalHandles,
1453
- minimapSelectedIndex: j.value,
1454
- start: x.value.start,
1455
- "onUpdate:start": s[3] || (s[3] = (t) => x.value.start = t),
1456
- end: x.value.end,
1457
- "onUpdate:end": s[4] || (s[4] = (t) => x.value.end = t),
1458
- refreshStartPoint: e.value.zoomStartIndex !== null ? e.value.zoomStartIndex : 0,
1459
- refreshEndPoint: e.value.zoomEndIndex !== null ? e.value.zoomEndIndex + 1 : p.value.maxSeriesLength,
1460
- enableRangeHandles: e.value.zoomEnableRangeHandles,
1461
- enableSelectionDrag: e.value.zoomEnableSelectionDrag,
1462
- onReset: Ct,
1463
- onTrapMouse: $t
1464
- }, {
1465
- "reset-action": G(({ reset: t }) => [
1466
- M(o.$slots, "reset-action", ie(ue({ reset: t })), void 0, !0)
1467
- ]),
1468
- _: 3
1469
- }, 8, ["background", "borderColor", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "max", "valueStart", "valueEnd", "smoothMinimap", "minimapSelectedColor", "minimapSelectedColorOpacity", "minimapSelectionRadius", "minimapLineColor", "minimap", "minimapIndicatorColor", "verticalHandles", "minimapSelectedIndex", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag"]))
1470
- ])) : g("", !0),
1471
- e.value.showLegend ? (a(), l("div", {
1472
- key: 8,
1473
- ref_key: "quickChartLegend",
1474
- ref: Xe,
1475
- class: "vue-ui-quick-chart-legend",
1476
- style: R(`background:transparent;color:${e.value.color}`)
1477
- }, [
1478
- L.value === A.DONUT ? (a(!0), l(m, { key: 0 }, $(I.value.legend, (t, u) => (a(), l("div", {
1479
- class: "vue-ui-quick-chart-legend-item",
1480
- onClick: (r) => {
1481
- zt(t, I.value.dataset), re("selectLegend", t);
1482
- },
1483
- style: R(`cursor: ${I.value.legend.length > 1 ? "pointer" : "default"}; opacity:${w.value.includes(t.id) ? "0.5" : "1"}`)
1484
- }, [
1485
- e.value.useCustomLegend ? M(o.$slots, "legend", qe({
1486
- key: 0,
1487
- ref_for: !0
1488
- }, { legend: t }), void 0, !0) : (a(), l(m, { key: 1 }, [
1489
- ge(f(T), {
1490
- name: e.value.legendIcon,
1491
- stroke: t.color,
1492
- size: e.value.legendIconSize
1493
- }, null, 8, ["name", "stroke", "size"]),
1494
- _("span", {
1495
- style: R(`font-size:${e.value.legendFontSize}px`)
1496
- }, O(t.name), 5),
1497
- _("span", {
1498
- style: R(`font-size:${e.value.legendFontSize}px;font-variant-numeric:tabular-nums`)
1499
- }, O(w.value.includes(t.id) ? "-" : f(X)(
1500
- e.value.formatter,
1501
- t.absoluteValue,
1502
- f(D)({
1503
- p: e.value.valuePrefix,
1504
- v: t.absoluteValue,
1505
- s: e.value.valueSuffix,
1506
- r: e.value.dataLabelRoundingValue
1507
- }),
1508
- { datapoint: t, seriesIndex: u }
1509
- )), 5),
1510
- w.value.includes(t.id) ? (a(), l("span", {
1511
- key: 0,
1512
- style: R(`font-size:${e.value.legendFontSize}px`)
1513
- }, " ( - % ) ", 4)) : Te.value ? (a(), l("span", {
1514
- key: 1,
1515
- style: R(`font-size:${e.value.legendFontSize}px; font-variant-numeric: tabular-nums;`)
1516
- }, " ( - % ) ", 4)) : (a(), l("span", {
1517
- key: 2,
1518
- style: R(`font-size:${e.value.legendFontSize}px; font-variant-numeric: tabular-nums;`)
1519
- }, " (" + O(f(D)({
1520
- v: t.value / I.value.total * 100,
1521
- s: "%",
1522
- r: e.value.dataLabelRoundingPercentage
1523
- })) + ") ", 5))
1524
- ], 64))
1525
- ], 12, Il))), 256)) : g("", !0),
1526
- L.value === A.LINE ? (a(!0), l(m, { key: 1 }, $(v.value.legend, (t, u) => (a(), l("div", {
1527
- class: "vue-ui-quick-chart-legend-item",
1528
- onClick: (r) => {
1529
- ut(t.id, v.value.legend.length - 1), re("selectLegend", t);
1530
- },
1531
- style: R(`cursor: ${v.value.legend.length > 1 ? "pointer" : "default"}; opacity:${w.value.includes(t.id) ? "0.5" : "1"}`)
1532
- }, [
1533
- e.value.useCustomLegend ? M(o.$slots, "legend", qe({
1534
- key: 0,
1535
- ref_for: !0
1536
- }, { legend: t }), void 0, !0) : (a(), l(m, { key: 1 }, [
1537
- ge(f(T), {
1538
- name: e.value.legendIcon,
1539
- stroke: t.color,
1540
- size: e.value.legendIconSize
1541
- }, null, 8, ["name", "stroke", "size"]),
1542
- _("span", {
1543
- style: R(`font-size:${e.value.legendFontSize}px`)
1544
- }, O(t.name), 5)
1545
- ], 64))
1546
- ], 12, El))), 256)) : g("", !0),
1547
- L.value === A.BAR ? (a(!0), l(m, { key: 2 }, $(d.value.legend, (t, u) => (a(), l("div", {
1548
- class: "vue-ui-quick-chart-legend-item",
1549
- onClick: (r) => {
1550
- ut(t.id, d.value.legend.length - 1), re("selectLegend", t);
1551
- },
1552
- style: R(`cursor: ${d.value.legend.length > 1 ? "pointer" : "default"}; opacity:${w.value.includes(t.id) ? "0.5" : "1"}`)
1553
- }, [
1554
- e.value.useCustomLegend ? M(o.$slots, "legend", qe({
1555
- key: 0,
1556
- ref_for: !0
1557
- }, { legend: t }), void 0, !0) : (a(), l(m, { key: 1 }, [
1558
- ge(f(T), {
1559
- name: e.value.legendIcon,
1560
- stroke: t.color,
1561
- size: e.value.legendIconSize
1562
- }, null, 8, ["name", "stroke", "size"]),
1563
- _("span", {
1564
- style: R(`font-size:${e.value.legendFontSize}px`)
1565
- }, O(t.name), 5)
1566
- ], 64))
1567
- ], 12, Ol))), 256)) : g("", !0)
1568
- ], 4)) : g("", !0),
1569
- o.$slots.source ? (a(), l("div", {
1570
- key: 9,
1571
- ref_key: "source",
1572
- ref: Ye,
1573
- dir: "auto"
1574
- }, [
1575
- M(o.$slots, "source", {}, void 0, !0)
1576
- ], 512)) : g("", !0),
1577
- ge(f(ye), {
1578
- show: Se.value.showTooltip && te.value,
1579
- backgroundColor: e.value.backgroundColor,
1580
- color: e.value.color,
1581
- borderRadius: e.value.tooltipBorderRadius,
1582
- borderColor: e.value.tooltipBorderColor,
1583
- borderWidth: e.value.tooltipBorderWidth,
1584
- fontSize: e.value.tooltipFontSize,
1585
- backgroundOpacity: e.value.tooltipBackgroundOpacity,
1586
- position: e.value.tooltipPosition,
1587
- offsetY: e.value.tooltipOffsetY,
1588
- parent: J.value,
1589
- content: ae.value,
1590
- isFullscreen: Pe.value,
1591
- isCustom: f(Ne)(e.value.tooltipCustomFormat)
1592
- }, {
1593
- "tooltip-before": G(() => [
1594
- M(o.$slots, "tooltip-before", ie(ue({ ...xe.value })), void 0, !0)
1595
- ]),
1596
- "tooltip-after": G(() => [
1597
- M(o.$slots, "tooltip-after", ie(ue({ ...xe.value })), void 0, !0)
1598
- ]),
1599
- _: 3
1600
- }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom"])
1601
- ], 46, ua)) : (a(), l("div", Tl, [
1602
- ge(f(T), {
1603
- name: "circleCancel",
1604
- stroke: "red"
1605
- }),
1606
- s[8] || (s[8] = _("span", null, "Dataset is not processable", -1))
1607
- ]));
1608
- }
1609
- }, Wl = /* @__PURE__ */ ea(Pl, [["__scopeId", "data-v-3a5268da"]]);
1610
- export {
1611
- Wl as default
1612
- };