vue-data-ui 3.4.9 → 3.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +114 -37
  2. package/dist/{ColorPicker-J5wOPCeB.js → ColorPicker-ChuwChMo.js} +58 -56
  3. package/dist/{NonSvgPenAndPaper-C7TRn0_3.js → NonSvgPenAndPaper-DVgKKLIf.js} +1 -1
  4. package/dist/{PackageVersion-CTUqGqWV.js → PackageVersion-DQvyATVa.js} +1 -1
  5. package/dist/PenAndPaper-SZQIAgkg.js +388 -0
  6. package/dist/{Title-l36lOBMx.js → Title-isbiM8i8.js} +1 -1
  7. package/dist/components/vue-ui-3d-bar.js +1 -1
  8. package/dist/components/vue-ui-accordion.js +1 -1
  9. package/dist/components/vue-ui-age-pyramid.js +1 -1
  10. package/dist/components/vue-ui-annotator.js +1 -1
  11. package/dist/components/vue-ui-bullet.js +1 -1
  12. package/dist/components/vue-ui-candlestick.js +1 -1
  13. package/dist/components/vue-ui-carousel-table.js +1 -1
  14. package/dist/components/vue-ui-chestnut.js +1 -1
  15. package/dist/components/vue-ui-chord.js +1 -1
  16. package/dist/components/vue-ui-circle-pack.js +1 -1
  17. package/dist/components/vue-ui-cursor.js +1 -1
  18. package/dist/components/vue-ui-dashboard.js +1 -1
  19. package/dist/components/vue-ui-digits.js +1 -1
  20. package/dist/components/vue-ui-donut-evolution.js +1 -1
  21. package/dist/components/vue-ui-donut.js +1 -1
  22. package/dist/components/vue-ui-dumbbell.js +1 -1
  23. package/dist/components/vue-ui-flow.js +1 -1
  24. package/dist/components/vue-ui-funnel.js +1 -1
  25. package/dist/components/vue-ui-galaxy.js +1 -1
  26. package/dist/components/vue-ui-gauge.js +1 -1
  27. package/dist/components/vue-ui-gizmo.js +1 -1
  28. package/dist/components/vue-ui-heatmap.js +1 -1
  29. package/dist/components/vue-ui-history-plot.js +1 -1
  30. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  31. package/dist/components/vue-ui-kpi.js +1 -1
  32. package/dist/components/vue-ui-mini-loader.js +1 -1
  33. package/dist/components/vue-ui-molecule.js +1 -1
  34. package/dist/components/vue-ui-mood-radar.js +1 -1
  35. package/dist/components/vue-ui-nested-donuts.js +1 -1
  36. package/dist/components/vue-ui-onion.js +1 -1
  37. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  38. package/dist/components/vue-ui-quadrant.js +1 -1
  39. package/dist/components/vue-ui-quick-chart.js +1 -1
  40. package/dist/components/vue-ui-radar.js +1 -1
  41. package/dist/components/vue-ui-rating.js +1 -1
  42. package/dist/components/vue-ui-relation-circle.js +1 -1
  43. package/dist/components/vue-ui-ridgeline.js +1 -1
  44. package/dist/components/vue-ui-rings.js +1 -1
  45. package/dist/components/vue-ui-scatter.js +1 -1
  46. package/dist/components/vue-ui-skeleton.js +1 -1
  47. package/dist/components/vue-ui-smiley.js +1 -1
  48. package/dist/components/vue-ui-spark-trend.js +1 -1
  49. package/dist/components/vue-ui-sparkbar.js +1 -1
  50. package/dist/components/vue-ui-sparkgauge.js +1 -1
  51. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  52. package/dist/components/vue-ui-sparkline.js +1 -1
  53. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  54. package/dist/components/vue-ui-stackbar.js +1 -1
  55. package/dist/components/vue-ui-strip-plot.js +1 -1
  56. package/dist/components/vue-ui-table-heatmap.js +1 -1
  57. package/dist/components/vue-ui-table-sparkline.js +1 -1
  58. package/dist/components/vue-ui-table.js +1 -1
  59. package/dist/components/vue-ui-thermometer.js +1 -1
  60. package/dist/components/vue-ui-timer.js +1 -1
  61. package/dist/components/vue-ui-tiremarks.js +1 -1
  62. package/dist/components/vue-ui-treemap.js +1 -1
  63. package/dist/components/vue-ui-vertical-bar.js +1 -1
  64. package/dist/components/vue-ui-waffle.js +1 -1
  65. package/dist/components/vue-ui-wheel.js +1 -1
  66. package/dist/components/vue-ui-word-cloud.js +1 -1
  67. package/dist/components/vue-ui-world.js +1 -1
  68. package/dist/components/vue-ui-xy-canvas.js +1 -1
  69. package/dist/components/vue-ui-xy.js +1 -1
  70. package/dist/style.css +1 -1
  71. package/dist/types/vue-data-ui.d.ts +17 -8
  72. package/dist/{useNestedProp-BjZe1Y85.js → useNestedProp-DjGXw6S9.js} +22 -8
  73. package/dist/{vue-data-ui-DjxWWa78.js → vue-data-ui-B_RxfmEm.js} +113 -107
  74. package/dist/vue-data-ui.js +64 -64
  75. package/dist/{vue-ui-3d-bar-CLE7f9pl.js → vue-ui-3d-bar-CMNYyVa2.js} +454 -434
  76. package/dist/{vue-ui-accordion-CZ0thhxa.js → vue-ui-accordion-CqhVCfc2.js} +1 -1
  77. package/dist/{vue-ui-age-pyramid-D73uIOPm.js → vue-ui-age-pyramid-Vqa9iYXE.js} +180 -160
  78. package/dist/{vue-ui-annotator-BylDgUVb.js → vue-ui-annotator-nNv10fBm.js} +3 -3
  79. package/dist/{vue-ui-bullet-Bybo0xK2.js → vue-ui-bullet-BWEBeYV5.js} +190 -170
  80. package/dist/{vue-ui-candlestick-D_FyMdqH.js → vue-ui-candlestick-BoLzL0g1.js} +201 -181
  81. package/dist/{vue-ui-carousel-table-BvMlNdVo.js → vue-ui-carousel-table-Bi6wvUUU.js} +2 -2
  82. package/dist/{vue-ui-chestnut-DA0g0bDV.js → vue-ui-chestnut-BGz1TLXG.js} +375 -355
  83. package/dist/vue-ui-chord-CebhS7ln.js +1153 -0
  84. package/dist/{vue-ui-circle-pack-BPDm-ro5.js → vue-ui-circle-pack-7PJVyKjp.js} +289 -269
  85. package/dist/{vue-ui-cursor-ik59bfC4.js → vue-ui-cursor-qYLAwvzn.js} +1 -1
  86. package/dist/vue-ui-dashboard-DcmMvhgM.js +432 -0
  87. package/dist/{vue-ui-digits-ByNNcWXi.js → vue-ui-digits-DyE8eU1m.js} +1 -1
  88. package/dist/vue-ui-donut-CxZcJFTo.js +1681 -0
  89. package/dist/{vue-ui-donut-evolution-Ca3Svr0B.js → vue-ui-donut-evolution-BVYL-BUJ.js} +480 -444
  90. package/dist/{vue-ui-dumbbell-CxCE2luV.js → vue-ui-dumbbell-QxZn86A3.js} +210 -190
  91. package/dist/{vue-ui-flow-DEvwXd4W.js → vue-ui-flow-DEI5LRch.js} +339 -319
  92. package/dist/{vue-ui-funnel-Bgcx7xia.js → vue-ui-funnel-B_A5orFg.js} +218 -198
  93. package/dist/{vue-ui-galaxy-BWr1EMob.js → vue-ui-galaxy-CUoDRr-O.js} +313 -277
  94. package/dist/{vue-ui-gauge-DQricvo2.js → vue-ui-gauge-46tSRZN5.js} +311 -291
  95. package/dist/{vue-ui-gizmo-C-fKe3io.js → vue-ui-gizmo-BOgbsXao.js} +2 -2
  96. package/dist/{vue-ui-heatmap-B-o_i7Hu.js → vue-ui-heatmap-DKKjl1A2.js} +303 -283
  97. package/dist/{vue-ui-history-plot-DzQ9DPUJ.js → vue-ui-history-plot-C6p_aThr.js} +478 -442
  98. package/dist/{vue-ui-kpi-BGGff8LM.js → vue-ui-kpi-B1yJ83aF.js} +2 -2
  99. package/dist/{vue-ui-mini-loader-CSF-7TJL.js → vue-ui-mini-loader-BudcNBg-.js} +1 -1
  100. package/dist/{vue-ui-molecule-I2OhrCR2.js → vue-ui-molecule-L90GnHee.js} +156 -136
  101. package/dist/{vue-ui-mood-radar-BAT7kZUy.js → vue-ui-mood-radar-Dhigm5rw.js} +266 -246
  102. package/dist/{vue-ui-nested-donuts-CjhJDAQi.js → vue-ui-nested-donuts-D0MCLs5n.js} +597 -557
  103. package/dist/vue-ui-onion-B7yPJ3gL.js +915 -0
  104. package/dist/vue-ui-parallel-coordinate-plot-DY21ivNe.js +1051 -0
  105. package/dist/{vue-ui-quadrant-DGnasrCR.js → vue-ui-quadrant-b0vMRaq-.js} +532 -495
  106. package/dist/{vue-ui-quick-chart-Cam_sWet.js → vue-ui-quick-chart-VK2EN7sh.js} +288 -268
  107. package/dist/{vue-ui-radar-DNI9WI2R.js → vue-ui-radar-B5Vkoz9M.js} +412 -373
  108. package/dist/{vue-ui-rating-CiMoFM_c.js → vue-ui-rating-BH4DW1ZY.js} +1 -1
  109. package/dist/{vue-ui-relation-circle-Dj1jhcsl.js → vue-ui-relation-circle-XHbE-ZUX.js} +228 -208
  110. package/dist/{vue-ui-ridgeline-adIls6bj.js → vue-ui-ridgeline-CAMNq-p_.js} +517 -481
  111. package/dist/vue-ui-rings-ImGOqm_J.js +855 -0
  112. package/dist/vue-ui-scatter-CterNJYe.js +1590 -0
  113. package/dist/{vue-ui-skeleton-DUdI2uOO.js → vue-ui-skeleton-CykXHWj-.js} +2 -2
  114. package/dist/{vue-ui-smiley-sGFRbn31.js → vue-ui-smiley-DnGm6qrK.js} +1 -1
  115. package/dist/{vue-ui-spark-trend-DxpRfUJz.js → vue-ui-spark-trend-N1AsNQJA.js} +2 -2
  116. package/dist/{vue-ui-sparkbar-B44oER5n.js → vue-ui-sparkbar-Bvsi5DTT.js} +2 -2
  117. package/dist/{vue-ui-sparkgauge-ix12NZ7M.js → vue-ui-sparkgauge-DyJmWCWT.js} +2 -2
  118. package/dist/{vue-ui-sparkhistogram-Cs-QDYBR.js → vue-ui-sparkhistogram-5eKrkmSb.js} +143 -140
  119. package/dist/{vue-ui-sparkline-Cb8ZmyUq.js → vue-ui-sparkline-ChKAzlVq.js} +2 -2
  120. package/dist/vue-ui-sparkstackbar-BXNy6nuw.js +441 -0
  121. package/dist/vue-ui-stackbar-1IwvUYBO.js +1827 -0
  122. package/dist/{vue-ui-strip-plot-BjG-Jxnb.js → vue-ui-strip-plot-B1wGxP8-.js} +245 -225
  123. package/dist/{vue-ui-table-DdBdLrAL.js → vue-ui-table-DSsIrT4L.js} +3 -3
  124. package/dist/{vue-ui-table-heatmap-BqCEBoUf.js → vue-ui-table-heatmap-DXFHy7-E.js} +1 -1
  125. package/dist/{vue-ui-table-sparkline-EpCo2Be5.js → vue-ui-table-sparkline-DpqY_4ay.js} +2 -2
  126. package/dist/vue-ui-thermometer-CMKvSA8p.js +584 -0
  127. package/dist/{vue-ui-timer-Br3wp8hG.js → vue-ui-timer-BpdCY_wg.js} +3 -3
  128. package/dist/vue-ui-tiremarks-CNipzVli.js +450 -0
  129. package/dist/vue-ui-treemap-DPE8SY0_.js +1330 -0
  130. package/dist/{vue-ui-vertical-bar-yfbEfLqy.js → vue-ui-vertical-bar-ZU1GCbX0.js} +484 -448
  131. package/dist/{vue-ui-waffle-m-9sqQik.js → vue-ui-waffle-z7nuSuSV.js} +398 -362
  132. package/dist/vue-ui-wheel-DLRoRjeM.js +663 -0
  133. package/dist/{vue-ui-word-cloud-vNwswYZD.js → vue-ui-word-cloud-D2r5E3pP.js} +248 -228
  134. package/dist/{vue-ui-world-BsCNyZy_.js → vue-ui-world-goXYnTyM.js} +287 -267
  135. package/dist/{vue-ui-xy-CIrw1lWQ.js → vue-ui-xy-NDDbNbds.js} +1263 -1227
  136. package/dist/{vue-ui-xy-canvas-DXnLFwW3.js → vue-ui-xy-canvas-2a6NlQe3.js} +338 -322
  137. package/package.json +4 -4
  138. package/dist/PenAndPaper-DSvu9dwa.js +0 -373
  139. package/dist/vue-ui-chord-CDgzolI-.js +0 -1133
  140. package/dist/vue-ui-dashboard-CeJwbiON.js +0 -412
  141. package/dist/vue-ui-donut-DjQXHBJE.js +0 -1645
  142. package/dist/vue-ui-onion-DTY2p87s.js +0 -873
  143. package/dist/vue-ui-parallel-coordinate-plot-C8aWTcNn.js +0 -1014
  144. package/dist/vue-ui-rings-CnTMFK6R.js +0 -813
  145. package/dist/vue-ui-scatter-fzR2c0St.js +0 -1554
  146. package/dist/vue-ui-sparkstackbar-BiRZ51OU.js +0 -424
  147. package/dist/vue-ui-stackbar-DubS6Pg8.js +0 -1708
  148. package/dist/vue-ui-thermometer-DTnfnf9z.js +0 -564
  149. package/dist/vue-ui-tiremarks-CrC_tlIx.js +0 -430
  150. package/dist/vue-ui-treemap-kyuyi2ES.js +0 -1294
  151. package/dist/vue-ui-wheel-BasM7FWt.js +0 -643
