vue-data-ui 3.0.0-next.9 → 3.0.0
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.
- package/README.md +32 -30
- package/dist/{Arrow-B6OlqyCG.js → Arrow-r2f8Bpd-.js} +1 -1
- package/dist/{BaseDraggableDialog-CA8QOk7L.js → BaseDraggableDialog-CGGcf8d8.js} +4 -4
- package/dist/{BaseIcon-DxUUKVlt.js → BaseIcon-CXtL10fo.js} +1 -1
- package/dist/{ColorPicker-Bh1dfgXt.js → ColorPicker-H91bBsqM.js} +2 -2
- package/dist/{DataTable--paavNqF.js → DataTable-BSSXpM7w.js} +2 -2
- package/dist/{Legend-BZ06qU55.js → Legend-BUk0WvWJ.js} +2 -2
- package/dist/{NonSvgPenAndPaper-DN9XjEHv.js → NonSvgPenAndPaper-DQDgPoW8.js} +3 -3
- package/dist/{PackageVersion-2QvaZf9_.js → PackageVersion-CJ6Vd7V5.js} +3 -3
- package/dist/{PenAndPaper-hGgW0EHz.js → PenAndPaper-D3zudcNI.js} +32 -32
- package/dist/{RecursiveCircles-Dn3TGoL6.js → RecursiveCircles-BcLb1aRS.js} +15 -13
- package/dist/RecursiveLabels-Bgcv0pzu.js +50 -0
- package/dist/{RecursiveLinks-ld_gDZH4.js → RecursiveLinks-00zGWPf9.js} +20 -18
- package/dist/{Shape-Mr1eIp_G.js → Shape-BRzOzubn.js} +43 -37
- package/dist/Slicer-MID8pgT3.js +602 -0
- package/dist/{SparkTooltip-Czhz446b.js → SparkTooltip-DATI1fGZ.js} +7 -7
- package/dist/{Title-B2dA6-uH.js → Title-BGu6gEd2.js} +1 -1
- package/dist/{Tooltip-O_hCvqgF.js → Tooltip-Bh2zYSoM.js} +23 -19
- package/dist/{UserOptions-Bk03FRqW.js → UserOptions-Ck8fz9f4.js} +2 -2
- package/dist/{dom-to-png-Bt5F9TXw.js → dom-to-png-DhIh24Ti.js} +1 -1
- package/dist/{img-C_9wps3s.js → img-DrR839Ot.js} +1 -1
- package/dist/{index-CgShIRes.js → index-BtNwOUja.js} +2885 -2010
- package/dist/{pdf-CXdbjyRJ.js → pdf-DoShrdT5.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/types/vue-data-ui.d.cts +753 -65
- package/dist/types/vue-data-ui.d.ts +753 -65
- package/dist/useAutoSizeLabelsInsideViewbox-FmDQyX4z.js +81 -0
- package/dist/useFitSvgText-2crs6Fv5.js +69 -0
- package/dist/useLoading-D7YHNtLX.js +29 -0
- package/dist/useNestedProp-f2H3m6Yj.js +13 -0
- package/dist/usePanZoom-BVca3eMk.js +122 -0
- package/dist/{usePrinter-rIrqBbbm.js → usePrinter-DUNjpQNe.js} +2 -2
- package/dist/useTimeLabelCollider-CIsgDrl9.js +78 -0
- package/dist/{useTimeLabels-DG97x2hL.js → useTimeLabels-DkzmKfZn.js} +208 -156
- package/dist/{vue-data-ui-DiwfJSwC.js → vue-data-ui-D7QVxNhO.js} +105 -100
- package/dist/vue-data-ui.js +26 -25
- package/dist/vue-ui-3d-bar-ITaF-6Kn.js +1323 -0
- package/dist/{vue-ui-accordion-hlzscmAS.js → vue-ui-accordion-BKUrAowe.js} +3 -3
- package/dist/vue-ui-age-pyramid-DxsuDr6o.js +835 -0
- package/dist/{vue-ui-annotator-BHwBUNRO.js → vue-ui-annotator-B06QtxgJ.js} +12 -12
- package/dist/vue-ui-bullet-B7Fy45tA.js +571 -0
- package/dist/vue-ui-candlestick-Dw0U4uIQ.js +1000 -0
- package/dist/{vue-ui-carousel-table-6MTDYf-H.js → vue-ui-carousel-table-DGz0nw28.js} +29 -29
- package/dist/{vue-ui-chestnut-Cr6dK21e.js → vue-ui-chestnut-CFfKYm9i.js} +664 -536
- package/dist/vue-ui-chord-EhlQhMSs.js +1038 -0
- package/dist/vue-ui-circle-pack-BHrrEUUd.js +709 -0
- package/dist/{vue-ui-cursor-Ch5yUxNn.js → vue-ui-cursor-Dd-HtWzG.js} +2 -2
- package/dist/{vue-ui-dashboard-tVZ9aEHo.js → vue-ui-dashboard-6R8udDY3.js} +64 -64
- package/dist/{vue-ui-digits-BOlYLluF.js → vue-ui-digits-zKn3uhGN.js} +2 -2
- package/dist/{vue-ui-donut-BKwAnTKA.js → vue-ui-donut-BtnIwS_E.js} +431 -422
- package/dist/vue-ui-donut-evolution-DHo1MuMM.js +1076 -0
- package/dist/vue-ui-dumbbell-Czi9r9Na.js +1120 -0
- package/dist/vue-ui-flow-jOfM0RZY.js +841 -0
- package/dist/{vue-ui-funnel-CAV6A--C.js → vue-ui-funnel-tBvVpdhy.js} +16 -16
- package/dist/vue-ui-galaxy-IdoY2oqG.js +680 -0
- package/dist/vue-ui-gauge-DR6Xm_Hz.js +791 -0
- package/dist/vue-ui-gizmo-Dto73UsB.js +210 -0
- package/dist/vue-ui-heatmap-zmFv-0z1.js +1078 -0
- package/dist/vue-ui-history-plot-ILemyyYw.js +1074 -0
- package/dist/{vue-ui-kpi-DjHXc1Z9.js → vue-ui-kpi-hmqSCvxr.js} +26 -26
- package/dist/{vue-ui-mini-loader-C68r9wbr.js → vue-ui-mini-loader-CbD-E8ci.js} +2 -2
- package/dist/vue-ui-molecule-mTy6YIm6.js +656 -0
- package/dist/vue-ui-mood-radar-BEnSYV3Q.js +785 -0
- package/dist/vue-ui-nested-donuts-CGE9dmJK.js +1284 -0
- package/dist/vue-ui-onion-Dh2J9GV0.js +776 -0
- package/dist/vue-ui-parallel-coordinate-plot-xsgmMIJK.js +916 -0
- package/dist/{vue-ui-quadrant-ULvVhjjq.js → vue-ui-quadrant-DA0Kw6eq.js} +512 -459
- package/dist/vue-ui-quick-chart-DKbxF5Yt.js +1762 -0
- package/dist/vue-ui-radar-BFY9bN_h.js +796 -0
- package/dist/{vue-ui-rating-CkdVnYpj.js → vue-ui-rating-Bh35aujf.js} +2 -2
- package/dist/vue-ui-relation-circle-B-05kQ_l.js +598 -0
- package/dist/vue-ui-ridgeline-CuGfF83t.js +1157 -0
- package/dist/vue-ui-rings-DrQXXzAM.js +728 -0
- package/dist/vue-ui-scatter-CWn9c7e9.js +1178 -0
- package/dist/{vue-ui-skeleton-BsBaCvoE.js → vue-ui-skeleton-oG4Bm5nL.js} +13 -13
- package/dist/{vue-ui-smiley-B2sBY2Q-.js → vue-ui-smiley-Cnwba_gV.js} +46 -46
- package/dist/vue-ui-spark-trend-D9iNCf4o.js +315 -0
- package/dist/vue-ui-sparkbar-iJkiubZC.js +351 -0
- package/dist/vue-ui-sparkgauge-BH3uA5rh.js +232 -0
- package/dist/vue-ui-sparkhistogram-B3kR62pf.js +380 -0
- package/dist/vue-ui-sparkline-DczR2ZAf.js +513 -0
- package/dist/vue-ui-sparkstackbar-Cg0ItRGH.js +421 -0
- package/dist/vue-ui-stackbar-d4PrzcGS.js +1371 -0
- package/dist/vue-ui-strip-plot-BXBpN5rl.js +916 -0
- package/dist/{vue-ui-table-DaE8lQuo.js → vue-ui-table-BXOLZXuz.js} +17 -17
- package/dist/{vue-ui-table-heatmap--dSEG8cU.js → vue-ui-table-heatmap-7YT7VF2H.js} +5 -5
- package/dist/{vue-ui-table-sparkline-D4DkGvDP.js → vue-ui-table-sparkline-BfgqajJ2.js} +19 -16
- package/dist/vue-ui-thermometer-C7Tg6HLz.js +541 -0
- package/dist/{vue-ui-timer-CYXTAh6x.js → vue-ui-timer-Ch5JP1pQ.js} +5 -5
- package/dist/vue-ui-tiremarks-fY-4pWAK.js +406 -0
- package/dist/vue-ui-treemap-DTSX6suB.js +1035 -0
- package/dist/{vue-ui-vertical-bar-CO9eR1ty.js → vue-ui-vertical-bar-C-i2dRnU.js} +104 -102
- package/dist/vue-ui-waffle-BbgLlhGH.js +910 -0
- package/dist/vue-ui-wheel-waZf462K.js +379 -0
- package/dist/vue-ui-word-cloud-DtLK91Dk.js +765 -0
- package/dist/{vue-ui-world-P45Plcqw.js → vue-ui-world-Cx4uuwTY.js} +364 -327
- package/dist/vue-ui-xy-DDOT8cyx.js +3808 -0
- package/dist/{vue-ui-xy-canvas-DgNBgUak.js → vue-ui-xy-canvas-CUCsC8vD.js} +265 -264
- package/package.json +4 -4
- package/dist/RecursiveLabels-NTMB9w5C.js +0 -49
- package/dist/Slicer-3t0HimeE.js +0 -577
- package/dist/useLoading-Bt5Doa8m.js +0 -28
- package/dist/useNestedProp-BC4Ciblw.js +0 -13
- package/dist/usePanZoom-BQMvRXEQ.js +0 -115
- package/dist/vue-ui-3d-bar-BqmzX9u4.js +0 -1227
- package/dist/vue-ui-age-pyramid-eRPt0BJb.js +0 -746
- package/dist/vue-ui-bullet-BSnF2gql.js +0 -513
- package/dist/vue-ui-candlestick-kMbNnoYe.js +0 -873
- package/dist/vue-ui-chord-Dxy_bfIE.js +0 -949
- package/dist/vue-ui-circle-pack-I_p4FPiW.js +0 -673
- package/dist/vue-ui-donut-evolution-DQhZJ4Sa.js +0 -903
- package/dist/vue-ui-dumbbell-DdN-7b3g.js +0 -753
- package/dist/vue-ui-flow-MvORTthN.js +0 -765
- package/dist/vue-ui-galaxy-B0PLMAn8.js +0 -617
- package/dist/vue-ui-gauge-C4FTzDFt.js +0 -738
- package/dist/vue-ui-gizmo-Dl5FHFb4.js +0 -192
- package/dist/vue-ui-heatmap-C3dee43W.js +0 -877
- package/dist/vue-ui-history-plot-dqv4u1Oa.js +0 -924
- package/dist/vue-ui-molecule-DtRAlfhC.js +0 -597
- package/dist/vue-ui-mood-radar-BZj2G0zE.js +0 -670
- package/dist/vue-ui-nested-donuts-OqJTwMb2.js +0 -1212
- package/dist/vue-ui-onion-DXLokGec.js +0 -701
- package/dist/vue-ui-parallel-coordinate-plot-tg7QhtIE.js +0 -807
- package/dist/vue-ui-quick-chart-4EODniQ3.js +0 -1612
- package/dist/vue-ui-radar-Dt5p5oSy.js +0 -741
- package/dist/vue-ui-relation-circle-_SysXj9T.js +0 -542
- package/dist/vue-ui-ridgeline-Cs5UihNN.js +0 -969
- package/dist/vue-ui-rings-Duay-EmS.js +0 -685
- package/dist/vue-ui-scatter-C6oGQcbL.js +0 -1045
- package/dist/vue-ui-spark-trend-CEAqGu3d.js +0 -291
- package/dist/vue-ui-sparkbar-ByPUDc6x.js +0 -301
- package/dist/vue-ui-sparkgauge-C-GKwevJ.js +0 -201
- package/dist/vue-ui-sparkhistogram-Dz0DdaVW.js +0 -313
- package/dist/vue-ui-sparkline-BULntz_U.js +0 -459
- package/dist/vue-ui-sparkstackbar-DXjHOeeU.js +0 -381
- package/dist/vue-ui-stackbar-CeP9n7zy.js +0 -1207
- package/dist/vue-ui-strip-plot-CaFQkWV8.js +0 -761
- package/dist/vue-ui-thermometer-BXf14CYH.js +0 -495
- package/dist/vue-ui-tiremarks-D6hJ1cd4.js +0 -358
- package/dist/vue-ui-treemap-tBurCrdn.js +0 -965
- package/dist/vue-ui-waffle-BNzs_BxY.js +0 -863
- package/dist/vue-ui-wheel-tydUATi8.js +0 -352
- package/dist/vue-ui-word-cloud-DUUc_tj6.js +0 -659
- package/dist/vue-ui-xy--HToGdle.js +0 -2982
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref as $, useSlots as J, onMounted as R, computed as x, watch as Q, createElementBlock as o, openBlock as a, normalizeStyle as s, createCommentVNode as p, createElementVNode as r, toDisplayString as f, unref as n, Fragment as B, renderList as Z, renderSlot as j, mergeProps as O, withKeys as ee } from "vue";
|
|
2
|
-
import { u as te, c as le, o as oe,
|
|
3
|
-
import { u as ie } from "./useNestedProp-
|
|
2
|
+
import { u as te, c as le, o as oe, f as ae, k as b, i as _, X as z, x as X, _ as I } from "./index-BtNwOUja.js";
|
|
3
|
+
import { u as ie } from "./useNestedProp-f2H3m6Yj.js";
|
|
4
4
|
import { _ as se } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
5
5
|
const ne = {
|
|
6
6
|
key: 0,
|
|
@@ -0,0 +1,598 @@
|
|
|
1
|
+
import { useCssVars as ut, computed as h, defineAsyncComponent as Z, ref as r, toRefs as ot, watch as ee, shallowRef as Le, onMounted as rt, onBeforeUnmount as ct, createElementBlock as n, openBlock as i, unref as u, normalizeStyle as z, createBlock as N, createCommentVNode as f, createSlots as vt, withCtx as M, renderSlot as g, normalizeProps as j, guardReactiveProps as D, normalizeClass as te, createVNode as dt, createElementVNode as ft, Fragment as $, renderList as O, mergeProps as Pe, toDisplayString as U, createTextVNode as ze } from "vue";
|
|
2
|
+
import { u as yt, c as ht, t as gt, a as mt, p as Oe, b as pt, d as bt, o as Se, f as Ie, g as kt, X as wt, F as Me, k as le, i as se, E as ae } from "./index-BtNwOUja.js";
|
|
3
|
+
import { t as xt, u as $t } from "./useResponsive-DfdjqQps.js";
|
|
4
|
+
import { u as At, B as _t } from "./useLoading-D7YHNtLX.js";
|
|
5
|
+
import { u as Ct } from "./usePrinter-DUNjpQNe.js";
|
|
6
|
+
import { u as Ee } from "./useNestedProp-f2H3m6Yj.js";
|
|
7
|
+
import { u as Lt } from "./useUserOptionState-BIvW1Kz7.js";
|
|
8
|
+
import { u as Pt } from "./useChartAccessibility-9icAAmYg.js";
|
|
9
|
+
import { u as zt } from "./useAutoSizeLabelsInsideViewbox-FmDQyX4z.js";
|
|
10
|
+
import Ot from "./img-DrR839Ot.js";
|
|
11
|
+
import St from "./Title-BGu6gEd2.js";
|
|
12
|
+
import { _ as It } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
13
|
+
const Mt = ["id"], Et = ["xmlns", "viewBox"], Ft = ["width", "height"], Bt = ["cx", "cy", "r", "stroke", "stroke-width"], Rt = { key: 1 }, Tt = ["stroke", "d", "stroke-width"], Nt = { style: { "pointer-events": "none" } }, jt = ["cx", "cy", "fill", "r", "stroke"], Dt = ["x", "y", "fill", "font-size"], Ut = { key: 2 }, Vt = ["stroke", "stroke-width", "x1", "x2", "y1", "y2"], Gt = { style: { "pointer-events": "none" } }, Wt = ["cx", "cy", "fill", "r", "stroke"], Xt = ["x", "y", "fill", "font-size"], Yt = ["text-anchor", "transform", "x", "y", "font-weight", "font-size", "fill", "text-decoration", "onClick", "onMouseenter", "onMouseleave"], qt = ["cx", "cy", "fill", "stroke", "r", "onClick", "onMouseenter", "onMouseleave"], Ht = {
|
|
14
|
+
key: 4,
|
|
15
|
+
class: "vue-data-ui-watermark"
|
|
16
|
+
}, Jt = {
|
|
17
|
+
__name: "vue-ui-relation-circle",
|
|
18
|
+
props: {
|
|
19
|
+
dataset: {
|
|
20
|
+
type: Array,
|
|
21
|
+
default() {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
config: {
|
|
26
|
+
type: Object,
|
|
27
|
+
default() {
|
|
28
|
+
return {};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
setup(Fe, { expose: Be }) {
|
|
33
|
+
ut((e) => ({
|
|
34
|
+
"51791a0b": Ye.value,
|
|
35
|
+
"501dae6a": Xe.value,
|
|
36
|
+
"2abe5668": qe.value
|
|
37
|
+
}));
|
|
38
|
+
const Re = Z(() => import("./PenAndPaper-D3zudcNI.js")), Te = Z(() => import("./UserOptions-Ck8fz9f4.js")), Ne = Z(() => import("./PackageVersion-CJ6Vd7V5.js")), { vue_ui_relation_circle: je } = yt(), m = Fe, De = h(() => !!m.dataset && Object.keys(m.dataset).length), S = r(ht()), ie = r(0), A = r(null), ne = r(null), ue = r(null), oe = r(null), re = r(0), l = r(X()), { loading: ce, FINAL_DATASET: Ue, manualLoading: V } = At({
|
|
39
|
+
...ot(m),
|
|
40
|
+
FINAL_CONFIG: l,
|
|
41
|
+
prepareConfig: X,
|
|
42
|
+
skeletonDataset: [
|
|
43
|
+
{ id: "A", label: "_", relations: ["B", "C", "D", "E", "F", "G"] },
|
|
44
|
+
{ id: "B", label: "_", relations: ["A"] },
|
|
45
|
+
{ id: "C", label: "_", relations: ["A"] },
|
|
46
|
+
{ id: "D", label: "_", relations: ["A"] },
|
|
47
|
+
{ id: "E", label: "_", relations: ["A"] },
|
|
48
|
+
{ id: "F", label: "_", relations: ["A"] },
|
|
49
|
+
{ id: "G", label: "_", relations: ["A"] }
|
|
50
|
+
],
|
|
51
|
+
skeletonConfig: gt({
|
|
52
|
+
defaultConfig: l.value,
|
|
53
|
+
userConfig: {
|
|
54
|
+
userOptions: { show: !1 },
|
|
55
|
+
customPalette: new Array(7).fill("#CACACA"),
|
|
56
|
+
style: {
|
|
57
|
+
backgroundColor: "#99999930",
|
|
58
|
+
labels: { color: "#6A6A6A" },
|
|
59
|
+
circle: { stroke: "#6A6A6A" },
|
|
60
|
+
plot: { color: "#6A6A6A", useSerieColor: !0 },
|
|
61
|
+
links: { maxWidth: 2 }
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
}), { userOptionsVisible: G, setUserOptionsVisibility: ve, keepUserOptionState: de } = Lt({ config: l.value }), { svgRef: W } = Pt({ config: l.value.style.title });
|
|
66
|
+
function X() {
|
|
67
|
+
const e = Ee({
|
|
68
|
+
userConfig: m.config,
|
|
69
|
+
defaultConfig: je
|
|
70
|
+
});
|
|
71
|
+
return e.theme ? {
|
|
72
|
+
...Ee({
|
|
73
|
+
userConfig: pt.vue_ui_relation_circle[e.theme] || m.config,
|
|
74
|
+
defaultConfig: e
|
|
75
|
+
}),
|
|
76
|
+
customPalette: mt[e.theme] || Oe
|
|
77
|
+
} : e;
|
|
78
|
+
}
|
|
79
|
+
ee(() => m.config, (e) => {
|
|
80
|
+
l.value = X(), G.value = !l.value.userOptions.showOnChartHover, _.value = l.value.style.size, y.value = l.value.style.weightLabels.size, F.value = l.value.style.plot.radius, I.value = l.value.style.labels.fontSize, o.value.height = l.value.style.size, o.value.width = l.value.style.size, be(), re.value += 1;
|
|
81
|
+
}, { deep: !0 }), ee(() => m.dataset, (e) => {
|
|
82
|
+
Array.isArray(e) && e.length > 0 && (V.value = !1);
|
|
83
|
+
}, { deep: !0 });
|
|
84
|
+
const { isPrinting: fe, isImaging: ye, generatePdf: he, generateImage: ge } = Ct({
|
|
85
|
+
elementId: `relation_circle_${S.value}`,
|
|
86
|
+
fileName: l.value.style.title.text || "vue-ui-relation-circle",
|
|
87
|
+
options: l.value.userOptions.print
|
|
88
|
+
}), Ve = h(() => l.value.userOptions.show && !l.value.style.title.text), me = h(() => bt(l.value.customPalette)), k = r([]), p = r([]), d = r({}), b = r([]), Ge = r(0), E = h(() => Ue.value.slice(0, l.value.style.limit).map((e) => {
|
|
89
|
+
const s = Array.isArray(e.relations) ? e.relations : [];
|
|
90
|
+
return {
|
|
91
|
+
...e,
|
|
92
|
+
weights: Array.isArray(e.weights) ? e.weights : new Array(s.length).fill(1),
|
|
93
|
+
relations: s
|
|
94
|
+
};
|
|
95
|
+
}));
|
|
96
|
+
ee(E, () => {
|
|
97
|
+
k.value = [], p.value = [], Y(), q();
|
|
98
|
+
});
|
|
99
|
+
const _ = r(l.value.style.size), y = r(l.value.style.weightLabels.size), F = r(l.value.style.plot.radius), I = r(l.value.style.labels.fontSize), o = r({
|
|
100
|
+
height: l.value.style.size,
|
|
101
|
+
width: l.value.style.size
|
|
102
|
+
}), C = h({
|
|
103
|
+
get() {
|
|
104
|
+
return _.value * l.value.style.circle.radiusProportion;
|
|
105
|
+
},
|
|
106
|
+
set(e) {
|
|
107
|
+
return e;
|
|
108
|
+
}
|
|
109
|
+
}), We = h(() => l.value.style.links.curved), Xe = h(() => `${l.value.style.animation.speedMs}ms`), Ye = h(() => C.value * 2), qe = h(() => C.value * 4), w = Le(null), L = Le(null);
|
|
110
|
+
rt(() => {
|
|
111
|
+
be(), document.getElementById(`relation_circle_${S.value}`).addEventListener("click", we);
|
|
112
|
+
});
|
|
113
|
+
const pe = h(() => l.value.debug);
|
|
114
|
+
function be() {
|
|
115
|
+
if (Se(m.dataset) ? (Ie({
|
|
116
|
+
componentName: "VueUiRelationCircle",
|
|
117
|
+
type: "dataset",
|
|
118
|
+
debug: pe.value
|
|
119
|
+
}), V.value = !0) : m.dataset.forEach((e, s) => {
|
|
120
|
+
kt({
|
|
121
|
+
datasetObject: e,
|
|
122
|
+
requiredAttributes: ["id", "label", "relations", "weights"]
|
|
123
|
+
}).forEach((t) => {
|
|
124
|
+
Ie({
|
|
125
|
+
componentName: "VueUiRelationCircle",
|
|
126
|
+
type: "datasetSerieAttribute",
|
|
127
|
+
property: t,
|
|
128
|
+
index: s,
|
|
129
|
+
debug: pe.value
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
}), Se(m.dataset) || (V.value = l.value.loading), l.value.responsive) {
|
|
133
|
+
const e = xt(() => {
|
|
134
|
+
const { width: s, height: t } = $t({
|
|
135
|
+
chart: A.value,
|
|
136
|
+
title: l.value.style.title.text ? ne.value : null,
|
|
137
|
+
source: ue.value,
|
|
138
|
+
noTitle: oe.value
|
|
139
|
+
});
|
|
140
|
+
requestAnimationFrame(() => {
|
|
141
|
+
_.value = Math.min(s, t), o.value.width = Math.max(0.1, s), o.value.height = Math.max(0.1, t - 12), C.value = _.value * l.value.style.circle.radiusProportion, k.value = [], p.value = [], Y(), q(), ke(), l.value.responsiveProportionalSizing ? (y.value = ae({
|
|
142
|
+
relator: _.value,
|
|
143
|
+
adjuster: l.value.style.size,
|
|
144
|
+
source: l.value.style.weightLabels.size,
|
|
145
|
+
threshold: 6,
|
|
146
|
+
fallback: 6
|
|
147
|
+
}), F.value = ae({
|
|
148
|
+
relator: _.value,
|
|
149
|
+
adjuster: l.value.style.size,
|
|
150
|
+
source: l.value.style.plot.radius,
|
|
151
|
+
threshold: 1,
|
|
152
|
+
fallback: 1
|
|
153
|
+
}), I.value = ae({
|
|
154
|
+
relator: _.value,
|
|
155
|
+
adjuster: l.value.style.size,
|
|
156
|
+
source: l.value.style.labels.fontSize,
|
|
157
|
+
threshold: 6,
|
|
158
|
+
fallback: 6
|
|
159
|
+
})) : (y.value = l.value.style.weightLabels.size, F.value = l.value.style.plot.radius, I.value = l.value.style.labels.fontSize);
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
w.value && (L.value && w.value.unobserve(L.value), w.value.disconnect()), w.value = new ResizeObserver(e), L.value = A.value.parentNode, w.value.observe(L.value);
|
|
163
|
+
} else
|
|
164
|
+
k.value = [], p.value = [], Y(), q();
|
|
165
|
+
ke();
|
|
166
|
+
}
|
|
167
|
+
ct(() => {
|
|
168
|
+
document.getElementById(`relation_circle_${S.value}`).removeEventListener("click", we), w.value && (L.value && w.value.unobserve(L.value), w.value.disconnect());
|
|
169
|
+
});
|
|
170
|
+
const { autoSizeLabels: ke } = zt({
|
|
171
|
+
svgRef: W,
|
|
172
|
+
fontSize: l.value.style.labels.fontSize,
|
|
173
|
+
minFontSize: l.value.style.labels.minFontSize,
|
|
174
|
+
sizeRef: I,
|
|
175
|
+
labelClass: ".vue-ui-relation-circle-legend"
|
|
176
|
+
});
|
|
177
|
+
function we(e) {
|
|
178
|
+
const s = e.target;
|
|
179
|
+
s && Array.from(s.classList).includes("vue-ui-user-options") || s && Array.from(s.classList).includes("vue-ui-user-options-summary") || s && Array.from(s.classList).includes("vue-data-ui-button") || s && Array.from(s.classList).includes("vue-ui-relation-circle-legend") || (d.value = {}, b.value = []);
|
|
180
|
+
}
|
|
181
|
+
function Y() {
|
|
182
|
+
const e = 6.28319 / E.value.length, s = 360 / E.value.length;
|
|
183
|
+
let t = 0, a = 0;
|
|
184
|
+
E.value.forEach((c, v) => {
|
|
185
|
+
const K = c.weights.reduce((it, nt) => it + nt, 0), Q = C.value * Math.cos(t) + o.value.width / 2, at = C.value * Math.sin(t) + o.value.height / 2 + l.value.style.circle.offsetY;
|
|
186
|
+
k.value.push({ x: Q, y: at, ...c, color: c.color ? c.color : me.value[v] ? me.value[v] : Oe[v], regAngle: a, totalWeight: K }), t += e, a += s;
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
function He(e, s) {
|
|
190
|
+
const t = (e.x + s.x) / 2, a = (e.y + s.y) / 2;
|
|
191
|
+
return { x: t, y: a };
|
|
192
|
+
}
|
|
193
|
+
function q() {
|
|
194
|
+
p.value = [], k.value.forEach((e) => {
|
|
195
|
+
k.value.filter((t) => t.relations.includes(e.id)).forEach((t, a) => {
|
|
196
|
+
const c = t.relations.indexOf(e.id);
|
|
197
|
+
p.value.push({
|
|
198
|
+
weight: t.weights[c] ? t.weights[c] : 0,
|
|
199
|
+
relationId: `${e.id}_${t.id}`,
|
|
200
|
+
x1: e.x,
|
|
201
|
+
y1: e.y,
|
|
202
|
+
x2: t.x,
|
|
203
|
+
y2: t.y,
|
|
204
|
+
colorSource: e.color,
|
|
205
|
+
colorTarget: t.color,
|
|
206
|
+
midPointLine: He({ x: e.x, y: e.y }, { x: t.x, y: t.y }),
|
|
207
|
+
midPointBezier: Je({
|
|
208
|
+
x1: e.x,
|
|
209
|
+
x2: t.x,
|
|
210
|
+
y1: e.y,
|
|
211
|
+
y2: t.y
|
|
212
|
+
}),
|
|
213
|
+
...e
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
function Je(e) {
|
|
219
|
+
const s = { x: e.x1, y: e.y1 }, t = { x: e.x2, y: e.y2 }, a = { x: e.x1, y: e.y1 }, c = {
|
|
220
|
+
x: o.value.width / 2,
|
|
221
|
+
y: o.value.height / 2 + l.value.style.circle.offsetY
|
|
222
|
+
}, v = 0.5, K = Math.pow(1 - v, 3) * s.x + 3 * Math.pow(1 - v, 2) * v * a.x + 3 * (1 - v) * Math.pow(v, 2) * c.x + Math.pow(v, 3) * t.x, Q = Math.pow(1 - v, 3) * s.y + 3 * Math.pow(1 - v, 2) * v * a.y + 3 * (1 - v) * Math.pow(v, 2) * c.y + Math.pow(v, 3) * t.y;
|
|
223
|
+
return { x: K, y: Q };
|
|
224
|
+
}
|
|
225
|
+
const Ke = h(() => Math.max(...p.value.map((e) => e.weight)));
|
|
226
|
+
function Qe(e) {
|
|
227
|
+
return Object.hasOwn(d.value, "x") ? b.value.includes(e.id) ? "opacity:1" : "opacity:0.1" : "opacity:1";
|
|
228
|
+
}
|
|
229
|
+
function x(e) {
|
|
230
|
+
return e.colorSource;
|
|
231
|
+
}
|
|
232
|
+
function xe(e) {
|
|
233
|
+
return Object.hasOwn(d.value, "x") ? b.value.includes(e.id) && e.relationId === `${e.id}_${d.value.id}` || e.relationId === `${d.value.id}_${e.id}` ? `opacity:1;stroke-width:${H(e)}` : "opacity: 0" : "opacity: 1";
|
|
234
|
+
}
|
|
235
|
+
function P(e) {
|
|
236
|
+
return Object.hasOwn(d.value, "x") ? !!(b.value.includes(e.id) && e.relationId === `${e.id}_${d.value.id}` || e.relationId === `${d.value.id}_${e.id}`) : !1;
|
|
237
|
+
}
|
|
238
|
+
function Ze(e) {
|
|
239
|
+
return e.regAngle > 90 && e.regAngle < 270 ? "end" : "start";
|
|
240
|
+
}
|
|
241
|
+
function et(e) {
|
|
242
|
+
return e.regAngle > 90 && e.regAngle < 270 ? e.x - 5 : e.x + 5;
|
|
243
|
+
}
|
|
244
|
+
function tt(e) {
|
|
245
|
+
return Object.hasOwn(d.value, "x") ? d.value.id === e.id || b.value.includes(e.id) ? "opacity:1" : "opacity:0.2" : "opacity:1";
|
|
246
|
+
}
|
|
247
|
+
function lt(e) {
|
|
248
|
+
return e.regAngle > 90 && e.regAngle < 270 ? `rotate(${e.regAngle + 180},${e.x},${e.y})` : `rotate(${e.regAngle},${e.x},${e.y})`;
|
|
249
|
+
}
|
|
250
|
+
const B = r(null);
|
|
251
|
+
function $e(e, s) {
|
|
252
|
+
B.value = s, l.value.events.datapointEnter && l.value.events.datapointEnter({ datapoint: e, seriesIndex: s });
|
|
253
|
+
}
|
|
254
|
+
function Ae(e, s) {
|
|
255
|
+
B.value = null, l.value.events.datapointLeave && l.value.events.datapointLeave({ datapoint: e, seriesIndex: s });
|
|
256
|
+
}
|
|
257
|
+
function _e(e, s) {
|
|
258
|
+
l.value.events.datapointClick && l.value.events.datapointClick({ datapoint: e, seriesIndex: s }), Ge.value = 360 - e.regAngle, d.value.id && e.id === d.value.id ? (d.value = {}, b.value = []) : (d.value = e, b.value = [...e.relations]);
|
|
259
|
+
}
|
|
260
|
+
function H(e) {
|
|
261
|
+
const s = e.weight / Ke.value * l.value.style.links.maxWidth;
|
|
262
|
+
return Math.max(0.3, s);
|
|
263
|
+
}
|
|
264
|
+
const R = r(!1);
|
|
265
|
+
function Ce(e) {
|
|
266
|
+
R.value = e, ie.value += 1;
|
|
267
|
+
}
|
|
268
|
+
const T = r(!1);
|
|
269
|
+
function J() {
|
|
270
|
+
T.value = !T.value;
|
|
271
|
+
}
|
|
272
|
+
async function st({ scale: e = 2 } = {}) {
|
|
273
|
+
if (!A.value) return;
|
|
274
|
+
const { width: s, height: t } = A.value.getBoundingClientRect(), a = s / t, { imageUri: c, base64: v } = await Ot({ domElement: A.value, base64: !0, img: !0, scale: e });
|
|
275
|
+
return {
|
|
276
|
+
imageUri: c,
|
|
277
|
+
base64: v,
|
|
278
|
+
title: l.value.style.title.text,
|
|
279
|
+
width: s,
|
|
280
|
+
height: t,
|
|
281
|
+
aspectRatio: a
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
return Be({
|
|
285
|
+
getImage: st,
|
|
286
|
+
generatePdf: he,
|
|
287
|
+
generateImage: ge,
|
|
288
|
+
toggleAnnotator: J,
|
|
289
|
+
toggleFullscreen: Ce
|
|
290
|
+
}), (e, s) => (i(), n("div", {
|
|
291
|
+
ref_key: "relationCircleChart",
|
|
292
|
+
ref: A,
|
|
293
|
+
class: "vue-ui-relation-circle",
|
|
294
|
+
style: z(`width:100%;background:${l.value.style.backgroundColor};text-align:center;${l.value.responsive ? "height: 100%" : ""}`),
|
|
295
|
+
id: `relation_circle_${S.value}`,
|
|
296
|
+
onMouseenter: s[0] || (s[0] = () => u(ve)(!0)),
|
|
297
|
+
onMouseleave: s[1] || (s[1] = () => u(ve)(!1))
|
|
298
|
+
}, [
|
|
299
|
+
l.value.userOptions.buttons.annotator ? (i(), N(u(Re), {
|
|
300
|
+
key: 0,
|
|
301
|
+
svgRef: u(W),
|
|
302
|
+
backgroundColor: l.value.style.backgroundColor,
|
|
303
|
+
color: l.value.style.color,
|
|
304
|
+
active: T.value,
|
|
305
|
+
onClose: J
|
|
306
|
+
}, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : f("", !0),
|
|
307
|
+
Ve.value ? (i(), n("div", {
|
|
308
|
+
key: 1,
|
|
309
|
+
ref_key: "noTitle",
|
|
310
|
+
ref: oe,
|
|
311
|
+
class: "vue-data-ui-no-title-space",
|
|
312
|
+
style: "height:36px; width: 100%;background:transparent"
|
|
313
|
+
}, null, 512)) : f("", !0),
|
|
314
|
+
l.value.style.title.text ? (i(), n("div", {
|
|
315
|
+
key: 2,
|
|
316
|
+
ref_key: "chartTitle",
|
|
317
|
+
ref: ne,
|
|
318
|
+
style: "width:100%;background:transparent"
|
|
319
|
+
}, [
|
|
320
|
+
(i(), N(St, {
|
|
321
|
+
key: `title_${re.value}`,
|
|
322
|
+
config: {
|
|
323
|
+
title: {
|
|
324
|
+
cy: "relation-div-title",
|
|
325
|
+
...l.value.style.title
|
|
326
|
+
},
|
|
327
|
+
subtitle: {
|
|
328
|
+
cy: "relation-div-subtitle",
|
|
329
|
+
...l.value.style.title.subtitle
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}, null, 8, ["config"]))
|
|
333
|
+
], 512)) : f("", !0),
|
|
334
|
+
l.value.userOptions.show && De.value && (u(de) || u(G)) ? (i(), N(u(Te), {
|
|
335
|
+
ref: "details",
|
|
336
|
+
key: `user_options_${ie.value}`,
|
|
337
|
+
backgroundColor: l.value.style.backgroundColor,
|
|
338
|
+
color: l.value.style.color,
|
|
339
|
+
isPrinting: u(fe),
|
|
340
|
+
isImaging: u(ye),
|
|
341
|
+
uid: S.value,
|
|
342
|
+
hasPdf: l.value.userOptions.buttons.pdf,
|
|
343
|
+
hasImg: l.value.userOptions.buttons.img,
|
|
344
|
+
hasFullscreen: l.value.userOptions.buttons.img,
|
|
345
|
+
hasXls: !1,
|
|
346
|
+
isFullscreen: R.value,
|
|
347
|
+
titles: { ...l.value.userOptions.buttonTitles },
|
|
348
|
+
chartElement: A.value,
|
|
349
|
+
position: l.value.userOptions.position,
|
|
350
|
+
hasAnnotator: l.value.userOptions.buttons.annotator,
|
|
351
|
+
isAnnotation: T.value,
|
|
352
|
+
callbacks: l.value.userOptions.callbacks,
|
|
353
|
+
printScale: l.value.userOptions.print.scale,
|
|
354
|
+
onToggleFullscreen: Ce,
|
|
355
|
+
onGeneratePdf: u(he),
|
|
356
|
+
onGenerateImage: u(ge),
|
|
357
|
+
onToggleAnnotator: J,
|
|
358
|
+
style: z({
|
|
359
|
+
visibility: u(de) ? u(G) ? "visible" : "hidden" : "visible"
|
|
360
|
+
})
|
|
361
|
+
}, vt({ _: 2 }, [
|
|
362
|
+
e.$slots.menuIcon ? {
|
|
363
|
+
name: "menuIcon",
|
|
364
|
+
fn: M(({ isOpen: t, color: a }) => [
|
|
365
|
+
g(e.$slots, "menuIcon", j(D({ isOpen: t, color: a })), void 0, !0)
|
|
366
|
+
]),
|
|
367
|
+
key: "0"
|
|
368
|
+
} : void 0,
|
|
369
|
+
e.$slots.optionPdf ? {
|
|
370
|
+
name: "optionPdf",
|
|
371
|
+
fn: M(() => [
|
|
372
|
+
g(e.$slots, "optionPdf", {}, void 0, !0)
|
|
373
|
+
]),
|
|
374
|
+
key: "1"
|
|
375
|
+
} : void 0,
|
|
376
|
+
e.$slots.optionImg ? {
|
|
377
|
+
name: "optionImg",
|
|
378
|
+
fn: M(() => [
|
|
379
|
+
g(e.$slots, "optionImg", {}, void 0, !0)
|
|
380
|
+
]),
|
|
381
|
+
key: "2"
|
|
382
|
+
} : void 0,
|
|
383
|
+
e.$slots.optionFullscreen ? {
|
|
384
|
+
name: "optionFullscreen",
|
|
385
|
+
fn: M(({ toggleFullscreen: t, isFullscreen: a }) => [
|
|
386
|
+
g(e.$slots, "optionFullscreen", j(D({ toggleFullscreen: t, isFullscreen: a })), void 0, !0)
|
|
387
|
+
]),
|
|
388
|
+
key: "3"
|
|
389
|
+
} : void 0,
|
|
390
|
+
e.$slots.optionAnnotator ? {
|
|
391
|
+
name: "optionAnnotator",
|
|
392
|
+
fn: M(({ toggleAnnotator: t, isAnnotator: a }) => [
|
|
393
|
+
g(e.$slots, "optionAnnotator", j(D({ toggleAnnotator: t, isAnnotator: a })), void 0, !0)
|
|
394
|
+
]),
|
|
395
|
+
key: "4"
|
|
396
|
+
} : void 0
|
|
397
|
+
]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasPdf", "hasImg", "hasFullscreen", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : f("", !0),
|
|
398
|
+
(i(), n("svg", {
|
|
399
|
+
ref_key: "svgRef",
|
|
400
|
+
ref: W,
|
|
401
|
+
xmlns: u(wt),
|
|
402
|
+
class: te([{ "vue-data-ui-fullscreen--on": R.value, "vue-data-ui-fulscreen--off": !R.value }, "relation-circle"]),
|
|
403
|
+
viewBox: `0 0 ${o.value.width <= 0 ? 10 : o.value.width} ${o.value.height <= 0 ? 10 : o.value.height}`,
|
|
404
|
+
width: "100%",
|
|
405
|
+
style: "user-select:none; background:transparent"
|
|
406
|
+
}, [
|
|
407
|
+
dt(u(Ne)),
|
|
408
|
+
e.$slots["chart-background"] ? (i(), n("foreignObject", {
|
|
409
|
+
key: 0,
|
|
410
|
+
x: 0,
|
|
411
|
+
y: 0,
|
|
412
|
+
width: o.value.width <= 0 ? 10 : o.value.width,
|
|
413
|
+
height: o.value.height <= 0 ? 10 : o.value.height,
|
|
414
|
+
style: {
|
|
415
|
+
pointerEvents: "none"
|
|
416
|
+
}
|
|
417
|
+
}, [
|
|
418
|
+
g(e.$slots, "chart-background", {}, void 0, !0)
|
|
419
|
+
], 8, Ft)) : f("", !0),
|
|
420
|
+
ft("circle", {
|
|
421
|
+
cx: (o.value.width <= 0 ? 1e-4 : o.value.width) / 2,
|
|
422
|
+
cy: (o.value.height <= 0 ? 1e-4 : o.value.height) / 2 + l.value.style.circle.offsetY,
|
|
423
|
+
r: C.value <= 0 ? 1e-4 : C.value,
|
|
424
|
+
stroke: l.value.style.circle.stroke,
|
|
425
|
+
"stroke-width": l.value.style.circle.strokeWidth,
|
|
426
|
+
fill: "transparent",
|
|
427
|
+
class: "main-circle"
|
|
428
|
+
}, null, 8, Bt),
|
|
429
|
+
We.value ? (i(), n("g", Rt, [
|
|
430
|
+
(i(!0), n($, null, O(p.value, (t, a) => (i(), n("path", {
|
|
431
|
+
key: `relation_${a}`,
|
|
432
|
+
style: z(xe(t)),
|
|
433
|
+
stroke: x(t),
|
|
434
|
+
class: te(["relation", { "vue-ui-relation-circle-selected": d.value.hasOwnProperty("id") && b.value.includes(t.id) }]),
|
|
435
|
+
d: `M${t.x1},${t.y1} C${t.x1},${t.y1} ${o.value.width / 2},${o.value.height / 2 + l.value.style.circle.offsetY} ${t.x2},${t.y2}`,
|
|
436
|
+
fill: "none",
|
|
437
|
+
"stroke-width": H(t),
|
|
438
|
+
"stroke-linecap": "round"
|
|
439
|
+
}, null, 14, Tt))), 128)),
|
|
440
|
+
(i(!0), n($, null, O(p.value, (t, a) => (i(), n("g", Nt, [
|
|
441
|
+
P(t) ? g(e.$slots, "dataLabel", Pe({
|
|
442
|
+
key: 0,
|
|
443
|
+
ref_for: !0
|
|
444
|
+
}, {
|
|
445
|
+
x: t.midPointBezier.x,
|
|
446
|
+
y: t.midPointBezier.y,
|
|
447
|
+
color: x(t),
|
|
448
|
+
weight: t.weight,
|
|
449
|
+
fontSize: y.value
|
|
450
|
+
}), void 0, !0) : f("", !0),
|
|
451
|
+
P(t) && !e.$slots.dataLabel ? (i(), n("circle", {
|
|
452
|
+
key: 1,
|
|
453
|
+
cx: t.midPointBezier.x,
|
|
454
|
+
cy: t.midPointBezier.y,
|
|
455
|
+
fill: x(t),
|
|
456
|
+
r: y.value,
|
|
457
|
+
stroke: l.value.style.backgroundColor,
|
|
458
|
+
"stroke-width": "1"
|
|
459
|
+
}, null, 8, jt)) : f("", !0),
|
|
460
|
+
P(t) && !e.$slots.dataLabel ? (i(), n("text", {
|
|
461
|
+
key: 2,
|
|
462
|
+
x: t.midPointBezier.x,
|
|
463
|
+
y: t.midPointBezier.y + y.value / 3,
|
|
464
|
+
fill: u(Me)(x(t)),
|
|
465
|
+
"text-anchor": "middle",
|
|
466
|
+
"font-size": y.value
|
|
467
|
+
}, U(u(le)(
|
|
468
|
+
l.value.style.weightLabels.formatter,
|
|
469
|
+
t.weight,
|
|
470
|
+
u(se)({
|
|
471
|
+
p: l.value.style.weightLabels.prefix,
|
|
472
|
+
v: t.weight,
|
|
473
|
+
s: l.value.style.weightLabels.suffix,
|
|
474
|
+
r: l.value.style.weightLabels.rounding
|
|
475
|
+
}),
|
|
476
|
+
{ ...t }
|
|
477
|
+
)), 9, Dt)) : f("", !0)
|
|
478
|
+
]))), 256))
|
|
479
|
+
])) : (i(), n("g", Ut, [
|
|
480
|
+
(i(!0), n($, null, O(p.value, (t, a) => (i(), n("line", {
|
|
481
|
+
key: `relation_${a}`,
|
|
482
|
+
stroke: x(t),
|
|
483
|
+
"stroke-width": H(t),
|
|
484
|
+
style: z(xe(t)),
|
|
485
|
+
x1: t.x1,
|
|
486
|
+
x2: t.x2,
|
|
487
|
+
y1: t.y1,
|
|
488
|
+
y2: t.y2,
|
|
489
|
+
class: te({ "vue-ui-relation-circle-selected": d.value.hasOwnProperty("id") && b.value.includes(t.id) }),
|
|
490
|
+
"stroke-linecap": "round"
|
|
491
|
+
}, null, 14, Vt))), 128)),
|
|
492
|
+
(i(!0), n($, null, O(p.value, (t, a) => (i(), n("g", Gt, [
|
|
493
|
+
P(t) ? g(e.$slots, "dataLabel", Pe({
|
|
494
|
+
key: 0,
|
|
495
|
+
ref_for: !0
|
|
496
|
+
}, {
|
|
497
|
+
x: t.midPointLine.x,
|
|
498
|
+
y: t.midPointLine.y,
|
|
499
|
+
color: x(t),
|
|
500
|
+
weight: t.weight,
|
|
501
|
+
fontSize: y.value
|
|
502
|
+
}), void 0, !0) : f("", !0),
|
|
503
|
+
P(t) && !e.$slots.dataLabel && l.value.style.weightLabels.show ? (i(), n("circle", {
|
|
504
|
+
key: 1,
|
|
505
|
+
cx: t.midPointLine.x,
|
|
506
|
+
cy: t.midPointLine.y,
|
|
507
|
+
fill: x(t),
|
|
508
|
+
r: y.value,
|
|
509
|
+
stroke: l.value.style.backgroundColor,
|
|
510
|
+
"stroke-width": "1"
|
|
511
|
+
}, null, 8, Wt)) : f("", !0),
|
|
512
|
+
P(t) && !e.$slots.dataLabel && l.value.style.weightLabels.show ? (i(), n("text", {
|
|
513
|
+
key: 2,
|
|
514
|
+
x: t.midPointLine.x,
|
|
515
|
+
y: t.midPointLine.y + y.value / 3,
|
|
516
|
+
fill: u(Me)(x(t)),
|
|
517
|
+
"text-anchor": "middle",
|
|
518
|
+
"font-size": y.value
|
|
519
|
+
}, U(u(le)(
|
|
520
|
+
l.value.style.weightLabels.formatter,
|
|
521
|
+
t.weight,
|
|
522
|
+
u(se)({
|
|
523
|
+
p: l.value.style.weightLabels.prefix,
|
|
524
|
+
v: t.weight,
|
|
525
|
+
s: l.value.style.weightLabels.suffix,
|
|
526
|
+
r: l.value.style.weightLabels.rounding
|
|
527
|
+
}),
|
|
528
|
+
{ ...t }
|
|
529
|
+
)), 9, Xt)) : f("", !0)
|
|
530
|
+
]))), 256))
|
|
531
|
+
])),
|
|
532
|
+
(i(!0), n($, null, O(k.value, (t, a) => (i(), n("text", {
|
|
533
|
+
key: `plot_text_${a}`,
|
|
534
|
+
"text-anchor": Ze(t),
|
|
535
|
+
transform: lt(t),
|
|
536
|
+
x: et(t),
|
|
537
|
+
y: t.y + 5,
|
|
538
|
+
class: "vue-ui-relation-circle-legend",
|
|
539
|
+
"transform-origin": "start",
|
|
540
|
+
"font-weight": d.value.id === t.id ? "900" : "400",
|
|
541
|
+
style: z(`font-family:${l.value.style.fontFamily};${tt(t)}`),
|
|
542
|
+
"font-size": I.value,
|
|
543
|
+
fill: l.value.style.labels.color,
|
|
544
|
+
"text-decoration": a === B.value ? "underline" : void 0,
|
|
545
|
+
onClick: (c) => _e(t, a),
|
|
546
|
+
onMouseenter: (c) => $e(t, a),
|
|
547
|
+
onMouseleave: (c) => Ae(t, a)
|
|
548
|
+
}, [
|
|
549
|
+
u(ce) ? (i(), n($, { key: 0 }, [
|
|
550
|
+
ze(" -------- ")
|
|
551
|
+
], 64)) : (i(), n($, { key: 1 }, [
|
|
552
|
+
ze(U(t.label) + " (" + U(u(le)(
|
|
553
|
+
l.value.style.weightLabels.formatter,
|
|
554
|
+
t.totalWeight,
|
|
555
|
+
u(se)({
|
|
556
|
+
p: l.value.style.weightLabels.prefix,
|
|
557
|
+
v: t.totalWeight,
|
|
558
|
+
s: l.value.style.weightLabels.suffix,
|
|
559
|
+
r: l.value.style.weightLabels.rounding
|
|
560
|
+
}),
|
|
561
|
+
{ ...t }
|
|
562
|
+
)) + ") ", 1)
|
|
563
|
+
], 64))
|
|
564
|
+
], 44, Yt))), 128)),
|
|
565
|
+
(i(!0), n($, null, O(k.value, (t, a) => (i(), n("circle", {
|
|
566
|
+
cx: t.x,
|
|
567
|
+
cy: t.y,
|
|
568
|
+
key: `plot_${a}`,
|
|
569
|
+
style: z(`${Qe(t)}; transition: r 0.2s ease-in-out;`),
|
|
570
|
+
class: "vue-ui-relation-circle-plot",
|
|
571
|
+
fill: l.value.style.plot.useSerieColor ? t.color : l.value.style.plot.color,
|
|
572
|
+
stroke: l.value.style.backgroundColor,
|
|
573
|
+
"stroke-width": "1",
|
|
574
|
+
r: F.value * (a === B.value ? 2 : 1),
|
|
575
|
+
onClick: (c) => _e(t, a),
|
|
576
|
+
onMouseenter: (c) => $e(t, a),
|
|
577
|
+
onMouseleave: (c) => Ae(t, a)
|
|
578
|
+
}, null, 44, qt))), 128)),
|
|
579
|
+
g(e.$slots, "svg", { svg: o.value }, void 0, !0)
|
|
580
|
+
], 10, Et)),
|
|
581
|
+
e.$slots.watermark ? (i(), n("div", Ht, [
|
|
582
|
+
g(e.$slots, "watermark", j(D({ isPrinting: u(fe) || u(ye) })), void 0, !0)
|
|
583
|
+
])) : f("", !0),
|
|
584
|
+
e.$slots.source ? (i(), n("div", {
|
|
585
|
+
key: 5,
|
|
586
|
+
ref_key: "source",
|
|
587
|
+
ref: ue,
|
|
588
|
+
dir: "auto"
|
|
589
|
+
}, [
|
|
590
|
+
g(e.$slots, "source", {}, void 0, !0)
|
|
591
|
+
], 512)) : f("", !0),
|
|
592
|
+
u(ce) ? (i(), N(_t, { key: 6 })) : f("", !0)
|
|
593
|
+
], 44, Mt));
|
|
594
|
+
}
|
|
595
|
+
}, rl = /* @__PURE__ */ It(Jt, [["__scopeId", "data-v-72b30f4c"]]);
|
|
596
|
+
export {
|
|
597
|
+
rl as default
|
|
598
|
+
};
|