vue-data-ui 3.4.5 → 3.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/dist/{PackageVersion-C-wnwkC4.js → PackageVersion-QNVkHOgG.js} +1 -1
  2. package/dist/{Title-BWp-37K_.js → Title-l36lOBMx.js} +1 -1
  3. package/dist/Tooltip-oWCO1HKy.js +205 -0
  4. package/dist/{UserOptions-1OZ3jcm6.js → UserOptions-CnzumGJj.js} +113 -113
  5. package/dist/components/vue-ui-3d-bar.js +1 -1
  6. package/dist/components/vue-ui-accordion.js +1 -1
  7. package/dist/components/vue-ui-age-pyramid.js +1 -1
  8. package/dist/components/vue-ui-annotator.js +1 -1
  9. package/dist/components/vue-ui-bullet.js +1 -1
  10. package/dist/components/vue-ui-candlestick.js +1 -1
  11. package/dist/components/vue-ui-carousel-table.js +1 -1
  12. package/dist/components/vue-ui-chestnut.js +1 -1
  13. package/dist/components/vue-ui-chord.js +1 -1
  14. package/dist/components/vue-ui-circle-pack.js +1 -1
  15. package/dist/components/vue-ui-cursor.js +1 -1
  16. package/dist/components/vue-ui-dashboard.js +1 -1
  17. package/dist/components/vue-ui-digits.js +1 -1
  18. package/dist/components/vue-ui-donut-evolution.js +1 -1
  19. package/dist/components/vue-ui-donut.js +1 -1
  20. package/dist/components/vue-ui-dumbbell.js +1 -1
  21. package/dist/components/vue-ui-flow.js +1 -1
  22. package/dist/components/vue-ui-funnel.js +1 -1
  23. package/dist/components/vue-ui-galaxy.js +1 -1
  24. package/dist/components/vue-ui-gauge.js +1 -1
  25. package/dist/components/vue-ui-gizmo.js +1 -1
  26. package/dist/components/vue-ui-heatmap.js +1 -1
  27. package/dist/components/vue-ui-history-plot.js +1 -1
  28. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  29. package/dist/components/vue-ui-kpi.js +1 -1
  30. package/dist/components/vue-ui-mini-loader.js +1 -1
  31. package/dist/components/vue-ui-molecule.js +1 -1
  32. package/dist/components/vue-ui-mood-radar.js +1 -1
  33. package/dist/components/vue-ui-nested-donuts.js +1 -1
  34. package/dist/components/vue-ui-onion.js +1 -1
  35. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  36. package/dist/components/vue-ui-quadrant.js +1 -1
  37. package/dist/components/vue-ui-quick-chart.js +1 -1
  38. package/dist/components/vue-ui-radar.js +1 -1
  39. package/dist/components/vue-ui-rating.js +1 -1
  40. package/dist/components/vue-ui-relation-circle.js +1 -1
  41. package/dist/components/vue-ui-ridgeline.js +1 -1
  42. package/dist/components/vue-ui-rings.js +1 -1
  43. package/dist/components/vue-ui-scatter.js +1 -1
  44. package/dist/components/vue-ui-skeleton.js +1 -1
  45. package/dist/components/vue-ui-smiley.js +1 -1
  46. package/dist/components/vue-ui-spark-trend.js +1 -1
  47. package/dist/components/vue-ui-sparkbar.js +1 -1
  48. package/dist/components/vue-ui-sparkgauge.js +1 -1
  49. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  50. package/dist/components/vue-ui-sparkline.js +1 -1
  51. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  52. package/dist/components/vue-ui-stackbar.js +1 -1
  53. package/dist/components/vue-ui-strip-plot.js +1 -1
  54. package/dist/components/vue-ui-table-heatmap.js +1 -1
  55. package/dist/components/vue-ui-table-sparkline.js +1 -1
  56. package/dist/components/vue-ui-table.js +1 -1
  57. package/dist/components/vue-ui-thermometer.js +1 -1
  58. package/dist/components/vue-ui-timer.js +1 -1
  59. package/dist/components/vue-ui-tiremarks.js +1 -1
  60. package/dist/components/vue-ui-treemap.js +1 -1
  61. package/dist/components/vue-ui-vertical-bar.js +1 -1
  62. package/dist/components/vue-ui-waffle.js +1 -1
  63. package/dist/components/vue-ui-wheel.js +1 -1
  64. package/dist/components/vue-ui-word-cloud.js +1 -1
  65. package/dist/components/vue-ui-world.js +1 -1
  66. package/dist/components/vue-ui-xy-canvas.js +1 -1
  67. package/dist/components/vue-ui-xy.js +1 -1
  68. package/dist/style.css +1 -1
  69. package/dist/types/vue-data-ui.d.ts +1 -0
  70. package/dist/{useNestedProp-dJX_8vvZ.js → useNestedProp-BjZe1Y85.js} +2 -1
  71. package/dist/{vue-data-ui-BMm1cH_7.js → vue-data-ui-BFwmY6si.js} +63 -63
  72. package/dist/vue-data-ui.js +64 -64
  73. package/dist/{vue-ui-3d-bar-KbXMgsD4.js → vue-ui-3d-bar-D1GoJWeg.js} +3 -3
  74. package/dist/{vue-ui-accordion-UpZ765hd.js → vue-ui-accordion-CZ0thhxa.js} +1 -1
  75. package/dist/{vue-ui-age-pyramid-CAnvJqVu.js → vue-ui-age-pyramid-BDGFSsA5.js} +3 -3
  76. package/dist/{vue-ui-annotator--8upDtTs.js → vue-ui-annotator-BylDgUVb.js} +2 -2
  77. package/dist/{vue-ui-bullet-vEsqg-Wk.js → vue-ui-bullet-C3GtE3bF.js} +3 -3
  78. package/dist/{vue-ui-candlestick-C2q8lhDv.js → vue-ui-candlestick-BlzmB2vM.js} +3 -3
  79. package/dist/{vue-ui-carousel-table-7ZDbJPdA.js → vue-ui-carousel-table-TKa7KYZ0.js} +2 -2
  80. package/dist/{vue-ui-chestnut-jHiG8RhC.js → vue-ui-chestnut-DNxARRsx.js} +2 -2
  81. package/dist/{vue-ui-chord-Br7aGEQ3.js → vue-ui-chord-BM7tZig3.js} +3 -3
  82. package/dist/{vue-ui-circle-pack-CkDTsG3R.js → vue-ui-circle-pack-BZU75WUb.js} +3 -3
  83. package/dist/{vue-ui-cursor-BqWDtj2I.js → vue-ui-cursor-ik59bfC4.js} +1 -1
  84. package/dist/{vue-ui-dashboard-r8kE5hha.js → vue-ui-dashboard-pNXFzQu4.js} +64 -64
  85. package/dist/{vue-ui-digits-Cdn6EcYe.js → vue-ui-digits-ByNNcWXi.js} +1 -1
  86. package/dist/{vue-ui-donut-SyV7u3Fk.js → vue-ui-donut-CRvfqCUO.js} +3 -3
  87. package/dist/{vue-ui-donut-evolution-DiUVj1kD.js → vue-ui-donut-evolution-CCdIWlyZ.js} +3 -3
  88. package/dist/{vue-ui-dumbbell-Dy0L7H8E.js → vue-ui-dumbbell-CLmwZyrf.js} +3 -3
  89. package/dist/vue-ui-flow-BY8XQXKF.js +964 -0
  90. package/dist/{vue-ui-funnel-CI6hxhV_.js → vue-ui-funnel-BmxhWoVW.js} +3 -3
  91. package/dist/{vue-ui-galaxy-EzuozsBr.js → vue-ui-galaxy-BgtKffX5.js} +3 -3
  92. package/dist/{vue-ui-gauge-fB0yh37Y.js → vue-ui-gauge-DLpK4-Cd.js} +3 -3
  93. package/dist/{vue-ui-gizmo-Bdgj1nqN.js → vue-ui-gizmo-CCNboEnL.js} +2 -2
  94. package/dist/{vue-ui-heatmap-BmVWhxg-.js → vue-ui-heatmap-BSDmuvq8.js} +4 -4
  95. package/dist/{vue-ui-history-plot-C2glM-Ch.js → vue-ui-history-plot-s8wYm7fn.js} +3 -3
  96. package/dist/{vue-ui-kpi-CVpJH51G.js → vue-ui-kpi-BGGff8LM.js} +2 -2
  97. package/dist/{vue-ui-mini-loader-b4D0tPsD.js → vue-ui-mini-loader-CSF-7TJL.js} +1 -1
  98. package/dist/{vue-ui-molecule-D4SUfwjo.js → vue-ui-molecule-BYWE2ONy.js} +2 -2
  99. package/dist/{vue-ui-mood-radar-CJt19tCD.js → vue-ui-mood-radar-BOvaA1Jq.js} +3 -3
  100. package/dist/{vue-ui-nested-donuts-vpUAKVVs.js → vue-ui-nested-donuts-BUGkuN56.js} +3 -3
  101. package/dist/{vue-ui-onion-DhgSgY5m.js → vue-ui-onion-CPshjlgf.js} +3 -3
  102. package/dist/{vue-ui-parallel-coordinate-plot-B6SLr7sn.js → vue-ui-parallel-coordinate-plot-orQotxDr.js} +3 -3
  103. package/dist/{vue-ui-quadrant-Ctik4Ah_.js → vue-ui-quadrant-CM3iH31f.js} +3 -3
  104. package/dist/{vue-ui-quick-chart-BM5eEuC7.js → vue-ui-quick-chart-BhO2YQn0.js} +2 -2
  105. package/dist/{vue-ui-radar-D8SgJ4tK.js → vue-ui-radar-CNZVFG-v.js} +3 -3
  106. package/dist/{vue-ui-rating-CvJlfRvs.js → vue-ui-rating-CiMoFM_c.js} +1 -1
  107. package/dist/{vue-ui-relation-circle-s1sWs_WI.js → vue-ui-relation-circle-BX48Cgx3.js} +3 -3
  108. package/dist/{vue-ui-ridgeline-DjAxHRqR.js → vue-ui-ridgeline-MQAF9nvq.js} +3 -3
  109. package/dist/{vue-ui-rings-vO1AGupU.js → vue-ui-rings-BPhLSCUX.js} +3 -3
  110. package/dist/{vue-ui-scatter-DN_7iGgB.js → vue-ui-scatter-C3dD6T6q.js} +3 -3
  111. package/dist/{vue-ui-skeleton-DGSWEtd8.js → vue-ui-skeleton-Be8xm0gy.js} +2 -2
  112. package/dist/{vue-ui-smiley-D3k4b6h1.js → vue-ui-smiley-sGFRbn31.js} +1 -1
  113. package/dist/{vue-ui-spark-trend-D9ZTHsa9.js → vue-ui-spark-trend-suNsujGP.js} +2 -2
  114. package/dist/{vue-ui-sparkbar-DZpkkEtB.js → vue-ui-sparkbar-BjD2kUth.js} +2 -2
  115. package/dist/{vue-ui-sparkgauge-DGtUfL_p.js → vue-ui-sparkgauge-C816ocz6.js} +2 -2
  116. package/dist/{vue-ui-sparkhistogram-BFTP4gTI.js → vue-ui-sparkhistogram-CAgfueUq.js} +2 -2
  117. package/dist/{vue-ui-sparkline-CU8Va2AD.js → vue-ui-sparkline-BmVwG9vw.js} +2 -2
  118. package/dist/{vue-ui-sparkstackbar-UVkUOUYB.js → vue-ui-sparkstackbar-DoFTW_u_.js} +2 -2
  119. package/dist/{vue-ui-stackbar-ksABSPMl.js → vue-ui-stackbar-C1qHHSuI.js} +3 -3
  120. package/dist/{vue-ui-strip-plot-CtnEtJKi.js → vue-ui-strip-plot-Ccz9BiSl.js} +3 -3
  121. package/dist/{vue-ui-table-D_r5Yi-t.js → vue-ui-table-IKsrsEUh.js} +3 -3
  122. package/dist/{vue-ui-table-heatmap-zbRs5HKh.js → vue-ui-table-heatmap-B4rjR34n.js} +2 -2
  123. package/dist/{vue-ui-table-sparkline-g3zovGbg.js → vue-ui-table-sparkline-B71QVMkq.js} +2 -2
  124. package/dist/{vue-ui-thermometer-ChGRvASK.js → vue-ui-thermometer-fY5WxAbX.js} +3 -3
  125. package/dist/{vue-ui-timer-ClBUDPDN.js → vue-ui-timer-BBdNJ0fK.js} +3 -3
  126. package/dist/{vue-ui-tiremarks-Drrj3Zrx.js → vue-ui-tiremarks-Co0t61HH.js} +3 -3
  127. package/dist/{vue-ui-treemap-B9iT80T5.js → vue-ui-treemap-ujTn_36A.js} +3 -3
  128. package/dist/{vue-ui-vertical-bar-DtNL4lAc.js → vue-ui-vertical-bar-BNp-Vl0q.js} +4 -4
  129. package/dist/{vue-ui-waffle-DtotUBJA.js → vue-ui-waffle-CRPYb9mZ.js} +3 -3
  130. package/dist/{vue-ui-wheel-D6F9i5SF.js → vue-ui-wheel-BvycoQ3Z.js} +3 -3
  131. package/dist/{vue-ui-word-cloud-B0T-B3Oa.js → vue-ui-word-cloud-Cjs46-dC.js} +3 -3
  132. package/dist/{vue-ui-world-Bwvp67h5.js → vue-ui-world-BTLAdJeD.js} +2 -2
  133. package/dist/{vue-ui-xy-BDCmrr2a.js → vue-ui-xy-CBRHUbAn.js} +4 -4
  134. package/dist/{vue-ui-xy-canvas-Dm-LZ-LP.js → vue-ui-xy-canvas-BGl_2pHw.js} +4 -4
  135. package/package.json +1 -1
  136. package/dist/Tooltip-68Yi_FFl.js +0 -200
  137. package/dist/vue-ui-flow-_6RQ-gmk.js +0 -931