@@ -1,1554 +0,0 @@
1
- import { defineAsyncComponent as ne, computed as T, ref as M, toRefs as hl, watch as ze, shallowRef as Bt, onMounted as pl, onBeforeUnmount as fl, createElementBlock as y, openBlock as r, unref as c, normalizeStyle as ue, normalizeClass as Tt, createBlock as le, createCommentVNode as x, createElementVNode as w, createVNode as _e, createSlots as zt, withCtx as W, renderSlot as R, normalizeProps as pe, guardReactiveProps as fe, Fragment as Z, renderList as J, toDisplayString as G, Teleport as gl, resolveDynamicComponent as ml, mergeProps as xl, createTextVNode as Pt, nextTick as bl } from "vue";
2
- import { c as kl, t as wl, b as $l, p as ye, o as Ot, f as Qe, e as _l, g as Dt, aa as Ml, h as Je, ac as Cl, z as Sl, s as Pe, X as Al, ab as Ll, a as ie, x as q, d as K, P as Bl, Q as Tl, G as zl, H as Pl } from "./lib-C_mNZmhD.js";
3
- import { t as Ol, u as Dl } from "./useResponsive-DfdjqQps.js";
4
- import { u as El, a as Et } from "./useNestedProp-BjZe1Y85.js";
5
- import { u as Fl, B as Wl } from "./BaseScanner-BgWxam9d.js";
6
- import { u as Nl } from "./usePrinter-DTzqpYKF.js";
7
- import { u as Il } from "./useSvgExport-DrjCWun4.js";
8
- import { u as Xl } from "./useUserOptionState-BIvW1Kz7.js";
9
- import { u as Yl } from "./useChartAccessibility-9icAAmYg.js";
10
- import { t as Rl } from "./themes-AUNCOb2G.js";
11
- import jl from "./Legend-G6GMcdAc.js";
12
- import Ul from "./Title-l36lOBMx.js";
13
- import { _ as Ke } from "./Shape-CNXKB8O0.js";
14
- import Vl from "./img-BecE5qXd.js";
15
- import { _ as Gl } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
- const ql = ["id"], Hl = ["id"], Zl = ["xmlns", "viewBox"], Ql = ["width", "height"], Jl = { key: 1 }, Kl = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ea = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], ta = { key: 2 }, la = ["id"], aa = ["stop-color"], oa = ["stop-color"], sa = ["id"], na = ["stop-color"], ua = ["stop-color"], ia = ["x", "y", "width", "height", "fill", "stroke", "stroke-width", "rx"], ra = ["x", "y", "width", "height", "onMouseenter"], va = {
17
- key: 2,
18
- style: { "pointer-events": "none" }
19
- }, ya = ["x", "y", "width", "height", "fill", "fill-opacity"], ca = ["x1", "x2", "y2", "stroke", "stroke-dasharray", "stroke-width"], da = ["x1", "x2", "y2", "stroke", "stroke-dasharray", "stroke-width"], ha = ["x", "y", "height", "width", "fill", "stroke", "stroke-width", "rx"], pa = ["x", "y", "width", "height", "onMouseenter"], fa = {
20
- key: 2,
21
- style: { "pointer-events": "none" }
22
- }, ga = ["x", "y", "width", "height", "fill", "fill-opacity"], ma = ["x1", "x2", "y1", "y2", "stroke", "stroke-dasharray", "stroke-width"], xa = ["x1", "x2", "y1", "y2", "stroke", "stroke-dasharray", "stroke-width"], ba = {
23
- key: 0,
24
- style: { "pointer-events": "none" }
25
- }, ka = ["d", "stroke", "stroke-width"], wa = ["d", "stroke", "stroke-width"], $a = ["d", "stroke", "stroke-width"], _a = ["d", "stroke", "stroke-width"], Ma = { key: 3 }, Ca = ["points", "fill", "stroke-width", "stroke-dasharray", "stroke"], Sa = { key: 0 }, Aa = ["cx", "cy", "r", "fill", "stroke", "stroke-width", "onMouseover", "onMouseleave", "onClick"], La = { key: 1 }, Ba = ["clip-path"], Ta = ["d", "fill", "stroke", "stroke-width", "stroke-opacity"], za = {
26
- key: 0,
27
- style: { "pointer-events": "none" }
28
- }, Pa = ["x", "y", "width", "height"], Oa = {
29
- key: 6,
30
- style: { "pointer-events": "none !important" }
31
- }, Da = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], Ea = ["x1", "x2", "y1", "y2", "stroke", "stroke-width", "stroke-dasharray"], Fa = ["x", "y", "font-size", "fill", "font-weight", "text-anchor"], Wa = ["x", "y", "font-size", "fill", "font-weight"], Na = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], Ia = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], Xa = ["x", "y", "font-size", "fill", "font-weight", "text-anchor"], Ya = ["id", "transform", "font-size", "font-weight", "fill"], Ra = ["font-size", "fill", "transform"], ja = ["transform", "font-size", "fill"], Ua = ["x", "y", "font-size", "fill"], Va = ["x", "y", "font-size", "fill"], Ga = ["font-size", "font-weight", "fill", "x", "y"], qa = ["id"], Ha = ["x", "y", "width", "height"], Za = {
32
- key: 11,
33
- style: { pointerEvents: "none" }
34
- }, Qa = ["x1", "x2", "y1", "y2", "stroke-dasharray", "stroke", "stroke-width", "clip-path"], Ja = ["x", "y", "fill", "font-size", "font-weight"], Ka = {
35
- key: 4,
36
- class: "vue-data-ui-watermark"
37
- }, eo = ["id"], to = ["onClick"], lo = {
38
- key: 0,
39
- style: { width: "100%", display: "flex", "align-items": "center", "justify-content": "center" }
40
- }, ao = {
41
- viewBox: "0 0 20 20",
42
- height: "20",
43
- width: "20",
44
- style: { overflow: "hidden", background: "transparent" }
45
- }, oo = { key: 0 }, so = ["innerHTML"], no = {
46
- __name: "vue-ui-scatter",
47
- props: {
48
- config: {
49
- type: Object,
50
- default() {
51
- return {};
52
- }
53
- },
54
- dataset: {
55
- type: Array,
56
- default() {
57
- return [];
58
- }
59
- }
60
- },
61
- setup(Ft, { expose: Wt }) {
62
- const Nt = ne(() => import("./Tooltip-oWCO1HKy.js")), It = ne(() => import("./BaseIcon-BmMbm4d0.js")), Xt = ne(() => import("./vue-ui-accordion-CZ0thhxa.js")), Yt = ne(() => import("./DataTable-BT7VF2ua.js")), Rt = ne(() => import("./PenAndPaper-DSvu9dwa.js")), jt = ne(() => import("./UserOptions-CGnQt6Fd.js")), Ut = ne(() => import("./PackageVersion-CTUqGqWV.js")), Vt = ne(() => import("./BaseDraggableDialog-ymf2sfB8.js")), { vue_ui_scatter: Gt } = El(), ee = Ft, et = T(() => !!ee.dataset && ee.dataset.length), N = M(kl()), Oe = M(!1), De = M(""), tt = M(0), te = M(null), lt = M(null), at = M(null), ot = M(null), st = M(null), nt = M(0), ut = M(0), it = M(0), I = M([]), rt = M(!1), ge = M(null), me = M(null), xe = M(null), Ee = M(null), Fe = M(null), qt = M(null), Ht = M(null), We = M(null), e = M(Ye());
63
- function Zt(l = 100, s = 0.8, t = {}) {
64
- const { meanX: o = 0, sdX: a = 1, meanY: u = 0, sdY: i = 1, seed: p } = t;
65
- let v = (p ?? Math.floor(Math.random() * 2 ** 31)) >>> 0;
66
- const g = () => (v = v * 1664525 + 1013904223 >>> 0, v / 2 ** 32), L = () => {
67
- let m = 0, E = 0;
68
- for (; m === 0; ) m = g();
69
- for (; E === 0; ) E = g();
70
- return Math.sqrt(-2 * Math.log(m)) * Math.cos(2 * Math.PI * E);
71
- }, d = l / 2, _ = Array.from({ length: d }, L), D = Array.from({ length: d }, L), C = (m) => m.reduce((E, $e) => E + $e, 0) / m.length, z = C(_), X = C(D);
72
- for (let m = 0; m < d; m += 1)
73
- _[m] -= z, D[m] -= X;
74
- const B = (m, E) => m.reduce(($e, Te, Ze) => $e + Te * E[Ze], 0), $ = (m) => B(m, m), h = B(D, _) / $(_), A = D.map((m, E) => m - h * _[E]), V = $(_) / d, Q = $(A) / d, se = Math.sqrt((1 - s * s) * V / Q), j = _.map((m, E) => s * m + se * A[E]), ve = _.concat(_.map((m) => -m)), He = j.concat(j.map((m) => -m)), ke = (m) => Math.sqrt($(m) / m.length), de = (m, E, $e) => {
75
- const Te = ke(m);
76
- return m.map((Ze) => $e + (Te ? Ze / Te * E : 0));
77
- }, he = de(ve, a, o), we = de(He, i, u);
78
- for (let m = he.length - 1; m > 0; m -= 1) {
79
- const E = Math.floor(g() * (m + 1));
80
- [he[m], he[E]] = [he[E], he[m]], [we[m], we[E]] = [we[E], we[m]];
81
- }
82
- return he.map((m, E) => ({ x: m, y: we[E] }));
83
- }
84
- const { loading: vt, FINAL_DATASET: Ne, manualLoading: Ie } = Fl({
85
- ...hl(ee),
86
- FINAL_CONFIG: e,
87
- prepareConfig: Ye,
88
- skeletonDataset: [
89
- {
90
- name: "",
91
- color: "#999999",
92
- values: Zt(100, 0.5, { seed: 42 })
93
- }
94
- ],
95
- skeletonConfig: wl({
96
- defaultConfig: e.value,
97
- userConfig: {
98
- userOptions: { show: !1 },
99
- table: { show: !1 },
100
- useCssAnimation: !1,
101
- style: {
102
- backgroundColor: "#99999930",
103
- layout: {
104
- axis: {
105
- stroke: "#6A6A6A"
106
- },
107
- correlation: {
108
- label: { show: !1 }
109
- },
110
- dataLabels: {
111
- xAxis: { show: !1 },
112
- yAxis: { show: !1 }
113
- },
114
- marginalBars: {
115
- fill: "#99999960"
116
- },
117
- padding: { top: 12, right: 12, bottom: 12, left: 12 },
118
- plots: {
119
- stroke: "#6A6A6A"
120
- }
121
- },
122
- legend: {
123
- backgroundColor: "transparent"
124
- }
125
- }
126
- }
127
- })
128
- }), { userOptionsVisible: Xe, setUserOptionsVisibility: yt, keepUserOptionState: ct } = Xl({ config: e.value }), { svgRef: Me } = Yl({ config: e.value.style.title });
129
- function Ye() {
130
- const l = Et({
131
- userConfig: ee.config,
132
- defaultConfig: Gt
133
- });
134
- return l.theme ? {
135
- ...Et({
136
- userConfig: Rl.vue_ui_scatter[l.theme] || ee.config,
137
- defaultConfig: l
138
- }),
139
- customPalette: $l[l.theme] || ye
140
- } : l;
141
- }
142
- ze(() => ee.config, (l) => {
143
- vt.value || (e.value = Ye()), Xe.value = !e.value.userOptions.showOnChartHover, ht(), nt.value += 1, ut.value += 1, it.value += 1, H.value.showTable = e.value.table.show, H.value.showTooltip = e.value.style.tooltip.show, dt.value && e.value.usePerformanceMode && console.warn(`VueUiScatter : You are using performance mode
144
-
145
- - downsampling is disabled in this mode, all plots are rendered
146
-
147
- - plot significance is not active in this mode (all plots have the same opacity)
148
-
149
- - Depending on plot density, shapes might not display a border (stroke) to avoid fuzziness
150
-
151
- ℹ️ To remove this warning, set config.debug to false.`);
152
- }, { deep: !0 }), ze(() => ee.dataset, (l) => {
153
- Array.isArray(l) && l.length > 0 && (Ie.value = !1);
154
- }, { deep: !0 });
155
- const ae = Bt(null), ce = Bt(null);
156
- pl(() => {
157
- rt.value = !0, ht();
158
- });
159
- const dt = T(() => !!e.value.debug);
160
- function ht() {
161
- if (Ot(ee.dataset) && (Qe({
162
- componentName: "VueUiScatter",
163
- type: "dataset",
164
- debug: dt.value
165
- }), Ie.value = !0), Ot(ee.dataset) || (Ie.value = e.value.loading), e.value.responsive) {
166
- const l = Ol(() => {
167
- const { width: s, height: t } = Dl({
168
- chart: te.value,
169
- title: e.value.style.title.text ? lt.value : null,
170
- legend: e.value.style.legend.show ? at.value : null,
171
- source: ot.value,
172
- noTitle: st.value
173
- });
174
- requestAnimationFrame(() => {
175
- F.value.width = s, F.value.height = t;
176
- });
177
- });
178
- ae.value && (ce.value && ae.value.unobserve(ce.value), ae.value.disconnect()), ae.value = new ResizeObserver(l), ce.value = te.value.parentNode, ae.value.observe(ce.value);
179
- }
180
- }
181
- fl(() => {
182
- ae.value && (ce.value && ae.value.unobserve(ce.value), ae.value.disconnect());
183
- });
184
- const { isPrinting: pt, isImaging: ft, generatePdf: gt, generateImage: mt } = Nl({
185
- elementId: `vue-ui-scatter_${N.value}`,
186
- fileName: e.value.style.title.text || "vue-ui-scatter",
187
- options: e.value.userOptions.print
188
- }), Qt = T(() => e.value.userOptions.show && !e.value.style.title.text), xt = T(() => _l(e.value.customPalette)), H = M({
189
- showTable: e.value.table.show,
190
- showTooltip: e.value.style.tooltip.show
191
- });
192
- ze(e, () => {
193
- H.value = {
194
- showTable: e.value.table.show,
195
- showTooltip: e.value.style.tooltip.show
196
- };
197
- }, { immediate: !0 });
198
- const F = M({
199
- height: e.value.style.layout.height,
200
- width: e.value.style.layout.width
201
- }), Ce = T(() => e.value.style.layout.marginalBars.show ? e.value.style.layout.marginalBars.size + e.value.style.layout.marginalBars.offset : 0), n = T(() => {
202
- let l = 0, s = 0;
203
- return Fe.value && (l = Fe.value.getBBox().width + 6), We.value && (s = We.value.getBBox().height + 6), {
204
- top: e.value.style.layout.padding.top + Ce.value + e.value.style.layout.dataLabels.yAxis.fontSize * 2,
205
- right: F.value.width - e.value.style.layout.padding.right - Ce.value - 6,
206
- bottom: F.value.height - e.value.style.layout.padding.bottom - s,
207
- left: e.value.style.layout.padding.left + l,
208
- height: F.value.height - e.value.style.layout.padding.top - e.value.style.layout.padding.bottom - Ce.value - s - e.value.style.layout.dataLabels.yAxis.fontSize * 2,
209
- width: F.value.width - e.value.style.layout.padding.left - e.value.style.layout.padding.right - Ce.value - l - 6
210
- };
211
- }), P = T(() => {
212
- Ne.value.forEach((a, u) => {
213
- Dt({
214
- datasetObject: a,
215
- requiredAttributes: ["values"]
216
- }).forEach((i) => {
217
- Qe({
218
- componentName: "VueUiScatter",
219
- type: "datasetSerieAttribute",
220
- property: i,
221
- index: u
222
- });
223
- }), a.values && a.values.forEach((i, p) => {
224
- Dt({
225
- datasetObject: i,
226
- requiredAttributes: ["x", "y"]
227
- }).forEach((v) => {
228
- Qe({
229
- componentName: "VueUiScatter",
230
- type: "datasetSerieAttribute",
231
- property: `values.${v}`,
232
- index: `${u} - ${p}`
233
- });
234
- });
235
- });
236
- });
237
- const l = Math.min(...oe.value.filter((a) => !I.value.includes(a.id)).flatMap((a) => a.values.map((u) => u.x))), s = Math.max(...oe.value.filter((a) => !I.value.includes(a.id)).flatMap((a) => a.values.map((u) => u.x))), t = Math.min(...oe.value.filter((a) => !I.value.includes(a.id)).flatMap((a) => a.values.map((u) => u.y))), o = Math.max(...oe.value.filter((a) => !I.value.includes(a.id)).flatMap((a) => a.values.map((u) => u.y)));
238
- return { xMin: l >= 0 ? 0 : l, xMax: s, yMin: t >= 0 ? 0 : t, yMax: o };
239
- }), O = T(() => ({
240
- x: n.value.left + Math.abs(P.value.xMin) / (P.value.xMax + Math.abs(P.value.xMin)) * n.value.width,
241
- y: n.value.bottom - Math.abs(P.value.yMin) / (P.value.yMax + Math.abs(P.value.yMin)) * n.value.height
242
- })), oe = T(() => Ne.value.map((l, s) => {
243
- const t = `cluster_${N.value}_${s}`;
244
- return {
245
- ...l,
246
- values: Ml({
247
- data: l.values,
248
- threshold: e.value.usePerformanceMode ? l.values.length + 1 : e.value.downsample.threshold
249
- }),
250
- id: t,
251
- color: l.color ? l.color : xt.value[s] || ye[s] || ye[s % ye.length],
252
- opacity: I.value.includes(t) ? 0.5 : 1,
253
- shape: l.shape ?? "circle",
254
- segregate: () => wt(t),
255
- isSegregated: I.value.includes(t)
256
- };
257
- })), Jt = T(() => ({
258
- cy: "scatter-div-legend",
259
- backgroundColor: e.value.style.legend.backgroundColor,
260
- color: e.value.style.legend.color,
261
- fontSize: e.value.style.legend.fontSize,
262
- paddingBottom: 12,
263
- fontWeight: e.value.style.legend.bold ? "bold" : ""
264
- })), Se = T(() => oe.value.map((l, s) => ({
265
- ...l,
266
- plots: l.values.map((t) => ({
267
- x: n.value.left + (t.x + Math.abs(P.value.xMin)) / (P.value.xMax + Math.abs(P.value.xMin)) * n.value.width,
268
- y: n.value.bottom - (t.y + Math.abs(P.value.yMin)) / (P.value.yMax + Math.abs(P.value.yMin)) * n.value.height,
269
- v: {
270
- ...t,
271
- name: t.name || ""
272
- },
273
- clusterName: l.name,
274
- color: l.color ? l.color : xt.value[s] || ye[s] || ye[s % ye.length],
275
- id: `plot_${N.value}_${Math.random()}`,
276
- weight: t.weight ?? e.value.style.layout.plots.radius
277
- }))
278
- })).filter((l) => !I.value.includes(l.id))), U = T(() => {
279
- const s = ({ m: t, b: o, rect: a, verticalX: u = null }) => {
280
- const { left: i, right: p, top: v, bottom: g } = a, L = [], d = ($, h) => {
281
- Number.isFinite($) && Number.isFinite(h) && L.push({ x: $, y: h });
282
- }, _ = ({ x: $, y: h }) => $ >= i - 1e-9 && $ <= p + 1e-9 && h >= v - 1e-9 && h <= g + 1e-9;
283
- u !== null ? u >= i - 1e-9 && u <= p + 1e-9 && (d(u, v), d(u, g)) : Number.isFinite(t) && (d(i, t * i + o), d(p, t * p + o), Math.abs(t) > 1e-9 ? (d((v - o) / t, v), d((g - o) / t, g)) : o >= v - 1e-9 && o <= g + 1e-9 && (d(i, o), d(p, o)));
284
- const D = L.filter(_), C = [];
285
- for (const $ of D)
286
- C.some((h) => Math.abs(h.x - $.x) < 1e-6 && Math.abs(h.y - $.y) < 1e-6) || C.push($);
287
- if (C.length < 2) return null;
288
- let z = C[0], X = C[1], B = 0;
289
- for (let $ = 0; $ < C.length; $ += 1)
290
- for (let h = $ + 1; h < C.length; h += 1) {
291
- const A = C[$].x - C[h].x, V = C[$].y - C[h].y, Q = A * A + V * V;
292
- Q > B && (B = Q, z = C[$], X = C[h]);
293
- }
294
- return { x1: z.x, y1: z.y, x2: X.x, y2: X.y };
295
- };
296
- return Se.value.map((t) => {
297
- const o = t.plots.length, a = t.plots.reduce((h, A) => h + A.x, 0) / o, u = t.plots.reduce((h, A) => h + A.y, 0) / o;
298
- let i = 0, p = 0;
299
- for (const h of t.plots) {
300
- const A = h.x - a, V = h.y - u;
301
- i += A * V, p += A * A;
302
- }
303
- let v, g, L = null;
304
- p < 1e-9 ? (L = a, v = 1 / 0, g = null) : (v = i / p, g = u - v * a);
305
- let d, _;
306
- L !== null ? (d = 1 / 0, _ = null) : (d = v, _ = g);
307
- const D = t.plots.every((h) => h.v && typeof h.v.x == "number" && typeof h.v.y == "number");
308
- let C = NaN;
309
- if (o >= 2) {
310
- let h = 0, A = 0;
311
- D ? (h = t.plots.reduce((j, ve) => j + ve.v.x, 0) / o, A = t.plots.reduce((j, ve) => j + ve.v.y, 0) / o) : (h = a, A = -u);
312
- let V = 0, Q = 0, se = 0;
313
- for (const j of t.plots) {
314
- const ve = D ? j.v.x : j.x, He = D ? j.v.y : -j.y, ke = ve - h, de = He - A;
315
- V += ke * de, Q += ke * ke, se += de * de;
316
- }
317
- if (Q >= 1e-9 && se >= 1e-9) {
318
- const j = V / Math.sqrt(Q * se);
319
- C = Math.max(-1, Math.min(1, j));
320
- }
321
- }
322
- const z = s({ m: d, b: _, rect: n.value, verticalX: L });
323
- if (!z)
324
- return {
325
- ...t,
326
- correlation: null,
327
- label: null,
328
- plots: t.plots.map((h) => ({
329
- ...h,
330
- deviation: 0,
331
- shape: t.shape,
332
- color: Je(t.color)
333
- }))
334
- };
335
- const X = (z.x1 + z.x2) / 2, B = (z.y1 + z.y2) / 2, $ = { x: X, y: B };
336
- return {
337
- ...t,
338
- color: Je(t.color),
339
- correlation: {
340
- ...z,
341
- coefficient: C
342
- },
343
- label: $,
344
- plots: t.plots.map((h) => {
345
- let A, V;
346
- L !== null ? (A = L, V = h.y) : Math.abs(d) < 1e-9 ? (A = h.x, V = _) : (A = (h.x + d * h.y - d * _) / (1 + d * d), V = (d * h.x + d * d * h.y + _) / (1 + d * d));
347
- const Q = h.x - A, se = h.y - V, j = Math.sqrt(Q * Q + se * se);
348
- return {
349
- ...h,
350
- deviation: j,
351
- shape: t.shape,
352
- color: Je(t.color)
353
- };
354
- })
355
- };
356
- });
357
- }), bt = T(() => Math.max(...U.value.flatMap((l) => l.plots.map((s) => Math.abs(s.deviation)))));
358
- function Kt() {
359
- return U.value;
360
- }
361
- function kt(l, s) {
362
- const t = Array.isArray(l) ? l.flatMap((B) => B.plots.map(($) => ({
363
- x: $.x,
364
- y: $.y
365
- }))) : l.plots.map((B) => ({
366
- x: B.x,
367
- y: B.y
368
- }));
369
- let o = 1 / 0, a = -1 / 0, u = 1 / 0, i = -1 / 0;
370
- t.forEach(({ x: B, y: $ }) => {
371
- o = Math.min(o, B), a = Math.max(a, B), u = Math.min(u, $), i = Math.max(i, $);
372
- });
373
- const p = a - o, v = i - u, g = p / s, L = v / s, d = Array(s).fill(0), _ = Array(s).fill(0);
374
- t.forEach(({ x: B, y: $ }) => {
375
- const h = Math.floor((B - o) / g), A = Math.floor(($ - u) / L);
376
- d[h] || (d[h] = 0), _[A] || (_[A] = 0), d[h] += 1, _[A] += 1;
377
- });
378
- const D = [], C = [];
379
- for (let B = 0; B < s; B += 1)
380
- D.push(o + (B + 0.5) * g), C.push(u + (B + 0.5) * L);
381
- const z = Math.max(...d), X = Math.max(..._);
382
- return { x: d, y: _, avgX: D, avgY: C, maxX: z, maxY: X };
383
- }
384
- const b = T(() => e.value.style.layout.marginalBars.tranches), S = T(() => kt(Se.value, b.value)), el = T(() => {
385
- const l = n.value.top - e.value.style.layout.marginalBars.offset, s = n.value.right + e.value.style.layout.marginalBars.offset;
386
- return Se.value.map((t) => {
387
- const o = kt(t, b.value);
388
- return {
389
- coords: o,
390
- dX: Sl(o.avgX.map((a, u) => ({
391
- x: a,
392
- y: l - o.x[u] / o.maxX * e.value.style.layout.marginalBars.size
393
- }))),
394
- dY: Cl(o.avgY.map((a, u) => ({
395
- y: a,
396
- x: s + e.value.style.layout.marginalBars.size * o.y[u] / o.maxY
397
- }))),
398
- color: t.color,
399
- id: t.id
400
- };
401
- });
402
- }), Y = M(void 0), f = M(null), Re = M(null);
403
- function je(l, s) {
404
- Y.value = l.id, f.value = l;
405
- let t = "";
406
- e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: l, seriesIndex: s }), Re.value = {
407
- datapoint: l,
408
- seriesIndex: s,
409
- series: U.value,
410
- config: e.value
411
- };
412
- const o = e.value.style.tooltip.customFormat;
413
- zl(o) && Pl(() => o({
414
- datapoint: l,
415
- seriesIndex: s,
416
- series: U.value,
417
- config: e.value
418
- })) ? De.value = o({
419
- datapoint: l,
420
- seriesIndex: s,
421
- series: U.value,
422
- config: e.value
423
- }) : (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) ? "-" : ie(
424
- e.value.style.layout.plots.selectors.labels.x.formatter,
425
- l.v.x,
426
- K({
427
- p: e.value.style.tooltip.prefix,
428
- v: l.v.x,
429
- s: e.value.style.tooltip.suffix,
430
- r: e.value.style.tooltip.roundingValue
431
- }),
432
- { datapoint: l, seriesIndex: s }
433
- )}</b></div>`, t += `<div>${e.value.style.layout.dataLabels.yAxis.name}: <b>${isNaN(l.v.y) ? "-" : ie(
434
- e.value.style.layout.plots.selectors.labels.y.formatter,
435
- l.v.y,
436
- K({
437
- p: e.value.style.tooltip.prefix,
438
- v: l.v.y,
439
- s: e.value.style.tooltip.suffix,
440
- r: e.value.style.tooltip.roundingValue
441
- }),
442
- { datapoint: l, seriesIndex: s }
443
- )}</b></div>`, t += `${e.value.style.layout.plots.deviation.translation}: <b>${K({
444
- v: l.deviation,
445
- r: e.value.style.layout.plots.deviation.roundingValue
446
- })}</b>`, t += "</div>", De.value = `<div>${t}</div>`), Oe.value = !0;
447
- }
448
- function Ae(l, s) {
449
- e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: l, seriesIndex: s }), Oe.value = !1, Y.value = void 0, f.value = null;
450
- }
451
- function Ue(l, s) {
452
- e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: l, seriesIndex: s });
453
- }
454
- function wt(l) {
455
- I.value.includes(l) ? I.value = I.value.filter((s) => s !== l) : I.value.length < Ne.value.length - 1 && I.value.push(l);
456
- }
457
- function Ve(l = null) {
458
- bl(() => {
459
- const s = ["", 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}`], t = U.value.map((u) => [
460
- u.name,
461
- u.correlation.coefficient,
462
- u.plots.length,
463
- u.plots.map((i) => i.v.x).reduce((i, p) => i + p, 0) / u.plots.length,
464
- u.plots.map((i) => i.v.y).reduce((i, p) => i + p, 0) / u.plots.length
465
- ]), o = [[e.value.style.title.text], [e.value.style.title.subtitle.text], [[""], [""], [""]]].concat([s]).concat(t), a = Bl(o);
466
- l ? l(a) : Tl({ csvContent: a, title: e.value.style.title.text || "vue-ui-heatmap" });
467
- });
468
- }
469
- const Le = T(() => {
470
- const l = [
471
- e.value.table.translations.series,
472
- e.value.table.translations.correlationCoefficient,
473
- e.value.table.translations.nbrPlots,
474
- `${e.value.style.layout.dataLabels.xAxis.name} ${e.value.table.translations.average}`,
475
- `${e.value.style.layout.dataLabels.yAxis.name} ${e.value.table.translations.average}`
476
- ], s = U.value.map((o) => [
477
- {
478
- shape: o.shape,
479
- content: o.name,
480
- color: o.color
481
- },
482
- Number((o.correlation.coefficient ?? 0).toFixed(e.value.table.td.roundingValue)).toLocaleString(),
483
- o.plots.length.toLocaleString(),
484
- Number((o.plots.map((a) => a.v.x ?? 0).reduce((a, u) => a + u, 0) / o.plots.length).toFixed(e.value.table.td.roundingAverage)).toLocaleString(),
485
- Number((o.plots.map((a) => a.v.y ?? 0).reduce((a, u) => a + u, 0) / o.plots.length).toFixed(e.value.table.td.roundingAverage)).toLocaleString()
486
- ]), t = {
487
- th: {
488
- backgroundColor: e.value.table.th.backgroundColor,
489
- color: e.value.table.th.color,
490
- outline: e.value.table.th.outline
491
- },
492
- td: {
493
- backgroundColor: e.value.table.td.backgroundColor,
494
- color: e.value.table.td.color,
495
- outline: e.value.table.td.outline
496
- },
497
- breakpoint: e.value.table.responsiveBreakpoint
498
- };
499
- return { head: l, body: s, config: t, colNames: l };
500
- }), re = M(!1);
501
- function $t(l) {
502
- re.value = l, tt.value += 1;
503
- }
504
- function _t() {
505
- H.value.showTable = !H.value.showTable;
506
- }
507
- function Mt() {
508
- H.value.showTooltip = !H.value.showTooltip;
509
- }
510
- const Be = M(!1);
511
- function Ge() {
512
- Be.value = !Be.value;
513
- }
514
- async function tl({ scale: l = 2 } = {}) {
515
- if (!te.value) return;
516
- const { width: s, height: t } = te.value.getBoundingClientRect(), o = s / t, { imageUri: a, base64: u } = await Vl({ domElement: te.value, base64: !0, img: !0, scale: l });
517
- return {
518
- imageUri: a,
519
- base64: u,
520
- title: e.value.style.title.text,
521
- width: s,
522
- height: t,
523
- aspectRatio: o
524
- };
525
- }
526
- function ll(l) {
527
- ge.value = l, e.value.style.layout.marginalBars.highlighter.highlightBothAxes && (me.value = S.value.y.length - 2 - l);
528
- }
529
- function al(l) {
530
- me.value = l, e.value.style.layout.marginalBars.highlighter.highlightBothAxes && (ge.value = l);
531
- }
532
- function qe() {
533
- ge.value = null, me.value = null;
534
- }
535
- const Ct = {
536
- circle: 1,
537
- square: 1,
538
- diamond: 1,
539
- triangle: 1.2,
540
- star: 1.3,
541
- pentagon: 1.3,
542
- hexagon: 1.3
543
- }, k = (l) => l.toFixed(3);
544
- function ol({ shape: l = "circle", cx: s, cy: t, r: o }) {
545
- if (!e.value.usePerformanceMode) return "";
546
- const a = Ct[l] * o;
547
- switch (l) {
548
- case "circle": {
549
- const u = k(s - a), i = k(t), p = k(s + a), v = k(a);
550
- return `M ${u} ${i} A ${v} ${v} 0 1 0 ${p} ${i} A ${v} ${v} 0 1 0 ${u} ${i} Z`;
551
- }
552
- case "square": {
553
- const u = k(s - a), i = k(t - a), p = k(s + a), v = k(t + a);
554
- return `M ${u} ${i} L ${p} ${i} L ${p} ${v} L ${u} ${v} Z`;
555
- }
556
- case "diamond": {
557
- const u = k(s), i = k(t);
558
- return `M ${u} ${k(t - a)} L ${k(s + a)} ${i} L ${u} ${k(t + a)} L ${k(s - a)} ${i} Z`;
559
- }
560
- case "triangle": {
561
- const u = a * Math.sqrt(3), i = s, p = t - 2 / 3 * u, v = s - a, g = t + 1 / 3 * u, L = s + a, d = g;
562
- return `M ${k(i)} ${k(p)} L ${k(v)} ${k(g)} L ${k(L)} ${k(d)} Z`;
563
- }
564
- case "star": {
565
- const u = a, i = a * 0.5, p = [];
566
- for (let g = 0; g < 10; g += 1) {
567
- const L = (-90 + g * 36) * Math.PI / 180, d = g % 2 === 0 ? u : i;
568
- p.push([s + d * Math.cos(L), t + d * Math.sin(L)]);
569
- }
570
- let v = `M ${k(p[0][0])} ${k(p[0][1])}`;
571
- for (let g = 1; g < p.length; g += 1)
572
- v += ` L ${k(p[g][0])} ${k(p[g][1])}`;
573
- return v + " Z";
574
- }
575
- case "pentagon": {
576
- const i = [];
577
- for (let v = 0; v < 5; v += 1) {
578
- const g = (-90 + v * 72) * Math.PI / 180;
579
- i.push([s + a * Math.cos(g), t + a * Math.sin(g)]);
580
- }
581
- let p = `M ${k(i[0][0])} ${k(i[0][1])}`;
582
- for (let v = 1; v < 5; v += 1) p += ` L ${k(i[v][0])} ${k(i[v][1])}`;
583
- return p + " Z";
584
- }
585
- case "hexagon": {
586
- const i = [];
587
- for (let v = 0; v < 6; v += 1) {
588
- const g = (-60 + v * 60) * Math.PI / 180;
589
- i.push([s + a * Math.cos(g), t + a * Math.sin(g)]);
590
- }
591
- let p = `M ${k(i[0][0])} ${k(i[0][1])}`;
592
- for (let v = 1; v < 6; v += 1) p += ` L ${k(i[v][0])} ${k(i[v][1])}`;
593
- return p + " Z";
594
- }
595
- default: {
596
- const u = k(s - a), i = k(t), p = k(s + a), v = k(a);
597
- return `M ${u} ${i} A ${v} ${v} 0 1 0 ${p} ${i} A ${v} ${v} 0 1 0 ${u} ${i} Z`;
598
- }
599
- }
600
- }
601
- const sl = T(() => {
602
- if (!e.value.usePerformanceMode) return [""];
603
- const { left: l, right: s, top: t, bottom: o } = n.value, a = Math.max(1, (s - l) * (o - t)), u = (d) => d / a * 1e4, i = 2.5, p = 1e3, v = e.value.style.layout.plots.stroke, g = e.value.style.layout.plots.strokeWidth, L = e.value.style.layout.plots.opacity;
604
- return U.value.map((d) => {
605
- const _ = [];
606
- for (const C of d.plots) {
607
- const z = C.x, X = C.y;
608
- if (z < l || z > s || X < t || X > o) continue;
609
- const B = Math.max(e.value.style.layout.plots.radius, C.weight);
610
- _.push(ol({
611
- shape: d.shape || "circle",
612
- cx: z,
613
- cy: X,
614
- r: B
615
- }));
616
- }
617
- if (!_.length) return null;
618
- const D = u(d.plots.length) > i || d.plots.length > p;
619
- return {
620
- id: d.id,
621
- d: _.join(""),
622
- fill: Pe(d.color, L * 100),
623
- stroke: D ? "none" : v,
624
- strokeWidth: D ? 0 : g,
625
- strokeOpacity: 1
626
- };
627
- }).filter(Boolean);
628
- });
629
- function nl() {
630
- return e.value.usePerformanceMode ? (l) => {
631
- const s = Me.value;
632
- if (!s) return;
633
- const t = s.createSVGPoint();
634
- t.x = l.clientX, t.y = l.clientY;
635
- const o = s.getScreenCTM();
636
- if (!o) return;
637
- const a = o.inverse(), u = t.matrixTransform(a), i = 8, p = i * i;
638
- let v = null, g = 1 / 0, L = -1;
639
- if (U.value.forEach((d, _) => {
640
- d.plots.forEach((D) => {
641
- const C = D.x - u.x, z = D.y - u.y, X = C * C + z * z;
642
- X <= p && X < g && (g = X, v = D, L = _);
643
- });
644
- }), v)
645
- Y.value !== v.id && (Y.value = v.id, je(v, L));
646
- else if (Y.value) {
647
- const d = f.value;
648
- Y.value = void 0, Ae(d, L);
649
- }
650
- } : () => null;
651
- }
652
- const St = nl();
653
- function ul() {
654
- if (Y.value) {
655
- const l = f.value;
656
- Y.value = void 0, Ae(l, null);
657
- }
658
- }
659
- function il(l) {
660
- const s = f.value;
661
- if (s) {
662
- const t = U.value.findIndex((o) => o.id === s.clusterId);
663
- Ue(s, t >= 0 ? t : 0);
664
- }
665
- }
666
- const be = T(() => {
667
- const l = e.value.table.useDialog && !e.value.table.show, s = H.value.showTable;
668
- return {
669
- component: l ? Vt : Xt,
670
- title: `${e.value.style.title.text}${e.value.style.title.subtitle.text ? `: ${e.value.style.title.subtitle.text}` : ""}`,
671
- props: l ? {
672
- backgroundColor: e.value.table.th.backgroundColor,
673
- color: e.value.table.th.color,
674
- headerColor: e.value.table.th.color,
675
- headerBg: e.value.table.th.backgroundColor,
676
- isFullscreen: re.value,
677
- fullscreenParent: te.value,
678
- forcedWidth: Math.min(800, window.innerWidth * 0.8)
679
- } : {
680
- hideDetails: !0,
681
- config: {
682
- open: s,
683
- maxHeight: 1e4,
684
- body: {
685
- backgroundColor: e.value.style.backgroundColor,
686
- color: e.value.style.color
687
- },
688
- head: {
689
- backgroundColor: e.value.style.backgroundColor,
690
- color: e.value.style.color
691
- }
692
- }
693
- }
694
- };
695
- });
696
- ze(() => H.value.showTable, (l) => {
697
- e.value.table.show || (l && e.value.table.useDialog && xe.value ? xe.value.open() : "close" in xe.value && xe.value.close());
698
- });
699
- function At() {
700
- H.value.showTable = !1, Ee.value && Ee.value.setTableIconState(!1);
701
- }
702
- const rl = T(() => e.value.style.backgroundColor), vl = T(() => e.value.style.legend), yl = T(() => e.value.style.title), { exportSvg: cl, getSvg: dl } = Il({
703
- svg: Me,
704
- title: yl,
705
- legend: vl,
706
- legendItems: oe,
707
- backgroundColor: rl
708
- });
709
- async function Lt({ isCb: l }) {
710
- if (l) {
711
- const { blob: s, url: t, text: o, dataUrl: a } = await dl();
712
- e.value.userOptions.callbacks.svg({ blob: s, url: t, text: o, dataUrl: a });
713
- } else
714
- cl();
715
- }
716
- return Wt({
717
- getData: Kt,
718
- getImage: tl,
719
- generatePdf: gt,
720
- generateCsv: Ve,
721
- generateImage: mt,
722
- generateSvg: Lt,
723
- toggleTable: _t,
724
- toggleTooltip: Mt,
725
- toggleAnnotator: Ge,
726
- toggleFullscreen: $t
727
- }), (l, s) => (r(), y("div", {
728
- class: Tt(`vue-data-ui-component vue-ui-scatter ${re.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
729
- ref_key: "scatterChart",
730
- ref: te,
731
- id: `vue-ui-scatter_${N.value}`,
732
- style: ue(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`),
733
- onMouseenter: s[5] || (s[5] = () => c(yt)(!0)),
734
- onMouseleave: s[6] || (s[6] = () => c(yt)(!1))
735
- }, [
736
- e.value.userOptions.buttons.annotator ? (r(), le(c(Rt), {
737
- key: 0,
738
- svgRef: c(Me),
739
- backgroundColor: e.value.style.backgroundColor,
740
- color: e.value.style.color,
741
- active: Be.value,
742
- onClose: Ge
743
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : x("", !0),
744
- Qt.value ? (r(), y("div", {
745
- key: 1,
746
- ref_key: "noTitle",
747
- ref: st,
748
- class: "vue-data-ui-no-title-space",
749
- style: "height:36px; width: 100%;background:transparent"
750
- }, null, 512)) : x("", !0),
751
- e.value.style.title.text ? (r(), y("div", {
752
- key: 2,
753
- ref_key: "chartTitle",
754
- ref: lt,
755
- style: "width:100%;background:transparent"
756
- }, [
757
- (r(), le(Ul, {
758
- key: `title_${nt.value}`,
759
- config: {
760
- title: {
761
- cy: "scatter-div-title",
762
- ...e.value.style.title
763
- },
764
- subtitle: {
765
- cy: "scatter-div-subtitle",
766
- ...e.value.style.title.subtitle
767
- }
768
- }
769
- }, null, 8, ["config"]))
770
- ], 512)) : x("", !0),
771
- w("div", {
772
- id: `legend-top-${N.value}`
773
- }, null, 8, Hl),
774
- e.value.userOptions.show && et.value && (c(ct) || c(Xe)) ? (r(), le(c(jt), {
775
- ref_key: "userOptionsRef",
776
- ref: Ee,
777
- key: `user_options_${tt.value}`,
778
- backgroundColor: e.value.style.backgroundColor,
779
- color: e.value.style.color,
780
- isImaging: c(ft),
781
- isPrinting: c(pt),
782
- uid: N.value,
783
- hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.tooltip.show,
784
- hasPdf: e.value.userOptions.buttons.pdf,
785
- hasImg: e.value.userOptions.buttons.img,
786
- hasSvg: e.value.userOptions.buttons.svg,
787
- hasXls: e.value.userOptions.buttons.csv,
788
- hasTable: e.value.userOptions.buttons.table,
789
- hasFullscreen: e.value.userOptions.buttons.fullscreen,
790
- isTooltip: H.value.showTooltip,
791
- isFullscreen: re.value,
792
- titles: { ...e.value.userOptions.buttonTitles },
793
- chartElement: te.value,
794
- position: e.value.userOptions.position,
795
- hasAnnotator: e.value.userOptions.buttons.annotator,
796
- isAnnotation: Be.value,
797
- callbacks: e.value.userOptions.callbacks,
798
- printScale: e.value.userOptions.print.scale,
799
- tableDialog: e.value.table.useDialog,
800
- onToggleFullscreen: $t,
801
- onGeneratePdf: c(gt),
802
- onGenerateCsv: Ve,
803
- onGenerateImage: c(mt),
804
- onGenerateSvg: Lt,
805
- onToggleTable: _t,
806
- onToggleTooltip: Mt,
807
- onToggleAnnotator: Ge,
808
- style: ue({
809
- visibility: c(ct) ? c(Xe) ? "visible" : "hidden" : "visible"
810
- })
811
- }, zt({ _: 2 }, [
812
- l.$slots.menuIcon ? {
813
- name: "menuIcon",
814
- fn: W(({ isOpen: t, color: o }) => [
815
- R(l.$slots, "menuIcon", pe(fe({ isOpen: t, color: o })), void 0, !0)
816
- ]),
817
- key: "0"
818
- } : void 0,
819
- l.$slots.optionTooltip ? {
820
- name: "optionTooltip",
821
- fn: W(() => [
822
- R(l.$slots, "optionTooltip", {}, void 0, !0)
823
- ]),
824
- key: "1"
825
- } : void 0,
826
- l.$slots.optionPdf ? {
827
- name: "optionPdf",
828
- fn: W(() => [
829
- R(l.$slots, "optionPdf", {}, void 0, !0)
830
- ]),
831
- key: "2"
832
- } : void 0,
833
- l.$slots.optionCsv ? {
834
- name: "optionCsv",
835
- fn: W(() => [
836
- R(l.$slots, "optionCsv", {}, void 0, !0)
837
- ]),
838
- key: "3"
839
- } : void 0,
840
- l.$slots.optionImg ? {
841
- name: "optionImg",
842
- fn: W(() => [
843
- R(l.$slots, "optionImg", {}, void 0, !0)
844
- ]),
845
- key: "4"
846
- } : void 0,
847
- l.$slots.optionSvg ? {
848
- name: "optionSvg",
849
- fn: W(() => [
850
- R(l.$slots, "optionSvg", {}, void 0, !0)
851
- ]),
852
- key: "5"
853
- } : void 0,
854
- l.$slots.optionTable ? {
855
- name: "optionTable",
856
- fn: W(() => [
857
- R(l.$slots, "optionTable", {}, void 0, !0)
858
- ]),
859
- key: "6"
860
- } : void 0,
861
- l.$slots.optionFullscreen ? {
862
- name: "optionFullscreen",
863
- fn: W(({ toggleFullscreen: t, isFullscreen: o }) => [
864
- R(l.$slots, "optionFullscreen", pe(fe({ toggleFullscreen: t, isFullscreen: o })), void 0, !0)
865
- ]),
866
- key: "7"
867
- } : void 0,
868
- l.$slots.optionAnnotator ? {
869
- name: "optionAnnotator",
870
- fn: W(({ toggleAnnotator: t, isAnnotator: o }) => [
871
- R(l.$slots, "optionAnnotator", pe(fe({ toggleAnnotator: t, isAnnotator: o })), void 0, !0)
872
- ]),
873
- key: "8"
874
- } : void 0
875
- ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasImg", "hasSvg", "hasXls", "hasTable", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : x("", !0),
876
- (r(), y("svg", {
877
- ref_key: "svgRef",
878
- ref: Me,
879
- xmlns: c(Al),
880
- class: Tt({ "vue-data-ui-fullscreen--on": re.value, "vue-data-ui-fulscreen--off": !re.value, animated: e.value.useCssAnimation }),
881
- viewBox: `0 0 ${F.value.width <= 0 ? 10 : F.value.width} ${F.value.height <= 0 ? 10 : F.value.height}`,
882
- style: ue(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.color}`),
883
- onMouseleave: qe
884
- }, [
885
- _e(c(Ut)),
886
- l.$slots["chart-background"] ? (r(), y("foreignObject", {
887
- key: 0,
888
- x: 0,
889
- y: 0,
890
- width: F.value.width <= 0 ? 10 : F.value.width,
891
- height: F.value.height <= 0 ? 10 : F.value.height,
892
- style: {
893
- pointerEvents: "none"
894
- }
895
- }, [
896
- R(l.$slots, "chart-background", {}, void 0, !0)
897
- ], 8, Ql)) : x("", !0),
898
- e.value.style.layout.axis.show ? (r(), y("g", Jl, [
899
- w("line", {
900
- x1: O.value.x,
901
- x2: O.value.x,
902
- y1: n.value.top,
903
- y2: n.value.bottom,
904
- stroke: e.value.style.layout.axis.stroke,
905
- "stroke-width": e.value.style.layout.axis.strokeWidth,
906
- "stroke-linecap": "round"
907
- }, null, 8, Kl),
908
- w("line", {
909
- x1: n.value.left,
910
- x2: n.value.right,
911
- y1: O.value.y,
912
- y2: O.value.y,
913
- stroke: e.value.style.layout.axis.stroke,
914
- "stroke-width": e.value.style.layout.axis.strokeWidth,
915
- "stroke-linecap": "round"
916
- }, null, 8, ea)
917
- ])) : x("", !0),
918
- e.value.style.layout.marginalBars.show ? (r(), y("g", ta, [
919
- w("defs", null, [
920
- w("linearGradient", {
921
- id: `marginal_x_${N.value}`,
922
- x1: "0%",
923
- y1: "0%",
924
- x2: "0%",
925
- y2: "100%"
926
- }, [
927
- w("stop", {
928
- offset: "0%",
929
- "stop-color": e.value.style.layout.marginalBars.fill
930
- }, null, 8, aa),
931
- w("stop", {
932
- offset: "100%",
933
- "stop-color": e.value.style.backgroundColor
934
- }, null, 8, oa)
935
- ], 8, la),
936
- w("linearGradient", {
937
- id: `marginal_y_${N.value}`,
938
- x1: "0%",
939
- x2: "100%",
940
- y1: "0%",
941
- y2: "0%"
942
- }, [
943
- w("stop", {
944
- offset: "0%",
945
- "stop-color": e.value.style.backgroundColor
946
- }, null, 8, na),
947
- w("stop", {
948
- offset: "100%",
949
- "stop-color": e.value.style.layout.marginalBars.fill
950
- }, null, 8, ua)
951
- ], 8, sa)
952
- ]),
953
- (r(!0), y(Z, null, J(S.value.x, (t, o) => (r(), y("g", null, [
954
- t && S.value.avgX[o] ? (r(), y("rect", {
955
- key: 0,
956
- x: S.value.avgX[o] - n.value.width / b.value / 2,
957
- y: n.value.top - e.value.style.layout.marginalBars.offset - t / S.value.maxX * e.value.style.layout.marginalBars.size,
958
- width: n.value.width / b.value <= 0 ? 1e-4 : n.value.width / b.value,
959
- height: t / S.value.maxX * e.value.style.layout.marginalBars.size <= 0 ? 1e-4 : t / S.value.maxX * e.value.style.layout.marginalBars.size,
960
- fill: e.value.style.layout.marginalBars.useGradient ? `url(#marginal_x_${N.value})` : e.value.style.layout.marginalBars.fill,
961
- style: ue([`opacity:${e.value.style.layout.marginalBars.opacity}`, { "pointer-events": "none" }]),
962
- stroke: e.value.style.backgroundColor,
963
- "stroke-width": e.value.style.layout.marginalBars.strokeWidth,
964
- rx: e.value.style.layout.marginalBars.borderRadius
965
- }, null, 12, ia)) : x("", !0),
966
- S.value.avgX[o] ? (r(), y("rect", {
967
- key: 1,
968
- x: S.value.avgX[o] - n.value.width / b.value / 2,
969
- y: n.value.top - e.value.style.layout.marginalBars.offset - e.value.style.layout.marginalBars.size,
970
- width: n.value.width / b.value <= 0 ? 1e-4 : n.value.width / b.value,
971
- height: Math.max(0.1, e.value.style.layout.marginalBars.size),
972
- fill: "transparent",
973
- onMouseenter: (a) => ll(o),
974
- onMouseleave: s[0] || (s[0] = (a) => qe())
975
- }, null, 40, ra)) : x("", !0),
976
- S.value.avgX[o] && ge.value != null && ge.value === o ? (r(), y("g", va, [
977
- w("rect", {
978
- x: S.value.avgX[o] - n.value.width / b.value / 2,
979
- y: n.value.top,
980
- width: n.value.width / b.value <= 0 ? 1e-4 : n.value.width / b.value,
981
- height: n.value.height,
982
- fill: e.value.style.layout.marginalBars.highlighter.color,
983
- "fill-opacity": e.value.style.layout.marginalBars.highlighter.opacity
984
- }, null, 8, ya),
985
- w("line", {
986
- x1: S.value.avgX[o] - n.value.width / b.value / 2,
987
- x2: S.value.avgX[o] - n.value.width / b.value / 2,
988
- y1: 0,
989
- y2: n.value.top + n.value.height,
990
- stroke: e.value.style.layout.marginalBars.highlighter.stroke,
991
- "stroke-dasharray": e.value.style.layout.marginalBars.highlighter.strokeDasharray,
992
- "stroke-width": e.value.style.layout.marginalBars.highlighter.strokeWidth,
993
- style: { transition: "none !important", animation: "none !important" }
994
- }, null, 8, ca),
995
- w("line", {
996
- x1: S.value.avgX[o] - n.value.width / b.value / 2 + (n.value.width / b.value <= 0 ? 1e-4 : n.value.width / b.value),
997
- x2: S.value.avgX[o] - n.value.width / b.value / 2 + (n.value.width / b.value <= 0 ? 1e-4 : n.value.width / b.value),
998
- y1: 0,
999
- y2: n.value.top + n.value.height,
1000
- stroke: e.value.style.layout.marginalBars.highlighter.stroke,
1001
- "stroke-dasharray": e.value.style.layout.marginalBars.highlighter.strokeDasharray,
1002
- "stroke-width": e.value.style.layout.marginalBars.highlighter.strokeWidth,
1003
- style: { transition: "none !important", animation: "none !important" }
1004
- }, null, 8, da)
1005
- ])) : x("", !0)
1006
- ]))), 256)),
1007
- (r(!0), y(Z, null, J(S.value.y, (t, o) => (r(), y("g", null, [
1008
- t && S.value.avgY[o] ? (r(), y("rect", {
1009
- key: 0,
1010
- x: n.value.right + e.value.style.layout.marginalBars.offset,
1011
- y: S.value.avgY[o] - n.value.height / b.value / 2,
1012
- height: n.value.height / b.value <= 0 ? 1e-4 : n.value.height / b.value,
1013
- width: t / S.value.maxY * e.value.style.layout.marginalBars.size <= 0 ? 1e-4 : t / S.value.maxY * e.value.style.layout.marginalBars.size,
1014
- fill: e.value.style.layout.marginalBars.useGradient ? `url(#marginal_y_${N.value})` : e.value.style.layout.marginalBars.fill,
1015
- style: ue([`opacity:${e.value.style.layout.marginalBars.opacity}`, { "pointer-events": "none" }]),
1016
- stroke: e.value.style.backgroundColor,
1017
- "stroke-width": e.value.style.layout.marginalBars.strokeWidth,
1018
- rx: e.value.style.layout.marginalBars.borderRadius
1019
- }, null, 12, ha)) : x("", !0),
1020
- S.value.avgY[o] ? (r(), y("rect", {
1021
- key: 1,
1022
- x: n.value.right + e.value.style.layout.marginalBars.offset,
1023
- y: S.value.avgY[o] - n.value.height / b.value / 2,
1024
- width: Math.max(0.1, e.value.style.layout.marginalBars.size),
1025
- height: n.value.height / b.value <= 0 ? 1e-4 : n.value.height / b.value,
1026
- fill: "transparent",
1027
- onMouseenter: (a) => al(o),
1028
- onMouseleave: s[1] || (s[1] = (a) => qe())
1029
- }, null, 40, pa)) : x("", !0),
1030
- S.value.avgY[o] && me.value != null && me.value === o ? (r(), y("g", fa, [
1031
- w("rect", {
1032
- x: n.value.left,
1033
- y: S.value.avgY[o] - n.value.height / b.value / 2,
1034
- width: n.value.width,
1035
- height: n.value.height / b.value <= 0 ? 1e-4 : n.value.height / b.value,
1036
- fill: e.value.style.layout.marginalBars.highlighter.color,
1037
- "fill-opacity": e.value.style.layout.marginalBars.highlighter.opacity
1038
- }, null, 8, ga),
1039
- w("line", {
1040
- x1: n.value.left,
1041
- x2: F.value.width,
1042
- y1: S.value.avgY[o] - n.value.height / b.value / 2,
1043
- y2: S.value.avgY[o] - n.value.height / b.value / 2,
1044
- stroke: e.value.style.layout.marginalBars.highlighter.stroke,
1045
- "stroke-dasharray": e.value.style.layout.marginalBars.highlighter.strokeDasharray,
1046
- "stroke-width": e.value.style.layout.marginalBars.highlighter.strokeWidth,
1047
- style: { transition: "none !important", animation: "none !important" }
1048
- }, null, 8, ma),
1049
- w("line", {
1050
- x1: n.value.left,
1051
- x2: F.value.width,
1052
- y1: S.value.avgY[o] - n.value.height / b.value / 2 + (n.value.height / b.value <= 0 ? 1e-4 : n.value.height / b.value),
1053
- y2: S.value.avgY[o] - n.value.height / b.value / 2 + (n.value.height / b.value <= 0 ? 1e-4 : n.value.height / b.value),
1054
- stroke: e.value.style.layout.marginalBars.highlighter.stroke,
1055
- "stroke-dasharray": e.value.style.layout.marginalBars.highlighter.strokeDasharray,
1056
- "stroke-width": e.value.style.layout.marginalBars.highlighter.strokeWidth,
1057
- style: { transition: "none !important", animation: "none !important" }
1058
- }, null, 8, xa)
1059
- ])) : x("", !0)
1060
- ]))), 256)),
1061
- e.value.style.layout.marginalBars.showLines ? (r(), y("g", ba, [
1062
- (r(!0), y(Z, null, J(el.value, (t) => (r(), y(Z, null, [
1063
- I.value.includes(t.id) ? x("", !0) : (r(), y("path", {
1064
- key: 0,
1065
- d: `M ${t.dX}`,
1066
- stroke: e.value.style.backgroundColor,
1067
- "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth + 1,
1068
- "stroke-linecap": "round",
1069
- "stroke-linejoin": "round",
1070
- fill: "none"
1071
- }, null, 8, ka)),
1072
- I.value.includes(t.id) ? x("", !0) : (r(), y("path", {
1073
- key: 1,
1074
- d: `M ${t.dX}`,
1075
- stroke: t.color,
1076
- "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth,
1077
- "stroke-linecap": "round",
1078
- "stroke-linejoin": "round",
1079
- fill: "none"
1080
- }, null, 8, wa)),
1081
- I.value.includes(t.id) ? x("", !0) : (r(), y("path", {
1082
- key: 2,
1083
- d: `M ${t.dY}`,
1084
- stroke: e.value.style.backgroundColor,
1085
- "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth + 1,
1086
- "stroke-linecap": "round",
1087
- "stroke-linejoin": "round",
1088
- fill: "none"
1089
- }, null, 8, $a)),
1090
- I.value.includes(t.id) ? x("", !0) : (r(), y("path", {
1091
- key: 3,
1092
- d: `M ${t.dY}`,
1093
- stroke: t.color,
1094
- "stroke-width": e.value.style.layout.marginalBars.linesStrokeWidth,
1095
- "stroke-linecap": "round",
1096
- "stroke-linejoin": "round",
1097
- fill: "none"
1098
- }, null, 8, _a))
1099
- ], 64))), 256))
1100
- ])) : x("", !0)
1101
- ])) : x("", !0),
1102
- e.value.style.layout.plots.giftWrap.show ? (r(), y("g", Ma, [
1103
- (r(!0), y(Z, null, J(U.value, (t, o) => (r(), y("g", null, [
1104
- t.plots.length > 2 ? (r(), y("polygon", {
1105
- key: 0,
1106
- points: c(Ll)({ series: t.plots }),
1107
- fill: c(Pe)(t.color, e.value.style.layout.plots.giftWrap.fillOpacity * 100),
1108
- "stroke-width": e.value.style.layout.plots.giftWrap.strokeWidth,
1109
- "stroke-dasharray": e.value.style.layout.plots.giftWrap.strokeDasharray,
1110
- stroke: t.color,
1111
- "stroke-linejoin": "round",
1112
- "stroke-linecap": "round"
1113
- }, null, 8, Ca)) : x("", !0)
1114
- ]))), 256))
1115
- ])) : x("", !0),
1116
- e.value.usePerformanceMode ? x("", !0) : (r(!0), y(Z, { key: 4 }, J(U.value, (t, o) => (r(), y("g", null, [
1117
- !t.shape || t.shape === "circle" ? (r(), y("g", Sa, [
1118
- (r(!0), y(Z, null, J(t.plots, (a, u) => (r(), y("circle", {
1119
- cx: a.x,
1120
- cy: a.y,
1121
- r: Y.value && Y.value === a.id ? a.weight * 2 : a.weight,
1122
- fill: c(Pe)(t.color, e.value.style.layout.plots.opacity * 100),
1123
- stroke: e.value.style.layout.plots.stroke,
1124
- "stroke-width": e.value.style.layout.plots.strokeWidth,
1125
- style: ue(`opacity:${Y.value && Y.value === a.id ? 1 : e.value.style.layout.plots.significance.useDistanceOpacity ? 1 - Math.abs(a.deviation) / bt.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}`),
1126
- onMouseover: (i) => je(a, o),
1127
- onMouseleave: (i) => Ae(a, o),
1128
- onClick: (i) => Ue(a, o)
1129
- }, null, 44, Aa))), 256))
1130
- ])) : (r(), y("g", La, [
1131
- (r(!0), y(Z, null, J(t.plots, (a, u) => (r(), le(Ke, {
1132
- plot: { x: a.x, y: a.y },
1133
- radius: Y.value && Y.value === a.id ? a.weight * 2 : a.weight,
1134
- shape: t.shape,
1135
- color: c(Pe)(t.color, e.value.style.layout.plots.opacity * 100),
1136
- stroke: e.value.style.layout.plots.stroke,
1137
- strokeWidth: e.value.style.layout.plots.strokeWidth,
1138
- style: ue(`opacity:${Y.value && Y.value === a.id ? 1 : e.value.style.layout.plots.significance.useDistanceOpacity ? 1 - Math.abs(a.deviation) / bt.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}`),
1139
- onMouseover: (i) => je(a, o),
1140
- onMouseleave: (i) => Ae(a, o),
1141
- onClick: (i) => Ue(a, o)
1142
- }, null, 8, ["plot", "radius", "shape", "color", "stroke", "strokeWidth", "style", "onMouseover", "onMouseleave", "onClick"]))), 256))
1143
- ]))
1144
- ]))), 256)),
1145
- e.value.usePerformanceMode ? (r(), y(Z, { key: 5 }, [
1146
- w("g", {
1147
- "clip-path": `url(#clip_path_${N.value})`
1148
- }, [
1149
- (r(!0), y(Z, null, J(sl.value, (t) => (r(), y("path", {
1150
- key: t.id,
1151
- d: t.d,
1152
- fill: t.fill,
1153
- stroke: t.stroke,
1154
- "stroke-width": t.strokeWidth,
1155
- "stroke-opacity": t.strokeOpacity,
1156
- "vector-effect": "non-scaling-stroke",
1157
- "paint-order": "fill"
1158
- }, null, 8, Ta))), 128))
1159
- ], 8, Ba),
1160
- f.value && e.value.style.layout.plots.selectors.show ? (r(), y("g", za, [
1161
- _e(Ke, {
1162
- shape: f.value.shape || "circle",
1163
- color: f.value.color,
1164
- plot: { x: f.value.x, y: f.value.y },
1165
- radius: Math.max(4 * Ct[f.value.shape || "circle"], f.value.weight * 2),
1166
- stroke: e.value.style.layout.plots.stroke,
1167
- strokeWidth: e.value.style.layout.plots.strokeWidth
1168
- }, null, 8, ["shape", "color", "plot", "radius", "stroke", "strokeWidth"])
1169
- ])) : x("", !0),
1170
- w("rect", {
1171
- x: n.value.left,
1172
- y: n.value.top,
1173
- width: Math.max(1e-4, n.value.width),
1174
- height: Math.max(1e-4, n.value.height),
1175
- fill: "transparent",
1176
- onMousemove: s[2] || (s[2] = (...t) => c(St) && c(St)(...t)),
1177
- onMouseleave: ul,
1178
- onClick: il
1179
- }, null, 40, Pa)
1180
- ], 64)) : x("", !0),
1181
- f.value && e.value.style.layout.plots.selectors.show ? (r(), y("g", Oa, [
1182
- w("line", {
1183
- x1: O.value.x,
1184
- x2: f.value.x,
1185
- y1: f.value.y,
1186
- y2: f.value.y,
1187
- stroke: e.value.style.layout.plots.selectors.stroke,
1188
- "stroke-width": e.value.style.layout.plots.selectors.strokeWidth,
1189
- "stroke-dasharray": e.value.style.layout.plots.selectors.strokeDasharray,
1190
- "stroke-linecap": "round",
1191
- class: "line-pointer"
1192
- }, null, 8, Da),
1193
- w("line", {
1194
- x1: f.value.x,
1195
- x2: f.value.x,
1196
- y1: O.value.y,
1197
- y2: f.value.y,
1198
- stroke: e.value.style.layout.plots.selectors.stroke,
1199
- "stroke-width": e.value.style.layout.plots.selectors.strokeWidth,
1200
- "stroke-dasharray": e.value.style.layout.plots.selectors.strokeDasharray,
1201
- "stroke-linecap": "round",
1202
- class: "line-pointer"
1203
- }, null, 8, Ea),
1204
- w("text", {
1205
- x: O.value.x + (f.value.x > O.value.x ? -6 : 6),
1206
- y: f.value.y + e.value.style.layout.plots.selectors.labels.fontSize / 3,
1207
- "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
1208
- fill: e.value.style.layout.plots.selectors.labels.color,
1209
- "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
1210
- "text-anchor": f.value.x > O.value.x ? "end" : "start"
1211
- }, G(c(ie)(
1212
- e.value.style.layout.plots.selectors.labels.y.formatter,
1213
- c(q)(f.value.v.y),
1214
- c(K)({
1215
- p: e.value.style.layout.plots.selectors.labels.prefix,
1216
- v: c(q)(f.value.v.y),
1217
- s: e.value.style.layout.plots.selectors.labels.suffix,
1218
- r: e.value.style.layout.plots.selectors.labels.rounding
1219
- }),
1220
- { datapoint: f.value }
1221
- )), 9, Fa),
1222
- w("text", {
1223
- x: f.value.x,
1224
- y: O.value.y + (f.value.y > O.value.y ? -6 : e.value.style.layout.plots.selectors.labels.fontSize + 6),
1225
- "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
1226
- fill: e.value.style.layout.plots.selectors.labels.color,
1227
- "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
1228
- "text-anchor": "middle"
1229
- }, G(c(ie)(
1230
- e.value.style.layout.plots.selectors.labels.y.formatter,
1231
- c(q)(f.value.v.x),
1232
- c(K)({
1233
- p: e.value.style.layout.plots.selectors.labels.prefix,
1234
- v: c(q)(f.value.v.x),
1235
- s: e.value.style.layout.plots.selectors.labels.suffix,
1236
- r: e.value.style.layout.plots.selectors.labels.rounding
1237
- }),
1238
- { datapoint: f.value }
1239
- )), 9, Wa),
1240
- w("circle", {
1241
- cx: O.value.x,
1242
- cy: f.value.y,
1243
- r: e.value.style.layout.plots.selectors.markers.radius,
1244
- fill: e.value.style.layout.plots.selectors.markers.fill,
1245
- stroke: e.value.style.layout.plots.selectors.markers.stroke,
1246
- "stroke-width": e.value.style.layout.plots.selectors.markers.strokeWidth,
1247
- class: "line-pointer"
1248
- }, null, 8, Na),
1249
- w("circle", {
1250
- cx: f.value.x,
1251
- cy: O.value.y,
1252
- r: e.value.style.layout.plots.selectors.markers.radius,
1253
- fill: e.value.style.layout.plots.selectors.markers.fill,
1254
- stroke: e.value.style.layout.plots.selectors.markers.stroke,
1255
- "stroke-width": e.value.style.layout.plots.selectors.markers.strokeWidth,
1256
- class: "line-pointer"
1257
- }, null, 8, Ia),
1258
- e.value.style.layout.plots.selectors.labels.showName ? (r(), y("text", {
1259
- key: 0,
1260
- x: f.value.x,
1261
- y: f.value.y + (f.value.y < O.value.y ? -e.value.style.layout.plots.selectors.labels.fontSize / 2 : e.value.style.layout.plots.selectors.labels.fontSize),
1262
- "font-size": e.value.style.layout.plots.selectors.labels.fontSize,
1263
- fill: e.value.style.layout.plots.selectors.labels.color,
1264
- "font-weight": e.value.style.layout.plots.selectors.labels.bold ? "bold" : "normal",
1265
- "text-anchor": f.value.x < n.value.left + 100 ? "start" : f.value.x > n.value.right - 100 ? "end" : f.value.x > O.value.x ? "start" : "end"
1266
- }, G(f.value.v.name), 9, Xa)) : x("", !0)
1267
- ])) : x("", !0),
1268
- e.value.style.layout.dataLabels.xAxis.show ? (r(), y("g", {
1269
- key: 7,
1270
- ref_key: "xAxisLabelLeft",
1271
- ref: Fe
1272
- }, [
1273
- w("text", {
1274
- id: `vue-ui-scatter-xAxis-label-${N.value}`,
1275
- transform: `translate(${e.value.style.layout.dataLabels.xAxis.fontSize}, ${n.value.top + n.value.height / 2}), rotate(-90)`,
1276
- "text-anchor": "middle",
1277
- "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
1278
- "font-weight": e.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
1279
- fill: e.value.style.layout.dataLabels.xAxis.color
1280
- }, G(e.value.style.layout.dataLabels.xAxis.name), 9, Ya),
1281
- w("text", {
1282
- "text-anchor": "middle",
1283
- "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
1284
- fill: e.value.style.layout.dataLabels.xAxis.color,
1285
- transform: `translate(${e.value.style.layout.dataLabels.xAxis.name ? e.value.style.layout.dataLabels.xAxis.fontSize * 3 : 0}, ${O.value.y + e.value.style.layout.dataLabels.xAxis.fontSize / 3}), rotate(-90)`
1286
- }, G(c(ie)(
1287
- e.value.style.layout.plots.selectors.labels.x.formatter,
1288
- c(q)(P.value.xMin),
1289
- c(K)({
1290
- p: e.value.style.layout.plots.selectors.labels.prefix,
1291
- v: c(q)(P.value.xMin),
1292
- s: e.value.style.layout.plots.selectors.labels.suffix,
1293
- r: e.value.style.layout.dataLabels.xAxis.rounding
1294
- })
1295
- )), 9, Ra)
1296
- ], 512)) : x("", !0),
1297
- e.value.style.layout.dataLabels.xAxis.show ? (r(), y("text", {
1298
- key: 8,
1299
- ref_key: "xAxisLabelRight",
1300
- ref: qt,
1301
- "text-anchor": "middle",
1302
- transform: `translate(${n.value.right + e.value.style.layout.padding.right + 6}, ${O.value.y + e.value.style.layout.dataLabels.xAxis.fontSize / 3}), rotate(-90)`,
1303
- "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
1304
- fill: e.value.style.layout.dataLabels.xAxis.color
1305
- }, G(c(ie)(
1306
- e.value.style.layout.plots.selectors.labels.x.formatter,
1307
- c(q)(P.value.xMax),
1308
- c(K)({
1309
- p: e.value.style.layout.plots.selectors.labels.prefix,
1310
- v: c(q)(P.value.xMax),
1311
- s: e.value.style.layout.plots.selectors.labels.suffix,
1312
- r: e.value.style.layout.dataLabels.xAxis.rounding
1313
- })
1314
- )), 9, ja)) : x("", !0),
1315
- e.value.style.layout.dataLabels.yAxis.show ? (r(), y("text", {
1316
- key: 9,
1317
- ref_key: "yAxisLabelTop",
1318
- ref: Ht,
1319
- x: O.value.x,
1320
- y: n.value.top - e.value.style.layout.dataLabels.yAxis.fontSize,
1321
- "text-anchor": "middle",
1322
- "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
1323
- fill: e.value.style.layout.dataLabels.yAxis.color
1324
- }, G(c(ie)(
1325
- e.value.style.layout.plots.selectors.labels.y.formatter,
1326
- c(q)(P.value.yMax),
1327
- c(K)({
1328
- p: e.value.style.layout.plots.selectors.labels.prefix,
1329
- v: c(q)(P.value.yMax),
1330
- s: e.value.style.layout.plots.selectors.labels.suffix,
1331
- r: e.value.style.layout.dataLabels.yAxis.rounding
1332
- })
1333
- )), 9, Ua)) : x("", !0),
1334
- e.value.style.layout.dataLabels.yAxis.show ? (r(), y("g", {
1335
- key: 10,
1336
- ref_key: "yAxisLabelBottom",
1337
- ref: We
1338
- }, [
1339
- w("text", {
1340
- x: O.value.x,
1341
- y: F.value.height - e.value.style.layout.dataLabels.yAxis.fontSize * 2,
1342
- "text-anchor": "middle",
1343
- "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
1344
- fill: e.value.style.layout.dataLabels.yAxis.color
1345
- }, G(c(ie)(
1346
- e.value.style.layout.plots.selectors.labels.y.formatter,
1347
- c(q)(P.value.yMin),
1348
- c(K)({
1349
- p: e.value.style.layout.plots.selectors.labels.prefix,
1350
- v: c(q)(P.value.yMin),
1351
- s: e.value.style.layout.plots.selectors.labels.suffix,
1352
- r: e.value.style.layout.dataLabels.yAxis.rounding
1353
- })
1354
- )), 9, Va),
1355
- w("text", {
1356
- "text-anchor": "middle",
1357
- "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
1358
- "font-weight": e.value.style.layout.dataLabels.yAxis.bold ? "bold" : "normal",
1359
- fill: e.value.style.layout.dataLabels.yAxis.color,
1360
- x: n.value.left + n.value.width / 2,
1361
- y: F.value.height
1362
- }, G(e.value.style.layout.dataLabels.yAxis.name), 9, Ga)
1363
- ], 512)) : x("", !0),
1364
- w("clipPath", {
1365
- id: `clip_path_${N.value}`
1366
- }, [
1367
- w("rect", {
1368
- x: n.value.left,
1369
- y: n.value.top,
1370
- width: n.value.width <= 0 ? 1e-4 : n.value.width,
1371
- height: n.value.height <= 0 ? 1e-4 : n.value.height
1372
- }, null, 8, Ha)
1373
- ], 8, qa),
1374
- e.value.style.layout.correlation.show ? (r(), y("g", Za, [
1375
- (r(!0), y(Z, null, J(U.value, (t, o) => (r(), y("line", {
1376
- x1: t.correlation.x1,
1377
- x2: t.correlation.x2,
1378
- y1: t.correlation.y1,
1379
- y2: t.correlation.y2,
1380
- "stroke-dasharray": e.value.style.layout.correlation.strokeDasharray,
1381
- stroke: t.color,
1382
- "stroke-width": e.value.style.layout.correlation.strokeWidth,
1383
- "clip-path": `url(#clip_path_${N.value})`
1384
- }, null, 8, Qa))), 256)),
1385
- (r(!0), y(Z, null, J(U.value, (t, o) => (r(), y("g", null, [
1386
- e.value.style.layout.correlation.label.show ? (r(), y("text", {
1387
- key: 0,
1388
- x: t.correlation.x2,
1389
- y: t.correlation.y2,
1390
- fill: e.value.style.layout.correlation.label.useSerieColor ? t.color : e.value.style.layout.correlation.label.color,
1391
- "text-anchor": "end",
1392
- "font-size": e.value.style.layout.correlation.label.fontSize,
1393
- "font-weight": e.value.style.layout.correlation.label.bold ? "bold" : "normal"
1394
- }, G(c(K)({
1395
- v: c(q)(t.correlation.coefficient),
1396
- r: e.value.style.layout.correlation.label.roundingValue
1397
- })), 9, Ja)) : x("", !0)
1398
- ]))), 256))
1399
- ])) : x("", !0),
1400
- R(l.$slots, "svg", {
1401
- svg: {
1402
- ...F.value,
1403
- drawingArea: {
1404
- ...n.value,
1405
- zero: O.value
1406
- },
1407
- data: Se.value
1408
- }
1409
- }, void 0, !0)
1410
- ], 46, Zl)),
1411
- l.$slots.watermark ? (r(), y("div", Ka, [
1412
- R(l.$slots, "watermark", pe(fe({ isPrinting: c(pt) || c(ft) })), void 0, !0)
1413
- ])) : x("", !0),
1414
- w("div", {
1415
- id: `legend-bottom-${N.value}`
1416
- }, null, 8, eo),
1417
- rt.value ? (r(), le(gl, {
1418
- key: 5,
1419
- to: e.value.style.legend.position === "top" ? `#legend-top-${N.value}` : `#legend-bottom-${N.value}`
1420
- }, [
1421
- w("div", {
1422
- ref_key: "chartLegend",
1423
- ref: at
1424
- }, [
1425
- e.value.style.legend.show ? (r(), le(jl, {
1426
- key: `legend_${it.value}`,
1427
- legendSet: oe.value,
1428
- config: Jt.value,
1429
- onClickMarker: s[3] || (s[3] = ({ legend: t }) => wt(t.id))
1430
- }, {
1431
- item: W(({ legend: t }) => [
1432
- w("div", {
1433
- onClick: (o) => t.segregate(),
1434
- style: ue(`opacity:${I.value.includes(t.id) ? 0.5 : 1}`)
1435
- }, G(t.name), 13, to)
1436
- ]),
1437
- _: 1
1438
- }, 8, ["legendSet", "config"])) : R(l.$slots, "legend", {
1439
- key: 1,
1440
- legend: oe.value
1441
- }, void 0, !0)
1442
- ], 512)
1443
- ], 8, ["to"])) : x("", !0),
1444
- l.$slots.source ? (r(), y("div", {
1445
- key: 6,
1446
- ref_key: "source",
1447
- ref: ot,
1448
- dir: "auto"
1449
- }, [
1450
- R(l.$slots, "source", {}, void 0, !0)
1451
- ], 512)) : x("", !0),
1452
- _e(c(Nt), {
1453
- show: H.value.showTooltip && Oe.value,
1454
- backgroundColor: e.value.style.tooltip.backgroundColor,
1455
- color: e.value.style.tooltip.color,
1456
- borderRadius: e.value.style.tooltip.borderRadius,
1457
- borderColor: e.value.style.tooltip.borderColor,
1458
- borderWidth: e.value.style.tooltip.borderWidth,
1459
- fontSize: e.value.style.tooltip.fontSize,
1460
- backgroundOpacity: e.value.style.tooltip.backgroundOpacity,
1461
- position: e.value.style.tooltip.position,
1462
- offsetY: e.value.style.tooltip.offsetY,
1463
- parent: te.value,
1464
- content: De.value,
1465
- isFullscreen: re.value,
1466
- isCustom: e.value.style.tooltip.customFormat && typeof e.value.style.tooltip.customFormat == "function",
1467
- smooth: e.value.style.tooltip.smooth,
1468
- backdropFilter: e.value.style.tooltip.backdropFilter,
1469
- smoothForce: e.value.style.tooltip.smoothForce,
1470
- smoothSnapThreshold: e.value.style.tooltip.smoothSnapThreshold
1471
- }, {
1472
- "tooltip-before": W(() => [
1473
- R(l.$slots, "tooltip-before", pe(fe({ ...Re.value })), void 0, !0)
1474
- ]),
1475
- "tooltip-after": W(() => [
1476
- R(l.$slots, "tooltip-after", pe(fe({ ...Re.value })), void 0, !0)
1477
- ]),
1478
- default: W(() => [
1479
- e.value.style.tooltip.showShape ? (r(), y("div", lo, [
1480
- (r(), y("svg", ao, [
1481
- _e(Ke, {
1482
- shape: f.value.shape,
1483
- color: f.value.color,
1484
- plot: { x: 10, y: 10 },
1485
- radius: 7
1486
- }, null, 8, ["shape", "color"])
1487
- ]))
1488
- ])) : x("", !0)
1489
- ]),
1490
- _: 3
1491
- }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
1492
- et.value && e.value.userOptions.buttons.table ? (r(), le(ml(be.value.component), xl({ key: 7 }, be.value.props, {
1493
- ref_key: "tableUnit",
1494
- ref: xe,
1495
- onClose: At
1496
- }), zt({
1497
- content: W(() => [
1498
- (r(), le(c(Yt), {
1499
- key: `table_${ut.value}`,
1500
- colNames: Le.value.colNames,
1501
- head: Le.value.head,
1502
- body: Le.value.body,
1503
- config: Le.value.config,
1504
- title: e.value.table.useDialog ? "" : be.value.title,
1505
- withCloseButton: !e.value.table.useDialog,
1506
- onClose: At
1507
- }, {
1508
- th: W(({ th: t }) => [
1509
- Pt(G(t), 1)
1510
- ]),
1511
- td: W(({ td: t }) => [
1512
- t.shape ? (r(), y("div", oo, [
1513
- w("span", null, G(t.content), 1)
1514
- ])) : (r(), y("div", {
1515
- key: 1,
1516
- innerHTML: t
1517
- }, null, 8, so))
1518
- ]),
1519
- _: 1
1520
- }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
1521
- ]),
1522
- _: 2
1523
- }, [
1524
- e.value.table.useDialog ? {
1525
- name: "title",
1526
- fn: W(() => [
1527
- Pt(G(be.value.title), 1)
1528
- ]),
1529
- key: "0"
1530
- } : void 0,
1531
- e.value.table.useDialog ? {
1532
- name: "actions",
1533
- fn: W(() => [
1534
- w("button", {
1535
- tabindex: "0",
1536
- class: "vue-ui-user-options-button",
1537
- onClick: s[4] || (s[4] = (t) => Ve(e.value.userOptions.callbacks.csv))
1538
- }, [
1539
- _e(c(It), {
1540
- name: "excel",
1541
- stroke: be.value.props.color
1542
- }, null, 8, ["stroke"])
1543
- ])
1544
- ]),
1545
- key: "1"
1546
- } : void 0
1547
- ]), 1040)) : x("", !0),
1548
- c(vt) ? (r(), le(Wl, { key: 8 })) : x("", !0)
1549
- ], 46, ql));
1550
- }
1551
- }, $o = /* @__PURE__ */ Gl(no, [["__scopeId", "data-v-85c86e6f"]]);
1552
- export {
1553
- $o as default
1554
- };