vue-data-ui 2.3.3 → 2.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/Arrow-B6gJebT9.js +101 -0
  2. package/dist/Arrow-C5yj6zwY.cjs +1 -0
  3. package/dist/BaseIcon-7_g11dRj.js +174 -0
  4. package/dist/BaseIcon-JtWoVorZ.cjs +1 -0
  5. package/dist/DataTable-CwaOlAsy.js +127 -0
  6. package/dist/DataTable-Rm9II-m2.cjs +1 -0
  7. package/dist/Legend-CxvJTjEm.js +62 -0
  8. package/dist/Legend-D59FIuMs.cjs +1 -0
  9. package/dist/Shape-CVItL3vh.cjs +1 -0
  10. package/dist/Shape-CjLV0scA.js +107 -0
  11. package/dist/Slicer-Bxg5niHl.js +156 -0
  12. package/dist/Slicer-Cdss5Rus.cjs +1 -0
  13. package/dist/Title-2iks1ziC.js +46 -0
  14. package/dist/Title-Bb-A5OSV.cjs +1 -0
  15. package/dist/Tooltip-C3phqKuU.js +94 -0
  16. package/dist/Tooltip-C_UE6y-E.cjs +1 -0
  17. package/dist/_plugin-vue_export-helper-BHFhmbuH.cjs +1 -0
  18. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  19. package/dist/html2canvas.esm-BA_v9SIU.cjs +22 -0
  20. package/dist/html2canvas.esm-d2sM-0Wm.js +4870 -0
  21. package/dist/index-p5gfZSvB.cjs +4 -0
  22. package/dist/index-uOtklCCx.js +10268 -0
  23. package/dist/{index.es-ypwniJN8.js → index.es-YufTdp0y.js} +1 -1
  24. package/dist/{index.es-Dnua3tHc.cjs → index.es-uyeSCnWE.cjs} +1 -1
  25. package/dist/jspdf.es.min-C660YX78.js +8038 -0
  26. package/dist/jspdf.es.min-DLYY9DTT.cjs +243 -0
  27. package/dist/pdf-97UbtKC2.js +44 -0
  28. package/dist/pdf-Cz3729tZ.cjs +1 -0
  29. package/dist/style.css +1 -1
  30. package/dist/useNestedProp-2kIU-7On.cjs +1 -0
  31. package/dist/useNestedProp-BgWkUab_.js +13 -0
  32. package/dist/usePrinter-B6xQCyL-.js +464 -0
  33. package/dist/usePrinter-fZlsJid8.cjs +1 -0
  34. package/dist/useResponsive-B3TrDDIG.cjs +1 -0
  35. package/dist/useResponsive-NZB-WLRF.js +187 -0
  36. package/dist/vue-data-ui-Be0rgmbA.cjs +9 -0
  37. package/dist/vue-data-ui-Ccy6rBZN.js +246 -0
  38. package/dist/vue-data-ui.cjs +1 -1
  39. package/dist/vue-data-ui.js +62 -61
  40. package/dist/vue-ui-3d-bar-BKMPFDi2.js +1085 -0
  41. package/dist/vue-ui-3d-bar-CKa4UXq4.cjs +19 -0
  42. package/dist/vue-ui-accordion-C_pwrAJl.cjs +1 -0
  43. package/dist/vue-ui-accordion-HJPf7My0.js +77 -0
  44. package/dist/vue-ui-age-pyramid-CE1xnA-8.cjs +1 -0
  45. package/dist/vue-ui-age-pyramid-DB_CL-gu.js +596 -0
  46. package/dist/vue-ui-annotator-BAMZcPlH.cjs +371 -0
  47. package/dist/vue-ui-annotator-DQsAL-nZ.js +2177 -0
  48. package/dist/vue-ui-candlestick-DCl8fpNu.js +657 -0
  49. package/dist/vue-ui-candlestick-Duv6oG79.cjs +2 -0
  50. package/dist/vue-ui-chestnut-BYHA6MT4.js +1051 -0
  51. package/dist/vue-ui-chestnut-mIZ4-ZEM.cjs +6 -0
  52. package/dist/vue-ui-cursor-C96IChA3.js +229 -0
  53. package/dist/vue-ui-cursor-De7dy4Mo.cjs +1 -0
  54. package/dist/vue-ui-dashboard-B2Yz41yO.js +232 -0
  55. package/dist/vue-ui-dashboard-BMGwKr0K.cjs +1 -0
  56. package/dist/vue-ui-digits-BnxLp7zQ.js +153 -0
  57. package/dist/vue-ui-digits-DSWyL-5K.cjs +1 -0
  58. package/dist/vue-ui-donut-1kei9ws5.cjs +1 -0
  59. package/dist/vue-ui-donut-B9iXisHK.js +743 -0
  60. package/dist/vue-ui-donut-evolution-B7Sun8sw.js +799 -0
  61. package/dist/vue-ui-donut-evolution-yv17DnGy.cjs +1 -0
  62. package/dist/vue-ui-dumbbell-BJEf_JEq.cjs +9 -0
  63. package/dist/vue-ui-dumbbell-DIsDnD1d.js +624 -0
  64. package/dist/vue-ui-flow-BTivYoGd.js +454 -0
  65. package/dist/vue-ui-flow-DOxJa8di.cjs +1 -0
  66. package/dist/vue-ui-galaxy-BEmywfFB.js +485 -0
  67. package/dist/vue-ui-galaxy-CHGOwCwM.cjs +1 -0
  68. package/dist/vue-ui-gauge-QAfMl-8t.cjs +1 -0
  69. package/dist/vue-ui-gauge-o4rDOqF3.js +466 -0
  70. package/dist/vue-ui-heatmap-BS4EzedX.cjs +1 -0
  71. package/dist/vue-ui-heatmap-DwqQqEsk.js +598 -0
  72. package/dist/vue-ui-kpi-F4qkJ_U-.cjs +1 -0
  73. package/dist/vue-ui-kpi-h8elYTcA.js +54 -0
  74. package/dist/vue-ui-mini-loader-C_8B2Pm6.cjs +1 -0
  75. package/dist/vue-ui-mini-loader-Cgoi9rhH.js +131 -0
  76. package/dist/vue-ui-molecule-Bmv76SWz.js +750 -0
  77. package/dist/vue-ui-molecule-C5CY_YYc.cjs +1 -0
  78. package/dist/vue-ui-mood-radar-BN0dzlfp.cjs +1 -0
  79. package/dist/vue-ui-mood-radar-DeMouUIe.js +548 -0
  80. package/dist/vue-ui-nested-donuts-ZyFoV-Zn.cjs +16 -0
  81. package/dist/vue-ui-nested-donuts-wOUkSVyZ.js +771 -0
  82. package/dist/vue-ui-onion-DCOKG2wG.js +554 -0
  83. package/dist/vue-ui-onion-VmTUo7TR.cjs +1 -0
  84. package/dist/vue-ui-parallel-coordinate-plot-BGtO2P4a.js +651 -0
  85. package/dist/vue-ui-parallel-coordinate-plot-BziXRF8E.cjs +8 -0
  86. package/dist/vue-ui-quadrant--JOTjPZh.js +1178 -0
  87. package/dist/vue-ui-quadrant-DawUUrur.cjs +1 -0
  88. package/dist/vue-ui-quick-chart-LXKfaJgS.js +1310 -0
  89. package/dist/vue-ui-quick-chart-jFlFtiNV.cjs +13 -0
  90. package/dist/vue-ui-radar-CWNIqvcA.js +614 -0
  91. package/dist/vue-ui-radar-VGH-lhaT.cjs +1 -0
  92. package/dist/vue-ui-rating-BNrIoJHN.js +271 -0
  93. package/dist/vue-ui-rating-Dtu6pwGx.cjs +1 -0
  94. package/dist/vue-ui-relation-circle-B3NKudOy.js +304 -0
  95. package/dist/vue-ui-relation-circle-Dwpx9o18.cjs +1 -0
  96. package/dist/vue-ui-rings-CsUngX_F.js +510 -0
  97. package/dist/vue-ui-rings-D9_OG--0.cjs +1 -0
  98. package/dist/vue-ui-scatter-DUsuh7bd.cjs +1 -0
  99. package/dist/vue-ui-scatter-DgxTz4Jx.js +874 -0
  100. package/dist/vue-ui-screenshot-51H_VrYY.js +160 -0
  101. package/dist/vue-ui-screenshot-C2Dz7CAe.cjs +3 -0
  102. package/dist/vue-ui-skeleton-BM9rwmxY.js +2064 -0
  103. package/dist/vue-ui-skeleton-sjfOtCZr.cjs +41 -0
  104. package/dist/vue-ui-smiley-DNnBtHht.cjs +2 -0
  105. package/dist/vue-ui-smiley-H5rSN-1B.js +763 -0
  106. package/dist/vue-ui-spark-trend-CLXZDYlk.js +246 -0
  107. package/dist/vue-ui-spark-trend-R4JJvfry.cjs +1 -0
  108. package/dist/vue-ui-sparkbar-C0k4ah-7.js +242 -0
  109. package/dist/vue-ui-sparkbar-CEUDIw0A.cjs +1 -0
  110. package/dist/vue-ui-sparkgauge-BHj00A07.js +157 -0
  111. package/dist/vue-ui-sparkgauge-CaEw6nmI.cjs +1 -0
  112. package/dist/vue-ui-sparkhistogram-B6GuavEu.cjs +1 -0
  113. package/dist/vue-ui-sparkhistogram-DbMLYKqE.js +244 -0
  114. package/dist/vue-ui-sparkline-CJydanLS.cjs +1 -0
  115. package/dist/vue-ui-sparkline-CYova9x3.js +333 -0
  116. package/dist/vue-ui-sparkstackbar-Df__yM5b.cjs +1 -0
  117. package/dist/vue-ui-sparkstackbar-N5rVBM2h.js +244 -0
  118. package/dist/vue-ui-strip-plot-DJJ1vEWz.js +618 -0
  119. package/dist/vue-ui-strip-plot-b5lhB35d.cjs +1 -0
  120. package/dist/vue-ui-table-NHhOVDbs.cjs +14 -0
  121. package/dist/vue-ui-table-heatmap-Cro2etCY.js +237 -0
  122. package/dist/vue-ui-table-heatmap-DlL2nCqz.cjs +1 -0
  123. package/dist/vue-ui-table-sparkline-Bw2Gc_ur.cjs +1 -0
  124. package/dist/vue-ui-table-sparkline-DppMitqF.js +420 -0
  125. package/dist/vue-ui-table-xSvwJIa7.js +1430 -0
  126. package/dist/vue-ui-thermometer-M2kdp1x5.js +385 -0
  127. package/dist/vue-ui-thermometer-Q_3PX2V3.cjs +1 -0
  128. package/dist/vue-ui-timer-BtSDeIRp.cjs +64 -0
  129. package/dist/vue-ui-timer-CAaQ-QD6.js +453 -0
  130. package/dist/vue-ui-tiremarks-CbGOSEvD.cjs +1 -0
  131. package/dist/vue-ui-tiremarks-JFv4JLP0.js +249 -0
  132. package/dist/vue-ui-treemap-BqDX-bPf.cjs +1 -0
  133. package/dist/vue-ui-treemap-DCnv-xYr.js +722 -0
  134. package/dist/vue-ui-vertical-bar-CEbApJZl.js +737 -0
  135. package/dist/vue-ui-vertical-bar-CJB_KXyr.cjs +4 -0
  136. package/dist/vue-ui-waffle-CTS6C7gu.js +638 -0
  137. package/dist/vue-ui-waffle-IMEbGe-b.cjs +1 -0
  138. package/dist/vue-ui-wheel-CuOmEWMQ.cjs +1 -0
  139. package/dist/vue-ui-wheel-_zyCdFiI.js +227 -0
  140. package/dist/vue-ui-word-cloud-RDlXBEAN.js +346 -0
  141. package/dist/vue-ui-word-cloud-Y7Yk7uUJ.cjs +1 -0
  142. package/dist/vue-ui-xy-BZJQBKnU.cjs +3 -0
  143. package/dist/vue-ui-xy-DsvN9EIQ.js +2064 -0
  144. package/dist/vue-ui-xy-canvas-D_dnbyFS.cjs +9 -0
  145. package/dist/vue-ui-xy-canvas-Dbcw8-9Q.js +1006 -0
  146. package/package.json +1 -1
  147. package/dist/index-BcMihqI4.cjs +0 -843
  148. package/dist/index-C7FeCQ7K.js +0 -57303