@@ -1,931 +0,0 @@
1
- import { defineAsyncComponent as H, ref as c, computed as d, onMounted as no, toRefs as so, watch as Te, createElementBlock as g, openBlock as i, unref as r, normalizeStyle as W, normalizeClass as wt, createBlock as q, createCommentVNode as T, createElementVNode as G, createVNode as xe, createSlots as $t, withCtx as b, renderSlot as k, normalizeProps as Z, guardReactiveProps as ee, Fragment as ve, renderList as de, toDisplayString as he, Teleport as ro, resolveDynamicComponent as uo, mergeProps as io, createTextVNode as At, nextTick as co } from "vue";
2
- import { c as Ge, t as vo, o as Tt, f as ho, b as fo, p as L, e as po, x, h as go, d as fe, X as mo, J as xt, I as yo, a as Ue, P as bo, Q as Co, G as ko } from "./lib-C_mNZmhD.js";
3
- import { t as wo, u as $o } from "./useResponsive-DfdjqQps.js";
4
- import { u as Ao, a as St } from "./useNestedProp-dJX_8vvZ.js";
5
- import { u as To } from "./usePrinter-DTzqpYKF.js";
6
- import { u as xo, B as So } from "./BaseScanner-BgWxam9d.js";
7
- import { u as _o } from "./useSvgExport-DrjCWun4.js";
8
- import { u as Oo } from "./useUserOptionState-BIvW1Kz7.js";
9
- import { u as No } from "./useChartAccessibility-9icAAmYg.js";
10
- import { t as Fo } from "./themes-AUNCOb2G.js";
11
- import Eo from "./Legend-G6GMcdAc.js";
12
- import Io from "./Title-BWp-37K_.js";
13
- import Po from "./img-BecE5qXd.js";
14
- import { _ as Mo } from "./_plugin-vue_export-helper-CHgC5LLL.js";
15
- const Do = ["id"], Lo = {
16
- key: 1,
17
- ref: "noTitle",
18
- class: "vue-data-ui-no-title-space",
19
- style: "height:36px; width: 100%;background:transparent"
20
- }, Bo = ["id"], zo = ["xmlns", "viewBox"], Ro = ["width", "height"], Ho = ["id"], Wo = ["stop-color"], Go = ["stop-color"], Uo = ["d", "fill", "stroke", "stroke-width"], Yo = ["x", "y", "height", "width", "fill", "stroke", "stroke-width", "onMouseenter", "onMouseleave", "onClick"], jo = { key: 1 }, Vo = ["x", "y", "font-size", "fill"], Xo = ["x", "y", "font-size", "fill"], qo = {
21
- key: 4,
22
- class: "vue-data-ui-watermark"
23
- }, Jo = ["id"], Ko = ["onClick"], Qo = ["innerHTML"], Zo = {
24
- __name: "vue-ui-flow",
25
- props: {
26
- config: {
27
- type: Object,
28
- default() {
29
- return {};
30
- }
31
- },
32
- dataset: {
33
- type: Array,
34
- default() {
35
- return [];
36
- }
37
- }
38
- },
39
- setup(_t, { expose: Ot }) {
40
- const Nt = H(() => import("./Tooltip-68Yi_FFl.js")), Ft = H(() => import("./BaseIcon-BmMbm4d0.js")), Et = H(() => import("./vue-ui-accordion-UpZ765hd.js")), It = H(() => import("./DataTable-BT7VF2ua.js")), Pt = H(() => import("./PenAndPaper-DSvu9dwa.js")), Mt = H(() => import("./UserOptions-1OZ3jcm6.js")), Dt = H(() => import("./PackageVersion-C-wnwkC4.js")), Lt = H(() => import("./BaseDraggableDialog-ymf2sfB8.js")), { vue_ui_flow: Bt } = Ao(), F = _t, U = c(Ge()), M = c(null), Ye = c(0), je = c(0), Se = c(!1), _e = c(""), Ve = c(null), Xe = c(null), qe = c(null), te = c(null), pe = c(null), Je = c(!1), oe = c(null), Oe = c(null), Ke = d(() => !!F.dataset && F.dataset.length);
41
- no(() => {
42
- Je.value = !0, Ze();
43
- });
44
- const Y = c(!1);
45
- function Qe(t) {
46
- Y.value = t, Ye.value += 1;
47
- }
48
- const e = c(Pe()), { loading: Ne, FINAL_DATASET: ge, manualLoading: Fe } = xo({
49
- ...so(F),
50
- FINAL_CONFIG: e,
51
- prepareConfig: Pe,
52
- skeletonDataset: [
53
- ["A", "B", 2, "#CACACA"],
54
- ["B", "C", 1, "#CACACA"],
55
- ["C", "D", 0.5, "#CACACA"],
56
- ["E", "F", 1, "#AAAAAA"],
57
- ["F", "G", 0.5, "#AAAAAA"],
58
- ["G", "H", 0.25, "#AAAAAA"]
59
- ],
60
- skeletonConfig: vo({
61
- defaultConfig: e.value,
62
- userConfig: {
63
- userOptions: { show: !1 },
64
- nodeCategories: {
65
- B: "A",
66
- C: "B"
67
- },
68
- nodeCategoryColors: {
69
- A: "#CACACA",
70
- B: "#AAAAAA"
71
- },
72
- table: { show: !1 },
73
- style: {
74
- chart: {
75
- backgroundColor: "#99999930",
76
- legend: {
77
- backgroundColor: "transparent"
78
- },
79
- nodes: {
80
- labels: {
81
- show: !1
82
- },
83
- stroke: "#666666"
84
- },
85
- links: {
86
- stroke: "#666666"
87
- }
88
- }
89
- }
90
- }
91
- })
92
- }), zt = d(() => !!e.value.debug);
93
- function Ze() {
94
- if (Tt(F.dataset) && (ho({
95
- componentName: "VueUiFlow",
96
- type: "dataset",
97
- debug: zt.value
98
- }), Fe.value = !0), Tt(F.dataset) || (Fe.value = e.value.loading), e.value.responsive) {
99
- const t = wo(() => {
100
- const { width: l, height: o } = $o({
101
- chart: M.value,
102
- title: e.value.style.chart.title.text ? Xe.value : null,
103
- legend: e.value.style.chart.legend.show ? Ve.value : null,
104
- source: qe.value
105
- });
106
- requestAnimationFrame(() => {
107
- ot.value = l, lt.value = o;
108
- });
109
- });
110
- te.value && (pe.value && te.value.unobserve(pe.value), te.value.disconnect()), te.value = new ResizeObserver(t), pe.value = M.value.parentNode, te.value.observe(pe.value);
111
- }
112
- }
113
- const { userOptionsVisible: Ee, setUserOptionsVisibility: et, keepUserOptionState: tt } = Oo({ config: e.value }), { svgRef: Ie } = No({
114
- config: e.value.style.chart.title
115
- });
116
- function Pe() {
117
- const t = St({
118
- userConfig: F.config,
119
- defaultConfig: Bt
120
- });
121
- let l = t;
122
- return t.theme ? l = {
123
- ...St({
124
- userConfig: Fo.vue_ui_flow[t.theme] || F.config,
125
- defaultConfig: t
126
- }),
127
- customPalette: fo[t.theme] || L
128
- } : l = t, l.nodeCategories = F.config.nodeCategories || {}, l.nodeCategoryColors = F.config.nodeCategoryColors || {}, l;
129
- }
130
- const ot = c(e.value.style.chart.width), lt = c(e.value.style.chart.height);
131
- Te(
132
- () => F.config,
133
- (t) => {
134
- Ne.value || (e.value = Pe()), Ee.value = !e.value.userOptions.showOnChartHover, Ze(), je.value += 1, E.value.showTable = e.value.table.show;
135
- },
136
- { deep: !0 }
137
- ), Te(() => F.dataset, (t) => {
138
- Array.isArray(t) && t.length > 0 && (Fe.value = !1);
139
- }, { deep: !0 });
140
- const { isPrinting: at, isImaging: nt, generatePdf: st, generateImage: rt } = To({
141
- elementId: `flow_${U.value}`,
142
- fileName: e.value.style.chart.title.text || "vue-ui-flow",
143
- options: e.value.userOptions.print
144
- }), Rt = d(() => e.value.userOptions.show && !e.value.style.chart.title.text), me = d(() => po(e.value.customPalette)), ye = d(() => e.value.style.chart.nodes.width), E = c({
145
- showTable: e.value.table.show,
146
- showTooltip: e.value.style.chart.tooltip.show
147
- });
148
- Te(e, () => {
149
- E.value = {
150
- showTable: e.value.table.show,
151
- showTooltip: e.value.style.chart.tooltip.show
152
- };
153
- }, { immediate: !0 });
154
- const ut = d(() => !ge.value || !ge.value.length ? [] : ge.value.map((t, l) => [
155
- t[0],
156
- t[1],
157
- x(t[2]),
158
- t[3] ? go(t[3]) : me.value[l] || me.value[l % me.value.length] || L[l] || L[l % L.length]
159
- ]));
160
- function Ht(t) {
161
- const l = {}, o = {};
162
- function n(a, u) {
163
- l[a] || (l[a] = {
164
- level: null,
165
- inflow: 0,
166
- outflow: 0,
167
- children: [],
168
- color: null,
169
- uid: Ge()
170
- }), l[a].level === null && (l[a].level = u), o[u] || (o[u] = []), o[u].includes(a) || o[u].push(a);
171
- }
172
- t.forEach(([a, u, h]) => {
173
- const f = l[a]?.level ?? 0, _ = f + 1;
174
- n(a, f), n(u, _), l[a].children.push({ target: u, value: h }), l[a].outflow += h, l[u].inflow += h;
175
- });
176
- const s = new Set(t.map(([a]) => a)), $ = new Set(t.map(([, a]) => a)), K = Array.from(s).filter((a) => !$.has(a)), re = {};
177
- K.forEach((a, u) => {
178
- re[a] = me.value[u] || L[u % L.length];
179
- });
180
- const ue = {};
181
- t.forEach(([a, u, h, f]) => {
182
- f && (ue[a] = f, ue[u] = f);
183
- }), Object.keys(l).forEach((a, u) => {
184
- const h = e.value.nodeCategories?.[a], f = h ? e.value.nodeCategoryColors?.[h] : null;
185
- l[a].color = ue[a] || f || (K.includes(a) ? re[a] : null) || L[u % L.length];
186
- }), Object.keys(l).forEach((a) => {
187
- l[a].value = Math.max(l[a].inflow, l[a].outflow);
188
- });
189
- const we = le.value, ze = vt.value.width, Q = vt.value.height, D = Object.keys(o).map(Number).sort((a, u) => a - u), $e = D.length || 1, Re = $e > 1 ? ze / ($e - 1) : 0, A = Number(ye.value), P = Number(
190
- e.value.style.chart.nodes.gapPx ?? e.value.style.chart.nodes.gap ?? 8
191
- ), ie = Number(e.value.style.chart.nodes.minHeight || 0);
192
- function v(a) {
193
- const u = o[a], h = u.length;
194
- if (!h) return 1 / 0;
195
- const f = Math.max(0, (h - 1) * P), _ = Math.max(0, Q - f), B = Math.min(ie, h ? _ / h : 0);
196
- let C = 0, O = u.map((p) => l[p].value || 0), y = O.reduce((p, N) => p + N, 0);
197
- for (let p = 0; p < 12; p += 1) {
198
- const N = y > 0 ? (_ - C) / y : 0, z = [];
199
- for (let I = 0; I < O.length; I += 1) {
200
- const R = O[I];
201
- R < 0 || R * N < B && z.push(I);
202
- }
203
- if (!z.length) return Math.max(0, N);
204
- for (const I of z)
205
- C += B, y -= O[I], O[I] = -1;
206
- if (y <= 0) return 0;
207
- }
208
- return y > 0 ? Math.max(0, (_ - C) / y) : 0;
209
- }
210
- const m = D.map(v), V = m.length ? Math.min(...m) : 0, X = {};
211
- D.forEach((a) => {
212
- const u = o[a], h = u.length, f = Math.max(0, (h - 1) * P), _ = Math.max(0, Q - f), B = Math.min(ie, h ? _ / h : 0), C = u.map(
213
- (p) => Math.max(B, (l[p].value || 0) * V)
214
- ), O = C.reduce((p, N) => p + N, 0) + f;
215
- let y = Math.max(0, (Q - O) / 2);
216
- u.forEach((p, N) => {
217
- const z = C[N], I = we.left + a * Re, R = y;
218
- X[p] = {
219
- x: I,
220
- y: R,
221
- absoluteY: R,
222
- height: z,
223
- i: N,
224
- color: l[p].color,
225
- value: l[p].value
226
- }, y += z, N < h - 1 && (y += P);
227
- });
228
- });
229
- const bt = [], ce = we.top, He = {}, We = {};
230
- Object.keys(l).forEach((a) => {
231
- He[a] = X[a]?.y ?? 0, We[a] = 0;
232
- });
233
- const eo = 1e-6, to = 0.25;
234
- return D.forEach((a) => {
235
- o[a].forEach((h) => {
236
- const f = l[h], _ = X[h];
237
- if (!f.children || !f.children.length) return;
238
- let B = _.y;
239
- f.children.forEach(({ target: C, value: O }) => {
240
- const y = X[C], p = l[C], N = f.outflow > 0 ? O / f.outflow : 0, z = p.inflow > 0 ? O / p.inflow : 0, I = x(B + ce), R = x(B + N * _.height + ce), Ct = He[C];
241
- let Ae = Ct + z * y.height;
242
- We[C] += O;
243
- const oo = p.inflow > 0 && We[C] >= p.inflow - eo, kt = y.y + y.height;
244
- (oo || Ae > kt - to) && (Ae = kt);
245
- const lo = x(Ct + ce), ao = x(Ae + ce);
246
- bt.push({
247
- id: Ge(),
248
- source: h,
249
- target: C,
250
- path: `M ${x(_.x + A)} ${I} L ${x(_.x + A)} ${R} L ${x(y.x)} ${ao} L ${x(y.x)} ${lo} Z`,
251
- value: O,
252
- sourceColor: f.color,
253
- targetColor: l[C].color
254
- }), B = R - ce, He[C] = Ae;
255
- });
256
- });
257
- }), { nodeCoordinates: X, links: bt };
258
- }
259
- const S = d(() => {
260
- const t = Ht(ge.value);
261
- return {
262
- nodes: Object.keys(t.nodeCoordinates).map((l, o) => ({
263
- ...t.nodeCoordinates[l],
264
- name: l
265
- })),
266
- links: t.links
267
- };
268
- }), it = d(() => ot.value), ct = d(() => lt.value), le = d(() => e.value.style.chart.padding), vt = d(() => ({
269
- width: Math.max(0, it.value - 40 - le.value.right - le.value.left),
270
- height: Math.max(0, ct.value - le.value.top - le.value.bottom)
271
- })), ae = d(() => ({
272
- width: it.value,
273
- height: ct.value
274
- }));
275
- function Wt(t) {
276
- const l = {}, o = {}, n = /* @__PURE__ */ new Set();
277
- return ut.value.forEach(([s, $, K]) => {
278
- l[s] || (l[s] = []), o[$] || (o[$] = []), l[s].push($), o[$].push(s);
279
- }), l[t] && l[t].forEach((s) => n.add(s)), o[t] && o[t].forEach((s) => n.add(s)), Array.from(n).concat(t);
280
- }
281
- const w = c(null), J = c(null), ne = c(null), be = c(!1);
282
- function Gt(t, l) {
283
- j.value = [], w.value = Wt(t.name), J.value = t.name;
284
- const o = t.name, n = ut.value;
285
- let s = 0, $ = 0, K = [], re = [];
286
- const ue = new Set(n.map(([v]) => v)), we = new Set(n.map(([, v]) => v)), ze = Array.from(ue).filter((v) => !we.has(v)), Q = n.filter(([v]) => ze.includes(v)).reduce((v, [m, V, X]) => v + X, 0), D = {};
287
- S.value.nodes.forEach((v) => {
288
- D[v.name] = v.color;
289
- }), n.forEach(([v, m, V]) => {
290
- m === o && (s += V, K.push({ source: v, value: V, color: D[v] })), v === o && ($ += V, re.push({ target: m, value: V, color: D[m] }));
291
- });
292
- const $e = Math.max(s, $), Re = Q > 0 ? $e / Q * 100 : 0, A = {
293
- name: o,
294
- inflow: s,
295
- outflow: $,
296
- from: K,
297
- to: re,
298
- percentOfTotal: Re,
299
- color: D[o] || "#000000"
300
- };
301
- e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: A, seriesIndex: l }), ne.value = { datapoint: A }, Se.value = !0;
302
- let P = "";
303
- const ie = e.value.style.chart.tooltip.customFormat;
304
- if (be.value = !1, ko(ie))
305
- try {
306
- const v = ie({
307
- datapoint: A,
308
- series: S.value,
309
- config: e.value
310
- });
311
- typeof v == "string" && (_e.value = v, be.value = !0);
312
- } catch {
313
- console.warn("Custom format cannot be applied.");
314
- }
315
- if (!be.value) {
316
- const v = e.value.style.chart.tooltip.showPercentage ? `<div>${fe({
317
- p: e.value.style.chart.tooltip.translations.percentOfTotal,
318
- v: A.percentOfTotal,
319
- s: "%",
320
- r: e.value.style.chart.tooltip.roundingPercentage
321
- })}</div>` : "";
322
- P += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;"><span style="margin-right:4px; color:${A.color}">⏹</span>${A.name}${v}</div>`, A.from.length && (P += `<div>${e.value.style.chart.tooltip.translations.from}</div>`, A.from.forEach((m) => {
323
- P += `<div><span style="color:${m.color}">⏹←</span> ${m.source}: ${Ue(
324
- e.value.style.chart.nodes.labels.formatter,
325
- m.value,
326
- fe({
327
- p: e.value.style.chart.nodes.labels.prefix,
328
- v: m.value,
329
- s: e.value.style.chart.nodes.labels.suffix,
330
- r: e.value.style.chart.nodes.labels.rounding
331
- })
332
- )}</div>`;
333
- })), A.to.length && (P += `<div style="margin-top:6px;">${e.value.style.chart.tooltip.translations.to}</div>`, A.to.forEach((m) => {
334
- P += `<div><span style="color:${m.color}">⏹→</span> ${m.target}: ${Ue(
335
- e.value.style.chart.nodes.labels.formatter,
336
- m.value,
337
- fe({
338
- p: e.value.style.chart.nodes.labels.prefix,
339
- v: m.value,
340
- s: e.value.style.chart.nodes.labels.suffix,
341
- r: e.value.style.chart.nodes.labels.rounding
342
- })
343
- )}</div>`;
344
- })), _e.value = P;
345
- }
346
- }
347
- function dt(t) {
348
- const l = ne.value;
349
- e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: l, seriesIndex: t }), w.value = null, J.value = null, Se.value = !1;
350
- }
351
- function Ut(t) {
352
- const l = ne.value;
353
- e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: l, seriesIndex: t });
354
- }
355
- const ht = d(() => S.value.links.map(
356
- ({ source: t, target: l, sourceColor: o, targetColor: n, value: s }) => ({
357
- source: t,
358
- target: l,
359
- sourceColor: o,
360
- targetColor: n,
361
- value: s
362
- })
363
- ));
364
- function Me(t = null) {
365
- co(() => {
366
- const l = ht.value.map((s, $) => [[s.source], [s.target], [s.value]]), o = [
367
- [e.value.style.chart.title.text],
368
- [e.value.style.chart.title.subtitle.text],
369
- [
370
- [e.value.table.columnNames.source],
371
- [e.value.table.columnNames.target],
372
- [e.value.table.columnNames.value]
373
- ]
374
- ].concat(l), n = bo(o);
375
- t ? t(n) : Co({
376
- csvContent: n,
377
- title: e.value.style.chart.title.text || "vue-ui-flow"
378
- });
379
- });
380
- }
381
- const Ce = d(() => {
382
- const t = [
383
- e.value.table.columnNames.source,
384
- e.value.table.columnNames.target,
385
- e.value.table.columnNames.value
386
- ], l = ht.value.map((s, $) => [
387
- {
388
- color: s.sourceColor,
389
- name: s.source,
390
- shape: "square"
391
- },
392
- {
393
- color: s.targetColor,
394
- name: s.target,
395
- shape: "square"
396
- },
397
- fe({
398
- p: e.value.style.chart.nodes.labels.prefix,
399
- v: s.value,
400
- s: e.value.style.chart.nodes.labels.suffix,
401
- r: e.value.style.chart.nodes.labels.rounding
402
- })
403
- ]), o = {
404
- th: {
405
- backgroundColor: e.value.table.th.backgroundColor,
406
- color: e.value.table.th.color,
407
- outline: e.value.table.th.outline
408
- },
409
- td: {
410
- backgroundColor: e.value.table.td.backgroundColor,
411
- color: e.value.table.td.color,
412
- outline: e.value.table.td.outline
413
- },
414
- breakpoint: e.value.table.responsiveBreakpoint
415
- };
416
- return {
417
- colNames: [
418
- e.value.table.columnNames.source,
419
- e.value.table.columnNames.target,
420
- e.value.table.columnNames.value
421
- ],
422
- head: t,
423
- body: l,
424
- config: o
425
- };
426
- });
427
- function Yt() {
428
- return S.value;
429
- }
430
- function ft() {
431
- E.value.showTable = !E.value.showTable;
432
- }
433
- const ke = c(!1);
434
- function De() {
435
- ke.value = !ke.value;
436
- }
437
- function pt() {
438
- E.value.showTooltip = !E.value.showTooltip;
439
- }
440
- const gt = d(() => {
441
- const t = new Set(
442
- S.value.nodes.map(
443
- (l) => e.value.nodeCategories[l.name] || "__uncategorized__"
444
- )
445
- );
446
- return Array.from(t).map((l) => ({
447
- name: l,
448
- color: e.value.nodeCategoryColors[l] || L[0],
449
- shape: "square",
450
- count: S.value.nodes.filter(
451
- (o) => (e.value.nodeCategories[o.name] || "__uncategorized__") === l
452
- ).length
453
- })).map((l, o) => ({
454
- ...l,
455
- segregate: () => Be({ legend: l, i: o }),
456
- opacity: j.value.length ? j.value.includes(o) ? 1 : 0.5 : 1,
457
- display: `${l.name} (${l.count})`
458
- }));
459
- }), Le = d(
460
- () => gt.value.filter((t) => t.name !== "__uncategorized__")
461
- ), j = c([]);
462
- function Be({ legend: t, i: l }) {
463
- const o = t.name;
464
- if (w.value?.every(
465
- (n) => e.value.nodeCategories[n] === o
466
- )) {
467
- w.value = null, J.value = null, j.value = [];
468
- return;
469
- }
470
- j.value = [l], w.value = S.value.nodes.filter((n) => e.value.nodeCategories[n.name] === o).map((n) => n.name), J.value = null;
471
- }
472
- const jt = d(() => ({
473
- cy: "flow-legend",
474
- backgroundColor: e.value.style.chart.legend.backgroundColor,
475
- color: e.value.style.chart.legend.color,
476
- fontSize: e.value.style.chart.legend.fontSize,
477
- paddingBottom: e.value.style.chart.legend.paddingBottom,
478
- fontWeight: e.value.style.chart.legend.bold ? "bold" : "normal"
479
- }));
480
- async function Vt({ scale: t = 2 } = {}) {
481
- if (!M.value) return;
482
- const { width: l, height: o } = M.value.getBoundingClientRect(), n = l / o, { imageUri: s, base64: $ } = await Po({ domElement: M.value, base64: !0, img: !0, scale: t });
483
- return {
484
- imageUri: s,
485
- base64: $,
486
- title: e.value.style.chart.title.text,
487
- width: l,
488
- height: o,
489
- aspectRatio: n
490
- };
491
- }
492
- const se = d(() => {
493
- const t = e.value.table.useDialog && !e.value.table.show, l = E.value.showTable;
494
- return {
495
- component: t ? Lt : Et,
496
- title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
497
- props: t ? {
498
- backgroundColor: e.value.table.th.backgroundColor,
499
- color: e.value.table.th.color,
500
- headerColor: e.value.table.th.color,
501
- headerBg: e.value.table.th.backgroundColor,
502
- isFullscreen: Y.value,
503
- fullscreenParent: M.value,
504
- forcedWidth: Math.min(800, window.innerWidth * 0.8)
505
- } : {
506
- hideDetails: !0,
507
- config: {
508
- open: l,
509
- maxHeight: 1e4,
510
- body: {
511
- backgroundColor: e.value.style.chart.backgroundColor,
512
- color: e.value.style.chart.color
513
- },
514
- head: {
515
- backgroundColor: e.value.style.chart.backgroundColor,
516
- color: e.value.style.chart.color
517
- }
518
- }
519
- }
520
- };
521
- });
522
- Te(() => E.value.showTable, (t) => {
523
- e.value.table.show || (t && e.value.table.useDialog && oe.value ? oe.value.open() : "close" in oe.value && oe.value.close());
524
- });
525
- function mt() {
526
- E.value.showTable = !1, Oe.value && Oe.value.setTableIconState(!1);
527
- }
528
- const Xt = d(() => Le.value.map((t) => ({
529
- ...t,
530
- name: t.display
531
- }))), qt = d(() => e.value.style.chart.backgroundColor), Jt = d(() => e.value.style.chart.legend), Kt = d(() => e.value.style.chart.title), { exportSvg: Qt, getSvg: Zt } = _o({
532
- svg: Ie,
533
- title: Kt,
534
- legend: Jt,
535
- legendItems: Xt,
536
- backgroundColor: qt
537
- });
538
- async function yt({ isCb: t }) {
539
- if (t) {
540
- const { blob: l, url: o, text: n, dataUrl: s } = await Zt();
541
- e.value.userOptions.callbacks.svg({ blob: l, url: o, text: n, dataUrl: s });
542
- } else
543
- Qt();
544
- }
545
- return Ot({
546
- getData: Yt,
547
- getImage: Vt,
548
- generateCsv: Me,
549
- generateImage: rt,
550
- generateSvg: yt,
551
- generatePdf: st,
552
- toggleTable: ft,
553
- toggleAnnotator: De,
554
- toggleTooltip: pt,
555
- drillCategory: Be,
556
- unselectNode: dt,
557
- toggleFullscreen: Qe
558
- }), (t, l) => (i(), g("div", {
559
- ref_key: "flowChart",
560
- ref: M,
561
- class: wt(`vue-data-ui-component vue-ui-flow ${Y.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
562
- style: W(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.chart.backgroundColor}`),
563
- id: `flow_${U.value}`,
564
- onMouseenter: l[2] || (l[2] = () => r(et)(!0)),
565
- onMouseleave: l[3] || (l[3] = () => r(et)(!1))
566
- }, [
567
- e.value.userOptions.buttons.annotator ? (i(), q(r(Pt), {
568
- key: 0,
569
- svgRef: r(Ie),
570
- backgroundColor: e.value.style.chart.backgroundColor,
571
- color: e.value.style.chart.color,
572
- active: ke.value,
573
- onClose: De
574
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : T("", !0),
575
- Rt.value ? (i(), g("div", Lo, null, 512)) : T("", !0),
576
- e.value.style.chart.title.text ? (i(), g("div", {
577
- key: 2,
578
- ref_key: "chartTitle",
579
- ref: Xe,
580
- style: "width:100%;background:transparent;padding-bottom:24px"
581
- }, [
582
- (i(), q(Io, {
583
- key: `title_${je.value}`,
584
- config: {
585
- title: {
586
- cy: "flow-title",
587
- ...e.value.style.chart.title
588
- },
589
- subtitle: {
590
- cy: "flow-subtitle",
591
- ...e.value.style.chart.title.subtitle
592
- }
593
- }
594
- }, null, 8, ["config"]))
595
- ], 512)) : T("", !0),
596
- G("div", {
597
- id: `legend-top-${U.value}`
598
- }, null, 8, Bo),
599
- e.value.userOptions.show && Ke.value && (r(tt) || r(Ee)) ? (i(), q(r(Mt), {
600
- ref_key: "userOptionsRef",
601
- ref: Oe,
602
- key: `user_option_${Ye.value}`,
603
- backgroundColor: e.value.style.chart.backgroundColor,
604
- color: e.value.style.chart.color,
605
- isPrinting: r(at),
606
- isImaging: r(nt),
607
- uid: U.value,
608
- hasPdf: e.value.userOptions.buttons.pdf,
609
- hasXls: e.value.userOptions.buttons.csv,
610
- hasImg: e.value.userOptions.buttons.img,
611
- hasSvg: e.value.userOptions.buttons.svg,
612
- hasTable: e.value.userOptions.buttons.table,
613
- callbacks: e.value.userOptions.callbacks,
614
- hasFullscreen: e.value.userOptions.buttons.fullscreen,
615
- isFullscreen: Y.value,
616
- titles: { ...e.value.userOptions.buttonTitles },
617
- chartElement: M.value,
618
- position: e.value.userOptions.position,
619
- hasAnnotator: e.value.userOptions.buttons.annotator,
620
- printScale: e.value.userOptions.print.scale,
621
- isAnnotation: ke.value,
622
- hasTooltip: e.value.style.chart.tooltip.show && e.value.userOptions.buttons.tooltip,
623
- isTooltip: E.value.showTooltip,
624
- tableDialog: e.value.table.useDialog,
625
- onToggleTooltip: pt,
626
- onToggleFullscreen: Qe,
627
- onGeneratePdf: r(st),
628
- onGenerateCsv: Me,
629
- onGenerateImage: r(rt),
630
- onGenerateSvg: yt,
631
- onToggleTable: ft,
632
- onToggleAnnotator: De,
633
- style: W({
634
- visibility: r(tt) ? r(Ee) ? "visible" : "hidden" : "visible"
635
- })
636
- }, $t({ _: 2 }, [
637
- t.$slots.menuIcon ? {
638
- name: "menuIcon",
639
- fn: b(({ isOpen: o, color: n }) => [
640
- k(t.$slots, "menuIcon", Z(ee({ isOpen: o, color: n })), void 0, !0)
641
- ]),
642
- key: "0"
643
- } : void 0,
644
- t.$slots.optionTooltip ? {
645
- name: "optionTooltip",
646
- fn: b(() => [
647
- k(t.$slots, "optionTooltip", {}, void 0, !0)
648
- ]),
649
- key: "1"
650
- } : void 0,
651
- t.$slots.optionPdf ? {
652
- name: "optionPdf",
653
- fn: b(() => [
654
- k(t.$slots, "optionPdf", {}, void 0, !0)
655
- ]),
656
- key: "2"
657
- } : void 0,
658
- t.$slots.optionCsv ? {
659
- name: "optionCsv",
660
- fn: b(() => [
661
- k(t.$slots, "optionCsv", {}, void 0, !0)
662
- ]),
663
- key: "3"
664
- } : void 0,
665
- t.$slots.optionImg ? {
666
- name: "optionImg",
667
- fn: b(() => [
668
- k(t.$slots, "optionImg", {}, void 0, !0)
669
- ]),
670
- key: "4"
671
- } : void 0,
672
- t.$slots.optionTable ? {
673
- name: "optionTable",
674
- fn: b(() => [
675
- k(t.$slots, "optionTable", {}, void 0, !0)
676
- ]),
677
- key: "5"
678
- } : void 0,
679
- t.$slots.optionFullscreen ? {
680
- name: "optionFullscreen",
681
- fn: b(({ toggleFullscreen: o, isFullscreen: n }) => [
682
- k(t.$slots, "optionFullscreen", Z(ee({ toggleFullscreen: o, isFullscreen: n })), void 0, !0)
683
- ]),
684
- key: "6"
685
- } : void 0,
686
- t.$slots.optionAnnotator ? {
687
- name: "optionAnnotator",
688
- fn: b(({ toggleAnnotator: o, isAnnotator: n }) => [
689
- k(t.$slots, "optionAnnotator", Z(ee({ toggleAnnotator: o, isAnnotator: n })), void 0, !0)
690
- ]),
691
- key: "7"
692
- } : void 0
693
- ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasPdf", "hasXls", "hasImg", "hasSvg", "hasTable", "callbacks", "hasFullscreen", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "printScale", "isAnnotation", "hasTooltip", "isTooltip", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : T("", !0),
694
- (i(), g("svg", {
695
- ref_key: "svgRef",
696
- ref: Ie,
697
- xmlns: r(mo),
698
- viewBox: `0 0 ${ae.value.width} ${ae.value.height}`,
699
- class: wt({
700
- "vue-data-ui-fullscreen--on": Y.value,
701
- "vue-data-ui-fulscreen--off": !Y.value
702
- }),
703
- style: W({
704
- maxWidth: "100%",
705
- overflow: "visible",
706
- background: "transparent",
707
- color: e.value.style.chart.color
708
- })
709
- }, [
710
- xe(r(Dt)),
711
- t.$slots["chart-background"] ? (i(), g("foreignObject", {
712
- key: 0,
713
- x: 0,
714
- y: 0,
715
- width: ae.value.width,
716
- height: ae.value.height,
717
- style: {
718
- pointerEvents: "none"
719
- }
720
- }, [
721
- k(t.$slots, "chart-background", {}, void 0, !0)
722
- ], 8, Ro)) : T("", !0),
723
- G("defs", null, [
724
- (i(!0), g(ve, null, de(S.value.links, (o, n) => (i(), g("linearGradient", {
725
- id: o.id,
726
- x1: "0%",
727
- y1: "0%",
728
- x2: "100%",
729
- y2: "0%"
730
- }, [
731
- G("stop", {
732
- offset: "0%",
733
- "stop-color": o.sourceColor
734
- }, null, 8, Wo),
735
- G("stop", {
736
- offset: "100%",
737
- "stop-color": o.targetColor
738
- }, null, 8, Go)
739
- ], 8, Ho))), 256))
740
- ]),
741
- (i(!0), g(ve, null, de(S.value.links, (o) => (i(), g("path", {
742
- class: "vue-ui-flow-link",
743
- d: o.path,
744
- "stroke-linejoin": "round",
745
- "stroke-miterlimit": "1",
746
- fill: `url(#${o.id})`,
747
- stroke: e.value.style.chart.links.stroke,
748
- "stroke-width": e.value.style.chart.links.strokeWidth,
749
- style: W(`
750
- opacity:${w.value ? w.value.includes(o.source) && w.value.includes(o.target) ? 1 : 0.3 : J.value ? [o.target, o.source].includes(J.value) ? 1 : 0.3 : e.value.style.chart.links.opacity}
751
- `)
752
- }, null, 12, Uo))), 256)),
753
- (i(!0), g(ve, null, de(S.value.nodes, (o, n) => (i(), g("rect", {
754
- class: "vue-ui-flow-node",
755
- x: o.x,
756
- y: r(x)(o.absoluteY) + e.value.style.chart.padding.top,
757
- height: r(x)(o.height),
758
- width: ye.value,
759
- fill: o.color,
760
- stroke: e.value.style.chart.nodes.stroke,
761
- "stroke-width": e.value.style.chart.nodes.strokeWidth,
762
- onMouseenter: (s) => Gt(o, n),
763
- onMouseleave: (s) => dt(n),
764
- style: W(`opacity:${w.value ? w.value.includes(o.name) ? 1 : 0.3 : 1}`),
765
- onClick: (s) => Ut(n)
766
- }, null, 44, Yo))), 256)),
767
- e.value.style.chart.nodes.labels.show ? (i(), g("g", jo, [
768
- (i(!0), g(ve, null, de(S.value.nodes, (o, n) => (i(), g("text", {
769
- x: o.x + ye.value / 2,
770
- y: r(x)(
771
- o.absoluteY + o.height / 2 - e.value.style.chart.nodes.labels.fontSize / 4
772
- ) + e.value.style.chart.padding.top,
773
- "font-size": e.value.style.chart.nodes.labels.fontSize,
774
- fill: r(xt)(o.color),
775
- "text-anchor": "middle",
776
- style: W(`pointer-events: none; opacity:${w.value ? w.value.includes(o.name) ? 1 : 0 : 1}`)
777
- }, he(e.value.style.chart.nodes.labels.abbreviation.use ? r(yo)({
778
- source: o.name,
779
- length: e.value.style.chart.nodes.labels.abbreviation.length
780
- }) : o.name), 13, Vo))), 256)),
781
- (i(!0), g(ve, null, de(S.value.nodes, (o, n) => (i(), g("text", {
782
- x: o.x + ye.value / 2,
783
- y: r(x)(
784
- o.absoluteY + o.height / 2 + e.value.style.chart.nodes.labels.fontSize
785
- ) + e.value.style.chart.padding.top,
786
- "font-size": e.value.style.chart.nodes.labels.fontSize,
787
- fill: r(xt)(o.color),
788
- "text-anchor": "middle",
789
- style: W(`pointer-events: none; opacity:${w.value ? w.value.includes(o.name) ? 1 : 0 : 1}`)
790
- }, he(r(Ue)(
791
- e.value.style.chart.nodes.labels.formatter,
792
- o.value,
793
- r(fe)({
794
- p: e.value.style.chart.nodes.labels.prefix,
795
- v: o.value,
796
- s: e.value.style.chart.nodes.labels.suffix,
797
- r: e.value.style.chart.nodes.labels.rounding
798
- }),
799
- { datapoint: o, seriesIndex: n }
800
- )), 13, Xo))), 256))
801
- ])) : T("", !0),
802
- k(t.$slots, "svg", { svg: ae.value }, void 0, !0)
803
- ], 14, zo)),
804
- t.$slots.watermark ? (i(), g("div", qo, [
805
- k(t.$slots, "watermark", Z(ee({ isPrinting: r(at) || r(nt) })), void 0, !0)
806
- ])) : T("", !0),
807
- G("div", {
808
- id: `legend-bottom-${U.value}`
809
- }, null, 8, Jo),
810
- Je.value ? (i(), q(ro, {
811
- key: 5,
812
- to: e.value.style.chart.legend.position === "top" ? `#legend-top-${U.value}` : `#legend-bottom-${U.value}`
813
- }, [
814
- G("div", {
815
- ref_key: "chartLegend",
816
- ref: Ve
817
- }, [
818
- e.value.style.chart.legend.show && Le.value.length ? (i(), q(Eo, {
819
- key: 0,
820
- legendSet: Le.value,
821
- config: jt.value,
822
- onClickMarker: l[0] || (l[0] = (o) => Be(o))
823
- }, {
824
- item: b(({ legend: o, index: n }) => [
825
- r(Ne) ? T("", !0) : (i(), g("div", {
826
- key: 0,
827
- onClick: (s) => o.segregate(),
828
- style: W(`opacity:${j.value.length ? j.value.includes(n) ? 1 : 0.5 : 1}`)
829
- }, he(o.display), 13, Ko))
830
- ]),
831
- _: 1
832
- }, 8, ["legendSet", "config"])) : T("", !0),
833
- k(t.$slots, "legend", { legend: gt.value }, void 0, !0)
834
- ], 512)
835
- ], 8, ["to"])) : T("", !0),
836
- t.$slots.source ? (i(), g("div", {
837
- key: 6,
838
- ref_key: "source",
839
- ref: qe,
840
- dir: "auto"
841
- }, [
842
- k(t.$slots, "source", {}, void 0, !0)
843
- ], 512)) : T("", !0),
844
- xe(r(Nt), {
845
- show: E.value.showTooltip && Se.value,
846
- backgroundColor: e.value.style.chart.tooltip.backgroundColor,
847
- color: e.value.style.chart.tooltip.color,
848
- fontSize: e.value.style.chart.tooltip.fontSize,
849
- borderRadius: e.value.style.chart.tooltip.borderRadius,
850
- borderColor: e.value.style.chart.tooltip.borderColor,
851
- borderWidth: e.value.style.chart.tooltip.borderWidth,
852
- backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
853
- position: e.value.style.chart.tooltip.position,
854
- offsetY: e.value.style.chart.tooltip.offsetY,
855
- parent: M.value,
856
- content: _e.value,
857
- isCustom: be.value,
858
- isFullscreen: Y.value,
859
- smooth: e.value.style.chart.tooltip.smooth,
860
- backdropFilter: e.value.style.chart.tooltip.backdropFilter,
861
- smoothForce: e.value.style.chart.tooltip.smoothForce,
862
- smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
863
- }, {
864
- "tooltip-before": b(() => [
865
- k(t.$slots, "tooltip-before", Z(ee({ ...ne.value })), void 0, !0)
866
- ]),
867
- "tooltip-after": b(() => [
868
- k(t.$slots, "tooltip-after", Z(ee({ ...ne.value })), void 0, !0)
869
- ]),
870
- _: 3
871
- }, 8, ["show", "backgroundColor", "color", "fontSize", "borderRadius", "borderColor", "borderWidth", "backgroundOpacity", "position", "offsetY", "parent", "content", "isCustom", "isFullscreen", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
872
- Ke.value && e.value.userOptions.buttons.table ? (i(), q(uo(se.value.component), io({ key: 7 }, se.value.props, {
873
- ref_key: "tableUnit",
874
- ref: oe,
875
- onClose: mt
876
- }), $t({
877
- content: b(() => [
878
- xe(r(It), {
879
- colNames: Ce.value.colNames,
880
- head: Ce.value.head,
881
- body: Ce.value.body,
882
- config: Ce.value.config,
883
- title: e.value.table.useDialog ? "" : se.value.title,
884
- withCloseButton: !e.value.table.useDialog,
885
- onClose: mt
886
- }, {
887
- th: b(({ th: o }) => [
888
- G("div", {
889
- innerHTML: o,
890
- style: { display: "flex", "align-items": "center" }
891
- }, null, 8, Qo)
892
- ]),
893
- td: b(({ td: o }) => [
894
- At(he(o.name || o), 1)
895
- ]),
896
- _: 1
897
- }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"])
898
- ]),
899
- _: 2
900
- }, [
901
- e.value.table.useDialog ? {
902
- name: "title",
903
- fn: b(() => [
904
- At(he(se.value.title), 1)
905
- ]),
906
- key: "0"
907
- } : void 0,
908
- e.value.table.useDialog ? {
909
- name: "actions",
910
- fn: b(() => [
911
- G("button", {
912
- tabindex: "0",
913
- class: "vue-ui-user-options-button",
914
- onClick: l[1] || (l[1] = (o) => Me(e.value.userOptions.callbacks.csv))
915
- }, [
916
- xe(r(Ft), {
917
- name: "excel",
918
- stroke: se.value.props.color
919
- }, null, 8, ["stroke"])
920
- ])
921
- ]),
922
- key: "1"
923
- } : void 0
924
- ]), 1040)) : T("", !0),
925
- r(Ne) ? (i(), q(So, { key: 8 })) : T("", !0)
926
- ], 46, Do));
927
- }
928
- }, fl = /* @__PURE__ */ Mo(Zo, [["__scopeId", "data-v-277f5344"]]);
929
- export {
930
- fl as default
931
- };