@@ -0,0 +1,874 @@
1
+ import { computed as m, ref as b, onMounted as je, onBeforeUnmount as Ee, openBlock as s, createElementBlock as i, normalizeClass as ze, normalizeStyle as X, createVNode as te, createCommentVNode as c, createBlock as U, unref as L, createSlots as Ve, withCtx as _, renderSlot as B, normalizeProps as ne, guardReactiveProps as ve, createElementVNode as y, Fragment as N, renderList as W, toDisplayString as w, createTextVNode as Ge, nextTick as Re } from "vue";
2
+ import { u as qe, c as Ue, t as He, a as Je, p as V, o as Ke, e as ye, b as Qe, g as Se, L as Le, X as Ze, N as et, r as ce, f as H, v as tt, w as lt, n as at, q as ot } from "./index-uOtklCCx.js";
3
+ import { t as st, u as ut } from "./useResponsive-NZB-WLRF.js";
4
+ import { _ as it } from "./Title-2iks1ziC.js";
5
+ import { u as rt, U as nt } from "./usePrinter-B6xQCyL-.js";
6
+ import { _ as vt } from "./Tooltip-C3phqKuU.js";
7
+ import { L as yt } from "./Legend-CxvJTjEm.js";
8
+ import { _ as Ae } from "./Shape-CjLV0scA.js";
9
+ import { D as ct } from "./DataTable-CwaOlAsy.js";
10
+ import dt from "./vue-ui-skeleton-BM9rwmxY.js";
11
+ import ht from "./vue-ui-accordion-HJPf7My0.js";
12
+ import { u as Te } from "./useNestedProp-BgWkUab_.js";
13
+ import { _ as pt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
14
+ const ft = ["id"], gt = ["xmlns", "viewBox"], xt = { key: 0 }, mt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], bt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], kt = { key: 1 }, _t = ["points", "fill", "stroke-width", "stroke-dasharray", "stroke"], wt = { key: 0 }, $t = ["cx", "cy", "r", "fill", "stroke", "stroke-width", "onMouseover"], Mt = { key: 1 }, Ct = { key: 2 }, zt = ["id"], St = ["stop-color"], Lt = ["stop-color"], At = ["id"], Tt = ["stop-color"], Bt = ["stop-color"], Nt = ["x", "y", "width", "height", "fill", "stroke", "stroke-width", "rx"], Ft = ["x", "y", "height", "width", "fill", "stroke", "stroke-width", "rx"], Wt = { key: 0 }, Pt = ["d", "stroke", "stroke-width"], It = ["d", "stroke", "stroke-width"], Ot = ["d", "stroke", "stroke-width"], Xt = ["d", "stroke", "stroke-width"], Dt = {
15
+ key: 3,
16
+ style: { "pointer-events": "none !important" }
17
+ }, Yt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], Et = ["x", "y", "font-size", "fill", "font-weight", "text-anchor"], Vt = ["x", "y", "font-size", "fill", "font-weight"], Gt = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], Rt = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], qt = ["x", "y", "font-size", "fill", "font-weight", "text-anchor"], Ut = { key: 4 }, Ht = ["x", "y", "font-size", "fill"], Jt = ["x", "y", "font-size", "fill"], Kt = ["id", "transform", "font-size", "font-weight", "fill"], Qt = { key: 5 }, Zt = ["x", "y", "font-size", "fill"], el = ["x", "y", "font-size", "fill"], tl = ["font-size", "font-weight", "fill", "x", "y"], ll = ["id"], al = ["x", "y", "width", "height"], ol = { key: 6 }, sl = ["x1", "x2", "y1", "y2", "stroke-dasharray", "stroke", "stroke-width", "clip-path"], ul = ["x", "y", "fill", "font-size", "font-weight"], il = ["onClick"], rl = {
18
+ key: 0,
19
+ style: { width: "100%", display: "flex", "align-items": "center", "justify-content": "center" }
20
+ }, nl = {
21
+ viewBox: "0 0 20 20",
22
+ height: "20",
23
+ width: "20",
24
+ style: { overflow: "hidden", background: "transparent" }
25
+ }, vl = { key: 0 }, yl = ["innerHTML"], cl = {
26
+ __name: "vue-ui-scatter",
27
+ props: {
28
+ config: {
29
+ type: Object,
30
+ default() {
31
+ return {};
32
+ }
33
+ },
34
+ dataset: {
35
+ type: Array,
36
+ default() {
37
+ return [];
38
+ }
39
+ }
40
+ },
41
+ setup(Be, { expose: Ne }) {
42
+ const P = Be, { vue_ui_scatter: Fe } = qe(), J = m(() => !!P.dataset && P.dataset.length), $ = b(Ue()), We = b(null), le = b(!1), ae = b(""), de = b(0), R = b(null), he = b(null), pe = b(null), e = m(() => {
43
+ const l = Te({
44
+ userConfig: P.config,
45
+ defaultConfig: Fe
46
+ });
47
+ return l.theme ? {
48
+ ...Te({
49
+ userConfig: He.vue_ui_scatter[l.theme] || P.config,
50
+ defaultConfig: l
51
+ }),
52
+ customPalette: Je[l.theme] || V
53
+ } : l;
54
+ }), K = b(null);
55
+ je(() => {
56
+ if (Ke(P.dataset) && ye({
57
+ componentName: "VueUiScatter",
58
+ type: "dataset"
59
+ }), e.value.responsive) {
60
+ const l = st(() => {
61
+ const { width: r, height: t } = ut({
62
+ chart: R.value,
63
+ title: e.value.style.title.text ? he.value : null,
64
+ legend: e.value.style.legend.show ? pe.value : null
65
+ });
66
+ M.value.width = r, M.value.height = t;
67
+ });
68
+ K.value = new ResizeObserver(l), K.value.observe(R.value.parentNode);
69
+ }
70
+ }), Ee(() => {
71
+ K.value && K.value.disconnect();
72
+ });
73
+ const { isPrinting: Pe, isImaging: Ie, generatePdf: fe, generateImage: ge } = rt({
74
+ elementId: `vue-ui-scatter_${$.value}`,
75
+ fileName: e.value.style.title.text || "vue-ui-scatter"
76
+ }), xe = m(() => Qe(e.value.customPalette)), I = b({
77
+ showTable: e.value.table.show,
78
+ showTooltip: e.value.style.tooltip.show
79
+ }), M = b({
80
+ height: e.value.style.layout.height,
81
+ width: e.value.style.layout.width
82
+ }), Q = m(() => e.value.style.layout.marginalBars.show ? e.value.style.layout.marginalBars.size + e.value.style.layout.marginalBars.offset : 0), u = m(() => ({
83
+ top: e.value.style.layout.padding.top + Q.value,
84
+ right: M.value.width - e.value.style.layout.padding.right - Q.value,
85
+ bottom: M.value.height - e.value.style.layout.padding.bottom,
86
+ left: e.value.style.layout.padding.left,
87
+ height: M.value.height - e.value.style.layout.padding.top - e.value.style.layout.padding.bottom - Q.value,
88
+ width: M.value.width - e.value.style.layout.padding.left - e.value.style.layout.padding.right - Q.value
89
+ })), f = m(() => {
90
+ P.dataset.forEach((a, n) => {
91
+ Se({
92
+ datasetObject: a,
93
+ requiredAttributes: ["values"]
94
+ }).forEach((g) => {
95
+ ye({
96
+ componentName: "VueUiScatter",
97
+ type: "datasetSerieAttribute",
98
+ property: g,
99
+ index: n
100
+ });
101
+ }), a.values && a.values.forEach((g, Y) => {
102
+ Se({
103
+ datasetObject: g,
104
+ requiredAttributes: ["x", "y"]
105
+ }).forEach((G) => {
106
+ ye({
107
+ componentName: "VueUiScatter",
108
+ type: "datasetSerieAttribute",
109
+ property: `values.${G}`,
110
+ index: `${n} - ${Y}`
111
+ });
112
+ });
113
+ });
114
+ });
115
+ const l = Math.min(...D.value.filter((a) => !p.value.includes(a.id)).flatMap((a) => a.values.map((n) => n.x))), r = Math.max(...D.value.filter((a) => !p.value.includes(a.id)).flatMap((a) => a.values.map((n) => n.x))), t = Math.min(...D.value.filter((a) => !p.value.includes(a.id)).flatMap((a) => a.values.map((n) => n.y))), o = Math.max(...D.value.filter((a) => !p.value.includes(a.id)).flatMap((a) => a.values.map((n) => n.y)));
116
+ return { xMin: l >= 0 ? 0 : l, xMax: r, yMin: t >= 0 ? 0 : t, yMax: o };
117
+ }), d = m(() => ({
118
+ x: u.value.left + Math.abs(f.value.xMin) / (f.value.xMax + Math.abs(f.value.xMin)) * u.value.width,
119
+ y: u.value.bottom - Math.abs(f.value.yMin) / (f.value.yMax + Math.abs(f.value.yMin)) * u.value.height
120
+ })), D = m(() => P.dataset.map((l, r) => {
121
+ const t = `cluster_${$.value}_${r}`;
122
+ return {
123
+ ...l,
124
+ id: t,
125
+ color: l.color ? l.color : xe.value[r] || V[r] || V[r % V.length],
126
+ opacity: p.value.includes(t) ? 0.5 : 1,
127
+ shape: l.shape ?? "circle",
128
+ segregate: () => we(t),
129
+ isSegregated: p.value.includes(t)
130
+ };
131
+ })), Oe = m(() => ({
132
+ cy: "scatter-div-legend",
133
+ backgroundColor: e.value.style.legend.backgroundColor,
134
+ color: e.value.style.legend.color,
135
+ fontSize: e.value.style.legend.fontSize,
136
+ paddingBottom: 12,
137
+ fontWeight: e.value.style.legend.bold ? "bold" : ""
138
+ })), oe = m(() => D.value.map((l, r) => ({
139
+ ...l,
140
+ plots: l.values.map((t) => ({
141
+ x: u.value.left + (t.x + Math.abs(f.value.xMin)) / (f.value.xMax + Math.abs(f.value.xMin)) * u.value.width,
142
+ y: u.value.bottom - (t.y + Math.abs(f.value.yMin)) / (f.value.yMax + Math.abs(f.value.yMin)) * u.value.height,
143
+ v: {
144
+ ...t,
145
+ name: t.name || ""
146
+ },
147
+ clusterName: l.name,
148
+ color: l.color ? l.color : xe.value[r] || V[r] || V[r % V.length],
149
+ id: `plot_${$.value}_${Math.random()}`,
150
+ weight: t.weight ?? e.value.style.layout.plots.radius
151
+ }))
152
+ })).filter((l) => !p.value.includes(l.id))), C = m(() => oe.value.map((l) => {
153
+ const r = l.plots.reduce((h, j) => h + j.x, 0) / l.plots.length, t = l.plots.reduce((h, j) => h + j.y, 0) / l.plots.length;
154
+ let o = 0, a = 0, n = 0;
155
+ for (const h of l.plots)
156
+ o += (h.x - r) * (h.y - t), a += (h.x - r) ** 2, n += (h.y - t) ** 2;
157
+ const g = o / Math.sqrt(a * n), Y = g * (Math.sqrt(n) / Math.sqrt(a)), G = t - Y * r, T = {
158
+ x1: u.value.left,
159
+ x2: u.value.right,
160
+ y1: Y * u.value.left + G,
161
+ y2: Y * u.value.right + G,
162
+ coefficient: g
163
+ }, k = (T.y2 - T.y1) / (T.x2 - T.x1), S = T.y1 - k * T.x1, F = Math.min(M.value.width - e.value.style.layout.padding.right, Math.max(e.value.style.layout.padding.left, (u.value.top - S) / k)), ee = {
164
+ x: F,
165
+ y: k * F + S <= e.value.style.layout.padding.top ? u.value.top : k * F + S
166
+ };
167
+ return {
168
+ ...l,
169
+ correlation: T,
170
+ label: ee,
171
+ plots: l.plots.map((h) => {
172
+ const j = (h.x + k * h.y - k * S) / (1 + Math.pow(k, 2)), ue = (k * h.x + Math.pow(k, 2) * h.y + S) / (1 + Math.pow(k, 2)), x = Math.sqrt(Math.pow(h.x - j, 2) + Math.pow(h.y - ue, 2));
173
+ return {
174
+ ...h,
175
+ deviation: x,
176
+ shape: l.shape,
177
+ color: l.color
178
+ };
179
+ })
180
+ };
181
+ })), me = m(() => Math.max(...C.value.flatMap((l) => l.plots.map((r) => Math.abs(r.deviation)))));
182
+ function Xe() {
183
+ return C.value;
184
+ }
185
+ function be(l, r) {
186
+ const t = Array.isArray(l) ? l.flatMap((x) => x.plots.map((E) => ({
187
+ x: E.x,
188
+ y: E.y
189
+ }))) : l.plots.map((x) => ({
190
+ x: x.x,
191
+ y: x.y
192
+ }));
193
+ let o = 1 / 0, a = -1 / 0, n = 1 / 0, g = -1 / 0;
194
+ t.forEach(({ x, y: E }) => {
195
+ o = Math.min(o, x), a = Math.max(a, x), n = Math.min(n, E), g = Math.max(g, E);
196
+ });
197
+ const Y = a - o, G = g - n, T = Y / r, k = G / r, S = Array(r).fill(0), F = Array(r).fill(0);
198
+ t.forEach(({ x, y: E }) => {
199
+ const ie = Math.floor((x - o) / T), re = Math.floor((E - n) / k);
200
+ S[ie] || (S[ie] = 0), F[re] || (F[re] = 0), S[ie] += 1, F[re] += 1;
201
+ });
202
+ const ee = [], h = [];
203
+ for (let x = 0; x < r; x += 1)
204
+ ee.push(o + (x + 0.5) * T), h.push(n + (x + 0.5) * k);
205
+ const j = Math.max(...S), ue = Math.max(...F);
206
+ return { x: S, y: F, avgX: ee, avgY: h, maxX: j, maxY: ue };
207
+ }
208
+ const O = m(() => e.value.style.layout.marginalBars.tranches), z = m(() => be(oe.value, O.value)), De = m(() => {
209
+ const l = u.value.top - e.value.style.layout.marginalBars.offset, r = u.value.right + e.value.style.layout.marginalBars.offset;
210
+ return oe.value.map((t) => {
211
+ const o = be(t, O.value);
212
+ return {
213
+ coords: o,
214
+ dX: Le(o.avgX.map((a, n) => ({
215
+ x: a,
216
+ y: l - o.x[n] / o.maxX * e.value.style.layout.marginalBars.size
217
+ }))),
218
+ dY: Le(o.avgY.map((a, n) => ({
219
+ y: a,
220
+ x: r + e.value.style.layout.marginalBars.size * o.y[n] / o.maxY
221
+ }))),
222
+ color: t.color,
223
+ id: t.id
224
+ };
225
+ });
226
+ }), A = b(void 0), v = b(null), se = b(null);
227
+ function ke(l, r) {
228
+ A.value = l.id, v.value = l;
229
+ let t = "";
230
+ se.value = {
231
+ datapoint: l,
232
+ seriesIndex: r,
233
+ series: C.value,
234
+ config: e.value
235
+ };
236
+ const o = e.value.style.tooltip.customFormat;
237
+ tt(o) && lt(() => o({
238
+ datapoint: l,
239
+ seriesIndex: r,
240
+ series: C.value,
241
+ config: e.value
242
+ })) ? ae.value = o({
243
+ datapoint: l,
244
+ seriesIndex: r,
245
+ series: C.value,
246
+ config: e.value
247
+ }) : (l.clusterName && (t += `<div style="display:flex;gap:3px;align-items:center">${l.clusterName}</div>`), l.v.name && (t += `<div>${l.v.name}</div>`), t += `<div style="text-align:left;margin-top:6px;padding-top:6px;border-top:1px solid ${e.value.style.tooltip.borderColor}">`, t += `<div>${e.value.style.layout.dataLabels.xAxis.name}: <b>${isNaN(l.v.x) ? "-" : H({
248
+ p: e.value.style.tooltip.prefix,
249
+ v: l.v.x,
250
+ s: e.value.style.tooltip.suffix,
251
+ r: e.value.style.tooltip.roundingValue
252
+ })}</b></div>`, t += `<div>${e.value.style.layout.dataLabels.yAxis.name}: <b>${isNaN(l.v.y) ? "-" : H({
253
+ p: e.value.style.tooltip.prefix,
254
+ v: l.v.y,
255
+ s: e.value.style.tooltip.suffix,
256
+ r: e.value.style.tooltip.roundingValue
257
+ })}</b></div>`, t += `${e.value.style.layout.plots.deviation.translation}: <b>${H({
258
+ v: l.deviation,
259
+ r: e.value.style.layout.plots.deviation.roundingValue
260
+ })}</b>`, t += "</div>", ae.value = `<div>${t}</div>`), le.value = !0;
261
+ }
262
+ function _e() {
263
+ le.value = !1, A.value = void 0, v.value = null;
264
+ }
265
+ const p = b([]);
266
+ function we(l) {
267
+ p.value.includes(l) ? p.value = p.value.filter((r) => r !== l) : p.value.length < P.dataset.length - 1 && p.value.push(l);
268
+ }
269
+ function $e() {
270
+ Re(() => {
271
+ const l = ["", e.value.table.translations.correlationCoefficient, e.value.table.translations.nbrPlots, `${e.value.style.layout.dataLabels.xAxis.name} ${e.value.table.translations.average}`, `${e.value.style.layout.dataLabels.yAxis.name} ${e.value.table.translations.average}`], r = C.value.map((a) => [
272
+ a.name,
273
+ a.correlation.coefficient,
274
+ a.plots.length,
275
+ a.plots.map((n) => n.v.x).reduce((n, g) => n + g, 0) / a.plots.length,
276
+ a.plots.map((n) => n.v.y).reduce((n, g) => n + g, 0) / a.plots.length
277
+ ]), t = [[e.value.style.title.text], [e.value.style.title.subtitle.text], [[""], [""], [""]]].concat([l]).concat(r), o = at(t);
278
+ ot({ csvContent: o, title: e.value.style.title.text || "vue-ui-heatmap" });
279
+ });
280
+ }
281
+ const Z = m(() => {
282
+ const l = [
283
+ e.value.table.translations.series,
284
+ e.value.table.translations.correlationCoefficient,
285
+ e.value.table.translations.nbrPlots,
286
+ `${e.value.style.layout.dataLabels.xAxis.name} ${e.value.table.translations.average}`,
287
+ `${e.value.style.layout.dataLabels.yAxis.name} ${e.value.table.translations.average}`
288
+ ], r = C.value.map((o) => [
289
+ {
290
+ shape: o.shape,
291
+ content: o.name,
292
+ color: o.color
293
+ },
294
+ Number((o.correlation.coefficient ?? 0).toFixed(e.value.table.td.roundingValue)).toLocaleString(),
295
+ o.plots.length.toLocaleString(),
296
+ Number((o.plots.map((a) => a.v.x ?? 0).reduce((a, n) => a + n, 0) / o.plots.length).toFixed(e.value.table.td.roundingAverage)).toLocaleString(),
297
+ Number((o.plots.map((a) => a.v.y ?? 0).reduce((a, n) => a + n, 0) / o.plots.length).toFixed(e.value.table.td.roundingAverage)).toLocaleString()
298
+ ]), t = {
299
+ th: {
300
+ backgroundColor: e.value.table.th.backgroundColor,
301
+ color: e.value.table.th.color,
302
+ outline: e.value.table.th.outline
303
+ },
304
+ td: {
305
+ backgroundColor: e.value.table.td.backgroundColor,
306
+ color: e.value.table.td.color,
307
+ outline: e.value.table.td.outline
308
+ },
309
+ breakpoint: e.value.table.responsiveBreakpoint
310
+ };
311
+ return { head: l, body: r, config: t, colNames: l };
312
+ }), q = b(!1);
313
+ function Ye(l) {
314
+ q.value = l, de.value += 1;
315
+ }
316
+ function Me() {
317
+ I.value.showTable = !I.value.showTable;
318
+ }
319
+ function Ce() {
320
+ I.value.showTooltip = !I.value.showTooltip;
321
+ }
322
+ return Ne({
323
+ getData: Xe,
324
+ generatePdf: fe,
325
+ generateCsv: $e,
326
+ generateImage: ge,
327
+ toggleTable: Me,
328
+ toggleTooltip: Ce
329
+ }), (l, r) => (s(), i("div", {
330
+ class: ze(`vue-ui-scatter ${q.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
331
+ ref_key: "scatterChart",
332
+ ref: R,
333
+ id: `vue-ui-scatter_${$.value}`,
334
+ style: X(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;${e.value.style.title.text ? "" : "padding-top:36px"};background:${e.value.style.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`)
335
+ }, [
336
+ e.value.style.title.text ? (s(), i("div", {
337
+ key: 0,
338
+ ref_key: "chartTitle",
339
+ ref: he,
340
+ style: X(`width:100%;background:${e.value.style.backgroundColor}`)
341
+ }, [
342
+ te(it, {
343
+ config: {
344
+ title: {
345
+ cy: "scatter-div-title",
346
+ ...e.value.style.title
347
+ },
348
+ subtitle: {
349
+ cy: "scatter-div-subtitle",
350
+ ...e.value.style.title.subtitle
351
+ }
352
+ }
353
+ }, null, 8, ["config"])
354
+ ], 4)) : c("", !0),
355
+ e.value.userOptions.show && J.value ? (s(), U(nt, {
356
+ ref_key: "details",
357
+ ref: We,
358
+ key: `user_options_${de.value}`,
359
+ backgroundColor: e.value.style.backgroundColor,
360
+ color: e.value.style.color,
361
+ isImaging: L(Ie),
362
+ isPrinting: L(Pe),
363
+ uid: $.value,
364
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.tooltip.show,
365
+ hasPdf: e.value.userOptions.buttons.pdf,
366
+ hasImg: e.value.userOptions.buttons.img,
367
+ hasXls: e.value.userOptions.buttons.csv,
368
+ hasTable: e.value.userOptions.buttons.table,
369
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
370
+ isTooltip: I.value.showTooltip,
371
+ isFullscreen: q.value,
372
+ titles: { ...e.value.userOptions.buttonTitles },
373
+ chartElement: R.value,
374
+ onToggleFullscreen: Ye,
375
+ onGeneratePdf: L(fe),
376
+ onGenerateCsv: $e,
377
+ onGenerateImage: L(ge),
378
+ onToggleTable: Me,
379
+ onToggleTooltip: Ce
380
+ }, Ve({ _: 2 }, [
381
+ l.$slots.optionTooltip ? {
382
+ name: "optionTooltip",
383
+ fn: _(() => [
384
+ B(l.$slots, "optionTooltip", {}, void 0, !0)
385
+ ]),
386
+ key: "0"
387
+ } : void 0,
388
+ l.$slots.optionPdf ? {
389
+ name: "optionPdf",
390
+ fn: _(() => [
391
+ B(l.$slots, "optionPdf", {}, void 0, !0)
392
+ ]),
393
+ key: "1"
394
+ } : void 0,
395
+ l.$slots.optionCsv ? {
396
+ name: "optionCsv",
397
+ fn: _(() => [
398
+ B(l.$slots, "optionCsv", {}, void 0, !0)
399
+ ]),
400
+ key: "2"
401
+ } : void 0,
402
+ l.$slots.optionImg ? {
403
+ name: "optionImg",
404
+ fn: _(() => [
405
+ B(l.$slots, "optionImg", {}, void 0, !0)
406
+ ]),
407
+ key: "3"
408
+ } : void 0,
409
+ l.$slots.optionTable ? {
410
+ name: "optionTable",
411
+ fn: _(() => [
412
+ B(l.$slots, "optionTable", {}, void 0, !0)
413
+ ]),
414
+ key: "4"
415
+ } : void 0,
416
+ l.$slots.optionFullscreen ? {
417
+ name: "optionFullscreen",
418
+ fn: _(({ toggleFullscreen: t, isFullscreen: o }) => [
419
+ B(l.$slots, "optionFullscreen", ne(ve({ toggleFullscreen: t, isFullscreen: o })), void 0, !0)
420
+ ]),
421
+ key: "5"
422
+ } : void 0
423
+ ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasImg", "hasXls", "hasTable", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "onGeneratePdf", "onGenerateImage"])) : c("", !0),
424
+ J.value ? (s(), i("svg", {
425
+ key: 2,
426
+ xmlns: L(Ze),
427
+ class: ze({ "vue-data-ui-fullscreen--on": q.value, "vue-data-ui-fulscreen--off": !q.value }),
428
+ viewBox: `0 0 ${M.value.width <= 0 ? 10 : M.value.width} ${M.value.height <= 0 ? 10 : M.value.height}`,
429
+ style: X(`max-width:100%;overflow:visible;background:${e.value.style.backgroundColor};color:${e.value.style.color}`)
430
+ }, [
431
+ e.value.style.layout.axis.show ? (s(), i("g", xt, [
432
+ y("line", {
433
+ x1: d.value.x,
434
+ x2: d.value.x,
435
+ y1: u.value.top,
436
+ y2: u.value.bottom,
437
+ stroke: e.value.style.layout.axis.stroke,
438
+ "stroke-width": e.value.style.layout.axis.strokeWidth,
439
+ "stroke-linecap": "round"
440
+ }, null, 8, mt),
441
+ y("line", {
442
+ x1: u.value.left,
443
+ x2: u.value.right,
444
+ y1: d.value.y,
445
+ y2: d.value.y,
446
+ stroke: e.value.style.layout.axis.stroke,
447
+ "stroke-width": e.value.style.layout.axis.strokeWidth,
448
+ "stroke-linecap": "round"
449
+ }, null, 8, bt)
450
+ ])) : c("", !0),
451
+ e.value.style.layout.plots.giftWrap.show ? (s(), i("g", kt, [
452
+ (s(!0), i(N, null, W(C.value, (t, o) => (s(), i("g", null, [
453
+ t.plots.length > 2 ? (s(), i("polygon", {
454
+ key: 0,
455
+ points: L(et)({ series: t.plots }),
456
+ fill: `${t.color}${L(ce)[e.value.style.layout.plots.giftWrap.fillOpacity * 100]}`,
457
+ "stroke-width": e.value.style.layout.plots.giftWrap.strokeWidth,
458
+ "stroke-dasharray": e.value.style.layout.plots.giftWrap.strokeDasharray,
459
+ stroke: t.color,
460
+ "stroke-linejoin": "round",
461
+ "stroke-linecap": "round"
462
+ }, null, 8, _t)) : c("", !0)
463
+ ]))), 256))
464
+ ])) : c("", !0),
465
+ (s(!0), i(N, null, W(C.value, (t, o) => (s(), i("g", null, [
466
+ !t.shape || t.shape === "circle" ? (s(), i("g", wt, [
467
+ (s(!0), i(N, null, W(t.plots, (a, n) => (s(), i("circle", {
468
+ cx: a.x,
469
+ cy: a.y,
470
+ r: A.value && A.value === a.id ? a.weight * 2 : a.weight,
471
+ fill: `${t.color}${L(ce)[e.value.style.layout.plots.opacity * 100]}`,
472
+ stroke: e.value.style.layout.plots.stroke,
473
+ "stroke-width": e.value.style.layout.plots.strokeWidth,
474
+ onMouseover: (g) => ke(a, o),
475
+ onMouseleave: _e,
476
+ style: X(`opacity:${A.value && A.value === a.id ? 1 : e.value.style.layout.plots.significance.useDistanceOpacity ? 1 - Math.abs(a.deviation) / me.value : e.value.style.layout.plots.significance.show && Math.abs(a.deviation) > e.value.style.layout.plots.significance.deviationThreshold ? e.value.style.layout.plots.significance.opacity : 1}`)
477
+ }, null, 44, $t))), 256))
478
+ ])) : (s(), i("g", Mt, [
479
+ (s(!0), i(N, null, W(t.plots, (a, n) => (s(), U(Ae, {
480
+ plot: { x: a.x, y: a.y },
481
+ radius: A.value && A.value === a.id ? a.weight * 2 : a.weight,
482
+ shape: t.shape,
483
+ color: `${t.color}${L(ce)[e.value.style.layout.plots.opacity * 100]}`,
484
+ stroke: e.value.style.layout.plots.stroke,
485
+ strokeWidth: e.value.style.layout.plots.strokeWidth,
486
+ onMouseover: (g) => ke(a, o),
487
+ onMouseleave: _e,
488
+ style: X(`opacity:${A.value && A.value === a.id ? 1 : e.value.style.layout.plots.significance.useDistanceOpacity ? 1 - Math.abs(a.deviation) / me.value : e.value.style.layout.plots.significance.show && Math.abs(a.deviation) > e.value.style.layout.plots.significance.deviationThreshold ? e.value.style.layout.plots.significance.opacity : 1}`)
489
+ }, null, 8, ["plot", "radius", "shape", "color", "stroke", "strokeWidth", "onMouseover", "style"]))), 256))
490
+ ]))
491
+ ]))), 256)),
492
+ e.value.style.layout.marginalBars.show ? (s(), i("g", Ct, [
493
+ y("defs", null, [
494
+ y("linearGradient", {
495
+ id: `marginal_x_${$.value}`,
496
+ x1: "0%",
497
+ y1: "0%",
498
+ x2: "0%",
499
+ y2: "100%"
500
+ }, [
501
+ y("stop", {
502
+ offset: "0%",
503
+ "stop-color": e.value.style.layout.marginalBars.fill
504
+ }, null, 8, St),
505
+ y("stop", {
506
+ offset: "100%",
507
+ "stop-color": e.value.style.backgroundColor
508
+ }, null, 8, Lt)
509
+ ], 8, zt),
510
+ y("linearGradient", {
511
+ id: `marginal_y_${$.value}`,
512
+ x1: "0%",
513
+ x2: "100%",
514
+ y1: "0%",
515
+ y2: "0%"
516
+ }, [
517
+ y("stop", {
518
+ offset: "0%",
519
+ "stop-color": e.value.style.backgroundColor
520
+ }, null, 8, Tt),
521
+ y("stop", {
522
+ offset: "100%",
523
+ "stop-color": e.value.style.layout.marginalBars.fill
524
+ }, null, 8, Bt)
525
+ ], 8, At)
526
+ ]),
527
+ (s(!0), i(N, null, W(z.value.x, (t, o) => (s(), i("g", null, [
528
+ t && z.value.avgX[o] ? (s(), i("rect", {
529
+ key: 0,
530
+ x: z.value.avgX[o] - u.value.width / O.value / 2,
531
+ y: u.value.top - e.value.style.layout.marginalBars.offset - t / z.value.maxX * e.value.style.layout.marginalBars.size,
532
+ width: u.value.width / O.value <= 0 ? 1e-4 : u.value.width / O.value,
533
+ height: t / z.value.maxX * e.value.style.layout.marginalBars.size <= 0 ? 1e-4 : t / z.value.maxX * e.value.style.layout.marginalBars.size,
534
+ fill: e.value.style.layout.marginalBars.useGradient ? `url(#marginal_x_${$.value})` : e.value.style.layout.marginalBars.fill,
535
+ style: X(`opacity:${e.value.style.layout.marginalBars.opacity}`),
536
+ stroke: e.value.style.backgroundColor,
537
+ "stroke-width": e.value.style.layout.marginalBars.strokeWidth,
538
+ rx: e.value.style.layout.marginalBars.borderRadius
539
+ }, null, 12, Nt)) : c("", !0)
540
+ ]))), 256)),
541
+ (s(!0), i(N, null, W(z.value.y, (t, o) => (s(), i("g", null, [
542
+ t && z.value.avgY[o] ? (s(), i("rect", {
543
+ key: 0,
544
+ x: u.value.right + e.value.style.layout.marginalBars.offset,
545
+ y: z.value.avgY[o] - u.value.height / O.value / 2,
546
+ height: u.value.height / O.value <= 0 ? 1e-4 : u.value.height / O.value,
547
+ width: t / z.value.maxY * e.value.style.layout.marginalBars.size <= 0 ? 1e-4 : t / z.value.maxY * e.value.style.layout.marginalBars.size,
548
+ fill: e.value.style.layout.marginalBars.useGradient ? `url(#marginal_y_${$.value})` : e.value.style.layout.marginalBars.fill,
549
+ style: X(`opacity:${e.value.style.layout.marginalBars.opacity}`),
550
+ stroke: e.value.style.backgroundColor,
551
+ "stroke-width": e.value.style.layout.marginalBars.strokeWidth,
552
+ rx: e.value.style.layout.marginalBars.borderRadius
553
+ }, null, 12, Ft)) : c("", !0)
554
+ ]))), 256)),
555
+ e.value.style.layout.marginalBars.showLines ? (s(), i("g", Wt, [
556
+ (s(!0), i(N, null, W(De.value, (t) => (s(), i(N, null, [
557
+ p.value.includes(t.id) ? c("", !0) : (s(), i("path", {
558
+ key: 0,
559
+ d: `M ${t.dX}`,
560
+ stroke: e.value.style.backgroundColor,
561
+ "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth + 1,
562
+ "stroke-linecap": "round",
563
+ "stroke-linejoin": "round",
564
+ fill: "none"
565
+ }, null, 8, Pt)),
566
+ p.value.includes(t.id) ? c("", !0) : (s(), i("path", {
567
+ key: 1,
568
+ d: `M ${t.dX}`,
569
+ stroke: t.color,
570
+ "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth,
571
+ "stroke-linecap": "round",
572
+ "stroke-linejoin": "round",
573
+ fill: "none"
574
+ }, null, 8, It)),
575
+ p.value.includes(t.id) ? c("", !0) : (s(), i("path", {
576
+ key: 2,
577
+ d: `M ${t.dY}`,
578
+ stroke: e.value.style.backgroundColor,
579
+ "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth + 1,
580
+ "stroke-linecap": "round",
581
+ "stroke-linejoin": "round",
582
+ fill: "none"
583
+ }, null, 8, Ot)),
584
+ p.value.includes(t.id) ? c("", !0) : (s(), i("path", {
585
+ key: 3,
586
+ d: `M ${t.dY}`,
587
+ stroke: t.color,
588
+ "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth,
589
+ "stroke-linecap": "round",
590
+ "stroke-linejoin": "round",
591
+ fill: "none"
592
+ }, null, 8, Xt))
593
+ ], 64))), 256))
594
+ ])) : c("", !0)
595
+ ])) : c("", !0),
596
+ v.value && e.value.style.layout.plots.selectors.show ? (s(), i("g", Dt, [
597
+ y("line", {
598
+ x1: d.value.x,
599
+ x2: v.value.x,
600
+ y1: v.value.y,
601
+ y2: v.value.y,
602
+ stroke: e.value.style.layout.plots.selectors.stroke,
603
+ "stroke-width": e.value.style.layout.plots.selectors.strokeWidth,
604
+ "stroke-dasharray": e.value.style.layout.plots.selectors.strokeDasharray,
605
+ "stroke-linecap": "round",
606
+ class: "line-pointer"
607
+ }, null, 8, Yt),
608
+ y("line", {
609
+ x1: v.value.x,
610
+ x2: v.value.x,
611
+ y1: d.value.y,
612
+ y2: v.value.y,
613
+ stroke: e.value.style.layout.plots.selectors.stroke,
614
+ "stroke-width": e.value.style.layout.plots.selectors.strokeWidth,
615
+ "stroke-dasharray": e.value.style.layout.plots.selectors.strokeDasharray,
616
+ "stroke-linecap": "round",
617
+ class: "line-pointer"
618
+ }, null, 8, jt),
619
+ y("text", {
620
+ x: d.value.x + (v.value.x > d.value.x ? -6 : 6),
621
+ y: v.value.y + e.value.style.layout.plots.selectors.labels.fontSize / 3,
622
+ "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
623
+ fill: e.value.style.layout.plots.selectors.labels.color,
624
+ "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
625
+ "text-anchor": v.value.x > d.value.x ? "end" : "start"
626
+ }, w(L(H)({
627
+ p: e.value.style.layout.plots.selectors.labels.prefix,
628
+ v: v.value.v.y,
629
+ s: e.value.style.layout.plots.selectors.labels.suffix,
630
+ r: e.value.style.layout.plots.selectors.labels.rounding
631
+ })), 9, Et),
632
+ y("text", {
633
+ x: v.value.x,
634
+ y: d.value.y + (v.value.y > d.value.y ? -6 : e.value.style.layout.plots.selectors.labels.fontSize + 6),
635
+ "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
636
+ fill: e.value.style.layout.plots.selectors.labels.color,
637
+ "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
638
+ "text-anchor": "middle"
639
+ }, w(L(H)({
640
+ p: e.value.style.layout.plots.selectors.labels.prefix,
641
+ v: v.value.v.x,
642
+ s: e.value.style.layout.plots.selectors.labels.suffix,
643
+ r: e.value.style.layout.plots.selectors.labels.rounding
644
+ })), 9, Vt),
645
+ y("circle", {
646
+ cx: d.value.x,
647
+ cy: v.value.y,
648
+ r: e.value.style.layout.plots.selectors.markers.radius,
649
+ fill: e.value.style.layout.plots.selectors.markers.fill,
650
+ stroke: e.value.style.layout.plots.selectors.markers.stroke,
651
+ "stroke-width": e.value.style.layout.plots.selectors.markers.strokeWidth,
652
+ class: "line-pointer"
653
+ }, null, 8, Gt),
654
+ y("circle", {
655
+ cx: v.value.x,
656
+ cy: d.value.y,
657
+ r: e.value.style.layout.plots.selectors.markers.radius,
658
+ fill: e.value.style.layout.plots.selectors.markers.fill,
659
+ stroke: e.value.style.layout.plots.selectors.markers.stroke,
660
+ "stroke-width": e.value.style.layout.plots.selectors.markers.strokeWidth,
661
+ class: "line-pointer"
662
+ }, null, 8, Rt),
663
+ e.value.style.layout.plots.selectors.labels.showName ? (s(), i("text", {
664
+ key: 0,
665
+ x: v.value.x,
666
+ y: v.value.y + (v.value.y < d.value.y ? -e.value.style.layout.plots.selectors.labels.fontSize / 2 : e.value.style.layout.plots.selectors.labels.fontSize),
667
+ "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
668
+ fill: e.value.style.layout.plots.selectors.labels.color,
669
+ "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
670
+ "text-anchor": v.value.x < u.value.left + 100 ? "start" : v.value.x > u.value.right - 100 ? "end" : v.value.x > d.value.x ? "start" : "end"
671
+ }, w(v.value.v.name), 9, qt)) : c("", !0)
672
+ ])) : c("", !0),
673
+ e.value.style.layout.dataLabels.xAxis.show ? (s(), i("g", Ut, [
674
+ y("text", {
675
+ x: u.value.left - 5,
676
+ y: d.value.y + e.value.style.layout.dataLabels.xAxis.fontSize / 3,
677
+ "text-anchor": "end",
678
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
679
+ fill: e.value.style.layout.dataLabels.xAxis.color
680
+ }, w(Number(f.value.xMin.toFixed(e.value.style.layout.dataLabels.xAxis.rounding)).toLocaleString()), 9, Ht),
681
+ y("text", {
682
+ x: u.value.right + 3,
683
+ y: d.value.y + e.value.style.layout.dataLabels.xAxis.fontSize / 3,
684
+ "text-anchor": "start",
685
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
686
+ fill: e.value.style.layout.dataLabels.xAxis.color
687
+ }, w(Number(f.value.xMax.toFixed(e.value.style.layout.dataLabels.xAxis.rounding)).toLocaleString()), 9, Jt),
688
+ y("text", {
689
+ id: `vue-ui-scatter-xAxis-label-${$.value}`,
690
+ transform: `translate(${e.value.style.layout.dataLabels.xAxis.fontSize * 2}, ${u.value.top + u.value.height / 2}), rotate(-90)`,
691
+ "text-anchor": "middle",
692
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
693
+ "font-weight": e.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
694
+ fill: e.value.style.layout.dataLabels.xAxis.color
695
+ }, w(e.value.style.layout.dataLabels.xAxis.name), 9, Kt)
696
+ ])) : c("", !0),
697
+ e.value.style.layout.dataLabels.yAxis.show ? (s(), i("g", Qt, [
698
+ y("text", {
699
+ x: d.value.x,
700
+ y: u.value.bottom + e.value.style.layout.dataLabels.yAxis.fontSize + 3,
701
+ "text-anchor": "middle",
702
+ "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
703
+ fill: e.value.style.layout.dataLabels.yAxis.color
704
+ }, w(Number(f.value.yMin.toFixed(e.value.style.layout.dataLabels.yAxis.rounding)).toLocaleString()), 9, Zt),
705
+ y("text", {
706
+ x: d.value.x,
707
+ y: u.value.top - e.value.style.layout.dataLabels.yAxis.fontSize / 2,
708
+ "text-anchor": "middle",
709
+ "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
710
+ fill: e.value.style.layout.dataLabels.yAxis.color
711
+ }, w(Number(f.value.yMax.toFixed(e.value.style.layout.dataLabels.yAxis.rounding)).toLocaleString()), 9, el),
712
+ y("text", {
713
+ "text-anchor": "middle",
714
+ "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
715
+ "font-weight": e.value.style.layout.dataLabels.yAxis.bold ? "bold" : "normal",
716
+ fill: e.value.style.layout.dataLabels.yAxis.color,
717
+ x: u.value.left + u.value.width / 2,
718
+ y: u.value.bottom + 8 + e.value.style.layout.dataLabels.yAxis.fontSize * 2
719
+ }, w(e.value.style.layout.dataLabels.yAxis.name), 9, tl)
720
+ ])) : c("", !0),
721
+ y("clipPath", {
722
+ id: `clip_path_${$.value}`
723
+ }, [
724
+ y("rect", {
725
+ x: u.value.left,
726
+ y: u.value.top,
727
+ width: u.value.width <= 0 ? 1e-4 : u.value.width,
728
+ height: u.value.height <= 0 ? 1e-4 : u.value.height
729
+ }, null, 8, al)
730
+ ], 8, ll),
731
+ e.value.style.layout.correlation.show ? (s(), i("g", ol, [
732
+ (s(!0), i(N, null, W(C.value, (t, o) => (s(), i("line", {
733
+ x1: t.correlation.x1,
734
+ x2: t.correlation.x2,
735
+ y1: t.correlation.y1,
736
+ y2: t.correlation.y2,
737
+ "stroke-dasharray": e.value.style.layout.correlation.strokeDasharray,
738
+ stroke: t.color,
739
+ "stroke-width": e.value.style.layout.correlation.strokeWidth,
740
+ "clip-path": `url(#clip_path_${$.value})`
741
+ }, null, 8, sl))), 256)),
742
+ (s(!0), i(N, null, W(C.value, (t, o) => (s(), i("g", null, [
743
+ e.value.style.layout.correlation.label.show ? (s(), i("text", {
744
+ key: 0,
745
+ x: t.label.x,
746
+ y: t.label.y,
747
+ fill: e.value.style.layout.correlation.label.useSerieColor ? t.color : e.value.style.layout.correlation.label.color,
748
+ "font-size": e.value.style.layout.correlation.label.fontSize,
749
+ "font-weight": e.value.style.layout.correlation.label.bold ? "bold" : "normal"
750
+ }, w(Number(t.correlation.coefficient.toFixed(e.value.style.layout.correlation.label.roundingValue)).toLocaleString()), 9, ul)) : c("", !0)
751
+ ]))), 256))
752
+ ])) : c("", !0),
753
+ B(l.$slots, "svg", { svg: M.value }, void 0, !0)
754
+ ], 14, gt)) : c("", !0),
755
+ J.value ? c("", !0) : (s(), U(dt, {
756
+ key: 3,
757
+ config: {
758
+ type: "quadrant",
759
+ style: {
760
+ backgroundColor: e.value.style.backgroundColor,
761
+ quadrant: {
762
+ grid: {
763
+ color: e.value.style.layout.axis.stroke
764
+ },
765
+ plots: {
766
+ color: e.value.style.layout.axis.stroke,
767
+ radius: 1
768
+ }
769
+ }
770
+ }
771
+ }
772
+ }, null, 8, ["config"])),
773
+ y("div", {
774
+ ref_key: "chartLegend",
775
+ ref: pe
776
+ }, [
777
+ e.value.style.legend.show ? (s(), U(yt, {
778
+ key: 0,
779
+ legendSet: D.value,
780
+ config: Oe.value,
781
+ onClickMarker: r[0] || (r[0] = ({ legend: t }) => we(t.id))
782
+ }, {
783
+ item: _(({ legend: t }) => [
784
+ y("div", {
785
+ onClick: (o) => t.segregate(),
786
+ style: X(`opacity:${p.value.includes(t.id) ? 0.5 : 1}`)
787
+ }, w(t.name), 13, il)
788
+ ]),
789
+ _: 1
790
+ }, 8, ["legendSet", "config"])) : B(l.$slots, "legend", {
791
+ key: 1,
792
+ legend: D.value
793
+ }, void 0, !0)
794
+ ], 512),
795
+ te(vt, {
796
+ show: I.value.showTooltip && le.value,
797
+ backgroundColor: e.value.style.tooltip.backgroundColor,
798
+ color: e.value.style.tooltip.color,
799
+ borderRadius: e.value.style.tooltip.borderRadius,
800
+ borderColor: e.value.style.tooltip.borderColor,
801
+ borderWidth: e.value.style.tooltip.borderWidth,
802
+ fontSize: e.value.style.tooltip.fontSize,
803
+ backgroundOpacity: e.value.style.tooltip.backgroundOpacity,
804
+ parent: R.value,
805
+ content: ae.value,
806
+ isCustom: e.value.style.tooltip.customFormat && typeof e.value.style.tooltip.customFormat == "function"
807
+ }, {
808
+ "tooltip-before": _(() => [
809
+ B(l.$slots, "tooltip-before", ne(ve({ ...se.value })), void 0, !0)
810
+ ]),
811
+ "tooltip-after": _(() => [
812
+ B(l.$slots, "tooltip-after", ne(ve({ ...se.value })), void 0, !0)
813
+ ]),
814
+ default: _(() => [
815
+ e.value.style.tooltip.showShape ? (s(), i("div", rl, [
816
+ (s(), i("svg", nl, [
817
+ te(Ae, {
818
+ shape: v.value.shape,
819
+ color: v.value.color,
820
+ plot: { x: 10, y: 10 },
821
+ radius: 7
822
+ }, null, 8, ["shape", "color"])
823
+ ]))
824
+ ])) : c("", !0)
825
+ ]),
826
+ _: 3
827
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "parent", "content", "isCustom"]),
828
+ J.value ? (s(), U(ht, {
829
+ key: 4,
830
+ hideDetails: "",
831
+ config: {
832
+ open: I.value.showTable,
833
+ maxHeight: 1e4,
834
+ body: {
835
+ backgroundColor: e.value.style.backgroundColor,
836
+ color: e.value.style.color
837
+ },
838
+ head: {
839
+ backgroundColor: e.value.style.backgroundColor,
840
+ color: e.value.style.color
841
+ }
842
+ }
843
+ }, {
844
+ content: _(() => [
845
+ te(ct, {
846
+ colNames: Z.value.colNames,
847
+ head: Z.value.head,
848
+ body: Z.value.body,
849
+ config: Z.value.config,
850
+ title: `${e.value.style.title.text}${e.value.style.title.subtitle.text ? ` : ${e.value.style.title.subtitle.text}` : ""}`,
851
+ onClose: r[1] || (r[1] = (t) => I.value.showTable = !1)
852
+ }, {
853
+ th: _(({ th: t }) => [
854
+ Ge(w(t), 1)
855
+ ]),
856
+ td: _(({ td: t }) => [
857
+ t.shape ? (s(), i("div", vl, [
858
+ y("span", null, w(t.content), 1)
859
+ ])) : (s(), i("div", {
860
+ key: 1,
861
+ innerHTML: t
862
+ }, null, 8, yl))
863
+ ]),
864
+ _: 1
865
+ }, 8, ["colNames", "head", "body", "config", "title"])
866
+ ]),
867
+ _: 1
868
+ }, 8, ["config"])) : c("", !0)
869
+ ], 14, ft));
870
+ }
871
+ }, Cl = /* @__PURE__ */ pt(cl, [["__scopeId", "data-v-134a7dfd"]]);
872
+ export {
873
+ Cl as default
874
+ };